2021-05-12 14:32:11
Linux基礎教學學習筆記5——管理使用者和使用者組
Linux基礎教學學習筆記5——管理使用者和使用者組
1、使用者和使用者組
/etc/passwd 檔案記錄了所有使用者的相關資訊
[root@clz ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
每一行代表一個使用者資訊,從左至右分別代表了:使用者名稱,密碼(儲存在/etc/shadow,用x表示),UID,GID,使用者全稱,家目錄,shell;
如果要在圖形化介面下管理使用者與組,需安裝包:system-config-users-1.3.5-2.el7.noarch.rpm
如果一個使用者的shell指定為/sbin/nologin,此使用者成為匿名使用者,則此使用者無法登陸系統,任何使用者也無法切換到它,一般用於系統的服務,基於安全考慮;
不為使用者建立私人組的話,則預設屬於user組;
RHEL6的UID 從500開始,RHEL7則是從1000開始;
一個使用者如果密碼被鎖定,則只有root使用者可以切換過去;
使用者密碼修改,可以使用passwd和chage來修改對應的賬號屬性:
[root@clz ~]# passwd --help
Usage: passwd [OPTION...] <accountName>
-k, --keep-tokens keep non-expired authentication tokens
-d, --delete delete the password for the named account (root only)
-l, --lock lock the password for the named account (root only)
-u, --unlock unlock the password for the named account (root only)
-e, --expire expire the password for the named account (root only)
-f, --force force operation
-x, --maximum=DAYS maximum password lifetime (root only)密碼使用最大天數
-n, --minimum=DAYS minimum password lifetime (root only)密碼使用最少天數
-w, --warning=DAYS number of days warning users receives before password expiration (root only) 密碼更換前警告的天數
-i, --inactive=DAYS number of days after password expiration when an account becomes disabled (root only)賬號被取消啟用前的天數,如果該值設定未負值,則表示賬號不鎖定,但是登陸時一定要修改密碼;
-S, --status report password status on the named account (root only)
--stdin read new tokens from stdin (root only)
[root@clz ~]# chage --help
Usage: chage [options] LOGIN
Options:
-d, --lastday LAST_DAY set date of last password change to LAST_DAY 修改密碼的時間戳
-E, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE密碼過期日期
-I, --inactive INACTIVE set password inactive after expiration
to INACTIVE 賬號被取消啟用前的天數
-m, --mindays MIN_DAYS set minimum number of days before password
change to MIN_DAYS 密碼最少使用天數
-M, --maxdays MAX_DAYS set maximim number of days before password
change to MAX_DAYS密碼最大使用天數
-R, --root CHROOT_DIR directory to chroot into
-W, --warndays WARN_DAYS set expiration warning days to WARN_DAYS密碼更換前警告的天數
新增使用者:useradd/adduser
[root@clz ~]# useradd --helpOptions:
-c, --comment COMMENT GECOS field of the new account 全稱
-d, --home-dir HOME_DIR home directory of the new account 家目錄
-e, --expiredate EXPIRE_DATE expiration date of the new account
-g, --gid GROUP name or ID of the primary group of the new
account 主組
-G, --groups GROUPS list of supplementary groups of the new
account 子組
-m, --create-home create the user's home directory
-M, --no-create-home do not create the user's home directory 不建立使用者家目錄
-p, --password PASSWORD 設定密碼
-s, --shell SHELL login shell of the new account 設定SHELL
-u, --uid UID user ID of the new account 指定UID
建立使用者時一般不直接指定-p設定密碼,而是在建立使用者後,使用echo 'password'|passwd --stdin username 設定密碼
修改使用者屬性時,也可以使用usermod,與useradd和chage的選項類似:
[root@clz ~]# usermod --help
-c, --comment COMMENT new value of the GECOS field 修改全稱
-d, --home HOME_DIR new home directory for the user account修改家目錄
-e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE
-f, --inactive INACTIVE set password inactive after expiration
to INACTIVE
-g, --gid GROUP force use GROUP as new primary group
-G, --groups GROUPS new list of supplementary GROUPS
-l, --login NEW_LOGIN new value of the login name
-L, --lock lock the user account
-m, --move-home move contents of the home directory to the
new location (use only with -d)
-p, --password PASSWORD use encrypted password for the new password
-s, --shell SHELL new login shell for the user account
-u, --uid UID new UID for the user account
-U, --unlock unlock the user account
手工建立使用者的家目錄,例如:
當前使用者的家目錄為:/home/tom
[tom@clz ~]$ pwd
/home/tom
修改使用者家目錄為:/home/tom1
[root@clz ~]# usermod -d /home/tom1 tom
此時切換到tom使用者,因為新的家目錄沒有建立,會報錯:
手工建立家目錄:
[root@clz ~]# mkdir /home/tom1
將/etc/skell下面的隱藏檔案拷貝到新的家目錄:
[root@clz ~]# cp -a /etc/skel/.[^.]* /home/tom1
修改家目錄檔案的屬主屬組,之後再切換使用者即可:
[root@clz home]# chown tom.tom -R tom1
檢視使用者屬於哪些組,使用groups命令:
[root@clz home]# groups tom
tom : tom
為使用者新增多個組:
[root@clz tom1]# usermod -a -G wheel tom
[root@clz tom1]# groups tom
tom : tom wheel
修改使用者的主組 usermod -g:
修改刪除使用者的屬組,可以使用gpasswd命令:
[root@clz tom1]# gpasswd --help
-a, --add USER add USER to GROUP
-d, --delete USER remove USER from GROUP 將使用者刪除某個組
-r, --remove-password remove the GROUP's password
-R, --restrict restrict access to GROUP to its members
-M, --members USER,... set the list of members of GROUP
使用者的預設的登陸時間屬性在/etc/login.defs
組的管理:userdel刪除組,新增組 groupadd
相關文章