实验步骤
1、VirtualBox的安装
本实验使用VirtualBox-7.0.10 进行演示。对于安装包,大家可以前往 VirtualBox官网下载页面(https :/ / www. virtualbox.org/wiki/Downloads)下载其7.0版本安装包进行安装,或者直接使用QQ群的安装包VirtualBox-7.0.10-158379-Win进行安装。
安装的过程中,为了避免C盘空间不足,请选择D盘或者其他盘的一个空文件夹作为安装路径,其它直接默认就可以了。
2、配置虚拟机的默认位置
首选在D盘建一个空文件夹VirtualBox VMs,然后在VirtualBox的首页,通过“管理”->“全局设定”进入全局设定界面,设置虚拟机的默认存放位置为“D:\VirtualBox VMs”,最后点击“确定”按钮保存修改。
3、配置虚拟网络
为了实现多台虚拟机之间的网络联通,在VirtualBox安装完成后首先创建一个主机网络(Host-Only Ethernet Adapter)。选择菜单栏中的“管理”→“工具”→“主机网络管理器”打开主机网络管理器
然后单击“创建”按钮可以新建一个VirtualBoxHost-Only Ethernet Adapter。在创建过程中可能会遇到系统权限请求,允许即可
VirtualBox Host-Only Ethernet Adapter创建好之后,在主机网络管理器下方的网卡选项中选择手动配置网卡,将IPv4地址设置为192.168.56.1,IPv4网络掩码设置为255.255.255.0,IPv6地址及网络掩码长度不需要修改
同时,注意建议保持DHCP服务器开启
在VirtualBox 7.0版本中,系统已经自动为我们创建好了一个VirtualBoxHost-Only Ethernet Adapter。
4、Ubuntu虚拟主机的创建和配置
在VirtualBox主界面,单击“控制“→“新建”按钮创建3台虚拟主机。将3台虚拟主机分别命名为master,slave1,slave2
①创建虚拟机
类型选择“Linux”,版本选择“Other Linux(64-bit)” 【Ubuntu和Linux都可以】
将虚拟主机内存至少设置为2GB,以保证运行流畅.
为虚拟主机机创建足够大小的虚拟硬盘,至少30G。
②设置三个虚拟机网络
点击“设置”按钮,进行网络设置。
选择“网络”选项。其中网卡1默认为“网络地址转换(NAT)”,不需要更改。
选择网卡2,选中“启用网络连接”复选框,连接方式选择“仅主机(Host-Only)网络”,界面名称选择前面建立的VirtualBox Host-OnlyEthernet Adapter。在高级选项中设置混杂模式为“全部允许”,其他选项保持默认
5、Ubuntu的安装
点击“启动”按钮,启动虚拟主机。接着,启动界面的光驱弹窗中,选择加载Ubuntu的ISO镜像文件位置,即可在虚拟主机上进行ubuntu的安装
选择好ISO镜像文件后,单击“挂载并尝试启动”
如果在操作的过程,系统弹窗提示是否进入鼠标和键盘的独占模式,请选择取消,另外,如果不小心进入了鼠标和键盘的独占模式,可以按下右Ctrl键来退出独占模式。
在ubuntu的安装引导页面,默认第一个选项,按ENTER键进入下一步。在ubuntu的语言选择页面,选择安装语言,并点击“安装Ubuntu”
点击“继续”进入下一步
默认所在城市,点击“继续”进入下一步
设置用户名和密码,点击“继续”进入下一步
需要下载一些组件,所以有点慢,请耐心等待。同时,为了避免出现奇怪的问题,请保持网络畅通。
等待安装完成后,点击“重启”按钮.
接着,按ENTER键进入下一步重启。
如果此步出现异常,那么请强行退出,在virtual Box中手动重新启动
重启后,我们输入密码,就可以进入ubuntu了
另外,如果系统提示更新,请拒绝更新
6、安装增强功能
在“设备”中点击“安装增强功能”选项安装增强功能
在“共享粘贴板”中,将粘贴板共享设置为“双向”,关闭虚拟机,重启生效,最后重新启动后,为了获得更好的视觉效果,建议在“视图”中,将视图设置为“无缝模式”。
7、网络与动态IP
使用ip addr show查看主机所有IP
同时,我们也可以使用ifconfig -a 查看当前主机所有的额IP。只是在ubuntu 20.4中,我需要先使用以下命令安装网络相关工具
sudo apt install net-tools
然后输入ifconfig -a命令查看当前网卡状态。可以看到enpos3网卡与enp0s8网卡, enp0s3网卡是虚拟机网络设置中的网卡1,负责通过主机连接互联网;enp0s8为Host-Only网络,负责虚拟局域网内互通。不同机器的网卡名称可能不同,且 Host-Only 网卡默认为关闭状态
8、SSH配置
为了方便通过SSH协议远程连接我们的ubuntu主机,我需要安装SSH服务端,命令如下:
sudo apt install openssh-server -y
如果SSH服务端,,使用ssh无法登录该主机,遇到类似的问题ssh Connection reset by 192.168.56.103 port 22
重装SSH服务成为唯一的解决方法
#卸载ssh服务
sudo apt remove --purge openssh-server -y
9、Windows中Git安装和远程连接
安装完成后,我们可以通过开始菜单-》所有应用-》“Git”->“Git Bash”或者鼠标右键弹窗的“显示更多选项”->“Git Bash Here”进入Git的命令行
我们可以直接使用“ssh master@192.168.56.17”远程连接我们的ubuntu主机
使用ssh进行远程连接的时候,出现了类似的以下错误:
no matching key exchange method found. Their offer: diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1
那么请使用以下命令进行清理,然后再重试
ssh-keygen -R 192.168.56.105
10、安装vim软件包
sudo apt install vim来安装vim
【最好在Get上执行】
11、开启root用户
ubuntu中,默认没有开启root用户,不过我们先通过sudo passwd root设置root的密码,来启动root用户
启动root用户后,我们可以通过su命令从当前用户切换到root用户
12、SSH中,允许root用户直接登录
对于SSH,编辑 /etc/ssh/sshd_config 文件:
sudo vim /etc/ssh/sshd_config
找到 PermitRootLogin 这一行,并将其修改为:
PermitRootLogin yes
保存关闭文件,并重新启动。
这样我们就可以远程使用SSH直接进行root用户的登录。
比如,ssh root@192.168.56.200
13、静态IP配置
通过以下指令更改配置文件,实现第二网卡enp0s8的静态IP配置:
sudo vim /etc/netplan/01-network-manager-all.yaml
在文件中添加如下信息:
ethernets:010
enp0s8:
dhcp4: false
addresses: [192.168.56.200/24]
gateway4: 192.168.56.1
修改完成后保存文件﹐输入以下指令启动网卡:
sudo netplan apply
建议将slave1和slave2这三台主机设置为静态IP:192.168.56.3,192.168.56.4。
即master、slave1和slave2这三台主机的静态IP分别为:192.168.56.200,192.168.56.3,192.168.56.4。