linux讲义_用户和组管理命令练习

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用户和组管理
基本用户环境
主目录: 用户登录后所在的目录,名称与用户名相同,在/etc/passwd文件的最后一个域中指定。

/etc/skel: 其中的目录及文件在新建用户时自动拷贝到用户主目录下。

几个重要文件
用户定义文件: /etc/passwd
组定义文件: /etc/group
口令文件: /etc/shadow
一、用户和组文件
1.用户账号文件——passwd
passwd文件用于定义系统的用户账号,该文件位于“/etc”目录下。

由于所有用户都对passwd有读权限,所以该文件中只定义用户账号,而不保存口令。

passwd文件中每行定义一个用户账号,一行中又划分为多个字段定义用户账号的不同属性,各字段间用“:”分隔。

passwd文件的各字段如表6-1所示。

passwd文件中各字段的含义如表6-2所示,其中少数字段的内容是可以为空的,但仍需使用“:”进行占位来表示该字段。

2.用户口令文件——shadow
shadow文件位于“/etc”目录中,用于存放用户口令等重要信息,所以该文件只有root 用户可以读取。

与passwd文件类似,shadow文件中每行定义一个用户的信息,行中的各字段用“:”
分隔。

为了进一步提高安全性,shadow文件中保存的是已加密的口令。

可以使用#head /etc/shadow命令查看前10行的内容。

shadow文件的定义:
Username:The name the user types when logging into the system. This allows the login
appli-cationto retrieve the user's password (and related information).
Encrypted password:The 13 to 24 character password. The password is encrypted using either the crypt library function, or the md5 hash algorithm. In this field, values other than a
validly-formatted encrypted or hashed password are used to control user logins and to show the password status. For example, if the value is ! or * the account is locked, and the user is not allowed to login.
Date password last changed:The number of days since January 1, 1970 (also called the
epoc h)that the password was last changed. This information is used for the following password aging fields.
Number of days before password can be changed:The minimum number of days that must pass before the password can be changed.
Number of days before password change is required :The number of days that must pass before the password must be changed.
Number of days warning before password change:The number of days before password expiration during which the user is warned of the impending expiration.
Number of days before the account is disabled :The number of days after a password expires before the account will be disabled.
Date since the account has been disabled:The date (stored as the number of days since the epoch) since the user account has been disabled.
A reserved eld:A field that is ignored in Red HatLinux.
shadow的例子:
Here is an example line from /etc/shadow:
juan:$1$.QKDPc5E$SWlkjRWexrXYgc98F.:11956:0:90:5:30:12197:
This line shows the following information for user juan:
The password was last changed September 25, 2002
There is no minimum amount of time required before the password can be changed
The password must be changed every 90 days
The user will get a warning vedays before the password must be changed.
The account will be disabled 30 days after the password expires if no login attempt is made
The account will expire on May 24, 2003
For more information on the /etc/shadow le, type man 5 shadow.
3.用户组帐号文件——group
group文件位于“/etc”目录,用于存放用户的组账号信息,该文件的内容任何用户都可以读取。

group文件中每行定义一个用户组的信息,各字段间用“:”分隔。

group文件中每个用户组的信息由4个字段组成,如表6-3所示。

4. 组口令文件——gshadow
gshadow 文件用于定义组口令、组管理员等信息,该文件只有
root 用户可以读取。

gshadow 文件中每行定义一个用户的信息,行中各段间用“:“分隔。

gshadow 文件中每个用户组的信息由四个字段组成,如表6-5所示。

gshadow 文件中各字段所代表的含义如表
6-6所示。

二、用户帐号维护命令
1. useradd(adduser)
● 添加用户帐号
命令格式:useradd 用户名
功能描述:useadd 命令用于添加用尸账号。

在使用useradd 命令添加用尸账号后需使用passwd 命令设置用户口令,才可以使用此账号进行登录,否则此账号被禁止登录。

应用实例:
● 在添加用户帐号时指定用户私有组
命令格式:useradd –g 组名用户名
功能描述:useradd -g命令用于添加用户账号并设置该用户的私有组。

如不指定“-g”
参数,useradd命令将自动建立与用户账号同名的组作为该账号的私有组。

使用“-g”
参数指定用户私有组有利于对用户进行分组管理。

应用实例:
●显示useradd命令的默认值
useradd命令的默认值是指当使用useadd命令添加用户账号时,如未指定相应的参数则使用默认值设置。

命令格式:useradd –D
功能描述:useradd –D命令用于显示或设置useradd命令使用的默认值。

应用实例:
相关文件:useradd命令使用的默认值保存在文件“/etc/default/useradd”中。

●修改useradd命令的默认值
命令格式:useradd –D [-g group] [-b base] [-s shell] [-f inactive] [-e expire]
功能描述:usemdd-D命令指定适当的参数用于改变useradd命令所使用的默认值。

应用实例:
ermod
命令格式:usermod [-c comment] [-d home_dir[-m]] [-e exoire_date] [-f inactive_time] [-g initial_group] [-G group [,…]] [-l login_name] [-p passwd] [-s shell] [-u uid] [-o]] [-L|-U] login
功能描述:usermod命令用于设置已有用户帐号的属性,包括用户宿主目录、私有组、登录shell等内容。

●改变用户帐号名
命令格式:usermod –l 新用户登录名当前用户登录名
功能描述:usermod –l 命令用户改变已有用户的登录名
应用实例:
●锁定用户账号
命令格式:usermod –L用户帐号名
功能描述:usermod -L命令用于锁定指定用户账号,使其不能登录系统。

该命令是通过在shadow文件中指定用户账号的口令字段前加入锁定符号“!”锁定该用户账号的。

应用实例:
●解锁用户帐号
命令格式:usermod -U用户帐号名
功能描述:usermod -U命令用于对已锁定的用户账号进行解锁,使其能正常登录系统。

该命令是通过在shadow文件中指定用户账号的口令字段中去除锁定符号“!”
来解锁该用户账号的。

应用实例:
erdel
●删除用户帐号
命令格式:userdel 用户名
功能描述:userdel命令用于删除指定的用户帐号。

应用实例:

命令格式:userdel –r 用户名
功能描述:user –r 命令用于删除帐号的同时也删除用户的宿主目录(包括其中的文件)以及用户的邮件池文件。

应用实例:
三、组帐号维护命令
1. groupadd
● 添加组帐号
命令格式:groupadd 组帐号名
功能描述:groupadd 命令用于在系统中添加组号,该组帐号的GID 大于500。

应用实例:
● 建立系统组帐号
命令格式:groupadd –r 系统组帐号名
功能描述:groupadd –r
命令用于建立系统组帐号,该组帐号的GID 小于500。

应用实例:
2. groupmod
groupmod 命令用于改变用户组账号的属性,根据使用命令参数的不同可以设置组账号的不同属性。

● 改变组账号的GID
命令格式:groupmod –g 新的GID 用户组帐号名
功能描述:groupmod –g 命令用于更改指定用户组的GID ,组账号名保持不变。

应用实例:
命令格式:groupmod –n 新的组名原用户组名
功能描述:groupmod –n命令用于改变用户组的名称,其GID保持不变。

应用实例:
3.groupdel
命令格式:组帐号名称
功能描述:groupdel命令用于删除指定的组帐号,该组帐号必须存在且不能作为私有组被用户帐号引用。

应用实例:
四、口令维护命令
1.passwd
●设置指定用户口令
命令格式:passwd 用户帐号名
功能描述:passwd命令用于设置指定用户帐号的口令,如该帐号口令存在则覆盖
现有口令。

只有root用户可以指定用户帐号设置口令。

应用实例:
●设置用户自己的口令
命令格式:passwd
功能描述:passwd命令如未指定任何参数则修改当前用户口令,该命令形式通常
用于普通用户修改自身口令。

应用实例:
●查询用户口令状态
命令格式:passwd –S 用户帐号名
功能描述:passwd –S 命令用于查询指定用户帐号的口令状态,该命令只有root 用户可以使用。

应用实例:
●锁定用户帐号
命令格式:passwd –l 用户帐号名
功能描述:passwd –l 命令用于锁定指定用户帐号的口令,该命令只有root用户可以使用。

应用实例:
●解锁用户帐号
命令格式:passwd –u 用户帐号名
功能描述:passwd –u 命令用于解锁指定用户帐号,该帐号是被“passwd –l”命令锁定口令的。

只有root用户可以使用该命令。

应用实例:
●删除用户口令
命令格式:passwd –d 用户帐号名
功能描述:passwd –d 命令用于删除指定用户帐号的口令,使该用户帐号不能登录系统。

如果恢复该用户登录需重新口令。

只有root用户可以使用该口令。

应用实例:
2.gpasswd
●添加用户到组
命令格式:gpasswd –a 用户帐号名组帐号名
功能描述:gpasswd –a 命令用于将指定用户帐号添加到指定用户组。

组管理员有
权执行该命令。

应用实例:
●从组中删除用户
命令格式:gpasswd –d 用户帐号名组帐号名
功能描述:gpasswd –d 命令用于将指定用户帐号从指定用户组中删除。

组管理员
有权执行该命令。

应用实例:
●设置用户为组管理员
命令格式:gpasswd –A 组管理员用户列表用户组
功能描述:gpasswd –A 命令用于设置指定的用户为用户组的管理员。

3.chfn
命令格式:chfn 用户名
功能描述:chfn命令用于设定指定用户的finger信息。

该信息包括用户全明、办公室电话、家庭电话等内容,保存在“/etc/passwd”文件中用户记录的相应字段中,可由finger 命令读取显示出来。

应用实例:
4.chsh
●显示系统可用的shell
命令格式:chsh –l
功能描述:chsh –l 命令用于显示当前系统可以使用的shell
应用实例:
●设置用户的登录shell
命令格式:chsh –s Shell 全路径名用户名
功能描述:chsh –s 命令设置指定用户的登录Shell
五、用户和组状态命令
1.id
命令格式:id
功能描述:id命令用于显示用户当前的uid、gid和用户所属的组列表。

应用实例:
2. whoami
命令格式:whoami
功能描述:显示当前用户的名称
3. su
● 将当前转换为其他用户
命令格式:su 用户帐号名
功能描述:转换当前用户到指定的用户帐号,root 用户可以转换为任何用户而不需要输入该用户口令,普通用户转换为其他用户时需要输入用户口令。

应用实例:
● 转换用户并改变相应环境变量
命令格式:su – 用户帐号名
功能描述:转换当前用户到指定的用户帐号,并改变相应的环境变量(如
PA TH )为新用户的值。

应用实例:
● 转换为root 帐号
命令格式:su
功能描述:su 命令不指定任何用户名时将从当前用户转换为root 用户,在此过程中需要提供root 用户口令。

应用实例:
4.groups
命令格式:groups 用户名
功能描述:显示指定用户所属的组,如未指定用户则显示当前用户所属的组。

应用实例:
5.newgrp
命令格式:newgrp 用户所属的组帐号
功能描述:用于转换用户的当前组到指定的组帐号,用户必须属于该组才可以正确执行该命令。

应用实例:。

相关文档
最新文档