Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: Leko - 26.08.15 - klo:19.47
-
Yritän asentaa kauas etäkoneeseen SSH:lla x-akkunaa tarvitsevaa ohjelmaa. Vaikuttaa siltä, että ohjelma kyllä asentuu, mutta herjaa tulee akkunan asetuksista. Tätä asiaa en ollenkaan tunne. Olisi kaipuuta vihjeistä ninku kömpelölle annetaan. Suostuisiko joku..
Init...
xprop: unable to open display ''
Checking setup...
Application tried to create a window, but no driver could be loaded.
Make sure that your X server is running and that $DISPLAY is set correctly.
err:systray:initialize_systray Could not create tray window
Application tried to create a window, but no driver could be loaded.
Make sure that your X server is running and that $DISPLAY is set correctly.
err:ole:CoGetClassObject class {4315d437-5b8c-11d0-bd3b-00a0c911ce86} not registered
err:ole:CoGetClassObject class {4315d437-5b8c-11d0-bd3b-00a0c911ce86} not registered
err:ole:CoGetClassObject no class object {4315d437-5b8c-11d0-bd3b-00a0c911ce86} could be created for context 0x3
-
DISPLAY-muuttuja pitää määritellä, jos haluat, että ikkuna avautuu sinne etäkoneen näytölle:
export DISPLAY=:0.0
Jos taas haluat, että ohjelma avautuu ssh-yhteyden yli omalle työpöydällesi, käytä yhteyttä luodessasi ssh:n parametria -X
ssh -X tunnus@etäkone
-
Kiitos nm, mutta ongelma näyttää olevan syvemmällä. Etäkoneen X11 ei ole kunnossa. Selailin neuvoja, mutta failien puukotukseen tai kirjoittamiseen melkein arvauspohjalta ei rohkeus riitä.
Olisko ja kuinka mahdollista asentaa koko X uudestaan, vai..
-
Kiitos nm, mutta ongelma näyttää olevan syvemmällä. Etäkoneen X11 ei ole kunnossa.
Mikä siinä on vikana? Eikö X.org ole lainkaan käynnissä vai onko työpöytä jumissa? Miten olet päätellyt, että siellä on jokin ongelma? Mitä X.org:n lokitiedosto (/var/log/Xorg.0.log) kertoo?
Jos meinaat käynnistää ohjelman ssh-yhteyden kautta koneen paikalliseen X-istuntoon, sinun on kirjauduttava koneelle samalla tunnuksella, jolla X-istuntoon on kirjauduttu. On myös mahdollista antaa oikeudet jollekin toiselle tunnukselle, mutta se vaatii lisäsäätöjä.
-
root@c112-78:/usr/bin/X11# ps ax|grep xinet
396 ? Ss 0:00 /usr/sbin/xinetd -dontfork -pidfile /var/run/xinetd.pid -stayalive -inetd_compat -inetd_ipv6
5952 pts/2 S+ 0:00 grep --color=auto xinet
...........................
root@c112-78:~# whereis .xinitrc
.xinitrc:
root@c112-78:~#
...........................
leko@c112-78:~$ xinit
X: user not authorized to run the X server, aborting.
^Cxinit: giving up
xinit: unable to connect to X server: No such file or directory
xinit: unexpected signal 2
Itse asiassa kunnianhimoisin tavoitteeni olisi saada TeamViewer töihin. Ja sen myötä kaikki. Nyt esim. ssh -X käynnistää yhteyden, mutta vain rivitilassa.
-
/var/log/Xorg.0.log
[ 9736.777]
X.Org X Server 1.15.1
Release Date: 2014-04-13
[ 9736.777] X Protocol Version 11, Revision 0
[ 9736.777] Build Operating System: Linux 2.6.42-75-generic x86_64 Ubuntu
[ 9736.777] Current Operating System: Linux c112-78.uvn.zone.eu 2.6.32-042stab102.9 #1 SMP Fri Dec 19 20:34:40 MSK 2014 x86_64
[ 9736.777] Kernel command line: quiet
[ 9736.777] Build Date: 12 February 2015 03:37:52PM
[ 9736.777] xorg-server 2:1.15.1-0ubuntu2~precise5 (For technical support please see http://www.ubuntu.com/support)
[ 9736.777] Current version of pixman: 0.30.2
[ 9736.777] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 9736.777] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 9736.777] (==) Log file: "/var/log/Xorg.0.log", Time: Wed Aug 26 21:57:21 2015
[ 9736.777] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 9736.777] (==) No Layout section. Using the first Screen section.
[ 9736.777] (==) No screen section available. Using defaults.
[ 9736.777] (**) |-->Screen "Default Screen Section" (0)
-- INSERT -- 1,14 Top
Koodit voi laittaa mielellään pieniinkin päätteen tulostuksiin, lisätty -Storck
-
root@c112-78:/usr/bin/X11# ps ax|grep xinet
396 ? Ss 0:00 /usr/sbin/xinetd -dontfork -pidfile /var/run/xinetd.pid -stayalive -inetd_compat -inetd_ipv6
5952 pts/2 S+ 0:00 grep --color=auto xinet
xinetd ei liity X-ikkunointiin vaan se on yleinen Internet-palveluja hallinnoiva taustaprosessi.
Lokin perusteella X.org on käynnissä (tai on ainakin joskus ollut). Voit tarkistaa tilanteen etsimällä prosessilistasta X:ää:
$ ps aux |grep X
root 1459 3.7 5.8 1053136 480124 tty7 Ss+ heinä06 2836:20 /usr/bin/X -bs -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
Itse asiassa kunnianhimoisin tavoitteeni olisi saada TeamViewer töihin. Ja sen myötä kaikki.
TeamViewer toimii taustapalveluna. Esimerkki: http://www.tonisoto.com/2013/07/launching-teamviewer-remotely-throught-ssh/
Nyt esim. ssh -X käynnistää yhteyden, mutta vain rivitilassa.
ssh -X:llä luodaan normaali ssh-pääteyhteys, jossa on lisäksi X11-protokollan tunnelointi. Sen avulla voit käynnistää etäkoneella vaikka geditin siten, että ikkuna avautuu omalla koneellasi etäkoneen työpöydän sijaan. Sillä siis voidaan ohjata yksittäisiä ohjelmia/ikkunoita etäkoneelta paikalliseen X-näyttöön, eikä etäkoneella edes tarvitse olla X-palvelinta. Tämä on eri asia kuin etäkoneella käynnissä olevan työpöydän käyttö verkon yli.
-
root@c112-78:~# ps aux |grep X
root 6312 0.0 0.3 6456 840 pts/0 S+ 15:37 0:00 grep --color=auto X
root@c112-78:~#
root@c112-78:~# teamviewer --info print version, status, id
TeamViewer 10.0.46203 (DEB)
teamviewerd status teamviewerd start/running, process 2063
TeamViewer ID:
Try restarting the TeamViewer daemon (e.g. teamviewer --daemon restart)
root@c112-78:~#
-
Ok, eli X-palvelin ei ole päällä. Mikä Ubuntu ja mikä työpöytäjärjestelmä sinne etäkoneeseen on asennettu? Jos siellä on Ubuntu 14.04, johon X.org:n versio viittaa, ja paketti ubuntu-desktop on asennettuna, X-ikkunointi käynnistyy komennolla:
sudo service lightdm start
Muissa työpöytäjärjestelmissä (KDE, Xfce, LXDE, ...) voi olla käytössä joku muu display manager. Ubuntu-desktop-paketti asentaa LightDM:n ja Unity-työpöydän.
Jos prosessilistassa ei edelleenkään näy X:ää, kopioi /var/log/Xorg.0.log omalle koneellesi esim. scp:llä ja lisää se tänne kokonaisuudessaan viestin liitteeksi (Liitteet ja muut asetukset viestinkirjoituskentän alla). Lokista selviää, miksei X-palvelin käynnisty.
-
Mikä Ubuntu ja mikä työpöytäjärjestelmä sinne etäkoneeseen on asennettu?
Jakelusta riippumatta kirjautumisenhallinnan nimessä on yleensä jono ”dm”, joten kannattaa kokeilla:
pgrep -a dm
(Mikseivät muuten ihmiset käytä pgrepiä? Sillä saa usein siistimmin tulokset kuin ps | grep -yhdistelmällä.)
Tai jos käytössä on systemd, voi kokeilla minusta vähän kömpelömmin:
systemctl list-units \*dm\*
(Takakenot välttämättömät, jottei komentotulkki laajenna niitä.)
-
Jakelusta riippumatta kirjautumisenhallinnan nimessä on yleensä jono ”dm”, joten kannattaa kokeilla:
pgrep -a dm
Display manager ei tässä tapauksessa ole käynnissä, kun X-palvelinkaan ei ole. Järjestelmään asennettu display manager on tavallisesti kirjattu tiedostoon /etc/X11/default-display-manager:
$ cat /etc/X11/default-display-manager
/usr/sbin/lightdm
-
Ubuntu 12. Voin tietysti päivittää sen, jos siitä olis apua.
-
root@c112-78:~# cat /etc/X11/default-display-manager
/usr/sbin/gdm
root@c112-78:~#
.........................................................
root@c112-78:~# teamviewer
Init...
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
xprop: unable to open display 'localhost:10.0'
Checking setup...
Launching TeamViewer ...
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
Laita seuraaviin nuo koodit ihan oma-aloitteisesti, kiitos -Storck
-
Display manager ei tässä tapauksessa ole käynnissä, kun X-palvelinkaan ei ole.
Entäs järjestelmissä, joissa gdm on säädetty käyttämään Waylandiä? Voisin tarkistaa tuon läppäriltäni jossain välissä.
-
En tiedä liittyykö tähän tapaukseen mutta mainitsen nyt, jos vaikka liittyykin.
Joskus aikanaan kikkailin Raspin ja Kubuntun X:n kanssa, ilmoituksia Raspista Kubuntun näytölle.
Silloin piti Kubuntun LightDM asetuksista sallia X:n käyttö ulkoisesta lähteestä.
Tiedosto oli muistaakseni /etc/lightdm/lightdm.conf en pysty tuota enää tarkistamaan kun 15.04:ssä on SDDM
edit, no olihan minulla se Raspin muistitiedostossa ylöspantuna miten sain toimimaan:
sudo nano /etc/lightdm/lightdm.conf
[SeatDefaults]
#allow-tcp=true
xserver-allow-tcp=true
-
Ubuntu 12. Voin tietysti päivittää sen, jos siitä olis apua.
Niinpä olikin precise eli 12.04, näkyihän se tuossa aiemmassakin pätkässä. Ei tarvitse päivittää.
Lokin mukaan X-palvelimen käynnistyksessä on edellisellä kerralla ollut tällaista ongelmaa:
[ 9736.780] (EE)
Fatal server error:
[ 9736.780] (EE) xf86OpenConsole: Cannot find a free VT: Invalid argument
[ 9736.780] (EE)
[ 9736.780] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 9736.780] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 9736.780] (EE)
[ 9736.780] (WW) xf86CloseConsole: KDSETMODE failed: Bad file descriptor
[ 9736.780] (WW) xf86CloseConsole: VT_GETMODE failed: Bad file descriptor
[ 9736.780] (EE) Server terminated with error (1). Closing log file.
Ilmeisesti olet yrittänyt käynnistää X:ää manuaalisesti startx:llä tai xinitillä?
Mitä tapahtuu, jos käynnistät gdm:n:
sudo service gdm start
root@c112-78:~# teamviewer
Init...
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
xprop: unable to open display 'localhost:10.0'
Checking setup...
Launching TeamViewer ...
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
Yrität tässä käynnistää etäkoneen teamviewer-asiakasohjelmaa siten, että ikkuna siirretään SSH-yhteyden yli omalle näytöllesi. Virheilmoituset johtuvat siitä, että olet ottanut ssh-yhteyden jollain toisella tunnuksella ja yrität ajaa teamvieweriä roottina. Joka tapauksessa tämä ei ole sitä mitä haluat. Unohda ssh -X. Et tarvitse sitä TeamViewerin kanssa.
Nyt pitäisi ensin saada X.org käyntiin sinne etäkoneelle. Kun X käynnistyy ja pysyy pystyssä, voit käynnistää TeamViewer-palvelun aiemmin linkittämääni ohjetta soveltaen. Sitten voit vaikka sulkea SSH-yhteyden kokonaan ja ottaa yhteyden etäkoneeseen omaan koneeseesi asennetulla TeamViewerillä.
En tiedä liittyykö tähän tapaukseen mutta mainitsen nyt, jos vaikka liittyykin.
X-palvelimen TCP-tukea ei tässä tarvita, kun Leko haluaa käyttää X11-etäyhteyden sijaan TeamVieweriä.
-
raimo, ei tainnut olla minulle apua
root@c112-78:~# ls /etc/light*
ls: cannot access /etc/light*: No such file or directory
root@c112-78:~# locate light
/etc/fonts/conf.avail/10-hinting-slight.conf
/etc/fonts/conf.d/10-hinting-slight.conf
/usr/share/consolefonts/tis-ptlight.f16.psf.gz
/usr/share/doc/gnupg/highlights-1.4.txt.gz
root@c112-78:~# xserver-allow-tcp=true
bash: xserver-allow-tcp=true: command not found
root@c112-78:~#
Leko, KOODIT KIITOS -Storck
-
root@c112-78:~# service gdm start
start: Job is already running: gdm
root@c112-78:~#
//Nyt pitäisi ensin saada X.org käyntiin sinne etäkoneelle.//
Olen ymmärtänyt noista koneen vastauksista, että käyttäjällä, siis lekolla, ei rootilla, ei ole oikeutta Xorgiin. Käyttäjän hakemistossa pitäisi(kö) olla joku .x- faili, jota siellä ei ole. Kaiken kaikkiaan, X:n asennus/konffaus lienee vajavainen?
-
root@c112-78:~# service gdm start
start: Job is already running: gdm
root@c112-78:~#
Kokeile vielä näin:
sudo service gdm stop
sudo service gdm start
Tarkista, onko X käynnissä:
pgrep -a X
pgrep -a gdm
Ja kopioi /var/log/Xorg.0.log taas talteen ja vertaa edelliseen versioon. Jos siellä on edelleen samat virheet, voisi yrittää poistaa koko X:n ja asentaa uudelleen.
//Nyt pitäisi ensin saada X.org käyntiin sinne etäkoneelle.//
Olen ymmärtänyt noista koneen vastauksista, että käyttäjällä, siis lekolla, ei rootilla, ei ole oikeutta Xorgiin. Käyttäjän hakemistossa pitäisi(kö) olla joku .x- faili, jota siellä ei ole. Kaiken kaikkiaan, X:n asennus/konffaus lienee vajavainen?
Ensin pitäisi saada X-palvelin pysymään käynnissä gdm:n avulla käynnistettynä. Tässä vaiheessa olennaiset virheet menevät X.org:n lokitiedostoon. Vasta kun X-palvelin toimii, voit ryhtyä kokeilemaan TeamVieweriä ja tulkitsemaan muita mahdollisia virheilmoituksia.
-
root@c112-78:~# service gdm stop
gdm stop/waiting
root@c112-78:~# service gdm start
gdm start/running, process 7640
root@c112-78:~# pgrep -a X
pgrep: invalid option -- 'a'
Usage: pgrep [-cflvx] [-d DELIM] [-n|-o] [-P PPIDLIST] [-g PGRPLIST] [-s SIDLIST]
[-u EUIDLIST] [-U UIDLIST] [-G GIDLIST] [-t TERMLIST] [PATTERN]
root@c112-78:~# pgrep -a gdm
pgrep: invalid option -- 'a'
Usage: pgrep [-cflvx] [-d DELIM] [-n|-o] [-P PPIDLIST] [-g PGRPLIST] [-s SIDLIST]
[-u EUIDLIST] [-U UIDLIST] [-G GIDLIST] [-t TERMLIST] [PATTERN]
root@c112-78:~#
root@c112-78:~# pgrep X
root@c112-78:~# pgrep gdm
7640
root@c112-78:~#
Merkitsin ratkaistuksi, vaikka ei ratkennut. Oli luovutettava koska kävi ilmi, ettei palvelimen ylläpitäjä ole antanut minun rootilleni riittävästi oikeuksia. Pahoittelen aiheuttamaani vaivaa.