linux目录结构及惯例用法
/
文件系统的入口,最高一级目录;/usr
系统存放程序的目录,比如命令、帮助文件等。这个目录下有很多的文件和目录。当我们安装一个__Linux发行版官方提供的软件包__时,大多安装在这里。如果有涉及服务器配置文件的,会把配置文件安装在/etc目录中。/var
这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,__/var/log 这是用来存放系统日志的目录__;__/var/www目录是定义Apache服务器站点存放目录__;__/var/lib 用来存放一些库文件__,比如MySQL,以及MySQL数据库的的存放地;/var/spool 打印机、邮件、代理服务器等假脱机目录;/srv
主要用来存储本机或本服务器提供的服务或数据。(用户主动生产、对外提供服务)__服务器被用作Web开发时,静态资源文件更应该被放在/srv/www下,而不是/var/www下__(因为/srv目录是新标准中才出现的,而且Apache将其设为了web默认目录,所以现在绝大多数人都把web文件放在这里)。如ftp、流媒体服务等也应该被放在/srv对应的目录下。如果对应目录太大,应该另外挂载分区。/opt
Optional application software packages ,也就是__自定义软件包__,有些我们自己编译的软件包,就可以安装在这个目录中;通过源码包安装的软件,可以通过 ./configure –prefix=/opt/,将软件安装到opt目录。这个目录包含所有默认系统安装之外的软件和添加的包。/etc` Editable Text Configuration 存放__系统__程序或者一般工具的配置文件。__如安装了apache2之后,配置文件在/etc/apache2/目录下__。/etc/init.d 这个目录是用来存放系统或服务器以System V模式启动的脚本,这在以System V模式启动或初始化的系统中常见。如apache2的/etc/init.d apache2 start|stop|restart MySQL为/etc/init.d mysql start|stop|restart
/mnt
一般是用于存放挂载储存设备的挂载目录的,比如有cdrom 等目录。有时我们可以把让系统开机自动挂载文件系统,把挂载点放在这里也是可以的。比如光驱可以挂载到/mnt/cdrom 。这是一个普通的加载目录,在这里你可以加载你的文件系统或设备。加载是使一个文件系统对于系统可用的过程。在加载后你的文件可以在加载目录下访问。这个目录通常包含加载目录或用于加载软驱和光驱的子目录。如果需要,你也可以在这里建立其它的加载目录。对于加载目录的位置并没有强制性的要求,你可以在系统的任意位置建立加载目录。建立 /mnt 只是为了使系统更工整的惯例。/tmp
临时文件目录,有时__用户__运行程序的时候,会产生临时文件。 /tmp就用来存放临时文件的。/var/tmp目录和这个目录相似。许多程序在这里建立lock文件和存储临时数据。有些系统会在启动或关机时清空此目录。/boot
包含Linux内核及系统引导程序所需要的文件,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录;/root
Linux超级权限用户root的家目录;/bin
__基础系统__所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, mkdir等。
这个目录中的文件都是可执行的,一般的用户都可以使用。/sbin
大多是涉及__系统管理__的命令的存放,是超级权限用户__root__的可执行命令存放地,普通用户无权限执行这个目录下的命令;这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin 目录是相似的; 我们记住就行了,凡是目录sbin中包含的都是root权限才能执行的。/dev
设备文件存储目录,比如声卡、磁盘… … 这是一个非常有趣的目录,是Linux文件系统的一个闪亮的特性 - 所有对象都是文件或目录。仔细观察这个目录你会发现hda1, hda2等, 它们代表系统主硬盘的不同分区。/dev/cdrom和/dev/fd0代表你的CDROM驱动器和floppy驱动器。看上去可能有些奇怪,但比较文件和硬件的特性这却是十分合理的。它们都可以读出和写入。例如/dev/dsp,这个文件代表你的扬声器。那么写入这个文件的数据都回传送到喇叭。试一试 ‘cat /etc/lilo.conf > /dev/dsp’ 你会听到一些声音。这是你的 lilo.conf 文件的声音!同样,向/dev/ttyS0 ( COM 1 ) 读出或写入数据你可以和接到上面的设备进行通讯。
/home
普通用户默认存放目录 Linux 是多用户环境,所以每一个用户都有一个只有自己可以访问的目录(当然管理员也可以访问)。它们以 /home/username 的方式存在。这个目录也__保存一些应用对于这个用户的配置__,比如 IRC, X 等。/lib
或lib32
或/lib64
库文件存放目录这里包含了__系统__程序所需要的所有共享库文件,类似于 Windows 的共享库 DLL 文件。/lost+found
在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。 有时系统发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。
Linux 应该正确的关机。但有时你的系统也可能崩溃掉或突然断电使系统意外关机。那么启动的时候 fsck 将会进行长时间的文件系统检查。Fsck 会检测并试图恢复所发现的不正确的文件。被恢复的文件会放置在这个目录中。所恢复的文件也许并不完整或并不合理,但毕竟提供了一些恢复数据的机会。/media
即插即用型存储设备的挂载点自动在这个目录下创建,比如USB盘系统自动挂载后,会在这个目录下产生一个目录 ;CDROM/DVD自动挂载后,也会在这个目录中创建一个目录,类似cdrom 的目录。这个只有在最新的发行套件上才有./proc
虚拟文件系统。该目录中的数据并不是保存在硬盘中,而是保存在内存当中。主要用来保存操作系统运行时进程、外部设备、内核(比如cpu、硬盘分区、内存信息等)等信息。如 /proc/cpuinfo 保存的是CPU信息,/proc/devices 保存的是设备驱动信息列表。/sys
虚拟文件系统。和 /proc 目录相似,里面的数据也是保存在内存中的,它主要用来保存__内核的相关信息__。/run
这个目录和/var/run是类似的,存储了一些系统启动引导时的运行时信息