ทำไมฉันไม่สามารถสร้างซอฟต์ลิงค์บนระบบไฟล์ vboxsf ได้?


23

ln -s ยังคงบอกฉันว่าระบบไฟล์เป็นแบบอ่านอย่างเดียว แต่มันไม่ได้เป็น

ice@distantstar:~/virt 
➜ touch file
ice@distantstar:~/virt 
➜ rm file
ice@distantstar:~/virt 
➜ ln -s ~/.bashrc ~/virt/.bashrc
ln: failed to create symbolic link `/home/ice/virt/.bashrc': Read-only file system
ice@distantstar:~/virt 
➜ mount | grep virt
none on /home/ice/virt type vboxsf (rw,nodev,relatime)
ice@distantstar:~/virt 
➜ cat /etc/fstab | grep virt
VIRT    /home/ice/virt  vboxsf rw   0   0

คำตอบ:


33

ใน Virtual Box 4.1.8 การสร้าง symlink โดยใช้ guest-OS ในโฟลเดอร์แชร์ถูกปิดใช้งานด้วยเหตุผลด้านความปลอดภัย

สำหรับข้อมูลเพิ่มเติมลองดูตั๋วนี้: VirtualBox Ticket 10085 Symlinks Disabled หากต้องการเปิดใช้งานอีกครั้งคุณสามารถลองใช้คำสั่งนี้:

VBoxManage setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARE_NAME 1

ที่SHARE_NAMEเป็นชื่อของโฟลเดอร์ที่ใช้ร่วมกันของคุณ

หรือคุณสามารถลดระดับเป็น 4.1.6 และควรแก้ไขปัญหา


ตกลง. ขอขอบคุณ. ตอนนี้ฉันมีln: failed to create symbolic link `/home/ice/virt/.bashrc': Protocol error
defhlt

2
วิธีแก้ปัญหาที่ดีมาก แต่มีรายงานว่าจะไม่ทำงานอีกต่อไปในรุ่น 4.2 ล่าสุด เมื่อใดก็ตามที่ฉันสร้างลิงก์สัญลักษณ์ในโฟลเดอร์ที่แชร์ (เป็นอิสระจากการถูกทำลาย) ฉันได้รับln: failed to create symbolic link 'linkname': Protocol errorมันเป็นเรื่องน่าเศร้าที่มันไม่ได้รับการแก้ไขอย่างถูกต้อง มีงานใหม่ ๆ ที่ผ่านการตรวจสอบเพื่อทำงานใน 4.2.6+ หรือไม่
gertvdijk

3
@gertvdijk หากคุณใช้งานโฮสต์ Windows คุณอาจต้องการเรียกใช้ VirtualBox ในฐานะผู้ดูแลระบบจำเป็นต้องมีสิทธิ์พิเศษเพื่อให้สามารถสร้าง symlink สไตล์ Windows ได้
Ezequiel Muns

2
อย่าลืมเมื่อคุณรันคำสั่งนี้เพื่อรีสตาร์ทเครื่องเสมือนจริงของคุณ
Jason

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