Linux操作系统是多用户多任务的操作系统,允许多个用户同时登录系统,使用系统的资源,Linux操作系统下的用户账户分为两种,普通用户账户和超级用户账户(root),普通用户在系统中只能进行普通工作,只能访问他们拥有的或有权限执行的文件,超级用户账户也叫管理员账户,它的任务是对普通账户进行管理,也对系统拥有绝对的控制权。
1.Linux用户账户文件的介绍
用户的账户信息和组信息分别存储在用户的账户文件和组文件中,分别为
/etc/passwd,/etc/shadow,/etc/group:
/etc/passwd,我们可以用vim或者cat命令查看这个文件,创建的用户账户及其相关信息都存在这个文件中
如图所示,每一行代表一个用户的资料,第一个用户是root,然后是一些标准账户,此类账户的shell为/sbin/nologin 代表无本地登录权限,最后一行是由系统管理员创建的普通账户:test
passwd文件中每一行用":"分隔为7个字段,各字段内容如下:
用户名:加密口令:UID:GID:用户的描述信息:主目录:命令解释器(登录shell)
2.useradd命令
在新建用户可以使用ueradd或者adduser命令,格式为:
useradd [-选项] test #新建一个名为test的用户
useradd的一些常用选项:
-c 用户的注释性信息
-d 指定用户的主目录
-e 禁用账户的日期,格式为YYYY-MM-DD
-g 用户所属的组名或者GID
-G 用户所属的附属组列表,多个组之间用“,”分割
-m 若用户主目录不存在则创建它
-s 指定用户登录的shell,默认为/bin/bash
-u 指定用户的UID,它必须是唯一的,且大于999
-p 加密的口令
例子:
groupadd -g 1088 group1 #新建组group1,组的GID为1088 useradd -u 1088 -d /home/user3 -s /bin/bash -p 123456
3.passwd命令
设置用户账户口令的命令是passwd。超级用户可以为自己和其他用户设置口令,而普通用户只能给自己设置口令,格式为:
passwd [-选项] [指定的用户名]
passwd的一些常用选项:
-I 锁定(停用)用户账户
-u 口令解锁
-d 将用户的口令设置为空,与未设置口令的账户不同,未设置口令的账户无法登录系统,而口令为空的账户可以
-f 强迫用户下次登录时必须修改口令
-n 指定口令的最短存活期
-x 指定口令的最长存活期
-w 口令要到期前提前警告的天数
-i 口令过期后多少天停用账户
-S 显示账户口令的简短状态信息
例子:
passwd #用户修改自己的口令,直接输入passwd命令 passwd test #修改test的账户密码
4.chage命令
chage命令用于更改用户密码过期信息。
chage命令的常用选项:
-l 列出账户口令的各个数值
-m 指定口令最短存活期
-M 指定口令最长存活期
-I 口令过期后多少天停用账户
-E 用户账户到期作废的日期
-d 设置口令上一次的修改日期
例子(设置test用户的最短口令存活期为5天,最长口令存活期为30天,口令到期前5天提醒用户修改口令):
chage -m 5 -M 30 -W 5 test #设置test用户的最短口令存活期为5天,最长口令存活期为30天,口令到期前5天提醒用户修改口令
5.usermod命令
usermod命令用于修改用户账户的属性,格式为:
usermod [-选项] 用户名
usermod的常用选项:
-c 填写用户的备注信息
-d -m 选项-m和-d连用,用于指定用户的家目录,并自动把旧的数据迁移过去
-e 账户的到期时间,格式为YYYY-MM-DD
-g 变更用户所属的用户组
-G 变更扩展用户组
-L 锁定用户,禁止登录系统
-U 解锁用户,允许登录系统
-u 修改用户的UID
我们可以通过以下命令提前查看用户的默认信息:
id test #查看test用户的默认信息
例子:
usermod -u 8888 test #修改用户test的uid为8888 usermod -L test #锁定test用户,无法登录 usermod -U test #解锁test用户,允许登录
6.userdel命令
删除一个用户可以直接删除/erc/passwd和/etc/shadow文件中要删除的用户对应的行,或者用userdel命令删,格式为:
userdel [-r] 用户名
7.创建和删除组命令
我们用groupadd和grouopdel命令来对组进行创建和删除
groupadd testgroup #新建一个名为testgroup的组 groupdel testgroup #删除名为testgroup的组
8.groupmod命令
我们用groupmod命令对组进行修改
groupmod [-选项] 组名
groupmod命令的常用选项:
-g gid 把组的GID改为gid
-n test2 把组的名称改为test2
-o 强制接受更改组的GID为重复号码
以上就是本篇文章对用户与组的操作介绍