本文主要介紹在使用SMC遷移時,遷移任務出錯提示“S6_* 磁碟分割建立快照出錯”的問題描述、問題原因及其解決方案。
問題描述
在SMC遷移時,遷移任務出錯提示“S6_* 磁碟分割建立快照出錯”。其中S6_*可能的錯誤碼如下:
S6_8
S6_1
問題原因
塊複製遷移過程中,SMC用戶端會在源系統內部自動建立磁碟分割快照裝置,用於資料同步。源系統SMC用戶端進行磁碟分割建立快照時出錯,可能原因如下:
Windows:
磁碟分割空間不足。
系統安裝有第三方安全殺毒軟體。
磁碟分割淺層複製 (Shallow Copy)配置的儲存使用限制大小不足。
系統磁碟區影副本快照服務Volume Shadow Copy服務異常。
Linux
磁碟分割空間不足。
系統可用記憶體不足300 MB。
磁碟分割快照裝置異常。
解決方案
不同作業系統對應的解決方案如下:
Windows
開啟事件檢視器檢查是否有vss、volsnap、disk相關來源異常,並根據報錯進行處理。
如果報錯提示磁碟空間不足,或VSS淺層複製 (Shallow Copy)快照無法增長。
檢查磁碟分割剩餘空間是否不足,建議預留10% ~ 15%空間。
磁碟淺層複製 (Shallow Copy)配置的儲存使用限制大小是否不足,建議適當調大使用限制或選擇沒有限制後再試。
開啟磁碟屬性對話方塊,選擇淺層複製 (Shallow Copy)選項卡,選中目標卷後單擊設定(S)...按鈕,在彈出的設定對話方塊的最大值地區,選擇沒有限制(N)或將使用限制(U)的值適當調大(例如 4095 MB)後單擊確定。
如果報錯拒絕訪問,錯誤碼
0x80070005,需檢查系統內是否安裝有第三方安全殺毒軟體,建議放開磁碟備份許可權或者禁用該類軟體後再試。檢查系統磁碟區影副本快照服務Volume Shadow Copy服務是否正常。
Linux
檢查
/dev/smcss9裝置是否存在,執行dmesg | grep smcss檢查是否有報錯。檢查系統剩餘記憶體是否滿足300 MB。
檢查磁碟分割剩餘空間是否不足,建議預留10%~15%空間。
在SMC用戶端安裝目錄下執行
./Check/client_check --ssclear smcss,清理殘留快照裝置後再試。尋找SMC用戶端安裝目錄的具體操作,請參見查看SMC用戶端。
(條件必選)若錯誤資訊中存在“io scheduler not support”,按如下步驟更換磁碟使用的IO調度器。
確定出問題的磁碟序號。
找到錯誤資訊中的msg部分,如:msg=CreateSnapshot 0-x Failed,0-x表示第1塊磁碟,1-x表示第2塊磁碟,2-x表示第3塊磁碟,以此類推。
根據步驟i確定的序號來查詢磁碟裝置名稱。
執行
lsblk命令,確定對應序號的磁碟裝置名稱(序號從0開始)。[root@xxx ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk # 磁碟序號 0 ├─vda1 253:1 0 2M 0 part ├─vda2 253:2 0 200M 0 part /boot/efi └─vda3 253:3 0 39.8G 0 part / vdb 253:16 0 100G 0 disk # 磁碟序號 1 └─vdb1 253:17 0 100G 0 part /data根據步驟ii確定的磁碟名稱查看磁碟使用的IO調度器。
以磁碟vdb為例,執行
cat /sys/block/vdb/queue/scheduler命令,查看此磁碟使用的IO調度器。回顯資訊如下,[] 中的是vdb磁碟當前所使用的IO調度器,即bfq。
mq-deadline kyber [bfq] none說明回顯資訊列出了所有IO調度器,總共有四個:mq-deadline、kyber、bfq、none。
更換當前調度器(bfq)為其他調度器。
將調度器更換為除了bfq以外的其它調度器。以更換為
mq-deadline為例:執行
sudo echo mq-deadline > /sys/block/vdb/queue/scheduler。執行
cat /sys/block/vdb/queue/scheduler命令,查看此磁碟當前使用的IO調度器,可看到IO調度器由bfq更換為了mq-deadline。sudo echo mq-deadline > /sys/block/vdb/queue/scheduler cat /sys/block/vdb/queue/scheduler [mq-deadline] kyber bfq none
問題排查解決後,運行SMC用戶端再試。具體操作,請參見管理SMC用戶端。