在上一篇文章中,我们从宏观视角梳理了 Ubuntu 发行版的生态与运维全景图。如果说那是一次”俯瞰全局”的认知准备,那么从今天开始,我们将正式进入动手实操阶段。本文聚焦于运维工作的第一步——环境准备与安装部署,带你走完从物理机、虚拟机到云主机这三种典型场景下 Ubuntu 的完整安装流程,并总结出一套可复用的部署规范。

一、安装前的环境准备
在动手安装之前,扎实的环境准备往往能避免 80% 的后续返工。环境准备的核心目标,是确保硬件、介质与规划三个层面都处于”就绪”状态。
1.1 硬件资源规划
Ubuntu 官方给出的最低配置相对宽松,但在生产环境中我们应当以”够用且留有余量”为原则进行规划。对于一台承担基础服务的服务器,建议参考以下基线:
| 场景 | CPU | 内存 | 磁盘 | 说明 |
|---|---|---|---|---|
| 最小化测试 | 1 核 | 1 GB | 10 GB | 仅用于验证安装流程 |
| 一般生产 | 2 核 | 4 GB | 40 GB SSD | 运行常规 Web/数据库服务 |
| 高负载 | 4 核以上 | 16 GB+ | 200 GB+ SSD | 数据库、容器编排等 |
磁盘规划尤其需要关注分区策略。对于使用 UEFI 引导的机器,务必预留一个 EFI 系统分区(ESP),否则安装完成后系统将无法引导。
1.2 安装介质制作
官方推荐使用 Rufus、balenaEtcher 或 Ventoy 制作启动盘。其中 Ventoy 因其”一次写入、多镜像通用”的特性,在运维场景中最为高效。在 Linux 主机上,我们也可以直接用 dd 命令写入 U 盘:
# 确认 U 盘设备名(切勿写错目标设备)
lsblk
# 将 ISO 写入 U 盘(假设 U 盘为 /dev/sdb)
sudo dd if=ubuntu-24.04.1-live-server-amd64.iso of=/dev/sdb bs=4M status=progress oflag=sync
写入完成后务必执行 sync 并安全弹出设备,避免数据未落盘导致介质损坏。
1.3 网络与镜像源规划
安装前需要确认目标机器的网络连通性,并提前选定软件源。对于中国大陆的服务器,建议提前准备好阿里云、腾讯云或清华大学的 Ubuntu 镜像源地址,安装时切换源可显著提升软件包下载速度。
二、物理机安装实战
物理机安装是运维人员必须掌握的基本功。以下以 Ubuntu Server 24.04 LTS 为例,梳理关键步骤。
2.1 引导与语言选择
将启动盘插入机器,进入 BIOS/UEFI 将引导顺序调整为从 USB 启动。系统引导后,选择”Install Ubuntu Server”。语言建议选择 English,避免中文环境下部分字符集问题;键盘布局保持默认的 US 布局即可。
2.2 磁盘分区
在磁盘配置环节,选择”custom storage layout”(自定义存储布局)以便精确控制分区结构。一个推荐的 LVM 分区方案如下:
# 推荐分区结构(示意)
/boot 1 GB ext4 启动内核
/ 40 GB ext4 根分区(LVM 逻辑卷)
/var 40 GB ext4 日志与数据
/home 剩余 ext4 用户数据
swap 4 GB swap 交换分区
生产环境中建议在根分区上启用 LVM,这样后续可以灵活扩容逻辑卷而无需重新分区。
2.3 用户与 OpenSSH
安装过程中会提示创建初始用户。该用户会被自动加入 sudo 组。强烈建议在此步骤勾选”Install OpenSSH Server”,以便安装完成后即可通过 SSH 远程管理,避免后续在机房键盘操作。
2.4 完成与首次登录
安装完成后拔掉启动盘并重启。首次登录后,先执行一次系统更新,确保系统处于最新补丁状态:
sudo apt update
sudo apt upgrade -y
三、云主机安装部署
云主机的”安装”本质上是对云平台镜像的定制与初始化,流程与物理机略有不同,但核心思路一致。
3.1 选择镜像与规格
登录云厂商控制台创建实例时,优先选择官方提供的 Ubuntu LTS 镜像(如 Ubuntu 22.04 LTS 或 24.04 LTS)。镜像应选择”官方原版”而非第三方定制镜像,以避免不可控的预置组件。
3.2 安全组与密钥配置
创建实例时需要配置安全组(防火墙规则)与登录方式。推荐使用 SSH 密钥对而非密码登录,密钥在创建实例时生成并绑定:
# 本地生成 SSH 密钥对(如已存在可跳过)
ssh-keygen -t ed25519 -C "your-email@example.com"
# 查看公钥内容,粘贴到云平台
cat ~/.ssh/id_ed25519.pub
安全组规则建议最小化开放:默认仅放行 22(SSH)、80(HTTP)、443(HTTPS)端口,其余端口按需开启。
3.3 初始化脚本(user-data)
云平台普遍支持通过 user-data 在首次启动时执行初始化脚本,这是运维自动化的关键能力。下面是一个典型的初始化脚本示例:
#!/bin/bash
# cloud-init 初始化脚本
apt update
apt upgrade -y
apt install -y curl wget git htop net-tools fail2ban
timedatectl set-timezone Asia/Shanghai
echo "Ubuntu cloud instance initialized." > /tmp/init.log
通过 user-data 可以在实例创建完成的那一刻自动完成软件安装、时区设置等基础配置,大幅提升批量部署效率。
四、虚拟机环境(KVM / VirtualBox)
对于本地测试与学习场景,虚拟机是最便捷的方式。以 VirtualBox 为例,创建虚拟机时注意以下几点:网络模式选择”桥接网络”以便于与宿主机互通;磁盘类型选择动态分配的 VDI 格式以节省空间;内存建议分配 2 GB 以上。
# VirtualBox 无界面命令行创建示例
VBoxManage createvm --name "ubuntu-test" --ostype Ubuntu_64 --register
VBoxManage modifyvm "ubuntu-test" --memory 2048 --cpus 2 --nic1 bridged --bridgeadapter1 enp0s3
VBoxManage createhd --filename "ubuntu-test.vdi" --size 40000
五、常见问题与排障
5.1 安装后无法引导
最常见的原因是 UEFI 与 Legacy 模式不匹配。检查 BIOS 中引导模式,确保与分区方案一致:UEFI 引导需要 ESP 分区,Legacy 引导需要传统的 MBR 分区表。
5.2 网络不通
物理机安装完成后若网络不通,先检查网卡是否被识别:
ip addr show
# 若无 IP 或网卡,检查驱动加载
lspci | grep -i ethernet
云主机若无法连通,优先排查安全组是否放行了目标端口。
5.3 软件源下载缓慢
将 /etc/apt/sources.list 中的源地址替换为国内镜像源后,执行 sudo apt update 即可。云厂商自带的实例通常已内置优化源,无需额外操作。
六、总结
环境准备与安装部署是运维工作的起点,其质量直接决定了后续所有操作的基础是否稳固。本文从环境准备、物理机安装、云主机部署到虚拟机搭建,系统梳理了 Ubuntu 在不同场景下的安装要点,并给出了分区规划、密钥配置与 cloud-init 初始化等实用方案。掌握这些内容后,你就具备了在任何环境下快速拉起一台 Ubuntu 服务器的能力。
下一篇文章,我们将进入命令行的世界,系统学习运维必会的高效命令与技巧,敬请期待。
下期预告:Ubuntu 运维系列 | 第 3 天:命令行基础——运维必会的高效命令与技巧


















暂无评论内容