在 CentOS 5.3 服务器上,/var 文件夹已更改为文件。似乎是 FS 损坏。
FS 的其余部分看起来不错。有人知道修复此问题的快速方法吗?即使使用强制检查,fsck.ext3 也会报告 fs 是干净的。
看起来机器的电源被切断了,当它恢复供电时就是这个样子。
答案1
我认为您可能遇到了相当多的问题,因为任何数据库、网站、邮件假脱机和日志目录都可能已经在那里消失。
如果您在该服务器上有任何重要数据,我强烈建议您在开始处理磁盘之前对磁盘进行块级备份。dd if=/dev/XXX of=/somewhere/else/disk.img(来自内存!)
虽然 knweiss 的答案会重建你的 rpm 目录和程序特定的目录,并可能让你继续使用服务器,但你需要进入文件系统内部来尝试恢复任何有意义的东西。
我还会担心您尚未注意到的任何其他丢失的目录。(......我会假设它确实是一个文件,而不仅仅是一个空目录,其中 var 位于无法挂载的单独分区上。)
答案2
删除该文件并/var
从备份中恢复该文件夹。
如果您没有备份,您可以rpm -ivh --replacepkgs filesystem...rpm
重新安装“文件系统” rpm。这将创建 /var 的空文件夹层次结构。然后重新启动。现在,如果应用程序由于 /var 中缺少某些内容而仍然无法运行,请对其 rpm 执行相同操作。