View previous topic :: View next topic |
Author |
Message |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Sun Nov 05, 2006 8:43 pm Post subject: ssh, distinzione sessioni varie! |
|
|
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! che lampi di genio mi prendono ogni tanto!!!
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 )?
Qualche suggerimento? _________________ LP
Last edited by lucapost on Mon Nov 06, 2006 2:49 pm; edited 1 time in total |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
federico Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/7500266904000406eae42f.jpg)
Joined: 18 Feb 2003 Posts: 3272 Location: Italy, Milano
|
Posted: Sun Nov 05, 2006 10:09 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Sun Nov 05, 2006 10:25 pm Post subject: |
|
|
$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 |
|
![](templates/gentoo/images/spacer.gif) |
gutter Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/67030318436dd16c1dd5e.jpg)
Joined: 13 Mar 2004 Posts: 7162 Location: Aarau, Aargau, Switzerland
|
Posted: Mon Nov 06, 2006 8:46 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Kernel78 Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Mon Nov 06, 2006 9:08 am Post subject: |
|
|
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
/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 |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Mon Nov 06, 2006 2:44 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Sasdo Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
![](images/avatars/2009221244436901b82596b.jpg)
Joined: 18 Feb 2004 Posts: 542 Location: 44.476474,11.644446 circa.
|
Posted: Mon Nov 06, 2006 3:46 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Mon Nov 06, 2006 5:08 pm Post subject: |
|
|
ok, ho capito come vedere data, ora, ecc
Ma per cambiare colore di backgroud? _________________ LP |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
federico Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/7500266904000406eae42f.jpg)
Joined: 18 Feb 2003 Posts: 3272 Location: Italy, Milano
|
Posted: Mon Nov 06, 2006 8:22 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
gutter Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/67030318436dd16c1dd5e.jpg)
Joined: 13 Mar 2004 Posts: 7162 Location: Aarau, Aargau, Switzerland
|
Posted: Mon Nov 06, 2006 10:17 pm Post subject: |
|
|
lucapost wrote: |
Ma quando chiudo la sessione ssh rimane tutto com'e'!
|
Cioè? _________________ Registered as User #281564 and Machines #163761 |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Luca89 Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/15529267248502dd4c2bab.jpg)
Joined: 27 Apr 2005 Posts: 2107 Location: Agrigento (Italy)
|
Posted: Mon Nov 06, 2006 10:35 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Sasdo Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
![](images/avatars/2009221244436901b82596b.jpg)
Joined: 18 Feb 2004 Posts: 542 Location: 44.476474,11.644446 circa.
|
Posted: Mon Nov 06, 2006 10:46 pm Post subject: |
|
|
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 ![Wink ;)](images/smiles/icon_wink.gif) _________________ LinuxUser #362518
--
Ochei lo ammetto: il mio cervello lo tengo in frigo. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Kernel78 Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Tue Nov 07, 2006 10:29 am Post subject: |
|
|
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 ![Wink ;)](images/smiles/icon_wink.gif) |
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 |
|
![](templates/gentoo/images/spacer.gif) |
devilheart l33t
![l33t l33t](/images/ranks/rank_rect_4.gif)
![](images/avatars/65891752743b7d4b158b7b.gif)
Joined: 17 Mar 2005 Posts: 848 Location: Villach, Austria
|
Posted: Tue Nov 07, 2006 10:47 am Post subject: |
|
|
ma non ti basta la scritta '@nomehost' presente nel prompt? |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Tue Nov 07, 2006 10:51 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Kernel78 Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Tue Nov 07, 2006 10:51 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Kernel78 Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Tue Nov 07, 2006 10:59 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
makoomba Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/54100765943a2d293cd61e.jpg)
Joined: 03 Jun 2004 Posts: 1856
|
Posted: Tue Nov 07, 2006 11:16 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Kernel78 Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Tue Nov 07, 2006 12:26 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Tue Nov 07, 2006 1:45 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Sasdo Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
![](images/avatars/2009221244436901b82596b.jpg)
Joined: 18 Feb 2004 Posts: 542 Location: 44.476474,11.644446 circa.
|
Posted: Tue Nov 07, 2006 3:49 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Kernel78 Moderator
![Moderator Moderator](/images/ranks/rank-mod.gif)
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Tue Nov 07, 2006 4:00 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Tue Nov 07, 2006 4:25 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Sasdo Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
![](images/avatars/2009221244436901b82596b.jpg)
Joined: 18 Feb 2004 Posts: 542 Location: 44.476474,11.644446 circa.
|
Posted: Tue Nov 07, 2006 5:05 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lucapost Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/17095691174866151fd78ae.gif)
Joined: 24 Nov 2005 Posts: 1419 Location: <ud|me|ts> - Italy
|
Posted: Tue Nov 07, 2006 5:24 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
|