การแชร์คลิปบอร์ดสองทิศทาง VirtualBox หยุดทำงานหลังจากผ่านไประยะหนึ่งบนระบบปฏิบัติการ Linux guest


17

การแชร์คลิปบอร์ดเริ่มทำงานได้ดี แต่หยุดทำงานหลังจากเวลาผ่านไป (จนกว่าฉันจะรีบูตเครื่อง)

จากสิ่งที่ฉันเข้าใจบางครั้งแขกเพิ่มเติมหยุดทำงาน ฉันอ่านว่าฉันควรเห็นการvboxadd-timesynทำงานในระบบของฉัน ฉันตรวจสอบps -A | grep -i vboxแล้วและไม่เห็น สิ่งที่ฉันได้รับคือ:

VBoxSerive
VBoxClient
VBoxClient
VBoxClient
VBoxClient

หากนี่เป็นปัญหาฉันจะเริ่มบริการได้อย่างไร ถ้าไม่ใช่ฉันจะดูอะไรอีก

นี่คือกับโฮสต์ Windows 7 และแขก Linux Ubuntu

คำตอบ:


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
peedee

7

วิธีแก้ไขคลิปบอร์ดที่ใช้ร่วมกันใน VirtualBox

  1. ใน VirtualBox Windows Guest เปิดตัวจัดการงาน
  2. ไปที่แท็บกระบวนการไฮไลต์ VBoxTray.exe และเลือกสิ้นสุดกระบวนการ
  3. ไปที่แท็บแอปพลิเคชันแล้วเลือกงานใหม่
  4. เรียกดูโฟลเดอร์การติดตั้ง VirtualBox Guest Additions และเลือก VBoxTray.exe และเลือกตกลง

คลิปบอร์ดควรทำงานหลังจากนั้น


มันทำงานอย่างไร คำอธิบายคำถามคือ 'แขก Linux Ubuntu' หรือคุณหมายถึง Windows Host
Sentient

คำถามเกี่ยวกับผู้เยี่ยมชม Linux และ VBoxTray.exe จะใช้กับผู้เยี่ยมชม Windows เท่านั้น
RichVel

5

ฉันพบว่าในแขก Linux (Ubuntu ในกรณีของฉัน) และโฮสต์ Windows 7 (ฉันเดาว่าไม่สำคัญ) คุณเพียงแค่ต้องเริ่มกระบวนการต่อไปนี้บนเครื่องแขกของคุณ:

/ usr / bin / VBoxClient --clipboard

ค้นหา PID ของกระบวนการด้วย ps และฆ่ามัน หลังจากนั้นเริ่มต้นกระบวนการด้วยคำสั่งด้านบนอีกครั้งและคลิปบอร์ดเริ่มทำงานอีกครั้ง ฉันใช้สิ่งนี้เป็นตัวอย่าง:

kill $ (ps aux | grep '/ usr / bin / VBoxClient --clipboard' | grep -v grep | awk '{พิมพ์ $ 2}')

/ usr / bin / VBoxClient --clipboard


ขอบคุณที่ให้บริการโซลูชั่นการคัดลอก / วาง! สิ่งที่จับได้: หนึ่งต้องดึงข้อมูลsuperuser.com/questions/536827ในเครื่องแขกเพื่อให้สามารถคัดลอก / วางได้!
starlocke

ฉันพบว่าVBoxClientติดตั้งใน/usr/sbinDebian 8 - สิ่งนี้อาจไม่ได้อยู่ในเส้นทางสำหรับผู้ใช้ที่ไม่ใช่รูท
RichVel

นั่นเป็นวิธีที่มันยืดยาวที่บอกkill pkill -f 'VBoxClient --clipboard'หากคุณไม่สนใจบริการอื่น ๆ คุณสามารถทำได้killall VBoxClient
raylu

1

ลองเรียกใช้vboxadd-timesyn startเพื่อเริ่มบริการใหม่

อีกสิ่งหนึ่งที่ฉันจำได้ว่าอ่านคือการเปลี่ยนการแชร์คลิปบอร์ดจากสองทิศทางเป็นโฮสต์ให้แขก

ที่นี่คุณสามารถค้นหาตั๋วบั๊กเก่าที่มีลักษณะคล้ายกับปัญหาของคุณ มันอ่านมานาน แต่คุณอาจพบคำแนะนำในนั้นมีประโยชน์

สุดท้ายหากไม่มีสิ่งใดแก้ปัญหาได้ฉันขอแนะนำให้คุณเปิดรายงานข้อผิดพลาดในBugtracker ของ VirtualBoxด้วยตัวคุณเองเพราะคุณไม่ใช่คนแรกที่มีปัญหากับคลิปบอร์ดที่ใช้ร่วมกัน


ขอบคุณ! แต่เมื่อฉันพิมพ์vboxadd-timesyn startฉันจะได้รับ: command not found. ข้อเสนอแนะใด ๆ
Amelio Vazquez-Reina

คำสั่งที่มีอยู่: VBoxClient, VBoxClient-all, และVBoxControl VBoxService
Amelio Vazquez-Reina

1
คุณลองวิ่งได้/etc/init.d/vboxadd-timesync startไหม
user1301428

คำสั่งเท่านั้นจบ/etc/init.d/vboxaddมีvboxadd, vboxadd-serviceและvboxadd-x11
เมลิโอ Vazquez-Reina

1
ฉัน googled รอบ bit vboxaddและดูเหมือนว่าคำสั่งที่อาจมีการเปลี่ยนชื่อเป็น หากเป็นจริงคุณอาจต้องการลองเรียกใช้/etc/init.d/vboxaddและคำสั่งที่คล้ายกัน
user1301428

1

ฉันมีปัญหาที่คล้ายกัน: แต่ในกรณีของฉันกระบวนการ/ usr / bin / VBoxClient - คลิปบอร์ดถูกปิดหลายครั้งต่อเซสชัน

ในการจัดการกับที่ฉันสร้างโปรแกรมทุบตี:

#! /bin/bash

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

ฉันเรียกใช้ทุกครั้งที่ฉันสูญเสียความสามารถในการใช้คลิปบอร์ด


ฉันพบว่าปัญหานี้เกิดจากการเพิ่มผู้เข้าพัก VirtualBox ไม่ได้ติดตั้งอย่างถูกต้อง (ขาดการพึ่งพาของส่วนหัวของเคอร์เนล ฯลฯ ทำให้โมดูลเคอร์เนล Virtualbox ไม่ถูกสร้างขึ้น)
RichVel

1

ฉันพบว่าปัญหานี้เกิดจากการเพิ่มผู้เข้าพัก VirtualBox ไม่ได้ติดตั้งอย่างถูกต้อง (ขาดการพึ่งพาของส่วนหัวของเคอร์เนล ฯลฯ ทำให้โมดูลเคอร์เนล 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

อย่างเป็นระบบเพื่อแก้ไขปัญหานี้ (และอาจจะคนอื่น ๆ ) เป็นไปผ่านบุคคลทั่วไปเพิ่ม HOWTO สำหรับลินุกซ์ ชื่อของสคริปต์การติดตั้งมีการเปลี่ยนแปลงตั้งแต่ปี 2009 แต่ HOWTO ยังคงมีประโยชน์มากและให้คำสั่งสำหรับการกระจายสไตล์ Debian / Ubuntu และ RHEL / CentOS


0

ปัญหาอาจเกิดจาก VirtualBox Addons เริ่มต้นไม่ถูกต้อง ลองใช้คำสั่งนี้ในระบบปฏิบัติการ guest:

sudo /etc/init.d/vboxadd start

คำสั่งนั้นทำอะไรให้คุณจริง ๆ ? คุณจะพิมพ์ที่ไหนในโฮสต์ Windows หรือแขกลินุกซ์?
Andrew Lott

@AndrewLott เห็นได้ชัดว่ามันเป็นคำสั่ง Linux ( sudoและinit.dสคริปต์) แต่ถึงกระนั้นก็ยังมีคำอธิบายเพิ่มเติมเล็กน้อยเกี่ยวกับสิ่งที่มันจะดี
slhck

คุณและฉันสามารถบอกได้ว่ามันเป็นคำสั่ง Linux แต่ฉันกำลังคิดถึงผู้เข้าชมรายอื่นที่อาจไม่แน่ใจ
Andrew Lott

0

นี่คือสิ่งที่ใช้ได้ผลสำหรับฉัน ..

ฉันใช้ linux mint 17.1 xfce แพ็คเกจ distro อย่างเป็นทางการรองรับ 4.3.18 .. ฉันอยู่ใน. 22 และมีปัญหาแยกกันมากมายดังนั้นฉันจึงลดระดับเป็น. 18 จากนั้นเมื่อบูตผมก็วิ่งไปที่ Devices -> Insert Guest Additions iso และรันโปรแกรมติดตั้ง. run เป็น root แม้จะมีคำเตือนเกี่ยวกับการตรวจหาเวอร์ชันการติดตั้งแพคเกจ การเล่นชนิดหนึ่ง ไม่มีปัญหากับเครือข่าย & คลิปบอร์ด ฉันคิดว่าสิ่งสำคัญอย่างน้อยสำหรับ distro ของฉันคือการเล่นในแพ็คเกจอย่างเป็นทางการ แต่ใช้ iso ที่มาพร้อมกับลูกค้า

สตีฟ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.