VirtualBox: ปัญหาเกี่ยวกับ symlink ในโฟลเดอร์ที่ใช้ร่วมกัน [ปิด]


14

บางเวลาที่ผ่านมามีด้ายแน่นอนปัญหาเดียวกัน: ไม่สามารถสร้าง symlinks ในโฟลเดอร์ที่ใช้ร่วมกัน ตอนนี้มันปิดแล้ว (ทำไม?) ดังนั้นฉันจึงเริ่มใหม่เพราะฉันมีปัญหานี้แล้วและไม่สามารถหาวิธีแก้ไขได้

คำอธิบายปัญหาสั้น ๆ : โดย attepms เพื่อสร้าง / วาง symlink ในโฟลเดอร์ที่ใช้ร่วมกันเกิดข้อผิดพลาด:

root@devmv:/var/www/sandbox/zf1sandbox# ln -s /lib/ZendFramework/ZF1 ZF1
ln: creating symbolic link `ZF1': Protocol error

ฉันได้พยายามเปิดใช้งาน symlink สำหรับโฟลเดอร์ "workspace" ที่ใช้ร่วมกันของฉันด้วยวิธีต่างๆ:

C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/var/www 1
C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/var/www/ 1
C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/workspace 1
C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/workspace/ 1
C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/M:\workspace 1
C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/M:\workspace\ 1

ฉันไม่ได้รับข้อผิดพลาดเช่น

C:\Windows\system32>VBoxManage setextradata devvm VBoxInternal2/SharedFoldersEnableSymlinksCreate/workspace 1
VBoxManage.exe: error: Failed to create the VirtualBox object!
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available)
VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start.
C:\Windows\system32>VBoxManage setextradata "Dev VM" VBoxInternal2/SharedFoldersEnableSymlinksCreate/workspace 1
VBoxManage.exe: error: Failed to create the VirtualBox object!
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available)
VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start.

แต่มันก็ยังไม่ทำงาน

ฉันได้ติดตั้งOracle VM VirtualBox Extension Pack (สามารถดาวน์โหลดได้ที่นี่ ) แต่มันก็ไม่ต้องการที่จะทำงาน

คงจะดีถ้ามีใครช่วย

ขอบคุณ

System parameter:
Host: Winwows 7 64Bit
Guest: Debian 6.0.6 64Bit
VirtualBox: 4.2.6

แก้ไข:

ข้อมูลเพิ่มเติมบางส่วน:

C:\Windows\system32>VBoxManage getextradata "Dev VM" enumerate
Key: GUI/LastCloseAction, Value: shutdown
Key: GUI/LastGuestSizeHint, Value: 720,400
Key: GUI/LastNormalWindowPosition, Value: 390,158,1424,819,max
Key: GUI/LastScaleWindowPosition, Value: 640,345,640,480,max
Key: GUI/MiniToolBarAlignment, Value: bottom
Key: GUI/SaveMountedAtRuntime, Value: yes
Key: GUI/ShowMiniToolBar, Value: yes
Key: VBoxInternal2/SharedFoldersEnableSymlinksCreate/M:\workspace, Value: 1
Key: VBoxInternal2/SharedFoldersEnableSymlinksCreate/M:\workspace\, Value: 1
Key: VBoxInternal2/SharedFoldersEnableSymlinksCreate/var/www, Value: 1
Key: VBoxInternal2/SharedFoldersEnableSymlinksCreate/var/www/, Value: 1
Key: VBoxInternal2/SharedFoldersEnableSymlinksCreate/workspace, Value: 1
Key: VBoxInternal2/SharedFoldersEnableSymlinksCreate/workspace/, Value: 1

ดังนั้นการเปลี่ยนแปลงการกำหนดค่าได้รับการบันทึก แต่พวกเขาไม่ทำงาน


7
สี่ downvotes และไม่มีใครแสดงความคิดเห็น ทำไมคำถามนี้จึงถูกลดระดับลง ฉันสามารถปรับปรุงได้ แต่ก่อนอื่นต้องรู้ว่ามีอะไรผิดปกติ
automatix

1
ฉันเห็นด้วยว่ามันเป็นของที่นี่ดังนั้นที่นี่ฉันจะขึ้นโหวต
อิฐไม่เปลี่ยนรูป

สำหรับฉันการเรียกใช้ในฐานะผู้ดูแลระบบยังไม่เพียงพอและฉันยังคงได้รับ "ข้อผิดพลาดของโปรโตคอล" เมื่อพยายามสร้าง symlink นี่คือสิ่งที่ใช้งานได้: stackoverflow.com/a/60741351/470749
Ryan

คำตอบ:


20

มันได้ผล!

บน Windows โดยค่าเริ่มต้นเฉพาะผู้ดูแลระบบสามารถสร้าง symlink เมื่อฉันเริ่ม VirtualBox ในฐานะผู้ดูแลฉันสามารถสร้าง symlink ได้โดยไม่มีปัญหา

เพื่อให้สามารถสร้าง symlink ได้โดยไม่ต้องเริ่ม VB ในฐานะผู้ดูแลระบบคุณจะต้องตั้งค่าการอนุญาตนี้สำหรับผู้ใช้ / กลุ่มผู้ใช้ของคุณ นี่คือวิธีการสั้น ๆ

ปัญหาเดียวคือ - ฉันไม่พบวิธีอนุญาตให้สร้าง symlink ให้กับผู้ดูแลระบบผู้ใช้ ฉันไม่รู้ว่าเป็นไปได้หรือไม่


1
แม้จะอนุญาตให้กลุ่ม "ทุกคน" ในนโยบายฉันไม่สามารถทำได้โดยไม่ต้องเรียกใช้เครื่องในฐานะผู้ดูแลระบบ การเรียกใช้vagrant upจากคอนโซลผู้ดูแลระบบแก้ไขปัญหาของฉันได้
Marco Aurélio Deleu

2

จากเอกสารประกอบ :

เริ่มต้นด้วยเวอร์ชัน 4.0 โฟลเดอร์แชร์ของ VirtualBox ยังรองรับลิงก์สัญลักษณ์ (symlink) ภายใต้เงื่อนไขดังต่อไปนี้:

  1. ระบบปฏิบัติการโฮสต์ต้องสนับสนุน symlink (เช่นจำเป็นต้องใช้โฮสต์ Mac, Linux หรือ Solaris)
  2. ขณะนี้มีเพียง Linux และ Solaris Guest Additions ที่สนับสนุน symlink

เนื่องจากโฮสต์ของคุณคือ Windows จึงไม่สนับสนุน symlink


ขอบคุณสำหรับการตอบกลับ แต่ "Windows 7 และ Windows Vista รองรับการเชื่อมโยงสัญลักษณ์สำหรับไฟล์และไดเรกทอรี" ( Wikipedia )
automatix

@automatix เอกสารระบุว่ารองรับเฉพาะโฮสต์ Mac, Linux และ Solaris ดังนั้นฉันเดาว่ามันไม่ได้ถูกใช้กับ Windows
mgorven

เอกสารเพียงกล่าวว่าระบบปฏิบัติการที่เป็นความจำเป็นที่สนับสนุน symlinks (เช่น Mac, Linux, Solaris ... ) Windows รองรับ symlink Ergo symlink ควรทำงานบนโฮสต์ Windows คุณช่วยกรุณาโพสต์ลิงค์ที่คุณอ่านแล้วว่า Windows ไม่รองรับ
automatix

การจำลองลิงก์ Posix ภายใต้ Windowsอธิบายถึงความแตกต่างของการเชื่อมโยงสัญลักษณ์ในระบบปฏิบัติการสองระบบ TL; DR: มีการใช้งานบน Windows แตกต่างกันและไม่ได้รับการตีความว่าเป็น symlink บนระบบปฏิบัติการที่รองรับ Posix
cr0m

1
Symlinks ได้รับการสนับสนุนบน Windows แต่คุณต้องเรียกใช้ในฐานะผู้ดูแลระบบเพื่อให้สามารถสร้างมันได้
Immutable Brick

0

บนโฮสต์ Linux ฉันมีปัญหาที่คล้ายกัน สิ่งที่ฉันทำคือสร้าง symlink ในโฟลเดอร์แชร์บนโฮสต์ แต่ชี้ไปที่โฟลเดอร์ของแขก จากนั้นแขกก็มารับและวิ่งอย่างมีความสุข อาจจำเป็นต้องคิดออกว่าทำไมฉันไม่สามารถทำมันโดยตรงจากแขกในบางจุด แต่นี่เป็นการแก้ไขด่วนที่มีประโยชน์

เช่น:

(โฮสต์:) / var / www / mysharedfolder # ln -s (แขก:) / var / www / mylinkedfolder myfolder

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