Ubuntu Server 22.04 LTS安装与优化全指南
1. 项目概述
作为一名Linux系统管理员,我经常需要为团队部署Ubuntu Server系统。不同于桌面版,服务器版的安装过程有许多需要特别注意的配置项。今天我就用最近一次实际部署的经验,手把手带大家走一遍Ubuntu Server 22.04 LTS的安装全流程,重点解析那些官方文档没细说但实际工作中必知的细节。
这个教程特别适合:
- 刚接触Linux服务器的运维新人
- 需要标准化部署流程的团队负责人
- 想了解服务器与桌面版安装差异的技术爱好者
我会用实体服务器配合iDRAC远程控制台进行演示,过程中会标注与虚拟机安装的差异点。所有截图都是实时操作所得,保证每个步骤都经得起验证。
2. 安装准备阶段
2.1 硬件需求核查
虽然Ubuntu Server对硬件要求不高,但生产环境建议:
- CPU:至少2核(实测1核运行Docker会卡顿)
- 内存:4GB起步(运行K8s节点建议8GB+)
- 存储:50GB SSD(系统分区)+ 按需配置数据盘
- 网络:双网卡做bonding(重要服务器必备)
特别提醒:服务器安装一定要检查RAID卡驱动是否兼容,曾经遇到HPE Gen10安装时认不到RAID阵列的问题,最后发现需要先加载hpsa驱动。
2.2 制作启动介质
推荐两种可靠方式:
- Rufus写入(Windows环境):
选择DD模式写入(非ISO模式) 文件系统选FAT32(UEFI必须) 簇大小保持默认(大文件传输更快) - dd命令写入(Linux/macOS):
diskutil list # 确认U盘设备号(如/dev/disk2) diskutil unmountDisk /dev/disk2 sudo dd if=ubuntu-22.04-live-server-amd64.iso of=/dev/disk2 bs=1m
实测用USB3.0闪存盘安装比光盘快3倍以上,特别是当服务器配有USB3.0接口时。
3. 安装过程详解
3.1 引导与初始配置
插入安装介质后,在服务器BIOS中:
- 设置UEFI启动模式(传统Legacy模式已逐步淘汰)
- 关闭Secure Boot(某些网卡驱动会受限)
- 调整启动顺序:USB > PXE > 本地硬盘
安装程序加载后会遇到第一个关键选择:
Try Ubuntu Server / Install Ubuntu Server ↓ 选择Install Ubuntu Server语言选择建议用English(避免后续终端出现乱码),时区按实际选择即可。
3.2 网络配置实战技巧
网络配置界面隐藏着几个重要细节:
多网卡命名规则:
- eno1:板载网卡1
- ens1f0:PCIe网卡端口0
- 建议记录各网卡MAC地址与物理端口对应关系
IPv6配置:
如果内网没有IPv6环境 ↓ 务必选择"Disable IPv6" ↓ 否则会导致部分服务解析超时代理设置: 在内网环境需要HTTP代理时:
http://proxy.internal:3128 格式必须完整(不能省略http://)
3.3 存储配置进阶方案
生产环境推荐使用LVM分区方案:
/boot 1GB ext4 (独立分区防止LVM故障) / 50GB ext4 (系统根分区) swap 内存大小的1-2倍 (休眠需要) /var 20GB ext4 (日志专用) /home 剩余空间 ext4 (用户数据)血泪教训:曾经有台服务器/var分区过小,导致docker日志撑爆根分区。现在我会给/var单独分配20GB空间。
对于数据库服务器,建议额外配置:
raw磁盘 → LVM物理卷 → 创建LV时加--type thin-pool ↓ 可实现动态空间分配(类似VMware Thin Provision)3.4 用户与安全设置
安全加固关键点:
禁用root登录:
安装时创建普通用户 ↓ 后续通过sudo提权SSH密钥登录:
安装时勾选"Install OpenSSH server" ↓ 首次登录后立即: sudo nano /etc/ssh/sshd_config ↓ 修改: PasswordAuthentication no PermitRootLogin no防火墙预设:
选择安装ufw防火墙 ↓ 基础规则: sudo ufw allow 22/tcp sudo ufw enable
4. 安装后必做优化
4.1 系统更新策略
首次启动后立即:
sudo apt update sudo apt full-upgrade -y sudo apt install -y \ git curl tmux \ net-tools lsof htop建议配置无人值守更新:
sudo dpkg-reconfigure unattended-upgrades ↓ 选择自动安装安全更新4.2 性能调优参数
修改/etc/sysctl.conf追加:
# 提升TCP性能 net.core.rmem_max=4194304 net.core.wmem_max=4194304 net.ipv4.tcp_keepalive_time=300 # 减少swap使用倾向 vm.swappiness=10对于数据库服务器还需调整:
echo deadline > /sys/block/sda/queue/scheduler4.3 监控基线配置
安装基础监控工具:
sudo apt install -y \ sysstat smartmontools启用服务:
sudo systemctl enable --now \ sysstat smartd配置日志轮转:
sudo nano /etc/logrotate.conf ↓ 修改为: rotate 12 weekly missingok compress delaycompress5. 常见问题排错指南
5.1 安装阶段问题
问题1:安装卡在"Detecting hardware"阶段
- 可能原因:RAID卡驱动缺失
- 解决方案:
- 在启动菜单按"e"编辑启动参数
- 在linux行末尾添加
modprobe.blacklist=nouveau - 按F10继续启动
问题2:安装后无法联网
- 排查步骤:
ip a # 检查网卡识别 sudo lshw -C network # 查看驱动状态 sudo dhclient ens3 # 手动获取IP
5.2 运行阶段问题
问题3:磁盘空间不足告警
- 快速定位大文件:
sudo du -h --max-depth=1 / | sort -h sudo journalctl --disk-usage # 检查日志大小
问题4:SSH连接缓慢
- 优化方案:
sudo nano /etc/ssh/sshd_config ↓ 添加: UseDNS no GSSAPIAuthentication no
6. 生产环境增强配置
6.1 自动化部署方案
对于批量部署,推荐使用Preseed自动安装:
# 示例preseed.cfg片段 d-i partman-auto/method string lvm d-i partman-lvm/device_remove_lvm boolean true d-i partman-auto-lvm/guided_size string max配合PXE网络启动可实现:
- 30分钟内部署50台服务器
- 自动配置主机名/IP/分区
- 预装指定软件包
6.2 安全加固检查清单
安装后必须执行的加固操作:
配置fail2ban防暴力破解:
sudo apt install -y fail2ban sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local启用自动安全更新:
sudo apt install -y unattended-upgrades sudo dpkg-reconfigure -plow unattended-upgrades配置审计日志:
sudo apt install -y auditd sudo auditctl -e 1
6.3 备份恢复方案
推荐采用以下备份策略:
每日增量备份: sudo tar -g /backup/snapshot -czpf /backup/daily/$(date +%Y%m%d).tar.gz / 每周全量备份: sudo lvcreate -s -n root_snap -L 5G /dev/vg00/root测试恢复的完整流程:
# 从LiveCD启动后 sudo lvcreate --name root_restore --size 50G vg00 sudo tar -xzpvf backup.tar.gz -C /mnt sudo update-grub最后提醒:所有关键操作前记得先做快照。上周我刚因为误删一个Python环境,幸亏有LVM快照能秒级回滚。养成好习惯能省下无数加班时间。
