企业 Ubuntu 服务器标准化安装与配置全流程(避坑指南)
前言:
一次性搞定企业 Ubuntu 服务器的安装与全基础关键配置
在系统部署与实施过程中,系统部署环节的稳定性至关重要。本文旨在集中解决实施中高频出现的几类问题,包括:系统安装时磁盘无法识别、磁盘分区方案错误、键盘输入异常、以及基础工具缺失等。下文将针对这些问题,提供清晰的定位、分析与解决路径。
基础环境:
服务器:Huawei 2288H V6 ,CPU: Inter ,Mem: 32G
硬盘: STAT 480G SSD *1 , STAT 4T HDD*1
系统: Ubuntu 24.04、Ubuntu 18.04
潜在因子:
项目临时服务器,硬盘配比不足,服务器基础自带 RAID 虚拟化
配置计划:
1.基础RAID虚拟化,必须至少配置RAID 0 ,作用:让服务器能识别硬盘
2.操作系统+数据存储分离架构,作用:保障数据盘可随时物理迁移
3.基础远程访问管理SSH,指定IP地址信息,硬盘自动挂载等
配置过程:
配置RAID 方式一:UEFI
开机 DEL 进入UEFI

默认管理密码:Admin@9000


选择RAID 卡 并进行配置


配置磁盘阵列,这里两个配置RAID 0 即可 ,过程省略(非必要都保持默认选项)


F10 保存配置 (注意)

配置RAID 方式二:WEB管理界面(同理)

登录管理平台使用KVM远程安装操作系统

挂载安装系统的镜像

配置启动方式为软驱,可以设置临时启动

观察以太网卡正在传输本地电脑的镜像数据

选择尝试或安装系统(默认此选项)

1.部分系统安装界面直接选择:install 安装(不依赖启动环境)即可,可靠性更高。

2.图形化安装:Try or install ubuntu 在启动的系统基础上启动安装,部分情况可能会有错误,例如启动项。

注意:如果服务器配备算力等硬件且操作系统为 命令行版本,可在此接入网络(通过笔记本共享网络或手机共享网络),以便于安装过程中自动通过网络下载相关显卡,基本命令环境驱动(后期省大事)

手机共享网络后,自动出现有线连接

这里由于我在图形化界面出现的种种问题,鉴于临时使用要求不高,保险起见直接使用 Ubuntu 18.04 系统非启动页(以上内容图形化安装篇幅)镜像系统安装方式。
手动分配磁盘
系统盘基本分区
/efi #EFI启动分区便于存放系统固件升级 部分为系统是 /boot分区
/swap #交换分区一般为实际内存*2,这里配置32G即可
/ #挂载剩余所有空间到系统
数据盘分区
/data #挂载所有空间到此目录

配置远程访问管理SSH
部分系统并没有通用大家熟悉的基本命令环境,需要联网进行自行安装,如:安装时联网(此时进行系统可能会自动下载对应工具集合)
修改 ROOT 密码

默认无通用网卡命令:ifconfig

测试已连接外网

手动安装 SSH 服务器( 默认安装后即可使用)

手动安装基本命令工具集 net-tools
注意:新版系统主要使用 iproute2 工具集,根据企业情况调整

手动修改指定网卡的IP地址(命令行系统版本需要)
注意:桌面版系统可在图形化界面,搜索:磁盘 进行修改,但是与Netplan 配置文件不互通

新版 Netplan 网络管理工具原理参考
Netplan——新一代网络配置工具
https://www.jianshu.com/p/174656635e74

配置文件基本使用帮助
root@soft:~# vi /etc/netplan/50-cloud-init.yaml #配置文件名字可能不同,由于操作系统版本原因,可上网自行查找配置文件格式要求,修改完成后进行应用使用
注意:某些场景关联了容器的网络,使用保存命令可能直接导致网络断开,修改配置文件前确认关闭容器网络
netplan try:
这个命令会尝试应用网络配置而不实际更改当前的系统配置。 它允许用户在不重启网络服务的情况下验证配置文件是否有效。
如果配置不正确,netplan try 会显示错误信息,并且不会应用这些更改,这意味着网络配置会保持原状。
这对于测试新的网络设置非常有用,因为它允许你在不影响当前网络连接的情况下安全地尝试新的配置。
注意:使用终端远程登录并修改服务器的此项IP配置,且超出120S 系统未修改到正确的配置时(无法直观从显示界面观察),该配置即已被应用。建议使用服务器管理系统操作可查看全过程。
netplan apply:这个命令会应用当前定义的网络配置,并且会重启网络服务以使更改生效。 如果配置文件中有任何错误,netplan apply 可能会导致网络服务无法启动,从而中断网络连接。
一旦应用了新的配置,更改将立即生效,所有网络接口都会根据新的配置进行重新配置。
在生产环境中,你应该在应用更改之前确保你的网络配置文件是正确的,并且最好有适当的备份和恢复计划。
配置Netplan 内容例:
配置有问题不能应用的小伙伴参考如下修改
network:
version: 2
ethernets:
eno1: #此处为 ifconfig 或 ip addr 命令输出的接口名称根据实际情况调整
addresses: #注意换行
- "192.168.1.1/24" #IP地址+对应的子网掩码
nameservers:
addresses:
- 61.139.2.69 #DNS地址可不填写,默认从网关代理
search: []
routes:
- to: "default"
via: "192.168.1.1" #注意网关
部分情况手动挂载硬盘,最后重启系统检查是否自动挂载
mkdir /data #即创建目标目录
root@soft:~# lsblk -f #查看硬盘标识符
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
sr0
xvda
├─xvda1
├─xvda2 ext4 1.0 798de562-e534-4883-a1ab-d7cc4c796c45 3.5G 5% /boot
├─xvda3 swap 1 b8030876-1f1f-4d0f-b07a-22a5e9d252ee [SWAP]
└─xvda4 ext4 1.0 ceb353fa-6a5c-48fc-ac1c-5228f1208f6a 70.9G 4% /
xvde
└─xvde1 ext4 1.0 6d52d837-4914-4936-bc96-158d06c5d6cf 556.1G 1% /data
root@soft:~# vi /etc/fstab #编辑挂载文件,注意:此文件错误可能直接导致系统损坏和无法使用谨慎操作
新增加故障点格式
# 格式:UUID=挂载点 文件系统类型 挂载选项 dump fsck
UUID=ABCDEF12-3456-7890-ABCD-EF1234567890 /mnt/mydisk ext4 defaults 0 2
文件内容如下:
/dev/disk/by-uuid/b8030876-1f1f-4d0f-b07a-22a5e9d252ee none swap sw 0 0
# / was on /dev/xvda4 during curtin installation
/dev/disk/by-uuid/ceb353fa-6a5c-48fc-ac1c-5228f1208f6a / ext4 defaults 0 1
# /boot was on /dev/xvda2 during curtin installation
/dev/disk/by-uuid/798de562-e534-4883-a1ab-d7cc4c796c45 /boot ext4 defaults 0 1
UUID=6d52d837-4914-4936-bc96-158d06c5d6cf /data ext4 defaults 0 0
踩坑问题:
1.故障报错提示硬盘空间不足,无法安装系统

原因:硬盘底层未做RAID 磁盘阵列,无法识别硬盘
解决方式:通过服务器管理界面 或 UEFI界面配置RAID

2.当硬盘存有存在的分区或数据配置时,安装中报错问题(4T硬盘)

故障报错,提示检测到错误需要重启


原因:sdb 硬盘 分区表损坏或格式损坏
系统默认保留数据导致无法读取分区表卡住进度。。这里的疑问是:在操作分区时,已经勾选了格式化,逻辑上不会出现此问题。。。
解决方式1:重启安装系统,对该硬盘不执行操作,待安装完成系统后手动配置格式化和挂载

解决方式2:重启进入live 系统或其他可用底层环境,使用命令擦除数据再进行安装。
root@soft:~# lsblk #查看分区汇总
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 1024M 0 rom
xvda 202:0 0 100G 0 disk
├─xvda1 202:1 0 1M 0 part
├─xvda2 202:2 0 4G 0 part /boot
├─xvda3 202:3 0 16G 0 part [SWAP]
└─xvda4 202:4 0 80G 0 part /
xvde 202:64 0 600G 0 disk
└─xvde1 202:65 0 600G 0 part /data
root@soft:~# parted /dev/xvda print #打印分区信息
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 4297MB 4295MB ext4
3 4297MB 21.5GB 17.2GB linux-swap(v1) swap
4 21.5GB 107GB 85.9GB ext4
假设:这里硬盘为600G 即
执行命令:root@soft:~# sudo wipefs -a /dev/xvde


3.键盘输入乱码问题
输入错误乱码导致无法快速编辑对应文件(使用翻页功能) ,注意:在安装操作系统时已经检测选择默认 English(UK) 布局,仍然导致此问题。
原因:键盘布局错误导致,市面上许多非标键盘包括笔记本自带的键盘
-
全尺寸键盘 / 104键键盘 / 108键键盘 (带数字小键盘)
-
87键键盘 / 紧凑键盘 / Tenkeyless键盘 (无数字小键盘)
-
68键键盘 / 61键键盘 (超紧凑,无F功能键区)
-
常见,1801 标准键盘布局

解决方式:关闭指定键盘布局,使用自动识别
ubuntu@soft:~$ sudo vi /etc/vim/vimrc.tiny #修改键盘布局配置文件
修改为 set nocompatible #自动识别键盘布局


这里键盘布局错误导致我正在编辑 vi /etc/fstab 挂载磁盘文件出现乱码内容,以及编辑状态无法保存(因为也是乱码无法输入q!强制退出),最后强制重启。
拓展提示磁盘文件错误导致史诗级问题(系统崩溃,无法修复)
1.系统开机登录无法进入系统

2.高级内核 Recovery 模式崩溃,最后的修复手段失效,如下图
😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣



4.无法安装对应工具集问题
原因:未进行系统初始化更新(自动更新下载源)

手动更新系统后安装即可

net-tools 和 iproute2 工具集拓展
net-tools 和 iproute2 工具集-核心命令对比表
| 功能分类 | 操作描述 | net-tools命令 | iproute2命令 |
| 接口查看 | 显示所有网络接口 | ifconfig -a | ip addr show 或 ip a |
|
| 显示单个接口 | ifconfig eth0 | ip addr show dev eth0 |
|
| 显示接口统计 | ifconfig eth0 | ip -s link show eth0 |
| 接口控制 | 启用接口 | ifconfig eth0 up | ip link set eth0 up |
|
| 禁用接口 | ifconfig eth0 down | ip link set eth0 down |
|
| 修改MAC地址 | ifconfig eth0 hw ether 00:11:22:33:44:55 | ip link set eth0 address 00:11:22:33:44:55 |
|
| 修改MTU | ifconfig eth0 mtu 9000 | ip link set eth0 mtu 9000 |
| IP地址管理 | 添加IP地址 | ifconfig eth0 192.168.1.10 netmask 255.255.255.0 | ip addr add 192.168.1.10/24 dev eth0 |
|
| 删除IP地址 | ifconfig eth0 0.0.0.0 | ip addr del 192.168.1.10/24 dev eth0 |
|
| 添加多个IP | ifconfig eth0:0 192.168.1.11 | ip addr add 192.168.1.11/24 dev eth0 label eth0:0 |
| 路由管理 | 查看路由表 | route -n 或 netstat -rn | ip route show 或 ip r |
|
| 添加路由 | route add -net 10.0.0.0/24 gw 192.168.1.1 | ip route add 10.0.0.0/24 via 192.168.1.1 |
|
| 添加默认网关 | route add default gw 192.168.1.1 | ip route add default via 192.168.1.1 |
|
| 删除路由 | route del -net 10.0.0.0/24 | ip route del 10.0.0.0/24 |
| 邻居/ARP | 查看ARP表 | arp -an | ip neigh show 或 ip n |
|
| 添加静态ARP | arp -s 192.168.1.10 00:11:22:33:44:55 | ip neigh add 192.168.1.10 lladdr 00:11:22:33:44:55 dev eth0 |
|
| 删除ARP条目 | arp -d 192.168.1.10 | ip neigh del 192.168.1.10 dev eth0 |
| 连接统计 | 查看监听端口 | netstat -tulpn | ss -tulpn |
|
| 查看所有连接 | netstat -an | ss -an |
|
| 按协议查看 | netstat -t (TCP) | ss -t (TCP) |
| 高级功能 | 查看网桥 | brctl show | bridge link show 或 ip link show type bridge |
|
| VLAN配置 | vconfig add eth0 10 | ip link add link eth0 name eth0.10 type vlan id 10 |
|
| 隧道配置 | 需单独工具 | ip tunnel add |
|
| 网络命名空间 | 不支持 | ip netns add ns1 |
|
| 策略路由 | 不支持 | ip rule add |
net-tools 和 iproute2 工具集-性能与特性对比表
| 对比维度 | net-tools | iproute2 | 优势分析 |
| 开发状态 | 已停止更新 (2011年后无重大更新) | 持续活跃开发 | iproute2 支持新内核特性 |
| 数据来源 | 读取 /proc/net/ 文件系统 | 通过 netlink 套接字直接与内核通信 | iproute2 实时性更好,无缓存延迟 |
| 命令执行速度 | 较慢,尤其在大连接数时 | 极快,直接内核交互 | ss 比 netstat 快 5-10 倍 |
| 输出信息量 | 基础信息 | 详细信息(状态、qdisc、有效期等) | iproute2 显示更多调试信息 |
| 语法一致性 | 各命令语法不同 | 统一 ip OBJECT COMMAND 语法 | iproute2 更易学习和记忆 |
| CIDR支持 | 需要计算掩码 | 原生支持 CIDR 表示法 | ip addr add 192.168.1.1/24 更简洁 |
| IPv6支持 | 有限支持,命令分散 | 完整原生支持 | iproute2 IPv4/IPv6 命令一致 |
| 网络命名空间 | 不支持 | 完整支持 (ip netns) | 容器化、虚拟化必需 |
| 策略路由 | 不支持或需复杂配置 | 原生支持 (ip rule, ip route) | 复杂网络环境必需 |
| 流量控制(QoS) | 需要单独 tc 命令 | 集成在 iproute2 包中 | 统一网络管理 |
| 隧道协议 | 需要各种专用工具 | 内置支持 (VXLAN, GRE, IPIP等) | ip link add type vxlan |
| 多播支持 | 有限 | 完整 (ip maddr, ip mroute) | 适合流媒体等应用 |
| 批量操作 | 不支持 | 支持批量配置 | 适合自动化脚本 |
net-tools 和 iproute2 工具集- 命令迁移速查表(常用转换)
| 你想做什么? | 旧方法 (net-tools) | 新方法 (iproute2) |
| 查看IP地址 | ifconfig | ip addr show |
| 启用网卡 | ifconfig eth0 up | ip link set eth0 up |
| 添加IP | ifconfig eth0 10.0.0.1 netmask 255.255.255.0 | ip addr add 10.0.0.1/24 dev eth0 |
| 查看路由 | route -n | ip route show |
| 添加网关 | route add default gw 192.168.1.1 | ip route add default via 192.168.1.1 |
| 查看ARP | arp -an | ip neigh show |
| 查看端口 | netstat -tulpn | ss -tulpn |
| 查看连接 | netstat -an | ss -an |
| 查看统计 | ifconfig eth0 | ip -s link show eth0 |





