/etc是系统配置的“静态总控中心”,/var是运行时数据的“动态存放区”;/etc存放管理员维护的稳定配置文件(如/etc/passwd、/etc/fstab),修改需谨慎备份;/var专存服务自动产生的可变数据(如/var/log日志、/var/lib状态),须定期轮转清理以防磁盘耗尽。

/etc 是系统配置的“静态总控中心”,/var 是运行时数据的“动态存放区”——二者分工明确,一个管“怎么设”,一个管“怎么变”。
/etc:所有配置的权威源头
它存放的是系统和服务启动、运行所依赖的文本配置文件,内容稳定、由管理员主动修改,不随服务运行自动增删。
PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。
- 核心文件如 /etc/passwd(用户列表)、/etc/fstab(磁盘挂载规则)、/etc/ssh/sshd_config(SSH行为定义)直接决定系统行为
- 修改前必须备份,例如 sudo cp /etc/fstab /etc/fstab.bak;部分文件建议用专用工具编辑(如 vipw 编辑 /etc/passwd)
- 语法错误可能引发严重后果:一个多余空格就可能导致 sshd 拒绝加载,甚至系统无法登录
- 不存放日志、数据库、临时缓存等运行时生成的数据——这些放进去会破坏职责边界,导致备份膨胀、升级失败或安全审计异常
/var:专为“变化”而设计的目录
它承载系统运行过程中持续产生、大小不定、生命周期与服务绑定的数据,是唯一被 FHS 明确定义为可频繁写入的系统级目录。
- /var/log 存日志:系统日志(/var/log/syslog)、服务访问日志(/var/log/nginx/access.log)、认证记录(/var/log/auth.log)
- /var/lib 存状态:Docker 镜像、APT 包缓存、MySQL 数据库文件都默认在此,随服务运行自动增长或更新
- /var/www 是 Web 服务默认网站根目录;/var/spool 管理邮件队列、打印任务等“假脱机”作业
- 需定期关注磁盘占用,尤其日志易快速膨胀;推荐搭配 logrotate 实现自动轮转清理
关键区别在于“谁写、何时写、能否共享”
/etc 中的文件由管理员或配置管理工具写入,只读供程序加载;/var 中的文件由服务进程自身持续写入,内容不可预测、不可跨机器共享。
- 误把 /var/log/nginx/access.log 放进 /etc/nginx/,既违反规范,又可能因日志轮转覆盖配置目录
- 把应用数据从 /var/lib/myapp 错挪到 /opt/myapp/data,会导致 systemd-tmpfiles、备份脚本等工具完全识别不到路径
- /etc 内容适合版本控制和批量分发;/var 内容通常被排除在镜像构建和配置同步之外










