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 ]$' ##如果想让配置永久生效,可以写入到/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 "sa" /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)