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

  1. Assicurati di aver soddisfatto tutti i requisiti, come da Requisiti

  2. 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)
    
  1. Se è necessario utilizzare una connessione Internet nell'ambiente chroot, copiare i dettagli DNS:

    cp /etc/resolv.conf etc/resolv.conf
    
  2. Cambia root in / location / of / new / root, specificando la shell ( /bin/bash in questo esempio):

    chroot /location/of/new/root /bin/bash
    
  3. Dopo il chroot potrebbe essere necessario caricare la configurazione di bash locale:

    source /etc/profile
    source ~/.bashrc
    
  4. Facoltativamente, creare un prompt univoco per poter differenziare l'ambiente chroot:

    export PS1="(chroot) $PS1"
    
  5. Al termine con chroot, puoi uscire tramite:

    exit
    
  6. Smontare 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 con uname -m )
  • i moduli del kernel che potrebbero essere necessari in ambiente chroot devono essere caricati (ad esempio, con modprobe )

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


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow