Dimensione: 3106
Commento:
|
Dimensione: 7862
Commento: Aggiunta una procedura in Risoluzione problemi
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 1: | Linea 1: |
## page was renamed from Grub2/Ripristino | ## page was renamed from LorenzoZoffoli/Prova0 |
Linea 3: | Linea 3: |
#language it | #LANGUAGE it |
Linea 5: | Linea 5: |
Linea 8: | Linea 6: |
<<BR>> <<Informazioni(forum="http://forum.ubuntu-it.org/index.php/topic,264939.0/all.html"; rilasci="11.10 11.04 10.10 10.04 ")>> |
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=636196"; rilasci="14.04 16.04 18.04 20.04")>> |
Linea 15: | Linea 10: |
Questa guida contiene le informazioni per accedere ad una installazione di '''Ubuntu''' attraverso '''chroot'''. | Questa guida contiene le informazioni per accedere ad una installazione di Ubuntu attraverso '''chroot'''. |
Linea 17: | Linea 12: |
Questa procedura può essere utile in diversi casi: * non è possibile avviare normalmente il sistema a cui si vuole accedere. * si necessita di un metodo veloce per accedere al sistema senza lasciare quello che si è già avviato sulla stessa macchina * si cerca di recuperare una situazione di errore che non permette di lavorare direttamente sul sistema a cui si vuole accedere. |
In pratica, la procedura permette di accedere ad un secondo sistema presente nel computer tramite [[AmministrazioneSistema/Terminale|riga di comando]], eseguendo delle operazioni su di esso da un altro sistema '''GNU/Linux''' avviato oppure da sessione '''[[Installazione#Creazione_e_avvio_del_supporto_di_installazione|live]]'''. |
Linea 22: | Linea 14: |
Per seguire la procedura è necessario avviare un sistema GNU/Linux sul PC che contiene il sistema a cui si vuole accedere. Per cui, se si ha già un altro sistema installato è sufficiente avviare quello altrimenti sarà necessario ottenere un ''CD Live''. Per informazioni su come ottenere questo supporto consultare [[http://www.ubuntu-it.org/Ottenere_Ubuntu.shtml|questa pagina]]. |
Può rivelarsi utile in diversi casi, ad esempio: * per cercare di riparare un sistema al quale non è possibile accedere normalmente (ad esempio per ripristinare '''[[AmministrazioneSistema/Grub|GRUB]]'''); * accedere rapidamente ad un altro sistema presente sulla stessa macchina senza lasciare quello già avviato. |
Linea 25: | Linea 18: |
<<Anchor(accesso)>> = Accesso al sistema = |
|
Linea 26: | Linea 21: |
0. Avviare il sistema funzionante o la '''Live''' di '''Ubuntu'''. Una volta caricato il sistema, [[Hardware/DispositiviPartizioni/IndividuarePartizioni#df|individuare]] il file system e la partizione sulla quale è installato il sistema, se trattasi di sistema installato in modalità [[https://wiki.ubuntu-it.org/AmministrazioneSistema/Uefi|UEFI]] individuare anche la partizione '''EFI''', che si vuole avviare tramite '''chroot''' e prenderne nota.<<BR>> Nei prossimi passaggi verranno presi ad esempio i sistemi installati sulle partizioni `/dev/sda1` con file system ''ext4'' e `/dev/sdc1` con file system ''[[AmministrazioneSistema/Filesystem/Btrfs|btrfs]]'', coll'eventuale partizione '''EFI''' installata su `/dev/sda2` con file system ''fat32''. |
|
Linea 27: | Linea 24: |
= Accesso al sistema = 0. Avviare il sistema funzionante o lanciare un ''CD Live'' di '''Ubuntu'''. Una volta avviato, aprire un [[AmministrazioneSistema/RigaDiComando|terminale]] e digitare il seguente comando: {{{ sudo fdisk -l }}} Prendere nota della partizione sulla quale è installato '''Ubuntu'''. Nei prossimi passi verrà assunto come partizione di installazione `/dev/sda1`. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Attenzione, l'ultimo carattere del suddetto comando è una lettera "elle".''' || 0. Montare la partizione sulla quale risiede il sistema. Da riga di comando digitare: {{{ sudo mount /dev/sda1 /mnt |
{{{#!wiki important È possibile montare solo un sistema alla volta. Nel proseguo usare e dare solo il comando pertinente al proprio sistema. }}} 0. 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 [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo mount -t ext4 /dev/sda1 /mnt |
Linea 35: | Linea 33: |
0. Montare il resto dei dispositivi con il comando: {{{ sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys |
* Per montare la partizione `/dev/sdc1` con file system ''btrfs'' in caso trattasi di '''Ubuntu''' con qualsiasi [[AmbienteGrafico|ambiente grafico]] digitare nel [[AmministrazioneSistema/Terminale|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 [[AmbienteGrafico|ambiente grafico]] digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo mount -t btrfs /dev/sdc1 /mnt |
Linea 40: | Linea 39: |
0. Effettuare un '''chroot''' sul sistema. Digitare da riga di comando: {{{ | 0. Montare l'eventuale partizione '''EFI''' con il comando:{{{ sudo mount -t vfat /dev/sda2 /mnt/boot/efi/ }}} <<Anchor(punto4)>> 0. 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 }}} {{{#!wiki note Il comando permette di montare all'istante tutte le directory sopra elencate anziché digitare per ognuna di esse:<<BR>> `sudo mount --bind /dev /mnt/dev`<<BR>> `sudo mount --bind /proc /mnt/proc`<<BR>> ecc.. }}} <<Anchor(norete)>> 0. Effettuare un '''chroot''' sul sistema digitando: {{{ |
Linea 44: | Linea 60: |
0. A questo si ha a disposizione una [[AmministrazioneSistema/RigaDiComando|riga di comando]] simile a quella che otterremmo avviando un [[AmministrazioneSistema/RigaDiComando|terminale]] direttamente sul sistema destinazione. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Attenzione, così facendo si ottiene accesso come root quindi è necessario prestare particolare attenzione ai comandi che vengono eseguiti da questo momento in poi.''' || |
Arrivati a questo punto, all'interno dell'ambiente '''chroot''' sarà possibile effettuare qualsiasi operazione sull'altro sistema tramite [[AmministrazioneSistema/Terminale|terminale]] (ad esempio installare/rimuovere/aggiornare pacchetti, modificare o eliminare file, ripristinarne il corretto avvio ecc.). |
Linea 47: | Linea 62: |
{{{#!wiki important Quando è in uso chroot si ottiene accesso come [[AmministrazioneSistema/Sudo|root]]. Quindi prestare particolare attenzione ai comandi che vengono eseguiti.}}} <<Anchor(abbandono)>> |
|
Linea 48: | Linea 67: |
Linea 51: | Linea 71: |
0. Smontare tutti i dispositivi digitando: {{{ | 0. Smontare tutti i dispositivi: {{{ |
Linea 53: | Linea 73: |
sudo umount /mnt/dev sudo umount /mnt/proc sudo umount /mnt/sys sudo umount /mnt/ |
}}}e quindi:{{{ for i in /dev /proc /sys /run /; do sudo umount -l /mnt$i; done |
Linea 58: | Linea 76: |
0. Riavviare il sistema e, se utilizzato, rimuovere il ''CD Live''. | {{{#!wiki note Il comando permette di smontare all'istante tutte le directory sopra elencate anziché digitare per ognuna di esse:<<BR>> `sudo umount /mnt/dev`<<BR>> `sudo umount /mnt/proc`<<BR>> ecc.. }}} 0. Smontare l'eventuale partizione '''EFI''' con il comando:{{{ sudo umount /dev/sda2 /mnt/boot/efi/ }}} 0. Per smontare la partizione sulla quale risiede il sistema su cui si è operato; * Per smontare la partizione `/dev/sda1` digitare nel [[AmministrazioneSistema/Terminale|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 [[AmbienteGrafico|ambiente grafico]] digitare nel [[AmministrazioneSistema/Terminale|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 [[AmbienteGrafico|ambiente grafico]] digitare nel [[AmministrazioneSistema/Terminale|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''. = Risoluzione problemi = == Connessione ai repository ignorata == Se provando ad aggiornare il sistema appare una simile schermata: {{{ root@filippa-HP-ProBook-430:/# apt update Ignorato:1 http://security.ubuntu.com/ubuntu jammy-security InRelease Ignorato:2 http://it.archive.ubuntu.com/ubuntu jammy InRelease Ignorato:3 http://it.archive.ubuntu.com/ubuntu jammy-updates InRelease Ignorato:4 https://downloads.sourceforge.net/project/ubuntuzilla/mozilla/apt all InRelease Ignorato:5 http://it.archive.ubuntu.com/ubuntu jammy-backports InRelease … … W: Impossibile recuperare http://it.archive.ubuntu.com/ubuntu/dists/jammy/InRelease Risoluzione di "it.archive.ubuntu.com" temporaneamente non riuscita W: Impossibile recuperare http://it.archive.ubuntu.com/ubuntu/dists/jammy-updates/InRelease Risoluzione di "it.archive.ubuntu.com" temporaneamente non riuscita W: Impossibile recuperare http://it.archive.ubuntu.com/ubuntu/dists/jammy-backports/InRelease Risoluzione di "it.archive.ubuntu.com" temporaneamente non riuscita … … }}} digitare il seguente comando: {{{ ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf }}} e riprovare l'aggiornamento. == Assenza connessione alla rete == In rari casi potrebbe capitare che il '''chroot''' non riesca a navigare in rete. Per verificare se è causato dal non funzionamento della connessione, digitare il comando:{{{ ping -c 4 ubuntu.com }}} Un output simile al seguente indica il non funzionamento della connessione alla rete:{{{ ping: ubuntu.com: Nome o servizio sconosciuto }}} Per aggirare il problema eseguire la seguente procedura: 0. [[#abbandono|Uscire]] dal '''chroot'''. 0. Ripetere la procedura di [[#accesso|accesso]] al '''chroot''' fino al [[#punto4|punto 4]]. 0. Montare separatamente la directory `/etc/resolv.conf`, digitando il seguente comando:{{{ sudo mount --bind /etc/resolv.conf /mnt/etc/resolv.conf }}} 0. Completare la procedura dal [[#norete|punto 5]]. = Ulteriori risorse = * [[https://it.wikipedia.org/wiki/Chroot|Pagina enciclopedica]] * [[https://wiki.debian.org/it/chroot|Wiki di Debian]] * [[Programmazione/DebootstrapChroot|Guida a debootstrap]] * [[AmministrazioneSistema/Grub|Guide su GRUB]] ---- CategoryAmministrazione |
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
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, se trattasi di sistema installato in modalità UEFI individuare anche la partizione EFI, 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, coll'eventuale partizione EFI installata su /dev/sda2 con file system fat32.È possibile montare solo un sistema alla volta. Nel proseguo usare e dare solo il comando pertinente al proprio sistema.
- 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
Montare l'eventuale partizione EFI con il comando:
sudo mount -t vfat /dev/sda2 /mnt/boot/efi/
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..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
Uscire dal chroot premendo la combinazione di tasti Ctrl+D o eseguendo il comando:
exit
Smontare tutti i dispositivi:
cd ~
e quindi:
for i in /dev /proc /sys /run /; do sudo umount -l /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..Smontare l'eventuale partizione EFI con il comando:
sudo umount /dev/sda2 /mnt/boot/efi/
- 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.
Risoluzione problemi
Connessione ai repository ignorata
Se provando ad aggiornare il sistema appare una simile schermata:
root@filippa-HP-ProBook-430:/# apt update Ignorato:1 http://security.ubuntu.com/ubuntu jammy-security InRelease Ignorato:2 http://it.archive.ubuntu.com/ubuntu jammy InRelease Ignorato:3 http://it.archive.ubuntu.com/ubuntu jammy-updates InRelease Ignorato:4 https://downloads.sourceforge.net/project/ubuntuzilla/mozilla/apt all InRelease Ignorato:5 http://it.archive.ubuntu.com/ubuntu jammy-backports InRelease … … W: Impossibile recuperare http://it.archive.ubuntu.com/ubuntu/dists/jammy/InRelease Risoluzione di "it.archive.ubuntu.com" temporaneamente non riuscita W: Impossibile recuperare http://it.archive.ubuntu.com/ubuntu/dists/jammy-updates/InRelease Risoluzione di "it.archive.ubuntu.com" temporaneamente non riuscita W: Impossibile recuperare http://it.archive.ubuntu.com/ubuntu/dists/jammy-backports/InRelease Risoluzione di "it.archive.ubuntu.com" temporaneamente non riuscita … …
digitare il seguente comando:
ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
e riprovare l'aggiornamento.
Assenza connessione alla rete
In rari casi potrebbe capitare che il chroot non riesca a navigare in rete. Per verificare se è causato dal non funzionamento della connessione, digitare il comando:
ping -c 4 ubuntu.com
Un output simile al seguente indica il non funzionamento della connessione alla rete:
ping: ubuntu.com: Nome o servizio sconosciuto
Per aggirare il problema eseguire la seguente procedura:
Uscire dal chroot.
Montare separatamente la directory /etc/resolv.conf, digitando il seguente comando:
sudo mount --bind /etc/resolv.conf /mnt/etc/resolv.conf
Completare la procedura dal punto 5.