重启后,/home 和其他地方的虚拟机不断消失。我正在运行 vmplayer 6.0.1 和 ubuntu 12.04。我尝试删除 /home 下的 .vmware,但问题仍然存在。
saad@beast:~$ ls -l /home/saad/.vmware
total 12
-rw-rw-r-- 1 saad saad 426 Feb 6 10:23 player.log
-rw-rw-r-- 1 saad saad 1114 Feb 6 10:13 playerUploadedData.log
-rw------- 1 saad saad 301 Feb 6 10:23 preferences
答案1
我也遇到了库消失的问题。这很可能与包含最近使用文件列表的 ~/.local/share/recently-used.xbel 文件有关。
henning@henning-T60:~/.local/share$ ls -la recently-used.xbel
-rw------- 1 henning henning 1385 mars 23 09:27 recently-used.xbel
有时(我也不知道具体原因)文件的所有者和组从 henning 更改为 root。 手动启动
vmplayer
然后将会抱怨无法访问最近使用的.xbel 文件。
假设对 vm 的引用仍然在最近使用的.xbel 文件中,它应该可以使用以下命令重新获得对该文件的访问权限
sudo chown henning: recently-used.xbel
我尝试使用 inotify-interface 监视对文件的访问
inotifywait -m ~/.local/share/recently-used.xbel
通常在启动时会出现:
henning@henning-T60:~/.local/share$ inotifywait -m recently-used.xbel
Setting up watches.
Watches established.
recently-used.xbel OPEN
recently-used.xbel ACCESS
recently-used.xbel CLOSE_NOWRITE,CLOSE
关闭 vmplayer 时会出现:
recently-used.xbel ATTRIB
recently-used.xbel DELETE_SELF
因此,文件的属性被改变并且文件被删除,但由于它之后仍然在目录中,所以以某种方式再次重新创建。
在 vmplayer 启动时使用 strace 记录到 test.log
henning@henning-T60:~/.local/share$ sudo strace -e trace=file -o test.log vmplayer
进而
henning@henning-T60:~/.local/share$ more test.log | grep 'recently-used'
access("/home/henning/.recently-used.xbel", F_OK) = -1 ENOENT (No such file or directory)
open("/home/henning/.local/share/recently-used.xbel", O_RDONLY|O_LARGEFILE) = 7
open("/home/henning/.local/share/recently-used.xbel.XVW5CX", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0666) = 23
lstat64("/home/henning/.local/share/recently-used.xbel", {st_mode=S_IFREG|0600, st_size=218, ...}) = 0
rename("/home/henning/.local/share/recently-used.xbel.XVW5CX", "/home/henning/.local/share/recently-used.xbel") = 0
chmod("/home/henning/.local/share/recently-used.xbel", 0600) = 0
因此,创建了一个新文件 recent-used.xbel.XVW5CX,然后将其重命名为 recent-used.xbel
答案2
我使用的是 Ubuntu 16 版和 vmwareworkstatin 12
解决此问题的最佳方法是执行以下操作:
打开终端并转到主目录或 /home/userid
现在在 Home/Userid 内创建一个新文件夹“ mkdir VMware_Temp ”
然后将现有文件夹 /home/userid/vmware 中的所有内容复制到新的 VMware_Temp Dir
现在这里是修复:从命令提示符或 Shell 提示符运行这个简单的命令:因为我们需要删除 .vmware 文件夹,因为它现在已损坏。“sudo rm -r $HOME/.vmware”
然后返回到 Ubuntu 上的 GUI 或桌面并打开 VMware Workstation。创建一个虚拟机并选择我将稍后安装操作系统。
现在您应该可以看到您刚刚创建的新 VM。因此请关闭 Vmware 工作站并重新打开 vmwareworkstation,看看新 VM 是否仍然存在!
返回您创建的 VMware_Temp 文件夹,然后再次将所有内容剪切并粘贴回文件夹 /Home/userid/vmware 内
然后在 VMware 工作站内对要运行的虚拟机执行文件>打开> /Home/Userid/vmware/“vmware 文件夹名称”。
现在对在 vmware 文件夹内安装的每个虚拟机执行上述操作。
然后关闭您的 VMware Workstation 并立即重新打开!您应该会看到您创建的所有虚拟机列表
玩得开心!
您需要像这样删除 .VMware 文件夹。
大学教师