一、用户与组
Linux系统对用户分配如下:系统管理员(root)、系统用户(不可登录)和普通用户(可登录)。我们登录Linux系统时输入的是账号,但Linux系统并不会直接识别账号,而是通过我们建立账号时系统分配的ID号码,其中,系统管理员(root)ID为0,可登录普通用户ID为1000~65535。
“/etc/passwd”文件结构字段意义:
用户名称 | 用户密码 | UID | GID | 用户说明信息 | 用户家(主)目录 | 用户的shell |
---|---|---|---|---|---|---|
root | x | 0 | 0 | root | /root | /bin/bash |
1、添加、修改与删除用户的命令
用户账户的管理工作主要涉及用户账户的添加、修改和删除。添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户名、用户组、主目录和登录shell等资源,刚添加的账号是锁定的,无法使用。
(1)useradd
useradd命令用来添加新的用户账户,该命令操作的语法格式为:
useradd [参数选项] 用户名
使用useradd命令在创建用户时,默认家目录是/home/“创建用户名”,默认的shell解释器为/bin/bash,同时会创建一个同名的用户组。
useradd命令常用参数及作用:
参 数 | 作 用 |
---|---|
-d | 指定用户账户家目录(默认为/home/“创建用户名”) |
-M | 不创建家目录 |
-e | 指定账户过期的日期,格式为MM/DD/YY 或YYYY-MM-DD |
-g | 指定账户的主组群(必须是已经存在的) |
-G | 指定账户所属的附属组,各组用户用逗号分隔(必须是已经存在的) |
-n | 不创建和用户账户同名的私有用户组 |
-s | 指定用户账户登录时使用的shell解释器 |
-u | 指定用户的默认UID |
(2)passwd
passwd命令用来设置用户登录密码,该操作的语法格式为:
passwd [参数选项] [用户账户名]
若指定了账户名称,则设置指定账户的登录密码,原密码被自动覆盖。只有root用户才有权设置指定账户的密码,一般用户只能设置或修改自己账户的密码(不带参数)。
passwd命令常用参数及作用:
参 数 | 作 用 |
---|---|
-l | 锁定用户,禁止其登录 |
-u | 解除锁定,允许用户登录 |
-S | 显示用户的密码是否被锁定,以及密码所采用的加密算法名称 |
-d | 清空账户密码,将不能登录系统,除非重新设置密码 |
-stdin | 允许通过标准输入修改用户密码,如“echo “ww” | passwd -stdin ww” |
(3)usermod
usermod命令用来修改用户的属性,该命令操作的语法格式为:
usermod [参数选项] 用户账户名
usermod命令具体的参数及作用:
参 数 | 作 用 |
---|---|
-m,-d | 参数-d与-m连用,可重新指定用户的家目录并自动把旧的数据转移过去 |
-e | 修改账户过期的日期,格式为MM/DD/YY 或 YYYY-MM-DD |
-g | 修改账户的主组群(必须已经存在) |
-G | 修改账户所属的附属组,各组用逗号分隔(必须已经存在) |
-l | (小写l)修改用户账户名称(usermod -l newname username) |
-L | (大写字母L)锁定用户,禁止其登录系统 |
-U | 解锁用户,允许其登录 |
-s | 修改用户账户登录时使用的shell解释器 |
-u | 修改用户账户的UID |
(4)userdel
userdle命令用来删除用户,该命令操作的语法格式为:
userdel [-r] 用户账户名
-r为可选参数,若带上该参数,则在删除该账户的同时一并删除该账户对应的主目录。