Linux中用户与用户组管理

Linux中用户与用户组管理  
Linux中用户与用户组管理  
一、用户管理
   1.建立用户
   Linux中建立用户是通过Useradd(有些系统也成为adduser)实现的。下面举个简单的例子,
   建立一个名为testuser1的新用户:
   $useradd testuser1
   这个命令通过完成下列动作建立新用户:
   在/etc/passwd文件中建立没有口令的用户项目;
   为用户指定ID;
   将用户加入到相应的组中。在Red Hat中,就是对用户生成只有改用户作为唯一成员的组;
   对用户建立主目录(大多数Linux版本中为/home/testuser1)并将/etc/skel的内容复制到主目录中。
   如果要改变系统缺省的用户ID,可以用-u标志在建立用户时强制指定用户ID ,例如:
   $useradd -u 10001 testuser1
   指定帐号testuser1的用户ID为10001。
   同样,如果要为用户指顶特定组作为缺省组,可以用-g标志在建立用户时指定所属的组,例如:
   $useradd -g users testuser1
   在建立用户testuser1的同时将其加入到users组中。
   进一步假设,如果testuser1除了属于缺省users组外还属于组group1和group2 ,则可以用-G
   标志指定在建立帐号时加入新用户的其它组:
   $useradd -g users -G group1,group2 testuser1
   最后,如果要对用户指定其它主目录,用-d标志:
   $useradd -d /testuser1 testuser1
   2.改变useradd的缺省设置
   useradd使用的一些缺省设置,可以在每次建立用户时改写。这些缺省设置可以用useradd
   命令的-D标志和几个补充标志复位。
   -D标志要跟补充标志一起使用。下面介绍-b和-g标志,分别复位缺省主目录路径和缺省组。
   例如,要设置缺省主目录路径为/users,用下列命令:
   $adduser -D -b /users
   同样,要设置所有新用户的缺省组为users,用系列命令:
   $adduser -D -g users
   这两个命令可以合起来用:
   $adduser -D -b /users -g users
   3.改变口令
   改变口令用passwd命令实现。用户要改变口令时,只需在命令提示符下执行这个命令,然后输
   入当前口令并输入两次新口令即可。
   在许多Linux版本中,passwd命令检查口令是否太短、太简单、太象用户名或太象原口令,
   无效的口令会产生错误信息。
   根用户有权改变任何用户的口令,可以在passwd命中提供用户名变元。这时 ,只提示输
   入新口令两次。例如:
   $passwd testuser1
   这时只需输入两次新口令,即可改变testuser1的口令。
   4.建立缺省主目录
   缺省情况下,每个用户都有个主目录,通常在/home目录中。建立用户帐号时,其主目录建
   立并放上缺省文件集。这个缺省文件集从/etc/skel目录中复制,其中包含新主目录的目录树。
   要把一个文件放进每个新主目录中,只要生成文件并将其按用户主目录中要显示的名称放进
   /etc/skel目录中。此后加入的所有用户建立用户帐号时,其主目录中都会有这个文件。
   5.删除用户
   删除用户与加入用户是平行的过程,用userdel命令实现。例如:
   $userdel testuser1
   这里有个问题,用户的文件没有删除。要同时删除用户的主目录,用-r标志实现:
   $userdel -r testuser1
   还有另外一个问题是,如果在系统的其它地方还有属于该用户的文件要删除呢?
   这可以在删除用户之后用find命令进行。为此,删除用户之前要从口令文件记下
   用户的用户ID(这里假设用户ID为10001),然后用find命令如下:
   $find / -type -uid 10001 -print -exec rm {}

二、管理用户组
   1.建立组
   利用groupadd命令可以将新组加进系统中。例如,要建立名为ye的新组,用groupadd命令如下:
   $groupadd ye
   如果要指定组ID,可用-g标志,例如
   $groupadd -g 503 ye
   2.将用户加进组中
   没有一个标准程序能方便地将用户加进组中。为此,最简单的办法是直接编辑/etc/group文件。
   这个文件中的每一行表示一个组的定义,形式如下:
   :::
   groupname是组名;password是组的加密口令,组通常不用口令,因此这个字段通常空白;
   groupid是组ID;最后,userlist是属于该组的用户清单,用逗号分隔。例如,如果user1,
   user2和user3都属于组group1,其组ID为505,则组的项目如下:
   group1::505:user1,user2,user3
   要将用户加进组中,用任意文本编辑器编辑/etc/group文件,并将用户名加进用户清单末尾,
   用逗号分隔。
   3.删除组
   删除组用groupdel命令进行。这个命令很简单,没有标志也没有选项。例如,要删除上面所
   建立的ye组,用groupdel命令如下:
   $groupdel ye
   尽管这个命令很简单,但是还是有几点要注意。首先,属于组的文件不会删除或改变所属组;
   其次,如果组是用户的基础组(即在口令文件中显示为该用户的组),则这个组无法删除。
   第一个问题可以象删除用户后删除用户的文件一样处理。首先要记住要删除的组的ID。
   用groupdel命令删除组后,可以用find命令改变属于已删除组的所有文件的组所有权(假设要删除的组的ID为503):
   $find / -type f -gid 503 -print -exec chgrp newgroupname {}
   这个find命令会找出组ID为503的组中的所以文件,然后用chgrp命令改变组中文件的组
   所有权为属于另一个newgroup组。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值