linux目录命名需用小写字母、数字、下划线和短横线,禁用空格及shell特殊字符;单名≤255字符、路径≤4096字符;统一小写、语义清晰、层级≤4层;严格遵循fhs标准。

Linux 基础运维中规范目录命名,核心是兼顾可读性、兼容性、安全性和团队协作一致性。不靠系统强制,而靠人为约定和习惯养成。
命名字符要干净
只用小写字母、数字、下划线(_)和短横线(-),禁用空格、中文、括号、星号、问号、尖括号、竖线、引号等特殊字符。这些字符在 Shell 中有特殊含义,不加引号会导致命令解析错误;加引号又增加操作负担,容易遗漏。
- ✅ 推荐:
web_app_config、log-backup-2024 - ❌ 避免:
my config、app(v1)、data?、test|backup
长度与大小写统一
单个目录名不超过 255 字符;整个路径(含所有层级)不超过 4096 字符。严格区分大小写,但实践中应统一用小写——避免因 Config 和 config 混用引发权限或脚本路径错误。
- 同一层级下不能存在仅大小写不同的目录,如
Scripts和scripts会冲突 - 以点(
.)开头的目录默认隐藏(如.cache),除非明确需要隐藏,否则不要用
语义清晰,层级合理
目录名应直接反映用途,避免模糊词如 new、temp、backup_old。优先采用名词短语,动词仅用于特定场景(如 init、migrate)。
- 配置类:用
conf或config(如/etc/nginx/conf.d/) - 日志类:用
log(如/var/log/app/) - 数据类:用
data或更具体名称(如db_data、upload_files) - 避免嵌套过深,常见项目结构建议控制在 3–4 层以内(如
/opt/myapp/{bin,conf,data,log})
遵循标准目录约定
系统级目录严格按 FHS(Filesystem Hierarchy Standard)使用,不擅自挪用或覆盖:
-
/etc:只放静态配置文件,不放脚本或临时数据 -
/var:放运行时变数据(/var/log、/var/spool、/var/run) -
/usr/local或/opt:第三方软件安装目录,子目录命名宜与软件名一致(如/opt/nginx、/usr/local/mysql) - 自定义项目目录建议放在
/srv(服务数据)或用户家目录下(如/home/deploy/app1),避免污染系统路径
不复杂但容易忽略











