Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
ssh, distinzione sessioni varie!
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Forum di discussione italiano
View previous topic :: View next topic  
Author Message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Sun Nov 05, 2006 8:43 pm    Post subject: ssh, distinzione sessioni varie! Reply with quote

Mi capita spesso di lanciare da xterm connessioni ssh a server remoti e allo stesso tempo avere aperto un terminale su localhost.
Non vi capita mai di digitare un comando che volete eseguire in remoto, o vicevarsa, sul terminale sbagliato? A me spessissimo!
Quindi ho pensato, per la connessione ssh cambio colore di background rispetto al nero di default! :lol: che lampi di genio mi prendono ogni tanto!!! :lol:
Il modo più semplice che ho trovato, per ora, è crearmi una nuova icona che mi esegua qualcosa del tipo xterm -fg black -bg red, e da qui lanciare ssh,ma non è l'estrema comodità!

Quello che voglio ottenere è lanciare ssh, e quindi xterm cambia i suoi colori, chiudere la connessione ssh e ripristinare quelli di default!

E' possibile fare questo tutto nello stesso terminale (potrei anche passare a eterm/aterm se c'è ne fosse il bisogno :cry:)?
Qualche suggerimento?
_________________
LP


Last edited by lucapost on Mon Nov 06, 2006 2:49 pm; edited 1 time in total
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3272
Location: Italy, Milano

PostPosted: Sun Nov 05, 2006 10:09 pm    Post subject: Reply with quote

Io ho personalizzato il $PS1 delle varie macchine alle quali mi connetto in modo da avere una visione di colori differente e notare subito su che macchina sto lavorando, indipendentemente dal programma che sto utilizzando per connettermi tramite ssh ... !
Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Sun Nov 05, 2006 10:25 pm    Post subject: Reply with quote

$PS1 è una variabile da mettere in .bashrc giusto?
Ti spiace indicarmi più precisamete come hai fatto, magari con qualche commento sulle opzioni che utilizzi?
_________________
LP
Back to top
View user's profile Send private message
gutter
Bodhisattva
Bodhisattva


Joined: 13 Mar 2004
Posts: 7162
Location: Aarau, Aargau, Switzerland

PostPosted: Mon Nov 06, 2006 8:46 am    Post subject: Reply with quote

Io uso questa:

Code:

################################
# Accept syntax:               #
# smartssh user@remote_host    #
################################

smartssh() {
    PARAMS="$*"
    echo -ne "\033]0;$PARAMS\007"
    ssh $PARAMS
}

_________________
Registered as User #281564 and Machines #163761
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3654

PostPosted: Mon Nov 06, 2006 9:08 am    Post subject: Reply with quote

Io rinomino le sessioni di konsole ... visto che mi collego a diverse macchine remote contemporaneamente dovrei avere diverse combinazioni cromatiche e ricordarmi quali colori corrispondono a quale macchina mentre se me lo scrivo sotto mi viene più immediato :wink:

/EDIT: ho pensato di condividere con la comunità lo scriptino che utilizzo io (anche se non colora la sessione e quindi lievemente OT)
Code:
#!/bin/bash

dcop $KONSOLE_DCOP_SESSION renameSession "$(echo $1 |cut -f 2 -d "@")"
ssh $1
dcop $KONSOLE_DCOP_SESSION renameSession "Locale"

L'ho chiamato ssh.sh e ho impostato un alias ssh che lo richiami.
In questo modo rinomino la sessione con l'hostname (o l'ip) della macchina a cui mi collego e quando ssh termina imposta il nome a Locale.

Io lo trovo utile e simpatico ...
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Mon Nov 06, 2006 2:44 pm    Post subject: Reply with quote

gutter wrote:
Io uso questa:

Code:

################################
# Accept syntax:               #
# smartssh user@remote_host    #
################################

smartssh() {
    PARAMS="$*"
    echo -ne "\033]0;$PARAMS\007"
    ssh $PARAMS
}


ok, questo in .bashrc in locale rinomina la finestra di xterm, o quel che sia.
Ma quando chiudo la sessione ssh rimane tutto com'e'!

@federico
puoi spiegarmi meglio la tua soluzione, e quindi cosa modificare su ciasun server?

ps: ho modificato il titolo in modo da accontentere anche Kernel78
_________________
LP
Back to top
View user's profile Send private message
Sasdo
Guru
Guru


Joined: 18 Feb 2004
Posts: 542
Location: 44.476474,11.644446 circa.

PostPosted: Mon Nov 06, 2006 3:46 pm    Post subject: Reply with quote

federico wrote:
Io ho personalizzato il $PS1 delle varie macchine alle quali mi connetto in modo da avere una visione di colori differente e notare subito su che macchina sto lavorando, indipendentemente dal programma che sto utilizzando per connettermi tramite ssh ... !
Fede


Anche io ho fatto così.

Per la modifica delle variabili PS1 ti rimando a questo topic dove se ne parla ampiamente:

https://forums.gentoo.org/viewtopic-t-195046-highlight-prompt+bash.html

devi modificare i .bashrc con le opzioni che vuoi.

Ciaos!
_________________
LinuxUser #362518
--
Ochei lo ammetto: il mio cervello lo tengo in frigo.
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Mon Nov 06, 2006 5:08 pm    Post subject: Reply with quote

ok, ho capito come vedere data, ora, ecc
Ma per cambiare colore di backgroud?
_________________
LP
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3272
Location: Italy, Milano

PostPosted: Mon Nov 06, 2006 8:22 pm    Post subject: Reply with quote

Sasdo wrote:
https://forums.gentoo.org/viewtopic-t-195046-highlight-prompt+bash.html

In aggiunta mio fratello ha scritto un programma che semplifica la scrittura di un PS, lo puoi trovare qui:
http://www.sideralis.org/p.php?action=4&pjid=18

Non penso sia possibile tramite questo sistema variare il colore di sfondo ma solo tutte le impostazioni del prompt della shell, sia come colori sia come contenuti (e quindi e' possibile ottenere MOLTE varieta'). Personalmente trovo che cambiare il colore di backgroud ucciderebbe la mia vista...
Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
gutter
Bodhisattva
Bodhisattva


Joined: 13 Mar 2004
Posts: 7162
Location: Aarau, Aargau, Switzerland

PostPosted: Mon Nov 06, 2006 10:17 pm    Post subject: Reply with quote

lucapost wrote:

Ma quando chiudo la sessione ssh rimane tutto com'e'!


Cioè?
_________________
Registered as User #281564 and Machines #163761
Back to top
View user's profile Send private message
Luca89
Advocate
Advocate


Joined: 27 Apr 2005
Posts: 2107
Location: Agrigento (Italy)

PostPosted: Mon Nov 06, 2006 10:35 pm    Post subject: Reply with quote

Io solitamente cambio qualche colore nel prompt di root, per esempio il nome dell'host oppure il colore del carattere "#".
_________________
Running Fast!
Back to top
View user's profile Send private message
Sasdo
Guru
Guru


Joined: 18 Feb 2004
Posts: 542
Location: 44.476474,11.644446 circa.

PostPosted: Mon Nov 06, 2006 10:46 pm    Post subject: Reply with quote

lucapost wrote:
ok, ho capito come vedere data, ora, ecc
Ma per cambiare colore di backgroud?


mmm non credo sia possibile via solo bashrc... non credo ci sia il modo di cambiare a runtime il colore di sfondo di xterm...

tramite il PS1 puoi cambiare il colore delle scritte... forse non è immediato come lo sfondo però aiuta ;)
_________________
LinuxUser #362518
--
Ochei lo ammetto: il mio cervello lo tengo in frigo.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3654

PostPosted: Tue Nov 07, 2006 10:29 am    Post subject: Reply with quote

Sasdo wrote:
lucapost wrote:
ok, ho capito come vedere data, ora, ecc
Ma per cambiare colore di backgroud?


mmm non credo sia possibile via solo bashrc... non credo ci sia il modo di cambiare a runtime il colore di sfondo di xterm...

tramite il PS1 puoi cambiare il colore delle scritte... forse non è immediato come lo sfondo però aiuta ;)

Penso che usando konsole e dcop si possa modificare il colore di sfondo anche se non ho mai provato a farlo ...
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
devilheart
l33t
l33t


Joined: 17 Mar 2005
Posts: 848
Location: Villach, Austria

PostPosted: Tue Nov 07, 2006 10:47 am    Post subject: Reply with quote

ma non ti basta la scritta '@nomehost' presente nel prompt?
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Tue Nov 07, 2006 10:51 am    Post subject: Reply with quote

gutter wrote:
lucapost wrote:

Ma quando chiudo la sessione ssh rimane tutto com'e'!


Cioè?


Mi riferivo al metodo di cambiare il titolo della finestra di xterm, in particolare al fatto che quando chiudi la connessione la finestra non torna al nome originale.
Comunque, se qualcuno sa indicarmi anche come tornare indietro con il nome della finestra, potrei accontentarmi.

devilheart wrote:
ma non ti basta la scritta '@nomehost' presente nel prompt?

Se ho aperto il thread, si vede di no!
_________________
LP


Last edited by lucapost on Tue Nov 07, 2006 10:59 am; edited 3 times in total
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3654

PostPosted: Tue Nov 07, 2006 10:51 am    Post subject: Reply with quote

devilheart wrote:
ma non ti basta la scritta '@nomehost' presente nel prompt?

A me basta il nome dell'host (o l'ip) nella linguetta di konsole (anche perchè se dovessi usare un colore diverso per ogni macchina a cui mi devo collegare sarebbe un macello).
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3654

PostPosted: Tue Nov 07, 2006 10:59 am    Post subject: Reply with quote

lucapost wrote:
Mi riferivo al metodo di cambiare il titolo della finestra di xterm, in particolare al fatto che quando chiudi la connessione la finestra non torna al nome originale.

Io con konsole resetto il nome della sessione quando termina ssh (ma forse inizio a diventare noioso con konsole di qua e konsole di la, visto che a nessuno sembra interessare).
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
makoomba
Bodhisattva
Bodhisattva


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Tue Nov 07, 2006 11:16 am    Post subject: Reply with quote

Kernel78 wrote:
Io con konsole resetto il nome della sessione quando termina ssh (ma forse inizio a diventare noioso con konsole di qua e konsole di la, visto che a nessuno sembra interessare).

pssss....
le linguette ci sono anche in multi-gnome-terminal, prova con quello, magari ti ascoltano...


cmq, come ho già detto in altro topic analolologo: se deve succedere, succede.
_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3654

PostPosted: Tue Nov 07, 2006 12:26 pm    Post subject: Reply with quote

makoomba wrote:
Kernel78 wrote:
Io con konsole resetto il nome della sessione quando termina ssh (ma forse inizio a diventare noioso con konsole di qua e konsole di la, visto che a nessuno sembra interessare).

pssss....
le linguette ci sono anche in multi-gnome-terminal, prova con quello, magari ti ascoltano...

Il fatto è che dubito che gnome supporti dcop, anzi a quanto ne sapevo io non aveva nulla di simile (ma sono informazioni vecchie, magari nel frattempo si è messo al passo)
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Tue Nov 07, 2006 1:45 pm    Post subject: Reply with quote

Forse ho trovato il succo del problema.
Per rinominare la finestra penso di utilizzare la variabile d'ambiente locale
Code:
PROMPT_COMMAN=(...HOSTNAME_TMP...) #cioè PROMPT_COMMAND è funzione di ...HOSTNAME_TMP...

Il problema che si pone è, quando lancio ssh, come rinominare ad esempio HOSTNAME_TMP in modo che utilizzi lo HOSTNAME remoto.
Quando chiudo la connessione ssh, voglio che ritornino impostate le variabili in locale e quindi HOSTNAME_TMP riutilizzi lo HOSTNAME locale.
E via via così per tutte le variabili che voglio importare da remoto.

L'idea mi sembra abbastanza 'pulita', ma avrei un pò di difficoltà a realizzarla:

Facciamo finta di gestire il tutto con uno script. Con scp importo le variabili che mi interessano da remoto a locale....ecc

EDIT: magari utilizzando scp senza l'inserimento della password che è più semplice. C'è un thread che può aiutarmi se non sbaglio...

Ci penserò....
Cosa ne pensate? Qualche aiutino?
_________________
LP
Back to top
View user's profile Send private message
Sasdo
Guru
Guru


Joined: 18 Feb 2004
Posts: 542
Location: 44.476474,11.644446 circa.

PostPosted: Tue Nov 07, 2006 3:49 pm    Post subject: Reply with quote

lucapost wrote:
Forse ho trovato il succo del problema.
Per rinominare la finestra penso di utilizzare la variabile d'ambiente locale
Code:
PROMPT_COMMAN=(...HOSTNAME_TMP...) #cioè PROMPT_COMMAND è funzione di ...HOSTNAME_TMP...

Il problema che si pone è, quando lancio ssh, come rinominare ad esempio HOSTNAME_TMP in modo che utilizzi lo HOSTNAME remoto.
Quando chiudo la connessione ssh, voglio che ritornino impostate le variabili in locale e quindi HOSTNAME_TMP riutilizzi lo HOSTNAME locale.


la via più immediata che mi viene in mente è quella di fare una cosa tipo:

file .bashrc
Code:
alias ssh="ssh $PARAM && $(ripristina)"


dove $PARAM sono i parametri che passi a ssh da linea di comando, se non ricordo male ci dovrebbe essere un modo per utilizzarli negli alias ma non ricordo qual è.
E $(ripristina) è la chiamata ad una funzione (anch'essa scritta nel .bashrc) che ripristina tutti i valori a quelli di default prima della connessione ssh.

l'unica controindicazione è che se ssh termina con un errore, la funzione "ripristina" non viene invocata.

ciaos
_________________
LinuxUser #362518
--
Ochei lo ammetto: il mio cervello lo tengo in frigo.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3654

PostPosted: Tue Nov 07, 2006 4:00 pm    Post subject: Reply with quote

Sasdo wrote:

Code:
alias ssh="ssh $PARAM && $(ripristina)"

l'unica controindicazione è che se ssh termina con un errore, la funzione "ripristina" non viene invocata.

allora usa
Code:
alias ssh="ssh $PARAM ; $(ripristina)"
così che ssh termini con errore o meno verrà sempre chiamata ripristina ...
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Tue Nov 07, 2006 4:25 pm    Post subject: Reply with quote

ok, forse siamo sulla strada giusta, però per fare le cose per benino...

${PWD/$HOME/~} se non sbaglio mi dice in che cartella mi trovo, come sincronizzo questa variabile da remoto in locale?
sarebbe carino farlo solamente quando ho una sessione ssh attiva, una soluzione "facile" sarebbe con un timeout, ma come esco dal loop?

La risposta a questa domanda faciliterebbe MOLTO la futura lettura delle variabili remote in locale.

EDIT:Il bello è che la cosa funziona già, ma non so come!
Infatti quando ho una connessione ssh attiva, la sua bash remota mi restituisce già USER, HOSTNAME, PWD remote, infatti si possono vedere nella shell che utilizzo
Ma dove le salva in locale?O meglio cosa vado a leggere in locale? Ora vado a dare un'occhiata al log di ssh...

ps: mi sa che la storia si stà complicando un pò troppo...
_________________
LP
Back to top
View user's profile Send private message
Sasdo
Guru
Guru


Joined: 18 Feb 2004
Posts: 542
Location: 44.476474,11.644446 circa.

PostPosted: Tue Nov 07, 2006 5:05 pm    Post subject: Reply with quote

lucapost wrote:
EDIT:Il bello è che la cosa funziona già, ma non so come!
Infatti quando ho una connessione ssh attiva, la sua bash remota mi restituisce già USER, HOSTNAME, PWD remote, infatti si possono vedere nella shell che utilizzo
Ma dove le salva in locale?O meglio cosa vado a leggere in locale? Ora vado a dare un'occhiata al log di ssh...

ps: mi sa che la storia si stà complicando un pò troppo...


frena frena frena!

Mi sembra che ci sia un po' di confusione...
..quando parti con ssh, è ovvio che ti faccia vedere USER HOSTNAME e PWD remote perchè sei loggato in remoto! Praticamente ssh non è altro che una shell in remoto, è come se tu lanciassi bash (o simile) su un pc e comandassi tale bash da remoto!
Perforza che le sue variabili sono già aggiornate!

A questo punto però non mi è più chiaro quello che vuoi fare... ;_;
_________________
LinuxUser #362518
--
Ochei lo ammetto: il mio cervello lo tengo in frigo.
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1419
Location: <ud|me|ts> - Italy

PostPosted: Tue Nov 07, 2006 5:24 pm    Post subject: Reply with quote

Sasdo wrote:

A questo punto però non mi è più chiaro quello che vuoi fare... ;_;

Nella finestra di xterm in locale voglio sostituire il titolo xterm con USER@HOSTNAME PWD dove le variabili USER, HOSTNAME, PWD sono quelle del pc remoto.
Il mio problema è quindi leggere le variabili d'ambiente remote e quindi definire delle nuove variabili locali, sincronizzando gli eventuali cambiamenti.
_________________
LP
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Forum di discussione italiano All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum