Allt från Computex 2023
Permalänk
Medlem

Program via ssh?

Jag sitter på RHE3 här på jobbet (jag hatar redhat men är tvungen pga standader) och ssh'ar via en terminal till min datorn hemma. Finns det något sätt jag kan köra ett program (låt säga eterm för enkelhetens skull) från min dator hemma, via ssh, och få upp fönstret här på min jobbdator?
Förstår ni vad jag menar?

Permalänk
Medlem

Japp. Om du kör ssh -X från datorn där du sitter (X-servern) till maskinen hemma (X-klienten) så kommer ssh att tunnla X-trafik. ssh-servern du kör till måste dock tillåta detta (står i /etc/ssh/sshd_config). Sen måste man lista ut vad X-pseudo-displayen heter. Jag brukar få skriva nåt i stil med export DISPLAY=localhost:10 (på x-klienten / ssh-servern), men jag har glömt exakt vad, och nu får jag det inte att funka. Om man lyckas pilla till det rätt är det bara att skriva "eterm &" i ssh-fönstret.

Visa signatur

Min dator är tuffare än din.

Permalänk
Medlem

Problemet är att jag inte har något x-server installerad på ssh-hosten som jag går mot. Det är en server så x har inte varit nödvändigt

Permalänk
Citat:

Ursprungligen inskrivet av edavwal
Problemet är att jag inte har något x-server installerad på ssh-hosten som jag går mot. Det är en server så x har inte varit nödvändigt

X-servern behövs bara på klienten, alltså på den datorn du SSH:ar ifrån.

Visa signatur

"to conquer others is to have power, to conquer yourself is to know the way"

Permalänk
Medlem

jasså? hur gör jag då? hur ska jag confa X på arbetsdatorn då för att det ska funka?
och vad skriver jag sen?

Permalänk
Medlem

ssh -Y -l <loginnamn> <host>

Kör sedan program som vanligt och voila, funkar fint. Så länge som det finns X på den datorn du SSHar från. Eftersom red hat har X så borde det funka fint.

Permalänk
Medlem

okey, tack så mycket för hjälpen då

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Stack
Japp. Om du kör ssh -X från datorn där du sitter (X-servern) till maskinen hemma (X-klienten) så kommer ssh att tunnla X-trafik. ssh-servern du kör till måste dock tillåta detta (står i /etc/ssh/sshd_config). Sen måste man lista ut vad X-pseudo-displayen heter. Jag brukar få skriva nåt i stil med export DISPLAY=localhost:10 (på x-klienten / ssh-servern), men jag har glömt exakt vad, och nu får jag det inte att funka. Om man lyckas pilla till det rätt är det bara att skriva "eterm &" i ssh-fönstret.

Hmm, jag har alltid bara kört med ssh -X till hosten jag ska köra program fårn och startat det där, utan att sätta några DISPLAY-variabler...

Permalänk
Medlem

-X är gamla varianten. -Y är nya som ska vara säkrare eller nått i den stilen, läs i man sidorna så får ni veta mer

Permalänk
Medlem

Som sagt, X-servern behövs inte (X-servern ritar grafik på en skärm, och allt det har du lokalt hos dig), däremot behöver du ett par lib:ar som alla X-klientprogram vill ha.

ssh -Y funkade mycket bättre än ssh -X. -X är bara "enable X11 forwarding", medan -Y ger "trusted X11 forwarding", vilket måste vara mycket häftigare. Det sätter DISPLAY-variabeln automatiskt, och fungerar, medan -X inte satte nånting, och jag lyckades inte gissa nåt som funkade heller.

Edit: Testade just igen. -X funkar det med (sätter $DISPLAY) som den ska). Måste ha varit en tillfällig störning i Kraften.

Visa signatur

Min dator är tuffare än din.