Linux中/etc/passwd配置文件解析
Linux中/etc/passwd配置文件解析
1、/etc/passwd 文件中的内容如下:#
文件内容非常规律,每行记录对应一个用户。每行用户信息都以":"作为分隔符,划分为7个字段。
2、各个字段含义如下:#
3、字段含义解释#
3.1 用户名#
方便用户记忆的代号(如root),该文件中定义了用户名和UID之间的对应关系,Linux系统通过UID识别用户身份,分配用户权限;
3.2 密码#
"x"表示用户设有密码,"x"不代表真正的密码,真正的密码存在/etc/shadow文件中;
shadow文件内容如下图所示:
注:
Linux系统把真正的加密密码串放置在/etc/shadow文件中,此文件只有root用户可以浏览和操作,最大限度地保证了密码的安全。
虽然"x"并不表示真正的密码,但也不能删除,如果删除了 "x",那么系统会认为这个用户没有密码,从而导致只输入用户名而不用输入密码就可以登陆(只能在使用无密码登录,远程是不可以)。
3.3 UID(用户ID)#
每个用户都有唯一UID,Linux 系统通过UID来识别不同的用户。
实际上,UID 就是一个 0~65535 之间的数,不同范围的数字表示不同的用户身份。
- 0:超级用户,代表管理员账号;
- 1~499:系统用户,保留给系统使用;
- 500~65535:普通用户
3.4 GID(组ID)#
这里的 组ID 表示初始组组ID号。
(1) 初始组
指用户登陆时就拥有这个用户组的相关权限。每个用户的初始组只能有一个,通常就是将和此用户的用户名相同的组名作为该用户的初始组。比如说,我们手动创建用户 work,在建立用户work同时,就会建立work组作为work用户的初始组。
(2) 附加组
用户可以加入多个其他的用户组,并拥有这些组的权限。
每个用户只能有一个初始组,除初始组外,用户再加入其他的用户组,这些用户组就是这个用户的附加组。附加组可以有多个,而且用户可以有这些附加组的权限。
3.5 描述性信息#
此字段只是用来解释这个用户的意义而已。
3.6 主目录#
通常称为用户的主(家)目录。
如:root的主目录为/root
,普通账户work的主目录为/home/work
3.7 默认Shell#
- Shell是Linux的命令解释器,用户和Linux内核之间沟通的桥梁。
- Shell命令解释器的功能就是将用户输入的命令转换成系统可以识别的机器语言。
- 通常情况下,Linux系统默认使用的命令解释器是/bin/bash
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?