我刚刚将服务器升级到 ubuntu 12.04。但由于软件包“initscripts”更新出现错误,上次更新失败:
Setting up initscripts (2.88dsf-13.10ubuntu11) ...
mkdir: cannot create directory `/dev/shm': File exists
dpkg: error processing initscripts (--configure):
subprocess installed post-installation script returned error exit status 1
由于此更新错误,许多其他包处于“损坏”状态而无法更新。
我在网上发现一些说明,这个问题出现在虚拟系统上。这个更新的服务器是 Debian 机器上的 OpenVZ 客户机。
您知道如何解决这个问题吗?
[编辑] 我刚刚发现,/dev/shm 是 /run/shm 的符号链接,而 /run/shm 并不存在。创建文件夹 /run/shm 后,一切正常。
但是这个新目录以及 /run/lock(从 /var/lock 符号链接)在每次 vz 重启时都会消失。
我怎样才能使它们持久呢?
答案1
简短回答:不能。每当机器重新启动时,/dev/shm 都会重新创建,因为它是共享内存设备(基本上是 ramdisk),每次重新启动时都会重置。每次/run
重新启动时整个文件夹也会被清除。
作为一种解决方法,您可以随时将几个mkdir
命令添加到您的/etc/rc.local
文件夹中,以便在重新启动时创建它们。