Vmware 安装Ubuntu(ubuntu-18.04.3-l
-
下载镜像
-
Ubuntu
这里我们安装服务版
Ubuntu Server
(不需要桌面程序):https://ubuntu.com/download/server
-
-
创建虚拟机
- 虚拟机引导
使用
推荐模式
,然后安装程序光盘映像文件
选择下载的ubuntu-18.04.3-live-server-amd64.iso
镜像,输入虚拟机名称
,并设置虚拟机存储目录
,设置磁盘容量
,然后自定义硬件
信息,最后点击完成并开启虚拟机,虚拟机会提示是否安装Vmware Tools
,推荐选是
,安装Vmware Tools
后可使用简易模式。虚拟机引导的第一步会让你设置用户名及密码,如果使用简易模式,虚拟机会帮你自动安装并使用你的设置的用户名及密码最为系统默认用户进行登录(测试发现虚拟机暂时不支持ubuntu 18.04+
版本的简易模式)。这里我们简单介绍一下
未使用简易模式
的安装过程:镜像载入后,第一步会让你选择语言,后面的直接回车
确定,直到让Configure Ubuntu archive mirror
设置,配置阿里源:http://mirrors.aliyun.com/ubuntu
,后面都直接回车确定,直到Filesystem setup
设置,选择Continue
,然后设置用户名密码,进入预装软件设置界面,这里我们不安装所有的预装软件,直接选择Done
进入下一步设置,等待系统下载更新,然后重启 -
设置ROOT密码
ubuntu系统默认不是ROOT用户,而网络设置许多功能需要ROOT权限,那么我们现在来设置以下ROOT用户,首先设置ROOT用户密码
sudo passwd
然后输入ROOT密码,之后输入
su root
切换至ROOT用户 -
NAT模式设置固定IP
因为ubuntu默认在虚拟机的NAT网络模式下,未出现任何问题,那么这里直接记录如何设置固定IP。首先输入
cd /etc/netplan
进入网络配置文件目录,然后通过ls
查看文件名(本测试客户机的文件为50-cloud-init.yaml
),之后通过vi
修改文件内容network: version: 2 ethernets: ens33: addresses: - 192.168.29.113/24 gateway4: 192.168.29.2 nameservers: addresses: - 192.168.29.2
然后输入
netplan apply
应用网络配置(重启网络
)。可是依然发生了不想发生的事情,ping
网关正常,ping
宿主机正常(需关闭防火墙,原因参考docker或centos(虚拟机)与宿主机通信相关说明),ping
百度的IP正常,ping
百度域名报错:Temporary failure in name resolution
。尝试重启网卡ifconfig eth33 down ifconfig eth33 up
无果,之后尝试直接修改DNS
vi /etc/systemd/resolved.conf service systemd-resolved restart
依然无果,查看
cat /resolv.conf
显示nameserver
为127.0.0.53
,全部内容如下nameserver 127.0.0.53 options edns0
将
nameserver
设置为网关
或公网DNS
无果,执行service systemd-resolved restart
后测试依然无果,再次查看cat /resolv.conf
显示nameserver
被还原为127.0.0.53
。百思不得其解之时,回想起centos
安装时的爬坑经验:对比自动获取IP与静态IP对系统环境的网络参数有哪些变化,于是将客户机恢复快照至刚配置好ROOT密码时,查看cat /resolv.conf
nameserver 127.0.0.53 options edns0 search localdomain
其中多了一项
search localdomain
,于是抱着试一试的心态将50-cloud-init.yaml
配置进行修改network: version: 2 ethernets: ens33: addresses: - 192.168.29.113/24 gateway4: 192.168.29.2 nameservers: addresses: - 192.168.29.2 search: localdomain
再次执行
netplan apply
并ping www.baidu.com
,然后通了......,经过求证发现search localdomain
只有当访问的域名不能被解析时,系统会将该域名加上search
指定的参数,重新请求DNS
,直到被正确解析或试完search指定的列表为止,参考:https://blog.csdn.net/zhuzaijava/article/details/77977666。话又说回来,那么50-cloud-init.yaml
中既然有了search: localdomain
,那么参数addresses: - 192.168.29.2
是不是就需要了呢,测试发现此参数必须否则会理解报错:Temporary failure in name resolution
,于是我又测试了将网关改成无效地址
,无法解析,然后又改成公网DNS
,依然无法解析,因此这里的网关还是需要配置虚拟机NAT模式
下的的网关地址
-
桥接模式设置固定IP
在上面我们已经说了
ubuntu
如何配置静态IP
的方法,我们使用同样的方法将IP
、网关
、DNS
分别配置成宿主机局域网网段下的IP
、网关
、DNS
(这里DNS
配置就很友好了,search: localdomain
不需要了,并且无论是网关地址
还是公网DNS
均可),然后将客户机
的网络适配器更改为桥接模式
,并执行netplan apply
重启客户机的网络配置,一下子就通了...... -
远程访问
ubuntu默认不支持
ssh远程访问
,需要安装openssh-server
apt-get install openssh-server
然后修改
openssh
配置文件vi /etc/ssh/sshd_config
找到
#PermitRootLogin prohibit-password
,将其修改为PermitRootLogin yes
,之后执行service ssh start
重启ssh服务,之后就可以使用远程工具对22
端口进行远程连接了