GNU/Linux
Cambia root (chroot)
Ricerca…
introduzione
Change root (chroot) è un'operazione che modifica la directory root apparente per il processo corrente corrente e i relativi figli. Un programma eseguito in un ambiente così modificato non può accedere a file e comandi all'esterno dell'albero della directory ambientale.
Sintassi
- chroot [percorso di destinazione] [shell o comando]
Modifica manuale di root in una directory
Assicurati di aver soddisfatto tutti i requisiti, come da Requisiti
Montare i filesystem API temporanei:
cd /location/of/new/root mount -t proc proc proc/ mount --rbind /sys sys/ mount --rbind /dev dev/ mount --rbind /run run/ (optionally)
Se è necessario utilizzare una connessione Internet nell'ambiente chroot, copiare i dettagli DNS:
cp /etc/resolv.conf etc/resolv.confCambia root in / location / of / new / root, specificando la shell (
/bin/bashin questo esempio):chroot /location/of/new/root /bin/bashDopo il chroot potrebbe essere necessario caricare la configurazione di bash locale:
source /etc/profile source ~/.bashrcFacoltativamente, creare un prompt univoco per poter differenziare l'ambiente chroot:
export PS1="(chroot) $PS1"Al termine con chroot, puoi uscire tramite:
exitSmontare i file system temporanei:
cd / umount --recursive /location/of/new/root
Requisiti
- privilegi di root
- un altro ambiente Linux funzionante, come l'avvio di Live CD o una distribuzione esistente
- corrispondenti architetture di ambiente di origine e destinazione
chroot(controllare l'architettura dell'ambiente corrente conuname -m) - i moduli del kernel che potrebbero essere necessari in ambiente
chrootdevono essere caricati (ad esempio, conmodprobe)
Ragioni per usare chroot
La modifica della root viene comunemente eseguita per l'esecuzione della manutenzione del sistema su sistemi in cui l'avvio e / o l'accesso non sono più possibili.
Esempi comuni sono:
- reinstallare il bootloader
- ricostruire l'immagine di initramfs
- aggiornamento o declassamento dei pacchetti
- reimpostare una password dimenticata
- costruzione di software in un ambiente root pulito