生活百科
linux新增用户命令(linux指定用户主目录)
2022-11-05 16:36

用户信息

/etc/passwd保存着用户账号信息,内容包括账号,密码,用户ID,用户组ID,用户主目录,shell登录,举个例子:john:x:1005:1005::/home/john:/bin/bash,各个参数说明如下:

  • john : 用户名,
  • x : 密码,对应/etc/shadow
  • 1005 : UID, 用户ID, 0表示系统管理员,例如root, 1-999系统账号, 1000 – 60000 可登录账号
  • 1005 : GID, 用户组ID,对应/etc/group
  • /home/john : 使用者主文件夹
  • /bin/bash : shell环境,如果是/sbin/nologin表示账号无法取得shell环境登录动作

用户相关命令

  • grep john/etc/passwd /etc/shadow /etc/group : 查看john用户对应信息内容
  • ll -d /home/john : 查看john主文件夹信息
  • id <username> : 查看用户相关uid,gid信息

目录管理

更改目录所有者

  chown -R <user> <directory>
  # ch表示修改,own是所有者,目录放最后

更改用户组

  chgrp -R <group> <directory>
  # ch修改,grp是用户组,目录放最后

用户组管理

增加用户组

  groupadd <group>

删除用户组

  groupdel <group>

修改用户组名称

  groupmod -n <newname> <group>

用户管理

新增用户

  useradd -g <group> <user>
  # -g表示初始化群组,新用户需要设置密码(passwd <user>)才能登录

删除用户

  userdel -r <user>

新增用户,并且指定多个附加群组

  useradd -G <group1>,<group2>,<group3> <user>

用户加入新群组

  usermod -a -G <group> <user>
  # -a表示追加
  # -G表示附加群组

查看当前用户群组

  groups
  # 列出当前用户所在的用户组,第一个群组为用户的有效群组

切换当前用户的有效群组

  newsgrp <group> 
  # 有效群组是用户创建文件或文件夹时显示那个用户组,切换群组时,只能在用户已有的群组中切换

修改用户的有效群组

  usermod -g <group> <user>
  # 其他附加组会被清空掉

从群组中删除某个用户

  gpasswd -d <user> <group>
发表评论
0评