su

1.su -切换到某一个用户下;

2.su -c 减小c 指定用户的身份去执行某一条命令,固定格式su -c "touch /tmp/user4.txt" - user4

sudo

1.sudo 可以让普通用户临时获得另外一个用户的权限;

2.visudo配置这个文件,实现使用sudo让普通用户临时拥有另一个用户的权限,

进入配置可以看到root ALL=(ALL) ALL这一行,第一段root表示用户名,

第二段ALL=(ALL)表示从哪里登陆的,写成ALL表示所有的来源IP,

第三段ALL表示可以 执行的哪个命令,这里必须要写入绝对路径,用逗号空格分割可以写多个命令,

user4 ALL=(root) /bin/ls这一行配置的含义 user4可以临时拥有root用户的身份,去执行ls这个命令,

不用重启立即生效,执行格式 sudo /bin/ls /root/;

3.% 用户前加百分号表示用户组里的用户全部对设置的命令有sudo的使用权限;

4.如何限制root远程登陆 编辑配置文件 vi /etc/ssh/sshd_config进入搜索大写R oot关键字,找到#PermitRootLogin yes 这行表示是否允许root登陆,去掉#注释符号,把yes改成no 保存退出重启服务/etc/init.d/sshd restart这样root不允许登陆了;

  1. 让root登陆,visudo修改配置文件,使用sudo让普通用户拥有root权限再切换到root下登陆。

远程的时候不让输入密码前会延迟,不让它延迟编辑配置文件 vi /etc/ssh/sshd_config进入搜索关键字大写DNS相关的#UseDNS yes这一行配置,去掉注释符号,把yes改成no 保存退出重启服务/etc/init.d/sshd restart就可以了。