在Linux系统中,除了预设的root管理员和安装时创建的用户(如 devops),我们经常需要管理用户账户和设置文件权限。掌握这些基础命令,是进行有效系统管理的第一步。本文将详细介绍几个核心命令,并通过实例带你快速上手。
用户管理命令
用户管理主要涉及查看当前登录用户、创建新用户以及修改用户密码。
who 命令:显示登录的用户
who 命令用于显示当前登录到系统的用户信息。直接在终端中输入该命令即可:
who
执行后,你会看到类似下图的输出,其中显示了登录用户名、终端位置和登录时间等信息:

useradd/adduser 命令:新增用户与新增至群组
在Ubuntu等发行版中,通常使用 adduser 命令来交互式地创建新用户。由于创建用户需要管理员权限,因此需要配合 sudo 命令执行。例如,创建一个名为 sean 的新用户:
sudo adduser sean
执行上述命令后,系统会引导你完成一系列设置,包括输入两次密码、填写用户全名等(直接按回车可使用默认值),最后确认信息即可。

用户创建成功后,系统会在 /home 目录下为其生成一个家目录,可以通过 ls 命令查看:

如果想赋予新用户 sudo 权限,即将其加入 sudo 用户组,可以使用同样的命令:
sudo adduser sean sudo

passwd 命令:更改用户密码
无论是系统默认用户还是新创建的用户,都可以使用 passwd 命令来修改其密码。修改其他用户的密码同样需要 sudo 权限。例如,修改用户 sean 的密码:
sudo passwd sean
接着,根据提示输入两次新密码即可完成更新。

文件权限管理命令
Linux中,文件权限管理主要依赖两个命令:chmod 用于修改权限,chown 用于修改所有者和所属组。
chmod 命令:更改文件权限
chmod 命令通过字符来设定文件权限。这里涉及两类标识符:
- 身份标识:
u (文件所有者,User)、g (文件所属组,Group)、o (其他用户,Others)。
- 权限标识:
r (读,Read)、w (写,Write)、x (执行,Execute)。
操作符 + 表示增加权限,- 表示移除权限,= 表示直接设定权限。
示例1:为文件所有者增加执行(x)权限
假设有一个文件 file.txt,我们想给它的所有者添加执行权限:
chmod u+x file.txt
执行后,使用 ls -l file.txt 查看,可以看到权限字段中所有者部分多了 x。

示例2:为文件所有者设定读写(rw)权限
如果我们想明确规定所有者只有读写权限(没有执行权),可以使用 = 操作符:
chmod u=rw file.txt
再次使用 ls -l 查看,会发现之前的执行权限 x 被移除了。

chown 命令:更改文件的拥有者
chown 命令用于更改文件的所有者和/或所属组,通常需要 sudo 权限。其基本语法是 chown 新所有者:新所属组 文件名。
例如,将文件 file.txt 的所有者改为 sean,所属组改为 root:
sudo chown sean:root file.txt
执行成功后,通过 ls -l 可以看到文件的“所有者”和“组”信息已经从原来的 devops devops 变成了 sean root。

掌握以上这些命令,你就能应对大多数基本的Linux用户与文件权限管理场景了。如果想深入探讨更多Linux技巧或与其他开发者交流,欢迎来云栈社区逛逛。