在Linux中,`/etc/passwd` 和 `/etc/shadow` 文件分别有什么作用?

简介: 在Linux中,`/etc/passwd` 和 `/etc/shadow` 文件分别有什么作用?

在Linux系统中,/etc/passwd/etc/shadow 文件是用于存储系统用户账户信息的关键配置文件,它们各自扮演不同的角色,共同管理系统的用户身份验证和密码安全性。

  1. /etc/passwd文件:
  • 作用
  • 存储了系统中的每个用户的基本信息,包括用户名、用户ID(UID)、组ID(GID)、用户信息描述(GECOS)、用户的主目录以及登录shell。
  • 提供了一个用户账号数据库,系统服务和应用程序可以根据这个文件来识别用户,并关联到他们的主目录和默认shell环境。
  • 虽然名为“passwd”,但实际上在这个文件中并不直接存放密码信息,而是指向另一个地方,现代系统中是一个占位符(通常是x),真正的密码存储在 /etc/shadow 文件中。
  • 文件格式
  • 每行代表一个用户账户,字段间以冒号 (:) 分隔,格式如下:
username:password_hash:UID:GID:GECOS:home_directory:login_shell
  1. /etc/shadow文件:
  • 作用
  • 专门用来存储用户的加密密码信息,增强了系统的安全性,因为普通用户无法查看或修改这个文件的内容,只有root用户才有权限。
  • 包含了密码相关设置,如密码的加密散列值、最近更改密码的日期、密码需要多久之后才能更改、密码过期警告期限、密码过期后的宽限天数、账户过期时间等。
  • 文件格式
  • 同样,每行对应一个用户,与 /etc/passwd 中的用户一一对应,字段同样以冒号分割,格式大致如下:
username:password_hash:last_change:min:max:warn:inactive:expire:reserved
  • 其中,password_hash 是经过加密处理的实际密码,其他字段则对应密码策略参数。

综上所述:通过这种方式,Linux系统将敏感的密码信息与公开可读的用户信息分开,既方便了系统管理,又提高了密码的安全保护级别。当用户尝试登录时,系统会结合这两个文件来验证用户的身份及密码的有效性。

相关文章
|
20天前
|
Linux 数据安全/隐私保护 Windows
命令方式:window向linux传文件
【10月更文挑战第6天】本文介绍了如何在Linux系统中通过命令`ip a`获取IP地址,并在Windows系统下使用CMD命令行工具和SCP命令实现文件传输。示例展示了如何将D盘中的`mm.jar`文件上传至IP地址为192.168.163.122的Linux系统的/up/目录下,最后在Linux系统中确认文件传输结果。
203 65
|
8天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
83 5
|
8天前
|
Linux Shell 数据库
Linux文件查找新姿势:总有一种你没见过
【10月更文挑战第18天】文件查找是Linux用户提升工作效率的重要技能。本文介绍了几种实用的文件查找方法,包括基础的`find`命令、快速的`locate`和`mlocate`、高效的`fd`工具、以及结合`grep`和`rg`进行内容搜索。此外,还提供了编写Shell脚本和使用图形界面工具的建议,帮助你更灵活地管理文件。
34 3
|
19天前
|
Linux 开发工具 数据安全/隐私保护
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
这篇文章介绍了在CentOS 7系统中安装Docker时遇到的两个常见问题及其解决方法:用户不在sudoers文件中导致权限不足,以及yum被锁定的问题。
30 2
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
|
2天前
|
Linux 数据库
linux 全局搜索文件
在 Linux 系统中,全局搜索文件常用 `find`、`locate` 和 `grep` 命令。`find` 根据文件名、类型、大小、时间戳等条件搜索;`locate` 通过预构建的数据库快速查找文件;`grep` 在文件中搜索特定文本,常与 `find` 结合使用。选择合适的命令取决于具体需求。
|
6天前
|
Linux 开发工具 Perl
Linux命令替换目录下所有文件里有"\n"的字符为""如何操作?
【10月更文挑战第20天】Linux命令替换目录下所有文件里有"\n"的字符为""如何操作?
20 4
|
5天前
|
运维 安全 Linux
Linux文件清空的五种方法总结分享
每种方法各有优势,选择最合适的一种或几种,可以极大提高您的工作效率。更多有关Linux系统管理的技巧与资源,欢迎访问,持续提升您的运维技能。
40 1
|
15天前
|
Linux Shell 数据库
Linux文件查找新姿势:总有一种你没见过
文件查找是Linux用户提升工作效率的关键技能。本文介绍了几种不常见的文件查找方法,包括使用`find`结合`column`美化输出、利用`locate`和`mlocate`快速查找、编写Shell脚本自动化任务、使用现代工具`fd`以及结合`grep`和`rg`进行内容搜索。此外,还推荐了几款图形界面搜索工具。掌握这些技巧,让你的文件查找更加高效便捷。
44 2
|
22天前
|
Linux C++
Linux c/c++文件虚拟内存映射
这篇文章介绍了在Linux环境下,如何使用虚拟内存映射技术来提高文件读写的速度,并通过C/C++代码示例展示了文件映射的整个流程。
34 0
|
22天前
|
Linux C++
Linux c/c++文件移动
这篇文章介绍了在Linux环境下,使用C/C++语言通过命令方式和文件操作方式实现文件移动的方法。
54 0