在Linux系统中,/etc/
目录是系统配置文件的核心存放位置,包含了各种系统服务、应用程序和硬件的配置信息。以下是该目录下常见的重要配置文件和子目录:
核心系统配置文件
/etc/hostname
系统主机名配置,直接决定当前系统的名称。/etc/hosts
本地域名解析表,用于将域名映射到IP地址,优先级高于DNS。/etc/resolv.conf
DNS服务器配置,指定系统使用的域名解析服务器。/etc/fstab
文件系统挂载表,定义系统启动时自动挂载的分区和文件系统。/etc/passwd
用户账户信息(不含密码,密码存储在/etc/shadow
)。/etc/group
用户组信息。/etc/sudoers
sudo命令权限配置,控制哪些用户可以以root身份执行命令。/etc/profile
系统环境变量和启动脚本,登录时执行。
网络相关配置
/etc/network/interfaces
网络接口配置(Debian/Ubuntu系统),定义网卡IP、网关等。/etc/sysctl.conf
内核参数配置,可调整网络、内存等系统行为。/etc/ssh/sshd_config
SSH服务器配置,控制SSH连接的安全策略和认证方式。/etc/hosts.allow
和/etc/hosts.deny
TCP wrapper配置,控制哪些IP可以访问特定服务。
服务管理配置
/etc/init.d/
系统服务脚本(SysVinit系统),存放启动/停止脚本。/etc/systemd/
systemd服务管理器配置(现代Linux系统),包含.service
、.target
等单元文件。/etc/crontab
定时任务配置,定义系统级别的周期性任务。/etc/logrotate.conf
日志轮转配置,控制日志文件的大小和保留时间。
应用程序配置
/etc/apache2/
或/etc/httpd/
Web服务器(Apache)配置目录。/etc/nginx/
Web服务器(Nginx)配置目录。/etc/mysql/
或/etc/mariadb/
数据库(MySQL/MariaDB)配置目录。/etc/php/
PHP解释器配置目录,包含php.ini
等文件。/etc/dhcp/
DHCP服务器配置目录。/etc/firewalld/
或/etc/ufw/
防火墙配置(分别对应CentOS/RHEL和Ubuntu/Debian)。
用户环境配置
/etc/bash.bashrc
或/etc/bashrc
Bash shell配置,影响所有用户的交互式Shell行为。/etc/skel/
用户主目录模板,新用户创建时会复制此目录内容。/etc/default/
系统服务默认参数配置,如/etc/default/grub
控制GRUB引导参数。
硬件和驱动配置
/etc/modules
系统启动时自动加载的内核模块列表。/etc/X11/
X Window系统(图形界面)配置目录。/etc/udev/
设备管理器配置,控制硬件设备的识别和命名。
其他常见配置
/etc/localtime
系统时区设置,通常是到/usr/share/zoneinfo/
目录的符号链接。/etc/aliases
邮件别名配置,用于邮件系统转发规则。/etc/motd
登录消息(Message of the Day),用户登录时显示的信息。/etc/security/
安全相关配置,如PAM(可插拔认证模块)和limits.conf(资源限制)。
注意事项
- 修改权限:大部分配置文件需要root权限才能修改。
- 备份原则:修改前建议备份原文件(如
sudo cp /etc/fstab /etc/fstab.bak
)。 - 配置生效:修改后可能需要重启服务(如
sudo systemctl restart sshd
)或系统才能生效。
不同Linux发行版可能略有差异,但核心配置文件基本一致。了解这些配置文件是系统管理和故障排查的基础。