su
Linux su命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。
实例
变更帐号为 root 并在执行 ls 指令后退出变回原使用者
su -c ls root
变更帐号为 root 并传入 -f 参数给新执行的 shell
su root -f
变更帐号为 clsung 并改变工作目录至 clsung 的家目录(home dir)
su - clsung
切换用户
hnlinux@ylg:~$ whoami //显示当前用户
hnlinux
hnlinux@wylg:~$ pwd //显示当前目录
/home/hnlinux
hnlinux@ylg:~$ su root //切换到root用户
密码:
root@ylg:/home/hnlinux# whoami
root
sudo
Linux sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。
语法
sudo(选项)(参数)
以特定用户身份进行编辑文本
$ sudo -u uggc vi ~www/index.html
//以 uggc 用户身份编辑 home 目录下www目录中的 index.html 文件
sudo执行命令
bogon:mysql mazhen$ cat data/mazhendeMacBook-Pro-slow.log
cat: data/mazhendeMacBook-Pro-slow.log: Permission denied
bogon:mysql mazhen$ sudo cat data/mazhendeMacBook-Pro-slow.log
Password:
/usr/local/mysql/bin/mysqld, Version: 5.7.23 (MySQL Community Server (GPL)). started with:
Tcp port: 3306 Unix socket: /tmp/mysql.sock
Time Id Command Argument
.......
切换到root
sudo su -