Linux 用户及用户组的简单操作

添加用户,并指定用户ID:

useradd -u userID username

e.g. useradd -u 1001 user1

注意,这里的userID最好取500以上,否则和系统虚拟用户ID相冲突。如果加上-M参数,则不为该用户创建用户目录,如 /home/user1 。

在创建用户时,可以使用下面的命令行参数改变默认值或默认行为: 

============================================================================ 
参 数 描 述 
---------------------------------------------------------------------------- 
-c comment 给新用户添加备注 
-d home_dir 为主目录指定一个名字(如果不想用登录名作为主目录名的话) 
-e expire_date 用YYYYY-MM-DD格式指定一个账户过期的日期 
-f inactive_days 指定这个帐户密码过期后多少天这个账户被禁用;0表示密码一过期就立即禁 
用,-1表示禁用这个功能 
-g initial_group 指定用户登录组的GID或组名 
-G group ... 指定用户除登录组之外所属的一个或多个附加组 
-k 必须和-m一起使用,将/etc/skel目录的内容复制到用户的HOME目录 
-m 创建用户的HOME目录 
-M 不创建用户的HOME目录(当默认设置里指定创建时,才用到) 
-n 创建一个同用户登录名同名的新组 
-r 创建系统账户 
-p passwd 为用户账户指定默认密码 
-s shell 指定默认登录shell 
-u uid 为账户指定一个唯一的UID 
============================================================================ 

同样,你可以用-D参数后面跟一个要修改的值的参数,来修改系统默认的新用户值。这些参数如下表: 

============================================================================ 
参 数 描 述 
---------------------------------------------------------------------------- 
-b default_home 更改默认的创建用户HOME目录的位置 
-e expiration_date 更改默认的新账户的过期日期 
-f inactive_days 更改默认的新用户从密码过期到账户被禁用的天数 
-g group 更改默认的组名称或GID 
-s shell 更改默认的登录shell 
============================================================================ 

如 #useradd -D -s /bin/tsch ,修改默认的shell为/bin/tsch。

另外,删除用户,使用userdel命令。默认情况下,userdel命令只会删除/etc/passwd文件中的信息,而不会删除系统中属于该账户的任何文件。 
如果加上-r,userdel会删除用户的HOME目录以及mail目录。然后,系统上仍可能存有归已删除用户所有的其他文件。这在有些环境中会造成问题。 
PS:在有大量用户的环境中使用-r参数时要特别小心。你永远不知道用户是否在他的HOME目录下存放了其他用户或其他程序要使用的重要文件。记住在删除用户的HOME之前一定要检查清楚!


设置用户密码:

passwd username

之后,要两次输入新密码


查看所有已有的用户:

cat /etc/passwd

一般新加的都在最后一行,例如上面的 useradd -u 1001 user1,会看到最后一行为 user1:x:1001:1001::/home/user1:/bin/bash


删除一个用户:

userdel -r username

e.g. userdel -r user1

注意,这里的-r 是连同user一道,将 /home/user1/ 目录也删除;如果不加 -r,就只删除用户 user1,而不删除目录 /home/user1/


添加一个group,并指定group id:

groupadd -g groupID groupname

e.g. groupadd -g 1000 group1

注意,这里的groupID最好取500以上,否则和系统虚拟用户组ID相冲突。


查看当前有哪些group:

cat /etc/group

e.g. 在上面的 groupadd -g 1000 group1 之后,会在 cat /etc/group 看到最后一行:group1:x:1000: 

(这里的x表示有密码,只是个占位符,真正有没有密码还有看其他文件。cat /etc/shadow 会看到所有用户的MD5加密后的密码)


删除一个group:

groupdel groupname

e.g. groupdel group1

注意,如果要删除的group中还有成员user,该操作会失败。解决办法:先删除group下的所有user,然后再删group;或者,将group下的所有user放到其他group下,再删当前group。


显示用户ID及其所属group的groupID:

id username

e.g. id user1

(输出 uid=1001(user1) gid=1000(group1) groups=1000(group1))


查看一个user的主group:

cat /etc/passwd

例如其中有这样一行 user1:x:1001:1000::/home/user1:/bin/bash,而 cat /etc/group 显示结果中有 group1:x:1000: ,这说明 user1的主group就是group1。


添加一个user到一个group:

gpasswd -a username groupname

e.g. gpasswd -a user2 group2

结果显示 Adding user user2 to group group2,并且在cat /etc/group 时,会看到有 group2:x:2000:user2,说明 user2 在group2 下面了。

注意:cat /etc/group 的结果中,一个group的行中不会出现这样的user,即该user的主group就是该group。


将一个user从一个group中删除

gpasswd -d username groupname


修改文件夹的所有者(owner):

chown -R username some-folder

e.g. 先前有一个/yasi 文件夹,在/下 ll  显示 drwxr-xr-x   2 root root  4096 Jan 24 04:42 yasi,即/yasi 文件夹的所有者(owner)是root,所有group(owner group)是root group。当执行 chown -R user1 /yasi 后,在/下 ll 显示 drwxr-xr-x   2 user1 root  4096 Jan 24 04:42 yasi,即/yasi 的owner 已经改成了 user1。

注意,这里的-R 表示将所有子目录和目录中所有文件的所有权一起修改。不加-R,修改失败,不知道为什么。


修改文件夹的所有者group(owner group):

类似上面的操作 chown -R .groupname some-folder

e.g. chown -R .group2 /yasi

注意,这里的groupname前面要加一个点


同时修改文件夹的所有者(owner)和所有者group(owner group):

类似上面的操作 chown -R username.groupname some-folder

e.g. chown -R user1.group2 /yasi


修改文件的所有者(owner):

chown username some-folder

e.g. chown user1 /yasi


修改文件的所有者group(owner group):

chown .groupname some-folder

e.g. chown .group2 /yasi


同时修改文件的所有者(owner)所有者group(owner group):

chown username.groupname some-folder

e.g. chown user1.group2 /yasi


添加用户,并指定用户ID,同时添加到指定的group:

useradd -u userID -g groupID username

e.g. useradd -u 2001 -g 2000 user2

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值