linux下添加,删除,修改,查看用户和用户组

1,546 阅读2分钟

一,组操作

1,创建组

groupadd test

增加一个test组

2,修改组

groupmod -n test2 test

将test组的名子改成test2

3,删除组

groupdel test2

删除 组test2

4,查看组

a),查看当前登录用户所在的组 groups,查看apacheuser所在组groups apacheuser

b),查看所有组 cat /etc/group

c),有的linux系统没有/etc/group文件的,这个时候看下面的这个方法

cat /etc/passwd |awk -F [:] '{print $4}' |sort|uniq | getent group |awk -F [:] '{print $1}'

这里用到一个命令是getent,可以通过组ID来查找组信息,如果这个命令没有的话,那就很难查找,系统中所有的组了.

二,用户操作

1,增加用户

  1. [root@krlcgcms01 mytest]# useradd --help
  2. Usage: useradd [options] LOGIN
  3. Options:
  4. -b, --base-dir BASE_DIR 设置基本路径作为用户的登录目录
  5. -c, --comment COMMENT 对用户的注释
  6. -d, --home-dir HOME_DIR 设置用户的登录目录
  7. -D, --defaults 改变设置
  8. -e, --expiredate EXPIRE_DATE 设置用户的有效期
  9. -f, --inactive INACTIVE 用户过期后,让密码无效
  10. -g, --gid GROUP 使用户只属于某个组
  11. -G, --groups GROUPS 使用户加入某个组
  12. -h, --help 帮助
  13. -k, --skel SKEL_DIR 指定其他的skel目录
  14. -K, --key KEY=VALUE 覆盖 /etc/login.defs 配置文件
  15. -m, --create-home 自动创建登录目录
  16. -l, 不把用户加入到lastlog文件中
  17. -M, 不自动创建登录目录
  18. -r, 建立系统账号
  19. -o, --non-unique 允许用户拥有相同的UID
  20. -p, --password PASSWORD 为新用户使用加密密码
  21. -s, --shell SHELL 登录时候的shell
  22. -u, --uid UID 为新用户指定一个UID
  23. -Z, --selinux-user SEUSER use a specific SEUSER for the SELinux user mapping

useradd test

passwd test

增加用户test,有一点要注意的,useradd增加一个用户后,不要忘了给他设置密码,不然不能登录的。

2,修改用户

usermod -d /home/test -G test2 test

将test用户的登录目录改成/home/test,并加入test2组,注意这里是大G。

gpasswd -a test test2 将用户test加入到test2组
gpasswd -d test test2 将用户test从test2组中移出

3,删除用户

userdel test

将test用户删除

4,查看用户

a),查看当前登录用户

[root@krlcgcms01 ~]# w
[root@krlcgcms01 ~]# who

b),查看自己的用户名

[root@krlcgcms01 ~]# whoami

c),查看单个用户信息

[root@krlcgcms01 ~]# finger apacheuser
[root@krlcgcms01 ~]# id apacheuser

d),查看用户登录记录

[root@krlcgcms01 ~]# last 查看登录成功的用户记录
[root@krlcgcms01 ~]# lastb 查看登录不成功的用户记录

e),查看所有用户

[root@krlcgcms01 ~]# cut -d : -f 1 /etc/passwd
[root@krlcgcms01 ~]# cat /etc/passwd |awk -F \: '{print $1}'