目录
目录概述关于用户组的配置文件关于用户的配置文件用户和用户组的基本命令
用户组操作用户操作 用户和用户组的进阶命令
主要组与附属组 其他命令
概述
使用操作系统的人,我们称之为用户。在Linux中允许多个不同用户同时登录同一个Linux系统并进行使用。而拥有相同系统权限的一组用户,称为一个用户组。下面将讲解一下用户或用户组相关的配置文件。
关于用户组的配置文件
/etc/group存储当前系统中所有用户组信息,如:
-
Group: x : 123 :user1,user2,user3
-
组名称:组密码占位符:组编号:组中用户名列表
注意:
组中用户名列表为空时,不代表当前组没有用户。在Linux中如果该组只有一个用户且用户名同组名一样时用户名在“组中用户名列表”中可以省略。
规定:
(1)root用户组的编号为0;
(2)1~499的编号是系统预留给安装在系统中的软件或服务的;
(3)用户创建的用户组的编号将会从500开始;
(4)组密码占位符都用x表示。(为什么呢?)
/etc/gshadow存储当前系统中用户组的密码信息,如:
-
Group: * : :user1,user2,user3
-
组名称:组密码:组管理者:组中用户名列表
其中:
(1)组密码为*或者!或者为空时,表示组密码为空(没有设置)。
(2)如果组管理者为空,表示该组没有管理者,该组中的用户均可管理该用户组。一般情况下都是空的。
关于用户的配置文件
/etc/passwd存储当前系统中所有用户的信息,如:
-
user : x : 123 : 456 : xxxx :/home/user:/bin/bash
-
用户名:密码占位符:用户编号:用户组编号:用户注释信息: 用户主目录 :shell类型
/etc/shadow存储当前系统中所有用户的密码信息,如:
root:
$6$zWv7m5tAJF3Q4LwC$R.
4pdIC4vGBzqASdDUQU6IP3jHLWJEPwVrIqkKuGns9nVArbedRxC0ePprGVwjSlJNgsBfG35TiLdQzv8RPRw0:::::::
- 用户名:被加密的密码:……
用户和用户组的基本命令
用户组操作
groupadd 组名:添加一个新的用户组。如:
groupadd gg
groupadd -g 组编号 组名:添加一个新的用户组,并指定组编号。如:
groupadd
-g 888 group8
groupmod -n 新的组名 旧的组名:修改用户组的名称。如:
groupmod
-n gg1 gg
groupmod -g 新的组编号 组名:修改某个组的组编号。如:
groupmod
-g 666 gg1
groupdel 组名:删除用户组。如:(当然,删除用户组之前,要求我们先删除该用户组中的所有用户,否则这些用户在后续的操作中将受到一些权限的影响。)
groupdel gg1
用户操作
useradd命令,将某个用户添加到某个用户组中。如:
useradd
-g group1 user1
useradd
-d /home/mydocu user2
usermod -c 注释 用户名:为某个用户添加注释。如:
usermod
-c "这是注释" user1
usermod -l 新的用户名称 旧的用户名称:修改某个用户的用户名称。如:
usermod
-l newname user1
usermod -d home目录 用户名:修改某个用户的home目录。如:
usermod
-d /home/newname newname
usermod -g 组名 用户名:切换用户到其他用户组。如:
usermod
-g group2 user1
userdel 用户名:删除用户,但是不会删除该用户的home目录,如果需要的话,则需要加入-r的选项。如:
userdel user1
userdel
-r user1
暂时禁止普通用户登录服务器(除root用户外),操作如下:
touch /etc/nologin
用户和用户组的进阶命令
passwd -l 用户名:锁定账号。passwd -u 用户名:解锁账号。passwd -d 用户名:清除某个用户的密码。
主要组与附属组
用户可以同时属于多个组,其中一个主要组,多个附属组。
gpasswd -a 用户名 附属组名[,附属组名1,附属组名2,....]:给用户添加一个或多个附属组。gpasswd -d 用户名 附属组名:将用户从某个附属组中删除。newgrp 组名:临时切换附属组。(这时需要某个用户登录,进行组的切换操作。对于root用户而言,该意义没有什么意义。在切换时如果附属组设有组密码,则要求用户输入组密码。) (未完待续)此前添加用户时可以指定所属的用户组,那么可否也同时指定附属组呢?useradd -g 主要组名 -G 附属组[,附属组名1,附属组名2,....] 用户名。gpasswd 组名:设置组密码。
其他命令
su [用户名]:切换用户身份,不指定用户名时表示切换到root用户。切换到其他用户时需要目标用户的密码。whoami:显示当前登录的用户名。id 用户名:显示指定用户信息,包括用户编号、用户名;主要组编号及名称,附属组列表。groups 用户名:显示某一用户所在的所有组。chfn 用户名:设置用户资料,依次输入用户资料。finger 用户名:显示用户详细资料。(这个命令可能找不到~)