Filesystem Hierarchy Standard - The filesystem standard has been designed to be used by Unix distribution developers, package developers, and system implementors. However, it is primarily intended to be a reference and is not a tutorial on how to manage a Unix filesystem or directory hierarchy.
/bin- 存放常用的终端命令,例如:ls、mount、rm 等等,普通用户和超级用户都可以执行。/sbin- 包含通常只应由超级用户使用的重要管理命令。/boot- 存放系统启动所需的文件,包括 Linux Kernel,一个随机存储磁盘镜像和 Bootloader 的配置文件。/dev- 存放所有的设备文件,这些不是常规文件,而是指系统上的各种硬件设备,包括硬盘驱动器,在 Linux 中访问设备的方式和访问文件的方式是相同的。/etc- 存放系统的全局配置文件,这里面的配置文件会影响系统所有用户的系统环境。系统内所有采用默认安装方式(rpm 安装)的服务配置文件全部保存在此目录中,如用户信息服务的启动脚本,常用的配置文件等。/home- 用户的家目录,每个用户都有自己的家目录。/lib- 存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。/lost+found- 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。/media- 作为外部设备的一个挂载点,比如硬盘或者可移动设备(U盘、DVD、CD)。Linux 系统会自动识别一些设备,例如 U 盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。/mnt- 和/media一样,也是一个挂载点,但是专用于挂载临时的设备,例如网络文件系统。/opt- 用于安装系统额外的软件,这里安装的软件是手动安装的,不受 Ubuntu 软件管理包的管理。/proc- 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。如/proc/cpuinfo是保存CPU信息的,/proc/devices是保存驱动的列表的,/proc/filesystems是保存文件系统。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all。/root- root 用户的家目录,不在/home/中,即使/home/不可用,也允许引导系统。/run- 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。/srv- 该目录存放一些服务启动之后需要提取的数据,包含 HTTP(/srv/www/)或 FTP 等服务的数据目录。/sys- 可以访问的虚拟文件系统,用于设置或获取有关内核系统视图的信息。/tmp- 应用程序使用的临时文件的位置。/usr- 是 Unix 操作系统软件资源所放置的目录,而不是用户的数据,包含大多数用户实用程序和应用程序,类似于 Windows 下的 program files 目录。。FHS 建议所有软件开发者,应该将他们的数据合理的分别放置到这个目录下的次目录,而不要自行建立该软件自己独立的目录。/usr/bin/- 应用程序调用的函数保存位置。/usr/local/- 系统管理员在本机自行安装自己下载的软件(非 distribution 默认提供者),建议安装到此目录, 这样会比较便于管理。举例来说,你的 distribution 提供的软件较旧,你想安装较新的软件但又不想移除旧版, 此时你可以将新版软件安装于/usr/local/目录下,可与原先的旧版软件有分别。该目录下也是具有 bin, etc, include, lib… 的次目录。/usr/src- 内核源代码默认的放置目录。
/var- 这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下,例如日志,数据库,网站和临时脱机(电子邮件等)文件。/var/log/- 其中保存了系统日志文件/var/run/- 一些服务和程序运行后,它们的 PID(进程 ID)保存位置,是/run/目录的软连接。/var/spool/mail/- 新收到的邮件队列保存位置,系统新收到的邮件会保存在此目录中。/var/spool/cron/- 系统的定时任务队列保存位置,系统的计划任务会保存在这里。
