"প্রতিস্থাপন" বিতরণে ক্রুটিং করার সময় কোন প্রো, সিএস ইত্যাদি বাঁধাই করা উচিত (বা না)?


9

অন্য প্রশ্নের এই উত্তরটি মূলত chrootএটির খুব সীমিত (তবে অপরিবর্তনযোগ্য) পিতামাতার প্রতিস্থাপন হিসাবে ব্যবহার করার জন্য অন্য একটি লিনাক্স বিতরণে অন্তর্ভুক্ত হয়। দৌড়ানোর আগে প্রস্তাবিত ক্রিয়াগুলি chroot, যা আমি আরও ভালভাবে বুঝতে চাই, সেগুলি হ'ল:

cp /etc/resolv.conf etc/resolv.conf
cp -a /lib/modules/$(uname -r) lib/modules
mount -t proc archproc proc
mount -t sysfs archsys sys
mount -o bind /dev dev
mount -t devpts archdevpts dev/pts
  • অনুলিপিটি resolv.confপরিষ্কার (নেটওয়ার্ক / ইন্টারনেট অ্যাক্সেস), যদিও আমি সম্পর্কে নিশ্চিত নই modules- chrootএকটি স্টেজ 3 জেন্টু সিস্টেমে প্রবেশ করার সময় এটিকে আসলে অপ্রয়োজনীয় মনে হয়েছিল, তাই না?
  • তবে কেন proc, sysএবং dev/ptsবাইন্ড-মাউন্ট ব্যবহারের পরিবর্তে পুনঃনির্মাণ করা হয়? এই পরিস্থিতিতে আসল পার্থক্য কী , "আরও সঠিক"?
  • এই HowTo বাঁধাই মাউন্ট procএবং dev, কিন্তু না dev/ptsবা মোটেও মাউন্ট sysকরা হয় না। অতিরিক্তভাবে এটি /etc/{hosts,fstab}নতুন রুটে অনুলিপি করে। যে জানার জন্য? আমি /etc/mdadm.confকি পাশাপাশি অন্তর্ভুক্ত করা উচিত নয় ?

1
এটি বেশিরভাগ ক্ষেত্রে অভিন্ন হওয়া উচিত; নিয়মিত ফাইল সিস্টেমগুলি বিবেচনা করুন: সেগুলি অবশ্যই দু'বার মাউন্ট করা উচিত নয় (যদি না তারা ক্লাস্টার-সচেতন হয়) তবে কার্নেলটি ঠিক এটি করে; সুতরাং এটি মূলত অভ্যন্তরীণভাবে একটি বাঁধার মাউন্টের মতো পরিচালনা করা হয়।
frostschutz

উত্তর:


9

/etc/resolv.conf ডিএনএসগুলি হারাতে না পারে সে জন্য অনুলিপি করা হয়েছে।

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

বনাম-মাউন্টিং পুনরায় মাউন্টিং সম্পর্কে আপনি সত্যই ঠিক indeed Chroot উপর আর্চ লিনাক্স উইকি পৃষ্ঠা ব্যবহার পুনরায় মাউন্ট এবং বাঁধুন-মাউন্ট হিসাবে আপনি উল্লেখ আপনি যে পোস্টটি পড়ুন উত্তর অনুযায়ী, আছে:

cd /mnt/arch
mount -t proc proc proc/
mount -t sysfs sys sys/
mount -o bind /dev dev/
mount -t devpts pts dev/pts/

(আমি মনে করি এটি আপনার লাইনগুলির বাক্য গঠনটি দেখায়, এই পোস্টটি থেকে অনুলিপি করা হয়েছে : ভুলটি মাউন্ট পয়েন্টের আগে মাউন্ট করা হবে)।

তবে ক্রুটে উবুন্টু ম্যান পৃষ্ঠাটি একটি অন্যরকম গল্প বলে:

sudo mount -o bind /proc /var/chroot/proc

এখানে / proc বাইন্ড-মাউন্টড, পুনরায় মাউন্ট করা হয়নি।

আমি আসলে দুটি জিনিসই চেষ্টা করেছি এবং একটি সংক্ষিপ্ত পরীক্ষা চালানোর পরে, আমি কোনও পার্থক্য মনে করতে অক্ষম হয়েছি। পরীক্ষার খুব বেশি নয়, স্বীকৃতভাবেই, এবং আমি এখানে আমার কেসটি এখানে বিশ্রাম নেব যাতে এটি খুব বেশি পার্থক্য না করে।


6
  • /etc/resolv.conf- ডিএনএস অনুরোধগুলি সমাধান করার জন্য আপনার এই ফাইলটি দরকার। এটি কিছু পরিস্থিতিতে প্রয়োজন হয় না:

    1. ক্রুটে একটি ডিএইচসিপি ক্লায়েন্ট পাওয়া যায়, এটি কার্যকর হয় এবং ডিএইচসিপি সার্ভার যথাযথ তথ্য দেয় (সাধারণত এটি হয়)।

    2. /etc/resolv.confক্রুটের অভ্যন্তর থেকে আপনি নেটওয়ার্কিংয়ে আগ্রহী নন (বা আরও নির্ভরযোগ্যভাবে নির্ভর করে এমন সাধারণ অ্যাপ্লিকেশনগুলি থেকে ডিএনএস কোয়েরি তৈরি করা )।

  • /lib/modules/$(uname -r)- সক্রিয় কার্নেলের জন্য আপনাকে অতিরিক্ত কোনও মডিউল লোড করতে হতে পারে সে ক্ষেত্রে তা বোঝায়। এটি ছাড়া আপনি বর্তমানে যা চলছে তার সাথে আটকে যাবেন stuck অতএব আপনি যদি দীর্ঘ সময়ের জন্য ক্রোডযুক্ত সিস্টেমটি পরিচালনা করতে চান তবে আপনার সম্ভবত এটি করা উচিত। অন্যদিকে, সেক্ষেত্রে সম্ভবত আপনার pivot_rootপরিবর্তে ব্যবহার করা উচিত (যা সাধারণত জীবনের শেষে ডিআআরডি করে থাকে)। আপনার যদি কেবল এটির প্রয়োজন হয় যেমন ক্রুট থেকে বুটলোডার ইনস্টল করার জন্য এটি প্রয়োজনীয় হওয়া উচিত নয় (যেহেতু আপনার নিজের মতো করে ক্রুট নিজেই করতে সক্ষম হওয়ার জন্য সমস্ত প্রয়োজনীয় ড্রাইভার লোড করতে হবে)।

  • /procএবং /devবরং সুস্পষ্ট - এগুলিতে বেসিক সিস্টেম ইন্টারফেস রয়েছে।

  • /sysIIRC ছিল না যে ব্যাপকভাবে 2007 সালে ফিরে ব্যবহৃত যা কি স্ল্যাকওয়্যার (যা নিজেই বরং রক্ষণশীল) এর কীভাবে তারিখের করা হয়। এই দিনগুলিতে আপনার সিস্টেমে এটি ব্যতীত কোনওভাবে ব্যর্থ হওয়ার সম্ভাবনা রয়েছে (উদাহরণস্বরূপ একবার কিছু কিছু হার্ডওয়্যার গণ্য করার চেষ্টা করে)।

  • /dev/pts- কয়েক বছর ধরে /devগাছ কীভাবে পরিচালনা করা যায় তার বিভিন্ন পরিবর্তন হয়েছিল। এক পর্যায়ে ডিভাইসগুলি /dev/ptsপরিচালনা করেছিল devfs- সম্ভাব্য সমস্যার আলোচনার জন্য দেখুন এই এলকেএমএল থ্রেড

  • বাইন্ড মাউন্টিং - বাইন্ড মাউন্টগুলির কিছু আকর্ষণীয় দিক রয়েছে (বরং mount(8)ম্যান পৃষ্ঠাতে সুন্দরভাবে ব্যাখ্যা করা হয়েছে )। উদাহরণস্বরূপ:

    /some/device on /x/a (rw)
    /x/a/A on /x/b (rw)
    

    এবং তারপরে /x/aকেবল পঠনযোগ্য পুনঃনির্মাণ , আপনি কোনও কিছুই পরিবর্তন করতে পারবেন না /x/B। যা বোধগম্য, তবে আপনাকে প্রথমবারের মতো অবাক করে তুলতে পারে। অন্য একটি ভাল প্রশ্ন হ'ল /x/bআপনি যখন উপরের উদাহরণে কী ঘটবে umount /x/a। আমার পক্ষে এটি সুস্পষ্ট থেকে দূরে যে আপনি এখনও তার নীচে গাছটি অ্যাক্সেস করতে পারবেন। সুতরাং বাঁধাই মাউন্টিং জটিল হতে পারে। কার্যকরীভাবে, যখন পুরো ফাইল সিস্টেমে ব্যবহৃত হয়, এটি একই রকম।

  • অন্যান্য জিনিস থেকে /etc/- এটি ব্যবহারযোগ্য যে প্রাসঙ্গিক কনফিগারেশনটি অনুলিপি করে তা অবশ্যই বোধগম্য হয়। অনুলিপি করা হচ্ছে যেমন /etc/passwd, /etc/shadow, /etc/groups হতে পারে জন্য অর্থে, সেইসাথে সার্ভার কী করতে sshd


উভয় উত্তরই সমানভাবে ভাল - তাই আমি একটি মুদ্রা
ফেলেছিলাম

0

/procপ্রসেস পরিচালনা করে এবং sysকার্নেলের প্যারামিটারগুলি বা বর্তমান কার্নেলের অ্যাক্সেসের তথ্যগুলি পরিচালনা করে ।

এখন, বিবেচনা গ্রহণ যে বেঁধে একটি দ্বিমুখী প্রকৃতি বোঝা যায়, procসবচেয়ে ভালো সমাধান হিসেবে chroot বাইরে মাউন্ট করা যাবে না।

sysহতে পারে, তবে এটি বর্তমান চলমান কার্নেল হোস্টের উপর নির্ভর করে এবং devবাঁধাইয়ের মতো মাউন্ট করা উচিত ।

/dev/pts/devবাইন্ড-মাউন্টড হিসাবে ইতিমধ্যে উপলব্ধ , কিন্তু ক্রুটের একটি অংশ, সুতরাং নতুন পুনরায় গণনা ptsহিসাবে সুপারিশ করা হয় mount -t devpts none /mnt/drive/dev/pts

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