ubuntu 14.10 wiele jednoczesnych niezależnych połączeń zdalnych (podobnych do pulpitu)

15

Czy ktoś może zasugerować darmowy serwer (który działa tak samo jak serwer terminali, który umożliwia wiele niezależnych sesji typu RDP ), który jest kompatybilny z Ubuntu 14.10 ?

Próbowałem: jednoczesne połączenia zdalne

Przeszukałem FreeNX, ale większość dostępnych samouczków nie działa dla systemu Ubuntu 14.10, a także NOMACHINE nie zezwala na wiele sesji. NOMACHINE działa świetnie, ale ogranicza się tylko do jednej sesji. Po połączeniu z drugim kontem połączenie zostaje odłączone ..

https://www.nomachine.com/AR10K00703 „NoMachine (bezpłatny) pozwala na jedno połączenie. Dlatego jest do indywidualnego użytku.”

A także próbowałem http://www.xrdp.org przy użyciu tego samouczka https://www.youtube.com/watch?v=gFdBSyy4xcM

To również nie działa .. utknął na pustym ekranie rdp ..

VNC nie jest tym, czego szukam, ponieważ nie może oferować niezależnych sesji. .

Większość samouczków dotyczy starszych wersji Ubuntu i nie działa dla mnie. Każda pomoc byłaby bardzo mile widziana !! Każdy podstawowy bieżący samouczek 14.10 lub cokolwiek, co zasłania światło, proszę!

PS Ostatecznie działało VNC

Aravinda
źródło

Odpowiedzi:

19

Oto rzeczy, które zadziałały dla mnie .. (sukces przy użyciu tego tute http://www.howtoforge.com/how-to-install-vnc-server-on-ubuntu-14.04 i kudose dla Charlesa Tassella w celu uzyskania właściwych wskazówek i porad)

To, co zrobiłem, jest następujące:

(1) uruchom sudo apt-get update && sudo apt-get upgrade

(2) uruchom sudo apt-get install gnome-core xfce4 vnc4server

(3) następnie dodaj użytkowników (vncserver / unix)

sudo adduser test1   

(później użytkownik będzie musiał podać szczegółowe informacje dla użytkownika, dodałem 3 użytkowników (test1, test2, test3 itp. dla serwera VNC)

(4) Następnie musisz przełączać użytkowników jeden po drugim, uruchamiać vncserver i dodawać hasło do logowania vncuser (mam trzech użytkowników vnc, więc musiałem to powtórzyć dla wszystkich trzech testów użytkownika 1, test2, test3)

su - test1

następnie uruchomić

vncserver

out put będzie wyglądać tak, jak monit o hasło vnc ..

You will require a password to access your desktops.

Password:
Verify:

xauth:  file /home/test1/.Xauthority does not exist
New 'server1:1 (test1)' desktop is server1:1
Creating default startup script /home/test1/.vnc/xstartup
Starting applications specified in /home/test1/.vnc/xstartup
Log file is /home/test1/.vnc/server1:1.log

(5) Ważne: będziesz musiał zastąpić /home/test1/.vnc/xstartup zawartością poniżej (w przeciwnym razie nie dostaniesz pulpitu, zamiast tego utkniesz z pustym ekranem bez interfejsów użytkownika lub menu)

vim /home/test1/.vnc/xstartup

i dodaj

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &

(6) skrypt startowy dla serwera vncserver został utworzony za pomocą sekcji „Dalej zrobię skrypt startowy dla serwera vncserver jak ten” w tym tute

sudo vim /etc/init.d/vncserver

i dodaj poniżej treść ..

#!/bin/bash

unset VNCSERVERARGS
VNCSERVERS=""
[ -f /etc/vncserver/vncservers.conf ] && . /etc/vncserver/vncservers.conf
prog=$"VNC server"
start() {
 . /lib/lsb/init-functions
 REQ_USER=$2
 echo -n $"Starting $prog: "
 ulimit -S -c 0 >/dev/null 2>&1
 RETVAL=0
 for display in ${VNCSERVERS}
 do
 export USER="${display##*:}"
 if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
 echo -n "${display} "
 unset BASH_ENV ENV
 DISP="${display%%:*}"
 export VNCUSERARGS="${VNCSERVERARGS[${DISP}]}"
 su ${USER} -c "cd ~${USER} && [ -f .vnc/passwd ] && vncserver :${DISP} ${VNCUSERARGS}"
 fi
 done
}
stop() {
 . /lib/lsb/init-functions
 REQ_USER=$2
 echo -n $"Shutting down VNCServer: "
 for display in ${VNCSERVERS}
 do
 export USER="${display##*:}"
 if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
 echo -n "${display} "
 unset BASH_ENV ENV
 export USER="${display##*:}"
 su ${USER} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
 fi
 done
 echo -e "\n"
 echo "VNCServer Stopped"
}
case "$1" in
start)
start $@
;;
stop)
stop $@
;;
restart|reload)
stop $@
sleep 3
start $@
;;
condrestart)
if [ -f /var/lock/subsys/vncserver ]; then
stop $@
sleep 3
start $@
fi
;;
status)
status Xvnc
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac

aby był to plik wykonywalny, uruchom następujące polecenie

chmod +x /etc/init.d/vncserver

(7) Aby sesje pulpitu vnc były przydzielane użytkownikom przy uruchamianiu automatycznie, utwórz następujący skrypt w / etc / vncserver

sudo mkdir -p /etc/vncserver
sudo vim /etc/vncserver/vncservers.conf

dodaj to w vncservers.conf (to dlatego, że mam moich użytkowników jako test1, test2, test3 zmieniam to zgodnie z)

VNCSERVERS="3:test3 2:test2 1:test1"
VNCSERVERARGS[1]="-geometry 1024x768"
VNCSERVERARGS[2]="-geometry 1024x768"
VNCSERVERARGS[3]="-geometry 1024x768"

(8) Następnie biegnij

sudo `update-rc.d vncserver defaults 99`

(9) zrestartuj serwer (już prawie skończyłeś) krok 10, a reszta to jak się zalogować

(10) pobierz http://www.realvnc.com/download/viewer/

wpisz nazwę serwera / ipaddress i identyfikator sesji, na przykład mój serwer to 172.16.70.17, a jeśli użyję 172.16.70.17:2, zaloguje się na pulpicie użytkownika test2 .. i 172.16.70.17:3 zaloguje się na pulpicie użytkownika test3 jak mądry

upewnij się, że wybrano szyfrowanie „Preferuj wyłączone”

fotka

fotka

Następnie możesz uzyskać dostęp do pulpitu i aplikacji w ten sposób ...

fotka

Aravinda
źródło
2
sudo update-rc.d vncserver defaults 99insserv: ostrzeżenie: skrypt 'vncserver' brakuje tagów i przesłonięć LSB
realtebo
jak zmienić domyślne porty? jesteśmy atakowani każdego dnia ...
realtebo
@Aravinda, dzięki. Czy użytkownik może ustawić ustawienia geometrii? Na przykład użytkownik ustawił geometrię w pliku (powiedzmy w folderze .vnc), a następnie serwer odczytał ją z pliku, zamiast vncservers.conf. W ten sposób użytkownik może ustawić swoje preferencje bez konieczności posiadania uprawnień sudo. Dzięki.
user153245
4

Aha, przy okazji, VNC może oferować wiele niezależnych sesji, konfiguracja jest po prostu trudna. Zasadniczo uruchamiasz wiele kopii Xvnc na różnych portach. Problem polega na tym, że nie ma automatycznej opcji „odesłanie mnie do następnego nieużywanego pulpitu”, więc musisz dać każdemu użytkownikowi, który będzie korzystał z systemu zdalnie, swój własny port.

Charles Tassell
źródło
Nadal nie udało mi się wdrożyć Twojej sugestii. Wrócę i przekażę opinię na ten temat, aby była dla kogoś pomocna.
Aravinda
Na przykład załóżmy, że masz trzy osoby, które będą logować się do skrzynki zdalnie (użytkownik1, użytkownik2, użytkownik3), możesz dodać następujące wiersze do /etc/rc.local po utworzeniu konta w useradd:
Charles Tassell
Najwyraźniej nie możesz nacisnąć Enter w polu komentarza ... Oto pełny tekst: Na przykład, powiedz, że masz trzy osoby, które zamierzają zalogować się do skrzynki zdalnie (użytkownik1, użytkownik2, użytkownik3), możesz dodać następujące wiersze do /etc/rc.local po utworzeniu kont w useradd: su -c "vncserver: 1 użytkownik1"; su -c "vncserver: 2" użytkownik2; su -c "vncserver: 3" user3; Tworzy to 3 unikalne komputery stacjonarne na portach 5901, 5902 i 5903
Charles Tassell
Wszystko wydaje się być w porządku .. Zaktualizuję wątek, kiedy będę miał czas na to, co dokładnie zrobiłem .. mam nadzieję, że w następnym tygodniu .. Dzięki Charles za radę ..
Aravinda
zaktualizowałem .. i oznaczyłem go jako odpowiedź, aby ktoś mógł go łatwo zobaczyć
Aravinda