如果
/usr
是安装时会占用½大硬盘容量的目录,那么
/var
就是在系统运作后才会½½占用硬盘容量的
目录。
因为
/var
目录主要针对常态性变动的文件,包括快取
(cache)
、登录档
(log file)
以及某些软件运
作所产生的文件,
包括程序文件
(lock file, run file)
,或者例如
MySQL
数据库的文件等等。常见的次
目录有:
目录
应放置
文件
内容
第一部份:
FHS
要求必须要存在的目录
/var/cache/
应用程序本身运作过程中会产生的一些暂存档;
/var/lib/
程序本身执行的过程中,需要使用到的数据文件放置的目录。在此目录下各自的软件应该要有各自的
目录。
举例来说,
MySQL
的数据库放置到
/var/lib/mysql/
而
rpm
的数据库则放到
/var/lib/rpm
去!
/var/lock/
某些装置或者是
文件
资源一次只能被一个应用程序所使用,如果同时有两个程序使用该装置时,
就
可能产生一些错误的状况,因此就得要½该装置上锁
(lock)
,以确保该装置只会给单一软件所使用。
举
例来说,刻录机正在刻录一块光盘,你想一下,会不会有两个人同时在使用一个刻录机烧片?
如果
两个人同时刻录,那片子写入的是谁的资料?所以当第一个人在刻录时该刻录机就会被上锁,
第二
个人就得要该装置被½除锁定
(
就是前一个人用完了
)
才能够继续使用啰。目前此目录也已经挪到
/run/lock
中!
/var/log/
重要到不行!这
是登录文件放置的目录!里面比½重要的
文件
如
/var/log/messages, /var/log/wtmp(
记
录登入者的信息
)
等。
/var/mail/
放置个人电子邮件信箱的目录,不过这个目录也被放置到
/var/spool/mail/
目录中!
通常这两个目录
是互为链½文件啦!
/var/run/
某些程序或者是服务启动后,会½他们的
PID
放置在这个目录下喔!至于
PID
的意义我们会在后续章
½提到的。
与
/run
相同,这个目录链½到
/run
去了!
/var/spool/
这个目录通常放置一些队列数据,
所谓的『队列』就是排队等待其他程序使用的数据啦!
这些数据被
使用后通常都会被删除。举例来说,系统收到新信会放置到
/var/spool/mail/
中,
但使用者收下该信
件后该封信原则上就会被删除。信件如果暂时寄不出去会被放到
/var/spool/mqueue/
中,
等到被送出
后就被删除。如果是工作排程数据
(crontab)
,就会被放置到
/var/spool/cron/
目录中!
½议在你读完整个基础篇之后,可以挑战
FHS
官方英文文件
(
参考本章
参考数据
)
,相信会让你对于
Linux
操作系统的目录有更深入的了½喔!
.
针对
FHS
,各家
distributions
的异同,与
CentOS7
的变化
由于
FHS
½是定义出最上层
(/)
及次层
(/usr, /var)
的目录内容应该要放置的文件或目录数据,
因此,在
其他次目录层级内,就可以随开发者自行来配置了。举例来说,
CentOS
的网络设定数据放在
/etc/sysconfig/network-scripts/
目录下,但是
SuSE
则是½网络放置在
/etc/sysconfig/network/
目录下,
目录名称可是不同的呢!不过只要记住大致的
FHS
标准,差异性其实有限啦!