用户和组管理类命令

用户和组管理类命令

useradd

useradd命令用于Linux中创建的新的系统用户

语法

    useradd(选项)(参数)

选项

    -c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;
    -d<登入目录>:指定用户登入时的启始目录;
    -D:变更预设值;
    -e<有效期限>:指定帐号的有效期限;
    -f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
    -g<群组>:指定用户所属的群组;
    -G<群组>:指定用户所属的附加群组;
    -m:自动建立用户的登入目录;
    -M:不要自动建立用户的登入目录;
    -n:取消建立以用户名称为名的群组;
    -r:建立系统帐号;
    -s<shell>:指定用户登入后所使用的shell;
    -u<uid>:指定用户id。

参数

用户名:要创建的用户名

实例

  • 新建用户
    [root@localhost ~]#useradd centos
    [root@localhost ~]# id centos
    uid=1000(centos) gid=1000(centos) groups=1000(centos)
    
  • 新建用户加入组
    [root@localhost ~]# useradd test1 -g centos -G test,testuser //-g:加入主要组、-G:加入次要组
    [root@localhost ~]# id test1
    uid=1004(test1) gid=1000(centos) groups=1000(centos),1001(test),1002(testuser)
    
  • 新建用户,并制定设置ID
    [root@localhost ~]# useradd test2 -u 567
    [root@localhost ~]# id test2
    uid=567(test2) gid=1004(test2) groups=1004(test2)
    

    设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。


userdel

userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。

语法 userdel(选项)(参数)

选项

    -f:强制删除用户,即使用户当前已登录;
    -r:删除用户的同时,删除与用户相关的所有文件。

参数

用户名:要删除的用户名。

实例

    userdel test1  //删除用户test1,但不删除其家目录及文件;
    userdel -r test2 //删除用户test2,其家目录及文件一并删除;

usermod

usermod命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。

语法

    usermod(选项)(参数)

选项

    -a:仅和-G一起使用,将用户增加到附属群组
    -c<备注>:修改用户帐号的备注文字;
    -d<登入目录>:修改用户登入时的目录;
    -e<有效期限>:修改帐号的有效期限;
    -f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
    -g<群组>:修改用户所属的群组;
    -G<群组>;修改用户所属的附加群组;
    -l<帐号名称>:修改用户帐号名称;
    -L:锁定用户密码,使密码无效;
    -s<shell>:修改用户登入后所使用的shell;
    -u<uid>:修改用户ID;
    -U:解除密码锁定。

参数

登录名:指定要修改信息的用户登录名。

实例

  • 将test1 的附属群组改为linux
    [root@localhost ~]# usermod -G linux test1
    [root@localhost ~]# id test1
    uid=1004(test1) gid=1000(centos) groups=1000(centos),1003(linux)
    
  • 将test1 增加附属群组testuser
    [root@localhost ~]# usermod -aG testuser test1
    [root@localhost ~]# id test1
    uid=1004(test1) gid=1000(centos) groups=1000(centos),1002(testuser),1003(linux)
    
  • 将test1 所属群组改为 test
    [root@localhost ~]# usermod -g test test1
    [root@localhost ~]# id test1
    uid=1004(test1) gid=1001(test) groups=1001(test),1002(testuser),1003(linux)
    
  • 将test1 用户名改为testusers
    [root@localhost ~]# usermod -l testusers test1      
    [root@localhost ~]# id testusers
    uid=1004(testusers) gid=1001(test) groups=1001(test),1002(testuser),1003(linux)
    [root@localhost ~]# 
    
  • 锁定账号,使其密码无效
    usermod -L testusers
    
  • 解锁账号
    usermod -U testusers
    

groupadd

groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。

语法

    groupadd(选项)(参数)

选项

    -g:指定新建工作组的id;
    -r:创建系统工作组,系统工作组的组ID小于500;
    -K:覆盖配置文件“/ect/login.defs”;
    -o:允许添加组ID号不唯一的工作组。

参数

组名:指定新建工作组的组名。

实例

新建一个组,并设置组ID

    [root@localhost ~]# groupadd -g 1234 testgroup
    [root@localhost ~]# cat /etc/group | grep "testgroup"
    testgroup:x:1234:

groupdel

groupdel命令用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。

语法

groupdel(参数)

参数

组:要删除的工作组名。

实例

    root@localhost ~]# groupdel testgroup
    [root@localhost ~]# cat /etc/group | grep "testgroup"

groupmod

语法

    groupmod(选项)(参数)

选项

    -g<群组识别码>:设置欲使用的群组识别码;
    -o:重复使用群组识别码;
    -n<新群组名称>:设置欲使用的群组名称。

参数

组名:指定要修改的工作的组名。


综合实例

  • 创建组distro,其GID为2016;
    [root@localhost ~]# groupadd distro -g 2016
    [root@localhost ~]# cat /etc/group  | grep "distro"
    distro:x:2016:
    
  • 创建用户mandriva, 其ID号为1005;基本组为distro;
    [root@localhost ~]# useradd mandriva -u 1005 -g distro
    [root@localhost ~]# id mandriva
    uid=1005(mandriva) gid=2016(distro) groups=2016(distro)
    
  • 创建用户mageia,其ID号为1100,家目录为/home/linux;
    [root@localhost ~]# useradd mageia -u 1100 -d /home/linux
    [root@localhost ~]# cat /etc/passwd | grep "mageia"
    mageia:x:1100:1100::/home/linux:/bin/bash
    
  • 给用户mageia添加密码,密码为mageedu;
    [root@localhost ~]# echo "mageedu" | passwd --stdin mageia
    Changing password for user mageia.
    passwd: all authentication tokens updated successfully.
    
  • 删除mandriva,但保留其家目录;
    [root@localhost ~]# userdel mandriva
    
  • 创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
    [root@localhost ~]# useradd slackware -u 2002 -g distro -G peguin
    [root@localhost ~]# id slackware
    uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin)
    
  • 修改slackware的默认shell为/bin/tcsh;
    [root@localhost ~]# usermod slackware -s /bin/tcsh
    [root@localhost ~]# cat /etc/passwd | grep "slackware"
    slackware:x:2002:2016::/home/slackware:/bin/tcsh
    
  • 为用户slackware新增附加组admins;
    [root@localhost ~]# usermod slackware -aG admins
    [root@localhost ~]# id slackware
    uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin),2018(admins)

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92650

(0)
eighteenxueighteenxu
上一篇 2018-03-18
下一篇 2018-03-18

相关推荐

  • 第八周作业

    第八周作业 1、写一个脚本,使用ping命令推测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示; 不在线的主机使用红色显示;   #!/bin/bash for i in {1..254};do if ping -c 1 -w 1 192.168.1.$i &> /dev/nu…

    Linux干货 2017-11-13
  • bash变量和逻辑运行

    bash 特性及bash脚本编程初步       终端,附着在终端的接口程序:      GUI:KDE,GNome,Xfce      CLI: /etc/shells              b…

    Linux干货 2016-12-23
  • M20 – 1- 第三周博客(2):Linux用户、组

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

    Linux干货 2016-08-05
  • 第二周作业

    一、Linux文件管理类命令     1、文件的复制、移动和删除     1 2 3 4 5 6 7 8 9 10 11 12 13 14 15    A、cp  文件的复制        &nbsp…

    Linux干货 2016-12-13
  • test

    欢迎使用马克飞象 作业帮 示例笔记本 马克飞象 帮助 Markdown 马克飞象是一款专为印象笔记(Evernote)打造的Markdown编辑器,通过精心的设计与技术实现,配合印象笔记强大的存储和同步功能,带来前所未有的书写体验。特点概述: 功能丰富 :支持高亮代码块、LaTeX 公式、流程图,本地图片以及…

    Linux干货 2017-03-20
  • LAMP

    备注:本次安装是采用的系统自带的yum源进行安装的 第一步:安装Apache 1:安装apache,命令如下: yum install -y httpd   2:修改httpd.conf,修改ServerName的域名,具体步骤如下: 使用vi编辑器打开apache配置文件,命令如下: vi /etc/httpd/conf/httpd.conf 按…

    Linux干货 2017-10-09