3、hadoop运行jar包报错 : "/bin/bash: /bin/java: No such file or directory"

  • 报错信息截图

    可以很明确的看到报错信息,/bin/java未生效,原因是我是用的配置环境的方式使用的jdk,未采用yum过进行安装jdk

  • 解决措施:创建真实的jdk目录到/bin/java

    1. 创建软链接
      ln -s /opt/software/jdk1.8.0_201/bin/java /bin/java
      
  • 关于ln链接

    ln链接分为软件链接和硬链接

    • 硬链接

      硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能

      硬链接: ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件
      
    • 软链接

      软链接文件有类似于Windows的快捷方式。包含的有另一文件的位置信息

      软链接: ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间
      
    • 具体用法

      
      pwd  #查看当前路径
      ll  #查看所有文件
       
      #首先我们先来创建两个文件
      mkdir test
      touch test_chk/test.txt
      touch test_chk/val.txt    
      vim test_chk/test.txt #sudo gedit test_chk/test.txt(这一步随便在这个test.txt里写点东东即可)
       
      #下面我们来创建test_chk目录 的软链接
      ln -s test_chk test_chk_ln
      ll #ls -l查看
       
      #修改软链接
      #ln –snf [新的源文件或目录] [软链接文件]
       
      #删除软链接
      #rm –rf   ./软链接名称
      #rm -rf ./软链接名称/ (这样就会把软链接以及软链接指向下的内容删除)
       
      #正确的删除方式(删除软链接,但不删除实际数据)
      rm -rf  ./test_chk_ln
      #为了防止误删,可以询问 rm -ri  ./test_chk_ln  或者改用mv 命令操作
       
      #错误的删除方式
      rm -rf ./test_chk_ln/ (这样就会把原来test_chk下的内容删除)
      
    • 说明

      • 无论是软链接还是硬链接,文件都保持同步变化
原文地址:https://www.cnblogs.com/nuochengze/p/15302646.html