क्या माउंट द्वारा फाइलों को "छाया" तक पहुंचना संभव है?


18

लिनक्स में, क्या एक फाइल किए गए फाइल सिस्टम पर फ़ाइलों तक पहुंचने का एक तरीका है जो "छाया" किया गया है जब एक उपनिर्देशिका पर एक और फाइल सिस्टम माउंट किया गया था?

उदाहरण के लिए

cd /
mkdir /foo
touch /foo/bar
mount /dev/sda1 /foo
# now, can I still get to /foo/bar on the / filesystem?

मेरे सपनों के समाधान के लिए उन्नत अनुमतियों की आवश्यकता नहीं होगी या एक निश्चित फ़ाइल सिस्टम के लिए विशिष्ट होना चाहिए, लेकिन मैं एक भ्रष्ट फ़ाइल सिस्टम को जोखिम में डाले बिना जो भी स्क्रैप प्राप्त कर सकता हूं, ले लूंगा।

जवाबों:


28

अंतर्निहित फाइल सिस्टम तक पहुंचने के लिए आप माउंट कमांड का उपयोग कर सकते हैं।

$ mkdir /mnt/root
$ sudo mount --bind / /mnt/root
$ cat /mnt/root/foo/bar

ऐसा करने के साथ भ्रष्टाचार का कोई मुद्दा नहीं है, लेकिन इसके लिए फ़ाइल सिस्टम को माउंट करने की अनुमति की आवश्यकता है।


+1, मुझे लगा कि यही mount --bindजवाब है। लेकिन मुझे यकीन नहीं था।
दान डी।

1
+0.95, मैं पूरी तरह से डिफ़ॉल्ट रूप से अप्रतिबंधित होने के बारे में भूल गया। हालाँकि, पिछली बार मैंने कहीं और बाँध लिया, मैं इसे रिबूट किए बिना नहीं कर सका; हो सकता है कि कुछ GUI घटक इसे हथियाने रहे हों। क्या आपने परीक्षण किया है?
user1686

धन्यवाद! मैं एक पल के लिए बाँध माउंट के बारे में सोचा है, लेकिन लगा कि वे पथ नाम के आधार पर काम करते हैं फिर से लिखने और इस प्रकार पुनरावर्ती होगा ...
themel

5

यदि आपके पास रूट है, तो आप mount --moveएक अस्थायी निर्देशिका के शीर्ष पर माउंटेड फ़ाइल सिस्टम कर सकते हैं , फिर इसे बाद में वापस ले जा सकते हैं।

mkdir /bar
mount --move /foo /bar

रूट होने से अंतर्निहित ब्लॉक डिवाइस तक पहुंचने की अनुमति मिलती है, यदि कोई हो, सीधे। Ext4 के लिए, आप debugfsफ़ाइलों को निर्यात करने के लिए उपयोग कर सकते हैं ।

रीड-ओनली एक्सेस कभी भी फाइल सिस्टम को दूषित नहीं कर सकता है ।


निर्देशिका में उनके लिए हैंडल, या फ़ाइल डिस्क्रिप्टर हो सकते हैं। "वर्तमान निर्देशिका" एक संभाल भी है, पथ नहीं। यदि आपके पास किसी निर्देशिका के लिए हैंडल है, तो आप उस स्थान पर माउंट होने पर भी फ़ाइलों को एक्सेस कर सकते हैं। इसके लिए विशेष विशेषाधिकार की आवश्यकता नहीं है, केवल विशेष तैयारी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.