
在Linux服务器日常维护中直接使用最高权限的root账户进行操作是不推荐的因为一个小失误比如输错命令就可能导致系统崩溃。最安全、最标准的做法是创建一个普通用户并在需要执行特权操作时通过sudo命令临时获取管理员权限。本文将教你在 Debian 和 Ubuntu 系统中快速完成这一配置。过程非常简单只需两步第一步创建一个新用户首先你需要以root身份登录服务器或者拥有sudo权限的用户登录后在命令前加sudo。在 Debian/Ubuntu 中强烈推荐使用交互式的adduser命令。它比传统的useradd更智能会自动帮你建好主目录、设置默认 shell 等对新手非常友好。 进阶科普为什么不用 useradduseradd是最基础的底层命令。如果直接输入useradd myuser系统默认不会为用户创建家目录且默认的命令行环境是非常简陋的/bin/sh。要想好用必须手动加上复杂的参数如useradd -m -s /bin/bash myuser。而adduser则把这一切都自动化了更适合 Debian 系系统。假设我们要创建一个名为myuser的新用户执行以下命令adduser myuser执行后系统会进行如下交互设置密码系统会要求你输入两遍新密码注意Linux终端输入密码时屏幕不会显示任何字符正常盲打然后回车即可。填写用户信息系统会询问用户的全名、房间号、电话等信息。这些都不重要直接一路按回车Enter跳过即可。确认信息最后系统会问你信息是否正确Is the information correct? [Y/n]输入Y并回车。此时普通用户就创建好了。第二步赋予该用户Root权限 (sudo)在 Debian 和 Ubuntu 系统中管理权限的设计非常简单只要把用户加入到sudo这个用户组中该用户就拥有了执行sudo命令的权限。使用usermod命令将刚才创建的myuser加入到sudo组中usermod-aGsudomyuser[!WARNING]危险警告千万不要漏掉-a参数-aG的意思是“追加Append到某个用户组Group”。如果你不小心漏掉了-a写成了usermod -G sudo myuser系统会将该用户从他原有的所有其他附加组中强制踢出这可能会导致严重的权限丢失问题。验证与生效配置完成后我们来测试一下新用户的权限。1. 检查组权限信息我们可以使用id命令来优雅地查看用户当前所属的用户组idmyuser如果输出结果的末尾包含(sudo)例如groups1000(myuser),27(sudo)则说明该用户已经在管理员组内了。2. 生效注意事项[!IMPORTANT]权限并非立即对在线用户生效如果你给一个当前正在登录的用户分配了sudo组该用户必须退出 SSH 会话并重新登录或者使用su - 用户名重新加载环境新的组权限才会生效。否则即使他已经在sudo组里执行sudo仍会提示无权限。3. 实际测试切换到新用户身份尝试执行特权命令su- myusersudols-la/root系统会提示你输入myuser的密码。验证通过后如果能成功看到/root目录下的文件恭喜你大功告成