/  

根目录。对你的电脑来说,有且只有一个根目录。所有的目录、文件都是从这里开始。举个例子:当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录。

/home

这里主要存放你的个人数据。具体每个用户的设置文件,用户的桌面文件夹,还有用户的数据都放在这里。每个用户都有自己的用户目录,位置为:/home/用户名。当然,root用户除外。

/boot

这个目录主要在放置开机会使用到的文件,包括Linux核心文件以及开机选单与开机所需配置文件等等。 Linux kernel常用的文件名为:vmlinuz,如果使用的是grub这个开机管理程序, 则还会存在/boot/grub/这个目录。

/root

这是系统管理员(root user)的目录。对于系统来说,系统管理员就好比是上帝,它能对系统做任何事情,甚至包括删除你的文件。因此,请小心使用root帐号。

/dev

dev是device的缩写,这个目录中包含了Linux系统使用的所有外部设备对应的设备文件。Linux沿袭了Unix的风格,将所有设备认成是一个文件,访问外设,和访问一个文件,一个目录没有任何区别。

设备文件分为两种:块设备文件(b)和字符设备文件(c)。

一些常见设备文件:

  • /dev/hd[a-t]:IDE接口的硬盘,hda表示第一块硬盘

  • /dev/sd[a-z]:SATA接口的硬盘,sda表示第一块硬盘

  • /dev/fd[0-7]:标准软驱

  • /dev/md[0-31]:软raid设备

  • /dev/loop[0-7]:本地回环设备

  • /dev/null:无限数据接收设备,相当于黑洞

  • /dev/zero:无限零资源

  • /dev/random:随机数设备

  • /dev/tty[0-63]:虚拟终端

  • /dev/ttyS[0-3]:串口

  • /dev/lp[0-3]:并口

  • /dev/console:控制台

/bin

这里存放了标准的(或者说是缺省的)linux的工具,比如像“ls”、“mkdidr”、“cat“、“mv”等等。通常来说,这个目录已经包含在你的“path”系统变量里面了。什么意思呢?就是:当你在终端里输入ls,系统就会去/bin目录下面查找是不是有ls这个程序。

/lib

系统的函数库非常多,而/lib放置的则是在开机时会用到的函数库, 以及在/bin或/sbin底下的指令会调用的函数库。 尤其重要的是/lib/modules/这个目录, 因为该目录会放置与核心相关的模块(驱动程序)。

/etc

这里主要存放了系统配置方面的文件。举个例子:你安装了samba这个套件,当你想要修改samba配置文件的时候,你会发现它们(配置文件)就在/etc/samba目录下。

/tmp

这是临时目录。对于某些程序来说,有些文件被用了一次两次之后,就不会再被用到,像这样的文件就放在这里。有些linux系统会定期自动对这个目录进行清理,因此,千万不要把重要的数据放在这里。

/usr

usr 是 Unix Software Resource的缩写在这个目录下,你可以找到那些不适合放在/bin或/etc目录下的额外的工具。比如游戏,一些打印工具等等。/usr目录包含了许多子目录:/usr/bin目录用于存放程序;/usr/share用于存放一些共享的数据,比如音乐文件或者图标等等;/usr/lib目录用于存放那些不能直接运行的,但却是许多程序运行所必需的一些函数库文件。你的软件包管理器会自动帮你管理好/usr目录的。

/usr/local

这里主要存放那些手动安装的软件,即不是通过apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面,我想这应该是个不错的主意。

/opt

这里主要存放那些可选的程序。你想尝试最新的firefox测试版吗?那就装到/opt目录下吧,这样,当你尝试完,想删掉firefox的时候,你就可以直接删除它,而不影响系统其他任何设置。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。

  举个例子:刚才装的测试版firefox,就可以装到/opt/firefox_beta目录下,/opt/firefox_beta目录下面就包含了运行firefox所需要的所有文件、库、数据等等。要删除firefox的时候,你只需删除/opt/firefox_beta目录即可,非常简单。

/var

/var 包含系统一般运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化或扩充的。包括缓存(cache)、登录文件(logfile)以及某些软件运行所产生的文件,包括程序文件(lock file,run file),或者例如Mysql数据库的文件等。原来 /var 目录中有些内容是在 /usr 中的,但为了保持 /usr 目录的相对稳定,就把那些需要经常改变的目录放到 /var 中了。

/sbin

Linux有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来『设定』系统,其他用户最多只能用来『查询』而已。 放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的指令。 至于某些服务器软件程序,一般则放置到/usr/sbin/当中。至于本机自行安装的软件所产生的系统执行文件(system binary), 则放置到/usr/local/sbin/当中了。常见的指令包括:fdisk, fsck, ifconfig, init, mkfs等等。

/proc

这个目录本身是一个『虚拟文件系统(virtual filesystem)』,他放置的数据都是在内存当中, 例如系统核心、行程信息(process)、周边装置的状态及网络状态等等。因为这个目录下的数据都是在内存当中, 所以本身不占任何硬盘空间!比较重要的文件例如:/proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/* 等等。

/sys

这个目录其实跟/proc非常类似,也是一个虚拟的文件系统,主要也是记录与核心相关的信息。 包括目前已加载的核心模块与核心侦测到的硬件装置信息等等。这个目录同样不占硬盘容量。


参考: 

Linux /dev目录详解和Linux系统各个目录的作用_maopig的专栏-CSDN博客

鸟哥的 Linux 私房菜 -- Linux 的文件权限与目录配置

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐