VNC: attālinātā pieslēgšanās ar grafisko klientu
Izvēlieties aprakstu:
Vispārīgs apskats
Linux grafiskās vides darbību nodrošina klienta-servera arhitektūrā, kur serveri sauc par X-logu serveri (izplatītākais ir X.org), bet klientu — par X-logu pārvaldnieku (izplatītākie ir Unity, Gnome un KDE).
Kad lietotājs piesakās datoram grafiskajā vidē (režīmā), tiek izveidota jauna X-logu sesija, ko numurē kā 0.to. Ja datoram piesakās vēl kāds lietotājs (piemēram, pārslēdzoties uz citu lietotāja kontu), tad tiek izveidota jauna, 1.ā sesija, utt. Šādas sesijas sauc par lokālajām sesijām. To lietotāja sesiju, kuru dotajā brīdī rāda uz datora ekrāna, un kurā saņem peles, tastatūras u.c. iekārtu darbības, sauc par tekošo grafisko sesiju. Starp tekošajām grafiskajām sesijām var pārslēgties, spiežot taustiņus Ctrl+Alt+F7, ...F8, utt.
Lokālās sesijas var padarīt pieejamas tīklā (eksportēt), izmantojot x11vnc serveri. Šāda iespēja lieti noder attālinātai demonstrācijai, apmācībai vai palīdzībai.
Linux (u.c. Unix-veidīgās sistēmās) var izveidot arī attālinātas sesijas, kuras netiek rādītas uz lokālā, datoram pieslēgtā ekrāna, bet kuras parāda uz cita, tīklam pieslēgta datora ekrāna un vada no tā. Ir īpaši datori (t.s. grafiskie termināļi) kuros nav operētājsistēmas, bet var palaist šādus attālinātos klientus, bet šādus klientus var izveidot, arī palaižot īpašas programmas (piemēram, Remmina) parastā operētājsistēmā.
Attālinātās sesijas uz mērķa datora (X-logu servera) var izveidot, izmantojot vncserver.
Lokālās sesijas koplietošana
Visvienkāršāk pieslēgties attālināti lokālajai X-logu sesijai, eksportējot to tīklā (koplietojot) ar x11vnc serveri.
Uzstādīšana
Uzstāda x11vnc serveri:
sudo apt-get install x11vnc
Lietošana
Kā parasts lietotājs (tas, kas ir pieteicies X-logu grafiskajā sesijā), pamēģina, vai sesijas eksportēšana izdodas, vienkārši ievadot komandu:
x11vncJa vēlas, lai sesijas eksportēšana saglabātos, pēc tam, kad klienta programma ir atslēgusies, pievieno papildu parametru *-loop:
x11vnc -loopKad x11vnc serveris ir veiksmīgi palaidies, tas izdod daudzas rindas, kas beidzas ar:
....
The VNC desktop is: hostname:0
PORT=5900
Palaišana ar paroli
Saglabā paroli:
x11vnc -storepasswdievada 2× paroli un apstiprina to saglabāt ~/.vnc/passwd failā
Palaiž ar papildu parametru:
x11vnc -rfbauth ~/.vnc/passwd
Kļūdu novēršana
Ja sesijas eksportēšana vienkāršā veidā neizdodas, pēta papildu parametrus, un kā root lietotājs ievada kaut ko sekojošu:
x11vnc -auth `ps wwaux | grep auth|awk '{print $18}'`Šī maģiskā komanda palaiž x11vnc serveri, nododot tai X-logu sesijas sīkfailu, kas parasti atrodas /var/run/xauth/...., kur ... vietā ir nesakarīgs faila nosaukums.
Ja, pieslēdzoties serverim, tā žurnālā parādās kļūdas ziņojums rfbProcessClientNormalMessage: read: Connection reset by peer un pieslēgums pārtrūkst, tad mēģina pieslēgties, izmantojot 24-bitu krāsu režīmu.
Attālinātas X-logu sesijas izveide
Lai vairāki lietotāji vienlaicīgi (viens otram netraucējot) varētu izmantot neatkarīgas attālinātas grafiskās sesijas, uzstāda vnc4server.
Uzstādīšana
Uzstāda Gnome bibliotēkas (jo ar Unity attālinātas sesijas nevar palaist):
sudo apt-get install gnome-coreUzstāda vnc4server:
sudo apt-get install vnc4serverPārliecinās, ka vncserver simboliskā saite norāda uz pareizo implementāciju:
update-alternatives --config vncservervajadzētu rādīt:
(/usr/bin/vnc4server). Nothing to configure.vai arī nepieciešams izvēlēties vajadzīgo vncserver implementāciju.
Kā parasts lietotājs (piemēram, student) izveido savu VNC servera paroli:
vncpasswdParoli vēlams vienu vārdu (bez atstarpēm) un līdz 8 burtiem garu
Lai VNC palaistu sesijā Gnome logu pārvaldnieku, izveido vai izmaina failu /.vnc/xstartup:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
gnome-session --session=gnome-classic &
[[ -x /etc/vnc/xstartup ]] && exec /etc/vnc/xstartup
[[ -r $HOME/.Xresources ]] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
Lietošana
Piesakās attālinātajam datoram ar SSH, piemēram, terminālī ievadot komandu:
ssh inksTad palaiž jaunu X logu sesiju, ko VNC serveris eksportēs tīklā:
vncserverParādās šāds ziņojums:
New 'X' desktop is hostname:1
Starting applications specified in /etc/X11/Xsession
Log file is /home/username/.vnc/hostname:1.logŠo sesiju var "nokaut" ar komandu:
vncserver -kill :1un būtu jāparādās ziņojumam:
Killing Xrealvnc process ID xxxxLai palielinātu/mainītu noklusēto sesijas izšķirtspēju, palaiž ar papildu parametriem, piemēram:
vncserver -geometry 1280x1024
Attālināta pieslēgšanās X-logu sesijai no Linux datora
Lai pieslēgtos attālināti palaistai vai arī eksportētai (koplietojamai) X-logu sesijai, izmanto Remmina programmu:
- Palaiž Remmina Remote Desktop Client programmu
- Izveido jaunu savienojumu ar sekojošiem parametriem:
Attālināta pieslēgšanās X-logu sesijai no Windows datora
Skatīt VNC: attālināta pieslēgšanās no Windows datora
X-logu sesijas tunelēšana
Dažkārt tieša pieeja X logu sesijai nav atļauta, jo to ierobežo ugunssiena. Tad tai var pieslēgties, tunelējot to saur SSH.
- Linux lietotāji, skatiet: SSH tuneļa izveide.
- Windows lietotāji, skatiet: SSH tuneļa izveide ar Putty.
Created by Valdis Vītoliņš on 2008-08-09 07:09
Last modified by Valdis Vītoliņš on 2021-04-13 14:30