长期支持版本

    社区创新版本

      x2openEuler升级失败-救援模式

      现象描述

      升级完成后,无法进入操作系统且无法通过回退方式恢复源操作系统,可通过使用ISO镜像光驱进入救援模式进行系统救援。

      处理步骤

      此处以x86_64系统为例。

      1. 获取标准ISO发布镜像。(例如 openEuler-20.03-LTS-SP1-everthing-x86_64-dvd.iso

      2. 光驱挂载ISO镜像并重启机器通过光驱引导。

      3. 在光驱的GRUB菜单界面中进入“系统救援”,具体操作如下:

        • UEFI启动模式

          1. 选择“Troubleshooting”

            图 1 UEFI grub菜单

          2. 选择“rescue”

            图 2 选择恢复模式

        • Legacy启动模式

          1. 选择“Troubleshooting”

            图 3 Legacy grub菜单

          2. 选择“rescue”

            图 4 选择恢复模式

      4. 进入“救援模式”后,按下数字键“1”选择“Continue”。

        图 5 救援模式

        按下回车键后,进入“Rescue Shell”

        图 6 Rescue Shell

      5. 执行以下命令检查当前环境是否存在x2openEuler-upgrade 软件包,若存在则跳转至7

        find / -name x2openEuler-upgrade
        

        图 7 检查x2openEuler-upgrade 软件包

      6. 为当前环境配置可用的ip地址。

        图 8 配置可用ip地址

      7. 执行以下命令,开启SSH服务,上传x2openEuler-upgrade软件包至“/root”目录下。

        mv /etc/ssh/sshd_config.anaconda /etc/ssh/sshd_config
        systemctl restart sshd
        scp root@xxx.xxx.xxx.xxx:/xxx/x2oepnEuler-upgrade* /root/ 
        

        图 9 启动SSH服务

        图 10 上传x2openEuler工具安装包至/root目录下

      8. 执行以下命令解压安装包获取x2openEuler-upgrade软件包并进行安装。

        ln -s /usr/bin/python3 /usr/bin/python
        rpm -ivh /root/x2openEuler-upgrade-* --nodeps
        source /root/.bashrc
        

        图 11 安装x2openEuler-upgrade软件包

      9. 执行以下命令,修改x2openEuler-upgrade配置文件,不对“/run/install”进行回滚。

        vim /mnt/sysroot/etc/sut/sut.conf 
        

        图 12 修改x2openEuler-upgrade配置文件

      10. 执行以下命令,进行系统救援。

        x2openEuler rescue -p /mnt/sysroot/
        

        图 13 系统救援

      11. 系统救援完成后,执行以下命令重启系统。

        reboot
        

        说明: 系统重启之后,SELinux会进行relabel动作,物理机可能耗时较长。relabel动作触发完成后,系统会自动进行重启,此时才真正回退至最初的源操作系统。

      12. 执行以下命令进行系统救援结果验证。

        cat /etc/os-release
        

        图 14 验证结果

        说明:

        • 救援完成后,可执行源操作系统命令进行验证。
        • 可根据业务需求,执行业务恢复或适配脚本。

      升级后部分命令无法执行

      现象描述

      升级完成后,目标操作系统部分命令无法正常执行,报错原因为“找不到符号链接”。

      可能原因

      升级前配置了高版本的动态依赖库,升级后会出现系统冲突。

      处理步骤

      排查“/etc/ld.so.conf.d”目录下是存在和系统目录下的so文件冲突的配置。

      升级失败-DNF升级报错

      现象描述

      升级失败,排查日志为DNF软件升级报错。

      可能原因

      查看repo源配置,检查升级软件数量。正常情况下,90%的软件包都可以升级,若升级数量较低需要检查配置的repo源是否正确,是否存在配置repo源不完全的情况。

      处理步骤

      完整配置 everything、epol和update源。

      升级过程漫长

      现象描述

      源操作系统升级至目标操作系统过程耗费时间过长。

      可能原因

      固定备份目录下存在大文件。

      处理步骤
      1. 执行以下命令查看升级节点的文件系统,查看固定备份目录下是否存在大文件。

        df -h
        
      2. 如有需要将对应目录填写在排查目录中。

      升级前检查grub2版本不满足要求

      现象描述

      升级前检查报告grub2版本不满足要求。

      处理步骤

      若升级的目标系统为“openEuler-20.03-LTS-SP1”,需要挂载update源。

      升级前检查报错

      现象描述

      升级前检查报错,回显信息如下:

      Abnormal exit,error:/etc/x2openEuler/database_2.0.0.630/centos7.4/x86_64/primary not exist
      
      处理步骤
      1. 访问OEPKGS,根据报错回显信息,获取对应版本数据包,例如“缺少CentOS 7.4 的数据库包需要安装x2openEuler-database-centos7.4-2.0.0.630-1.noarch.rpm,x2openEuler-database-centos7.4-openEuler20.03-LTS-SP1-2.0.0.630-1.noarch.rpm”。

      2. 上传获取的数据包至部署x2openEuler工具的环境,并使用SSH远程登录工具登录。

      3. 进入执行以下命令进行安装,此处以安装CentOS 7.4 对应版本数据包为例。

        rpm -ivh x2openEuler-database-centos7.4-2.0.0.630-1.noarch.rpm
        rpm -ivh x2openEuler-database-centos7.4-openEuler20.03-LTS-SP1-2.0.0.630-1.noarch.rpm
        
      4. 进入升级任务,重新开始升级前检查。

      QEMU相关问题处理

      现象描述1

      安装了qemu-kvm软件,在操作系统升级之后,发现软件被卸载。

      处理步骤

      执行以下命令安装qemu软件后,再次启动虚拟机。

      yum install qemu
      
      现象描述2

      系统升级后安装qemu,启动虚拟机报错如下:

      Process exited prior to exec: libvirt: QEMU Driver error : Unable to get devmapper targets for /data1/var/lib/scevm/instances/xxxxxxx/disk.qcow2: Success
      
      处理步骤

      由于主机没有加载dm_mod.ko导致,可以通过modprobe dm_mod来解决该异常,执行如下命令:

      modprobe dm_mod
      
      现象描述3

      升级完成后虚拟机启动提示machine不匹配相关异常。

      处理步骤

      由于升级后machine不匹配,首先执行以下命令查询openEuler支持的machine类型。

      qemu-kvm -machine help
      

      之后执行以下命令修改对应虚拟机的machine参数为openEuler支持的类型,并再次启动虚拟机。

      virsh edit
      

      工具Web服务启动失败,提示MariaDB is not installed.

      现象描述

      在安装x2openEuler工具之前已通过编译安装的方式安装了MariaDB。x2openEuler工具安装完成后启动工具web服务时,返回如下信息。 图 15 启动web服务回显信息

      可能原因

      x2openEuler工具不能通过mysql.sock连接到MariaDB。

      处理步骤
      1. 执行以下命令查询MariaDB进程的PID。

        ps -ef | grep mariadb
        

        获取到mariadb的PID后执行以下命令终止进程。

        kill -9 PID
        
      2. 注释“/etc/my.cnf”中socket参数。

        1. 执行以下命令编辑my.cnf文件,按下“i”进入编辑模式。
          vi /etc/my.cnf
          
        2. 注释“[mysqld]”字段下的socket参数。
          # socket=/var/lib/mysql/mysql.sock
          
        3. 按“ESC”,输入“:wq”,按“Enter”保存并退出。
      3. 执行以下命令重启MariaDB服务。

        systemctl start mariadb.service
        
      4. 重新启动x2openEuler工具web服务。

      文档捉虫

      “有虫”文档片段

      问题描述

      提交类型 issue

      有点复杂...

      找人问问吧。

      PR

      小问题,全程线上修改...

      一键搞定!

      问题类型
      规范和低错类

      ● 错别字或拼写错误;标点符号使用错误;

      ● 链接错误、空单元格、格式错误;

      ● 英文中包含中文字符;

      ● 界面和描述不一致,但不影响操作;

      ● 表述不通顺,但不影响理解;

      ● 版本号不匹配:如软件包名称、界面版本号;

      易用性

      ● 关键步骤错误或缺失,无法指导用户完成任务;

      ● 缺少必要的前提条件、注意事项等;

      ● 图形、表格、文字等晦涩难懂;

      ● 逻辑不清晰,该分类、分项、分步骤的没有给出;

      正确性

      ● 技术原理、功能、规格等描述和软件不一致,存在错误;

      ● 原理图、架构图等存在错误;

      ● 命令、命令参数等错误;

      ● 代码片段错误;

      ● 命令无法完成对应功能;

      ● 界面错误,无法指导操作;

      风险提示

      ● 对重要数据或系统存在风险的操作,缺少安全提示;

      内容合规

      ● 违反法律法规,涉及政治、领土主权等敏感词;

      ● 内容侵权;

      您对文档的总体满意度

      非常不满意
      非常满意
      提交
      根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
      文档捉虫
      编组 3备份