PHP速学视频免费教程(入门到精通)
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
sudo 的全称是 Super User DO,它使得授权用户可以以另一个用户(通常是 root)的身份运行命令。通过 sudo 执行的任何操作都等同于目标用户亲自执行。
使用权限:仅限在 /etc/sudoers 文件中列出的用户。
<pre class="brush:php;toolbar:false">sudo [参数] 命令
示例:
<pre class="brush:php;toolbar:false">sudo apt update # 使用 root 权限更新软件源列表 sudo vim /etc/hosts # 编辑需要管理员权限的文件
常用参数说明:
以 root 权限运行单一命令:
<pre class="brush:php;toolbar:false">sudo apt update sudo systemctl restart nginx sudo mkdir /opt/myapp
切换到 root shell 环境:
<pre class="brush:php;toolbar:false">sudo -i # 登录式 shell,加载 root 用户配置 sudo -s # 非登录式 shell sudo su - # 另一种方法
以其他用户身份运行命令:
<pre class="brush:php;toolbar:false">sudo -u username command
<pre class="brush:php;toolbar:false"> sudo -u postgres psql # 使用 postgres 用户启动 psql
查看当前用户可执行的 sudo 权限:
<pre class="brush:php;toolbar:false"> sudo -l
编辑受保护的系统文件:
<pre class="brush:php;toolbar:false">sudo nano /etc/hosts sudo vim /etc/nginx/nginx.conf
sudo 的配置信息保存在 /etc/sudoers 文件中,推荐使用 visudo 工具进行修改:
<pre class="brush:php;toolbar:false">sudo visudo
典型配置示例:
<pre class="brush:php;toolbar:false"> # 允许用户无需密码执行所有命令 username ALL=(ALL) NOPASSWD: ALL <h1>授权用户组执行特定命令</h1><p>%wheel ALL=(ALL) /bin/systemctl, /usr/bin/apt
提示“不在 sudoers 文件中”错误:
<pre class="brush:php;toolbar:false"></p><h1>需要由 root 用户将该用户加入对应组:</h1><p>usermod -aG sudo username # Ubuntu/Debian 系统 usermod -aG wheel username # CentOS/RHEL 系统
修改缓存有效时间:
在 /etc/sudoers 中设置 timestamp_timeout 参数(单位为分钟):
<pre class="brush:php;toolbar:false"> Defaults timestamp_timeout=30
特性 | su | sudo |
---|---|---|
所需密码 | 目标用户密码 | 当前用户密码 |
会话持续时间 | 需手动退出 | 单次或短暂缓存 |
配置复杂度 | 简单直接 | 需编辑 sudoers 文件 |
安全性 | 需要知道 root 密码 | 更细粒度权限控制 |
日志审计能力 | 较弱 | 详细记录 |
尽管 su 命令使用简便,但在实际运维工作中,sudo 更加安全可靠,具备更强的权限管理和日志追踪能力,因此更推荐使用。
已抢2127个
抢已抢2600个
抢已抢3108个
抢已抢4778个
抢已抢4185个
抢已抢34407个
抢