Accesso automatico con GUI disabilitata in Raspbian


15

Come posso effettuare il login automatico di RPi quando avviato, quando la GUI è disabilitata?

Non è necessario digitare una password quando si accede quando la GUI è abilitata, quindi esiste probabilmente un modo semplice per disabilitare la richiesta della password nella console.


Molto pericoloso, mi mancava un po 'di non avere una password e sembrava aver rovinato la scheda SD. Stai attento!

Risposte:


19

Per Raspbian Wheezy:

Dovresti essere in grado di modificare il file / etc / inittab per abilitare l'accesso automatico.

Trova una linea come questa in / etc / inittab

1:2345:respawn:/sbin/getty --noclear 38400 tty1

Questo avvia il processo getty su tty1. È possibile aggiungere l' --autologinopzione getty a quella riga:

1:2345:respawn:/sbin/getty --autologin {USERNAME} --noclear 38400 tty1

Sostituisci {USERNAME} con l'utente a cui desideri accedere.

Nota Non l'ho provato, controlla la pagina man per getty per maggiori dettagli.

Aggiornamento: Raspbian Jessie utilizza systemd quindi non viene utilizzato inittab. Ecco una FAQ che può essere d'aiuto per Jessie: https://fedoraproject.org/wiki/Systemd#How_do_I_set_automatic_login_on_a_virtual_console_terminal.3F

Le FAQ sono per Fedora ma dovrebbero essere molto simili su Raspbian Jessie.

AGGIORNAMENTO2: La pagina sopra è ora sparita, quindi ecco il contenuto della macchina Wayback:

Come posso impostare l'accesso automatico su un terminale di console virtuale?

Innanzitutto crea un nuovo servizio simile a getty @ .service:

# cp /lib/systemd/system/getty@.service \
     /etc/systemd/system/autologin@.service
# ln -s /etc/systemd/system/autologin@.service \
     /etc/systemd/system/getty.target.wants/getty@tty8.service

quindi modificare i valori ExecStart, Restart e Alias, in questo modo:

...
ExecStart=-/sbin/mingetty --autologin USERNAME %I
Restart=no
...
Alias=getty.target.wants/getty@tty8.service

e infine ricaricare il demone e avviare il servizio:

systemctl daemon-reload
systemctl start getty@tty8.service

Nota che se esci dalla sessione tty8, non sarai in grado di usarlo fino al prossimo riavvio o avvio manuale da systemctl, tranne se lasci Riavvia come 'sempre', ma consiglio vivamente di evitarlo per motivi di sicurezza.


1
L'ho provato; funziona benissimo. Inoltre, inserisci qualcosa in ~ / .bash_profile e verrà eseguito automaticamente dopo aver effettuato l'accesso.
— Greggo

2
Si prega di aggiornare la risposta! Non ci sono /etc/inittabfile in raspbian jessie.
— Oki Erie Rinaldi,

@OkiErieRinaldi Ho aggiunto un link che può aiutare con Jessie.
— Craig

No, ricevo ancora il prompt di accesso all'avvio.
— IgorGanapolsky,

La soluzione Raspbian Jessie non funziona.
— piepi

5

c'è un modo più semplice per farlo usando raspi-config questo articolo lo spiega http://www.opentechguides.com/how-to/article/raspberry-pi/5/raspberry-pi-auto-start.html

mostrando :

  1. come accedere automaticamente al prompt della shell (usando un metodo simile al precedente)
  2. Esegui script all'avvio
  3. Avvia automaticamente il desktop usando raspi-config

1
questo articolo mostra come accedere automaticamente al desktop usando raspi-config, ma la domanda è come accedere automaticamente quando non c'è GUI o Desktop (quindi si apre il prompt della shell). Tuttavia, questo articolo mostra anche come accedere automaticamente alla shell.
— Kolin,

2

Questo ha funzionato per me con Jessie Lite:

sudo -i
mkdir -pv /etc/systemd/system/getty@tty1.service.d
nano /etc/systemd/system/getty@tty1.service.d/autologin.conf

Contenuti:

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux

l'unico problema è che non riesco più ad accedere usando SSH - accesso negato. :-(


1
Una buona risposta dovrebbe dare un'indicazione sul perché funziona. Cosa fanno questi due passaggi? Puoi davvero dire che funziona se si rompe SSH?
— Jacobm001

Questo non funziona! Mi costringe ancora ad accedere dalla riga di comando.
— IgorGanapolsky,

usando $ TERM funziona per te? ExecStart=-/usr/bin/agetty --autologin username --noclear %I $TERM
— esharp

0

Se si desidera accedere automaticamente a Raspberry Pi sulla linea seriale, è necessario modificare il file / etc / inittab su pi con le autorizzazioni sudo.

Trova una linea come questa in / etc / inittab

T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

Aggiungi l'opzione getty --autologin a quella riga.

T0:23:respawn:/sbin/getty --autologin {username} -L ttyAMA0 115200 vt100

Salva e riavvia.


Cosa è T0:23?? Ho pensato che dovrebbe essere 1:2345.
— IgorGanapolsky,

0

Sto eseguendo NOOBS e avevo un file inittab leggermente diverso. Ecco cosa ho cambiato che ha combinato sia "--autologin" sulla linea T0 che la linea 1: 2345:

#1:2345:respawn:/sbin/getty --noclear 38400 tty1"
1:2345:respawn:/bin/login -f pi tty1 <dev/tty1 >/dev/tty1 2>&1
T0:23:respawn:/sbin/getty --autologin pi - L ttyAMA0 115200 vt100

0

quindi il metodo lightdm.conf non ha funzionato per me, dopo un po 'di gioco sul metodo più semplice che ho trovato era sotto.

cd / etc / systemd / system /

da lì digitare: ls

vedrai autologin @ .service

basta sudo nano autologin @ .service

e cambia riga ExecStart = - / sbin / agetty --autologin pi --noclear% I $ TERM

per

ExecStart = - / sbin / agetty --autologin [nome utente] --noclear% I $ TERM

dove [Nome utente] viene inserito l'utente a cui si desidera accedere senza parentesi.

ora ho avuto pi auto login funzionante usando la configurazione di raspi-config, ma ho usato il metodo sopra per cambiare l'autologin per un nuovo utente.

spero che sia di aiuto

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.