Linux用户和组的管理
在Linux系统中,用户和组的管理是非常重要的。用户和组的管理可以通过命令行工具或者图形界面工具进行操作。下面是一些常用的命令和操作:
Linux用户管理
添加用户:
可以使用useradd
命令添加用户,例如useradd username
,其中username
是要添加的用户名。
账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,是保存在/etc/passwd文本文件中。
-g 属组,指定用户所属的群组
-u 设置uid,该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。
-m 创建家目录
-M 没有家目录
-G 指定属于多个组
-s 指定登录shell
-d 指定家目录,替换系统默认值/home/<用户名>
-c 注释
-D 改变它默认的属性
-e 指定的日期是帐号失效的日期(日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效)
-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
useradd -d /home/创建的用户名 -m 创建的用户名
以上代码的意思是使用useradd
命令创建 用户
其中-d参数是指定的用户主目录,如果此目录不存在,同时使用-m参数,可以为其创建主目录
useradd -s /bin/sh -g group -G adm,root gem
在这个命令中创建了一个用户gem,使用的Shell是/bin/sh,它属于group用户组,同时又属于adm和root用户组,
其中-g是指定用户所属的用户组,-G用户组,指定用户所属的附加组。-s Shell文件指定用户的登录shell。bash是解释器的意思,shell是脚本的意思。
这里还有个可能是会创建两个组,在/etc/group目录,可以使用tail-2 /etc/group查看新建组的信息
一个组是group,另一个是gem
删除用户:
可以使用userdel
命令删除用户,例如userdel username
,其中username
是要删除的用户名。
userdel -选项 用户名
常用的选项是-r,代表的是在sam文件系统中同时删除用户的主目录
直接删除用户是不能够删除这个用户的所属目录和group信息的,另外 passwd和shadow的信息,都在/etc目录下
修改用户信息:
可以使用usermod
命令修改用户信息,例如usermod -c "New Comment" username
,其中-c
选项用于修改用户的注释信息。
usermod -s /bin/abc -d /home/123 xiaobai lzz
这一行的命令是将用户lzz的登陆shell修改成了abc,主目录修改成了/home/123 用户组修改为xiaobai
切换登录用户
命令:su
作用于用户之间的切换。但是切换前的用户依然保持登录状态。如果是root 向普通或虚拟用户切换不需要密码,反之普通用户切换到其它任何用户都需要密码验证。
su lzz
:切换到lzz用户,但是路径还是/root目录
su - lzz
: 切换到lzz用户,路径变成了/home/lzz
su
: 可以由普通用户切换到root用户,但是路径还是原来的路径
su -
: 可以由普通用户切换到root用户,并且路径是/root
exit:退出返回之前的用户
exit
修改用户密码:
可以使用passwd
命令修改用户密码,例如passwd username
,系统会提示输入新密码。
passwd lzz
以上命令中要修改了lzz的密码,会询问密码验证,然后输入两遍相同的密码,
前提是必须要是普通用户lzz登录的,当然,root用户就可以不用询问原密码。
以下是一些常用参数 :
passwd -d lzz #在下一次用户登录时不允许该用户登录
passwd -l lzz #锁定这个用户,让他不能登录
passwd -u lzz #解锁用户
Linux的组管理
添加组:
可以使用groupadd
命令添加组,例如groupadd groupname
,其中groupname
是要添加的组名。
groupadd group1
groupadd -g 10010 group2
在以上命令中创建了一个默认最大组标识号+1的组,创建了一个组标识号为10010的组,其中-g 代表指定的用户组的组标识号GID
删除组:
可以使用groupdel
命令删除组,例如groupdel groupname
,其中groupname
是要删除的组名。
groupdel group1
命令groupdel1后面跟上要删除的组名
修改组信息:
可以使用groupmod
命令修改组信息,例如groupmod -n newgroupname groupname
,其中-n
选项用于修改组名。
groupmod -g 10020 group2
这行命令将group2这个组的组标识号修改为10020,其中参数-g是修改GID
groupmod -n group3 group2
这行的命令是将组group2组名修改为名为group3
将用户添加到组:
可以使用usermod
命令将用户添加到组,例如usermod -aG groupname username
,其中-aG
选项用于将用户添加到指定的组。
usermod -aG group1 lzz
修改用户lzz,添加到group1组
PS:
查看用户信息:可以使用id
命令查看用户的详细信息,例如id username
,系统会显示用户的UID、GID以及所属的组。
查看组信息:可以使用cat /etc/group
命令查看系统中所有组的信息。
评论区