Virtual Box 安装 Ubuntu Server 18 并ssh接通Xshell

来来回回装了十几次Ubuntu虚拟机,每次都是随手百度教程,每次都会遇到各种坑,有的是软件版本问题,有的是文章本身的错误,总要浪费一些时间,所以决定自己写个教程,只要严格按照下面给出的软件版本,保证没有问题。

一、准备工作

1、Virtual Box (Ver:5.2.22)

下载地址:https://www.virtualbox.org/wiki/Downloads

安装教程请自行搜索,基本是无脑下一步

2、 Ubuntu Server(Ver:18.10)

下载地址:https://www.ubuntu.com/download/server

安装教程:https://baijiahao.baidu.com/s?id=1617759207170584976&wfr=spider&for=pc

 这是别人写的,不过其实也是无脑下一步

3、XShell(Ver:5 Build 1339)

下载地址:https://www.netsarang.com/download/down_form.html?code=522

这是正版地址,破解和安装请自行百度


二、网络配置

首先安装ssh支持,这里一定记得先更新源再安装,我开始没有更新,结果ssh server正常运行但是XShell依然无法正常使用

sudo apt-get update 

sudo apt-get install ssh 

安装完你还是无法用XShell远程访问Ubuntu,这是由于virtualbox网络默认使用的是NAT(网络地址转换)方式联网,虚拟机并没有真正的IP供外部访问。

这时你有两个方案:

1、桥接+静态IP

如果你去百度,大部分教程会让你选择桥接方式联网

VirtualBox设置-网络,连接方式选择 桥接网卡

但是这种方式由于虚拟机IP是DHCP自动分配,每次开启服务器IP都会变动,显然很不方便

于是教程又会教你去系统中设置静态IP

这里遇到一个大坑!

由于Ubuntu Server18不仅不能像desktop版那样在图形界面里设置IP,而且18和之前的16 17 IP配置方式不同!

如果你的Ubuntu版本小于18,请参考:https://blog.csdn.net/mdw5521/article/details/79270035

如果你的Ubuntu版本大于等于18,请参考:https://blog.csdn.net/wuyoulv/article/details/81001503

2、NAT+端口转发(推荐)

桥接+静态IP改动很多,费时费力,而且博主的笔记本经常在公司和家里切换,ip段变化不得不放两个文件来回切换IP配置。

其实VirtualBox提供了端口转发方案,帮助你把指定本地端口号映射到虚拟机中的指定端口号,这样你就可以直接访问 127.0.0.1这个IP,我推荐大家使用这个方案,因为他不需要配置Ubuntu系统,用起来更方便

(这里我参考了此文:http://www.cnblogs.com/lxg0/p/6413965.html 作者在文中也尝试了配置两个网卡,切换使用静态IP和端口转发,有兴趣可以试试)

具体操作如下:

1.VirtualBox设置-网络,连接方式选择 网络地址转换

2.点击最下面的端口转发,配置你的本地转发端口号,例如9022(这个随意设置),因为我们要用ssh连接系统,这里子系统端口号设为22


三、进阶配置(后台启动虚拟机)

完成一二两步后你已经可以顺利使用XShell连接Ubuntu Server

不会XShell连接设置可以看这里:https://jingyan.baidu.com/article/48206aeada2e41216bd6b377.html

但是这还不够

每次启动服务器都得先双击打开virtualbox,然后双击打开你的虚拟机,等他启动了再打开XShell,这不仅操作麻烦,而且virtualbox自带的终端界面不好用还在状态栏占地方

能不能通过命令再后台启动我们的虚拟机呢?答案是肯定的

这里我参考了这篇文章:https://blog.csdn.net/kl28978113/article/details/54340683

文章中提供了很多的cmd命令来控制virtualbox,比如查询服务器列表,查询启动的服务器,后台启动服务器,关闭服务器等。

平时为了方便开启可以写个*.bat文件

@echo off

cd C:/Program Files/Oracle/VirtualBox

.\VBoxManage startvm MyServer1 -type headless

pause
 

但是实际操作后我遇到了三个坑

1.由于我的virtualbox装在C盘,win10下*.bat文件必须以管理员身份运行才能被正确执行

2.除了服务器列表后台启动服务器这两个命令,其他命令并不能正确生效,尤其是关闭服务器命令,会导致服务器被锁死不能关也不能开,可以直接在任务管理器中结束虚拟机进程(virtualheadless开头的进程,很容易看到)

2.如果第二步选择了桥接联网方式,那么后台启动服务器后,本地可以ping通,但XShell无法正常访问虚拟机,这个应该是有办法解决的,但是因为我选择了端口zh转发方式,就没有研究解决方案


四、总结

经过漫长的配置,终于可以用XShell愉快的操作Ubuntu了,后面我也会抽时间陆续总结一些Ubuntu上常用软件的安装和使用,如果大家在安装配置中遇到什么问题,欢迎留言交流。

猜你喜欢

转载自blog.csdn.net/hotcoffie/article/details/84957714
今日推荐