今天在工作中,客户端有rm -rf / dev,最后删除了/ dev / shm中的两个文件,迫使他的网站不再工作.
从我之前学到的东西/ dev不是虚拟的,但是一位技术人员建议重新启动服务器,因为/ dev是虚拟的/ proc.果然我重新启动了服务器和客户端rm -rf’d所在的文件.
所以,我的问题是;是/ dev虚拟?它是那种虚拟的喜欢/ proc吗?有更多的文件吗?如何在不重启服务器的情况下恢复/ dev文件?
解决方法
很长一段时间的答案都是“有点”.
目前,Linux设备树由udev
管理,udev
是几年前取代devfs的用户空间设备管理器. udev使用系统所需的任何设备节点填充/ dev,具体取决于其配置文件中配置的规则.
在最新的Linux系统上,/ dev位于devtmpfs
提供的临时RAM磁盘中.您可以将这些称为虚拟磁盘.
例:
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=6109940k,nr_inodes=1527485,mode=755)
现在/ dev中实际设备节点的唯一原因是在udev启动之前的引导环境.通常在实际文件系统中只需要/ dev / console和/ dev / null,这足以达到可以启动udev的程度.然后它将提供其他一切.