使用 GUI 远程访问 Ubuntu Server 14.04

使用 GUI 远程访问 Ubuntu Server 14.04

我目前在笔记本电脑上安装了 Ubuntu Desktop。我还在正在构建的媒体服务器(无头)上安装了 Ubuntu Server。

目标:我希望能够从我的笔记本电脑远程访问我的服务器并获得 GUI。我想要一个 GUI,因为它可以更轻松地定期将新媒体文件从我的外部硬盘驱动器放置到服务器上的不同文件夹中。(拖放)

我试图找到有关真实 vnc 或类似内容的指南,但我不知道该怎么做。

有人可以指导我如何实现我的目标吗?

答案1

您可以使用 vnc 通过 GUI 访问服务器。

安装 VNC 服务器

sudo apt-get install vnc4server

请确保您仅使用 vnc 服务器,并且未安装其他 VNC 服务器,因为这可能会在将来导致错误,主要是主机 Ubuntu 服务器和 vnc 客户端计算机之间的剪贴板共享。您可以按如下方式检查:

xxx@yyy ~ $ sudo dpkg -l | grep vnc
ii  vnc4server                                            4.1.1+xorg4.3.0-37ubuntu5                           amd64        Virtual network computing server software
xxx@yyy ~ $

如果安装了tightvnc或类似软件,请卸载。添加VNC用户

就我的情况而言,我使用的user=sssss用户名会和你的情况不同。你可以使用任何用户名。

adduser sssss

xxx@server1:~$ sudo adduser sssss
Adding user `sssss' ...
Adding new group `sssss' (1001) ...
Adding new group `sssss' (1001) ...
Adding new user `sssss' (1001) with group `sssss' ...
Creating home directory `/home/sssss' ...
Copying files from `/etc/skel' ...

Enter new UNIX password: <--yourpassword
Retype new UNIX password: <--yourpassword
passwd: password updated successfully
Changing the user information for sssss
Enter the new value, or press ENTER for the default
    Full Name []: <--ENTER
    Room Number []: <--ENTER 
    Work Phone []:<--ENTER 
    Home Phone []:<--ENTER
    Other []:<--ENTER 

  Is the information correct? [Y/n]<--ENTER

以用户身份启动 vncserver,用于以下用途:

su - srijan
vncserver

它将会看到:

    sssss@server1:~$ vncserver

You will require a password to access your desktops.

Password:<--Put your VNC password 
Verify:<--Put your VNC password
Password too long - only the first 8 characters will be used
xauth:  file /home/sssss/.Xauthority does not exist

New 'server1:1 (sssss)' desktop is server1:1

Creating default startup script /home/sssss/.vnc/xstartup
Starting applications specified in /home/sssss/.vnc/xstartup
Log file is /home/sssss/.vnc/server1:1.log

    sssss@server1:~$

备份原始文件并进行配置

cp ~/.vnc/xstartup ~/.vnc/xstartup.bak > ~/.vnc/xstartup
vi ~/.vnc/xstartup

#!/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 &

制作vncserver的启动脚本

sudo vi /etc/init.d/vncserver


#!/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

使其可执行:

chmod +x /etc/init.d/vncserver

通过创建如下文件来制作 vncserver 的配置文件:

mkdir -p /etc/vncserver
vi /etc/vncserver/vncservers.conf

给出如下条目。

VNCSERVERS="1:sssss"
VNCSERVERARGS[1]="-geometry 1024x768"

将其添加到开机启动项中:

update-rc.d vncserver defaults 99

xxx@server1:~$ sudo update-rc.d vncserver defaults 99
 Adding system startup for /etc/init.d/vncserver ...
   /etc/rc0.d/K99vncserver -> ../init.d/vncserver
   /etc/rc1.d/K99vncserver -> ../init.d/vncserver
   /etc/rc6.d/K99vncserver -> ../init.d/vncserver
   /etc/rc2.d/S99vncserver -> ../init.d/vncserver
   /etc/rc3.d/S99vncserver -> ../init.d/vncserver
   /etc/rc4.d/S99vncserver -> ../init.d/vncserver
   /etc/rc5.d/S99vncserver -> ../init.d/vncserver
xxx@server1:~$

重新启动机器。

要访问服务器,您可以使用任何VNC/客户端应用程序

答案2

要在台式机和服务器之间拖放文件,无需在服务器上安装 GUI,更不用说 VNC 了。

在 Nautilus 中,单击“连接到服务器”。然后在服务器地址中输入sftp://servername/path。如果目标文件夹是 Samba 共享,您也可以使用smb://servername/sharename

相关内容