linux用户管理中两个重要的用户配置文件new
Allen4392
9年前
<p>在Linux中主要通过用户配置文件来查看和修改用户信息,因此下面我们将介绍两个重要的用户配置文件,让你能够更好的hold住你的用户。</p> <p><img src="https://simg.open-open.com/show/bebb065d33044c37c03104da8f84c753.png"></p> <h2><strong>一:父文件/etc/passwd</strong></h2> <p><strong>1.查看配置文件/etc/passwd具体内容</strong></p> <pre> <code class="language-bash">[root@chenfan-centos ~]# head /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 adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin ‘/etc/passwd’ 由 ‘:’ 分割成7个字段 </code></pre> <p><strong>2.每个字段具体含义讲解</strong></p> <ul> <li>用户名(如第一行中的root就是用户名),代表用户账号的字符串。</li> <li>存放的就是该账号的口令,在这里只用一个 ‘x’ 代替,早期的unix系统口令确实是存放在这里,但基于安全因素,后来就将其存放到 ‘/etc/shadow’ 中了。</li> <li>代表用户标识号,也叫做uid。0就是root,通常uid的取值范围是0~65535(但实际上已经可以支持到4294967294),0是超级用户(root)的标识号,1~499由系统保留,普通用户的标识号大于等于500。</li> <li>表示组标识号,也叫做gid。这个字段对应着/etc/group 中的一条记录,其实/etc/group和/etc/passwd基本上类似</li> <li>注释说明,该字段没有实际意义,通常记录该用户的一些属性,例如姓名、电话、地址等等。</li> <li>用户的家目录,当用户登录时就处在这个目录下。root的家目录是/root,普通用户的家目录则为/home/username,这个字段是可以自定义的。</li> <li>shell,用户登录后要启动一个进程,作用是用来将用户下达的指令传给内核。而Redhat/CentOS的shell是bash,默认的路径为/bin/bash,如果您想建立一个账号不让他登录,那么就可以把该字段改成/sbin/nologin。</li> </ul> <p><img src="https://simg.open-open.com/show/b7db7bd9b80440382511b70c9a22ac9d.png"></p> <h2><strong>二:子文件/etc/shadow</strong></h2> <p>1.查看配置文件/etc/shadow的内容</p> <pre> <code class="language-bash">[root@chenfan-centos ~]# head -n3 /etc/shadow root:$6$Wo0kPkgm$OAp0Wl2AsaE4ei4YVbxo3DIU5OBSYxn1y7qxB5Jns70Yk91AvzElsR5GmoGCC8DUXkKzK7vyiV8wXNeaWNm861:15832:0:99999:7::: bin:*:15628:0:99999:7::: daemon:*:15628:0:99999:7::: 和/etc/passwd类似,被“:”分为了9个字符</code></pre> <p>2.每个字段具体含义讲解/etc/shadow的内容</p> <ul> <li>用户名,跟/etc/passwd对应。</li> <li>加密密码,加密算法升级为SHA512散列加密算法,如果密码位为“!!”或“*”代表没有密码,不能登录,其shell为/sbin/nologin。</li> <li>密码最后一次修改的时间,以1970年1月1日作为标准时间,每过一天时间戳加1</li> <li>两次密码修改的间隔时间,要过多少天才可以更改密码,默认是0,即不限制</li> <li>密码的有效期,密码多少天后到期,默认为99999。若设置成20,即20天后到期,必须修改密码,不然登录不了系统。</li> <li>密码到期前的警告期限,若设置为6,即到期前6天将通知用户。</li> <li>账号失效宽限期(和第5字段相对比)。若设置为2,到期过后2天后再不修改密码,用户锁定。</li> <li>账号的生命周期(要用时间戳表示),到了指定的期限,账号将失效。</li> <li>保留字段,没有特别意义</li> </ul> <p>3.时间戳的换算方法2.每个字段具体含义讲解</p> <ul> <li>把时间戳换算成日期:<br> [root@chenfan-centos ~]#date -d "1970-01-01 16893days"<br> Sar Apr 2 00:00:00 CST 2016</li> <li>把日期换算成时间戳:<br> [root@chenfan-centos ~]#echo $(($(date--date="2016/04/02"+%s)/86400+1))<br> 16893</li> </ul> <pre> <code class="language-bash"><strong>本文素材来自http://www.linuxprobe.com/parentchild-configuration-file/</strong></code></pre> <p>来自: <a href="/misc/goto?guid=4959670027090290599" rel="nofollow">http://www.yunweipai.com/archives/6181.html</a></p>