Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 19 del 17/04/2020 15.08.54

Nascondi questo messaggio


Guida verificata con Ubuntu: 20.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa guida contiene le informazioni per accedere ad una installazione di Ubuntu attraverso chroot.

In pratica, la procedura permette di accedere ad un secondo sistema presente nel computer tramite riga di comando, eseguendo delle operazioni su di esso da un altro sistema GNU/Linux avviato oppure da sessione live.

Può rivelarsi utile in diversi casi, ad esempio:

  • per cercare di riparare un sistema al quale non è possibile accedere normalmente (ad esempio per ripristinare GRUB);

  • accedere rapidamente ad un altro sistema presente sulla stessa macchina senza lasciare quello già avviato.

Accesso al sistema

  1. Avviare il sistema funzionante o la Live di Ubuntu. Una volta caricato il sistema, individuare il file system e la partizione sulla quale è installato il sistema che si vuole avviare tramite chroot e prenderne nota.
    Nei prossimi passaggi verranno presi ad esempio i sistemi installati sulle partizioni /dev/sda1 con file system ext4 e /dev/sdc1 con file system btrfs.

È possibile montare solo una partizione alla volta, nel seguito ove riportati due o più comandi alternativi usare solo quello pertinente al proprio sistema.

  1. Per montare la partizione sulla quale risiede il sistema a cui si desidera accedere;
    • Per montare la partizione /dev/sda1 con file systyem ext4 digitare nel terminale il seguente comando:

      sudo mount -t ext4 /dev/sda1 /mnt
    • Per montare la partizione /dev/sdc1 con file system btrfs in caso trattasi di Ubuntu con qualsiasi ambiente grafico digitare nel terminale il seguente comando:

      sudo mount -t btrfs -o subvol=@ /dev/sdc1 /mnt
    • Per montare la partizione /dev/sdc1 con file system btrfs in caso trattasi di altri sistemi GNU/Linux con qualsiasi ambiente grafico digitare nel terminale il seguente comando:

      sudo mount -t btrfs /dev/sdc1 /mnt
  2. Montare le directory dev, proc, sys, run con il comando:

    for i in dev proc sys run; do sudo mount --bind /$i /mnt/$i; done

    Il comando permette di montare all'istante tutte le directory sopra elencate anziché digitare per ognuna di esse:
    sudo mount --bind /dev /mnt/dev
    sudo mount --bind /proc /mnt/proc
    ecc..

  3. Effettuare un chroot sul sistema digitando:

    sudo chroot /mnt

Arrivati a questo punto, all'interno dell'ambiente chroot sarà possibile effettuare qualsiasi operazione sull'altro sistema tramite terminale (ad esempio installare/rimuovere/aggiornare pacchetti, modificare o eliminare file, ripristinarne il corretto avvio ecc.).

Quando è in uso chroot si ottiene accesso come root. Quindi prestare particolare attenzione ai comandi che vengono eseguiti.

Abbandono del sistema

  1. Uscire dal chroot premendo la combinazione di tasti Ctrl+D o eseguendo il comando:

    exit
  2. Smontare tutti i dispositivi:

    cd ~

    e quindi:

    for i in /dev /proc /sys /run /; do sudo umount /mnt$i; done

    Il comando permette di smontare all'istante tutte le directory sopra elencate anziché digitare per ognuna di esse:
    sudo umount /mnt/dev
    sudo umount /mnt/proc
    ecc..

  3. Per smontare la partizione sulla quale risiede il sistema su cui si è operato;
    • Per smontare la partizione /dev/sda1 digitare nel terminale il seguente comando:

      sudo umount /dev/sda1 /mnt
    • Per smontare la partizione /dev/sdc1 con file system btrfs in caso trattasi di Ubuntu con qualsiasi ambiente grafico digitare nel terminale il seguente comando:

      sudo umount -t btrfs -o subvol=@ /dev/sdc1 /mnt
    • Per smontare la partizione /dev/sdc1 con file system btrfs in caso trattasi di altri sistemi GNU/Linux con qualsiasi ambiente grafico digitare nel terminale il seguente comando:

      sudo umount -t btrfs /dev/sdc1 /mnt

Per accedere normalmente all'altro sistema, riavviare come di consueto il computer oppure terminare la sessione Live.

Ulteriori risorse


CategoryAmministrazione