Linux文件系统目录结构

  • / 根目录,万物起源。


  • /bin 包含系统启动和运行所必须的二进制程序。


  • /boot 包含 Linux 内核,最初的 RAM 磁盘映像(系统启动时,由驱动程序所需),和 启动加载程序。

/boot/grub/grub.conf or menu.lst, 被用来配置启动加载程序。


/boot/vmlinuz,Linux 内核。



  • /dev 这是一个包含设备结点的特殊目录。“一切都是文件”,也使用于设备。 在这个目录里,内核维护着它支持的设备。

/dev/null:此文件又被称为位桶,发送到此文件的输出将会消失


/dev/pts:伪文件系统/dev/pts是一种Linux内核钩子,属于伪终端支持的一部分,伪终端用于远程登录程序如ssh和telnet,还有xterm及其他图形化终端仿真器


/dev/random和/dev/urandom:这些文件时内核随机数产生器的接口


/dev/zero:从这个文件中获取的输入是一个由数字0构成的无限长的字符串



  • /etc 这个目录包含所有系统层面的配置文件。它也包含一系列的 shell 脚本, 在系统启动时,这些脚本会运行每个系统服务。这个目录中的任何文件应该是可读的文本文件。

/etc/aliases:邮件投递服务系统(通常是sendmail)用这个文件来保存用户的别名

/etc/at.allow、/etc/at.deny、/etc/cron.allow和/etc/cron.deny:这些文件分别指定允许和不允许使用at和crontab工具的用户

/etc/crontab :定义自动运行的任务。

/etc/dumpdates:此文件包含着dump上一次运行的有关信息

/etc/fstab:文件系统(挂载)表,列出了系统管理员所指定的所有可挂载设备

/etc/group:指定特定的组,允许组内的用户共享文件或程序,而不需要向所有系统用户授予对这些文件和程序的访问权限

/etc/hosts:此文件存放着本地系统所了解的其他系统的名称、IP地址和可选的别名

/etc/inittab:初始化表,控制着init进程的行为。在编辑此文件前请先备份个副本,若出现错误可能无法引导系统

/etc/motd:此文件包含当天消息,每次用户使用文本登录方式登录进系统时都会显示该消息

/etc/mtab:当你不带任何参数调用mount时,它会检查此文件,并显示已挂载设备列表

/etc/netgroup:定义网络组,当进行远程登录和远程挂载以及启动远程shell的时候使用该消息来检查权限

/etc/nsswitch.conf:指定系统是否使用NIS、DNS、本地文件或者它们的组合作为特定信息的来源

/etc/pam.d:此目录中的文件指定了PAM应用程序使用的身份验证方法

/etc/passwd:包含用户帐号列表,此文件用来描述系统的用户

/etc/printcap:打印机能力数据库

/etc/profile:此文件中含有系统级的用于环境和启动程序的交互式shell初始化脚本

/etc/protocols:此文件提供了DARPA Internet TCP\IP协议的协议编号、别名和简要定义。请勿修改此文件

/etc/rc.d:此目录存放着系统初始化脚本,又被称为运行命令脚本

/etc/resolv.conf:域名解析程序的配置文件,用来提供对DNS的访问

/etc/rpc:RPC服务到RPC编号的映射关系

/etc/services:此文件列出了系统服务

/etc/shadow:此文件包含着用户的加密口令或MD5散列口令

/etc/sysconfig:此目录包含一个由系统配置文件构成的层次结构



  • /home 在通常的配置环境下,系统会在/home 下,给每个用户分配一个目录。普通只能 在他们自己的目录下创建文件。这个限制保护系统免受错误的用户活动破坏。

~/.bash_profile:此文件保存着单个用户的登录shell初始化脚本


~/.bashrc:此文件包含单个用户的交互式非登录shell初始化脚本



  • /lib 包含核心系统程序所需的库文件。这些文件与 Windows 中的动态链接库相似。


  • /lost+found 每个使用 Linux 文件系统的格式化分区或设备,例如 ext3文件系统, 都会有这个目录。当部分恢复一个损坏的文件系统时,会用到这个目录。除非文件系统 真正的损坏了,那么这个目录会是个空目录。


  • /media 在现在的 Linux 系统中,/media 目录会包含可移除媒体设备的挂载点, 例如 USB 驱动器,CD-ROMs 等等。这些设备连接到计算机之后,会自动地挂载到这个目录结点下。


  • /mnt 在早些的 Linux 系统中,/mnt 目录包含可移除设备的挂载点。


  • /opt 这个/opt 目录被用来安装“可选的”软件。这个主要用来存储可能 安装在系统中的商业软件产品。


  • /proc 它是一个由 Linux 内核维护的虚拟文件系统。它所包含的文件是内核的窥视孔。通过/proc可获取任何运行在计算机上的进程的信息


  • /root root 帐户的家目录。



  • /sbin 这个目录包含“系统”二进制文件。它们是完成重大系统任务的程序,通常为超级用户保留。
/sbin/shutdown   这是一个可用来关闭系统的实用工具



  • /tmp 这个/tmp 目录,是用来存储由各种程序创建的临时文件的地方。一些配置,导致系统每次 重新启动时,都会清空这个目录。



  • /usr 在 Linux 系统中,/usr 目录可能是最大的一个。它包含普通用户所需要的所有程序和文件。

/usr/bin /usr/bin 目录包含系统安装的可执行程序。通常,这个目录会包含许多程序。


/usr/lib 包含由/usr/bin 目录中的程序所用的共享库。


/usr/local 这个/usr/local 目录,是非系统发行版自带,却打算让系统使用的程序的安装目录。 通常,由源码编译的程序会安装在/usr/local/bin 目录下。新安装的 Linux 系统中,会存在这个目录, 但却是空目录,直到系统管理员放些东西到它里面。


/usr/sbin 包含许多系统管理程序。


/usr/share /usr/share 目录包含许多由/usr/bin 目录中的程序使用的共享数据。 其中包括像默认的配置文件,图标,桌面背景,音频文件等等。


/usr/share/doc 大多数安装在系统中的软件包会包含一些文档。在/usr/share/doc 目录下, 我们可以找到按照软件包分类的文档。




  • /var 除了/tmp 和/home 目录之外,相对来说,目前我们看到的目录是静态的,这是说, 它们的内容不会改变。/var 目录是可能需要改动的文件存储的地方。各种数据库,假脱机文件, 用户邮件等等,都驻扎在这里。


/var/log 这个/var/log 目录包含日志文件,各种系统活动的记录。这些文件非常重要,并且 应该时时监测它们。其中最重要的一个文件是/var/log/messages。注意,为了系统安全,在一些系统中, 你必须是超级用户才能查看这些日志文件。







参考:
《The Linux Command Line》
《Linux程序设计》

你可能感兴趣的:(linux,文件系统)