1.从面对面,走向“远程连接”
没有出现通信工具之前,人们想和远方的人沟通,必须面对面(本地化)。。
即使是邮差,也是通过他人传达。那是一个被时空束缚的时代。
因此他们开始寻求改变,后来,出现了烽火,飞鸽传书,通信灯塔等。(当然工具也要使用得当,不然就会出现“烽火戏诸侯”的悲剧。。。)
但那依然是“家书抵万金”的短程通信时代。
而后,基于电和电磁波等媒介,诞生了电话,手机,互联网等,彻底改变了通信方式,人与人,人与物,物与物之间,能够进行远程互联。
从此,人们打破时空束缚,“远在天边”的万物又“近在咫尺”。让人们更加灵活高效,便捷地进行合作,从而创造更加辉煌的人类事业!
2.同样的困惑
由于现在要在一台Ubuntu工控板(同时搭载众多传感器)上开发应用,但其他事项又需要在另一台WIN10电脑上操作,所以我要为两台电脑配置各自的硬件,如显示器,鼠标键盘,设备成本直接double,还得占用办公桌空间。。更关键的是,操作其中一个系统,必须“面对面”。比如从WIN10转向操作Ubuntu,我必须换到另一套显示屏,鼠标键盘进行操作。。
至此,如果你觉得这样来回切换没啥问题,不嫌麻烦,那么全文到此结束;如果有问题,请继续往下看。
我们的困惑是一致的:
因搬砖需要,增加一台Ubuntu电脑,就增加了我们的设备,空间等成本,同时,增加“面对面”操作的麻烦,冗余,不便。
那么该如何解决这一困扰呢?合二为一?
几种设想:
- 在win10上创建Ubuntu虚拟机,开发程序后,移植到Ubuntu上测试,其中需要同步系统环境配置,解决传感器硬件接入,执行器输出等问题。
- 两台电脑通过有线连接,在任意一台电脑上,可以同时显示并实时切换操作两个系统。显示屏,键盘,鼠标等硬件实现共用。
- 两台电脑通过远程连接,实现“合二为一”。
结合功能条件和可行性,我将采取第三种设想-远程连接,来解决困扰。
3.实现远程连接
win10与Ubuntu的远程连接,有如下主流方案可供大家参考:
- 通过配置ssh和xshell/putty,实现远程连接。
评估
优点:配置快速便捷。
缺点:是命令行操作,需要了解更多终端命令。
操作:
网上已有教程众多,不再赘述,可参考:https://developpaper.com/linux-configuration-ssh-and-xshell-connect-server-tutorial-illustration
结束:即可在xshell,通过终端命令远程操作Ubuntu。
异常诊断
无法连接:
ssh服务是否开启,port是否打开?
登入Ubuntu的用户名和账号是否正确?
用于xshell登入Ubuntu的IP地址,是否能够被win10的网络访问到?在win10,按下(WIN+R),ping下IP地址,查看连接状态。 - 通过配置xrdp和远程桌面连接应用
评估:
优点:win10系统自带“远程桌面连接应用”,直接搜索即可;图形化界面
缺点:Ubuntu的远程桌面有点卡顿
操作:网上已有教程众多,不再赘述,可参考:
https://blog.csdn.net/ZhangRelay/article/details/119831788
https://linuxconfig.org/ubuntu-20-04-remote-desktop-access-from-windows-10
结束:可通过远程桌面连接Ubuntu,实现图形化界面操作。
异常诊断:
黑屏
Ubuntu自动登入账号:参考上面博文,在远程桌面连接选择“LOCAL ACTIVE SESSION”进行登入。
Ubuntu开机需要手动输入密码登入账号,注销当前Ubuntu用户。 - 通过teamviewer,实现远程连接
评估:
优点:易于设置,较流畅的图形化界面
缺点:需要上网;固定密码;安全等级不高
操作:
Ubuntu需要设置成开机自动登录
win10和Ubuntu分别按照对应teamviewer.下载地址:https://www.teamviewer.com/en/
下载安装完成,打开teamviewer。两台电脑桌面上都有ID和密码:
在win10的teamvierw里,输入Ubuntu电脑的ID和密码即可远程连接。
再往下的步骤是,实现开机重启后,自启动连接teamview。
- 打开teamviewer的选项,勾选start teamviewer with system ,即可开机进入桌面后自启动:
- 在选型里,点击security,勾选 grant easy access。即可避免每次重启teamviewer,密码都会更改。
- 结束:完成teamviewer远程连接Ubuntu
- 异常检查:
win10端连接失败/超时
启动项?
系统是否自动登录账号?
网络是否正常?
win10端未出现桌面或黑屏
Ubuntu的电脑是否检测到显示端口?
补充:
可用终端命令,远程对Ubuntu桌面进行锁屏和解锁,前提是已经进入过桌面。
锁屏:gnome-screensaver-command -l
解锁:gnome-screensaver-command -d
设置开机启动的方式:
startup application preferences
systemd
crontab
写在最后:
在此过程中,也遇到了一些仍未解决的问题,分享给大家,希望互相学习探讨!
- Ubuntu开机需要手动登入时,如何在WIN10端远程操作,使其登入界面?
- 如何在Ubuntu开机登入的界面,运行teamviewer?
- 开机到登入界面,在登入账号的界面,进入界面后,这三个阶段的启动项?如何设置?