• Linux常用命令学习8---(用户和用户组管理)


    1.用户和用户组

        用户和用户组概念
            用户:使用操作系统的人(Linux支持多个用户在同一时间登陆同一个操作系统)
            用户组:具有相同权限的一组用户(Linux系统中可以存在多个用户组)


        相关的配置文件
            /etc/group:储存当前系统中所有用户组信息
                Group:        x        :    123        :    abx,def,xyz
                组名称:    组密码占位符:    组编号    :    组中用户列表
                1.在linux中,root用户组的编号一定是0
                2.组号1~499是系统预留的组编号,一般是预留给安装在这个操作系统中的软件或服务的,比如在服务器上安装了MySQL数据库,那么就会自动的带用户组的列表中创建一个叫做mysql的用户组,并且在1~499中拿一个编号来用,越早安装分配的组号越小
                3.用户手动创建的用户组的组号是从500开始的
            /etc/gshadow:存储当前系统中用户组的密码信息
                   Group:        *        :            :    abx,def,xyz
                组名称:    组密码     :     组管理者:    组中用户列表
            /etc/passwd:存储当前系统中所有用户的信息
                user    :   x           :   123     :   456     :   xxxxx       :   /home/user  :   /bin/bash
                用户名 :   密码占位符  :用户编号   : 用户组编号: 用户注释信息: 用户主目录    :  shell类型
                root的用户编号一定是0
            /etc/shadow:存储用户密码的文件(一般密码是被一种单向加密方法加密的,所以看到的不是原始的密码)
                user    :   vf;/Zushs.. :   :   :   :   :   :
                用户名 :   密码       :  :   :   :   :   :


        用户组管理的命令
            groupadd groupname  :创建新的用户组名
            groupmod -n newname oldname :将用户组名由oldname改为newname
            groupmod -g 668 groupname   :将groupname组编号改为 668
            groupadd -g 888 groupname   :创建用户组groupname,并且设置组编号为 888
            groupdel groupname  :删除用户组 groupname
                在删除用户组之前应该首先删除用户组中的用户,否则用户的配置文件中的关于用户组的信息就和真实情况不符合了,这些用户就会变成“黑户”,在后续的使用中可能就会受到权限的影响
            gpasswd groupname   :更改groupname用户组的组密码


        用户管理的命令
            useradd -g groupname username   :创建新用户username,并且该用户放到用户组groupname中
            useradd -d /home/test username  :在创建用户username时,显式指定他的个人文件夹为/home/test,若不显式指定,会默认使用/home/username文件夹
                    这个时候没有指定用户的用户组,系统就会默认创建一个和新用户名相同的用户组,并将该用户放到该用户组下
            usermod -c 备注内容 username   :为用户username修改备注信息
            usermod -l newname oldname  :将oldname用户改名为 newname
            usermod -g groupname username   :将username用户切换到 groupname用户组
            userdel username    :删除username用户,但是这样并不会删除他的个人文件夹和其中的文件
            userdel -r username :删除username用户,并且删除他的个人文件夹


        假如某一天维护系统,不想让某些用户登陆
            在/etc/目录下创建文件nologin(空文件即可,不需要内容),就可以实现除了user之外的用户都不能等陆系统


        锁定和解锁账户
            passwd -l  username :锁定用户username,防止用户删除自己的文件
            passwd -u username  :解锁username用户
            passwd -d username :清除username帐号,是这个用户可以无密码登陆


        主要组和附属组
            一个用户可以同时属于多个用户组(其中只有一个是这个用户的主要组,其他的都是这个用户的附属组)
            相关的知识和命令目前几乎用不到,所以暂时不进行深入的学习
            gpasswd -a username newgroup1,newgroup2    :为username账户添加到附属组newgroup1和newgroup2
                区分于usermod -g groupname username :这个命令修改的是用户的主要组,而不是附属组
            gpasswd -d username newgroup1,newgroup2    :为username账户删除附属组newgroup1和newgroup2
            useradd -g group -G newgroup1, newgroup username :在创建用户username的时候为用户添加主要组group,并添加附属组groupname1和groupname2


        切换用户
            su username :从当前用户切换到username用户(如果没有username,就相当于切换到root用户)
                从普通用户切换到其他用户时需要用户密码;但是从root切换到任何用户都不需要密码


        id username命令
            显示指定用户信息,包括用户编号、用户名
            主要组编号及名称,附属组列表


        groups username命令
            显示username用户所在的所有组


        chfn username命令
            设置用户资料,依次输入用户资料(生日、性别……资料)


        finger username命令
            显示用户详细资料(和chfn命令对应)



  • 相关阅读:
    第一次做的破网页
    c++初学指针
    eskibana
    有关JSON以及JSON在PHP中的应用
    比较全的log4j 配置
    验证码类
    PHP 兼容 Curl/Socket/Stream 的 HTTP 操作类
    PHP缓存技术
    Fatal error: Call to undefined function curl_init()解决方案
    socket基础
  • 原文地址:https://www.cnblogs.com/xumenger/p/4504626.html
Copyright © 2020-2023  润新知