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.