用戶、組的創建和管理

用戶的創建

useradd usermod userdel

useradd:創建用戶 create a new user or update default new user information

    useradd [options]… LOGIN

         -u,–uid:指定新用戶的UID

         -o,配合-u使用,不檢測用戶UID的唯一性(可創建2個相同UID的帳號)

         -g,–gid:指定新建用戶的GID

         -G,–group:指定新建用戶的附加組,若指定多個組可用,分割

         -d,–home:指定用戶的家目錄

             但是其指定目錄的父目錄必須存在,否則無法創建其家目錄

             每個用戶家目錄都有其配置文件,所有新建用戶的家目錄中的文件均來自/etc/skel/文件中

             若其指定的家目錄已經存在,則不會復制/etc/skel/文件中的內容

         -s,–shell;指定用戶的默認shell

             當前系統所有可用shell保存在/etc/shells文件中

         -c,指定用戶信息的注釋信息

         -r,–system:指定其創建的用戶為系統用戶,系統用戶不會為其創建家目錄

         -N,不為用戶創建同名的組作為用戶基本組,而是使用users作為基本組


    [root@CentOS6 ~]# id gao

    uid=500(gao) gid=500(gao) groups=500(gao),0(root)

    [root@CentOS6 ~]# useradd -ou 500 gaomeng1

    [root@CentOS6 ~]# id gaomeng1

    uid=500(gao) gid=5004(gaomeng1) groups=500(gao)

    [root@CentOS6 ~]# useradd -g gao -G gaomeng1 gaomeng2

    [root@CentOS6 ~]# id gaomeng2

    uid=4015(gaomeng2) gid=500(gao) groups=500(gao),5004(gaomeng1)

    [root@CentOS6 ~]# useradd -d /testdir/gaomeng3 -s /bin/csh -c "This is haha" gaomeng3

    [root@CentOS6 ~]# getent passwd gaomeng3

    gaomeng3:x:4016:4016:This is haha:/testdir/gaomeng3:/bin/csh

    [root@CentOS6 ~]# useradd -r gaomeng4

    [root@CentOS6 ~]# getent passwd gaomeng4

    gaomeng4:x:496:492::/home/gaomeng4:/bin/bash

    [root@CentOS6 ~]# ls -d /home/gao*

    /home/gao  /home/gao1  /home/gao4  /home/gaomeng1  /home/gaomeng2

    [root@CentOS6 ~]# useradd -N gaomeng5

    [root@CentOS6 ~]# getent passwd gaomeng5

    gaomeng5:x:4017:100::/home/gaomeng5:/bin/bash

    [root@CentOS6 ~]# groups gaomeng5

    gaomeng5 : users

    useradd -D

        顯示創建用戶的默認信息

         useradd -D [options]

             修改創建用戶的默認信息,其本質是修改的/etc/default/useradd文件的內容

    [root@CentOS6 testdir]# useradd -D

    GROUP=100

    HOME=/home

    INACTIVE=-1

    EXPIRE=

    SHELL=/bin/bash

    SKEL=/etc/skel

    CREATE_MAIL_SPOOL=yes

    [root@CentOS6 testdir]# useradd -D -s /bin/csh

    [root@CentOS6 testdir]# cat /etc/default/useradd

    # useradd defaults file

    GROUP=100

    HOME=/home

    INACTIVE=-1

    EXPIRE=

    SHELL=/bin/csh

    SKEL=/etc/skel

    CREATE_MAIL_SPOOL=yes


usermod:修改用戶屬性 modify a user account

    usermod [options]… LOGIN

         -u,修改用戶的ID,為用戶指定行的UID

         -g,修改用戶的基本組

         -G,修改用戶的附加組,若指定多個組可用,分割

         -a,與-G結合使用,追加用戶的附加組,可以在修改附加組的時候,不覆蓋當前用戶附加組

         -d,修改用戶的家目錄,但不會負責當前目錄文件在指定目錄中

         -m,與-d結合使用,在修改用戶家目錄時候,會轉移家目錄下的文件,-md其實完成的工作是移動和重命名

         -c,修改用戶的注釋信息

         -s,修改用戶的默認shell

         -l,修改當前用戶的用戶名

        

         -L:–lock:鎖定用戶密碼,被鎖定用戶,cat /etc/shadow查看密碼時,其密碼前面有一個!

         -U:–unlock:解鎖用戶密碼

         -c:YYYY-mm-dd:指定用戶帳號過期時間

         -f day:指定用戶非活動時間

    [root@CentOS6 testdir]# usermod -g gentoo -aG gaomeng3,gaomeng4 gaomeng1

    [root@CentOS6 testdir]# id gaomeng1

    uid=500(gao) gid=4006(gentoo) groups=500(gao),4016(gaomeng3),492(gaomeng4)

    [root@CentOS6 testdir]# usermod -u 3000 -md /testdir/gaomeng2 -s /bin/csh gaomeng2

    [root@CentOS6 testdir]# id gaomeng2

    uid=3000(gaomeng2) gid=500(gao) groups=500(gao),5004(gaomeng1)

    [root@CentOS6 testdir]# getent passwd gaomeng2

    gaomeng2:x:3000:500::/testdir/gaomeng2:/bin/csh

    [root@CentOS6 testdir]# ls -a /testdir/gaomeng2

    .  ..  .bash_logout  .bash_profile  .bashrc  .gnome2  .mozilla

    [root@CentOS6 testdir]# usermod -c "big smile" -l gm3 gaomeng3

    [root@CentOS6 testdir]# getent passwd gm3

    gm3:x:4016:4016:big smile:/testdir/gaomeng3:/bin/csh

    [root@CentOS6 testdir]# usermod -L gao

    [root@CentOS6 testdir]# getent shadow gao

    gao:!$6$13tm7S5i$22vbEKEMLPu6zr.Egl8yH/eA78lCk.tnxAw5AQZ2dEVZAXRiukgLXGw62euhDQM5zVDLgZWXw8nYiOkWixVAT1:17011:0:99999:7:3::

    [root@CentOS6 testdir]# usermod -U gao

    [root@CentOS6 testdir]# getent shadow gao

    gao:$6$13tm7S5i$22vbEKEMLPu6zr.Egl8yH/eA78lCk.tnxAw5AQZ2dEVZAXRiukgLXGw62euhDQM5zVDLgZWXw8nYiOkWixVAT1:17011:0:99999:7:3::


userdel:delete a user account and related files 刪除用戶

    userdel [options] LOGIN

    -r:刪除用戶時一并刪除其家目錄

    [root@CentOS6 testdir]# userdel -r gaomeng2

    [root@CentOS6 testdir]# id gaomeng2

    id: gaomeng2: No such user

    [root@CentOS6 testdir]# ls -d /home/gaomeng*

    /home/gaomeng1  /home/gaomeng5

id:顯示用戶的真實有效的UID和GID

    id [OPTION]… [USERNAME]

         -u:僅顯示用戶的UID

         -g:僅顯示用戶的GID

         -G:僅顯示用戶的附加組ID

         -n:與-u  -g  -G結合使用,不顯示用戶的ID信息,而顯示ID所對于的用戶名或組名

    [root@CentOS6 ~]# id -u gao

    500

    [root@CentOS6 ~]# id -nu gao

    gao

    [root@CentOS6 ~]# id -g gao

    500

    [root@CentOS6 ~]# id -ng gao

    gao

    [root@CentOS6 ~]# id -G gao

    500 0

    [root@CentOS6 ~]# id -nG gao

    gao root


su:切換用戶或以其他用戶身份執行命令

    su [OPTION]… [-] [USER [ARG]…]

     非登錄式切換,即不會讀取目標用戶的配置文件,不改變當前工作目錄

            su username

     登錄式切換,會讀取目標用戶的配置文件,模擬重新登錄,切換至家目錄,完全切換

         su – username

         su -l username

     -c 'COMMAND' :不切換用戶的前提下,以su命令后面的用戶的身份-c后面的命令

passwd:修改用戶的密碼,僅root用戶有權限運行此命令

    id [OPTION]… [USERNAME]

         -l,-u:鎖定和解鎖用戶,用passwd給用戶家的鎖,其密碼前面有2個!!

         -d:清除用戶密碼串,并且強制用戶下次登錄時修改密碼

         -e:強制用戶下次登錄修改密密碼

         -n:指定最短使用期限

         -x:指定最多使用期限

         -w:指定警告期限

         -i:指定非活動期限(密碼過期后必須修改密碼才能登錄的時間)

         -uf:可以強制新創建的無密碼的用戶中的鎖強制消除,即該用戶可以直接登錄

         –stdin:從標準接收用戶的密碼

            #echo "centos" | passwd –stdin username

組的創建

groupadd groupmod groupdel

groupadd:添加組

    -g:指定新建組的GID

    -r:指定新建組為系統組

    [root@CentOS6 ~]# groupadd -g 3500 test

    [root@CentOS6 ~]# getent group test

    test:x:3500:

    [root@CentOS6 ~]# groupadd -r test1

    [root@CentOS6 ~]# getent group test1

    test1:x:491:

groupmod:修改組屬性

    -g:修改組的GID

    -n new_name:修改組的名字

    [root@CentOS6 ~]# groupmod -g 3600 -n txt test

    [root@CentOS6 ~]# getent group txt

    txt:x:3600:


groupdel:刪除組

    [root@CentOS6 ~]# groups txt

    [root@CentOS6 ~]# groupmems -l -g txt

    groupmems: group 'txt' does not exist in /etc/group


gpasswd:修改組密碼

    gpasswd [OPTION] GROUP

    gpasswd GROUP :給GROUP組設置密碼,不能像passwd可以從標準輸入捕捉數據,避免交互

    -A user1,user2,…:設置GROUP組的管理者

    -a user :把user添加進入GROUP組

    -d user:把user從組GROUP中移除

newgrp 命令:

臨時切換基本組;

如果用戶本不屬于此組,則需要組密碼

groupmems:更改和查看組成員

    groupmems [options] [action]

         -a, –add username 指定用戶加入組

         -d, –delete username 從組中刪除用戶

         -p, –purge 從組中清除所有成員

         -l, –list 顯示組成員列表

         -g, –group groupname 更改為指定組,與-p-l選擇組合使用完成特定組的操作(只有root)

groupmems -l -g GROUPNAME   查看組所屬的用戶列表

groups  [OPTION].[USERNAME]…  查看用戶所屬組列表

原創文章,作者:megedugao,如若轉載,請注明出處:http://www.www58058.com/27501

(0)
megedugaomegedugao
上一篇 2016-08-03 10:08
下一篇 2016-08-03 14:33

相關推薦

  • 用戶和組相關的配置文件總結

    前言: 在用戶管理,組管理過程中,最基本的四個文件就是/etc下面的passwd,shadow,group,gshadow。他們記錄了與用戶和組相關的信息。是學習和深入了解用戶,組的基本。 除了這些基本的配置文件 還有與初始化相關的配置文件。定義用戶添加時初始狀態的配置文件/etc/default/useradd。 以及用戶家目錄的內容文件參考目錄/etc/…

    Linux干貨 2016-10-24
  • 使用NFS服務和samba部署wordpress

             centos 7.3主機一臺   centos 6.8主機一臺  使用yum安裝的mysql(7以后使用yum裝mysql叫mariadb)         我事先查看了一…

    2017-05-02
  • 如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果

    命令別名使用alias命令; ~]#alias NAME='COMMAND' 在一個命令中引用另一個命令的執行結果也是bash的特性之一,引用。 方法:$(COMMAND)

    Linux干貨 2016-11-06
  • DNS-BIND

    1.實驗環境 服務器類型 域名 IP 主DNS服務器 test.com. 192.5.24.101 從DNS服務器 192.5.24.102 子DNS服務器 ops.test.com. 192.5.24.201 備注:所有服務器需保持時間同步。 2.正向解析區域(192.5.24.101) 1)  安裝bind 2)  編輯主配置文件,修…

    2017-05-31
  • Ansible Playbook Roles 和 Include 聲明-手稿

    Edit Ansible Playbook Roles 和 Include 聲明 Ansible Playbook Roles 和 Include 聲明 1. Introduction 2. Task Include Files And Encouraging Reuse 3. Roles 4. Role Default Variables 5. Role …

    Linux干貨 2016-03-28
  • linux 網絡管理

    1、ifconfig命令格式: ifconfig[interface] 查看IP ifconfig-a 查看全部網卡信息 ifconfigIFACE [up|down] 網卡開啟關閉 ifconfigIFACE IP/netmask [up] ifconfigIFACE IP netmask NETMASK 命令立即生效,不能永久保存  &nbsp…

    Linux干貨 2017-08-20
欧美性久久久久