Windows系统下VirtualBox新建Ubuntu虚拟机并采用WindTerm和XShell远程连接(2022.5.11)
1、Ubuntu系统简介
????????Ubuntu是一个基于Debian的Linux操作系统,从桌面到云端,再到所有与互联网相连的东西,它是跨公共云和OpenStack 云的世界上最流行的操作系统。由于具有快速、安全、简单等特点,Ubuntu 系统可以大规模运行容器,从而为全球数百万台PC 提供了动力和支持。
????????由Canonical Ltd. 牵头承担开发的Ubuntu 项目公开致力于开源软件开发的原则;鼓励人们使用免费自由软件,研究如何工作、改进和分发Ubuntu 系统。因此,Ubuntu 系统的应用覆盖范围十分广泛,有公有云、私有云、Docker容器、工作站、数据中心、智能机器人、PaaS云应用 等。
Docker官网Ubuntu介绍
|
PostgreSQL官网Ubuntu介绍
|
????????如果想要进一步对Ubuntu 系统有所了解,可以查看Ubuntu桌面指南和Ubuntu帮助文档。
Ubuntu桌面指南
|
Github上的Ubuntu
|
2、VirtualBox虚拟机中安装Ubuntu系统
2.1 VirtualBox简介
????????Oracle旗下的VirtualBox是一款针对x86 硬件且面向服务器、桌面和嵌入式应用的通用虚拟机。它是一款功能强大的x86 和AMD64/Intel64 虚拟化产品,可供企业和家庭使用。VirtualBox的功能极其丰富,性能优越,同时也是唯一一个根据GNU通用公共许可证(GPL )作为开源软件免费提供的专业解决方案。VirtualBox 可以运行在Windows、Linux、Macintosh和Solaris 主机上,它看似简单,但非常强大,可以在任何地方运行,从小型嵌入式系统 或台式机 ,一直到数据中心 部署,甚至是云环境 。 ????????作为一个跨平台的虚拟化应用程序,VirtualBox 具有以下两个显著特点:(1)它安装在现有的基于英特尔或AMD的计算机上,无论它们运行的是Windows、Mac OS还是Linux;(2)它扩展了现有计算机的功能,使其能够在多个虚拟机内同时运行多个操作系统。例如,我们可以在Mac上运行Windows和Linux ,在Linux服务器上运行Windows Server ,在Windows上运行Linux 等等,所有这些都可以与现有应用程序一起运行。此外,用户可以根据需求安装和运行任意数量的虚拟机,但唯一的限制就是本地计算机的磁盘空间 和运行内存 。
2.2 安装VirtualBox
????????参考VirtualBox操作手册文档,首先下载VirtualBox-6.1.34-150636-Win.exe安装包文件,双击进行安装,安装过程如下图所示:
VirtualBox安装包文件
VirtualBox安装过程
????????VirtualBox 安装过程较为简单,选择好安装目录后直接点击下一步即可,安装完成后打开如下。
2.3 下载Ubuntu镜像并在VirtualBox中安装
????????为了在虚拟机中安装Ubuntu系统,可参考how-to-run-ubuntu-desktop-on-a-virtual-machine-using-virtualbox,需要下载Ubuntu镜像文件,这里下载的是ubuntu-22.04-desktop-amd64.iso,如下图所示。 ????????在得到Ubuntu镜像iso文件后,进入VirtualBox ,点击新建 ,在新建虚拟电脑弹窗中输入名称 ,选择自己想要安装虚拟机的文件夹(这里设置为F:\VirtualBox VMS ),类型选择Linux ,版本选择Ubuntu(64-bit) ,点击下一步。
????????之后设置虚拟电脑的内存在绿色范围以内(这里设置为4GB,即4096MB ),选择现在创建虚拟硬盘,虚拟硬盘文件类型选择VDI ,存储在物理硬盘上选择动态分配 ,文件位置选择F:\VirtualBox VMs\MyUbuntuHost\MyUbuntuHost.vdi (会自动创建好),文件大小设置为20GB 后,点击创建。
????????在创建完成后,VirtualBox 应用左侧多出一个虚拟机MyUbuntuHost ,点击启动按钮提示选择启动盘,点击右侧打开文件夹图标后弹出虚拟光盘选择窗口,点击注册,选择之前下载好的Ubuntu镜像iso文件 后点击启动,这样就进入了Ubuntu系统的安装界面了。
????????然后点击Install Ubuntu ,选择English 为键盘布局,按照如下过程正常安装即可。
????????虚拟机中Ubuntu 系统安装成功后,还可以对系统语言进行设置,可查看系统已经安装好的应用程序,其中Terminal 为命令行窗口。
设置系统分辨率
| |
查看已安装的应用程序
| |
修改系统语言为简体中文
|
打开Terminal终端命令行窗口
|
3、通过ssh远程连接Ubuntu系统(XShell / WindTerm)
3.1 Ubuntu系统配置IP地址
本地Windows系统中VirtualBox对应的IP
|
虚拟机中Ubuntu系统IP
|
????????如上图所示,在Windows 系统下Win+R打开cmd命令行窗口或者打开PowerShell窗口,在窗口中输入ipconfig 命令,获得VirtualBox Host-Only Network的详细信息(IP地址为192.168.56.1);然后查看VirtualBox 虚拟机中Ubuntu 的网络IP 地址为10.0.2.15 ,很明显它不是一个局域网IP地址,并且不在VirtualBox Host-Only Network的网段下,因此需要对此虚拟机添加网络,具体方法为:第一步关闭VirtualBox 中的虚拟机;第二步在VirtualBox 中选中该虚拟机,点击右侧的设置,在设置窗口中选择网络,在网卡2 选项卡下选中启用网络连接,并选择连接方式 为仅主机(Host-Only)网络,选择界面名称 为VirtualBox Host-Only Ethernet Adapter后点击OK 按钮保存设置;第三步启动虚拟机查看局域网IP 。
虚拟机中Ubuntu系统网络
|
Ubuntu系统网络IP为192.168.56.101
|
3.2 Ubuntu系统配置ssh
????????为了使用WindTerm软件远程登录VirtualBox虚拟机中的Ubuntu系统,还需要对Ubuntu 系统配置ssh,即需要了解OpenSSH。OpenSSH 是使用SSH 协议远程登录的首选连接工具,可对所有流量进行加密,以消除窃听、连接劫持和其他攻击。此外,OpenSSH 还提供了一整套安全隧道功能、多种身份验证方法和复杂的配置选项。下面在Ubuntu 系统中安装OpenSSH ,打开终端命令行窗口,输入以下命令安装openssh 并设置为开机自启,具体命令参考apt-get。
sudo apt-get update
sudo apt-get install openssh-server
ps -ef |grep sshd
sudo gedit /etc/ssh/sshd_config
sudo systemctl start ssh
sudo systemctl status ssh
sudo systemctl stop ssh
sudo systemctl enable ssh
安装openssh-server
|
编辑sshd_config文件设置PermitRootLogin为yes
|
单次启动和关闭ssh服务并查看对应状态
|
设置开机自启ssh并启动ssh服务
|
3.3 WindTerm远程登录Ubuntu系统
3.3.1 安装WindTerm(免费开源)
WindTerm
????????尽管XShell是一款优秀的远程登录软件,的确非常实用,但由于需要付费使用,即便是个人版也需要提交个人信息(姓名和邮箱)方可实用,这里最终考虑使用kingtoolbox中的WindTerm,这里下载了2.4.1版本64位的WindTerm,此版本对Win7、Win8、Win10和Win11 操作系统均可适用,下载完成后解压即可使用(无需安装)。 ????????解压后在WindTerm_2.4.1 文件夹下找到WindTerm.exe 并双击运行,弹出选择配置文件目录窗口,为了节省C 盘空间,这里选择了自己新建的D:\WindTermProfile 文件夹后点击OK按钮,并重新启动进入WindTerm 应用界面。
WindTerm应用界面
3.3.2 WindTerm通过ssh远程连接Ubuntu虚拟机
????????如上图所示,让VirtualBox 中的虚拟机处于启动状态,现在打开WindTerm ,点击菜单栏中的会话->新建会话,在弹出的新建会话窗口中点击SSH ,主机 输入之前获取的Ubuntu系统的局域网IP地址(192.168.56.101),端口 默认为22,点击连接后弹出登录窗口,输入用户名(jingzhong )后点击继续,又会弹出一个用户登录窗口,密码选择公钥 后并输入正确密码 后点击继续即可连接成功。
WindTerm远程连接VirtualBox中的Ubuntu系统过程
????????连接成功后如下图所示,进入了Ubuntu 系统命令行窗口,可输入一些命令检验一下效果。
WindTerm远程连接Ubuntu成功
ls
cd Downloads
ls
cd ../
sudo systemctl status ssh
exit
3.4 XShell远程登录Ubuntu系统
3.4.1 安装XShell
????????XShell是一款功能强大的针对Windows 平台的SSH1、SSH2、SFTP、TELNET、RLOGIN 和串行终端仿真器。它=允许用户在Windows 工作站上轻松安全地访问Unix/Linux主机。SSH(Secure Shell )协议支持通过Internet 进行安全连接的加密和用户身份验证,它取代了TELNET 和RLOGIN 等传统协议。它旨在满足初学者和高级用户的需求,用户界面直观,为高级用户提供强大的功能,如本地命令、正则表达式搜索、动态端口转发、国际语言等。 ????????XShell个人试用版下载,该许可仅供个人在家庭或学校使用。下载完成后双击Xshell-7.0.0108p.exe 进入安装界面,点击下一步 ,接受许可协议 ,选择安装目录 (最好默认)后即可成功安装。
XShell安装过程
XShell界面
3.4.2 XShell远程连接VirtualBox虚拟机中的Ubuntu系统
????????在确保VirtualBox 虚拟机为启动状态后,打开XShell 软件,点击文件->新建,弹出新建会话属性窗口,输入会话名称和主机号,主机号输入IP地址即可,点击确定后会弹出安全警告窗口,点击接受并保存 ,之后依次输入SSH用户名 、SSH用户密码 即可成功连接Ubuntu 虚拟机。
????????最终连接成功后的结果如下图所示,依次输入如下命令来测试XShell 远程连接Ubuntu 虚拟机的效果:
ls
cd Downloads
ls
cd ../
sudo systemctl status ssh
exit
4、总结
????????与GUI 操作方式相比,批处理命令深受广大开发者的喜爱,操作步骤及处理流程直观可视化,能够更加直接、快速实现想要的功能,完成大规模的任务,尽管需要牢记各种命令和语法参数,对开发者有一定的要求。 ????????如今,各种各样的操作系统(Windows系统、Linux系统和Mac OS系统 等)都有众多用户在使用,没有绝对好的操作系统,往往只是取决于用户的实际需求。但对于工程化的应用来说,向Linux 这样侧重于命令行式的系统更能够提高工作效率,节省时间,因为GUI图形用户界面更多是为了提供给非专业用户来使用,对于专业用户而言反而没有那么高效。不可否认,虚拟机(VMware Workstation、VirtualVox、VMware vSphere、Proxmox VE和Hyper-V(企业版)等)将各个环境进行有效隔离,使得操作虚拟机正如操作实体机一样流畅。在Windows 系统上通过安装虚拟机的方式来获得Linux 系统的操作体验,ssh远程连接linux系统 的方式在服务器运营、管理、维护和应用部署等方面的能力显得格外出众,能够极大提高科研人员、工程师、开发者们的工作效率,对于不同操作系统下的环境配置、编译、运行提供了良好的可操作性和扩展性。比如可利用Linux 环境对源码进行编译和构建,然后扩展到Windows 平台下利用,所以对操作系统的按需利用可加深自己对计算机架构、逻辑、存储等机制的理解。
|