Linux命令添加,删除,修改,查看用户和用户组 朴灿烈づ我的快乐病毒、 2022-12-18 00:45 132阅读 0赞 ### Linux命令添加,删除,修改,查看用户和用户组 ### * 一,组操作 * * 1,创建组 * 2,修改组 * 3,删除组 * 4,查看组 * 二,用户操作 * * 查看命令参数 * 1.增加用户 * 2.修改用户 * 3.删除用户 * 4.查看用户 # 一,组操作 # ## 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来查找组信息,如果这个命令没有的话,那就很难查找,系统中所有的组了. # 二,用户操作 # ## 查看命令参数 ## useradd --help Usage: useradd [options] LOGIN Options: -b, --base-dir BASE_DIR 设置基本路径作为用户的登录目录 -c, --comment COMMENT 对用户的注释 -d, --home-dir HOME_DIR 设置用户的登录目录 -D, --defaults 改变设置 -e, --expiredate EXPIRE_DATE 设置用户的有效期 -f, --inactive INACTIVE 用户过期后,让密码无效 -g, --gid GROUP 使用户只属于某个组 -G, --groups GROUPS 使用户加入某个组 -h, --help 帮助 -k, --skel SKEL_DIR 指定其他的skel目录 -K, --key KEY=VALUE 覆盖 /etc/login.defs 配置文件 -m, --create-home 自动创建登录目录 -l, 不把用户加入到lastlog文件中 -M, 不自动创建登录目录 -r, 建立系统账号 -o, --non-unique 允许用户拥有相同的UID -p, --password PASSWORD 为新用户使用加密密码 -s, --shell SHELL 登录时候的shell -u, --uid UID 为新用户指定一个UID -Z, --selinux-user SEUSER use a specific SEUSER for the SELinux user mapping ## 1.增加用户 ## useradd test passwd test 增加用户test,有一点要注意的,useradd增加一个用户后,不要忘了给他设置密码,不然不能登录的。 两个用户创建命令之间的区别: adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。 useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密码、无主目录、没有指定shell版本。 useradd [选项] 用户名 #创建新用户 sudo useradd -m -g 组名 用户名 -m : 自动建立用户家目录,创建用户时最好加这个 。 -g 组名 : 指定用户所在的组,否则会建立一个与用户同名的组。 ## 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 [选项] 用户名 #删除一个用户 选项: -r : 把用户家目录一并删除 提示: 如果添加用户时,没有加-m创建家目录,最简单的方法是删除该用户,重新创建。 userdel test 将test用户删除 ## 4.查看用户 ## 添加的组会保存到/etc/group文件中,可以通过cat -n /etc/group | grep 组名 单独查看信息。 创建的用户保存在/etc/passwd文件中,可以通过cat -n /etc/passwd | grep 用户名 单独查看信息。 $ cat -n /etc/group | grep kmust # 查看kmust组的信息 69 kmust:x:1001: # 组id为1001,69为行号 $ cat -n /etc/passwd | grep zyq # 查看 zyq 用户的信息 40 zyq:x:1000:1000:zyq,,,:/home/zyq:/bin/bash # 40:行号 #zyq:用户名 #x : 密码标志,真正的密码是放在shadow(影子文件)中,并且加密 #1000:1000: 分别是UID和GID。UID(用户ID): 0(超级用户),1~499(系统用户),500~65535(普通用户)。 要想修改一个用户为超级用户,只需将UID改为0即可 #zyq,,, : 用户的说明信息,当初创建用户时随便写的 #/home/zyq : 家目录 #/bin/bash : 登录使用的shell(ubuntu是dash软件) a)查看当前登录用户 #查看目前所有登录的用户和用户IP地址和时间,未登录用户不能显示 who b)查看自己的用户名 #查看我是哪个用户 whoami c)查看单个用户信息 finger apacheuser #查看用户的UID(用户id) 和 GID(组id) 和附件组等, 用户不写,默认当前用户 id apacheuser d)查看用户登录记录 #查看登录成功的用户记录 last #查看登录不成功的用户记录 lastb e)查看所有用户 cut -d : -f 1 /etc/passwd cat /etc/passwd |awk -F \: '{print $1}'
还没有评论,来说两句吧...