Velikokrat smo se, še posebej pri zafrkanciji, znašli v težavah, ker nismo mogli dostopati do sistema, da bi ga popravili, vendar je rešitev enostavna: uporabite ukaz chroot iz katerega koli LiveCD / RepairCD.
Marsikje (forumi, blogi ...) je omenjen ta ukaz in podana je "copy / paste" koda, toda moj namen s tem prispevkom je malo razložiti te korake, da bi to orodje dobro uporabili vzroka.
uvod
Ukaz chroot Znan je kot CHangeROOT, to je ukaz, ki vam omogoča spreminjanje korena sistema, v katerem delate. Z drugimi besedami: če ste iz LiveCD-a in želite, da vse, kar delate na konzoli, vpliva na nameščeni sistem, morate najprej uporabiti chroot.
Težava je v tem, da ni dovolj za uporabo chroot Kot takšni, preden moramo pravilno namestiti nekatere particije.
KAKO
Najprej moramo zagnati terminal, bodisi iz drugega nameščenega sistema (na drugi particiji / disku) bodisi iz LiveCD. POMEMBNO: arhitektura LiveCD se mora ujemati z arhitekturo sistema, ki ga je treba popraviti (32 ali 64 bitov).
Ko smo v terminalu, bomo začeli prepoznavati naše particije:
fdisk -l
- S tem ukazom bomo navedli vse naše particije / diske. Ugotoviti moramo, katera je ciljna particija, kjer je nameščen naš sistem za popravilo, odslej jo bomo klicali pokvarjen sistem.
V tem primeru bomo upoštevali, da je naš pokvarjen sistem v sistemu / Dev / sda1 .
Nadaljujemo s sestavljanjem sistema. Najprej bomo ustvarili mapo, v kateri bomo delali, kasneje pa bomo v to mapo namestili particijo, kjer je naš pokvarjen sistem
mkdir /mnt/my_linux
mount /dev/sda1 /mnt/my_linux
Če imate mapo / Domov o / var ali katero koli drugo na drugi particiji, jo morate namestiti na naslednji način:
mount /dev/sda2 /mnt/my_linux/var
- OPOMBA: Kot primer sem vzel particijo / dev / sda2 za mapo / var, naj vsaka prilagodi kodo svojim lastnostim.
Običajno bi to zadoščalo, če bi morali datoteke preprosto urejati ročno, če pa želimo izvesti nekaj ukazov, ki konfigurirajo sistem, moramo namestiti nekatere posebne sistemske mape: / dev, / proc y / sys.
mount -t proc proc /mnt/my_linux/proc
mount -t sysfs sys /mnt/my_linux/sys
mount -o bind /dev /mnt/my_linux/dev
- Z možnostjo -t povemo mount vrsto "datotečnega sistema", ki ga želimo namestiti. Navesti ga je treba zaradi posebne narave map / proc y / sys.
- Z možnostjo -o določimo možnosti mount. Možnost vežejo služi za "povezavo". V sistemu UNIX so vse strojne naprave dostopne prek mape / dev, zato moramo vgraditi svoj tok / dev v mapi, kjer je zdaj naš pokvarjen sistem. Ker je ta mapa že nameščena, je treba le povedati mount kjer je prvotno nameščen.
To se naredi tako, tako da chroot Do teh map dostopajte, kot da so pokvarjen sistem, čeprav morajo biti iz trenutnega sistema (npr. Seja LiveCD), saj so povezane s stanjem sistema, procesov in strojne opreme.
Zdaj je čas za uporabo chroot:
chroot /mnt/my_linux/ /bin/bash
- Ukaz se kot argumenti posreduje poti novega korena «/» (kar je v našem primeru / mnt / my_linux) in konzolo, ki jo želite uporabiti (v tem primeru smo se odločili za dobro znano bash, ki jo najdemo v / bin / bash). Če ne določimo konzole, se znajdemo pred nekoliko arhaičnim tolmačem ukazov (ob pritisku na zavihek se ne napolni).
Zdaj lahko konzolo uporabljamo, kot da bi se v našem pokvarjenem sistemu začela korenska seja (urejanje datotek, preverjanje skriptov, namestitev / odstranjevanje paketov ...). OPOZORILO! Da bodo spremembe začele veljati, morate po izhodu izklopiti datotečni sistem chrootOglejte si spodnji primer.
Več informacij v https://wiki.archlinux.org/index.php/Change_Root (več kot priporočeno branje).
Primer uporabe: obnovite GRUB2
Eden najbolj razširjenih načinov uporabe chroot Je orodje za popravilo GRUB-a. Ker se pokvari, je praktično nemogoče zagnati naš sistem, da bi to popravil.
OBVESTILO: ta majhna vadnica je zgolj primer, med drugim deluje na različnih distribucijah, ki izhajajo iz Debian, Ubuntu in openSUSE. Kljub temu preverite dokumentacijo svoje distribucije, saj pri mnogih ukaz ni najden posodobitev-grub.
# OPOMBA: ti ukazi se zaženejo enkrat v chroot-u.update-grub
grub-install /dev/sda
- z posodobitev-grub Posodobimo meni za vnos GRUB2 in tako dodamo manjkajoče vnose. Kasneje GRUB znova namestimo na naš disk, ker je bil poškodovan.
V tem primeru sem vzel / Dev / sda tako kot album, v katerem imamo svoj sistem, mora biti tudi ta prilagojen vašemu primeru.
Naš GRUB bi morali že popraviti, zato moramo zapustiti chroot, odklopite datotečni sistem (POMEMBNO) in znova zaženite, da spremembe začnejo veljati. Če pozabimo demontirati datotečni sistem, je možno, da se ob ponovnem zagonu ne bodo pravilno odklopili in zato nekatere spremembe ne bi začele veljati.
# pustili smo chrootexit
# demontirajte datotečni sistem in ga znova zaženiteumount /mnt/my_linux/dev
umount /mnt/my_linux/sys
umount /mnt/my_linux/proc
umount /mnt/my_linux
reboot
In to je vse. Upam, da boste uživali in da vam bo pomagalo. Pozdrav!
Lahko bi to uporabil .. Na neki točki ga moram uporabiti.
Je kdo od vas uporabljal Chakra Benz? Če je tako, mi lahko poveste, če
je enostavno za navadnega uporabnika? Uporabljam SolydK, ki je zelo preprost, vendar
Razumem, da je čakra čisti KDE in me zanima.
Da, čakra je zelo dobra in bolj ali manj enostavna, stvar je v tem, da morate za namestitev / odstranitev paketov to narediti s konzolo, saj še vedno delajo na grafičnem upravitelju paketov. Poskusite, ker se splača. Uporablja upravitelja paketov pacman, ki ga je podedoval Archlinux, vendar pozor, shramb ne deli z archom in z njimi NI združljiv. Če želite izvedeti več o pacmanu, si oglejte wiki arch https://wiki.archlinux.org/index.php/Pacman_%28Espa%C3%B1ol%29
Oktopi je že stabilen in deluje precej dobro za povprečnega uporabnika, zato za uporabo pacmana ne potrebujete terminala.
Upam, da bodo to objavo obiskali številni, nato pa jim odtrgajo glave in jih ponovno namestijo za kar koli, ko lahko s chrootom skoraj vedno popravite sistem, chroot vam omogoča veliko možnosti, vključno z namestitvijo Gentoo xD
lepo, hvala ... Nikoli nisem dal žoge, ker se mi zdi, da so nekateri CD-ji v živo za popravilo privzeto dvignili, zdaj pa je jasno, hvala še enkrat.
Za dokončanje bi bilo dobro razložiti, kako namestiti particije LVM, šifrirane particije in sisteme RAID.
mmm, že dolgo se nisem dotaknil LVM in RAID, a me lahko obvestite, da dokončam to ... hvala za nasvet!
No resnica je, da bi lahko uporabil super.
Bilo bi zelo hvaležno.
poglejte ta wiki, je kar kul http://wiki.bandaancha.st/RAID_y_LVM_en_Linux
Če bi le ta tema obstajala nekaj tednov kasneje, se je izkazalo, da sem imel težave s sistemom, bral in bral in povsod sem našel chroot in blablablo, vendar mi ni uspelo na podlagi priporočila v živo, ki je enako kot vaš sistem , zelo pomembno, ker uporabljam x64, drugo pa je namestitev sistemskih particij, ker je v mojem primeru, ko sem uporabljal chroot in ga nameščal, vrgel ukaz in ukaza preprosto ni prepoznal.
Ta tema bo namenjena mojim datotekam "zbiranje informacij"
Arch LiveCD (s tem orodjem) je vse, kar potrebujete za popravilo sistema, ko ga zlomite.
Natanko! .. .. vse, kar je potrebno .. celo pomagati nekomu s svojim W $, ki se je odločil, da ne bo začel ..
Vedno imam s seboj 1 GB pendrive z Archom v živo ... in chroot je vse, kar potrebujem, tako da imate v 10 minutah vse težave v XNUMX minutah, ne da bi vas vznemirjali
Preprosto moraš vedeti, kako to storiti.
Pozdravljeni, opazite, da imam težave s centosom, ker me panika v jedru itd. In tega nisem mogel rešiti, tam imam svoje spletno mesto in bazo podatkov, ne vem, kaj naj še storim.
Dober prispevek, mimogrede sem slišal nekaj chroot-a, vendar v resnici nisem vedel, kako je bil uporabljen, seveda ga nikoli nisem potreboval in zato nisem česa posebej prebral. Zdaj, ko je vaša objava zelo jasno razložena, vem, kako jo uporabiti v primeru.
Najlepša hvala in mimogrede, naj živi Led Zeppelin hehe.
hvala, končno sem se rešil nočne more reševanja
pravzaprav sem sledil vsem korakom, razen umount / mnt / my_linux, ker mi je rekel, da je zaseden, in sem stopil -km, a niti tega ne, in odskočil ...
Upam, da ni pomembno….
Hvala še enkrat…
pozdrav
Čeprav je članek star že nekaj let, se želim zahvaliti avtorju za njegovo velikodušnost pri deljenju. Odličen članek je, ker mi je ta konec tedna rešil življenje. Nehote sem naložil strežnik, ki je nameščal paket, in se ob ponovnem zagonu ni naložil. Po treh dneh, ko sem ga poskušal popraviti in prebral različne članke, sem sem prišel slučajno in končno sem lahko znova namestil grub in popravil strežnik.
Najlepša hvala!
Vesel sem, da vam je pomagalo. Hvala za komentar!
Pozdravljeni, kaj pa vem, da je bil ta prispevek pred leti zelo lep, ker ste ga delili. In dvomil sem, da je v mojem primeru poškodoval sistem in tudi omrežne gonilnike, zato sem sledil korakom, vendar mi ne omogoča prenosa paketov, ali je mogoče povezati živo omrežje s terminalom
V resnici ne razumem vaše težave ... Ko se prijavite z LiveCD, je jedro, ki se naloži, tisto iz LiveCD, zato bi morali imeti popolno konfiguracijo internetne povezave. Ko je povezava vzpostavljena, poskusite chroot, da vidite, ali jo še vedno obdržite, v nasprotnem primeru jo boste morda morali znova konfigurirati, vendar poškodovano jedro ne bi smelo vplivati na sejo chroot.
Če ne navedete več, vam lahko rečem ...
Odlična objava ... eden redkih uporabnih člankov na internetu.
Najlepša hvala za prispevek.
Pozdravljeni, odlična vadnica! Vrhunsko razloženo, za nas navadne smrtnike!
Imam vprašanje:
Ko ste omenili, da v primeru namestitve paketov, izvajanja sistemskih posodobitev ali drugih posebnih dejavnosti in zahtevajo namestitev map / dev / proc in / sys, mi ni bilo jasno, ali so te mape v sistemu Live, s katerim zagnal računalnik za popravilo ali če so najprej nameščeni na korenski particiji.
Hvala.
NAJLEPŠA HVALA!!!!