开发者
资源
从 “开机” 到 “好用”:openEuler 基础配置 + 服务管理全指南
从 “开机” 到 “好用”:openEuler 基础配置 + 服务管理全指南
发表于2025/11/28
1690

从 “开机” 到 “好用”:openEuler 基础配置 + 服务管理全指南

作为国产开源操作系统的标杆,openEuler 凭借原生适配鲲鹏 / 飞腾架构、高稳定性与安全特性,已广泛应用于政企服务器、边缘节点等场景。对新手而言,“基础配置 + 服务管理” 是打通系统使用的核心环节 —— 网络不通则无法远程运维,权限混乱易引发安全风险,服务配置不当会导致应用启停异常。本文将以 “实操步骤 + 场景化说明 + 排障技巧” 为核心,带你完成 openEuler 从 “能启动” 到 “可运维” 的完整落地,尤其聚焦服务管理的核心操作。

一、网络配置:远程管理与服务通信的前提

网络是 openEuler 对外交互的基础,静态 IP 配置是服务器场景的必备操作(动态 IP 会随重启变化,无法稳定提供服务)。

1. 识别网卡与当前网络状态

登录系统后,执行以下命令查看网卡信息:

bash

运行

ip a  # 查看网卡列表与IP地址
nmcli device status  # 查看网卡状态(UP=启用,DOWN=禁用)

虚拟机常见网卡名为ens33,物理机可能为eth0或enp0s3,记录网卡名用于后续配置。

2. 静态 IP 与 DNS 配置

编辑网卡配置文件(路径需替换为实际网卡名):

bash

运行

vi /etc/sysconfig/network-scripts/ifcfg-ens33

修改或添加以下关键参数(示例为 192.168.1 网段配置):

bash

运行

BOOTPROTO=static  # 启用静态IP(默认dhcp动态分配)
ONBOOT=yes        # 开机自动启用网卡(必配,否则重启失效)
DEFROUTE=yes      # 设为默认路由
IPADDR=192.168.1.100  # 自定义静态IP(需与网关同网段)
NETMASK=255.255.255.0  # 子网掩码
GATEWAY=192.168.1.1    # 网关地址(与路由器/宿主机一致)
DNS1=114.114.114.114   # 国内通用DNS(避免域名解析失败)
DNS2=223.5.5.5         # 备用DNS(提高解析稳定性)

3. 生效与连通性验证

保存文件后,重启网络服务:

bash

运行

systemctl restart NetworkManager

执行以下命令验证网络:

  • ping 192.168.1.1:测试网关连通性(通则内网正常)
  • ping www.baidu.com:测试外网与 DNS 解析(通则可访问互联网)

排障技巧

  • 无网络:检查配置文件拼写错误(如GATEWAY误写为GATWAY)、ONBOOT=yes是否启用;
  • 能 ping 内网不能 ping 外网:DNS 配置错误,核对DNS1/DNS2参数;
  • 远程 SSH 连接失败:临时关闭防火墙测试(systemctl stop firewalld),排除端口拦截。

二、用户与权限管理:安全运维的核心

直接使用 root 用户操作风险极高(误删系统文件、恶意操作等),合理配置用户与权限是 openEuler 运维的基础准则。

1. 基础用户 / 用户组操作

bash

运行

# 创建带家目录的用户(-m自动创建/home/syj目录)
useradd -m syj
# 设置用户密码(需包含字母、数字、特殊字符,符合安全策略)
passwd syj
# 创建项目用户组(按业务分类管理权限)
groupadd dev-team
# 将用户加入组(方便按组分配文件/服务权限)
gpasswd -a syj dev-team
# 查看用户所属组(验证配置)
groups syj
# 删除用户(-r同时删除家目录,避免残留)
userdel -r syj

2. 精细化 sudo 权限配置

sudo可让普通用户临时获取管理员权限,但需避免 “全命令权限”。执行visudo(自带语法检查,避免配置错误),添加以下配置:

bash

运行

# 允许syj用户执行yum安装、nginx服务管理命令(无密码)
syj ALL=(root) NOPASSWD: /usr/bin/yum, /usr/bin/systemctl restart nginx, /usr/bin/systemctl status nginx
  • NOPASSWD::可选参数,避免每次执行 sudo 输入密码;
  • 仅授权必要命令:禁止授予rm、shutdown等高危命令权限。

排障技巧

  • sudo 提示 “不在 sudoers 文件中”:未正确添加上述配置,重新执行visudo检查;
  • sudo 提示 “权限被拒绝”:命令路径错误(需写绝对路径,如/usr/bin/yum而非yum)。

三、系统信息探查:摸清硬件与系统 “底盘”

了解系统资源与版本信息,是后续部署服务、排查资源瓶颈的前提,核心命令如下:

命令核心用途
lscpu查看 CPU 架构(x86/ARM)、核数、主频 —— 部署服务需匹配 CPU 性能(如高并发服务需多核)
free -h查看内存使用(-h 优化单位显示)—— 部署 Java 服务时,堆内存需小于可用内存
fdisk -l查看磁盘分区与空间 —— 避免服务日志 / 数据占满磁盘
cat /etc/os-release查看系统版本 —— 不同版本软件源、命令可能存在差异(如 openEuler 22.03 vs 20.03)
df -h查看磁盘挂载点与使用率 —— 重点关注 /、/var(服务日志常用目录)

补充:中文环境切换

若系统默认英文,执行以下步骤切换中文:

bash

运行

# 安装中文语言包
dnf install glibc-langpack-zh -y
# 设置默认语言
localectl set-locale LANG=zh_CN.UTF-8
# 刷新配置(或重新登录终端)
source /etc/locale.conf

四、服务管理:openEuler 核心运维技能(重点)

openEuler 基于 systemd 管理服务(替代传统 init),所有系统服务、第三方应用(如 Nginx、MySQL)均通过systemctl命令操作,是运维必备技能。

1. 基础服务操作(核心命令)

以 Nginx 服务为例,演示服务全生命周期管理:

bash

运行

# 1. 安装Nginx(先配置epel源,openEuler默认源无Nginx)
dnf install epel-release -y && dnf install nginx -y

# 2. 服务基础操作
systemctl start nginx        # 启动服务
systemctl stop nginx         # 停止服务
systemctl restart nginx      # 重启服务(配置变更后使用)
systemctl reload nginx       # 重载配置(不中断服务,推荐优先使用)
systemctl status nginx       # 查看服务状态(running=正常,failed=异常)

2. 服务自启配置(关键!避免重启后服务失效)

bash

运行

# 设置服务开机自启(服务器场景必备)
systemctl enable nginx
# 取消开机自启
systemctl disable nginx
# 查看服务自启状态(enabled=已启用,disabled=未启用)
systemctl is-enabled nginx

3. 自定义服务示例(进阶实操)

若需将自定义脚本(如数据备份脚本)作为服务管理,可创建 systemd 单元文件:

bash

运行

# 1. 创建备份脚本(/opt/backup.sh)
vi /opt/backup.sh
# 脚本内容(备份/var/log目录到/backup)
#!/bin/bash
mkdir -p /backup
cp -r /var/log/* /backup/$(date +%Y%m%d)

# 2. 给脚本执行权限
chmod +x /opt/backup.sh

# 3. 创建systemd单元文件(/etc/systemd/system/backup.service)
vi /etc/systemd/system/backup.service
# 文件内容
[Unit]
Description=Daily Log Backup Service  # 服务描述
After=network.target                  # 网络就绪后启动

[Service]
Type=oneshot                          # 一次性任务(非常驻服务)
ExecStart=/opt/backup.sh              # 执行脚本路径

[Install]
WantedBy=multi-user.target            # 多用户模式下生效

# 4. 重载systemd配置(识别新服务)
systemctl daemon-reload
# 5. 测试服务
systemctl start backup.service
# 6. 查看服务日志(验证执行结果)
journalctl -u backup.service

4.服务日志与排障

bash

运行

# 查看服务实时日志(-f实时刷新,-u指定服务名)
journalctl -u nginx -f
# 查看服务历史日志(按时间排序,-n显示最近10行)
journalctl -u nginx -n 10 --no-pager
# 排查服务启动失败(重点看“failed”关键词)
systemctl status nginx  # 查看失败原因
journalctl -u nginx     # 查看详细日志

排障技巧

  • 服务启动失败(status 显示 failed):查看日志(journalctl),常见原因:配置文件错误、端口被占用(netstat -tulpn | grep 80)、依赖服务未启动(如 MySQL 依赖网络);
  • 服务自启失效:未执行systemctl enable,或单元文件配置错误(如WantedBy参数错误)。

五、时间同步与环境优化:提升运维体验

1. 时间同步(避免服务日志 / 证书混乱)

系统时间错误会导致服务日志时间错乱、SSL 证书验证失败,推荐用timedatectl管理:

bash

运行

# 查看当前时间与时区
timedatectl
# 设置时区为上海(默认可能为UTC)
timedatectl set-timezone Asia/Shanghai
# 开启网络时间同步(自动同步NTP服务器)
timedatectl set-ntp yes

若网络同步失败,手动同步国内 NTP 服务器:

bash

运行

dnf install ntpdate -y
ntpdate ntp.aliyun.com  # 同步阿里云NTP服务器

2. 解决 SSH 超时退出(优化远程运维体验)

默认 SSH 闲置 10 分钟后自动退出,修改以下配置永久生效:

bash

运行

vi /etc/ssh/sshd_config
# 添加/修改以下参数
ClientAliveInterval 60  # 每60秒向客户端发送心跳
ClientAliveCountMax 3   # 3次心跳无响应则断开(可调整)
# 重启SSH服务
systemctl restart sshd

六、常见坑点与排障总结

  1. 网络配置后无响应:忘记设置ONBOOT=yes,重启后网卡未启用;
  2. 服务启动失败:配置文件语法错误(如 Nginx 配置漏写分号),通过journalctl -u 服务名查看详细日志;
  3. sudo 权限失效:visudo配置时命令路径错误,需用which 命令查看绝对路径(如which yum);
  4. 中文乱码:未安装中文语言包,执行dnf install glibc-langpack-zh;
  5. 服务自启失败:未执行systemctl enable,或服务依赖的资源(如磁盘、网络)未就绪。

openEuler 的基础配置与服务管理,是 “用好国产操作系统” 的核心基石 —— 稳定的网络保障服务通信,合理的权限保障系统安全,规范的服务管理保障应用可用性。掌握本文内容后,你可以进一步学习 openEuler 的软件源配置、防火墙管理、容器化部署等进阶技能,充分发挥其在政企场景的稳定性与兼容性优势。

收藏举报
Level 1
0
帖子
0
粉丝
0
获赞