LINUX系统中的用户和用户组管理(二)【转】

Linux用户管理命令

Linux是一个多用户多任务的操作系统,有着很丰富的用户管理工具,这些工具包括用户的查询。添加、修改、以及不同用户之间相互切换等;通过这些工具,我们可以简单、方便、安全的进行用户管理工作。

添加用户的命令useradd和adduser,这两个命令所能达到的效果是一样的。当然除了useradd和adduser命令意外,我们还能通过修改用户配置文件/etc/passwd和/etc/group及手动创建的办法来直接添加用户,不过不推荐这个方法。这里推荐大家统一使用useradd命令。

useradd 添加账户

当使用useradd命令不加参数选项,后面直接跟所添加的用户名时,系统首先会读取配置文件/etc/login.defs和/etc/default/useradd文件中所配置的信息建立用户的家目录,并复制/etc/skel中的所有文件(包括隐藏的环境配置文件)到新用户的家目录中。

    useradd语法:
     
    [root@localhost ~]# man useradd
    NAME
           useradd - create a new user or update default new user information
    SYNOPSIS
           useradd [options] LOGIN
           useradd -D
           useradd -D [options]



   描述:
     
     新账号建立
    
    当不加-D参数时,useradd指令使用命令列来指定新账号的设定值和使用系统上的预设值
    (指前文提到的/etc/login.defs和/etc/default/useradd等配置文件)。
    新用户账号将产生一些系统档案,如用户目录的建立,拷贝起始档案等,这些均可以利用命令列选项指定。

 

下面是具体的选项:


   -c comment :新账户的password的说明栏   
   -u:  指定 UID 标记号。这个值是唯一的,除非用-o选项。数字不可为负值
    -d:  指定宿主目录,缺省为 /home/用户名
    -e:  指定帐号失效时间
   -f:   账户过期几天后永久停权。
    -g:  指定所属的基本组(组名或GID)
    -G:  指定所属的附加组(组名或GID)
   -m:   用户目录如不存在则自动建立。
    -M:  不为用户建立并初始化宿主目录。优先于/etc/login.defs文件的设定。
   -n:   默认情况下,用户的用户组和用户的名称会相同,如果命令加了-n参数,就不会生成和用户同名的用户组
   -r:   用来建立系统账户。系统账户的UID会比定义在/etc/login.defs的UID_MIN来的小。
    -s:  指定用户的登录Shell

当使用useradd命令不加参数选项,后面直接跟所添加的用户名时,系统首先会读取配置文件/etc/login.defs和/etc/default/useradd中所定义的参数或规则,根据设置的规则添加用户,同时会向/etc/passwd和/etc/group文件内添加新建用户和用户组记录。

当然/etc/passwd和/etc/group的加密资讯文件/etc/shadows和/etc/gshadow也会同步生成记录,同时系统还会根据/etc/default/useradd文件中所配置的信息建立用户的家目录,并复制/etc/skel中的所有文件(包括隐藏的环境配置文件)到新用户的家目录中。

改变新建用户的预设值 :

当执行useradd命令或加-D选项时,可以更改新建用户的默认配置值,或是由命令列编辑的方式更新预设值

为了方便读者阅读查看,依然用表格的方式把useradd加-D选项后,命令后面依然可使用的参数选项展现给大家如下所示

在这里插入图片描述
在这里插入图片描述

/etc/passwd -使用者账号资讯
/etc/shadow -使用者账号资讯加密
/etc/group -群组资讯
/etc/default/useradd -定义资讯
/etc/login.defs -系统广义设定
/etc/skel -内含定义档的目录
SEE ALSO
       chfn(1), chsh(1), passwd(1), crypt(3), groupadd(8), groupdel(8),
       groupmod(8), login.defs(5), userdel(8), usermod(8).

useradd实例:

实例3:不加任何参数,直接执行useradd usesname添加用户

[root@localhost ~]# useradd zhonggy
[root@localhost ~]# ls -ld /home/zhonggy/
drwx------ 3 zhonggy zhonggy 4096 May  7 09:17 /home/zhonggy/

在这个例子中,我们添加了一个名为zhonggy系统用户,当查看/home/目录时,会发现系统自动建立了一个zhonggy的目录。
我们再来看/etc/passwd文件中有关新用户zhonggy的记录:

[root@localhost ~]# cat /etc/passwd | grep zhonggy
zhonggy:x:505:505::/home/zhonggy:/bin/bash

[root@localhost ~]# finger zhonggy  #使用finger命令来查看用户信息
Login: zhonggy                          Name: (null)
Directory: /home/zhonggy                Shell: /bin/bash
Never logged in.
No mail.
No Plan.

从上文过滤出的zhonggy用户记录来看,用户的UID和GID分别为505,并且zhonggy的家目录为/home/zhonggy,所对应的shell为bash

接下来,我们再看看/etc/shadow、/etc/group和/etc/gshadow文件,是不是也有与zhonggy用户有关的记录:

[root@localhost ~]# grep zhonggy /etc/shadow
zhonggy:!!:16562:0:99999:7:::
You have new mail in /var/spool/mail/root
[root@localhost ~]# grep zhonggy /etc/group
zhonggy:x:505:
[root@localhost ~]# grep zhonggy /etc/gshadow
zhonggy:!::

提示:根据上文结果,我们发现/etc/shadow、/etc/group和/etc/gshadow几个文件都存在和zhonggy用户相关的记录。

我们还可以查看/etc/default/useradd 和/etc/login.defs两个文件的规则,看一下zhonggy用户的增加是不是符合这两个配置文件预设的值。最后可以查看/home/zhonggy目录下的文件,是不是和/etc/skel目录下的一样。

实例 4:useradd的-g、-u参数,执行useradd [参数] username 添加用户

[root@localhost ~]# groupadd -g 801 sa
#创建用户组sa制动gid 801,这个是groupadd命令的用法
[root@localhost ~]# useradd -g sa -u 901 oldboy1
#创建用户oldboy1属于指定组sa,指定uid901,用户名oldboy1
[root@localhost ~]# id oldboy1    #通过id命令查看结果
uid=901(oldboy1) gid=801(sa) groups=801(sa) context=root:system_r:unconfined_t:SystemLow-SystemHigh
生产场景中的创建账户的完整命令例子:
groupadd -g 801 sa
seradd -g sa -u 901 ett
echo  “6fuwrfwq3e” |passwd ett --stdin
echo “ett ALL=(ALL)    NOPASSWD:ALL” >>/etc/sudoers
visudo -v
history -c

实例5:useradd的——M、-s参数的例子

[root@localhost ~]# useradd oldboy2 -M -s /sbin/nologin  
#-M表示不创建家目录,-s指定用户登录后的shell,这里是/sbin/nologin表示禁止登陆。此例在生产环境中部署apache,mysql,nagios服务时经常用到。
[root@localhost ~]# ls -ld /home/ | grep oldboy2
[root@localhost ~]# grep oldboy2 /etc/passwd
oldboy2:x:902:902::/home/oldboy2:/sbin/nologin
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值