30.用户和组管理命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了30.用户和组管理命令相关的知识,希望对你有一定的参考价值。
linux系统的用户账号的管理命令:
添加用户:useradd命令
修改用户:usermod命令
删除用户:userdel命令
修改用户密码:passwd命令
1.添加用户:useradd命令
选项:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
实例1
~]# useradd –d /usr/sam -m sam
此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。
实例2
~]# useradd -s /bin/sh -g group –G adm,root gem
此命令新建了一个用户gem,该用户的登录Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
这里可能新建组:#groupadd group及groupadd adm
增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。
Linux提供了集成的系统管理工具userconf,它可以用来对用户账号进行统一管理。
2.修改用户:usermod命令
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。
另外,有些系统可以使用选项:-l 新用户名
这个选项指定一个新的账号,即将原来的用户名改为新的用户名。
例如:
~]# usermod -s /bin/ksh -d /home/z –g developer sam
此命令将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。
3.删除用户:userdel命令
如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录
常用的选项是 -r,它的作用是把用户的主目录一起删除。
例如:
~]# userdel -r sam
此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。
4.修改用户密码:passwd命令
passwd命令用来更改使用者的密码
选项:
-d 删除密码
-f 强制执行
-k 更新只能发送在过期之后
-l 停止账号使用
-S 显示密码信息
-u 启用已被停止的账户
-x 设置密码的有效期
-g 修改群组密码
-i 过期后停止用户账号
实例:
[[email protected] ~]# passwd docker
更改用户 docker 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]# passwd -S docker
docker PS 2019-01-22 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
[[email protected] ~]# passwd -d docker
清除用户的密码 docker。
passwd: 操作成功
Linux系统用户组的管理
进程一其发起者的身份运行;
进程对文件的访问权限,取决于发起此进程的用户权限;
系统用户:为了能够让那后台进程
组命令:
groupadd命令:添加组
groupmod命令:修改组
groupdel命令:删除组
groupadd命令:添加组
选项:
-g:指定新建工作组的id; 默认是上一个组的GID+1;
-r:创建系统组,系统组的组ID小于500;
实例:
~]# groupadd mygrp
~]# groupadd -r -g 306 mysql
[[email protected] ~]# tail -10 /etc/group
stapdev:x:158:
itxuezhe:x:1000:
apache:x:48:
gentoo:x:1001:
centos:x:1002:
docker:x:1003:
mysql:x:982:
mygrp:x:1004:
testgrp:x:981:
mariadb:x:306:
groupmod命令:修改组
选项:
-g GID: 修改GID;
-n new_name:修改组名,将用户组的名字改为新名字
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
实例:
[[email protected] ~]# tail -2 /etc/group
testgrp:x:981:
mariadb:x:306:
[[email protected] ~]# groupmod -g 702 mariadb
#把mariadb的GID修改为702
[[email protected] ~]# tail -2 /etc/group
testgrp:x:981:
mariadb:x:702:
[[email protected] ~]# groupmod -n hello mariadb
[[email protected] ~]# tail -2 /etc/group
testgrp:x:981:
hello:x:702:
#把mariadb组修改为hello,组GID还是702
groupdel命令:删除组
选项:
groupdel [选项] GROUP
实例:
[[email protected] ~]# groupdel hello
[[email protected] ~]# groupdel testgrp
[[email protected] ~]# tail /etc/group
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
itxuezhe:x:1000:
apache:x:48:
gentoo:x:1001:
centos:x:1002:
docker:x:1003:
mysql:x:982:
mygrp:x:1004:
以上是关于30.用户和组管理命令的主要内容,如果未能解决你的问题,请参考以下文章