我的情况
我使用Virtual Box创建一个安装了Arch Linux的虚拟机。我将虚拟机用于我自己的项目:我的所有项目数据都在这个虚拟机中,因此我可以轻松地从操作系统或物理计算机切换,并立即获得所有数据。在这个虚拟机中,我安装了GitLab、备份系统、SMTP和Samba等等。
虚拟机有两个SATA虚拟硬盘:
- 8gb动态vmdk硬盘分割成2gb的文件,安装了操作系统。
- 2tb动态vmdk硬盘分割成2gb的文件,其中保存了我所有的项目数据
无论我用我的Ubuntu与虚拟机一起工作,从samba访问我的文件,一切都表现得很完美。当我使用Windows时,在正确关闭我的机器后(请参阅下面的bash命令),我得到一个vmdk头损坏的可能性。我尝试关闭Windows系统的三次中有两次出现了这个问题,我在Ubuntu系统中还没有遇到过这个问题。
这是我用来关闭Arch的命令,safe_shutdown.sh
:
systemctl stop smbd
umount /mnt/projects
systemctl poweroff
被迫频繁使用修理工具
我试过从VirtualBox关闭机器,只使用systemctl poweroff
,使用ACPI关机,从任务管理器关闭所有进程,在关机前断开samba映射的网络驱动器,…一切。这都导致相同的结果,有我的vmdk头损坏,不得不使用修复工具:
vmware-vdiskmanager.exe -R projects.vmdk
这个工具总是告诉我在磁盘上发现了问题,并且都已经修复了。在此之后,机器再次工作,没有重大问题,有时我发现一个损坏的文件时,哈希一致性,我不得不使用我的备份来恢复这些文件。
Desesperation
我真的不知道现在该做什么。我是否应该尝试将我的数据移动到另一种虚拟硬盘格式?调整我的虚拟硬盘大小?我应该查找哪些日志?
<标题> 我的细节我在Windows上使用5.1.2 r108956
VirtualBox版本。
虚拟盒错误
Could not open them medium '[projects.vmdk]` VMDK: inconsistency between grain
table and backup grain table in '[projects.vmdk]' (VERR_VD_VMDK_INVALID_HEADER).
虚拟机日志
因为我总是在得到错误后修理我的机器,因为我需要不断使用我的数据,我不能只提供最后的日志,而是所有的日志。我已经把它们上传到Google Drive文件夹:https://drive.google.com/drive/folders/0BzoIZrf3afiGRHo0Y2U5c19OdEE?usp=sharing
Samba配置[projects]
comment = projects folder
path = /mnt/projects
available = yes
guest ok = no
read only = no
writable = yes
valid users = archuser
write list = archuser
browseable = yes
create mask = 0600
directory mask = 0700
public = yes
标题>尝试使用virtualbox 4.x。x版本。用fsck
和badsectors
扫描驱动器的坏扇区。您可能遇到兼容性问题或损坏的文件系统。