GNU/Linux >> Linux Esercitazione >  >> Linux

Difficoltà a far funzionare busybox switch_root

Il motivo per cui switch_root non funziona sulla riga di comando è questo codice in busybox:

    if (st.st_dev == rootdev || getpid() != 1) {
        // Show usage, it says new root must be a mountpoint
        // and we must be PID 1
        bb_show_usage();
    }

Non sei PID 1, quindi stai cadendo in questo bb_show_usage . L'implicazione è che il switch_root Il comando nello script init initramfs dovrebbe eseguire switch_root con exec . cioè

exec switch_root ...

L'altro problema con i tuoi errori "non trovato" è probabilmente dovuto al fatto che le librerie condivise necessarie per gli eseguibili non vengono trovate, perché il filesystem root initramfs non le ha. Se puoi ottenere switch_root per lavorare con exec , è probabile che l'errore "non trovato" scompaia.


Linux
  1. Iniziare con Zsh

  2. Freebsd:far funzionare correttamente il mastice con Freebsd?

  3. Far funzionare Mtp con un Galaxy Tab 2 7.0?

  4. Ottenere sudo e nohup per lavorare insieme

  5. Suggerimenti su come far funzionare la finestra mobile senza dover eseguire `sudo docker -d` su Ubuntu 15.04

Iniziare con GnuCash

Processo di creazione di Linux?

perché ricevo un errore di formato Exec quando scrivo il mio servizio Linux?

Problemi con Steam Terraria in esecuzione su Linux

Ottenere l'errore:bash:./program:impossibile eseguire il file binario:errore di formato Exec

Busybox, netstat, no -p