मेरे आर्क लिनक्स सिस्टम पर (लिनक्स कर्नेल 3.14.2) बाइंड माउंट्स केवल पढ़ने के विकल्प का सम्मान नहीं करते हैं
# mkdir test
# mount --bind -o ro test/ /mnt
# touch /mnt/foo
फ़ाइल बनाता है /mnt/foo
। में प्रासंगिक प्रविष्टि /proc/mounts
है
/dev/sda2 /mnt ext4 rw,noatime,data=ordered 0 0
विकल्प माउंट मेरी अनुरोध किया विकल्पों से मेल नहीं है, लेकिन बाँध के व्यवहार पढ़ें / लिखें दोनों से मेल माउंट करते हैं और विकल्प के लिए इस्तेमाल किया मूल रूप से माउंट /dev/sda2
पर/
/dev/sda2 / ext4 rw,noatime,data=ordered 0 0
यदि, हालांकि, मैं माउंट को रिमूव करता हूं तो यह रीड ओनली ऑप्शन का सम्मान करता है
# mount --bind -o remount,ro test/ /mnt
# touch /mnt/bar
touch: cannot touch ‘/mnt/bar’: Read-only file system
और संबंधित प्रविष्टि /proc/mounts/
/dev/sda2 /mnt ext4 ro,relatime,data=ordered 0 0
लगता है कि मैं क्या उम्मीद कर सकता हूं (हालांकि सच में मैं test
निर्देशिका का पूरा रास्ता देखने की उम्मीद करूंगा )। /proc/mounts/
ऑर्निगल माउंट /dev/sda2/
ऑन की प्रविष्टि /
भी अपरिवर्तित है और पढ़ने / लिखने के लिए बनी हुई है
/dev/sda2 / ext4 rw,noatime,data=ordered 0 0
इस व्यवहार और आस-पास के काम को कम से कम 2008 के बाद से जाना जाता है और इसे मैन पेज के दस्तावेज में दर्ज किया गया हैmount
ध्यान दें कि फाइल सिस्टम माउंट विकल्प मूल आरोह बिंदु पर ही बने रहेंगे, और -bind / - rbind के साथ -o विकल्प पास करके नहीं बदले जा सकते हैं। माउंट विकल्पों को एक अलग रिमाउंट कमांड द्वारा बदला जा सकता है
सभी वितरण समान नहीं हैं। आर्क चुपचाप विकल्पों का सम्मान करने में विफल रहता है, जबकि डेबियन एक चेतावनी उत्पन्न करता है जब बाइंड माउंट को केवल पढ़ने के लिए माउंट नहीं मिलता है
mount: warning: /mnt seems to be mounted read-write.
ऐसी खबरें हैं कि यह व्यवहार डेबियन लेनी और स्क्वीज़ में "निश्चित" था, हालांकि यह एक सार्वभौमिक सुधार प्रतीत नहीं होता है और न ही यह अभी भी डेबियन व्हीज़ी में काम करता है। बाइंड माउंट बनाने के साथ मुश्किल से जुड़ा क्या है शुरुआती माउंट पर रीड ऑप्शन का सम्मान?
mount -t bind
और एक सहायक स्क्रिप्ट bugs.launchpad.net/ubuntu/+source/mountall/+bug/519380
/etc/mtab
। प्रारंभिक माउंट के बाद प्रविष्टि का कहना है कि माउंट आरडब्ल्यू है और रिमाउंट के बाद यह आरओ कहता है, इसलिए यह माउंट की स्थिति को सही ढंग से रिपोर्ट कर रहा है। यह केवल माउंट कमांड है जो विफल रहता है।
mount --bind -o ro
दोनों के साथ काम नहीं कर रहा है , वे दोनों एक संदेश को थूकते हैं, mount: warning: «mountpoint» seems to be mounted read-write.
इसलिए ऐसा लगता है कि डेबियन गिरा या किसी बिंदु पर पैच खो गया ... रिमाउंट हालांकि काम करता है।