Linux文件系统root/
Linux有很多发行版,不过其File System一直沿用着默认的结构与名称.
root与root/
root用户是Linux的超级用户(Super User),root/是根目录,也即超级用户的家目录,普通用户需要授权才能访问.
/bin/与/sbin/
bin
是binary的缩写,意指这个目录下的文件都是可执行的二进制文件.尽管文件看起来似乎是.txt格式,但是Linux是不按照后缀识别文件类型的.在/bin
底下都是存放着可执行文件或可执行文件的链接(类似于快捷方式),如cp
,cat
等常用命令.
/sbin/
可以猜一下,其实也就是System Binary的缩写,这里存放的命令可以对系统配置进行操作.我们可以在这里看到如ifconfig
,iptables
这样提供查询系统状态信息的命令,另一方面,如果作为普通用户想要修改网卡信息,就需要来自sudo
的授权或者切换成超级用户状态.
/boot/
这里存放系统启动所需要的文件- ~ 不可乱动 ~
/dev/
dev
是device
的缩写,没错,这里存放着所有的设备文件.因为在Linux中,一切都是以文件的形式存在的,所以即使是硬件设备,像硬盘,鼠标,键盘都可以在这个文件夹里找到.
/etc/
这个目录名字比较好玩,“等…“,其实它底下存放着很多程序的配置信息,是一个很常用的目录.
/lib/
lib
是library的缩写,作为”图书馆”它包含着/bin和/sbin中可执行文件的依赖,这些依赖有点像windows系统里的dll
文件./lib也可能表现为lib32或lib64,用以表示操作系统位数.
/media/
这里会有一个以用户名命名的文件夹,里面是自动挂载的设备,如U盘,网络设备等.当插入一个U盘时,系统会自动把U盘给挂载到/media/yihui这个文件夹里(我的用户名是yihui),如果我要访问U盘的内容,就可以在那里找到.
/mnt/
与/media相对,这里是手动挂载设备的地方.因为现在操作系统已经很人性化,一般会自动把设备挂载到/media的目录下.当然,如果我们想打开/dev目录下某个设备的内容,完全可以通过命令把设备挂载到mnt
目录进行操作.
/opt/
opt
是Option的缩写,这里就可以随意一些放置自己下载的软件或者包管理工具下载的软件.
/proc/
proc
是process
的缩写,这里存放的是全部正在运行的程序状态信息.至于为什么里面一大推文件夹都以数字命名,就像/dev下的硬件设备一样,虽然以文件形式存储,却不是真正的文件,这里它是程序和内核交流的一些信息.如果你需要调试应用程序,proc
目录中的信息也许有用.
##/run/与/sys/
run与System?没错,这两个目录分别用来存储某些程序运行时信息和系统需要的一些信息(比如一个brightness的文件中存储则一个数字---那就是你的显卡亮度当你修改这个数字,屏幕亮度会随之变化)
需要注意的是,这两个位置的数据都在内存中,一旦重启,/run和/sys下目录里信息就会丢失----故而这里也不能人为放任何文件.
/srv/
srv
是service`的缩写,主要用来存放服务数据.对于桌面版Linux系统一般是空的,不过对于Linux服务器,Web服务器与ftp文件服务资源这里一般是放东西的.
/tmp/
tmp
是temporary的缩写,存放一些程序的临时文件,比如当前文本文件的备份,或者其他程序的Crashes.tmp
文件在系统重启后一般会被清空,如果没有,可能是删除失败了---这时或许需要你主动删除.
/usr/
usr
是Universal System Resource的缩写,这里存放一些非系统必须的资源./usr目录中又含有/bin/和/sbin目录,也是存放可执行文件或者说命令.
值得一提的是,如果使用Linux桌面版,有时候找不到应用程序的快捷方式,就需要在 /usr/share/applications
中手动配置桌面图标文件
/var/
var
是variable的缩写---属于历史遗留名字.该目录当前一般存放log信息,比如说程序崩溃,防火墙检测到的异常信息等.
值得一提的是,日志信息不会自动删除,因此有时候需要手动删除一下.
/home/
听起来很温暖的样子,这个其实就是普通用户的家目录.在这里可能会有video,audio,music以及desktop等文件夹.值得一提的是,在这里还有一些名称以.
开头的隐藏文件夹,比如.cache
文件夹存放应用缓存数据,config
存放一部分应用程序的配置,还有.local
文件夹下面存放的允许当前用户或超级用户才可以使用的文件,如/,local/bin
下的可执行文件.而即使是超级用户如果没有写全绝对路径,也是不能找到这里仅仅被添加到该用户PATH
环境变量里的命令.
Summary
如果修改系统配置⇒/etc 如果修改用户应用程序⇒/home 如果写了个脚本或程序要用-⇒各种/bin 如果程序崩了⇒/val/log && /tmp找临时”马脚” …