(Third assignment)用户、用户组、文件系统和网络 的概念和用法

一、用户身份与用户组记录的文件

二、用户与用户组操作

三、文件或目录权限操作

四、磁盘与文件系统

五、网络配置与操作

一、用户身份与用户组记录的文件

在Linux系统当中,默认情况下所有的系统上的账号信息都记录在/etc/passwd这个文件内(包括root用户),而个人密码记录在/etc/shadow这个文件内。所有Linux的组名都记录在/etc/group内。这三个文件非常重要,不要轻易做变动。在后续内容中,我们还会详细做介绍。

 

综上,用户身份与用户组的概念,能够帮助我们的Linux多任务环境变得更为容易管理。

 

实现用户账号的管理,要完成的工作主要有如下几个方面:

–用户账号的添加、删除与修改(以及更改用户所属用户组)。

–用户口令的管理。

–用户组的添加、删除管理。

 

可参看《鸟哥的Linux私房菜》第260页,5.1 使用者和群组

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

二、用户与用户组操作

1、查看用户信息

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

用户id在500以前的都是系统内置用户,包括不能登录的伪用户(/sbin/nologin)。

新增用户的id必然是大于或等于500的

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

利用管道符命令可以查看某个用户的信息:

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

| —— 管道命令

grep —— 抓取命令 (可使用通配符*)

 

合在一起就是抓取前一个命令的结果中满足条件的信息。

 

利用head -n查看前几行信息:

[[email protected] ~]# cat /etc/passwd | head -3

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

利用tail -n查看最后几行信息:

[[email protected] ~]# cat /etc/passwd | tail -3

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

2、用户的添加和修改

useradd [参数] 用户名

usermod [参数] 用户名

参数:-g 主组、-G 附加组 -d 主目录 -s shell -c 注释 -u 用户id -p 密码

添加用户,不设置主组,会默认创建同名的主组。

增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。

 

3、用户的删除

userdel 用户

如果一个主组里只有一个同名用户,删除用户的同时,也删除该主组。

 

4、用户组的添加、修改和删除

groupadd -g 用户组id 用户组

groupmod -g 用户组id 用户组

groupdel 用户组

 

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。用户组的管理涉及用户组的添加、删除和修改,实际上就是对/etc/group文件的更新。

 

5、在用户组里添加用户

useradd -G 用户组 用户

usermod -G 用户组 用户

usermod -a -G 用户组 用户

 

6、在用户组里删除用户

gpasswd -d 用户 用户组

 

7、切换用户

su - 用户 # su -- switch user

 

8、用户口令的管理

(1)用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。

(2)指定和修改用户口令的Shell命令是passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:

(3)命令格式:passwd [选项] 用户名

可使用的选项:

•-l(lock)锁定口令,即禁用账号。

•-u(unlock)口令解锁。

•-d(HOME_DIR)使账号无口令(删除密码)。

•-f 强迫用户下次登录时修改口令。

如果默认无用户名,则修改当前用户的口令。

例1:创建用户mike,用户id为510,密码为12345,主目录为/home/dear-mike。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

注释:代码敲完,出现-bash时,再重新敲一次就正确啦。

现在我们已经有了liubinchen和mike两个普通用户:

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例2:创建一个用户组lzy,将howard和mike添加到该用户组。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

注释:出现-bash: group: command not found时,重复把代码再敲一次

例3:添加用户alice,密码333,加入lzy组。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例4:修改用户alice的密码为12345,主目录改为/home/dear-alice。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例5:创建一个组luzhou,组编号777,将用户mike从lzy组迁移到luzhou组。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例6:创建一个用户smith,加入lzy组和luzhou组。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例7:lzy组的alice同时加入luzhou组。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例8:让mike从luzhou组里移除。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

 

例9:删除luzhou组。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例10:删除用户alice。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法

例11、由root用户切换到howard用户,查看环境,然后退出。

(Third assignment)用户、用户组、文件系统和网络 的概念和用法