back

Nel codice sopra indicato, le istruzioni alla riga 144 avviano le console di GNU/Hurd con il comando contenuto nella variabile RUNTTYS, precedentemente valorizzata nello script /etc/alternatives/runsystem come:

[..omissis..]
28   RUNTTYS=/libexec/runttys
[..omissis..]

Tale valore corrisponde ad al programma /libexec/runttys [src:/hurd-20090404/daemons/runttys.c] che avvia le console (secondo l'architettura frequentemente prevista in un sistema unix-like) consultando il file di configurazione /etc/ttys il cui contenuto è di seguito elencato:

# Programs to be maintained on terminal lines.  init runs these programs,
# and restartsthem when they die.  Note that in GNU, unlike in BSD, there
# is no need to list pseudo-ttys here.
# name  program                   type         status  comments
console "/libexec/getty 9600"     mach-color   on      secure trusted console
tty1    "/libexec/getty 38400"    hurd         on      secure trusted console
tty2    "/libexec/getty 38400"    hurd         on      secure trusted console
tty3    "/libexec/getty 38400"    hurd         on      secure trusted console
tty4    "/libexec/getty 38400"    hurd         on      secure trusted console
tty5    "/libexec/getty 38400"    hurd         on      secure trusted console
tty6    "/libexec/getty 38400"    hurd         on      secure trusted console
#com0   "/libexec/getty 9600"     dialup       on      secure

ed avviando, per ciascuna di esse, il programma specificato nella seconda colonna sopra riportata (in tal caso /libexec/getty [src:/hurd-20090404/daemons/getty.c]); quest'ultimo, una volta avviato, richiama il programma /bin/login per la richiesta di accesso al sistema; in caso di successo del login, il programma /bin/login avvia il programma /bin/bash che fornisce i servizi della linea di comando normalmente utilizzata dai terminali a caratteri.
L'esito, quindi, del comando della riga 144 è l'inizializzazione di sette console, di cui quella attiva di default è la prima corrispondente alla console mach collegata al dispositivo /dev/console.
Quanto sopra indicato è verificabile anche con il seguente comando impartito dopo aver effettuato l'accesso nella console mach:

$ who -all

il cui risultato è:

login    - tty1         2009-09-17 20:39 01:36         555
root     - console      2009-09-17 20:56 01:04         651
login    - tty2         2009-09-17 20:39  fa           556
login    - tty3         2009-09-17 20:39  fa           557
login    - tty4         2009-09-17 20:39  fa           558
login    - tty5         2009-09-17 20:39  fa           559
login    - tty6         2009-09-17 20:39  fa           560

dove:

  • la prima colonna da sinistra rappresenta il nome dell'utente collegato (login, se nessun utente è collegato)
back