×

理(续

第四章 用户管理(续四)

admin admin 发表于2022-07-02 17:51:42 浏览128 评论0

抢沙发发表评论

4.17 定制用户环境1./etc/skel目录

/etc/skel目录里的内容是新添加用户的家目录的默认模板,如果你喜欢去定制你的用户的环境,你可以修改这个目录。例如:如果你想提供一个电话表给每个用户,你能在这个目录里添加一个文件。新用户将因此有这个文件的拷贝在他们的家目录里,你也能够去建立一个用户,使用命令:useradd -k并为新用户指定一个不同的模板目录,而没有那个电话拷贝给新用户。

2./etc/profile脚本

用户每次登录进入系统时,/etc/profile 文件都被执行,它将为用户设置环境变量,例如: HISTSIZE 和MAIL。这是在登录时第一个被执行的脚本,下一个是运行用户的~/.bashrc_profile脚本。典型的调用~/bashrc和/etc/bashrc。/etc/profile包含系统的环境设置,无论是在这儿添加或删除什么对所有用户都有影响。-理(续

3./etc/profile.d目录

/etc/profile.d目录包含初始化脚本,具体地由rpm 软件包安装。这些脚本由/etc/profile 在登录时调用,或者如果通过一个非交互式登录shell调用/etc/bashrc。

4./etc/bashrc脚本

/etc/bashrc脚本设置系统的全局符和别名。它允许系统管理员为每名用户设置别名,好像命令行历史。这个脚本通常由用户的~/.bashrc 文件调用。

4.18 定制用户环境(继续)1.~/. bashrc

这个文件包含用户的别名和功能(函数)

~/.bashrc 允许用户去定制他们自己的别名和功能(函数),没有系统管理员的干涉。无论何时用户启动非登录交互式shell , 此文件都将被执行,并且无论何时,用户进入系统,默认用户的~/.bash_profile脚本也调用此文件。-理(续

例如: Red Hat Linux的命令ls –l --color=tty的别名为ll 。如果用户想让命令ls -laf --color的别名为ll,照样可以做到,将这个别名添加到~/.bashrc脚本中,然后是source.bashrc脚本。每次用户启动一个交互式shell时, 个性化的别名将被设置并且优先于系统别名设置。-理(续

2.~/.bash_profile

这个文件包含用户环境设置。

~/.bash_profile被在每次登录时执行。它通常被用来设置环境变量和在登录时启动某个程序,同样反对你每次都打开一个终端窗口。

4.19 本单元出现的重要文件和命令1.重要文件

/etc/passwd

/etc/group

/etc/shadow

/etc/skel

/etc/profile

/etc/bashrc

~/.bashrc

~/.bash_profile

2.重要命令

useradd usermod userdel

groupadd groupmod groupdel

chage

authconfig

chown

chgrp

chmod

umask

su

4.20 部分命令、文件详解1. useradd

功能:建立用户账号:

语法:useradd[--mMnr] [-c<备注>] [--f< 登录目录>] [- e< 有效期限>]

[-f<缓冲天数>] [-g<组>] [-G<组>=]

[-s<shell>] [-u<uid>] [ 用户账号]

补充说明:usreradd 可用来建立用户账号。账号建好之后,可用passwd 设置账号的密码,可用usderdel删除账号。

参数:

-C<备注> 加上备注文字.备注文字会存储在passwd 的备注字段中。

-d<登录目录> 指定用户登录时的起始目录。

-e<有效期限> 指定账号的有效期限。<有效期限>格式为月/日/年后两位。

-f < 缓冲天数> 指定在密码过期后多少天即关闭该帐号。

-g <组> 指定用户所属组。

-G 指定用户所述附加组。

-m 自动建立用户的登录目录。

-M 不要自动建立用户的登录目录。

-n 不建立以用户名称为名的组。

-r 建立系统账号。

-s<shell> 指定用户登录后所使用的shell。

-u<uid> 指定用户ID。

-D 变更默认值。默认值的选项说明如下:

-b < 用户目录> 在指定的《用户目录》下,建立所有用户的《登录目录》。默认值为/home

-e < 有效期限> 指定默认帐号的有效期限。

-f < 缓冲天数> 指定在密码过期后多少天即关闭该帐号。

-g< 组> 指定用户所属组。

-G< 用户目录> 指定用户所述附加组。

-s< 用户目录> 指定用户登录后所使用的shell。

2. usermod

功能:修改用户账号。

语法:usermod [-LU] [-c<备注>] [-d< 登录目录>] [- e< 有效期限>]

[-f<缓冲天数>] [-g<组>][-G<组>] [-L <帐号名称>] [-S<shell>[-U<uid>] 用户账号

补充说明:usermod 可用来修改用户账号的各项设置。

参数:

-l< 账号名称 > 修改用户号名称

-L 锁定用户密码,使密码无效。

-U 解除密码锁定。

其他参数同useradd

3. userdel

功能:删除用户账号

语法:userdel -r[用户账号]

补充说明:userdel可删除用户账号与相关的文件。若不加参数,则仅删除用户账号,而不删除相关文件。

参数:

-r删除用户登录目录。以及目录中所有文件。

4. groupadd

功能:创建组

语法:group [-fr] [-g<组级别码><-o> [组名称]

参数:

-f 强制创建已存在的组

-g< 组识别码> 设置新创建组识别码,没有此参数则从500开始,500以内保留给系统服务账号使用。

-o 仅与-g共同使用有效.重复使用识别码。

-r创建系统组.

5. groupdel

功能:删除组

补充:必须先删组内用户,再删组。

6. groupmod

功能:更改组识码或名称

语法:groupmod [-g<组识别码-0>=][-n<新组名称> [组名称]

7. chage

功能:打开密码老化

语法: chage [option] username

选项:

-m 在修改密码之前的最小日期

-M 在修改密码之前的最大日期

-I 锁定账号在密码期满多少天之前

-E date 密码在此日期期满

-W 需要修改密码多少天之前开始警告

8. chown

功能:变更文件工目录的所有者或所属组.

9. Charp

功能:变更文件或目录的所属组

10. chmod

功能:变更文件工目录的权限.

11. umask

功能:指定建立文件时默认的权限掩码.

12. Su

功能:变更用户身份

语法:su[ -c< 指令>] [-s<shell>] [ 用户账号]

参表

-c<指令>执行完指定的指令后,即恢复原来身份.

-s<shell> 指定要执行的shell

[用户账号]若不指定,默认变更为root。

13.密码存储文件/etc/shadow

⑴ Red Hat Linux默认将用户密码存储在/etc/shadow文件中。Passwd文件默认权限为644,shadow文件默认权限为400。Shadow文件支持密码过期设定功能,其中每一行表示一个系统用户的密码记录,用:分隔。用户可以通过authconfig来设定是否使用shadow文件及md5加密。-理(续

⑵ shadow文件的每一行中的每一项说明:

① 登录名

② 用户密码(一般经md5加密)

③ 从1970年1月1日起到密码上一次被更改的时间

④ 密码再过几天被变更(0表示随时可变更)

⑤ 密码再过几天必须被变更(99999表示永不过期)

⑥ 密码过期前几天系统提醒用户(默认为一周)

⑦ 密码过期几天后帐号被取消

⑧ 从1970年1月1日算起,多少天后帐号失效。

⑶ 举例:

#cat /etc/shadow

root:$1$.iangnXk$qpF6VUds4fr1NlclK6dhM/:12630:0:99999:7:::

bin:*:12630:0:99999:7:::

daemon:*:12630:0:99999:7:::

adm:*:12630:0:99999:7:::

lp:*:12630:0:99999:7:::

lijun:$1$vLw60sFN$cZHcvKsE61iTrDLEbklN0.:12630:0:99999:7:::

你会在/etc/login.defs中看到这样的规定:

# Password aging controls:

# 密码老化控制

# PASS_MAX_DAYS 密码再过几天必须被更改

# PASS_MIN_DAYS 密码再过几天可以被变更

# PASS_MIN_LEN 密码最小字符数

# PASS_WARN_AGE 密码过期前几天系统提醒用户

PASS_MAX_DAYS 99999

PASS_MIN_DAYS 0

PASS_MIN_LEN 5

PASS_WARN_AGE 7