背景
如果经常需要用到虚拟机的话,就肯定需要虚拟机和宿主机之前能够任意的交换数据,能够方便的无障碍复制粘贴
以前用windows虚拟机的时候,可以通过安装 VMware Tools
实现
但是在使用ubuntu 桌面版式,发现,无法安装 VMware Tools
或者 虽然通过其他方法安装了也还是无法做到无障碍的复制粘贴
这个问题一直困扰着我好久,终于在不懈努力之下,再往上找到了一个解决办法
原因
之前安装 VMware Tools
之后仍然不能正常实现主机与Ubuntu之间的复制及文件拖拽的原因是,
从Ubuntu14.04开始,open-vm-tools
代替了官方的 VMware Tools
,所以要重新安装新的 open-vm-tools
。
解决办法
卸载旧 VMware Tools
如果之前安装 VMware Tools
,需要把 VMware Tools
卸载掉
方法自行解决
安装 open-vm-tools
sudo su - //进入到管理员模式
apt-get install open-vm-tools open-vm-tools-desktop //安装命令
vmware-user //开启服务
完成上述操作没有报错的,情况下,基本就可以实现无障碍复制粘贴了
关于 文件的传输,实际测试,拖拽文件还是无法实现的(不知道是什么原因),但是可以通过 复制粘贴 来传输文件。
所以基本解决了问题
注意:
虽然运行了vmware-user
命令就可以正常复制粘贴了,但是也只能保证本次打开虚拟机有效
如果希望每次开机都能自动执行,可以考虑使用systemd服务来管理
systemd服务的其中一个类型是oneshot
,就是只需要执行一次的任务型服务,就非常适合目前的需求
编写service配置文件
# /etc/systemd/system/vmware-user.service
[Unit]
Description=开机启动一次vmware-user
After=network.target
[Service]
Type=oneshot
ExecStart=vmware-user
[Install]
WantedBy=multi-user.target
重新加载systemd配置
systemctl daemon-reload
设置开机自启
systemctl enable vmware-user
测试
重启系统后,检查任务是否完成
systemctl status vmware-user.service
○ vmware-user.service - 开机启动一次vmware-user
Loaded: loaded (/etc/systemd/system/vmware-user.service; enabled; vendor p>
Active: inactive (dead) since Wed 2024-03-06 14:53:45 CST; 19s ago
Process: 1138 ExecStart=vmware-user (code=exited, status=0/SUCCESS)
Main PID: 1138 (code=exited, status=0/SUCCESS)
CPU: 2ms
Mar 06 14:53:45 dev systemd[1]: Starting 开机启动一次vmware-user...
Mar 06 14:53:45 dev systemd[1]: vmware-user.service: Deactivated successfully.
Mar 06 14:53:45 dev systemd[1]: Finished 开机启动一次vmware-user.
可以看到退出状态为 (code=exited, status=0/SUCCESS)
表示成功退出
然后再测试与宿主机之间复制粘贴文本和文件,基本正常。
标签:systemd,虚拟机,宿主机,vmware,复制粘贴,user,Tools,VMware From: https://www.cnblogs.com/guangdelw/p/18056653