curiosità sulla variabile 'DISPLAY' e collegamento X remoto

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Ennio-Sr
Ciao a tutti!

Negli ultimi giorni, ricercando le cause di alcuni comportamenti 'anomali' della
console grafica, ho trovato, invece, la soluzione ad un vecchio problema,
ovvero il collegamento da remoto all'Xserver di casa.

La 'chiave' del corretto funzionamento - nel mio caso (ne ho lette di diverse
di soluzioni...) - è stata il comando 'export DISPLAY=":10.0".  

Ho pensato di snellire la cosa inserendo quel comando in uno script ('dis'):

---------- questo è lo script "dis": ---------------
// #! /bin/sh

// if [ `echo "$DISPLAY"` != ":10.0" ]; then                  
//   DISPLAY=":10.0"                                  
//   export DISPLAY
//   echo "$DISPLAY"; echo  "Bene, ora si può procedere"
// fi                                                        
//   exit                                                    
-----------------------------------------------
Ebbene, se lancio lo script [naturalmente dopo aver stabilito da un Xterm sul
portatile il collegamento in 'ssh -v -X ...' con il PC di casa]:

mcmini_$ sh dis
:10.0    <--- questo è ciò che ottengo a schermo

però il collegamento non funziona (ad es. 'xclock &' appare sullo schermo del
PC di casa)

E, in effetti,  
mcmini_$ echo $DISPLAY
:0.0     <-------- come si spega questo risultato???

Inserendo nello script il comando 'env | grep DISPLAY' posso vedere che la
risposta è 'DISPLAY=:10.0', tuttavia, 'echo $DISPLAY' dato in xterm (come detto
prima) dà ':0.0'.
In pratica, è come se fossero due 'ambienti' diversi... tanto più che, se dò
'env' dall'xterm (dal quale ho stabilito il collegamento al PC di casa), mi
ritorno DISPLAY=':0.0'.
Ovviamente, se l'export DISPLAY lo scrivo da riga di comando dell'xterm,
funziona.

Qualcuno può cortesemente spiegarmi il perché?

Grazie dell'attenzione,
    ennio

--
[Perche' usare Win$ozz (dico io) se ..."anche uno sciocco sa farlo.   \\?//
 Fa' qualche cosa di cui non sei capace!"  (diceva Henry Miller) ]    (°|°)
[Why use Win$ozz (I say) if ... "even a fool can do that.              )=(
 Do something you aren't good at!" (as Henry Miller used to say) ]

Reply | Threaded
Open this post in threaded view
|

Re: curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Michele Orsenigo-16
On mercoledì 22 maggio 2019 22:25:15 CEST Ennio-Sr wrote:

> Ciao a tutti!
>
> Negli ultimi giorni, ricercando le cause di alcuni comportamenti 'anomali'
> della console grafica, ho trovato, invece, la soluzione ad un vecchio
> problema, ovvero il collegamento da remoto all'Xserver di casa.
>
> La 'chiave' del corretto funzionamento - nel mio caso (ne ho lette di
> diverse di soluzioni...) - è stata il comando 'export DISPLAY=":10.0".
>
> Ho pensato di snellire la cosa inserendo quel comando in uno script ('dis'):
>
> ---------- questo è lo script "dis": ---------------
> // #! /bin/sh
>
> // if [ `echo "$DISPLAY"` != ":10.0" ]; then
> //   DISPLAY=":10.0"
> //   export DISPLAY
> //   echo "$DISPLAY"; echo  "Bene, ora si può procedere"
> // fi
> //   exit
> -----------------------------------------------
> Ebbene, se lancio lo script [naturalmente dopo aver stabilito da un Xterm
> sul portatile il collegamento in 'ssh -v -X ...' con il PC di casa]:
>
> mcmini_$ sh dis
>
> :10.0    <--- questo è ciò che ottengo a schermo
>
> però il collegamento non funziona (ad es. 'xclock &' appare sullo schermo
> del PC di casa)
>
> E, in effetti,
> mcmini_$ echo $DISPLAY
>
> :0.0     <-------- come si spega questo risultato???
>
> Inserendo nello script il comando 'env | grep DISPLAY' posso vedere che la
> risposta è 'DISPLAY=:10.0', tuttavia, 'echo $DISPLAY' dato in xterm (come
> detto prima) dà ':0.0'.
> In pratica, è come se fossero due 'ambienti' diversi... tanto più che, se dò
> 'env' dall'xterm (dal quale ho stabilito il collegamento al PC di casa), mi
> ritorno DISPLAY=':0.0'.
> Ovviamente, se l'export DISPLAY lo scrivo da riga di comando dell'xterm,
> funziona.
>
> Qualcuno può cortesemente spiegarmi il perché?
>
> Grazie dell'attenzione,
>     ennio

La variabile DISPLAY rimane locale all'ambiente dello script.
Credo che dovresti usare "source tuoscript"

Buona serata


--
Michele Orsenigo
[hidden email]
----------------


Reply | Threaded
Open this post in threaded view
|

Re: curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Ennio-Sr
* Michele Orsenigo <[hidden email]> [220519, 22:36]:
> On mercoledì 22 maggio 2019 22:25:15 CEST Ennio-Sr wrote:
> > [...]

> La variabile DISPLAY rimane locale all'ambiente dello script.
> Credo che dovresti usare "source tuoscript"
>
> Buona serata
>

Grazie molto della rapida risposta, Michele, che pare risolva il
problema: ho solo dovuto rendere lo script eseguibile prima di dare
'source dis' e poi eliminare l'ultima riga ('exit') perché mi riportava
alla shell del portatile!

Sebbene non desideri approfittare della tua disponibilità, non posso
trattenermi dal chiederti quale 'man' avrei dovuto leggere per arrivarci
da solo...
Tra l'altro, da un paio di mesi sto avendo problemi mai avuti
in passato, tipo:
- gnome-session ha smesso di fornirmi 'X' (ma ho risolto con WMaker)
- ho dovuto togliere 'nouveau', il cui fb aveva sinora funzionato
  perfettamente, perché mi bloccava il boot alla riga:
  'fb: switching to nouveaufb from EFI VGA';
  ma ho finestre e caratteri grandissimi, a  volte inutilizzabili
  e altri problemi connessi, e un suggerimento a letture 'specifiche' mi
  tornerebbe utile, perché ho fatto numerosissime ricerche su google senza
  trovare finora quelle 'giuste'.

Grazie di nuovo e buona notte,

    ennio

--
[Perche' usare Win$ozz (dico io) se ..."anche uno sciocco sa farlo.   \\?//
 Fa' qualche cosa di cui non sei capace!"  (diceva Henry Miller) ]    (°|°)
[Why use Win$ozz (I say) if ... "even a fool can do that.              )=(
 Do something you aren't good at!" (as Henry Miller used to say) ]

Reply | Threaded
Open this post in threaded view
|

Re: curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Davide Prina
On 23/05/19 00:37, Ennio-Sr wrote:
> * Michele Orsenigo [220519, 22:36]:

>> Credo che dovresti usare "source tuoscript"

> quale 'man' avrei dovuto leggere per arrivarci
> da solo...

$ man bash
[...]
source nomefile [argomenti]
               Legge ed esegue comandi dal nomefile nell'ambiente di
shell corrente e ritorna lo stato d'uscita dell'ultimo comando eseguito
contenuto in nomefile.
[...]

al posto di source puoi usare anche .

source mioscript.sh
. mioscript.sh

> Tra l'altro, da un paio di mesi sto avendo problemi mai avuti
> in passato, tipo:
> - gnome-session ha smesso di fornirmi 'X' (ma ho risolto con WMaker)

elimina (commenta) tutti i repository non ufficiali da
/etc/apt/sources.list e da /etc/apt/sources.list.d

# apt update
# apt -u upgrade
# apt -u dist-upgrade
# apt install gnome

controlla se ci sono errori di pacchetti non completamente
configurati/installati
# apt -f install

se ti restituisce che non riesce a configurare alcuni pacchetti, allora
prova ad usare il comando: dpkg -a

altrimenti controlla se ci sono pacchetti che sono corrotti:
# debsums -a

> - ho dovuto togliere 'nouveau', il cui fb aveva sinora funzionato
>    perfettamente, perché mi bloccava il boot alla riga:
>    'fb: switching to nouveaufb from EFI VGA';
>    ma ho finestre e caratteri grandissimi, a  volte inutilizzabili
>    e altri problemi connessi, e un suggerimento a letture 'specifiche' mi
>    tornerebbe utile, perché ho fatto numerosissime ricerche su google senza
>    trovare finora quelle 'giuste'.

prova con quanto indicato sopra... altrimenti servono dei messaggi del
log. Potrebbe essere che hai rimosso dei pacchetti che sono
indispensabili per il corretto funzionamento.

prova anche a vedere, dopo che hai eseguito quanto sopra riportato, se
hai dei pacchetti installati non presenti sul repository

$ apt-show-versions | grep avail

Ciao
Davide

--
Dizionari: http://linguistico.sourceforge.net/wiki
Sistema operativo: http://www.debian.org
GNU/Linux User: 302090: http://counter.li.org
Non autorizzo la memorizzazione del mio indirizzo su outlook

Reply | Threaded
Open this post in threaded view
|

Re: curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Ennio-Sr
* Davide Prina <[hidden email]> [230519, 19:56]:

> On 23/05/19 00:37, Ennio-Sr wrote:
> > * Michele Orsenigo [220519, 22:36]:
> [...]
> > quale 'man' avrei dovuto leggere per arrivarci
> > da solo...
>
> $ man bash
> [...]
> source nomefile [argomenti]
>               Legge ed esegue comandi dal nomefile nell'ambiente di shell
> corrente e ritorna lo stato d'uscita dell'ultimo comando eseguito contenuto
> in nomefile.
> [...]
>

Mmh, dopo il primo suggerimento ho ricordato di averlo già usato qualche
anno fa, ma poi la memoria non mi aveva aiutato ...

> [...]
> > Tra l'altro, da un paio di mesi sto avendo problemi mai avuti
> > in passato, tipo:
> > - gnome-session ha smesso di fornirmi 'X' (ma ho risolto con WMaker)
>
> elimina (commenta) tutti i repository non ufficiali da /etc/apt/sources.list
> e da /etc/apt/sources.list.d
> [...]
>
> prova con quanto indicato sopra... altrimenti servono dei messaggi del log.
> Potrebbe essere che hai rimosso dei pacchetti che sono indispensabili per il
> corretto funzionamento.
>
Ho provato i comandi suggeriti (*) ma quando sono arrivato a
$ apt install gnome
mi sono fermato dinanzi ai 185 MB che voleva scaricare!
In passato (quando funzionava) non ho mai installato l'intero pacchetto
(e tutto ciò che si porta dietro). Non avendo moltoooooo spazio a
disposizione continuerò a usare WWMaker, molto più snello -)
------
_(*)_ in man upgrade/update non ho trovato tra le opzioni il '-u'
------

Quanto ai log, non ho trovato nulla di sinificativo in Xorg e jornalctl.
Qualche indicazione in più la trovo reindirizzando l'output:

-----------
$ startx >  errX  2>&1

...
(gnome-shell:2745): GLib-CRITICAL **: g_utf8_collate: assertion 'str2 != NULL' failed
Gjs-Message: JS LOG: Failed to launch ibus-daemon: Failed to execute child process \
                "ibus-daemon" (No such file or directory)

(gnome-shell:2745): St-CRITICAL **: st_label_set_text: assertion 'text != NULL' failed

(gnome-shell:2745): mutter-WARNING **: Failed to load background 'resource:///org/gnome\
                /shell/theme/noise-texture.png': The resource at '/org/gnome/shell/theme\
                /noise-texture.png' does not exist

(gnome-shell:2745): Clutter-ERROR **: ClutterBoxLayout child StBin minimum height: \
                -1.000000 < 0 for width 1280.000000
/home/ennio/.xinitrc: line 40:  2745 Trace/breakpoint trap   $WINMGR
xinit: connection to X server lost
------------

e immagino che gli errori di cui sopra attengano alla mancanza del
pacchetto gnome che, ripeto, non ho mai installato per intero e, negli
ultimi due o tre anni, la 'gnome-session' funzionava...



> prova anche a vedere, dopo che hai eseguito quanto sopra riportato, se hai
> dei pacchetti installati non presenti sul repository
>
> $ apt-show-versions | grep avail
>

Non ho trovato questo pacchetto ma ritengo che il problema sia nella
mancanza di gnome...

Ti ringrazio molto della risposta, che ho letto con ritardo, donde
questo mio tardivo riscontro, di cui ti chiedo scusa.

Ciao, Ennio

--
[Perche' usare Win$ozz (dico io) se ..."anche uno sciocco sa farlo.   \\?//
 Fa' qualche cosa di cui non sei capace!"  (diceva Henry Miller) ]    (°|°)
[Why use Win$ozz (I say) if ... "even a fool can do that.              )=(
 Do something you aren't good at!" (as Henry Miller used to say) ]

Reply | Threaded
Open this post in threaded view
|

Re: curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Piviul-2
Il 28/05/19 01:28, Ennio-Sr ha scritto:
> [...]
> Non ho trovato questo pacchetto ma ritengo che il problema sia nella
> mancanza di gnome...
non credo dipenda da gnome:
> $ apt-file search bin/apt-show-versions
> apt-show-versions: /usr/bin/apt-show-versions


Piviul

Reply | Threaded
Open this post in threaded view
|

Re: curiosità sulla variabile 'DISPLAY' e collegamento X remoto

Ennio-Sr
* Piviul <[hidden email]> [280519, 09:35]:
> Il 28/05/19 01:28, Ennio-Sr ha scritto:
> > [...]
> > Non ho trovato questo pacchetto ma ritengo che il problema sia nella
> > mancanza di gnome...
> non credo dipenda da gnome:

Mmh, mi rendo conto che la mia frase era ambigua: per *problema*
intendevo quello segnalato prima, ossia la mancata partenza di X (senza
il pacchetto gnome, mai installato per intero) contrariamente a quanto
accadeva negli anni passati
> > $ apt-file search bin/apt-show-versions
> > apt-show-versions: /usr/bin/apt-show-versions
>
QUi, invece, mi mancava proprio il pacchetto, che ho dovuto installare.
Grazie dei suggerimenti,
    Ennio

--
[Perche' usare Win$ozz (dico io) se ..."anche uno sciocco sa farlo.   \\?//
 Fa' qualche cosa di cui non sei capace!"  (diceva Henry Miller) ]    (°|°)
[Why use Win$ozz (I say) if ... "even a fool can do that.              )=(
 Do something you aren't good at!" (as Henry Miller used to say) ]