VirtualBox双向剪贴板共享在Linux来宾OS上一段时间后停止工作


17

剪贴板共享开始工作正常,但是一段时间后停止工作(直到重新启动计算机)。

据我了解,有时来宾的添加会停止工作。我读到应该vboxadd-timesyn在系统上运行。我检查了ps -A | grep -i vbox,但没有看到。我得到的是:

VBoxSerive
VBoxClient
VBoxClient
VBoxClient
VBoxClient

如果确实存在问题,如何重新启动服务?如果不是,我还能看什么?

这是Windows 7主机和Linux Ubuntu guest虚拟机。

Answers:


22

Linux一线式:

pkill -f VBoxClient; VBoxClient-剪贴板


Windows powershell脚本。

echo "Trying to restart VBoxClient"

$vbox_process = Get-Process VBoxTray
Write-verbose $vbox_process
$procID = $vbox_process.id

if ($procID  -gt 0)
{    
    $cmdline = (Get-WMIObject Win32_Process -Filter "Handle=$procID").CommandLine
    Write-Verbose $cmdline

    Write-Verbose "Stopping VBoxTray"
    $vbox_process.Kill()
    $vbox_process.WaitForExit()
    Write-Verbose "VBoxTray stopped"

    Write-Verbose "Starting VBoxTray"
    Start-Process -FilePath $cmdline.Split(' ')[0]
    echo "VBoxTray Restarted. All Done"
} else {    
    Write-Warning 'Could not find existing vboxTray process. Launching direct?'
    Start-Process -FilePath "C:\Windows\System32\VBoxTray.exe"     
}

注意:powershell并不是我真正的专业领域,因此我希望在这里进行一些社区编辑:)


1
值得一提的是,这两者都是给客人的。
RichVel

谢谢,这些都很棒!令人遗憾的是,现在已经3年了,这个错误仍然存​​在。
萨克(Sarke)

Linux一线工作非常出色,受到了批评。没有尝试过powershell。
撒尿

7

如何在VirtualBox中修复共享剪贴板

  1. 在VirtualBox Windows Guest中,打开任务管理器
  2. 转到“进程”选项卡,突出显示VBoxTray.exe并选择“结束进程”
  3. 转到应用程序选项卡,然后选择新建任务
  4. 浏览到VirtualBox Guest Additions安装文件夹,然后选择VBoxTray.exe,然后选择确定。

剪贴板应随后工作。


这是如何运作的?问题描述是“ Linux Ubuntu guest虚拟机”还是Windows Host?
Sentient 2014年

问题是有关Linux来宾的,而VBoxTray.exe仅适用于Windows来宾。
RichVel 2015年

5

我发现在Linux guest虚拟机(以我的情况为Ubuntu)和Windows 7主机(我想没关系)上,您只需要在来宾计算机上重新启动以下过程即可:

/ usr / bin / VBoxClient-剪贴板

用ps找出进程的PID并杀死它。然后,使用上述命令再次开始该过程,剪贴板将再次开始工作。我以这个为例:

杀死$(ps aux | grep'/ usr / bin / VBoxClient --clipboard'| grep -v grep | awk'{print $ 2}')

/ usr / bin / VBoxClient-剪贴板


感谢您提供复制/粘贴解决方案!要注意的是:一个人必须在来宾计算机中获取superuser.com/questions/536827才能复制/粘贴!
starlocke 2014年

我发现它VBoxClient已安装在/usr/sbinDebian 8上-对于非root用户,这可能不在路上。
RichVel

kill真是个漫长的说法pkill -f 'VBoxClient --clipboard'。如果您不关心其他服务,则可以killall VBoxClient
raylu

1

尝试运行vboxadd-timesyn start以重新启动服务。

我记得读过的另一件事是将剪贴板共享从双向更改为主机到来宾。

在这里,您可以找到看起来与您的问题相似的旧错误单。这是一本很长的书,但是您可能会在其中找到一些建议。

最后,如果解决不了任何问题,建议您自己在VirtualBox的Bugtracker中打开错误报告,因为您不是第一个遇到共享剪贴板问题的人。


谢谢!但是,当我键入时,vboxadd-timesyn start我得到:command not found。有什么建议么?
Amelio Vazquez-Reina

可用的命令是:VBoxClientVBoxClient-allVBoxControlVBoxService
2013年

1
你可以尝试跑步/etc/init.d/vboxadd-timesync start吗?
user1301428

在完成唯一的命令/etc/init.d/vboxaddvboxaddvboxadd-servicevboxadd-x11
阿梅里奥巴斯克斯-雷纳

1
我已经搜索了一下,看起来该命令可能已重命名为vboxadd。如果是这样,您可能要尝试运行/etc/init.d/vboxadd类似的命令。
user1301428 2013年

1

我有类似的问题:但是在我的情况下,进程/ usr / bin / VBoxClient --clipboard在每个会话中关闭了多次。

为了解决这个问题,我创建了bash程序:

#! /bin/bash

ps aux | grep '/usr/bin/VBoxClient --clipboard' | grep -v grep || /usr/bin/VBoxClient --clipboard

我每次都运行它,我失去了使用剪贴板的能力。


我发现问题是由于VirtualBox Guest Additions没有正确安装(缺少内核头文件的依赖性等导致无法构建Virtualbox内核模块)。
RichVel

1

我发现问题是由于VirtualBox Guest Additions没有正确安装(缺少内核头文件的依赖性等导致无法构建Virtualbox内核模块)。

尝试通过命令行手动安装来宾添加项,并仔细阅读错误。下面的HOWTO有详细说明。

一个技巧是检查的输出sudo lsmod | grep vbox,该输出显示Virtualbox的内核模块-最初是空的。修复后的输出如下:

$ sudo lsmod | grep vbox
vboxsf                 40674  0 
vboxvideo              12405  1 
drm                   203590  3 vboxvideo
vboxguest             173675  6 vboxsf

内核模块完成后,我只需要运行/usr/sbin/VBoxClient --clipboard(在Debian 8 jessie上),剪贴板就可以开始工作了。Virtualbox版本为4.3.30。

我为此设置运行的命令(您可能会有所不同)是:

aptitude install dkms build-essential linux-headers-generic
aptitude install linux-headers-3.16.0-4-586     # See HOWTO, match running kernel
cd /media/cdrom0
sh ./VBoxLinuxAdditions.run 
less /var/log/vboxadd-install.log     # If you get errors

解决此问题(可能还有其他问题)的系统方法是通过LinuxGuest Additions HOWTO。自2009年以来,安装脚本的名称已更改,但是HOWTO仍然非常有用,并提供了Debian / Ubuntu和RHEL / CentOS样式发行版的命令。


0

该问题可能是由于VirtualBox附加组件无法正确启动引起的。在来宾操作系统中尝试以下命令:

sudo /etc/init.d/vboxadd start

该命令实际上对您有什么作用?Windows主机或Linux guest虚拟机在哪里键入?
安德鲁·洛特

@AndrewLott显然,这是一个Linux命令(sudoinit.d脚本)。但是,仍然有更多关于它的作用的解释会很好。
slhck

您和我可以说这是Linux命令,但我在考虑其他不确定的访问者。
安德鲁·洛特

0

这就是对我有用的。

我在Linux Mint 17.1 xfce上。官方发行版软件包支持4.3.18 ..我当时使用.22,并且遇到很多其他问题,所以我降级为.18。然后,一旦启动,我就运行设备->插入来宾添加项iso并以root身份运行.run安装程序。尽管警告了有关检测软件包安装版本的警告,但我还是允许其覆盖。答对了。网络和剪贴板不再有问题。我认为,至少对于我的发行版而言,关键是要简化正式包装,但要使用客户端随附的iso。

-史蒂夫

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.