คำแนะนำเกี่ยวกับhttps://wiki.gentoo.org/wiki/LXDที่คุณพูดถึงนั้นถูกต้อง แต่อาจต้องการคำอธิบายเพิ่มเติมอีกเล็กน้อย
บนโฮสต์ก่อนอื่นให้คุณตรวจสอบความเป็นเจ้าของของไดเรกทอรีที่เก็บข้อมูลคอนเทนเนอร์ วิ่ง
sudo ls -l /var/lib/lxd/containers
และตรวจสอบเจ้าของคอนเทนเนอร์ที่คุณต้องการแชร์ไดเรกทอรีด้วย ในกรณีของฉันuid
และgid
ทั้งคู่เป็น 100,000
จากนั้นใช้สิ่งเหล่านี้เพื่อเปลี่ยนความเป็นเจ้าของของไดเรกทอรีที่คุณต้องการแชร์:
sudo chown 100000:100000 /tmp/share_on_host
แชร์ไดเรกทอรีกับที่เก็บในแบบที่คุณระบุไว้ในความคิดเห็นของคุณ:
lxc config device add mycontainer sharedtmp disk \
path=/tmp/share_on_guest source=/tmp/share_on_host
ตอนนี้ในคอนเทนเนอร์คุณจะเห็นว่าไดเรกทอรี/tmp/share_on_guest
(ฉันจะไม่แนะนำให้ติดไดเรกทอรีของคุณ/tmp
เพราะมันถูกใช้โดยระบบสำหรับสิ่งอื่น ๆ และมีสิทธิ์พิเศษ) เป็นเจ้าของโดย root จากที่นี่คุณสามารถใช้chown
ในคอนเทนเนอร์เพื่อเปลี่ยนความเป็นเจ้าของให้เหมาะสมuid
และgid
สำหรับผู้ใช้ของคุณในคอนเทนเนอร์
ในฐานะที่เป็นบันทึกด้านข้างหลังจากเปลี่ยนความเป็นเจ้าของในภาชนะเป็นเช่นผู้ใช้ที่มีuid
33 คุณจะเห็นในโฮสต์ว่าuid
ตอนนี้มี 1,00033 ซึ่งทำให้รู้สึกรวม
lxc config device add confexample sharedtmp disk path=/tmp source=/tmp/shared
. แต่การดูที่ไดเรกทอรีบนคอนเทนเนอร์เจ้าของและกลุ่มของไฟล์ที่อยู่ในนั้นจะถูกตั้งค่าเป็น 'none' และ 'nogroup' และการเมาท์จะอ่านได้อย่างเดียว