nsswitch.conf的文件

nsswitch.conf 文件详解与配置说明

文件概述

nsswitch.conf(Name Service Switch配置文件)是Unix/Linux系统中用于控制系统如何查找和获取基本管理信息的配置文件,如用户、主机、服务等信息的查询顺序和方式。

文件位置

标准路径:/etc/nsswitch.conf

配置格式

复制
<数据库类型>: <查找方法1> [<查找方法2>...] [动作修饰符]

主要数据库类型

  1. ​passwd​​ – 用户账户信息
  2. ​group​​ – 用户组信息
  3. ​shadow​​ – 用户密码信息
  4. ​hosts​​ – 主机名和IP地址解析
  5. ​services​​ – 网络服务定义
  6. ​networks​​ – 网络名和网络号
  7. ​protocols​​ – 网络协议信息
  8. ​rpc​​ – 远程过程调用名
  9. ​ethers​​ – 以太网MAC地址

常见查找方法

  1. ​files​​ – 从本地文件读取(如/etc/passwd)
  2. ​dns​​ – 使用DNS解析(主要用于hosts)
  3. ​nis​​ – 使用NIS(YP)服务
  4. ​ldap​​ – 使用LDAP目录服务
  5. ​compat​​ – 兼容模式(支持+/-语法)
  6. ​sss​​ – 使用System Security Services Daemon

动作修饰符

  1. [SUCCESS=return] – 找到结果后立即返回
  2. [NOTFOUND=return] – 未找到时立即返回
  3. [UNAVAIL=return] – 服务不可用时立即返回
  4. [TRYAGAIN=return] – 临时失败时立即返回

典型配置示例

复制
passwd: files group: files shadow: files hosts: files dns networks: files protocols: files services: files

验证方法

使用getent命令验证配置:

bash
复制
getent passwd username getent hosts hostname

注意事项

  1. 修改前应备份原文件
  2. 错误的配置可能导致系统服务异常
  3. 大多数服务会动态重新读取此文件,无需重启

结论

nsswitch.conf是系统基础服务解析的核心配置文件,它通过定义查询顺序和方式,控制系统如何获取各类基础信息。正确的配置对系统正常运行至关重要,建议在修改前充分测试,并保留可回退的方案。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>