该文章主要来自于网络资料进行整理
目录结构参考地址:
http://www.iteye.com/topic/1125162
http://yangrong.blog.51cto.com/6945369/1288072
http://itlab.idcquan.com/linux/administer/939529_1.html
http://itlab.idcquan.com/linux/administer/939529_2.html
1、linux哲学思想:
1.一切皆文件,把几乎所有的资源,包括硬件设备都组织为文件格式;
2.由众多目的单一的小程序组成,一个程序只做一件事,并且要好,组合小程序完成复杂任务;
3.尽量避免跟用户交互,实现脚本编程,自动完成某些功能;
4.使用纯文本文件保存配置信息,管理员只需使用一款文本编辑器既能完成系统配置工作;
5.提供机制,而非策略,管道是机制,应用管道处理各种数据是策略,机制就是提供各种接口供使用者组合调用得到想要的数据。
2、FHS (Filesystem Hierarchy Standard)意义
linux核心思想一切皆文件,因此,了解linux的文件层次结构以及根据FHS规定的目录名的含义是相当重要的。
Linux和UNIX的文件系统是一个以“/ “为根的阶层式的树状文件结构,/ 因此被称为根目录。
所有的文件和目录都置于根目录/ 之下。根目录/下面有/etc, /usr, /var, /root, /home, /dev等子目录。在早期的UNIX系统中,各个厂家各自定义了自己的UNIX系统的文件系统构成,比较混乱。
为了避免在Linux也产生同样的问题,在Linux面世不久,就开始了对Linux文件系统进行标准化的活动,于1994年推出了名为 FSSTND(Filesystem Standard)的Linux文件系统层次结构标准。
之后,FSSTND标准吸引了UNIX社团的开发人员,他们把FSSTND扩大到UNIX系统,FSSTND就变为FHS (Filesystem Hierarchy Standard)。
3、树状目录结构图
4、目录详细介绍目录(下面红色字体为比较重要的目录)
1./目录(根文件系统)
目录 | 描述 |
---|---|
/ | 第一层次结构的根、整个文件系统层次结构的根目录。 |
/bin | 供所有用户使用的基本命令,不能关联至独立分区,OS启动即会用到的程序。主要有:cat mv netstat pwd rm sync tar touch sort 等等常用的指令。 |
/sbin | 管理类的基本命令,不能关联至独立分区,OS启动即会用到的程序。主要有:dump e2fsck fdisk grub ifconfig ifdown init等等常用的指令 |
/boot | 放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,引导加载器(bootloader, gurb)。建议单独分区,分区大小100M即可 |
/lib | 基本共享库文件,以及内核模块文件(lib/modules) |
/lib64 | 专用于x86_64系统上的铺助共享库文件存放位置 |
/etc | 配置文件目录(纯文本文件),系统主要的配置文件几乎都放置在这个目录内,例如人员的账号密码文件、 各种服务的启始档等等。一般来说,这个目录下的各文件属性是可以让一般使用者查阅的, 但是只有 root 有权力修改。FHS 建议不要放置可执行文件(binary)在这个目录中喔。比较重要的档案有: /etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11/,/etc/fstab, /etc/sysconfig/ 等等。另外,其下重要的目录有: /etc/init.d/:所有服务的预设启动 script 都是放在这里的,例如要启动或者关 闭 iptables 的话:『 /etc/init.d/iptables start』、『/etc/init.d/iptables stop』 |
/home/USERNAME | 这是系统默认的用户家目录(home directory)。在你新增一个一般使用者账号时,不给用户家目录都会归范到这里来。比较重要的是,家目录有两种代号喔:~:代表目前这个用户的家目录,而~dmtsai :则代表 dmtsai 的家目录! |
/root | 系统管理员(root)的家目录。之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有 root 的家目录,所以我们会希望root家目录不与根目录放置在同一个分割槽中。 |
/media | 便捷式移动设备挂载点(cdrom, usb),media 是『媒体』的英文,顾名思义,这个/media 底下放置的就是可移除的装置啦! 包括软盘、光盘、DVD 等等装置都暂时挂载二此。常见的档名有:/media/floppy, /media/cdrom 等等。 |
/mnt | 如果你想要暂时挂载某些额外的装置,一般建议你可以放置到这个目录中。 在古早时候,这个目录的用途与/media 相同啦!只是有了/media 之后,这个目录就用来暂时挂载用了。 |
/dev | 设备文件及特殊文件存储位置(b:block device 离散访问 c:character device 线性访问).任何装置不接口设备都是以档案的型态存在二这个目录当中的。 你只要透过存取这个目录底下的某个档案,就等二存取某个装置啰~ 比要重要的档案有/dev/null, /dev/zero, /dev/tty, /dev/lp*, /dev/hd*, /dev/sd*等等 |
/opt | 这个是给第三方程序软件放置的目录。什么是第三方协力软件啊? 举例来说,KDE这个桌面管理系统是一个独立的计划,不过他可以安装到 Linux 系统中,因此 KDE的软件就建议放置到此目录下了。 另外,如果你想要自行安装额外的软件(非原本的distribution 提供的),那也能够将你的软件安装到这里来。 不过以前的 Linux 系统中,我们还是习惯放置在/usr/local 目录下呢! |
/srv | 系统上运动的服务用到的数据,srv 可以规为『service』的缩写,是一些网络服务启动之后,这些服务所需要取用的数据目录。 常见的服务例如 WWW, FTP 等等。示例来说,WWW 服务器需要的网页资料就可以放置在/srv/www/里面。 |
/tmp | 这是让一般用户或者是正在执行的程序暂时放置档案的地方。 这个目录是任何人都能够存取的,所以你需要定期的清理一下。当然,重要数据不可放置在此目录啊! 因此FHS 甚至建议在开机时,应该要将/tmp 下的数据都删除哦! |
/usr | universal shared read-only data.默认软件都会存于该目录下。用于存储只读用户数据的第二层次;包含绝大多数的(多)用户工具和应用程序。 |
/media | 便捷式移动设备挂载点,media 是『媒体』的英文,顾名思义,这个/media 底下放置的就是可移除的装置啦! 包括软盘、光盘、DVD 等等装置都暂时挂载二此。常见的档名有:/media/floppy, /media/cdrom 等等 |
/var | 变量文件——在正常运行的系统中其内容不断变化的文件,如日志,脱机文件和临时电子邮件文件。有时是一个单独的分区。如果不单独分区,有可能会把整个分区充满。如果单独分区,给大给小都不合适。 |
/proc | 这个目录本身是一个『虚拟文件系统(virtual filesystem)』喔!他放置的数据都是在内存当中, 例如系统核心、进程信息(process)、周边装置的状态及网络状态等等。因为这个目录下的数据都是在内存当中, 所以本身不占任何硬盘空间啊!比较重要的档案例如:/proc/cpuinfo, /proc/dma, /proc/interrupts,/proc/ioports, /proc/net/* 等等。 |
/sys | 这个目录其实跟/proc 非常类似,也是一个虚拟的文件系统,主要也是记录不核心相关的信息。 包括目前已加载的核心模块不核心侦测到的硬件装置信息等等。这个目录同样不占硬盘容量喔! |
/selinux | security enhanced Linux,selinux相关的安全策略等信息的存储位置。 |
/lost+found | 在ext3文件系统中,当系统意外崩溃或机器意外关机,会产生一些文件碎片在这里。当系统在开机启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。当系统发生问题。可能会有文件被移动到这个目录中,可能需要用手工的方式来修复,或移到文件到原来的位置上。 |
2./etc/目录(配置文件目录,纯文本文件)
目录 | 描述 |
---|---|
默认软件都会存于该目录下。用于存储只读用户数据的第二层次;包含绝大多数的用户工具和应用程序。
目录 | 描述 |
---|---|
/var 包括系统一般运行时要改变的数据.每个系统是特定的,即不通过网络与其他计算机共享.
目录 | 描述 |
---|---|
虚拟文件系统,将内核与进程状态归档为文本文件(系统信息都存放这目录下)。
例如:uptime、 network。在Linux中,对应Procfs格式挂载。该目录下文件只能看不能改(包括root)
目录 | 描述 |
---|---|
设备文件分为两种:块设备文件(b)和字符设备文件(c)
设备文件一般存放在/dev目录下,
对常见设备文件作如下说明:
目录 | 描述 |
---|---|
8、Linux下的文件类型:
– (f):普通文件;
d: 目录文件;
b: 块设备;
c: 字符设备;
l: 符号链接文件;
p: 管道文件;
s: 套接字文件;socket;
原创文章,作者:andrewDu,如若转载,请注明出处:http://www.178linux.com/9736
评论列表(2条)
终于看到一篇相对不错的blog, 不过仍有提升空间。加油
很赞