30.用户和组管理命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了30.用户和组管理命令相关的知识,希望对你有一定的参考价值。

linux系统的用户账号的管理命令:
添加用户:useradd命令
修改用户:usermod命令
删除用户:userdel命令
修改用户密码:passwd命令

1.添加用户:useradd命令

        选项:
            -c comment 指定一段注释性描述。
            -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
            -g 用户组 指定用户所属的用户组。
            -G 用户组,用户组 指定用户所属的附加组。
            -s Shell文件 指定用户的登录Shell。
            -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

实例1
~]# useradd –d /usr/sam -m sam

此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。

实例2
~]# useradd -s /bin/sh -g group –G adm,root gem

此命令新建了一个用户gem,该用户的登录Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。

这里可能新建组:#groupadd group及groupadd adm

增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。

Linux提供了集成的系统管理工具userconf,它可以用来对用户账号进行统一管理。

2.修改用户:usermod命令

        修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等

        常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。

        另外,有些系统可以使用选项:-l 新用户名

        这个选项指定一个新的账号,即将原来的用户名改为新的用户名。

例如:
~]# usermod -s /bin/ksh -d /home/z –g developer sam

此命令将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。

3.删除用户:userdel命令

    如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录

    常用的选项是 -r,它的作用是把用户的主目录一起删除。

例如:
~]# userdel -r sam

此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。

4.修改用户密码:passwd命令

    passwd命令用来更改使用者的密码

            选项:

                    -d 删除密码
                    -f 强制执行
                    -k 更新只能发送在过期之后
                    -l 停止账号使用
                    -S 显示密码信息
                    -u 启用已被停止的账户
                    -x 设置密码的有效期
                    -g 修改群组密码
                    -i 过期后停止用户账号

        实例:

                [[email protected] ~]# passwd docker
                        更改用户 docker 的密码 。
                        新的 密码:
                        重新输入新的 密码:
                        passwd:所有的身份验证令牌已经成功更新。

            [[email protected] ~]# passwd -S docker
                    docker PS 2019-01-22 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

                [[email protected] ~]# passwd -d docker
                    清除用户的密码 docker。
                    passwd: 操作成功

Linux系统用户组的管理

                进程一其发起者的身份运行;
                            进程对文件的访问权限,取决于发起此进程的用户权限;
                系统用户:为了能够让那后台进程

组命令:
groupadd命令:添加组
groupmod命令:修改组
groupdel命令:删除组

groupadd命令:添加组

            选项:
                    -g:指定新建工作组的id; 默认是上一个组的GID+1;
                     -r:创建系统组,系统组的组ID小于500;

                实例:

                    ~]# groupadd mygrp
                    ~]# groupadd -r -g 306 mysql

                        [[email protected] ~]# tail -10 /etc/group
                        stapdev:x:158:
                        itxuezhe:x:1000:
                        apache:x:48:
                        gentoo:x:1001:
                        centos:x:1002:
                        docker:x:1003:
                        mysql:x:982:
                        mygrp:x:1004:
                        testgrp:x:981:
                        mariadb:x:306:

groupmod命令:修改组

        选项:

                -g GID: 修改GID;
                -n new_name:修改组名,将用户组的名字改为新名字
                -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。

            实例:

                    [[email protected] ~]# tail -2 /etc/group
                    testgrp:x:981:
                    mariadb:x:306:

                    [[email protected] ~]# groupmod -g 702 mariadb
                    #把mariadb的GID修改为702

                    [[email protected] ~]# tail -2 /etc/group
                    testgrp:x:981:
                    mariadb:x:702:

                    [[email protected] ~]# groupmod -n hello mariadb
                    [[email protected] ~]# tail -2 /etc/group
                    testgrp:x:981:
                    hello:x:702:
                    #把mariadb组修改为hello,组GID还是702

groupdel命令:删除组

                选项:

                groupdel [选项] GROUP

                实例:

                            [[email protected] ~]# groupdel hello 
                            [[email protected] ~]# groupdel testgrp 

                            [[email protected] ~]# tail /etc/group
                            stapusr:x:156:
                            stapsys:x:157:
                            stapdev:x:158:
                            itxuezhe:x:1000:
                            apache:x:48:
                            gentoo:x:1001:
                            centos:x:1002:
                            docker:x:1003:
                            mysql:x:982:
                            mygrp:x:1004:

以上是关于30.用户和组管理命令的主要内容,如果未能解决你的问题,请参考以下文章

用户和组管理类命令总结

用户和组管理类命令总结

linux 用户和组管理命令

linux入门之用户和组管理类命令

Linux常用命令账号和组管理

用户和组的简单命令介绍