GNU/Linux
रूट बदलें (चुरोट)
खोज…
परिचय
चेंज रूट (चेरोट) एक ऑपरेशन है जो वर्तमान चल रही प्रक्रिया और उनके बच्चों के लिए स्पष्ट रूट निर्देशिका को बदलता है। ऐसा प्रोग्राम जो इस तरह के संशोधित वातावरण में चलाया जाता है, उस पर्यावरण निर्देशिका ट्री के बाहर फ़ाइलों और आदेशों तक नहीं पहुंच सकता है।
वाक्य - विन्यास
- चुरोट [गंतव्य पथ] [शेल या कमांड]
एक निर्देशिका में मूल रूप से बदल रहा है
सुनिश्चित करें कि आप आवश्यकताओं के अनुसार सभी आवश्यकताओं को पूरा करते हैं
अस्थायी API फाइल सिस्टम माउंट करें:
cd /location/of/new/root mount -t proc proc proc/ mount --rbind /sys sys/ mount --rbind /dev dev/ mount --rbind /run run/ (optionally)
यदि आपको चेरोट वातावरण में इंटरनेट कनेक्शन का उपयोग करने की आवश्यकता है, तो DNS विवरणों की प्रतिलिपि बनाएँ:
cp /etc/resolv.conf etc/resolv.conf
रूट को / स्थान / के / नए / रूट में बदलें, शेल निर्दिष्ट करें (
/bin/bash
इस उदाहरण में):chroot /location/of/new/root /bin/bash
चेरोटिंग के बाद स्थानीय बैश कॉन्फ़िगरेशन को लोड करना आवश्यक हो सकता है:
source /etc/profile source ~/.bashrc
वैकल्पिक रूप से, अपने चिरोट वातावरण को अलग करने में सक्षम होने के लिए एक अनूठा संकेत बनाएं:
export PS1="(chroot) $PS1"
चुरोट के साथ समाप्त होने पर, आप इसके माध्यम से बाहर निकल सकते हैं:
exit
अस्थायी फ़ाइल सिस्टम को अनमाउंट करें:
cd / umount --recursive /location/of/new/root
आवश्यकताएँ
- मूल विशेषाधिकार
- एक और काम करने वाला लिनक्स वातावरण, जैसे लाइव सीडी बूट या मौजूदा वितरण
- के पर्यावरण आर्किटेक्चर मिलान
chroot
स्रोत और गंतव्य (जाँच के साथ वर्तमान वातावरण वास्तुकलाuname -m
) - कर्नेल मॉड्यूल जिन्हें आपको
chroot
वातावरण में आवश्यकता हो सकती है, लोड किया जाना चाहिए (उदाहरण के लिए,modprobe
साथ)
चुरोट का उपयोग करने के कारण
आमतौर पर बूटिंग और / या लॉगिंग सिस्टम पर सिस्टम मेंटिनेंस करने के लिए रूट को बदलना संभव नहीं है।
सामान्य उदाहरण हैं:
- बूटलोडर को फिर से स्थापित करना
- initramfs छवि का पुनर्निर्माण
- उन्नयन या डाउनग्रेडिंग पैकेज
- भूल गए पासवर्ड को रीसेट करना
- एक स्वच्छ जड़ वातावरण में सॉफ्टवेयर का निर्माण