1、序
网上一查一大堆全是Windows如何远程登录Linux桌面的文章,因为自己开始也是这样做的,所以应该能体会到,Linux作为服务器,运行程序,而Windows作为工作机器,撰写文档,与同学同事进行沟通。
昨天看到简书一篇文章讲到用Centos作为工作环境的体会,我也尝试过用这样的工作环境,确实很多windows软件,Linux是无法替代的,也无法使用。但是,其实想问题应该两头考虑。当然,我有这个条件,而这种工作模式,也刚刚适合我的工作学习需要,因此我想——为什么不在linux上远程登录windows?
于是就这样做了。
2、背景
用Linux远程登录windows要远比后者登录前者简单很多。首先说下用Windows远程桌面Linux到底有多困难。
1)首先你需要在Linux中安装vncserver,然后配置各种文件。打开vnc的监听服务。即便这样也不行,因为还有防火墙和selinux的阻挡。反正我看着网上的教程,依然还是一锅粥的感觉。
2)然后再windows上下载vnc viewer,这个就更狗血一点。因为你下载tight vnc viewer的话,需要填各种表。然后就等下载。
3)最后,曾经大概是我确实走了一次狗屎运,配置好vncserver,也能远程桌面了。但是不知道碰哪了,重启了Linux机器,就再也不能登上。
综合以上的惨痛教训,我觉得既然有两台机器。而又想在Linux下工作,那何不用Linux远程登录windows来的省事。而查完资料,也确实印证了这一点。
3、安装
由于windows有一个良好的远程登录接口,所以很方便地可以两台windows机器之间进行远程登录。而Linux远程登录windows,需要使用一个图形接口软件——rdesktop。我用的是centos,所以很遗憾,只能去官网下rdesktop,不过安装还算一路顺利,下面是安装的内容,只是有一个地方比较卡。当然忽略掉用起来还是很顺畅的。
以rdesktop-1.7.1为例:
yum -y install libX11-devel
tar -xvf rdesktop-1.7.1.tar.gz -C /usr/local/src
cd /usr/local/src/rdesktop-1.7.1
./configure && make -j4 && make install
.
说明:rdesktop-1.8.x即使安装了libgssglue,做了库链接到/lib,/lib64仍然会报
checking for GSSGLUE... no
CredSSP support requires libgssglue, install the dependency
or disable the feature using --disable-credssp.
搜索未果,只得妥协
tar -xvf rdesktop-1.8.3.tar.gz -C /usr/local/src
cd /usr/local/src/rdesktop-1.8.3
./configure --disable-credssp --disable-smartcard
make -j4 && make install
有兴趣的朋友可以继续尝试。
rdesktop依赖libgssglue
wget http://www.citi.umich.edu/projects/nfsv4/linux/libgssglue/libgssglue-0.4.tar.gz
tar -xvf libgssglue-0.4.tar.gz -C /usr/local/src
cd /usr/local/src/libgssglue-.04
./configure && make -j4 && make install
以上就是从网上引下来的,当然对于1.8版本来说确实就有缺陷,不过现在我用着一点问题没有。
4、使用
这个也是参考网上的内容,当然,我根据自身需要,又做了些调整。基本思想就是,将启动的命令封装到bash文件中,直接启动bash文件就能解决问题。
rdesktop -f -r clipboard:PRIMARYCLIPBOARD -a 16 -u username -p password ip地址
1)参数-f表示全屏显示,如果需要切换成小屏幕,则使用shif+cntl+enter组合键
2)参数-r 表示远端机器和Linux公用一个剪贴板
3)参数-a表示采用16bit彩色
4)参数-u表示用户名
5)参数-p表示密码
6)ip地址直接给出:192.168.0.1
好了,目前就可以用Linux远程登录Windows了。
刚才看到打开的winhq官网,心里感觉挺开心。