本文是为后续部署CDH组件准备的,因为CDH部署时必须root用户或具备root权限的免密登录。
一、设置非root用户的sudo权限(需要密码)
前提:其他用户登录linux系统
实现有4个步骤
1、进入超级用户模式
su -
# 系统会让你输入超级用户密码,输入密码后就进入了超级用户模式
2、添加文件的写权限
chmod u+w /etc/sudoers
3、编辑/etc/sudoers文件
vim /etc/sudoers
# 找到这一行"root ALL=(ALL) ALL"
# 在起下面添加"opsadm ALL=(ALL) ALL"(这里的opsadm是你的用户名),然后保存退出
4、撤销文件的写权限
chmod u-w /etc/sudoers
二、设置非root用户的sudo权限(不要密码)
前提:其他用户登录linux系统
实现有4个步骤
1、进入超级用户模式
su -
# 系统会让你输入超级用户密码,输入密码后就进入了超级用户模式
2、添加文件的写权限
chmod u+w /etc/sudoers
3、编辑/etc/sudoers文件
vim /etc/sudoers
# 找到这一行"root ALL=(ALL) ALL"
# 在起下面添加"opsadm ALL=(ALL) NOPASSWD:ALL"(这里的opsadm是你的用户名),然后保存退出
# 如果设置不起作用(原因是被后面的group的设置覆盖了,需要把group的设置也改为nopasswd),还需要做如下设置,同样的文件中,位置在“# %wheel ALL=(ALL) NOPASSWD: ALL”下面增加
%opsadm ALL=(ALL) NOPASSWD:ALL
# 设置完成后的样子如下:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
opsadm ALL=(ALL) NOPASSWD:ALL
## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
%opsadm ALL=(ALL) NOPASSWD:ALL
4、撤销文件的写权限
chmod u-w /etc/sudoers
ouuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL
# 第一行:允许用户youuser执行sudo命令(需要输入密码)
# 第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码)
# 第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码
# 第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码
完成以上操作,即可实现了非root用户拥有了sudo权限。