出错提示S6磁盘分区创建快照出错

本文主要介绍在使用SMC迁移时,迁移任务出错提示“S6_* 磁盘分区创建快照出错”的问题描述、问题原因及其解决方案。

问题描述

SMC迁移时,迁移任务出错提示“S6_* 磁盘分区创建快照出错”。其中S6_*可能的错误码如下:

  • S6_8

  • S6_1

问题原因

块复制迁移过程中,SMC客户端会在源系统内部自动创建磁盘分区快照设备,用于数据同步。源系统SMC客户端进行磁盘分区创建快照时出错,可能原因如下:

  • Windows:

    • 磁盘分区空间不足。

    • 系统安装有第三方安全杀毒软件。

    • 磁盘分区卷影副本配置的存储使用限制大小不足。

    • 系统卷影副本快照服务Volume Shadow Copy服务异常。

  • Linux

    • 磁盘分区空间不足。

    • 系统可用内存不足300 MB。

    • 磁盘分区快照设备异常。

解决方案

不同操作系统对应的解决方案如下:

  • Windows

    打开事件查看器检查是否有vss、volsnap、disk相关来源异常,并根据报错进行处理。

    • 如果报错提示磁盘空间不足,或VSS卷影副本快照无法增长。

      • 检查磁盘分区剩余空间是否不足,建议预留10% ~ 15%空间。

      • 磁盘卷影副本配置的存储使用限制大小是否不足,建议适当调大使用限制或选择没有限制后再试。

        image

    • 如果报错拒绝访问,错误码0x80070005,需检查系统内是否安装有第三方安全杀毒软件,建议放开磁盘备份权限或者禁用该类软件后再试。

    • 检查系统卷影副本快照服务Volume Shadow Copy服务是否正常。

  • Linux

    1. 检查/dev/smcss9设备是否存在,执行dmesg | grep smcss检查是否有报错。

      1. 检查系统剩余内存是否满足300 MB。

      2. 检查磁盘分区剩余空间是否不足,建议预留10%~15%空间。

      3. SMC客户端安装目录下执行./Check/client_check --ssclear smcss,清理残留快照设备后再试。查找SMC客户端安装目录的具体操作,请参见查看SMC客户端

    2. (条件必选)若错误信息中存在“io scheduler not support”,按如下步骤更换磁盘使用的IO调度器。

      1. 确定出问题的磁盘序号。

        找到错误信息中的msg部分,如:msg=CreateSnapshot 0-x Failed,0-x表示第1块磁盘,1-x表示第2块磁盘,2-x表示第3块磁盘,以此类推。

      2. 根据步骤i确定的序号来查询磁盘设备名称。

        执行lsblk命令,确定对应序号的磁盘设备名称(序号从0开始)。

        image

      3. 根据步骤ii确定的磁盘名称查看磁盘使用的IO调度器。

        以磁盘vdb为例,执行cat /sys/block/vdb/queue/scheduler命令,查看此磁盘使用的IO调度器。

        回显信息如下图,[] 中的是vdb磁盘当前所使用的IO调度器,即bfq。

        image

        说明

        回显信息列出了所有IO调度器,总共有四个:mq-deadline、kyber、bfq、none。

      4. 更换当前调度器(bfq)为其他调度器。

        将调度器更换为除了bfq以外的其它调度器。以更换为mq-deadline为例:

        执行sudo echo mq-deadline > /sys/block/vdb/queue/scheduler

        执行cat /sys/block/vdb/queue/scheduler命令,查看此磁盘当前使用的IO调度器,可看到IO调度器由bfq更换为了mq-deadline。

        image

问题排查解决后,运行SMC客户端再试。具体操作,请参见运行SMC客户端