栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

hadoop3.2启动报错:hadoop/libexec/hadoop-functions.sh: line 398: syntax error near unexpected t

hadoop3.2启动报错:hadoop/libexec/hadoop-functions.sh: line 398: syntax error near unexpected t

1. Hadoop3.2.0启动报错
[ec2-user@master ~]$ sh $HADOOP_HOME/sbin/start-all.sh
/usr/local/src/hadoop/libexec/hadoop-functions.sh: line 398: syntax error near unexpected token `<'
/usr/local/src/hadoop/libexec/hadoop-functions.sh: line 398: `  done < <(for text in "${input[@]}"; do'
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 70: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 87: hadoop_bootstrap: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 104: hadoop_parse_args: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 105: shift: : numeric argument required
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 110: hadoop_find_confdir: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 111: hadoop_exec_hadoopenv: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 112: hadoop_import_shellprofiles: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 113: hadoop_exec_userfuncs: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 119: hadoop_exec_user_hadoopenv: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 120: hadoop_verify_confdir: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 122: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 123: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 124: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 129: hadoop_os_tricks: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 131: hadoop_java_setup: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 133: hadoop_basic_init: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 140: hadoop_shellprofiles_init: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 143: hadoop_add_javalibpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 144: hadoop_add_javalibpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 146: hadoop_shellprofiles_nativelib: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 152: hadoop_add_common_to_classpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 153: hadoop_shellprofiles_classpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 157: hadoop_exec_hadooprc: command not found
WARNING: Attempting to start all Apache Hadoop daemons as ec2-user in 10 seconds.
WARNING: This is not a recommended production deployment configuration.
WARNING: Use CTRL-C to abort.

通过查阅网上相关资料发现:不能sh start-all.sh

如果是在命令行可以直接 start-all.sh

[ec2-user@master ~]$ start-all.sh
WARNING: Attempting to start all Apache Hadoop daemons as ec2-user in 10 seconds.
WARNING: This is not a recommended production deployment configuration.
WARNING: Use CTRL-C to abort.
Starting namenodes on [master]
master: Warning: Permanently added 'master,172.31.34.41' (ECDSA) to the list of known hosts.
Starting datanodes
node2: Warning: Permanently added 'node2,172.31.43.28' (ECDSA) to the list of known hosts.
node1: Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
Starting secondary namenodes [node1]
node1: Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
Starting resourcemanager
Starting nodemanagers
node2: Warning: Permanently added 'node2,172.31.43.28' (ECDSA) to the list of known hosts.
node1: Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
[ec2-user@master ~]$ jps
8563 NameNode
9229 Jps
8926 ResourceManager

也可以bash start-all.sh

[ec2-user@master ~]$ bash $HADOOP_HOME/sbin/start-all.sh
WARNING: Attempting to start all Apache Hadoop daemons as ec2-user in 10 seconds.
WARNING: This is not a recommended production deployment configuration.
WARNING: Use CTRL-C to abort.
Starting namenodes on [master]
master: Warning: Permanently added 'master,172.31.34.41' (ECDSA) to the list of known hosts.
Starting datanodes
node2: Warning: Permanently added 'node2,172.31.43.28' (ECDSA) to the list of known hosts.
node1: Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
Starting secondary namenodes [node1]
node1: Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
Starting resourcemanager
Starting nodemanagers
node1: Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
node2: Warning: Permanently added 'node2,172.31.43.28' (ECDSA) to the list of known hosts.
[ec2-user@master ~]$ jps
10743 Jps
10440 ResourceManager
10075 NameNode
[ec2-user@master ~]$ ssh node1
Warning: Permanently added 'node1,172.31.47.109' (ECDSA) to the list of known hosts.
Last login: Thu Feb 24 01:50:50 2022 from master

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|___|___|

https://aws.amazon.com/amazon-linux-2/
8 package(s) needed for security, out of 17 available
Run "sudo yum update" to apply all updates.
[ec2-user@node1 ~]$ jps
6321 NodeManager
6481 Jps
6219 SecondaryNameNode
6093 DataNode
[ec2-user@node1 ~]$ ssh node2
Warning: Permanently added 'node2,172.31.43.28' (ECDSA) to the list of known hosts.
Last login: Thu Feb 24 01:50:54 2022 from node1

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|___|___|

https://aws.amazon.com/amazon-linux-2/
8 package(s) needed for security, out of 17 available
Run "sudo yum update" to apply all updates.
[ec2-user@node2 ~]$ jps
5561 Jps
5276 DataNode
5404 NodeManager
2. 原因

/bin/sh是/bin/bash的软连接,使用sh调用执行脚本相当于打开了bash的POSIX标准模式,也就是说 /bin/sh 相当于 /bin/bash --posix。

3. 验证
[ec2-user@master ~]$ ll /bin/sh
lrwxrwxrwx 1 root root 4 Jan  6 00:03 /bin/sh -> bash
[ec2-user@master ~]$ ll /bin/bash
-rwxr-xr-x 1 root root 935976 Jul 15  2020 /bin/bash
[ec2-user@master ~]$ bash --posix $HADOOP_HOME/sbin/start-all.sh
/usr/local/src/hadoop/libexec/hadoop-functions.sh: line 398: syntax error near unexpected token `<'
/usr/local/src/hadoop/libexec/hadoop-functions.sh: line 398: `  done < <(for text in "${input[@]}"; do'
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 70: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 87: hadoop_bootstrap: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 104: hadoop_parse_args: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 105: shift: : numeric argument required
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 110: hadoop_find_confdir: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 111: hadoop_exec_hadoopenv: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 112: hadoop_import_shellprofiles: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 113: hadoop_exec_userfuncs: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 119: hadoop_exec_user_hadoopenv: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 120: hadoop_verify_confdir: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 122: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 123: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 124: hadoop_deprecate_envvar: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 129: hadoop_os_tricks: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 131: hadoop_java_setup: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 133: hadoop_basic_init: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 140: hadoop_shellprofiles_init: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 143: hadoop_add_javalibpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 144: hadoop_add_javalibpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 146: hadoop_shellprofiles_nativelib: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 152: hadoop_add_common_to_classpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 153: hadoop_shellprofiles_classpath: command not found
/usr/local/src/hadoop/libexec/hadoop-config.sh: line 157: hadoop_exec_hadooprc: command not found
WARNING: Attempting to start all Apache Hadoop daemons as ec2-user in 10 seconds.
WARNING: This is not a recommended production deployment configuration.
WARNING: Use CTRL-C to abort.
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/748363.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号