1.請問如下登錄環境故障的原理及解決辦法?
1 [root@server test]# useradd rr ##創建用戶rr 2 [root@server test]# id rr 3 uid=510(rr) gid=511(rr) groups=511(rr) 4 [root@server ~]# ls -la /home/rr/ ##查看/home/rr目錄下都有什么文件 5 total 28 6 drwx------ 2 rr rr 4096 Dec 26 09:41 . 7 drwxr-xr-x. 12 root root 4096 Dec 26 09:41 .. 8 -rw-r--r-- 1 rr rr 18 Jul 24 02:55 .bash_logout 9 -rw-r--r-- 1 rr rr 176 Jul 24 02:55 .bash_profile 10 -rw-r--r-- 1 rr rr 124 Jul 24 02:55 .bashrc 11 -rw-r--r-- 1 rr rr 658 Nov 10 20:27 .zshrc 12 -rw-r--r-- 1 rr rr 15 Dec 25 11:03 readme.txt 13 [root@server ~]# cd /home/rr 14 [root@server rr]# rm -f .bash 15 .bash_history .bash_logout .bash_profile .bashrc 16 [root@server rr]# rm -f .bash* ##將目錄下以bash開頭的文件刪除 17 [root@server ~]# su - rr ##切換到rr賬戶 18 -bash-4.1$ ##登錄環境故障 19 ##處理辦法 20 -bash-4.1$ cp /etc/skel/.bash* /home/rr ##將/etc/skel目錄下bash文件拷貝到缺少文件的用戶賬號目錄下 21 -bash-4.1$ logout 22 [root@server ~]# su - rr ##重新切換到rr賬號成功 23 [rr@server ~]$
1 ### 2 [root@server /home 09:56:56]#PS1='[\u@\h \w \t]\$' ##如果想讓配置永久生效,可以寫入到/etc/profile文件中
2.了解/etc/login.efs特定參數的意義
1 # *REQUIRED* 2 # Directory where mailboxes reside, _or_ name of file, r 3 elative to the 4 # home directory. If you _do_ define both, MAIL_DIR tak 5 es precedence. 6 # QMAIL_DIR is for Qmail 7 # 8 #QMAIL_DIR Maildir 9 MAIL_DIR /var/spool/mail ##mail郵箱路徑 10 #MAIL_FILE .mail 11 # Password aging controls: 12 # 13 # PASS_MAX_DAYS Maximum number of days a passw 14 ord may be used. 15 # PASS_MIN_DAYS Minimum number of days allowed 16 between password changes. 17 # PASS_MIN_LEN Minimum acceptable password le 18 ngth. 19 # PASS_WARN_AGE Number of days warning given b 20 efore a password expires. 21 # 22 PASS_MAX_DAYS 99999 ##密碼有效期最大的天數 23 PASS_MIN_DAYS 0 ##最小有效期 24 PASS_MIN_LEN 5 ##密碼最小長度 25 PASS_WARN_AGE 7 ##過期的警告 26 27 # Min/max values for automatic uid selection in userad 28 d 29 # 30 UID_MIN 500 31 UID_MAX 60000 ##用戶ID的大小 32 33 # 34 # Min/max values for automatic gid selection in groupa 35 dd 36 # 37 GID_MIN 500 38 GID_MAX 60000 ##組ID的大小 39 40 # If useradd should create home directories for users 41 by default 42 # On RH systems, we do. This option is overridden with 43 the -m flag on 44 # useradd command line. 45 # 46 CREATE_HOME yes ##是否創建家目錄,默認要求創建;可用-m參數來控制 47 48 # The permission mask is initialized to this value. If 49 not specified, 50 # the permission mask will be initialized to 022. 51 UMASK 077 ##家目錄的UMASK 52 53 # This enables userdel to remove user groups if no mem 54 bers exist. 55 # 56 USERGROUPS_ENAB yes ##刪除用戶同時刪除用戶組
3.掌握/etc/default/useradd配置文件中的信息;
1 [root@server ~]# cat /etc/default/useradd 2 # useradd defaults file 3 GROUP=100 4 HOME=/home ##把用戶的家目錄建在/home中。 5 INACTIVE=-1 ##是否啟用賬號過期提權,-1表示不啟用 6 EXPIRE= ##賬號終止日期,不設置表示不啟用 7 SHELL=/bin/bash ##新用戶默認所用的shell類型 8 SKEL=/etc/skel ##配置新用戶家目錄的默認文件存放路徑。前文提到的/etc/skel,即當我們用useradd添加用戶時,用戶家目錄下的文件,都是從這里配置的目錄中復制過去 9 CREATE_MAIL_SPOOL=yes ##創建mail文件
實例:
useradd -c、-u、-G、-s、-d多個參數組合例子
自定義用戶的家目錄、shell類型、所歸屬的用戶組等;
添加用戶oldboy6,並設置其用戶注釋信息為HandsomeBoy,UID指定為806,歸屬為用戶組root、oldboy、sa成員
其shell類型為/bin/sh,設置家目錄為/oldboy6。
實操作結果為:
1 ###首先創建用戶組sa 2 [root@server ~]# grep "sa" /etc/group 3 vcsa:x:69: 4 saslauth:x:76: 5 sa:x:512: 6 [root@server ~]# grep -o "\bsa\b" /etc/group ##只過濾以“sa”開頭的單獨單詞 7 sa 8 [root@server ~]# useradd -c "HandsomeBoy" -u 806 -G root,oldboy,sa -s /bin/sh -d /oldboy6 oldboy6 9 ##注釋 10 -c:設置備注信息 11 -u:設置UID號 12 -G:設置對於的屬組 13 -s:設置對應的shell 14 -d:設置相應的家目錄 15 ###成果如下 16 [root@server ~]# grep "oldboy6" /etc/passwd 17 oldboy6:x:806:806:HandsomeBoy:/oldboy6:/bin/sh 18 [root@server ~]# id oldboy6 19 uid=806(oldboy6) gid=806(oldboy6) groups=806(oldboy6),0(root),512(sa),513(oldboy)