欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用

程序员文章站 2022-05-10 18:11:19
...

本文记录一下 mac 新手安装虚拟机并配置好网络,ssh连接操作的过程,还算流畅。(五流文章讲配置,本文也不算入流,纯记录了)

01 下载安装 VirtualBox

官网下载,大约100mb,常规操作,一般没什么问题。版本的话选用最新版就可以了。
Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用
安装,mac下载完直接打开即可,安装完,语言可以选择中文。

02 新建虚拟机

都是中文,按照默认流程走下来即可:

  • 选择虚拟机类型 Linux 版本 Ubuntu
  • 设置虚拟机内存,后面想安装 minikube,所以分了4G(我机器本身16G)
  • “现在创建虚拟磁盘” - “选择VDI类型” - “动态分配”
  • “设置虚拟文件的位置和虚拟硬盘的大小”(我选了30G)

【说明】这样创建的虚拟机可以理解为拥有了一台刚装好硬盘和内存等的电脑,但是硬件上并没有安装操作系统,所以只有这个虚拟机本身是运行不了的,还需要安装操作系统才能使用。

03 下载镜像并安装OS

(1)下载 Ubuntu 镜像
官方网址:https://cn.ubuntu.com/download
(因为我不需要界面,所以选择 Ubuntu Server 18.04 LTS ,镜像文件大约 1G,下载还需要一些时间。初学者安装桌面版的话,有界面方便操作。)

(2)为虚拟机选择镜像
VirtualBox首页面,并依次点击左上角的设置–>存储–>选择虚拟光盘文件–>OK。Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用
(3)启动虚拟机
点击启动,进行 Ubuntu Server 18.04 操作系统安装,看着说明,一路 Next 到底。中间把 openssh 勾选安装上,其他我都没勾选。设置的用户名和密码注意记住。因为需要下载一些更新,大约需要十几分钟,安装完成。

【问题】我这里遇到了一个问题,在启动虚拟机时,有“正常启动”、“*面启动”、“分离启动”三种方式,当正常启动时,只要鼠标一离开虚拟机点击其他窗口就异常关闭,所以我就一直“分离启动”了。


有了一台虚拟机,网络连接方面我关心的2件事:

  • 虚拟机能不能上网
  • 由于虚拟机上的命令行使用不方便(无法复制、传文件等),一般需要 ssh 等连接

04 实现虚拟机上网

(这里涉及到 VirtualBox 虚拟机的四种网络连接方式,由于自己也只是普通了解,所以直接给出自己的解决方案,原理就不过多解释了)
最简单方式,设置 NAT 模式,这样一般vm就可以访问网络,没什么问题,可以 ping www.baidu.com 试试。
Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用
【问题】我这边虚拟机可以ping通主机,主机无法ping通虚拟机。之前用Vmware时没有这个问题,用VirtualBox就有了,所以后面为了使用ssh就做了一个端口转发。

05 设置 ssh root 连接

(1)端口转发
依次点击 设置-网络-高级-端口转发
Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用
点击右面添加,把虚拟机的22端口转发到主机的2222端口 :
(“子系统IP”换成虚拟机的IP地址)
Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用
这时,主机进行 ssh -p 2222 aaa@qq.com 应该就可以连接到虚拟机上了。但是 root 用户还是不行的。

(2)启用 root 用户

# 为root用户设置密码,输入要设置的密码:
$ sudo passwd root

# 可以使用su root命令,再输入密码,测试是否可以进入root用户
$ su root 

(3)设置ssh远程登录权限

# 修改 ssh 配置文件:
$ sudo vim /etc/ssh/sshd_config
找到 PermitRootLogin 改为 PermitRootLogin yes,保存退出

# 重启 ssh 生效:
$ service ssh restart

这时候,主机上 ssh -p 2222 aaa@qq.com 应该就可以连接到虚拟机了

(4)使用 FinalShell 工具进行 ssh 连接管理
下载地址:http://www.hostbuf.com/
目前使用起来还是比较好用的,可以看到 ssh 连接管理,文件传输都是可以的。
Mac上使用VirtualBox安装Ubuntu并流畅ssh连接使用