Linux用戶和組相關知道小結

用戶和組主要配置文件相關的參數,以及這些文件管理常用的命令。有很多的不足的地方。望大家指導。

 

Linux用戶和組

 

用戶必須屬于一個且只有一個主組
組名同用戶名,且僅包含一個用戶,私有組

用戶的附加組(supplementary group)
一個用戶可以屬于零個或多個輔助組
eg:
[root@centos7 ~]#id postfix
uid=89(postfix) gid=89(postfix) groups=89(postfix),12(mail)

gid 主組 groups 附加組

一個用戶必須屬于唯一主組有且只有一個附加組可以零個或多個輔助組

 

Linux用戶和組的主要配置文件:

一 、/etc/passwd:用戶及其屬性信息(名稱、UID、主組ID等)

name:password:UID:GID:GECOS:directory:shelllogin

name:登錄用名(qm)
passwd:密碼(x)
UID:用戶身份編號(1000)
GID:登錄默認所在組編號(1000)
GECOS:用戶全名或注釋
home directory:用戶主目錄(/home/qm)
shell:用戶默認使用shell (/bin/bash)

eg:
qm:x:1000:1000:qinming,opt,110,119:/home/qm:/bin/bash

 

二 、/etc/shadow:用戶密碼及其相關屬性

cat /etc/shadow & getent shadow 用戶名.. 可以直接查看一個或者多個用戶密碼及其屬性信息.

格式–

login name登錄名:
encrypted password加密密碼:
date of last password change最后一次密碼更改的日期(1970.1.1.算起):
minimum password age密碼最短有效期:
maximum password age密碼最長有效期:
password warning period密碼警告期:
password inactivity period密碼不活躍期:
account expiration date賬戶有效期:
reserved field保留字段

eg:

mage:$6$pxHtORUQ$dTI7w.WhG8PeJTeNEmY9g2MVPOUoAjGOtoMgVvboVI7PprhMO/EYQsv7pr2b2TPLCQTjqzyNGWgBBi5dDpZxI1:17485:0:99999:7:::

 

三 、/etc/group:組及其屬性信息

組名稱:就是群組名稱

組密碼:通常不需要設定,密碼是被記錄在/etc/gshadow

GID:就是組的ID

把當前組當做附助組的用戶成員列表(分隔符為逗號)

eg:

qm:x:1000:qm,root,mage(附助組的成員)

 

四、 /etc/gshadow:組密碼及其相關屬性

組名稱:就是群組名稱

組密碼:

管理員列表:組管理員的列表,更改組密碼和成員信息

以當前組為附加組的用戶列表:(分隔符為逗號)

eg:

root:::gentoo,qm

 

 

常用用戶和組管理的命令

useradd[options] LOGIN

-u UID
useradd -u 1234 tom

-o 配合-u 選項,不檢查UID的唯一性
useradd -u 1234 -o jerry

-g GID:指明用戶所屬基本組,可為組名,也可以GID
useradd -g opt zrt
ex:[root@centos7 ~]#useradd -g opt zrt
[root@centos7 ~]#id zrt
uid=1235(zrt) gid=1005(opt) groups=1005(opt)

-c “COMMENT”:用戶的注釋信息
useradd -c yeliangchen ylc

-d HOME_DIR:以指定的路徑(不存在)為家目錄
useradd -c yeliangchen ylc

-s SHELL: 指明用戶的默認shell程序
可用列表在/etc/shells文件中

-G GROUP1[,GROUP2,…]:為用戶指明附加組,組須事先存在

-N 不創建私用組做主組,使用users組做主組
[root@centos7 ~]#useradd -N lyh
[root@centos7 ~]#id lyh
uid=1239(lyh) gid=100(users) groups=100(users)

-r: 創建系統用戶CentOS 6: ID<500,CentOS 7: ID<1000
不自動創建家目錄

eg:
[root@centos7 ~]#useradd -r mysql
[root@centos7 ~]#id mysql
uid=990(mysql) gid=985(mysql) groups=985(mysql)
[root@centos7 ~]#getent passwd mysql
mysql:x:990:985::/home/mysql:/bin/bash
[root@centos7 ~]#ll /home
total 4
drwx——. 3 gentoo gentoo 78 Nov 15 15:03 gentoo
drwx——. 5 tom jerry 107 Nov 16 16:48 jerry
drwx——. 3 li li 78 Nov 15 14:08 li
drwx——. 3 lyh users 78 Nov 16 17:04 lyh
drwx——. 5 mage mage 128 Nov 16 16:13 mage
drwx——. 14 qm qm 4096 Nov 16 16:04 qm
drwx——. 5 tom tom 107 Nov 16 16:48 tom
drwx——. 3 ylc ylc 78 Nov 16 16:58 ylc
drwx——. 3 zrt opt 78 Nov 16 16:51 zrt

 

-m 創建家目錄,用于系統用戶
eg:
[root@centos7 ~]#useradd -r -m -d /app/apache apache
[root@centos7 ~]#ll /app
total 72
-rw-r–r–. 1 root root 0 Nov 14 10:55 a
-rw-r–r–. 1 root root 119 Nov 14 17:10 all.log
drwx——. 3 apache apache 78 Nov 16 17:10 apache

-M 不創建家目錄,用于非系統用戶
[root@centos7 ~]#useradd -M lqd
[root@centos7 ~]#ls /home
gentoo hadoop jerry leijun li lyh mage qm tom ylc zrt

useradd常用的方法:
useradd -r -m -d /app/zabbix -s /sbin/nologin zabbix

默認值設定:/etc/default/useradd文件中

顯示或更改默認設置
useradd-D

useradd–D -s SHELL

useradd–D –b BASE_DIR

useradd–D –g GROUP

eg:
[root@centos7 home]#useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@centos7 home]#useradd -D -s /sbin/nologin
[root@centos7 home]#useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/sbin/nologin
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

usermod[OPTION] login

-u UID: 新UID
eg:
useradd -u 1002 newli

-g GID: 新主組
eg:
[root@centos7 home]#usermod -g admins jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins)

-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加組,原來的附加組將會被覆蓋;若保留原有,則要同時使用-a選項
eg:
[root@centos7 home]#usermod -G bin jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins),1(bin)
[root@centos7 home]#usermod -aG qm,mage jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins),1(bin),1000(qm),1004(mage)
[root@centos7 home]#usermod -G qm,mage jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins),1000(qm),1004(mage)
[root@centos7 home]#usermod -G “” jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins)
[root@centos7 home]#usermod -G qm,mage jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins),1000(qm),1004(mage)
[root@centos7 home]#usermod -G admins jerry
[root@centos7 home]#id jerry
uid=1234(jerry) gid=1003(admins) groups=1003(admins)

-s SHELL:新的默認SHELL

-c ‘COMMENT’:新的注釋信息

-d HOME: 新家目錄不會自動創建;若要創建新家目錄并移動原家數據,同時使用-m選項
eg:
[root@centos7 home]#usermod -d /app/magehome -m mage
[root@centos7 home]#ls /app/magehome/ -a
. .bash_history .bash_profile .cache magefile
.. .bash_logout .bashrc .config .mozilla

-l login_name: 新的名字;
eg:
[root@centos7 home]#usermod -l newharry harry
[root@centos7 home]#id newharry
uid=1247(newharry) gid=1248(harry) groups=1248(harry),1003(admins)
[root@centos7 home]#getent passwd newharry
newharry:x:1247:1248::/home/harry:/bin/bash

-L: lock指定用戶,在/etc/shadow 密碼欄的增加!

-U: unlock指定用戶,將/etc/shadow 密碼欄的! 拿掉

-e YYYY-MM-DD: 指明用戶賬號過期日期

-f INACTIVE: 設定非活動期限

 

 

id [OPTION]… [USER]

-u: 顯示UID
-g: 顯示GID
-G: 顯示用戶所屬的組的ID
-n: 顯示名稱,需配合ugG使用
eg:
[root@centos7 home]#id qm
uid=1000(qm) gid=1000(qm) groups=1000(qm),0(root),1004(mage),1005(opt)
[root@centos7 home]#id -g qm
1000
[root@centos7 home]#id -gn qm
qm
[root@centos7 home]#usermod -g admins mage
[root@centos7 home]#id -gn mage
admins
[root@centos7 home]#id -g mage
1003

 

passwd用法:
passwd[OPTIONS] UserName: 修改指定用戶的密碼,僅root用戶權限
passwd: 修改自己的密碼
常用選項:
-l:鎖定指定用戶

-u:解鎖指定用戶

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

-n mindays: 指定最短使用期限

-x maxdays:最大使用期限

-w warndays:提前多少天開始警告

-iinactivedays:非活動期限

–stdin:從標準輸入接收用戶密碼
echo “PASSWORD” | passwd–stdinUSERNAME

ex:
[root@centos7 ~]#echo 123456|passwd –stdin mage
Changing password for user mage.
passwd: all authentication tokens updated successfully.
[root@centos7 ~]#echo 123456|passwd –stdin mage &> /dev/null

chage[OPTION]… LOGIN
-d LAST_DAY

-E –expiredateEXPIRE_DATE

-I –inactive INACTIVE

-m –mindaysMIN_DAYS

-M –maxdaysMAX_DAYS

-W –warndaysWARN_DAYS

–l 顯示密碼策略
eg:
chage-d 0 qm 下一次登錄強制重設密碼

chage-m 0 –M 42 –W 14 –I 7 tom

chage-E 2016-09-10 tom

 

groupadd[OPTION]… group_name

-g GID: 指明GID號;[GID_MIN, GID_MAX]

-r: 創建系統組
CentOS 6: ID<500
CentOS 7: ID<1000

 

組屬性修改:groupmod

groupmod[OPTION]… group

-n group_name: 新名字

-g GID: 新的GID

 

組刪除:groupdel

groupdelGROUP

一個組屬于某個主組,除非把組從主組里面去掉。否則不能刪除。
eg:
[root@centos7 ~]#groupadd -r -g sysadmins
[root@centos7 ~]#groupdel sysadmins
[root@centos7 ~]#groupdel qm
groupdel: cannot remove the primary group of user ‘qm’

 

 

 

groupmems[options] [action]
options:
-g, –group groupname更改為指定組(只有root)

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

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

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

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

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

eg:[root@centos7 ~]#groups mage
mage : mage opt dev

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/88611

(1)
菜鳥入江湖菜鳥入江湖
上一篇 2017-11-18 19:54
下一篇 2017-11-19 15:13

相關推薦

  • 刪除并恢復

    1.刪除/lib64/libc.so.6 ,并恢復之。 centos7.3:重啟→進入救援模式→cd  lib64→cp libc.so.6  /mnt/sysimage/lib64 →exit,選擇第二個白條(救援),即可恢復; centos6.9:重啟→進入救援模式→cd  lib64→cp libc.so.6  …

    2017-06-11
  • 從Linux小白到大牛——與狼共舞的日子6

    馬哥教育網絡班21期+第6周課程練習 請詳細總結vim編輯器的使用并完成以下練習題 1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; [root@localhost ~]# cp /etc/rc.d/rc.sysinit …

    Linux干貨 2016-10-31
  • Linux運維實戰之2-1:文件管理類命令

    本次博文我們來學習下Linux系統中使用頻率比較高的文件管理類命令哈。 主要內容:     1、文件管理的概述;     2、文件管理命令詳解; 上次博文,我們學習了Linux的哲學思想,其中之一就是:Linux中一切皆文件。由此,文件管理就是Linux系統的重要功能之一。 一、…

    Linux干貨 2016-11-06
  • DNS and BIND 進階

    主DNS服務器的ip地址:192.168.1.109 主DNS服務器主機名:bogon 正向區域名:sh.com 反向區域名:1.168.192.in-addr.arpa 正向區域文件名稱:/var/named/sh.com.hosts 反向區域文件名稱:/var/named/192.168.1.rev 配置主文件/etc/named.conf過程 1、編輯…

    Linux干貨 2016-12-06
  • linux文件權限

                                                      &nbsp…

    Linux干貨 2016-08-04
  • 邏輯卷實例

    1、創建一個至少有兩個PV組成的大小為20G的名為testvg的VG;要求PE大小為16MB, 而后在卷組中創建大小為5G的邏輯卷testlv;掛載至/users目錄 2、新建用戶archlinux,要求其家目錄為/users/archlinux,而后su切換至archlinux用戶,復制/etc/pam.d目錄至自己的家目錄 3、擴展testlv至7G,要…

    Linux干貨 2016-09-01
欧美性久久久久