1️⃣ sudo su
概述:
组合命令,利用 sudo 提权,然后用 su 切换到 root 用户。
相似命令的区别:
- 与
sudo -i相比:sudo su使用当前用户的环境变量,而sudo -i则加载 root 的环境,如.bashrc。因此,sudo -i更像真正的 root 登录。
使用场景示例:
管理员需要执行一系列需要 root 权限的命令,可以先用 sudo su 进入 root shell。
2️⃣ sudo -i
概述:
该命令模拟了 root 用户的完整登录环境,启动一个新的 shell。
相似命令的区别:
- 与
sudo su相比:sudo -i会加载 root 的环境,例如.bashrc,而sudo su仅使用当前用户的环境。
使用场景示例:
管理员需要加载 root 的环境设置进行操作,如 .bashrc,可以使用 sudo -i。
3️⃣ sudo -u
概述:
该命令允许用户以特定用户身份执行命令,而不是默认的 root。
相似命令的区别:
- 与
sudo -u [username] -i或sudo -u [username] -s相比:sudo -u [username] command只执行特定命令,不启动新的 shell。
使用场景示例:
管理员希望以用户 bob 的身份查看其 HOME 目录,可以执行 sudo -u bob ls /home/bob。
4️⃣ sudo -s
概述:
该命令启动一个新的 shell,如果指定 -u 选项,会以特定用户身份;否则,默认为 root。
相似命令的区别:
- 与
sudo su相比:sudo -s采用当前用户的环境,而sudo su采用 root 的环境。
使用场景示例:
管理员希望以 bob 用户的身份获得一个完整的交互式 shell,可以执行 sudo -u bob -s。
5️⃣ sudo -H
概述:
该选项修改 HOME 环境变量为目标用户的 HOME 目录,常用于 root。
使用场景示例:
管理员用 root 权限运行某应用,希望确保应用使用 root 的配置文件而非其他用户的配置,可以采用 sudo -H。
6️⃣ sudo -l
概述:
该命令显示当前用户在 sudoers 文件中的权限。
使用场景示例:
查看自己具备的 sudo 权限时,用户或管理员可以运行 sudo -l。
📌 小贴士:使用 sudo 及相关命令时,安全应始终是首要考虑的。确保每次使用都经过深思熟虑,避免不必要地使用 root 权限。