背景:在部署hadoop,解压jdk时遇到的问题
tar -xzvf jdk-8u45-linux-x64.gz
解压后用户和用户组发生了变化
我们使用命令:
cat /etc/passwd | grep uucp
su - uucp 我们会发现它提示这个账户不准登录。
此时我们进行修改,vi /etc/passwd ,把/sbin/nologin ==>/bin/bash(解释器),此时再进行测试,su - uucp,我们是可以进入的,为什么是-bash-4.1$ ? Answer:缺少.bash_profile。
在后续使用CDH中,cdh有很多组件。
组件 | 用户 |
---|---|
hdfs | hdfs |
yarn | yarn |
zookeeper | zookeeper |
hbase | hbase |
CDH中不同组件都有不同用户取运行,eg、我们使用su - zookeeper是切换不了的。
生产中的做法,就是在/etc/passwd下,将/sbin/nologin ==> /bin/bash
引申:/etc/passwd说明:
通常在Linux系统中,用户的关键信息被存放在系统的/etc/passwd文件中,系统的每一个合法用户账号对应于该文件中的一行记录。这行记录定义了每个用户账号的属性。
记录截图如下,最后四行也就是楼主之前创建的用户。
https://blog.csdn.net/wangzhaopeng0316/article/details/12991219