Oops Ho bisogno di runlevel 1


Risposte:


16

Questo non è esattamente un modo per entrare nel runlevel 1, ma c'è un'opzione di avvio "modalità sicura" nel firmware di raspberry Pi. Per abilitarlo, è necessario inserire un ponticello tra i pin 5 e 6 sull'intestazione P1 (GPIO) durante l'avvio.

Pin di Safemode

In tal caso, il bootloader ignorerà il config.txtfile (ad eccezione avoid_safe_modedell'opzione che può essere utilizzata per disabilitare questa funzione) e proverà ad avviarsi kernel_emergency.img(se disponibile) invece di kernel.img.

L'impostazione predefinita kernel_emergency.imginclude speciali initramfsbuild di emergenza e si avvierà su questo SO basato su busybox in modo da poter risolvere manualmente i problemi nel proprio SO (o modificare i parametri di avvio del kernel per eseguire runlevel 1 al prossimo avvio). Ricordarsi di eseguire syncprima di spegnere dato rebooto shutdowncomandi potrebbero non funzionare.


Questo è esattamente quello che stavo cercando.
— Deac Karns,

5
  • Premi Maiusc all'avvio.
  • Premi "e" per modificare la configurazione
  • scheda sopra a cmdline.txt
  • aggiungere alla fine della riga

    init=/bin/sh

  • premi ok, quindi Esc per l'avvio ...... ti avvierà da una riga di comando

    # /etc/init.d/mountall.sh (questo farà qualcosa)

    # mount -n -o remount,rw / (questo verrà rimontato / in modo da poter apportare modifiche)

  • ora dovresti essere in grado di modificare la configurazione init.d ......

  • al riavvio .... tieni premuto shift e rimuovi init = / bin / sh

Eccellente! Avevo trovato le istruzioni per avviare sh ma non avevo le cose di rimontaggio di cui avevo bisogno. Grazie!
— Richard Turner,

3

Molte delle altre risposte qui non sono corrette:

  • Il metodo pin jumper GPIO è stato rimosso dal sistema operativo a monte, quindi funziona solo se si utilizza un'immagine NOOBS

  • Il passaggio di Raspbian Jessie a systemd interrompe l' init=/bin/shhack. Quando lo fai, si lamenta,can't access tty: job control turned off

Fortunatamente, esiste una soluzione che funziona, che in realtà offre un vero accesso per singolo utente: aggiungi uno spazio e un 1alla fine di cmdline.txt, subito dopo il rootwaitparametro.

Il menu di avvio hold-Shift non esiste con l'immagine del sistema operativo Raspbian Jessie, quindi dovrai farlo modificando /boot/cmdline.txtda un altro computer se non stai utilizzando l'immagine NOOBS.


2

Non sono riuscito a trovare un modo per forzare l'avvio di pi nel runlevel 1, quindi ho acceso un disco live fedora che avevo in giro e ho usato il terminale per rimuovere lo script in questione dalla directory /etc/init.d


1

Se si desidera accedere e modificare i file di partizione Linux della scheda SD da Windows, è possibile farlo con una di queste utilità .


Benvenuto! Fai il tour e visita il centro assistenza . Sebbene ciò possa teoricamente rispondere alla domanda, è preferibile includere qui le parti essenziali della risposta e fornire il collegamento come riferimento. In realtà stiamo applicando questa politica : modifica in modo che la risposta sia autonoma in caso di interruzione del collegamento in futuro. Se non viene modificato entro 48 ore, verrà convertito in Wiki comunità.
— Jacobm001

1
  1. Avvia nel runlevel 1

    $ sudo init 1
    
  2. Dopo l'avvio nel runlevel 1

    $ passwd
    

NOTA: per eseguire il livello di esecuzione 1, modificare il file /etc/inittabda id:2:initdefault:qualcosa di simile come:id:1:initdefault:


2
Ma si sta davvero avviando nel runlevel 1? Voglio dire, difficilmente si può fare se la macchina non viene avviata in primo luogo, vero?
— Bex,

No, certamente no. Che cosa è, sta cambiando il livello di esecuzione su un sistema in esecuzione.
— Crusty Barnacle,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.