Linux用戶和組管理及相關命令詳解

    概要:在學習Linux的初級階段,用戶管理是基礎管理的重要部分,任何命令的運行,系統的正常運轉,均離不開用戶管理的內容,本篇就為大家介紹下Linux用戶管理的一些基礎概念和一些基礎命令的用法。內容主要分為以下三個部分:

        1、用戶和組的一些基礎內容介紹

        2、用戶管理命令的詳解

        3、組管理命令的詳解

    涉及到的相關命令主要有:useradd、usermod、userdel、passwd、su、groupadd、chage、groupmod、groupdel、gpasswd、groups、groupmems、id等相關命令

第一部分    用戶和組管理的基礎內容介紹

    1、用戶和組類型

        linux系統上,用戶的類型分為兩大類:

            <1>管理員用戶:具有對Linux系統運行一些管理權限的用戶,系統上,初始的管理員用戶默認為root,區分管理員用戶的標識其實是           UID(可理解為用戶的身份標識號碼),UID為0,則代表是管理員,不論用戶名是否為root

            <2>普通用戶:普通用戶有分為系統用戶和普通登錄用戶

                系統用戶:用來Linux系統上運行一些軟件和服務的用戶,大部分都是非登錄式的,UID范圍在CentOS6系列上默認是從1-499;在               CentOS7上默認是1-999

                普通登錄用戶:在系統上進行交互式的登錄完成某些操作的用戶,UID范圍在在CentOS6系列上默認是從500+;在CentOS7上默認是               1000+

        Linux系統上,對應的組也分為兩大類:

            <1>管理員組:具有管理員權限的用戶所在的組,GID(組的身份標識)為0,默認是root組

            <2>普通用戶組:

                系統組:GID范圍在CentOS6系列上默認是從1-499;在CentOS7上默認是1-999

                普通組:GID范圍在在CentOS6系列上默認是從500+;在CentOS7上默認是1000+

        

        Linux系統上用戶和組的對應關系:

            主組:每個用戶必須要有且僅有一個主組。在創建用戶時默認是與用戶名同名

            私有組:組內僅有一個用戶的組

            附加組:一個用戶可以有多個附加組

    2、用戶和組管理涉及到的一些配置文件

        /etc/passwd    用戶信息配置文件

            該配置文件里面主要是記錄用戶信息,每一行代表一個用戶的信息,每一行分為7個字段,分別表示

            用戶名:密碼占位符:UID:GID:注釋信息:家目錄:默認shell

            如下圖所示:

            passwd.png

        /etc/shadow    用戶密碼配置文件

            該配置文件主要定義了用戶密碼相關的配置,每一行代表一個用戶的信息,每行有9個字段,分別表示

            用戶名:加密后的密碼:上次修改密碼的日期:最小使用期:最長使用期:警告期:寬限期限:賬戶有效期;保留字段

            加密的密碼:

                分為三個$分隔,第一個后面是加密算法;第二個后面是salt;第三個才是加密后的密碼,CentOS6和CentOS上默認采取sha512單向加密算法進行加密

           上次修改密碼的時期:如果值為0,則表示用戶下次登錄必須要更改密碼,相對于1970-01-01經過的天數

               chage -d0 USERNAME  能改該用戶的上次密碼更改日期為0

               passwd -e  USERNAME  能改該用戶的上次密碼更改日期為0

           最小使用期:密碼最短要使用多久

           最長使用期:密碼最長要使用多久

                如果最長使用期小于最短使用期,則表示用戶不能更改密碼

           警告期: 在最長使用期到期之前,提前多少天提示用戶

           寬限期限:最大使用期限到期后寬限多少天

           賬戶有效期:賬號本身的有效期,以1970-1-1參考的天數

           保留字段:

           如圖所示:

            shadow.png

        /etc/group    組信息配置文件

            分為4個字段: 組名:密碼占位符:GID:用戶列表

            當用戶有多個時,每個用戶之間用逗號分隔

            如圖所示:

            group.png

        /etc/gshadow    組密碼配置文件

            每行有4個字段:組名:加密后的密碼:組管理員用戶的賬戶:用戶列表

            如圖所示:

            gshadow.png

            

        /etc/default/useradd    添加用戶時默認設置配置文件

            配置文件如圖所示:

            QQ圖片20160801201908.png

            GROUP:表示當用戶創建利用-N選項不創建主組時,默認以哪個組作為主組

            HOME:表示創建用戶時的家目錄位置

            INACTIVE:表示非活動期限,也就是密碼達到最大有效期后,用戶的在這短時間內登錄仍然能夠修改密碼,改密后正常使用

            EXPIRE:表示賬號有效期

            SHELL:創建用戶時用戶的默認shell

            SKEL:定義用戶家目錄相關配置文件和環境變量文件的拷貝模板目錄

            CREATE_MAIL_SPOOL:表示是否在創建用戶時為其創建郵箱

        /etc/skel    創建用戶時用戶家目錄文件來源模板文件

            blob.png

            

        /etc/login.def    用戶相關配置和密碼的主要配置文件

            login.png

            MAIL_DIR:用戶郵件的目錄        

            PASS_MAX_DAYS:密碼最大有效期

            PASS_MIN_DAYS:密碼最小有效期

            PASS_MIN_LEN:密碼最短長度

            PASS_WARN_AGE:密碼警告期

            UID_MIN:默認最小UID

            UID_MAX:默認最大UID

            GID_MIN:默認最小GID

            GID_MAX:默認最大GID

            CREATE_HOME:是否為用戶自動創建家目錄

            UMASK:創建家目錄時默認的UMASK值


第二部分    用戶管理命令詳解

    1、useradd

       useradd命令:

         語法:useradd [OPTIONS] USERNAME

               useradd -D

               useradd -D [OPTIONS]

         選項:

             -u UID  指定UID

             -o  不檢查UID的唯一性,可用來指定已存在的UID為自己的UID

             -g GROUP_NAME  指定主組

             -G GROUP_NAME1,GROUP_NAME2,…  指定附加組

             -c “DISCIPTION”  指定注釋信息

             -d /PATH/TO/DIR   指定家目錄,如果給定的目錄要事先不存在

             -N   表示不創建以自己的名稱命名的主組,而是以默認的user組作為自己的主組

             -r   表示創建系統用戶,系統賬號的家目錄、郵箱目錄都不會自動生成

             -s SHELL  指定用戶SHELL類型

             -M   不創建家目錄

             useradd -D  顯示創建用戶時的默認配置,是加上就是顯示該文件的信息/etc/default/useradd

             useradd -D -s SHELL  改變/etc/default/useradd文件里面定義默認shell的內容

             useradd -D -b /DIR  改變/etc/default/useradd文件里面定義默認家目錄的內容

          useradd.png

    2、usermod

       usermod命令:

         語法:usermod [OPTIONS] USERNAME

         選項:

             -u UID   指定新UID

             -g GID   指定行的基本組

             -G GROUP1,GROUP2,…   指定附加組,覆蓋原有的附加組,要在原有的基礎上增加要加-a選項

             -s SHELL   指定新的SHELL

             -c ‘DISCRIPTION’  指定新的注釋信息

             -d  /PATH/DIR   指定新的家目錄,新家目錄中不會自動創建,原家目錄中的文件不會同時移動至新的家目錄,如果要創建新家目錄的時候移動原家目錄的數據,要同時使用-m選項

             -l USERNAME   指定新的用戶名

             -U   解鎖用戶,實際是去掉密碼前的!

             -L   鎖定用戶,相當于在/etc/shadow密碼前加!

             -e YYYY-mm-dd    指明用戶賬號的過期日期

             -f  DAYS  指定賬戶密碼的寬限期限

        usermod.png

    3、userdel

       userdel命令:userdel [OPTIONS]… USERNAME,默認刪除用戶不會刪除用戶的家目錄和郵箱

         -r  可以刪除用戶的時候,同時刪除家目錄和郵箱

       userdel.png

    

    4、id

       id 命令:

         語法:id [OPTION]… [USERNAME]

         選項:

             -u  顯示用戶UID

             -g  顯示主組GID

             -G  顯示所在的全部的組ID

             -n  顯示名稱,而非ID

       id.png

    5、passwd

       passwd命令:修改密碼

         格式:passwd [選項] 用戶名

               passwd后不跟任何選項,表示修改自己的密碼

               passwd 用戶名:用于root用戶修改其他用戶的密碼,不許要知道該用戶之前的密碼

         選項:

             -l,-u:鎖定和解鎖用戶,相當于在/etc/shadow密碼字段前加!和去掉!

             -d:清除用戶的密碼串;

             -e DATE過期期限,日期;

             -i DAYS:寬限期限;

             -n DAYS:密碼最短使用期限;

             -x DAYS:密碼最長使用期限;

             -w DAYS:密碼警告期;

             對應是修改/etc/shadow里面相應的信息

             –stdin 密碼來源重定向

             例:echo “123456” |passwd –stdin nwc 為nwc用戶修改密碼為123456

        passwd111.png

    6、chage

       chage命令:更改用戶密碼的過期信息

         格式:chage [選項] 用戶名

         選項:

             -d:修改用戶密碼最后的修改日期

             -E:修改用戶密碼的過期期限

             -W:修改用戶密碼的警告期限

             -m:修修用戶密碼的最短有效期

             -M:修改用戶密碼的最長有效期

        chage.png

   

 

    7、su

       su命令:切換用戶命令

       登錄式切換:會重新讀取用戶的配置文件來重新初始化

         格式:su – 用戶名

               su -l 用戶名

       非登錄式切換:不會讀取目標用戶的配置文件進行初始化

         格式:su 用戶名

         注意:管理員可以無密碼切換至其他任何用戶,非管理員在切換用戶時都需要給出目標用戶的密碼

       特殊用法:

         su – nwc -c COMMAND  表示不切換用戶,而是僅以此用戶身份運行指定的命令,命令執行完成后

       su.png

    8、其他用戶管理相關命令

        groups [username]  查看當前用戶屬于哪些組:

        id [username]  查看當前用戶屬于哪些組:

        pwunconv   不轉換密碼,也就是將密碼存在/etc/passwd中,而不是用占位符x代替密碼,轉換后/etc/shadow文件將消失

        pwconv   轉換密碼,將密碼存在/etc/shadow中

        getent passwd [username]  相當于cat /etc/passwd中指定用戶名的行

        getent shadow [username]  相當于cat /etc/shadow中指定用戶名的行

        getent group [username]  相當于cat /etc/group中指定用戶名的行

        getent gshadow [username]  相當于cat /etc/gshadow中指定用戶名的行

        autoconfig –passalgo=md5 –update  可修改密碼的加密算法

        chage -d0 USERNAME  能改該用戶的上次密碼更改日期為0

        newgrp [GROUPNAME] 臨時切換當前用戶的主組到指定的組

        strace ‘COMMAND’  可以查看命令在內部做了哪些動作

   


     

第三部分    組管理命令詳解

    1、groupadd

      groupadd命令:添加用戶組命令

        語法格式:groupadd [選項] group_name

        常用選項:

           -g GID:指定GID,默認是上一個組的GID+1

           -r:創建系統組

      groupadd.png

    2、groupmod

       groupmod命令:修改組的屬性

         語法格式:groupmod [選項] group_name

         常用選項:

            -g GID:修改GID

            -n new_name:修改組名

       groupmod.png

    3、groupdel

       groupdel命令:刪除組

         語法格式:groupdel [選項] group_name

         一般不用加選項,且不能刪除組內有用戶的組

       groupdel.png

    4、gpasswd

       gpasswd命令:給組設置修改密碼(/etc/gshadow)

         格式:gpasswd [選項] 組名

         選項 :

             -a 用戶名:向組中添加用戶

             -d 用戶名:刪除組中用戶

             不加選項代表給該組設置密碼

       

    5、groupmems

       groupmems命令:直接修改配置文件,永久有效

         groupmems -l -g GROUP_NAME  顯示組內有哪些用戶

         groupmems -a USERNAME -g GROUP_NAME  向組內添加用戶

         groupmems -d USERNAME -g GROUP_NAME  刪除組內的用戶

         groupmems -p -g GROUP_NAME   清空組內的所有用戶

       groupmems.png

    6、groups

       groups [OPTIONS] USERNAME  查看用戶屬于哪些組

       groups.png

    

    7、利用newusers命令和chpasswd命令批量添加用戶

        

        批量創建帳號:user1…user10

        uid:3000-3009,shell:/bin/csh,home:/testdir/username

        passwd:usernamepass

        注意家目錄相關配置,使用戶正常登錄

        newusers.png

        chpasswd.png

        CP.png

原創文章,作者:M20-1倪文超,如若轉載,請注明出處:http://www.www58058.com/27143

(0)
M20-1倪文超M20-1倪文超
上一篇 2016-08-02 10:58
下一篇 2016-08-02 14:34

相關推薦

  • Linux管理目錄和文件命令

     管理目錄命令: pwd:顯示當前目錄 Cd:   改變當前目錄 ls:    查看目錄下的內容 rmdir: 刪除目錄 管理文件命令: cat: 查看文件內容 cp: 復制文件內容 grep:在文件中查找某字符 touch:創建文件 rm&nbsp…

    2016-03-05
  • 文件系統管理

                                高級文件系統管理 磁盤配額 控制用戶在一個分區上使用多大的空間。 操作步驟: 1、創建一個10G的分區 /dev/sdc1并將其格式化,掛載 2、如果是新…

    Linux干貨 2016-08-29
  • 基于Docker的工作流

    這次我們創建一個Hello world的web服務器。 一  mkdir -p identidock/app   #首先創建一個新的multiidentidock來存放我們的項目,在這個目錄下面,創建一個app目錄來存放Python代碼。 touch app/identidock.py&n…

    Linux干貨 2016-03-03
  • linux 故障—-/boot刪除 修復

    LINUX        /BOOT        SHANCHU 光盤進入resuce  第①步;修復內核文件 shell start shell 首先先切根 chroot &n…

    Linux干貨 2016-09-13
  • 計算機的組成

        計算機組成(computer composition)指的是系統結構的邏輯實現,包括機器機內的數據流和控制流的組成及邏輯設計等。 計算機組成的任務是在指令集系統結構確定分配給硬件系統的功能和概念結構之后,研究各組成部分的內部構造和相互聯系,以實現機器指令集的各種功能和特性。這種聯系包括各功能部件的內部和相   &nbsp…

    2017-03-26
  • N26-第四周作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -rfp /etc/skel/ /home/tuser1[root@localhost ~]# chmod 700 /home/tuser1 2、編輯/etc/group文件,添…

    Linux干貨 2017-02-25

評論列表(1條)

  • M20-1--孔祥文
    M20-1--孔祥文 2016-08-04 13:35

    很好

欧美性久久久久