主要概述:

  1. 获取官网镜像

  2. Ubuntu安装之虚拟机配置

  3. 启动虚拟机

  4. 远程连接

  5. 网卡优化

1. 获取官网镜像

https://cn.ubuntu.com/download

2. Ubuntu安装之虚拟机配置

  1. 创建虚拟机

  1. 选择自定义

  1. 选择对应VM的版本,点击下一步

  1. 稍后安装操作系统,点击下一步

  1. 选择操作系统,点击下一步

  1. 修改虚拟机名称和位置,点击下一步

  1. 选择处理器配置,根据自己的需求来,点击下一步

  1. 选择虚拟机内存,根据自己的需求,点击下一步

  1. 选择网络类型,因为我在公司有两台设备,一台专门用作虚拟机,另一台用作远程连接,所以为了方便选择了桥接网络,如果你只有一台设备的话,建议选择NAT网络地址共享宿主机网络。

  1. 默认下一步

  1. 磁盘类型,默认下一步

  1. 选择磁盘,默认下一步

  1. 选择磁盘容量,默认下一步

  1. 指定磁盘文件,默认下一步

  1. 选择自定义硬件

  1. 将下载的ISO文件配置进去,点击关闭

  1. 最后点击完成

3. 启动虚拟机

  1. 点击开启虚拟机

  1. 选择Ubuntu系统,按住Enter键继续

  1. 选择语言,我这里选择了英语,按住Enter键继续

  1. 选择合适的键盘布局,默认即可,按住Enter键继续

  2. 选择安装类型,默认即可,按住Enter键继续

  1. 选择网络类型,默认是自动获取IP,可以自己手动设置静态IP,等待IP出现后按住Enter键继续

  1. 配置代理,不需要配置按住Enter键继续

  1. 配置Ubunutu镜像源,我这里配置了阿里云镜像源,https://mirrors.aliyun.com/ubuntu/。按住Enter键继续

  1. 磁盘分区,默认是LVM格式,不需要修改,直接按上下键调整到Done位置按回车即可

这是具体分区的信息,不需要调整直接按回车即可

调整光标到Continue,然后按回车

  1. 设置用户名和密码,注意,Ubuntu Server默认不允许使用root账户登录

  1. 这一步是更新,可以暂时不更新后续有需要了在更新,默认选择的是跳过,可以直接按回车

  1. 如果需要远程管理服务器,可以安装ssh服务,在安装过程中会有提示,选择安装即可,光标调整到Done按回车继续

  1. 额外服务,不需要安装,直接按上下键调整到Done按回车即可

  1. 等待安装完成以后,光标调整到Reboot Now

  1. 这里需要回车才能进行下一步

  1. 输入账号密码,登录页面

4. 远程连接

  1. 设置root 密码

sudo passwd root
  1. 修改配置文件

sudo vim /etc/ssh/sshd_config
## 在文件中找到以下行:
#PermitRootLogin prohibit-password
## 在下面添加
PermitRootLogin yes
  1. 重启服务

sudo systemctl restart sshd
  1. 远程工具测试连接

5. 网卡优化

我们需要为服务器分配一个固定的ip,这样子就不会每次重启会导致ip变化

  1. 修改VM的虚拟网络编辑器

  1. 重启服务器,修改网卡配置文件

cat /etc/netplan/50-cloud-init.yaml
network:
  ethernets:
    ens33:
      addresses:
      - 10.0.0.100/24   ##这里是我的固定ip
      routes:
        - to: default
          via: 10.0.0.2
      nameservers:
        addresses:
        - 223.5.5.5
        - 114.114.114.114
  version: 2

## 重启网卡
netplan apply

踩坑:

当你书写完上面的网卡配置后,你reboot一下服务器你会发现配置文件又变回原来的样子了,Ubuntu Server 默认使用 cloud-init 自动管理网络设置,如果不禁用它,每次重启它都会根据模板覆盖你的 /etc/netplan/50-cloud-init.yaml

解决方法一:

##创建 cloud-init 网络配置屏蔽文件
vim /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
network: {config: disabled}
## 在重新写上面的网卡配置文件

解决方法二:

/etc/netplan/50-cloud-init.yaml 是 cloud-init 创建的,不应该直接改。如果你不禁用 cloud-init,建议你新建自己的配置文件,比如
vim /etc/netplan/01-netcfg.yaml

原理:优先级上,数字越小的 netplan 文件越优先,因此 01- 开头的会覆盖 50-cloud-init.yaml。
  1. 一键修改主机和ip地址的脚本

vim change.sh
#!/bin/bash 
#author:xingzhibang
#desc: change ip and hostname 

## 判断参数格式是否为2
[ $# -ne 2] && {
  echo “你使用的脚本姿势不对”
  echo "正确姿势:$0 主机名  IP地址" 
exit 1
}

## 获取当前主机的ip地址
ip=`hostname -I |awk '{print $1}'|sed 's#.*\.##g'`

#新ip
ip_new=`echo $2 |sed 's#^.*\.##g'`
##新主机名
hostname=$1
##修改ip 这是10网段的ip,根据实际情况自行修改
sed -i "s#10.0.0.$ip#10.0.0.$ip_new#g" /etc/netplan/50-cloud-init.yaml
##修改主机名
hostnamectl set-hostname $1
## 重启网卡
netplan apply
## 使用方式
./change.sh xingzhibang 192.168.0.200
## 查看主机ip