我有基于x86的box运行FreeBSD 10.1。我和其他操作系统一样,用实现了双引导。现在,我将FreeBSD (10.1)上的UFS分区'A‘迁移到基于ext2的Linux分区。我用分区'B‘作为临时存储器。
我遵循下面的程序。
问题:很多时候,Linux中的'B‘挂载失败,建议运行fsck。当我在非交互模式下运行fsck时,它会失败,并建议手动运行。我不能手动运行fsck,因为box是远程定位的。其次,我担心fsck是否会导致数据丢失。
查询:
fsck有多安全?如果文件在操作中被删除,我的框将无法干净地显示出来。fsck下完成的所有可用于调试的操作?在FreeBSD上完成的操作:
#format raw partition as ext2
mkfs.ext2 /dev/mfid0s1f
#mount newly formated partition as backup
mkdir -p /backup
mount /dev/mfid0s1f /backup
#move data for UFS partition mounted as 'data' to ext2 partition
rsync -a /data/* /backup
#reboot the box
reboot在Linux中完成的操作(通过rc.local):
case 1: I try to mount 'backup' without fsck
mkdir -p /backup
mount /dev/sda8 /backup
mount fail with suggestion to run fsck.
case 2: I add non-interective fsck
mkdir -p /backup
e2fsck -p /dev/sda8
fail with : /dev/sda8: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY发布于 2017-09-16 13:51:04
为什么OS要求运行
fsck?
在过去的某一点上,文件系统没有被彻底卸载。系统需要运行fsck来清除不一致之处。
我做错什么了?我使用rsync来移动数据。
从概念上讲,您没有做我看到的任何错误,只是应该运行fsck (见上文)。在这里看到您的rsync命令也会很好。
运行fsck有多安全?如果文件被移除,我的盒子将无法干净地显示出来。
文件系统处于不一致的状态。这可能只是文件系统没有被标记为干净,但在其他情况下是好的。在另一个极端,整个文件系统可能被破坏,理论上您可能会失去一切。大多数情况下,fsck只清除已经删除但尚未从文件系统中删除的文件。
有没有办法记录在fsck下完成的所有操作?
有许多选项可供您选择。一种方法是在其模拟运行模式下使用该命令(请参阅man fsck和man e2fsck):
fsck -n /dev/mfid0p7我强烈建议您不要使用自动恢复标志-p,直到您对它将要进行的修复感到满意为止。
https://unix.stackexchange.com/questions/392610
复制相似问题