mysql.sock 为什么放到 /var/run目录 ?
/var/run是干什么用的
根据linux的文件系统分层结构标准(FHS)中的定义:
/var/run 目录中存放的是自系统启动以来描述系统信息的文件。
比较常见的用途是daemon进程将自己的pid保存到这个目录。
标准要求这个文件夹中的文件必须是在系统启动的时候清空,以便建立新的文件。
为了达到这个要求,linux中/var/run使用的是tmpfs文件系统,这是一种存储在内存中的临时文件系统,当机器关闭的时候,文件系统自然就被清空了。使用df -Th命令能看到类似的输出结果:
文件系统 类型 容量 已用 可用 已用%% 挂载点
none tmpfs 990M 384K 989M 1% /var/run
none tmpfs 990M 0 990M 0% /var/lock
当然/var/run除了保存进程的pid之外也有其他的作用,比如utmp文件,就是用来记录机器的启动时间以及当前登陆用户的。
============================
编译完成启动 mysql 提示如下错误
mysqld_safe Directory '/var/run/mysql' for UNIX socket file don't exists.
创建 /var/run/mysql 文件夹后可以正常启动,重启虚拟机机后又出错 ...