黑马程序员技术交流社区

标题: linux讨论之文件系统与目录结构 [打印本页]

作者: 曹睿翔    时间: 2013-4-22 23:33
标题: linux讨论之文件系统与目录结构
本帖最后由 曹睿翔 于 2013-4-23 08:32 编辑

Linux 标准目录结构

初学Linux,首先需要弄清Linux 标准目录结构
我想,不光是我,对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步。
1、什么是文件系统 (可以百度ext3、NTFS、FAT32)
        当您使用Linux的时候,命令行执行 :ls –l /
             就会发现,在/下包涵很多的目录,比如etc、usr、var、bin ... ...等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件。文件系统在Linux下看    上去就象树形结构,所以我们可以把文件系统的结构形象的称为树形结构。
     linux文件系统的最顶端是/,我们称/为Linux的root,也就是 Linux操作系统的文件系统。Linux的文件系统的入口就是/,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。
2、文件系统的类型
      linux有四种基本文件系统类型:普通文件、目录文件、连接文件和特殊文件,可用file命令来识别。
         普通文件:
                 如文本文件、C语言元代码、SHELL脚本、二进制的可执行文件等,可用cat、less、more、vi、emacs来察看内容,用mv来改名。
         目录文件:
                包括文件名、子目录名及其指针。它是LINUX储存文件名的唯一地方,可用ls列出目录文件。  
          连接文件:
               是指向同一索引节点的那些目录条目。用ls来查看是,连接文件的标志用l开头,而文件面后以"->"指向所连接的文件。
        特殊文件:
               LINUX的一些设备如磁盘、终端、打印机等都在文件系统中表示出来,则一类文件就是特殊文件,常放在/dev目录内。例如,软驱A称为/dev/fd0。LINUX无C:的概念,而是用/dev/had来自第一硬盘。

作者: 曹睿翔    时间: 2013-4-22 23:34
本帖最后由 曹睿翔 于 2013-4-23 08:42 编辑

目录结构的详细解说
/
/boot --- 启动Linux时使用的一些核心文件。如操作系统内核、引导程序Grub等。
/home --- 存储普通用户的个人文件
          /ftp --- 用户所有服务
          /httpd
          /samba
          /user1
          /user2
/bin --- 系统启动时需要的执行文件(二进制)、存放普通用户的命令(rm、sort等)
/sbin --- 可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行
/proc --- 系统运行时将相关信息暂存在此目录,包括网络、磁盘、线程信息,虚拟的;

                保存所有内核参数以及系统配置信息
              /1 --- 进程编号
/usr --- 用户目录,存放用户级的文件
             /bin --- 几乎所有用户所用命令,另外存在与/bin,/usr/local/bin
             /sbin --- 系统管理员命令,与用户相关,例如,大部分服务器程序
             /include ---  存放C/C++头文件的目录
             /lib --- 固定的程序数据
             /local --- 本地安装软件保存位置
             /man --- 手工生成的目录
             /info --- 信息文档
             /doc --- 不同包文档信息
             /tmp
             /X11R6 ---  该目录用于保存运行X-Window所需的所有文件。该目录中还包含用于运行GUI要的配置文件和二进制文件。
             /X386 --- 功能同X11R6,X11 发行版5 的系统文件
/boot --- 引导加载器所需文件,系统所需图片保存于此
/lib --- 根文件系统目录下程序和核心模块的公共库
/modules --- 可加载模块,系统崩溃后重启所需模块
/dev --- 设备文件目录
/etc --- 配置文件
          /skel --- home目录建立,该目录初始化
          /sysconfig --- 网络,时间,键盘等配置目录
/var
          /file
          /lib --- 该目录下的文件在系统运行时,会改变
          /local --- 安装在/usr/local的程序数据,变化的
          /lock --- 文件使用特定外设或文件,为其上锁,其他文件暂时不能访问
          /log --- 记录日志
          /run --- 系统运行合法信息
          /spool --- 打印机、邮件、代理服务器等假脱机目录
          /tmp
          /catman --- 缓存目录
/mnt --- 临时用于挂载文件系统的地方。一般情况下这个目录是空的,而在我们将要挂载分区时在这个目录下建立目录,再将我们将要访问的设备挂载在这个目录上,这样我们就可访问文件了。
/tmp --- 临时文件目录,系统启动后的临时文件存放在/var/tmp
/lost+found --- 在文件系统修复时恢复的文件


作者: 曹睿翔    时间: 2013-4-22 23:34
本帖最后由 曹睿翔 于 2013-4-23 08:48 编辑

可能不是很全面,这只是方便大家去查阅的,也是留给我参考,遇到未知的还是百度吧
贴图也是minima的目录

QQ截图20130422204901.png (13.19 KB, 下载次数: 75)

QQ截图20130422204901.png

作者: 曹睿翔    时间: 2013-4-22 23:34
本帖最后由 曹睿翔 于 2013-4-23 08:43 编辑

/:根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中

/bin:/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。

/boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可

/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt。

/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。

注:/etc/X11存放与x windows有关的设置。

/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据

/lib:/usr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。

/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于/disk 中,此目录下就会自动产生目录/disk/lost+found

/mnt:/media:光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。

/opt:给主机额外安装软件所摆放的目录。如:FC4使用的Fedora 社群开发软件,如果想要自行安装新的KDE 桌面软件,可以将该软件安装在该目录下。以前的 Linux 系统中,习惯放置在 /usr/local 目录下

/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等

/root:系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。

/sbin:/usr/sbin:/usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。

/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下

/srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内

/usr:应用程序存放目录,/usr/bin存放应用程序,/usr/share存放共享数据,/usr/lib存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local:存放软件升级包。/usr/share/doc:系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录,使用 man ls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间

/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件/var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下。建议单独分区,设置较大的磁盘空间

作者: 曹睿翔    时间: 2013-4-22 23:35
明早起来排下版
作者: 李志杰    时间: 2013-4-23 22:54
很好很强大啊 啊
作者: 李志杰    时间: 2013-4-23 22:56
果断收藏啦啊
作者: 曹睿翔    时间: 2013-4-23 23:48
李志杰 发表于 2013-4-23 22:56
果断收藏啦啊

多谢支持,我的只是简单的结构,会有集合贴方便查看的
作者: 丑男先生。    时间: 2013-12-10 21:31
{:soso_e179:}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2