账户文件 /etc/passwd

来源:互联网 发布:疯狂的美工京东 编辑:程序博客网 时间:2024/05/16 13:01
  • /etc/passwd 各字段的含义

man 5 passwd


·   login name                  
·   optional encrypted password            ;如果是x,则对应的密码必须存在于/etc/shadow;否则认为账户无效

                                                          ;也可以直接是加密的密码
·   numerical user ID
·   numerical group ID
·   user name or comment field

·   user home directory                         ;Login程序把$HOME 设置成它

·   optional user command interpreter   ;此处可以是/usr/sbin/nologin 或/bin/false防止登录

 

  • 为什么要有/etc/shadow?
    /etc/passwd 是所有人有read权限的, 所以就算 "密码字段" 是加密的,也可能被人破解,所以密码通常放在/etc/shadow中
  • 为什么/etc/passwd被设为所有人都可读?
    当你运行 ls 程序的时候,ls 从filesystem中读到的文件的归属信息是 uid:gid 。是 "数字" 而不是"名字"。需要利用 /etc/passwd得到映射后的 名字。 还有其他类似的程序也要利用passwd 做 id->name 转化