转发 : Linux(centos)系统各个目录的做用详解 推荐html
文件系统的类型 linux
LINUX有四种基本文件系统类型:普通文件、目录文件、链接文件和特殊文件,可用file命令来识别。 shell
普通文件:如文本文件、C语言元代码、SHELL脚本、二进制的可执行文件等,可用cat、less、more、vi、emacs来察看内容,用mv来更名。 数据库
目录文件:包括文件名、子目录名及其指针。它是LINUX储存文件名的惟一地方,可用ls列出目录文件。 windows
链接文件:是指向同一索引节点的那些目录条目。用ls来查看是,链接文件的标志用l开头,而文件面后以"->"指向所链接的文件。 centos
特殊文件:LINUX的一些设备如磁盘、终端、打印机等都在文件系统中表示出来,则一类文件就是特殊文件,常放在/dev目录内。例如,软驱A称为/dev/fd0。LINUX无C:的概念,而是用/dev/had来自第一硬盘。 浏览器
使用者、密码、群组信息缓存
系统上的帐号信息: /etc/passwd服务器
对应的密码信息:/etc/shadow网络
全部的群组信息:/etc/group
根据FHS(File Hierarchy System)定义的各层目录的相关性
对于linux新手来讲,最感到迷惑的问题之一就是文件都存在哪里呢?特别是对于那些从windows转过来的新手来讲,linux的目录结构看起来有些奇怪哦。因此,在这里讲一下linux下的主要目录以及它们都是用来干什么的。
/
This is the root directory. The mothership. The home field. The one and only top directory for your whole computer. Everything, and I mean EVERYTHING starts here. When you type ‘/home’ what you’re really saying is “start at / and then go to the home directory.”
/
这就是根目录。对你的电脑来讲,有且只有一个根目录。全部的东西,我是说全部的东西都是从这里开始。举个例子:当你在终端里输入“/home”,你实际上是在告诉电脑,先从/(根目录)开始,再进入到home目录。
建议在根目录下只接目录,不要直接有档案在根目录下面。
由于开机的时候系统会第一个挂载根目录指定的partition,因此,全部开机过程当中会用到的档案,都应该放到这个partition中,好比/etc,/bin,/dev,/lib,/sbin这五个目录都应该与根目录在一块儿,不能够独立成某个partition。与此相对的,某些目录建议不要和根目录放在同一个partition中,例如:/home,/usr,/var,/tmp等等。
/root
This is where the root user lives. The root user is the god of your system. Root can do anything, up to and including removing your entire filesystem. So be careful using root.
/root
这是系统管理员(root user)的目录。对于系统来讲,系统管理员就比如是上帝,它能对系统作任何事情,甚至包括删除你的文件。所以,请当心使用root账号。这个目录最好和根目录在同一个partition中。
Linux的内核及引导系统程序所须要的文件目录,好比 vmlinuz initrd.img 文件都位于这个目录中。在通常状况下,GRUB或LILO系统引导管理器也位于这个目录。
/bin
Here’s where your standard linux utilities(read programs) live — things like “ls” and “vi” and “more”. Generally this directory is included in your path. What this means is that if you type ‘ls’, /bin is one of the places your shell will look to see if ‘ls’ means anything.
/bin
这里存放了标准的(或者说是缺省的)linux的工具,好比像“ls”、“vi”还有“more”等等。一般来讲,这个目录已经包含在你的“path”系统变量里面了。什么意思呢?就是:当你在终端里输入ls,系统就会去/bin目录下面查找是否是有ls这个程序。
除了/bin之外,/usr/bin,/usr/local/bin也用于存放可执行的二进制文件。/usr/bin和/usr/sbin 相似与“/”根目录下对应的目录(/bin和/sbin),但不用于基本的启动(譬如,在紧急维护中)。大多数命令在这个目录下。
/etc
Here’s where the administrative and system configuration stuff lives. For instance, if you have samba installed, and you want to modify the samba configuration files, you’d find them in /etc/samba.
/etc
这里主要存放了系统配置方面的文件。举个例子:你安装了samba这个套件,当你想要修改samba配置文件的时候,你会发现它们(配置文件)就在/etc/samba目录下。
重要的目录:
/etc/init.d/:全部服务的预设启动script都是放在这里。例如要启动或者关闭iptables的话:
/etc/init.d/iptables start
/etc/init.d/iptables stop
/etc/xinetd.d/:这就是所谓的super daemon管理的各项服务的设定文件目录。
/etc/X11 :与X Window有关的各类设定档案都在这里,尤为是xorg.conf或XF86Config这两个X Server的设定档案。
/dev
Here’s where files that control peripherals live. Talking to a printer? Your computer is doing it from here. Same goes for disk drives, usb devices, and other such stuff.
/dev
这里主要存放与设备(包括外设)有关的文件(unix和linux系统均把设备当成文件)。想连线打印机吗?系统就是从这个目录开始工做的。另外还有一些包括磁盘驱动、USB驱动等都放在这个目录。
在linux系统中,任何装置与接口设备都是以档案的形态存在于这个目录中。只要经过存取这个目录下的某个档案,就等于存取某个装置。在此目录下的档案会多出两个属性,major device number与minor device number。咱们的系统核心就是透过这两个number来判断装置的。比较重要的档案有/dev/null,/dev/tty[1-6],/dev/ttyS*,/dev/lp*,/dev/hd*,/dev/sd*等等。
/home
Here’s where your data is stored. Config files specific to users, your Desktop folder(whick makes your desktop what it is), and any data related to your user. Each user will have their own /home/username folder, with the exception of the root user.
/home
这里主要存放你的我的数据。具体每一个用户的设置文件,用户的桌面文件夹,还有用户的数据都放在这里。每一个用户都有本身的用户目录,位置为:/home/用户名。固然,root用户除外。
/tmp
This is the Temporary folder. Think of it as a scratch directory for your Linux system. Files that won’t be needed by programs once their used once or twice are put here. Many Linux systems are set to automatically wipe the /tmp folder at certain intervals, so don’t put things you want to keep here.
/tmp
这是临时目录。对于某些程序来讲,有些文件被用了一次两次以后,就不会再被用到,像这样的文件就放在这里。有些linux系统会按期自动对这个目录进行清理,所以,千万不要把重要的数据放在这里。
/opt
Here’s where optional stuff is put. Trying out the latest Firefox beta? Install it to /opt where you can delete it without affecting other settings. Programs in here usually live inside a single folder whick contains all of their data, libraries, etc.
/opt
这里主要存放那些可选的程序。你想尝试最新的firefox测试版吗?那就装到/opt目录下吧,这样,当你尝试完,想删掉firefox的时候,你就可 以直接删除它,而不影响系统其余任何设置。安装到/opt目录下的程序,它全部的数据、库文件等等都是放在同个目录下面。
举个例子:刚才装的测试版firefox,就能够装到/opt/firefox_beta目录下,/opt/firefox_beta目录下面就包含了运 行firefox所须要的全部文件、库、数据等等。要删除firefox的时候,你只需删除/opt/firefox_beta目录便可,很是简单。
/opt 表示的是可选择的意思,有些软件包也会被安装在这里,也就是自定义软件包,好比在Fedora Core 5.0中,OpenOffice就是安装在这里。有些咱们本身编译的软件包,就能够安装在这个目录中;经过源码包安装的软件,能够经过 ./configure --prefix=/opt/目录 。
/media
Some distros use this folder to mount things like usb disks, cd or dvd drives and other filesystems.
/mnt
这个目录通常是用于存放挂载储存设备的挂载目录的,好比有cdrom 等目录。能够参看/etc/fstab的定义。有时咱们能够把让系统开机自动挂载文件系统,把挂载点放在这里也是能够的。主要看/etc/fstab中怎 么定义了;好比光驱能够挂载到/mnt/cdrom ,软盘挂载在/mnt/floppy下。这也不是必须的,只要愿意,能够随便找个地方挂载。/media目录与/mnt有些相似
/media
有些linux的发行版使用这个目录来挂载那些usb接口的移动硬盘(包括U盘)、CD/DVD驱动器等等。
/srv
一些服务启动以后,这些服务所须要取用的数据的存放目录。例如,www服务器须要的网页资料就能够放置在/srv/www目录下
/lib,/usr/lib,/usr/local/lib
系统会使用到的函数库放置的目录。程序在运行的过程当中,可能会调用一些额外的功能,须要函数库的支持。这些函数库就放在这里。比较重要的是/lib/modules,这个目录内放置了kernel的相关模块。
/usr
Here’s where you’ll find extra utilities that don’t fit under /bin or /etc. Things like games, printer utilities, and whatnot. /usr is divided into sections like /usr/bin for programs, /usr/share for shared data like sound files or icons, /usr/lib for libraries whick cannot be directly run but are essential for running other programs.Your package manager takes care of the things in /usr for you.
/usr
在这个目录下,包含系统的主要程序、图形接口所须要的档案、额外的函数库、本机自行安装的软件,以及共享目录与文件等。有点像Windows中Program Files和Windows这两个目录的结合。你能够找到那些不适合放在/bin或/etc目录下的额外的工具。好比像游戏阿,一些打印工具拉等等。/usr目录包含了许多子目录: /usr/bin目录用于存放程序;/usr/share用于存放一些共享的数据,好比音乐文件或者图标等等;/usr/lib目录用于存放那些不能直接运行的,但倒是许多程序运行所必需的一些函数库文件。你的软件包管理器(应该是“新立得”吧)会自动帮你管理好/usr目录的。
/usr/bin,/usr/sbin
通常身份使用者与系统管理员可执行的命令。
/usr/include
C/C++等程序语言的头文件(header)与包档案(include)。当咱们以tarball方式(*.tar.gz的方式安装软件)安装某些数据时,会使用到里面的许多档案。
/usr/local
This is where most manually installed(ie. outside of your package manager) software goes. It has the same structure as /usr. It is a good idea to leave /usr to your package manager and put any custom scripts and things into /usr/local, since nothing important normally lives in /usr/local.
/usr/local
这里主要存放那些手动安装的软件,即不是经过“新立得”或apt-get安装的软件。它和/usr目录具备相相似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面,我想这应该是个不错的主意。
/usr/share
共享文件放置目录。
/usr/share/doc
放置一些系统说明文件的地方。
/usr/share/man
man page的档案存放目录。
/usr/src
linux系统相关的程序代码放置目录,例如/usr/src/linux为核心原始码
/usr/X11R6
系统内的X Window System所需的执行档案几乎都放在这
/var
这个目录的内容是常常变更的,看名字就知道,咱们能够理解为vary的缩写。主要放置linux执行过程当中,常态性变更的档案。好比cache档案或者登录档案(log file)。此外,某些软件执行过程当中会写入的数据库档案,例如MySql数据库,也都放入这个目录中。
/var/cache
运行过程当中的缓存
/var/log
这是用来存放系统日志的目录。
/var/lock
某些装置只能被单一程序所使用,好比tab(磁带机),就会将该装置放到这个目录lock起来。
/var/run
某些程序或服务启动后,会将他们的PID放置在这个目录下。
/var/spool
一些队列数据存放的地方。例如,/var/spool/mail放置系统中的邮件。若邮件暂时发布出去,就会放置到/var/spool/mqueue目录下,使用者工做排程(cron)则放置在/var/spool/cron中
/var/www
目录是定义Apache服务器站点存放目录;
/var/lib
程序执行过程当中,须要使用到的数据文件放置目录。好比MySQL的数据库的的存放地;
补充:
/sbin,/usr/sbin,/usr/local/sbin
大可能是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目录是类似的;咱们记住就好了,凡是目录sbin中包含的都是root权限才能执行的。
/lost+found
在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程当中fsck工具会检查这里,并修复已经损 坏的文件系统。 有时系统发生问题,有不少的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。
一般这个目录会自动出如今某个partition最顶层的目录下。例如加装一块硬盘与/disk中,那在这个目录下就会自动产生一个这样的目录/disk/lost+found
/proc
这个目录自己就是一个“虚拟档案系统”,他放置的数据都是在内存当中。例如,系统核心、造成信息、接口设备的状态、及网络状态等等。由于这个目录下的数据都在内存中,因此自己不占任何硬盘空间。
操做系统运行时,进程信息及内核信息(好比cpu、硬盘分区、内存信息等)存放在这里。/proc目录假装的文件系统proc的挂载目录,proc并非真正的文件系统,它的定义能够参见 /etc/fstab 。
/usr
这个是系统存放程序的目录,好比命令、帮助文件等。这个目录下有不少的文件和目录。当咱们安装一个Linux发行版官方提供的软件包时,大多安装在这里。 若是有涉及服务器配置文件的,会把配置文件安装在/etc目录中。/usr目录下包括涉及字体目录/usr/share/fonts ,帮助目录 /usr/share/man或/usr/share/doc,普通用户可执行文件目录/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,超级权限用户root的可执行命令存放目录,好比 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;还有程序的头文件存放目录/usr/include。
关于/opt目录的一个小技巧
在Linux中,/opt目录是存放某些大型软件或者某些特殊软件的目录,好比谷歌浏览器(Google Chrome)默认就是安装在/opt中。可是咱们通常不会把opt单独分在一个区,由于/opt中大多数时候是空的,即便安装了软件也不会太多,并且有 些软件的容量还比较大,这样就会占用/的容量,咱们能够在其它你愿意的地方创建一个目录来将/opt“转移”到别处,好比个人的/usr是单独分在一个 区,容量有50G,这么大的空间不要浪费了不是?并且/usr原本就是安装软件的地方,因此我能够/usr下创建一个叫opt的文件夹,而后右键点击这个 /usr下的opt,选择“建立连接”,获得一个名为“到 opt 的连接”文件,而后把这个文件剪切到/下,将原来的/opt删除,再将“到 opt 的连接”更名为opt就能够了,之后咱们安装在/opt的软件其实是安装到了/usr/opt下(其实是一个符号连接)。
/usr/local 这个目录通常是用来存放用户自编译安装软件的存放目录;通常是经过源码包安装的软件,若是没有特别指定安装目录的话,通常是安装在这个目录中。这个目录下面有子目录。本身看看吧。
/usr/share 系统共用的东西存放地,好比 /usr/share/fonts 是字体目录,/usr/share/doc和/usr/share/man帮助文件。
/var/log 系统日志存放,分析日志要看这个目录的东西;
/var/spool 打印机、邮件、代理服务器等假脱机目录;