মাউন্ট পয়েন্টের মূল বিষয়বস্তুগুলিতে অ্যাক্সেস


32

আমার হেডলেস এনএএস-এ আমার sdf1(একটি ফ্ল্যাশ-কার্ড) মাউন্ট করার /সময় /homeমাউন্ট করা আছে lv00(সফ্টওয়্যার রেড দ্বারা সমর্থিত একটি এলভিএম ভলিউম)। RAID ব্যর্থ হয়ে গেলে মেশিনটি অ্যাক্সেস করতে সক্ষম হতে, /home/foo/.sshফাইল-সিস্টেমে আমার ssh পাবলিক কী ইত্যাদির একটি অনুলিপি রয়েছে sdf1
যে ফাইল মাউন্ট দ্বারা আড়াল করা হয় আপডেট করতে /homeআমি সাধারণত পুনরারোহণ lv00মধ্যে /mnt/home, আমি, এবং তারপর সরানো আছে কি lv00ফিরে জায়গায়।
আনমাউন্ট না করে /homeকী অর্জনের উপায় আছে ?

উত্তর:


44
mkdir /mnt/root
mount --bind / /mnt/root
ls /mnt/root/home/foo/.ssh

যতক্ষণ আপনি ব্যবহার করবেন --bind(এর বিপরীতে --rbind), আপনি কোনও জিনিস মাউন্ট ছাড়াই মাউন্টের ক্লোন পাবেন।


পারফেক্ট! আমি এই ধারণার সাথে mount --bindঝাঁপিয়ে পড়ছিলাম, তবে কেবল কয়েকটি সংশ্লেষিত ধারণা পেয়েছি যা আমার যখন প্রয়োজন হবে তখনই তা ভেঙে ফেলার নিশ্চিত ছিল। এটি আমার যা প্রয়োজন ঠিক তা করে এবং স্থায়ী মাউন্ট হিসাবে প্রবেশ করতে পারে। ধন্যবাদ
জানুস


অন্যান্য উত্তরের সাথে যেমন কভার করা হয়েছে সেই ডিরেক্টরিটির উপরে যে স্তরটি আপনি আবদ্ধ করতে চান তার উপরে একটি স্তর বাঁধতে হবে - এই উত্তরটি সম্পাদনা করার পক্ষে কি উপযুক্ত? এই উত্তরটি অন্যথায় ভাল, কারণ এটি খাটো এবং তত দ্রুত পড়তে সহজ!
মাইকেল ফারথ

5

আমি অনুরূপ কিছু অর্জন করার চেষ্টা করেছি, তবে মহামান্য উত্তরটি পদ্ধতির শব্দার্থ ব্যাখ্যা করতে পারেনি। এটি আমার পক্ষে ব্যর্থ হয়েছিল এবং তাই আমি আগে ইউনিক্স.এসইতে প্রায় একই প্রশ্নটি জিজ্ঞাসা করেছি একটি মন্তব্যের পরে আমি নিজে থেকে এটি আবিষ্কার করে এর উত্তর দিয়েছি। এই প্রসঙ্গে এই প্রসঙ্গে ফিট করার জন্য এটি আমার উত্তরের একটি সম্পাদিত সংস্করণ। আমি এই প্রশ্নের পক্ষে আমার অন্যান্য প্রশ্ন (এবং উত্তর) সরিয়েছি।

আমি যা করার চেষ্টা করছিলাম তা এখানে:

উদাহরণ কেস

মাউন্ট:

/dev/sda1  on /     type ext4 (rw)
/dev/sdb1  on /data type ext4 (rw)
/data/home on /home type none (rw,bind)

মাউন্টিং পরে /আমি /home/joeব্যবহারকারীর জন্য একটি ফোল্ডার আছে joe। একবার অন্য অবস্থানটি মাউন্ট হয়ে গেলে ( /data) আমার কাছে হোম ফোল্ডারগুলির সম্পূর্ণ সেট পাওয়া যায়, তাই আমি সেগুলি আবদ্ধ করে রাখছি ( /data/home on /home)। এখানে একটি ফোল্ডার রয়েছে /data/home/joe, যতক্ষণ না মাউন্টিং /dev/sdb1সফল হয় ততক্ষণ সে এর সামগ্রীগুলি পেয়ে যাবে /data/home/joe, অন্যথায় সে ফিরে যাবে /home/joe(চালু /dev/sda1!)।

যখন এটি সফল হয়, তখন আমি যে জায়গায় বাঁধাই করা আছে তার পরিবর্তে কীভাবে /home/joe(চালু /dev/sda1!) এর মূল বিষয়বস্তুগুলি অ্যাক্সেস করতে পারি /data/home/joe?

সমাধান

আমার প্রশ্নের বিষয়ে প্যাট্রিকের মন্তব্যের ভিত্তিতে এবং মহামান্য সমাধানের সমাধান (এখানে স্বীকৃত উত্তর), আমি নিম্নলিখিতটি নিয়ে এসেছি।

এটা তোলে হয় করা সম্ভব দৃশ্যত mount --bind(অথবা mount -o bind) উর্ধ্বস্থ ফোল্ডারে ( এই গুরুত্বপূর্ণ অংশ ) একটি এর অন্যত্র বেঁধে-mount ফলে মূল বিষয়বস্তু অ্যাক্সেস করুন। সুতরাং আমার উদাহরণের ক্ষেত্রে চেষ্টা করার পরিবর্তে:

mount --bind /home/joe /home/joe/underneath
# or ...
mount --bind /home /home/joe/underneath

(যেমন ইতিমধ্যে বাইন্ড-মাউন্ট করা অবস্থানগুলি অন্য কোথাও মাউন্ট করুন) আমাকে করতে হয়েছিল:

test -d /.ROOT || mkdir /.ROOT
mount --bind / /.ROOT
mount --bind /.ROOT/home/joe /home/joe/underneath

সুতরাং প্যাট্রিক তার মন্তব্যে এইটাই বোঝাতে চেয়েছিলেন

যদি আপনি /(রুট) উপরের পুনঃনির্মাণ না করেন তবে এই উত্তরটি ঠিক কাজ করা উচিত।

বাইন্ড-মাউন্টড অবস্থানে আপনার পিতা-মাতার ফোল্ডার যতক্ষণ না উপলব্ধ থাকে ততক্ষণ উপরে কাজ করে যেমন এক দিকনির্দেশনা সহ এটি কাজ করবে। যদি আপনি কিছু উপর বাঁধে-র উপরে মাউন্ট /আপনি, ভাগ্য ফুরিয়েছে সেখানে কোন পিতা বা মাতা ফোল্ডার /


আমি যে অনুপস্থিত ছিল তা মূল অংশটি ছিল মাউন্ট ফোল্ডারে Mount ধন্যবাদ।
এইডান

1

আপনি মাউন্টটিকে আনমাউন্ট না করেই কোনও নতুন অবস্থানে সরিয়ে নিতে পারেন mount --move:

$ mount --move /home /mnt/home
do stuff with the local /home
$ mount --move /mnt/home /home

1
ধন্যবাদ মাইকেল। এটি অন্যান্য ব্যবহারকারীদের / বাড়িতে অ্যাক্সেস অযোগ্য করার ক্ষেত্রে একই অসুবিধা রয়েছে।
জানুস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.