Linux 常见问题集锦


0 总结

Get to the points first. The article comes from LawsonAbs!

  • updata on 20200505:修改相关格式;
  • 注:以下问题与解决方案都是在VMware Workstation 12以及CentOs 6.5版本上进行的。

1. 使用命令:ssh localhost出现 Could not resolve hostname github.com: Name or service not known问题

可能原因:

  • 1.说明没有将配置文件中的域名和主机名匹配。所以在root用户下进行配置文件的修改即可。【使用命令vi /etc/hosts,增加新的一行:将当前的主机ip localhost】

  • 2.可能是用户权限的问题,原因如下:
    01 .ssh目录的权限必须是700
    02.ssh/authorized_keys文件权限必须是600

使用命令:

cd ~/.ssh  #到ssh目录下
chmod 600 ./authorized_keys  #修改文件权限

3. Linux系统中的多用户原理。

  • 1)Linux中使用命令行的方式与系统交互,那我们就要知道以下一系列的概念:
    例如,
    这里写图片描述
    在这个图片里,我们就知道hadoop就是该系统中的一个用户【即hadoop只是众多用户名中的某一个】,而后面的LittleLawson就是装入该系统的主机名【主机名,是用来唯一标识一台主机的,通该机的ip地址构成一个完整的映射系统】。

  • 2)如果要修改一个主机名,需要在 root 用户,或者是具有等同 root 权限的用户来修改。

执行命令: hostname [主机名] => 效果:完成对该主机名的修改。
执行命令:hostname => 效果:查看该主机名。
但是利用 hostname 只能是暂时的修改主机名,当重启系统之后,仍然会变成以前的主机名,若想要永远的修改,则需要修改配置文件。
执行命令:vi /etc/hosts => 效果:就和文章刚开始修改的一样,是[ip 主机名]。
执行命令:vi /etc/sysconfig/network
进入文件,编辑主机名,修改成为自己想要的主机名即可。

4. hadoop命令是不是只有在安装hadoop的用户才可以使用?

根据我现在的知识,我觉得并非如此。

5. 在root用户下,执行jps命令,结果是Command not found!但是我的/etc/profile文件中已经有了关于java配置的信息了?为什么还会出现这类错误?

于是我尝试执行以下操作:
命令:vi ~/.bash_profile
添加JAVA_HOME,并且导出PATH,然后竟然就可以了!!!?又是为什么?
注:[/etc/profile文件中的配置肯定是可以使用的,若是确切自己已经写好了该配置文件,但是不能生效,那么就仔细观察是不是自己的路径名或者单词拼错了!!!]

6. susu -命令的区别

  • 1)su 命令只是切换了用户,但是并没有修改当前工作的环境变量,意思就是当前仍然在普通用户下的工作目录中。
    这里写图片描述
  • 2) su - 命令不仅切换了用户,连工作目录也切换了。
    这里写图片描述

7. 在使用命令:hadoop fs -put myword.txt /data/wordcount时,出现以下错误:There are 0 datanode(s) running and no node(s) are excluded in this operation.

说明的问题是datanode没有启动,我们使用jps命令查看即可知道,这个问题来源与format时的运行错误,因为在重复namenode format时,datanode的id产生不同,导致NameNode 机器和DataNode的ID不匹配,从而无法开启。解决的办法是:将**/usr/local/hadoop/hdfs/data/current** 与** usr/local/hadoop/hdfs/name/current 两个目录删除即可

8. 遇到报错The auxService:mapreduce_shuffle does not exist

是因为配置文件肯定写错了!配置文件是yarn-site.xml,其中的内容具体如下:

<property>
 <name> yarn.nodemanager.aux-services</name>
 <value>mapreduce_shuffle</value>
 </property>

9. 可能会有人在windows物理机上,使用浏览器访问localhost:50070来查看HDFS,但是殊不知,这里的localhost是物理主机的localhost,而非是虚拟机中Linux系统的localhost,所以可能导致出错!

10. Linux中配置环境变量时,一定要注意:PATH之后不能有空格,否则会导致失败!例如:

export PATH = $PATH:/usr/local/hbase/bin就会产生错误,因为PATH后有两个空格!删去空格才能正确运行!

11. env 命令查看当前用户的环境变量

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 代码科技 设计师:Amelia_0503 返回首页