openEuler 20.03 LTS SP3 服务器部署实战:从零到生产环境

📅 发布时间:2026/7/7 14:15:41 👁️ 浏览次数:
openEuler 20.03 LTS SP3 服务器部署实战:从零到生产环境
1. 从零开始为什么选择 openEuler 20.03 LTS SP3如果你正准备为一台全新的服务器部署操作系统面对市面上众多的发行版可能会有点眼花缭乱。是选老牌的 CentOS还是拥抱 Ubuntu今天我想和你聊聊另一个非常扎实的选择openEuler 20.03 LTS SP3。我自己在最近的一个Web应用项目中就把它作为了生产环境的基础跑下来感觉非常稳。简单来说openEuler 是一个由国内社区主导、开放源代码的企业级Linux发行版它脱胎于成熟的Linux内核技术特别针对服务器、云计算和边缘计算场景做了大量优化。而 20.03 LTS SP3 这个版本你可以把它理解为一个“长期支持版”的“第三次服务包”意味着它经过了长时间的测试和多次的补丁更新在稳定性和安全性上更有保障特别适合那些要求7x24小时不间断运行的生产系统。我第一次接触 openEuler 也是抱着试试看的心态。当时的需求很明确需要一个稳定、安全、有长期维护承诺并且社区活跃的操作系统作为新项目的基石。CentOS Stream 的转向让很多运维朋友心里打鼓而 openEuler 的 LTS长期支持承诺和清晰的发布周期让我决定深入了解一下。实际用下来我发现它有几个很打动我的点。首先它的软件仓库非常丰富主流的服务器软件和开发工具都能通过 DNF 包管理器轻松安装和 CentOS/RHEL 系的操作习惯几乎无缝衔接这对我们这些老运维来说学习成本极低。其次它在性能和安全增强方面做了不少工作比如集成了一些内核调优补丁和增强的安全模块开箱即用性很好。最后也是很重要的一点它的社区在国内非常活跃遇到问题时无论是查官方文档还是在社区论坛提问都能比较快地得到响应这对于企业级应用来说是个不小的加分项。那么谁适合看这篇实战指南呢无论你是一名需要搭建新环境的系统管理员还是一个想为自己项目寻找可靠后端系统的开发者或者是一个对国产化技术栈感兴趣的技术爱好者这篇文章都会带你走完从一块空白硬盘到一台可以投入生产的服务器的完整旅程。我们会涵盖硬件检查、镜像制作、系统安装、网络配置、安全加固等每一个关键步骤并且我会分享我在实际部署中踩过的坑和总结的最佳实践。我们的目标不是简单地复刻官方文档而是让你能真正理解每一步背后的“为什么”从而在面对你自己的服务器时能够从容应对做出最适合自己业务场景的决策。2. 磨刀不误砍柴工部署前的精细准备在真正动手安装系统之前充分的准备工作能帮你避开至少80%的麻烦。我记得有一次因为急着上线跳过了硬件兼容性检查结果安装过程中驱动问题折腾了大半天。所以咱们第一步就是把“刀”磨快。### 2.1 硬件清单与兼容性确认虽然 openEuler 对硬件的要求比较友好但为了生产环境的稳定我建议你对照下面的清单仔细过一遍。这不仅仅是满足最低要求更是为了未来两三年的业务增长留足余量。CPU支持 x86_64 或 AArch64 (ARM) 架构。现在主流的服务器CPU都没问题。我个人建议至少配置4核这对于运行Web应用服务器如Nginx、数据库如MySQL和中间件来说能提供一个更从容的处理能力基础。你可以通过服务器的管理界面如 iDRAC、iLO或开机自检信息确认CPU型号和架构。内存官方最低要求是8GB但对于生产环境16GB是起步线。如果你的应用包含Java服务、内存缓存如Redis那么32GB或更多会更稳妥。计算内存时别忘了给操作系统本身预留一部分通常2-4GB。存储这是最容易出性能瓶颈的地方。50GB的可用空间是最低要求仅够安装基本系统。我强烈建议使用固态硬盘SSD并且规划至少200GB以上的空间。这包括了系统分区、应用日志、数据库文件以及未来系统更新的预留空间。如果条件允许采用RAID阵列如RAID 1或RAID 10来提供数据冗余是生产环境的标配。网络至少需要一个千兆以太网口。现在很多服务器都标配双口甚至四口网卡这为网络绑定bonding提供了可能可以提升带宽和可靠性。请务必准备好你的网络规划信息服务器是使用动态获取IPDHCP还是需要配置静态IP网关和DNS服务器地址是什么这些信息在安装过程中就会用到。### 2.2 获取与验证安装镜像准备好硬件接下来就是获取系统“安装盘”。你需要下载 openEuler 20.03 LTS SP3 的ISO镜像文件。前往官方源最可靠的下载地址是 openEuler 的官方网站或其授权的镜像站。直接搜索“openEuler 开源社区”就能找到官网。在下载页面根据你的服务器CPU架构选择x86_64或aarch64的ISO文件。我这次用的是openEuler-20.03-LTS-SP3-x86_64-dvd.iso这个完整版镜像。务必进行校验下载完成后这一步千万不能省官网通常会提供镜像的 SHA256 校验和。你需要计算你下载文件的校验和并与官网提供的进行比对确保文件在下载过程中没有损坏或被篡改。在Linux或macOS下可以在终端使用sha256sum openEuler-20.03-LTS-SP3-x86_64-dvd.iso命令在Windows下可以使用一些第三方工具如certutil命令或HashCalc软件。校验失败的文件绝对不能使用。### 2.3 制作可启动的安装介质有了ISO文件我们需要把它“烧录”到一个U盘或者刻录成光盘让服务器能从它启动。现在U盘是最方便的方式。在Windows下制作我常用的是Rufus这个小工具它免费且可靠。插入一个至少8GB的U盘注意制作过程会清空U盘所有数据请提前备份。打开Rufus在“设备”中选择你的U盘在“引导类型选择”处点击“选择”找到你下载的 openEuler ISO 文件。其他选项通常保持默认分区类型为GPT目标系统类型为UEFI或BIOS这取决于你的服务器固件类型然后点击“开始”即可。Rufus 会自动处理一切。在Linux/macOS下制作这更简单使用dd命令即可但需要格外小心因为一旦选错目标磁盘可能会清空你的系统盘。首先用lsblk或diskutil list(macOS) 命令确认你的U盘设备标识比如是/dev/sdb注意不是/dev/sdb1这样的分区。确保U盘没有挂载然后执行命令sudo dd if./openEuler-20.03-LTS-SP3-x86_64-dvd.iso of/dev/sdb bs4M statusprogress sync。这个命令会将ISO内容逐块写入U盘bs4M指定了块大小statusprogress可以显示进度最后的sync确保所有数据都写入完毕。命令执行期间请耐心等待不要拔插U盘。3. 手把手安装图形化安装器详解制作好启动盘我们就可以进入正式的安装环节了。把U盘插入服务器开机并进入BIOS/UEFI设置界面通常是按F2、F10、F12或Del键具体看服务器品牌提示。### 3.1 引导与启动设置在BIOS/UEFI设置中找到“启动顺序”Boot Order或“启动选项”Boot Options。将你的U盘可能显示为USB Hard Disk或U盘品牌名调整到第一启动项。保存设置并退出服务器会自动重启并从U盘引导。你会看到 openEuler 的 GRUB 引导菜单直接选择第一项“Install openEuler 20.03-LTS-SP3”并按回车图形化安装界面就会加载出来。这个安装器是基于Anaconda的如果你用过CentOS或Fedora会感到非常熟悉。### 3.2 语言、时区与键盘布局安装器首先会让你选择语言。这里的选择会影响安装过程界面的语言和系统安装后的默认语言环境。为了方便我通常选择“中文简体”但如果你希望系统环境是英文也可以在这里选“English”。点击“继续”后进入“本地化”设置。这里需要重点关注两个地方时区对于服务器设置正确的时区至关重要这关系到日志时间戳、定时任务cron的执行等。在地图上点击亚洲区域然后选择“上海”代表东八区或者直接在搜索框输入“Shanghai”。你会发现下面的“城市”区域自动变成了Asia/Shanghai。我强烈建议在生产服务器上使用UTC时间并在应用层处理时区转换但将系统时区设置为实际所在地在排查问题时会更直观。键盘布局保持默认的“汉语”或“English (US)”即可。### 3.3 磁盘分区自动与手动的抉择这是安装过程中最关键也最容易让人纠结的一步。安装器会显示“安装目的地”也就是让你选择在哪个磁盘上安装系统。自动分区推荐给新手或标准场景如果你对Linux分区没有特殊要求或者这是一台用于标准Web服务的服务器直接选择你要安装的硬盘比如/dev/sda然后在“存储配置”下选择“自动配置分区”点击“完成”即可。安装器会为你创建一个合理的分区方案通常包括/boot、/根分区和swap交换分区。这种方式最省心适合绝大多数情况。手动分区适用于有明确规划的生产环境对于重要的生产服务器我倾向于手动分区这样可以更精细地控制空间分配和性能。点击“我要配置分区”然后选择“完成”会进入手动分区界面。点击“”号来创建挂载点。一个典型的生产服务器分区方案可以参考下表挂载点建议大小文件系统类型说明/boot1 GiBxfs 或 ext4存放系统内核和引导文件。1GB足够。/boot/efi200 MiBEFI系统分区仅UEFI启动模式需要。存放UEFI引导程序。/50-100 GiBxfs根目录存放系统核心文件和程序。/home视情况xfs用户家目录。如果服务器有多个用户可以单独划分。/var20-50 GiBxfs存放经常变化的文件如日志、缓存、数据库文件。单独分区可避免日志爆满导致根分区瘫痪。/opt视情况xfs存放第三方大型应用如自定义安装的软件。swap物理内存的1-2倍swap交换空间。如果内存很大如64GB以上4-8GB即可。注意文件系统我通常选择XFS它在处理大文件和高并发方面表现很好是 openEuler/RHEL 系的默认推荐。ext4 也是一个成熟稳定的选择。分区完成后务必在“完成”前检查一下“根密码”和“用户创建”这两个部分是否已经变蓝表示已设置否则安装无法继续。### 3.4 网络、主机名与安全配置在“网络和主机名”设置里你可以看到检测到的网卡如ens192或eth0。默认情况下网卡是关闭的。点击右侧的开关将其打开如果网络中有DHCP服务器它会自动获取IP地址。但对于生产服务器我100%推荐配置静态IP避免IP变动导致的服务中断。点击“配置”选择“IPv4设置”方法改为“手动”点击“添加”按钮依次填入地址、子网掩码或前缀如24、网关。在DNS服务器栏填入你的DNS例如114.114.114.114和8.8.8.8。同时在“主机名”框里为你的服务器起个名字比如web-server-01。接下来是重中之重设置root密码和创建用户。在“Root密码”处设置一个足够复杂的密码。然后务必在“用户创建”部分创建一个日常使用的普通用户如admin或你的名字并赋予它管理员权限勾选“将此用户设为管理员”。这是一个非常重要的安全实践避免直接使用root用户进行日常操作减少误操作风险。用普通用户登录需要特权命令时再通过sudo来执行。### 3.5 软件包选择与安装启动在“软件选择”界面你会看到几个预置的环境。对于纯粹的服务器选择“最小安装”或“服务器”就足够了。“最小安装”只带最基本的系统工具非常干净“服务器”会包含一些常用的服务器管理工具。我一般选“服务器”然后可以在安装后按需添加软件包。如果你确定需要图形界面来管理虽然生产服务器不推荐可以选择“带GUI的服务器”。所有配置检查无误后点击右下角的“开始安装”按钮。安装程序会格式化磁盘、复制文件、安装软件包。这个过程大概需要10到20分钟取决于你的硬盘速度和所选软件包数量。安装完成后点击“重启系统”并记得在重启过程中拔掉U盘否则可能会再次进入安装界面。4. 首次启动与生产环境基础配置服务器重启后你会看到基于文本的登录界面如果你没装图形界面。用刚才创建的普通用户和密码登录。登录成功后我们先不急着部署应用而是要把系统的基础打牢。### 4.1 系统更新与基础工具安装第一件事更新系统。这能确保你安装的所有软件都是最新的安全版本。由于我们刚创建的用户有sudo权限在命令前加sudo即可执行特权命令。sudo dnf update -y这个命令会刷新软件仓库元数据并升级所有可更新的软件包。-y参数表示自动确认在脚本中很常用手动执行时你也可以不加看看都会更新些什么。更新完成后建议重启一下系统以确保所有更新特别是内核更新能完全生效sudo reboot。重启登录后安装一些必备的“瑞士军刀”式工具它们会让你后续的管理工作轻松很多。sudo dnf install -y vim wget curl net-tools bash-completionvim一个强大的文本编辑器比默认的vi更好用。wgetcurl命令行下载工具用于从网络获取文件或与API交互。net-tools包含ifconfig、netstat等传统网络诊断工具虽然现在推荐用ip命令但备着它们兼容老习惯。bash-completion为bash shell提供命令自动补全功能输入命令时按Tab键会非常爽。### 4.2 网络静态IP的固化配置安装时配置的静态IP可能在重启后生效但为了永久固化我们需要修改网络配置文件。openEuler 默认使用 NetworkManager但网络配置文件风格与传统ifcfg文件兼容。我们先确认网卡名称ip addr show假设网卡名是ens192。我们编辑其配置文件sudo vim /etc/sysconfig/network-scripts/ifcfg-ens192确保文件内容类似下面这样根据你的实际网络修改TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOnone # 静态IP所以是none DEFROUTEyes IPV4_FAILURE_FATALno IPV6INITyes IPV6_AUTOCONFyes IPV6_DEFROUTEyes IPV6_FAILURE_FATALno IPV6_ADDR_GEN_MODEstable-privacy NAMEens192 DEVICEens192 ONBOOTyes # 开机自启 IPADDR192.168.1.100 # 你的静态IP PREFIX24 # 子网掩码24代表255.255.255.0 GATEWAY192.168.1.1 # 你的网关 DNS1114.114.114.114 # 主DNS DNS28.8.8.8 # 备DNS保存退出后重启网络服务使配置生效sudo systemctl restart NetworkManager然后用ip addr show ens192和ping -c 4 114.114.114.114来测试网络是否通畅。### 4.3 防火墙策略安全的第一道门生产服务器必须开启防火墙。openEuler 默认使用firewalld它比传统的iptables配置更友好。我们先查看防火墙状态和默认区域sudo systemctl status firewalld # 查看状态确保是active (running) sudo firewall-cmd --state # 确认运行状态 sudo firewall-cmd --get-default-zone # 查看默认区域通常是public假设我们的服务器需要提供SSH22端口、HTTP80端口、HTTPS443端口服务。我们将这些服务添加到防火墙的永久规则中并重载配置# 添加服务到默认区域永久生效 sudo firewall-cmd --permanent --add-servicessh sudo firewall-cmd --permanent --add-servicehttp sudo firewall-cmd --permanent --add-servicehttps # 如果你知道需要开放特定端口也可以用 --add-port # sudo firewall-cmd --permanent --add-port8080/tcp # 重载防火墙配置使永久规则立即生效 sudo firewall-cmd --reload # 查看当前活动的规则 sudo firewall-cmd --list-all这样只有我们明确允许的服务才能被外部访问其他所有入站连接都会被拒绝极大地提升了系统安全性。### 4.4 SSH安全加固与时间同步默认的SSH配置可以工作但不够安全。我们编辑SSH服务器配置文件sudo vim /etc/ssh/sshd_config我通常会修改以下几项Port 2222 # 将默认的22端口改为一个非标准端口减少自动化攻击扫描 PermitRootLogin no # 禁止root用户直接通过SSH登录强制使用普通用户sudo PasswordAuthentication no # 禁用密码登录强制使用密钥对认证前提是你已经配置了公钥 PubkeyAuthentication yes # 启用公钥认证重要提示在将PasswordAuthentication设为no之前必须先将你的SSH公钥添加到服务器的~/.ssh/authorized_keys文件中并测试用密钥可以登录。否则你会把自己锁在服务器外面修改后重启SSH服务sudo systemctl restart sshd。务必保留当前登录会话并新开一个终端用新配置连接测试确认成功后再关闭原会话。最后配置可靠的时间同步。服务器时间不准会导致日志混乱、证书验证失败等问题。使用chronyd服务同步时间sudo systemctl enable chronyd --now # 启用并立即启动 sudo chronyc sources -v # 查看时间源状态 timedatectl status # 查看时间同步状态做到这里你的 openEuler 服务器就已经拥有了一个非常扎实的基础系统是最新的网络是稳定的访问是受控的身份验证是强化的时间也是准确的。这为后续部署数据库、Web服务器等应用打下了坚实可靠的基础。我记得有一次跳过了SSH加固结果几天后就在日志里看到了大量的暴力破解尝试从那以后这几步就成了我新服务器上线必做的规定动作。