[user2@yong-02 ~]$ su - 密码: 上一次登陆:三 4月 4 15:03:52 CST 2018pts/0 上 [root@yong-02 ~]# su - user2 上一次登陆:三 4月 4 15:04:14 CST 2018pts/0 上 [user2@yong-02 ~]$ pwd /home/user2
- 号加上后会初始化当前用户的各类环境变量linux
[root@yong-02 ~]# su - yyl 上一次登陆:三 4月 4 15:08:42 CST 2018pts/0 上 [yyl@yong-02 ~]$ pwd /home/yyl [yyl@yong-02 ~]$ echo $PATH /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/yyl/.local/bin:/home/yyl/bin
指定某个用户去执行某个命令;apache
[root@yong-02 ~]# su - -c "touch /tmp/yyl.txt" yyl ##以yyl用户去建立yyl.txt [root@yong-02 ~]# ls -l /tmp/y yum.log yyl.txt [root@yong-02 ~]# ls -l /tmp/yyl.txt -rw-rw-r--. 1 yyl yyl 0 4月 4 15:13 /tmp/yyl.txt
root@yong-02 ~ ]# su - yyl 上一次登陆:三 11月 1 22:50:40 CST 2018pts/0 上 [wuzhou@yong-02 ~]$ su - -c "touch /tmp/user7.111" user7 密码: [wuzhou@yong-02 ~]$ ls -l /tmp/user7.111 -rw-rw-r-- 1 user7 user7 0 11月 1 22:52 /tmp/user7.111
切换到用户user5时,提示错误,发现是家目录不对 [root@yong-02 ~]# su - user5 su: 警告:没法更改到 /home/yyl 目录: 权限不够 [yyl@yong-02 ~]$ tail -5 /etc/passwd user3:x:1004:1003::/home/user3:/sbin/nolongin user4:x:1005:1003::/home/user4:/sbin/nolongin user5:x:1007:1003::/home/yyl:/sbin/nologin 而后咱们修改用户的家目录 [root@yong-02 ~]# usermod -d /home/user5 user5 再次切换用户,有提示这个账户目前不可用,缘由是家目录里面是空的 [root@yong-02 ~]# su - user5 上一次登陆:三 11月 1 22:40:06 CST 2018pts/0 上 This account is currently not available.
[root@yong-02 ~]# cp /etc/skel/.bash* /home/user5/
## Allow root to run any commands anywhere //容许root用户去运行全部的命令,在任何地方 root ALL=(ALL) ALL命令 user7 ALL=(ALL) NOPASSWD: /usr/bin/ls,/usr/bin/cat //咱们能够在下面添加一些用户
ALL=(ALL) 左边ALL 表示全部的登录方式,远程,ip/ip段 (ALL)表示以全部的用户登录;NOPASSWD: 不须要输入密码安全
[root@yong-02 ~]# su - user7 最后一次失败的登陆:三 4月 4 15:17:48 CST 2018pts/0 上 [user7@yong-02 ~]$ sudo ls /root/ 1.sh 1.txt.bak auto_install_apache.sh multi-user.target reboot.target test 1.txt anaconda-ks.cfg graphical.target poweroff.target rescue.target [user7@yong-02 ~]$
例子:只容许普通用户帐户登陆,而普通用户登陆后,不须要输入密码就能使用su切换到root帐户下bash
- 在visudo后面添加下面命令:
- Cmnd_Alias YYL_CMD = /usr/bin/ls, /usr/bin/mv, /usr/bin/su //作命令别名
[root@yong-02 ~]# su - yyl 上一次登陆:三 4月 4 16:22:18 CST 2018pts/0 上 [yyl@yong-02 ~]$ sudo su - 对不起,用户 yyl 无权以 root 的身份在 yong-02 上执行 /bin/su -。 [yyl@yong-02 ~]$ sudo ls /root 1.sh 1.txt.bak auto_install_apache.sh multi-user.target reboot.target test 1.txt anaconda-ks.cfg graphical.target poweroff.target rescue.target [yyl@yong-02 ~]$ whoami yyl
/etc/ssh/sshd_config为sshd服务配置文件,默认容许root帐户经过ssh远程登陆linux。若是想要不容许root用户远程登陆linux,具体操做方法:修改配置文件/etc/ssh/sshd_config,在文件中找到#PermitRootLogin yes 修改为PermitRootLogin no,保存后,重启sshd服务:ssh
[root@yong-02 ~]# vi /etc/ssh/sshd_config [root@yong-02 ~]# systemctl restart sshd.service
从新打开一个窗口,提示错误了,root不能远程登陆 spa
这个时候咱们能够登陆普通用户,而后使用sudo命令切换到root用户下rest
[yyl@yong-02 ~]$ whoami yyl [yyl@yong-02 ~]$ sudo su - [sudo] yyl 的密码: 上一次登陆:三 4月 4 16:52:52 CST 2018pts/0 上 最后一次失败的登陆:三 4月 4 16:53:59 CST 2018从 192.168.180.1ssh:notty 上 最有一次成功登陆后有 1 次失败的登陆尝试。 [root@yong-02 ~]# whoami root [root@yong-02 ~]#