Sistēmas remonts: HowTo chroot

Daudzas reizes, it sevišķi jaucoties, esam nonākuši grūtībās, ja nevaram piekļūt sistēmai, lai to labotu, taču risinājums ir vienkāršs: izmantojiet komandu chroot no jebkura LiveCD / RepairCD.

Daudzās vietās (forumos, emuāros ...) šī komanda tiek pieminēta un tiek dota koda "kopija / ielīmēšana", bet mans nolūks ar šo ziņu ir nedaudz paskaidrot šīs darbības, lai ar šo zināšanu lietderīgi izmantotu šo rīku. cēloņa.

Ievads

Komanda chroot Tas ir pazīstams kā CHangeROOT, tas ir, komanda, kas ļauj mainīt tās sistēmas sakni, kurā strādājat. Citiem vārdiem sakot: ja esat no LiveCD un vēlaties, lai viss, ko strādājat konsolē, ietekmētu instalēto sistēmu, vispirms jāizmanto chroot.

Problēma ir tā, ka to nepietiek ar lietošanu chroot Kā tāds mums vispirms ir pareizi jāpiestiprina noteikti nodalījumi.

Vispirms mums jāsāk terminālis vai nu no citas instalētas sistēmas (citā nodalījumā / diskā), vai no LiveCD. SVARĪGI: LiveCD arhitektūrai jāatbilst remontējamās sistēmas arhitektūrai (32 vai 64 biti).
Kad būsim terminālā, sāksim identificēt mūsu nodalījumus:
fdisk -l

  • Ar šo komandu mēs uzskaitīsim visus mūsu nodalījumus / diskus. Mums ir jāidentificē, kurš ir mērķa nodalījums, kur ir instalēta mūsu labojamā sistēma, un turpmāk mēs to sauksim salauzta sistēma.

Šajā piemērā mēs uzskatīsim, ka mūsu bojātā sistēma ir / Dev / sda1 .

Mēs turpinām montēt sistēmu. Vispirms mēs izveidosim mapi, kurā mēs strādāsim, un vēlāk šajā mapē uzstādīsim nodalījumu, kurā atrodas mūsu salauztā sistēma
mkdir /mnt/my_linux
mount /dev/sda1 /mnt/my_linux

Ja jums ir mape / Sākums o / var vai jebkuru citu citu nodalījumu, jums to vajadzētu uzstādīt šādi:
mount /dev/sda2 /mnt/my_linux/var

  • PIEZĪME. Kā piemēru esmu izmantojis mapes / var nodalījumu / dev / sda2, ļaujiet katram pielāgot kodu savām īpašībām.

Parasti ar to pietiek, ja faili vienkārši jārediģē ar roku, bet, ja mēs vēlamies izpildīt dažas komandas, kas konfigurē sistēmu, mums jāpiestiprina noteiktas īpašas sistēmas mapes: / dev, / proc/ 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

  • Ar iespēju -t mēs sakām mount "failu sistēmas" veidu, kuru mēs vēlamies uzstādīt. Tas ir jānorāda mapju īpašā rakstura dēļ / proc y / sys.
  • Ar iespēju -o mēs norādām opcijas mount. Variants saistošs tas kalpo "saistīšanai". UNIX sistēmā visām aparatūras ierīcēm var piekļūt caur mapi / dev, tāpēc mums ir jāuzstāda sava strāva / dev mapē, kur tagad atrodas mūsu salauztā sistēma. Tā kā šī mape jau ir uzstādīta, tas ir tikai jāpasaka mount tur, kur tas sākotnēji ir uzstādīts.

Tas tiek darīts šādā veidā tā chroot ir piekļuve šīm mapēm tā, it kā tās būtu bojāta sistēma, lai gan tām jābūt no pašreizējās sistēmas (piemēram, LiveCD sesijas), jo tās ir saistītas ar sistēmas, procesu un aparatūras stāvokli.

Tagad ir laiks to izmantot chroot:
chroot /mnt/my_linux/ /bin/bash

  • Komanda kā argumenti tiek nodota jaunās saknes «/» ceļam (kas mūsu gadījumā ir / mnt / my_linux) un konsoli, kuru vēlaties izmantot (šajā gadījumā mēs izvēlējāmies labi zināmo bashu, kas atrodams / bin / bash). Ja nenorādīsim konsoli, mēs nonāksim nedaudz arhaiska komandu tulka priekšā (tas netiek aizpildīts, nospiežot cilni utt.).

Tagad mēs varam izmantot konsoli tā, it kā mūsu lauztajā sistēmā sāktu saknes sesiju (rediģēt failus, pārbaudīt skriptus, instalēt / atinstalēt paketes ...). BRĪDINĀJUMS! Lai veiktās izmaiņas stātos spēkā, pēc iziešanas jums ir jānoņem failu sistēma chrootApskatiet zemāk redzamo piemēru.

Vairāk informācijas https://wiki.archlinux.org/index.php/Change_Root (vairāk nekā ieteicams lasīt).

Lietojuma piemērs: atjaunot GRUB2

Viens no visizplatītākajiem chroot Tas ir kā rīks GRUB labošanai. Tā kā, ja grub saplīst, praktiski nav iespējams palaist mūsu sistēmu, lai to novērstu.

PAZIŅOJUMS: šī mazā apmācība ir tikai piemērs, tā darbojas dažādos izplatījumos, kas atvasināti no Debian, Ubuntu un openSUSE. Pat ja tā, pārbaudiet izplatīšanas dokumentāciju, jo daudzos komanda nav atrasta update-grub.
# PIEZĪME: šīs komandas darbojas vienreiz chroot iekšpusē.update-grub
grub-install /dev/sda

  • ar update-grub Mēs atjauninām GRUB2 ievades izvēlni, tādējādi pievienojot visas trūkstošās ievades. Vēlāk mēs atkārtoti instalējam GRUB savā diskā, jo tas ir bojāts.

Šajā gadījumā esmu paņēmis / Dev / SDA tāpat kā albumam, kurā ir mūsu sistēma, tas jāpielāgo jūsu gadījumam.

Mūsu GRUB jau būtu jālabo, tāpēc mums ir jāiziet chroot, atvienojiet failu sistēmu (SVARĪGI) un restartējiet, lai izmaiņas stātos spēkā. Ja mēs aizmirstam atvienot failu sistēmu, iespējams, ka, restartējot, tie netiks pareizi atvienoti un tāpēc dažas izmaiņas nestātos spēkā.
# mēs atstājām chrootexit
# atvienojiet failu sistēmu un restartējietumount /mnt/my_linux/dev
umount /mnt/my_linux/sys
umount /mnt/my_linux/proc
umount /mnt/my_linux
reboot

Un tas arī viss. Es ceru, ka jums tas patiks un ka tas jums palīdzēs. Sveiciens!


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   Leper_Ivan teica

    Es to varu izmantot. Kādā brīdī man tas ir jāizmanto.

  2.   mario teica

    Vai kāds no jums ir lietojis Chakra Benz? Ja tā, vai jūs varētu man pateikt, vai
    vai parastajam lietotājam tas ir viegli? Es izmantoju SolydK, kas ir ļoti vienkārši, bet
    Es saprotu, ka čakra ir tīra KDE un tā mani interesē.

    1.    voqer teica

      Jā, čakra ir ļoti laba un vairāk vai mazāk viegla, lieta ir tāda, ka, lai instalētu / atinstalētu paketes, tas jādara ar konsoli, jo tie joprojām strādā grafiskajā pakotņu pārvaldniekā. Izmēģiniet, jo tas ir tā vērts. Tas izmanto pacman pakotņu pārvaldnieku, kas mantots no Archlinux, taču uzmanieties, tas koplieto krātuves ar arch un NAV ar tiem saderīgs. Ja vēlaties uzzināt vairāk par pacmanu, ieskatieties arka wiki https://wiki.archlinux.org/index.php/Pacman_%28Espa%C3%B1ol%29

      1.    izzyvp teica

        Oktopi jau ir stabils un darbojas diezgan labi vidusmēra lietotājam, tāpēc jums nav nepieciešams termināls, lai izmantotu pacman.

  3.   x11tete11x teica

    Es ceru, ka šo ierakstu apmeklēs daudzi, pēc tam viņi sāk kaut ko pārinstalēt, kad ar chroot jūs gandrīz vienmēr varat labot sistēmu, chroot ļauj jums izmantot daudzas iespējas, tostarp instalēt Gentoo xD haha

  4.   alunādo teica

    jauki, paldies ... Es nekad nedevu tam bumbu, jo daži live-cd remontam man šķiet, ka viņi to pēc noklusējuma paceļ, bet tagad ir skaidrs, paldies vēlreiz.

  5.   Lolo teica

    Lai to pabeigtu, būtu labi izskaidrot, kā uzstādīt LVM nodalījumus, šifrētus nodalījumus un RAID sistēmas.

    1.    voqer teica

      mmm Es sen neesmu pieskāries LVM un RAID, bet vai jūs varētu mani mazliet informēt, lai pabeigtu šo ... paldies par padomu!

      1.    Lolo teica

        Nu patiesība ir tāda, ka es varētu izmantot lieliski.

        Tas būtu ļoti appreciated.

        1.    voqer teica

          ieskaties šajā wiki, tas ir diezgan forši http://wiki.bandaancha.st/RAID_y_LVM_en_Linux

  6.   Modems teica

    Ja tikai šī tēma būtu pastāvējusi dažas nedēļas vēlāk, izrādās, ka man bija problēmas ar manu sistēmu un lasīju un lasīju, un visur, kur atradu chroot un blablabla, man tas nedarbojās, pamatojoties uz šo tiešraides ieteikumu, kas ir tāds pats kā jūsu sistēma , ļoti svarīgi, jo es izmantoju x64, otrs ir sistēmas nodalījumu montāža, jo manā gadījumā, kad es lietoju chroot un montāžu, es iemetu komandu, un tā vienkārši neatpazina komandu.

    Šī tēma nonāks manos failos "informācijas apkopošana"

  7.   cepums teica

    Arch LiveCD (ar šo rīku) ir viss, kas nepieciešams sistēmas labošanai, kad to salaužat.

    1.    RAW-Basic teica

      Tieši tā! .. .. tas ir viss, kas vajadzīgs .. pat lai palīdzētu kādam ar savu W $, kurš nolēma nestartēt ..

      Man vienmēr ir līdzi 1gb pendrive ar Arch live ... un chroot ir viss, kas nepieciešams, lai jebkuras problēmas gadījumā 10 minūšu laikā jums viss būtu kārtībā bez satraukuma .. 😉

    2.    izzyvp teica

      Jums vienkārši jāzina, kā to izdarīt.

    3.    Pablo teica

      Sveiki, ievērojiet, ka man ir problēmas ar centos, tas man izraisa kodola paniku utt. Un man nav izdevies to atrisināt, man tur ir sava vietne un datu bāze. Es nezinu, ko vēl darīt.

  8.   Džonijs127 teica

    Labs ieraksts, es dzirdēju garām garām, bet es īsti nezināju, kā tas tiek izmantots, protams, man tas nekad nebija vajadzīgs, un tāpēc es kaut ko īpaši nebiju lasījis. Tagad, kad jūsu ziņa ir izskaidrota ļoti skaidri, es zinu, kā to izmantot gadījumā.

    Liels paldies un, starp citu, lai dzīvo Led Zeppelin hehe.

  9.   kamala teica

    paldies, es beidzot izkļuvu no grubu glābšanas murga

    Patiesībā es izpildīju visas darbības, izņemot umount / mnt / my_linux, jo tas man teica, ka tas ir aizņemts, un es to kausēju -km, bet pat ne to un atlecu ...

    Es ceru, ka tas nav svarīgi ...

    vēlreiz paldies…
    sveiciens

  10.   Jose Antonio teica

    Lai gan rakstam jau ir pāris gadi, es vēlos pateikties autoram par viņa dāsnumu, daloties ar to, tas ir lielisks raksts, jo šajā nedēļas nogalē tas izglāba manu dzīvību. Es neviļus ielādēju serveri, instalējot pakotni, un, restartējot, tas netika ielādēts. Pēc tam, kad trīs dienas mēģināju to novērst un lasīju dažādus rakstus, man nejauši izdevās nokļūt šeit un beidzot varēju pārinstalēt grub un salabot serveri.

    Thank you very much!

    1.    voqer teica

      Es priecājos, ka tas jums palīdzēja. Paldies par komentāru!

  11.   Helio teica

    Sveiki, kā es zinu, ka šis ieraksts ir bijis pirms gadiem, šis lielais paldies par dalīšanos tajā. Un man bija šaubas, manā gadījumā tas sabojāja sistēmu un arī tīkla draiverus, tāpēc es izpildīju soļus, bet tas neļauj man lejupielādēt pakotnes, vai ir kāds veids, kā sasaistīt tiešraides tīklu ar termināli

    1.    voqer teica

      Es īsti nesaprotu jūsu problēmu ... Kad piesakāties, izmantojot LiveCD, ielādējamais kodols ir no LiveCD, tāpēc jums vajadzētu būt iespējai perfekti konfigurēt interneta savienojumu. Kad savienojums ir izveidots, mēģiniet chroot, lai redzētu, vai jūs to joprojām saglabājat, ja nē, jums, iespējams, būs jākonfigurē vēlreiz, taču bojātais kodols nedrīkst ietekmēt chroot sesiju.
      Ja jūs nenorādīsit vairāk, es varu pateikt ...

  12.   dach teica

    Excellent Post ... viens no nedaudzajiem noderīgajiem rakstiem, kas atrodams internetā.
    Liels paldies par ieguldījumu.

  13.   zopeks teica

    Sveiki, lieliska apmācība! Lieliski izskaidrots mums, vienkārši mirstīgajiem!

    Man ir jautājums:
    Kad jūs pieminējāt, ka gadījumā, ja jums jāinstalē pakotnes, jāveic sistēmas atjauninājumi vai citas īpašas darbības un jums jāpievieno mapes / dev / proc un / sys, man nebija skaidrs, vai šīs mapes atrodas Live sistēmā, ar kuru mēs uzsāka remontējamo aprīkojumu vai ja tie vispirms ir uzstādīti saknes nodalījumā.

    Paldies

  14.   Orlando teica

    LIELS PALDIES!!!!