Guida alla configurazione di Xorg: differenze tra le versioni
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 7: | Riga 7: | ||
Grazie al diffondersi di applicazioni opensource di un certo livello, come OpenOffice e TheGimp, X viene supportato, in modo secondario anche da altri sistemi operativi non-unix (come Windows e Mac OS X). | Grazie al diffondersi di applicazioni opensource di un certo livello, come OpenOffice e TheGimp, X viene supportato, in modo secondario anche da altri sistemi operativi non-unix (come Windows e Mac OS X). | ||
Si basa su un'intelligente architettura client/server, in cui il server X comunica con gli altri programmi che fungono da client: quindi le richieste | Si basa su un'intelligente architettura client/server, in cui il server X comunica con gli altri programmi che fungono da client: quindi le richieste dell'utente (come ad esempio, lo spostamento della finestra, l'ingrandimento, il click del mouse su un certo dato pulsante, l'inserimento di testo in una textbox...) vengono recuperate dal server, il quale a sua volta le invia al client che risponde al dato evento. Inoltre può succedere anche che il client si rivolga al server affinchè questo svolga certe operazioni (ad esempio un'applicazione OpenGL può richiedere al server X servizi per il rendering 3D...). | ||
Ciò che andremo ad analizzare nella guida sarà il file xorg.conf (di solito è: <code>/etc/X11/xorg.conf</code>, digita <code>man xorg.conf</code> per una lista delle possibili directory del file), che permette una configurazione precisa e profonda dell'X Server. | Questa architettura permette un notevole vantaggio rispetto alle interfacce grafiche che non la adottano (ad esempio quella di Windows): infatti, nel momento in cui vengono a presentarsi certi problemi relativi al server grafico, il sistema non è costretto ad andare in crash poichè bastano pochi comandi per farlo partire nuovamente, senza dover riavviare il computer. | ||
Una caratteristica fondamentale (e anti-intuitiva) è che il server grafico risiede sulla macchina dell'utente mentre le varie applicazioni (client) possono essere anche remote: infatti il tutto viene considerato dal punto di vista dell'applicazione che chiede (tramite l'utente) servizi al server. Da notare che, comunque, l'applicazione remota è eseguita come se risiedessa sulla stessa macchina del server. | |||
Ciò che andremo ad analizzare nella guida sarà il file xorg.conf (di solito è: <code>/etc/X11/xorg.conf</code>, digita <code>man xorg.conf</code> per una lista delle possibili directory del file, oppure <code>sudo find / -iname xorg.conf</code> per vedere la locazione nel tuo computer Ctrl+C per fermare la ricerca), che permette una configurazione precisa e profonda dell'X Server. | |||
Nelle nuove versioni Xorg si autoconfigura rendendo quindi, in un certo senso, "inutile" il file di configurazione. Questo è vero da un lato, cioè se vogliamo una macchina pronta subito dopo l'installazione del sistema. Però, d'altro canto, come ogni cosa fatta personalmente, scrivere il proprio file di configurazione è molto più efficiente: non solo perchè possiamo ovviare ad alcuni "errori" che la configurazione automatica può portare con sè, ma anche perchè avremo un ambiente completamente personalizzato e messo a punto in ogni particolare. | Nelle nuove versioni Xorg si autoconfigura rendendo quindi, in un certo senso, "inutile" il file di configurazione. Questo è vero da un lato, cioè se vogliamo una macchina pronta subito dopo l'installazione del sistema. Però, d'altro canto, come ogni cosa fatta personalmente, scrivere il proprio file di configurazione è molto più efficiente: non solo perchè possiamo ovviare ad alcuni "errori" che la configurazione automatica può portare con sè, ma anche perchè avremo un ambiente completamente personalizzato e messo a punto in ogni particolare. | ||
Riga 46: | Riga 50: | ||
* Vendor: Vendor-specific configuration | * Vendor: Vendor-specific configuration | ||
La sezione ServerLayout è il livello più alto, serve a tenere unite i device di input/output utilizzati in una sessione. I device di input sono descritti nella sezione InputDevice. Mentre i device di output (=monitor, scheda grafica) sono descritti all'interno della sezione Screen. Il monitor è descritto nella sezione Monitor e la scheda grafica nella sezione Device. | |||
Una SectionEntry (vedremo dopo quelle particolari di ogni SectionName) è formata da una parola chiave seguita da uno o più argomenti dipendenti da essa. I tipi di questi argomenti sono 3: Integer (interi), Real (virgola mobile), String (stringa racchiusa tra (") ). | |||
Una parola chiave importante è <b>Option</b> che viene utilizzata per settare particolari opzioni di un componente del server (tastiera, mouse, monitor, scheda grafica...). | |||
<b>Option</b> è formata da una o due stringhe: la prima è il nome dell'opzione, e la seconda, non obbligatoria, è il valore dell'opzione. | |||
Molto sinteticamente, per comprederne il funzionamento, si legga questo esempio preso dal man: | |||
<quote> | |||
Example: the following option entries are equivalent: | |||
Option "Accel" "Off" | |||
Option "NoAccel" | |||
Option "NoAccel" "On" | |||
Option "Accel" "false" | |||
Option "Accel" "no" | |||
</quote> |
Versione delle 00:11, 22 mar 2010
Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.
Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template. |
Versioni Compatibili ERRORE: valore non valido ( Tutte le versioni di Debian )! Vedi qui. |
Che cos'è
Xorg è il server dell'X Window System, il gestore grafico dei sistemi Unix, sviluppato da X.Org Foundation, rilasciato sotto licenza MIT (software libero). Grazie al diffondersi di applicazioni opensource di un certo livello, come OpenOffice e TheGimp, X viene supportato, in modo secondario anche da altri sistemi operativi non-unix (come Windows e Mac OS X).
Si basa su un'intelligente architettura client/server, in cui il server X comunica con gli altri programmi che fungono da client: quindi le richieste dell'utente (come ad esempio, lo spostamento della finestra, l'ingrandimento, il click del mouse su un certo dato pulsante, l'inserimento di testo in una textbox...) vengono recuperate dal server, il quale a sua volta le invia al client che risponde al dato evento. Inoltre può succedere anche che il client si rivolga al server affinchè questo svolga certe operazioni (ad esempio un'applicazione OpenGL può richiedere al server X servizi per il rendering 3D...).
Questa architettura permette un notevole vantaggio rispetto alle interfacce grafiche che non la adottano (ad esempio quella di Windows): infatti, nel momento in cui vengono a presentarsi certi problemi relativi al server grafico, il sistema non è costretto ad andare in crash poichè bastano pochi comandi per farlo partire nuovamente, senza dover riavviare il computer.
Una caratteristica fondamentale (e anti-intuitiva) è che il server grafico risiede sulla macchina dell'utente mentre le varie applicazioni (client) possono essere anche remote: infatti il tutto viene considerato dal punto di vista dell'applicazione che chiede (tramite l'utente) servizi al server. Da notare che, comunque, l'applicazione remota è eseguita come se risiedessa sulla stessa macchina del server.
Ciò che andremo ad analizzare nella guida sarà il file xorg.conf (di solito è: /etc/X11/xorg.conf
, digita man xorg.conf
per una lista delle possibili directory del file, oppure sudo find / -iname xorg.conf
per vedere la locazione nel tuo computer Ctrl+C per fermare la ricerca), che permette una configurazione precisa e profonda dell'X Server.
Nelle nuove versioni Xorg si autoconfigura rendendo quindi, in un certo senso, "inutile" il file di configurazione. Questo è vero da un lato, cioè se vogliamo una macchina pronta subito dopo l'installazione del sistema. Però, d'altro canto, come ogni cosa fatta personalmente, scrivere il proprio file di configurazione è molto più efficiente: non solo perchè possiamo ovviare ad alcuni "errori" che la configurazione automatica può portare con sè, ma anche perchè avremo un ambiente completamente personalizzato e messo a punto in ogni particolare.
Com'è fatto
Il file xorg.conf è composto da un certo numero di sezioni (=Section) in un ordine qualsiasi. Ogni sezione ha la forma seguente:
Section "SectionName" SectionEntry ... EndSection
Come leggiamo nel man, le sezioni possono avere i seguenti nomi (in grassetto quelli più importanti)
- Files: Percorsi di file particolarmente utili (database RGB, caratteri...)
- ServerFlags: Server flags
- Module: Indica al server quali moduli deve caricare (es: estensioni come glx, per la gestione del rendering OpenGL all'interno delle finestre, moduli per il font rasterization...)
- InputDevice: Descrizione dei device di input (mouse, tastiera...)
- Device: Descrizione della scheda grafica
- VideoAdaptor: Xv video adaptor description
- Monitor: Descrizione del monitor
- Modes: Video modes descriptions
- Screen: Configurazione dello schermo
- ServerLayout: Strato principale del file
- DRI: DRI-specific configuration
- Vendor: Vendor-specific configuration
La sezione ServerLayout è il livello più alto, serve a tenere unite i device di input/output utilizzati in una sessione. I device di input sono descritti nella sezione InputDevice. Mentre i device di output (=monitor, scheda grafica) sono descritti all'interno della sezione Screen. Il monitor è descritto nella sezione Monitor e la scheda grafica nella sezione Device. Una SectionEntry (vedremo dopo quelle particolari di ogni SectionName) è formata da una parola chiave seguita da uno o più argomenti dipendenti da essa. I tipi di questi argomenti sono 3: Integer (interi), Real (virgola mobile), String (stringa racchiusa tra (") ). Una parola chiave importante è Option che viene utilizzata per settare particolari opzioni di un componente del server (tastiera, mouse, monitor, scheda grafica...). Option è formata da una o due stringhe: la prima è il nome dell'opzione, e la seconda, non obbligatoria, è il valore dell'opzione. Molto sinteticamente, per comprederne il funzionamento, si legga questo esempio preso dal man:
<quote> Example: the following option entries are equivalent: Option "Accel" "Off" Option "NoAccel" Option "NoAccel" "On" Option "Accel" "false" Option "Accel" "no" </quote>