这个问题真的是困扰我很久很久了,花了我接近一周的时间,查阅了几乎网上的所有博客,google百度都搜遍了,大神也请了好几回,一直没有搞定。今天终于自己摸索着完美解决了。
不吹牛的说,本篇博客绝对是中文网上上解决此问题不多的文章之一。
1. 首先ubuntu系统,建议安装英文语言的,我装的是14.04英文语言的。
2. 然后来安装xubuntu桌面(xfce4): $ sudo apt-get install xubuntu-desktop
3. ubuntu系统默认的是gnome桌面,我们需要先把此桌面卸载(之所以卸载gnome,是因为google出来说xrdp和gnome组件冲突会出现多用户链接桌面gray blank的情况):$ sudo apt-get autoremove gnome-*
4. 安装xrdp: $ sudo apt-get install xrdp, $ sudo apt-get install vnc4server tightvncserver
5. 接下来可以参考链接http://askubuntu.com/questions/581979/ubuntu-14-10-multiple-simultaneous-independent-remote-desktop-like-connection(google才能打开)。
1)新建用户:$ sudo adduser test1
2)run vnc:$ vncserver, 此步骤将会得到如下:
You will require a password to access your desktops.
Password:
Verify:
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 3) replace /home/test1/.vnc/xstartup content with below
#!/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 & 4)新建文件
/etc/init.d/vncserver,并在vucserver里面添加以下内容
#!/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 [email protected] ;; stop) stop [email protected] ;; restart|reload) stop [email protected] sleep 3 start [email protected] ;; condrestart) if [ -f /var/lock/subsys/vncserver ]; then stop [email protected] sleep 3 start [email protected] fi ;; status) status Xvnc ;; *) echo $"Usage: $0 {start|stop|restart|condrestart|status}" exit 1 esac 5)使新建的文件可执行: $ sudo
chmod +x /etc/init.d/vncserver 6) To make vnc desktop sessions allocated for users at start up automatically, create following script in /etc/vncserver
sudo mkdir -p /etc/vncserver
sudo vim /etc/vncserver/vncservers.conf (这里也可以用gedit进行创建文件,用vim创建,添加内容后,输入":" 后输入wq保存)。添加以下内容(具体看你有几个用户,设定的屏幕分辨率多少):
VNCSERVERS="3:test3 2:test2 1:test1" VNCSERVERARGS[1]="-geometry 1024x768" VNCSERVERARGS[2]="-geometry 1024x768" 7)run $
sudo update-rc.d vncserver defaults 99 6. 最后就是reboot了,直接用window的远程连接,不用tightVNC或者其它远程平台。
时间: 2024-10-13 16:30:38