Start X at Login (Italiano)

From ArchWiki
Revision as of 19:40, 2 November 2011 by Hilinus (Talk | contribs) (Metodo {{Filename|~/.bash_profile}})

Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Introduzione

Tipicamente, i comandi Template:Filename o Template:Filename sono usati per avviare X in modo manuale. Entrambi eseguiranno il contenuto del file Template:Filename, che può essere personalizzato per avviare il window manager di vostra scelta, come descritto nell'articolo xinitrc.

La maggior parte degli utenti che desiderano inizializzare un server X in fase di boot installano un gestore di login grafico: si veda Display Manager per i dettagli.

Usando il #Metodo ~/.bash_profile, X verrà avviato una volta che si è fatto il login ad una tty. Il #Metodo /etc/inittab consente di avviare X automaticamente, senza che venga richiesta una password.

Metodi

Metodo Template:Filename

Nota: Questo metodo può essere combinato con automatic login to virtual console di modo che si comporti in modo simile al metodo inittab, con la differenza che questo registrerà correttamente la vostra sessione e funzionerà con consolekit.
Attenzione: Si noti che vi è una importante differenza in termini di sicurezza tra usare un login manager o il semplice startx. Quando si usa startx, si è sempre in grado di passare da X (solitamente avviato sulla tty7) alla console testuale (Ctrl + Alt + F1), ottenendo così il controllo sulla shell utente anche quando lo schermo è bloccato (ad esempio via xscreensaver o con i3clock). Una soluzione è quella di sostituire Template:Codeline con Template:Codeline. Questo comando avvierà X, redirigerà l'output in Template:Filename e bloccherà l'accesso alla shell. Naturalmente si dovrà installare Template:Package Official affinchè funzioni.

Una via alternativa all'utilizzo di un login manager è quella di aggiungere questo codice in fondo al vostro Template:Filename presente nella vostra home (se questo file non esiste, dovrete crearlo. Se si sta usando Zsh come shell predefinita, si aggiungano invece le righe seguenti al proprio Template:Filename). Template:File

oppure, con controlli addizionali (se la tty1, accessibile con ctrl-alt-F1, riporta un messaggio d'errore):

Template:File

O con una richiesta esplicita:

Template:File


Usando questo metodo, l'utente verrà automaticamente disconnesso quando X viene terminato. Per evitare questo comportamento, rimuovere il comando Template:Codeline dallo script.

Metodo Template:Filename

Attenzione: Questo metodo non userà /bin/login, né registrerà la sessione, percui essa non comparirà nell'output di comandi come `who` o `w`. Inoltre, la sessione non verrà autorizzata come "locale" da consolekit, perciò non sarete in grado di spegnere/riavviare il pc o montare/smontare i drives senza l'ausilio di sudo o su

Un altro metodo è quello di inizializzare direttamente X con il vostro DE\WM preferito, senza richiesta di nessun login, e lo si può fare editando con permessi di root, il file Template:Filename in questo modo:

id:3:initdefault:

[...]

x:5:respawn:/usr/bin/xdm -nodaemon

in:

id:5:initdefault:

[...]

x:5:once:/bin/su - -- PREFERRED_USER -l -c '/usr/bin/startx </dev/null >/dev/null 2>&1'

L'opzione - invoca una "shell di login" aggiungendo un trattino (-) al suo nome. Dal momento che è stato specificata l'esecuzione di un comando con lo switch -c, la shell sarà avviata in "modalità non interattiva". Bash non effettua il normale processo di login in modalità non interattiva a meno che non sia costretto a farlo con lo switch -l. L'opzione -- assicura che gli switch -l e -c siano passati alla shell, invece che a su. Questi workarounds sono necessari a causa della combinazione tra Gnu su e Bash; si veda a tal proposito "su 5.2.1 does not invoke bash as a login shell".

Lo standard input deve essere rediretto (Template:Codeline) se Getty o qualche altro programma è ancora in uso sulla console, altrimenti potrebbero verificarsi conflitti tra più programmi che si "rubano" a vicenda l'output della console.

È altresì possibile redirigere l'output a /dev/null per evitare che X scriva i suoi messaggi in console.

Il campo Template:Codeline, può essere cambiato in Template:Codeline per far sì che X venga riavviato dopo la sua chiusura.

Il comando Template:Codeline può essere modificato secondo le proprie necessità. Di seguito, alcuni esempi:

startx -- -nolisten tcp -br -deferglyphs 16

È possibile ripetere l'intera procedura per più utenti, usando runlevels differenti:

x1:4:once:/bin/su - -- PREFERRED_USER1 -l -c '/usr/bin/startx </dev/null >/dev/null 2>&1'
x2:5:once:/bin/su - -- PREFERRED_USER2 -l -c '/usr/bin/startx </dev/null >/dev/null 2>&1'

e inserire due voci nel menu.lst di GRUB:

# (0) Arch Linux
title  Arch Linux USER1
root   (hd0,0)
kernel /vmlinuz-linux root=/dev/disk/by-label/Arch ro 4
initrd /initramfs-linux.img
# (1) Arch Linux
title  Arch Linux USER2
root   (hd0,0)
kernel /vmlinuz-linux root=/dev/disk/by-label/Arch ro 5
initrd /initramfs-linux.img
Nota: Se si hanno problemi con caratteri non-ASCII nell'X avviato in questo modo, rimuovere lo switch Template:Codeline (si veda qui).