Linux用戶:UserName/passwordnginx
UID:0-65535sql
管理員:0shell
普通用戶:1-60000bash
系統用戶:ide
CentOS6: 1-499ui
CentOS7:1-999加密
登陸用戶:spa
CentOS6: 500+it
CentOS7: 1000+
io
Linux組:GroupName/GID
管理員組:0
普通組:
1-499, 1-999
500+, 1000+
用戶的基本組:
用戶的私有組;
用戶的附加組;
Linux用戶和組的相關的配置文件:
/etc/passwd:用戶名、UID、基本組等信息
/etc/group:組名、GID、組內包含的用戶;
/etc/shadow:用戶密碼及相關屬性;
/etc/gshadow:組的密碼及相關屬性;
/etc/passwd:
name:password:UID:GID:GECOS:directory:shell
登陸名:x:UID:GID:comment:主目錄:用戶默認shell
/etc/shadow:
login name:encrypted password:date of last password change:minimum password age:maximum password age:password warning period:password inactivity period:account expiration date:reserved field
/etc/group:
group_name:password:GID:user_list
用戶和組管理的相關命令:
useradd、usermod、passwd、userdel
groupadd、groupmod、gpasswd、groupdel
chage, chsh, chfn
id, w, who, whoami
su
useradd:建立用戶
useradd [options] LOGIN
useradd -D [options]
-r: 建立系統用戶
-u UID: 指定UID;
-g GID: 指定用戶所屬基本組,此組必須事先存在
-c 'COMMENT':
-d /PATH/TO/SOMEWHERE:指定用戶的主目錄路徑;此位置不能事先存在,不然,其用戶相關配置文件將被複制;/etc/skel
-s SHELL:設定用戶的默認shell;
cat /etc/shells
-G GID,...:指定所屬的附加組;
-M: 不給用戶建立家目錄;
例:建立nginx啓動用戶,禁止用戶登錄,不指定用戶家目錄,UID爲3000.
[root@localhost /]# useradd -M -s /sbin/nologin -u 3000 nginx [root@localhost /]# tail -n 1 /etc/passwd nginx:x:3000:3000::/home/nginx:/sbin/nologin
例:練習:建立用戶Oracle,所屬附加組database和sql,ID號爲3001, 家目錄爲/home/database;
useradd -u 3001 -d /home/database -G database,sql Oracle [root@localhost /]# id Oracle uid=3001(Oracle) gid=3003(Oracle) 組=3003(Oracle),3001(database),3002(sql)
usermod:用戶屬性修改
usermod [OPTION]... LOGIN
-u UID
-g GID
-G GID[,GID,...]:修改用戶所屬的附加組;同時使用-a選項
-s SHELL
-c 'COMMENT'
-d HOME: 修改用戶的家目錄爲新位置時,用戶原來的文件是不會被移動至新家;-m選項可實現同時將其遷至新的家目錄;
-l LOGIN:
-L:lock user
-U: unlock user
例:修改Oracle的爲禁止登錄
[root@localhost /]# usermod -s /sbin/nologin Oracle [root@localhost /]# finger Oracle Login: Oracle Name: Directory: /home/database Shell: /sbin/nologin Never logged in. No mail. No Plan.
userdel:刪除用戶
userdel [-r] USERNAME
-r:刪除用戶的同時刪除其家目錄;
例:刪除Oracle用戶,而且刪除家目錄
[root@localhost /]# userdel -r Oracle [root@localhost /]# ll /home/database ls: 沒法訪問/home/database: 沒有那個文件或目錄
passwd:給用戶添加密碼
passwd [OPTION] [UserName]
-l: 鎖定用戶帳號
-u: 解鎖用戶帳號:
-d:清空用戶的密碼,使之無需密碼便可登陸
-S:查看用戶的帳號的狀態
--stdin:從標準輸出接收用戶密碼;
例:利用--stdin設置用戶密碼
[root@localhost /]# echo '123456' | passwd --stdin Oracle 更改用戶 Oracle 的密碼 。 passwd: 全部的身份驗證令牌已經成功更新。
例:狀況Oracle用戶密碼
[root@localhost /]# passwd -d Oracle 清除用戶的密碼 Oracle。 passwd: 操做成功
groupadd:建立組
groupadd [OPTIONS] GROUPNAME
-g GID: 指明組ID;
-r: 建立系統組;
例:建立一個GID爲3005的組,名字爲aa
[root@localhost /]# groupadd -g 3005 aa [root@localhost /]# tail -n 1 /etc/group aa:x:3005:
groupmod: 組屬性修改
groupmod [OPTION] GROUPNAME
-n 新組名 原組名
-g 修改組的GID
例:修改database組名爲bb
[root@localhost /]# groupmod -n bb database
例:修改databases的GID爲5000
[root@localhost /]# groupmod -g 5000 database
gpasswd:添加或刪除組成員,設置組帳號密碼(極少用)
gpasswd {選項}… 組賬號名
例:將Oracle用戶從database組裏剔除
[root@localhost /]# gpasswd -d Oracle database Removing user Oracle from group database
例:將Oracle用戶添加到databases組裏
[root@localhost /]# gpasswd -a Oracle database Adding user Oracle to group database
groupdel:刪除組
其餘命令:id、who、w、finger、groups
id:查詢用戶身份表示
用法:id {用戶名}
groups:查詢用戶所屬的組
用法:groups {用戶名}
finger:查詢用戶詳細信息
用法:finger {用戶名}
完結:2015-8-25