最近倒腾 Typecho 和兰空图床常常要用到 /var/www/ 和设置权限,于是整理一下 Linux 常用基础目录及作用。


/ — 根目录

系统的起点,所有文件和目录都挂载在这里。


/etc — 配置文件

系统和服务的配置文件都在这里,例如:

  • /etc/nginx/ — Nginx 配置
  • /etc/php/ — PHP 配置
  • /etc/hosts — 本地 DNS 配置

/var — 可变数据

存放经常变动的数据,比如:

  • /var/log/ — 日志文件
  • /var/www/ — 网站根目录,存放网站文件
  • /var/cache/ — 缓存

/usr — 用户程序和库

大多数安装的软件和命令都在这里,常见子目录:

  • /usr/bin/ — 可执行程序
  • /usr/lib/ — 库文件
  • /usr/share/ — 共享资源(帮助文档、图标等)

/home — 用户家目录

每个普通用户拥有独立的家目录,如 /home/yeyu,用于存放个人数据和配置文件。


/tmp — 临时文件

存放程序运行时的临时文件,系统重启时会清空。目录权限通常是 1777,对所有用户开放写权限,但带有粘滞位(sticky bit),防止用户删除其他人的文件。


/opt — 可选软件包

第三方软件或非包管理器安装的程序一般放在这里,比如商业软件或手动安装的程序。


/dev — 设备文件

包含硬件设备的接口文件,是访问硬件设备和内核接口的特殊文件。


常用目录权限设置建议

不同目录承担不同职责,权限设置合理既保证安全,也确保程序正常运行:

目录推荐属主/属组推荐权限说明
/var/wwwwww-data:www-data755网站文件,Web服务器需要读写访问权限
/var/logroot:admroot:syslog750系统日志文件目录,仅限系统用户访问
/etcroot:root目录:755
文件:644
配置文件目录,通常只允许 root 写入
/home/usernameusername:username700755用户家目录,保护用户隐私
/tmproot:root1777临时文件目录,所有用户可读写,带粘滞位保护

常用命令示例

# 设置 /var/www 的属主和属组
sudo chown -R www-data:www-data /var/www

# 设置 /var/www 的权限为 755
sudo chmod -R 755 /var/www

# 设置 /tmp 目录权限,含粘滞位
sudo chmod 1777 /tmp