VirtualBox 双向剪贴板共享在 Linux 客户机操作系统上一段时间后停止工作

VirtualBox 双向剪贴板共享在 Linux 客户机操作系统上一段时间后停止工作

剪贴板共享开始正常工作,但一段时间后它就停止工作了(直到我重新启动机器)。

据我所知,有时客户添加功能会停止工作。我读到我应该看到它vboxadd-timesyn在我的系统上运行。我检查了一下ps -A | grep -i vbox,没有看到它。我得到的只是:

VBoxSerive
VBoxClient
VBoxClient
VBoxClient
VBoxClient

如果确实是问题所在,我该如何重启服务?如果不是,我还能查看什么?

这是关于 Windows 7 主机和 Linux Ubuntu 客户机。

答案1

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 并不是我真正的专业领域,所以我期待这里有一些社区编辑:)

答案2

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

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

之后剪贴板应该就可以工作了。

答案3

我发现在 Linux 客户机(我的情况是 Ubuntu)和 Windows 7 主机(我想这没关系)上,你只需要在客户机上重新启动以下过程:

/usr/bin/VBoxClient——剪贴板

使用 ps 找出进程的 PID 并将其终止。然后再次使用上述命令启动该进程,剪贴板即可重新开始工作。我使用这个作为示例:

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

/usr/bin/VBoxClient——剪贴板

答案4

我遇到了类似的问题:但就我而言,过程/usr/bin/VBoxClient——剪贴板每个会话都会关闭多次。

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

#! /bin/bash

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

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

相关内容