Linux用户和用户组管理命令

一、用户管理命令

  1、useradd   创建用户或更新默认新用户的信息

    使用方法  useradd [options] 用户名

    选项:

useradd -u           指定UID具体数值,在某些项目中要保证多台服务器某服务的UID应该是一样

useradd -o           配合-u选项,不检查UID的唯一性

useradd -g [GID|组名]           GID,组ID要存在(基本组,可以通过组ID 或者组名添加),如果该指定了基本组为已有的组,那么就不会创建和user同名的组了

useradd -G [GID|组名]          (附加组,组必须存在,可以同时添加多个附加组),可以是GID或者是组名

useradd -c            用户注释信息

useradd -d           /home/xxxx 指定家目录,如果家目录不存在通过-m创建

useradd -s            指定SHELL路径,必须在(etc/shells)文件中出现的shell,如/sbin/nologin

useradd -m          创建用户,强制给用户创建家目录

useradd -M          创建用户,不创建用户家目录

useradd -D           为useradd 命令创建的用户指定新的默认值

useradd -r            添加系统用户 ID号再1-499之间,不会给用户创建家目录,也不创建邮箱

常用应用系统创建用户方法:useradd -r -u 48 -g apache -s /sbin/nologin -d /var/www -c "Apache" apache

举例:创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为 "Gentoo Distributio"

  # useradd -G "bin,root" -s /bin/csh -c "Gentoo Distribution" gentoo

  

  2、usermod        修改用户账户信息

    使用方法:    usermod  [options] 用户名

    选项:

usermod -u          修改UID

usermod -g          修改基本组名(必须是事先存在的组才能改)

usermod -G          修改并覆盖原有附加组

usermod -a -G     为用户在原有附加组的前提下,追加附加组

usermod -G ""      清空附加组

usermod -c           修改注释信息

usermod -d          指定新家目录,但并不迁移,和-m同时使用

usermod -d -m    指定新家目录,后移动此前家目录的文件到新的家目录

usermod -s           指定shell路径,系统允许使用的

usermod -e          指定用户过期时间

usermod -l           修改用户名,家目录不更改

usermod -L          锁定用户

usermod -U          -U 解锁用户

usermod -f INACTIVE          设定非活动期限

usermod -e YYYY-MM-DD        指定用户账号过期日期

 

  3、userdel          删除用户,默认保留用户家目录

    使用方法:    userdel  [options] 用户名

    选项:

userdel -r      删除用户并删除家目录

二、用户其他相关命令

  4、id           查看用户的ID信息

    使用方法:    id  [options] 用户名

    选项:

id -u       显示UID

id -g       显示基本组GID

id -G      显示附加组GID

id -n -[u,g,G]         显示组名,配合其他命令一起使用,一次只能跟一个比如-ng

 

  5、su           切换用户或以其他用户身份执行命令

    选项:

su 用户名    非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

su -[l] 用户名    登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换。l可以省略。

su -c              su - Fred -c "touch /xxx/a.txt",以Fred用户执行touch a.txt命令

 

  6、passwd          修改指定用户的密码

    使用方法:    passwd  [options] 用户名

    选项:

passwd -l      锁用户

passwd -u     解锁用户

passwd -d     删除账户密码

passwd -n days    指定最短使用期限

passwd -x days     最大使用期限

passwd -w days    提前多少天开始警告

passwd -i days      非活动期限,密码过期后还宽限多少天可以登录使用

passwd -e             强制用户下次登录修改密码

passwd -f             强制操作

    常用技巧:

      1、通过标准字符串redhat来修改Fred用户的密码      

        #echo "redhat" | passwd --stdin Fred > /dev/null

  7、chage            修改用户密码到期时间

    使用方法:    chage  [options]  用户名

    选项:

chage -d       最近一次的修改时间,

# chage -d 0 Fred   立即让Fred用户口令失效,需要重新输入新密码

chage -E       活动时间

chage -I         非活动时间

chage -m      最短使用期限

chage -M      最长使用期限

chage -W      警告时间

chage -l       相当于--list,显示账户口令有效期信息

 

  8、chfn        修改用户的注释信息

  9、finger     查看用户账号的注释信息

  10、chsh       修改用户的默认shell

三、用户组管理命令

  11、groupadd             创建新组

    使用方法:    groupadd  [options]  组名

    选项:

groupadd -g        创建组并为其指定GID

groupadd -r         创建系统组

  12、groupmod            修改组信息

    使用方法:    groupmod  [options]  组名

    选项:

groupmod -g        修改GID 

groupmod -n        新组名

 

  13、groupdel       删除组

原文地址:https://www.cnblogs.com/ysuwangqiang/p/11375699.html