Sto preparandomi per gli esami per LPIC1 e, durante una sessione con un
simulatore, mi sono trovato la domanda (traduco liberamente dal tedesco):
Cosa succede se si setta la variabile DISPLAY a "unix:0"?
1) I vari X-Client si collegheranno al primo X-Server della macchina "unix"
2) I vari X-Client si collegheranno al primo display della macchina "unix"
3) I vari X-Client si collegheranno al primo X-Server della macchina
locale, tramite Unix-Socket
4) E' sbagliato. Occorre scrivere "linux:0"
Ovviamente, la 4) e' assolutamente idiota (ma fa ridere!).
Dalla mia esperienza con X, e secondo quanto ho studiato sui libri e sui
vari documenti per prepararmi, la risposta giusta dovrebbe essere la 1)
supportata anche dal fatto che, se voglio lanciare un programma X che mi
manda l'output su una macchina "blah" devo proprio scrivere DISPLAY=blah:0
Purtuttavia il simulatore mi dice che la 1) e' sbagliata e mi accetta come
giusta la 3).
All'inizio pensavo proprio che ci fosse stato un errore nell'inserimento
delle risposte nel simulatore, poi oggi ho deciso di fare la prova.
Ho preso una macchina virtuale con KUbuntu che uso per i vari tests, ho
attivato il listen di X (tolto -nolisten tcp) e riavviato il Server.
A questo punto ho lanciato xclock -display unix:0 e ho avuto la sorpresa
enorme di vedermi comparire XClock sullo schermo locale (sebbene unix NON
sia un nome di host raggiungibile nella mia rete).
A questo punto devo ammettere che il simulatore ha ragione a dire che la
3) e' giusta, ma mi piacerebbe sapere come mai tutti i testi mi dicono che
la sintassi per il DisplayName e':
macchina:XServer.Display
Qualcuno mi puo' illuminare?
Grazie
Luca Bertoncello
(luca...@lucabert.de)
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad ab...@newsland.it
> A questo punto devo ammettere che il simulatore ha ragione a dire che la
> 3) e' giusta, ma mi piacerebbe sapere come mai tutti i testi mi dicono che
> la sintassi per il DisplayName e':
>
> macchina:XServer.Display
>
> Qualcuno mi puo' illuminare?
# man 7 unix
unix è anche un modo per specificate un socket (aperto con PF_UNIX)
DISPLAY=localhost:0 oppure
DISPLAY=unix:0 aprono entrambi il server 0 sulla macchina locale
usando un socket tcp/ip il primo e un socket unix il secondo.
Ciao
Giovanni
--
A computer is like an air conditioner,
it stops working when you open Windows.
< http://giovanni.homelinux.net/ >
> Se vedi http://www.faqs.org/docs/Linux-mini/Remote-X-Apps.html#toc4
> ti dice chiaramente che
> "host/unix:D.S means screen S on display D of host host; the X server for
> this display is listening at UNIX domain socket /tmp/.X11-unix/XD
> (so it's only reachable from host)"
> Si tratta di una forma poco usata ma corretta.
Argh! Mai visto 'sta sintassi! OK, grazie!
Mi sa che segnalero' a tutti quelli che sono ancora incazzati con il
simulatore l'URL che mi hai dato...
> On 2009-11-19, Luca Bertoncello <luca...@lucabert.de> wrote:
>> Mi sa che segnalero' a tutti quelli che sono ancora incazzati con il
>> simulatore l'URL che mi hai dato...
>
> Digli anche che incazzarsi contro un software non e' che aiuti molto...
> soprattutto quando il software ha ragione (ok, non capita spesso
> pero'...)
in definitiva, correggetemi se sbaglio, chiamare una macchina "unix" �
praticamente vietato, o comunque puo' portare ad incosapevoli errori.
> unix:0
Dicesi "socket"...