Điểm:1

zfs không nhận ra đĩa vật lý của chính nó

lá cờ us

Tôi đã lặp lại sự cố với nhóm zfs trong đó zfs ngừng nhận ra các thiết bị vật lý được dán nhãn chính xác (hoặc do đó nó xuất hiện).

Ubuntu 20.04.2 LTS
5.11.0-44-generic #48~20.04.2-Ubuntu SMP Thứ ba, ngày 14 tháng 12 15:36:44 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
libzfs2linux/now 0.8.3-1ubuntu12.11 AMD64 [đã cài đặt, có thể nâng cấp lên: 0.8.3-1ubuntu12.13]
zfs-zed/now 0.8.3-1ubuntu12.11 AMD64 [đã cài đặt, có thể nâng cấp lên: 0.8.3-1ubuntu12.13]
zfsutils-linux/now 0.8.3-1ubuntu12.11 AMD64 [đã cài đặt, có thể nâng cấp lên: 0.8.3-1ubuntu12.13]

Ví dụ mô hình.

  1. Tôi có thể tạo một nhóm, kết nối đĩa hoàn toàn không liên quan (ví dụ:usb, bên ngoài) và khi khởi động lại (với đĩa usb được cắm) zfs báo cáo một trong các đĩa từ nhóm của nó bị thiếu.
  2. Điều tương tự dường như cũng xảy ra với việc thay đổi bộ điều khiển cho một (hoặc có thể nhiều hơn) các ổ đĩa. Tất cả các đĩa vật lý đều ở đó, tất cả các nhãn/uuids dường như ở đó, điều thay đổi là việc gán ký tự thiết bị.

Thật khó để tin rằng zfs lắp ráp nhóm dựa trên thứ tự gán thiết bị hệ thống mà bỏ qua nhãn/uuid của nó nhưng đây là giao diện đơn giản của nó.

    agatek@mmstorage:~$ trạng thái zpool
          nhóm: mmdata
         trạng thái: XUỐNG
        trạng thái: Không thể sử dụng một hoặc nhiều thiết bị vì nhãn bị thiếu hoặc
            không hợp lệ. Có đủ bản sao để nhóm tiếp tục
            hoạt động trong tình trạng xuống cấp.
        hành động: Thay thế thiết bị bằng cách sử dụng 'zpool replace'.
           xem: http://zfsonlinux.org/msg/ZFS-8000-4J
          quét: đang tiến hành chà kể từ CN ngày 9 tháng 1 13:03:23 2022
            650G được quét ở tốc độ 1,58G/s, 188G được phát ra ở tốc độ 468M/s, tổng cộng 22,7T
            Đã sửa 0B, hoàn thành 0,81%, còn 0 ngày nữa 14:00:27
        cấu hình:

        TÊN BANG ĐỌC VIẾT CKSUM
        mmdata ĐÃ XUỐNG 0 0 0
          radz1-0 ĐÃ XUỐNG 0 0 0
            ata-HGST_HDN726040ALE614_K7HJG8HL TRỰC TUYẾN 0 0 0
            6348126275544519230 BỊ LỖI 0 0 0 là /dev/sdb1
            ata-HGST_HDN726040ALE614_K3H14ZAL TRỰC TUYẾN 0 0 0
            ata-HGST_HDN726040ALE614_K4K721RB TRỰC TUYẾN 0 0 0
            ata-WDC_WD40EZAZ-00SF3B0_WD-WX12D514858P TRỰC TUYẾN 0 0 0
            ata-ST4000DM004-2CV104_ZTT24X5R TRỰC TUYẾN 0 0 0
            ata-WDC_WD40EZAZ-00SF3B0_WD-WX62D711SHF4 TRỰC TUYẾN 0 0 0
            sdi TRỰC TUYẾN 0 0 0
    
    lỗi: Không có lỗi dữ liệu đã biết

agatek@mmstorage:~$ blkid 
/dev/sda1: UUID="E0FD-8D4F" TYPE="vfat" PARTUUID="7600a192-967b-417f-b726-7f5524be71a5"
/dev/sda2: UUID="9d8774ec-051f-4c60-aaa7-82f37dbaa4a4" TYPE="ext4" PARTUUID="425f31b2-f289-496a-911b-a2f8a9bb5c25"
/dev/sda3: UUID="e0b8852d-f781-4891-8e77-d8651f39a55b" TYPE="ext4" PARTUUID="a750bae3-c6ea-40a0-bdfa-0523e358018b"
/dev/sdb1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="13253481390530831214" TYPE="zfs_member" PARTLABEL="zfs-5360ecc220877e69" PARTUUID="57fe2215-aa69-2f46-fb6256"
/dev/sdd1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="17929921080902463088" TYPE="zfs_member" PARTLABEL="zfs-f6ef14df86c7a6e1" PARTUUID="31a074a3-300d-db493-b95ef4
/dev/sde1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="505855664557329830" TYPE="zfs_member" PARTLABEL="zfs-6326993c142e4a03" PARTUUID="37f4954d-67fd-8945-afd-82"bedb6
/dev/sdg1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="1905592300789522892" TYPE="zfs_member" PARTLABEL="zfs-9d379d5bfd432a2b" PARTUUID="185eff00-196a-a642-dec44502"
/dev/sdi1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="15862525770363300383" TYPE="zfs_member" PARTLABEL="zfs-3c99aa22a45c59bf" PARTUUID="89f1600a-b58e-c74ac-dd01"
/dev/sdh1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="15292769945216849639" TYPE="zfs_member" PARTLABEL="zfs-ee9e1c9a5bde878c" PARTUUID="2e70d63b-00ba-f842-ddba3d"
/dev/sdf1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="5773484836304595337" TYPE="zfs_member" PARTLABEL="zfs-ee40cf2140012e24" PARTUUID="e5cc3e2a-f7c9-d54e92c36de-e5cc3e2a-f7c9-d54e92c36de-e3
/dev/sdc1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="6348126275544519230" TYPE="zfs_member" PARTLABEL="zfs-0d28f0d2715eaff8" PARTUUID="a328981a-7569-294a26adf6-e

Đối với nhóm trên, điều gì đã xảy ra, một trong các thiết bị trước đó đã bị lỗi. Tôi đã nối một đĩa thay thế vào bộ điều khiển thứ hai và thực hiện thay thế. Nó đã thành công. Các hồ bơi là ok. Tiếp theo, thiết bị bị lỗi đã bị xóa khỏi nhóm và được thay thế vật lý bằng đĩa thay thế (thay đổi bộ điều khiển). Sau khi khởi động lại, tôi nhận được nó ở trạng thái xuống cấp với một trong các thiết bị được báo cáo là mất tích. Quá trình xóa được kích hoạt bằng lệnh zpool clear.

Vì vậy, như nó hiển thị từ blkid, có 8 đĩa, tất cả được phân vùng và gắn nhãn (tôi nghĩ) đúng cách, nhưng một trong các thiết bị không được nhận dạng là một phần của nhóm. Phải làm gì trong những tình huống như vậy? Nó cực kỳ khó chịu. Resilvering hồ bơi mất nhiều ngày.

Điểm:3
lá cờ us

Nếu bạn thêm bất kỳ thiết bị nào vào nhóm bằng cách sử dụng /dev/sdX đường dẫn, nó có thể thay đổi, vì nhân Linux không đảm bảo bất kỳ thứ tự nào cho các mục nhập ổ đĩa đó.

Trong đầu ra của bạn, bạn có /dev/sdi như một thành viên của nhóm. Điều này có thể thay đổi bất cứ lúc nào.

Bạn nên thử zpool xuất mmdata để đặt mảng ngoại tuyến, và sau đó zpool nhập mmdata -d /dev/disk/by-id để nhập lại bằng cách sử dụng ID cố định cho các ổ đĩa.

agatek avatar
lá cờ us
Cảm ơn. Tôi sẽ cố gắng làm điều đó. Vậy tại sao nó gắn nhãn/uuids tất cả các đĩa/phân vùng và vẫn dựa vào/dev/đĩa/by-id? Tôi đang cố gắng hiểu logic.
lá cờ us
ZFS không gắn nhãn cho các đĩa/phân vùng. Tuy nhiên, nó sử dụng số nhận dạng thiết bị đã được cung cấp cho nó trong quá trình `zpool tạo`.
agatek avatar
lá cờ us
Đó chính xác là quan điểm của tôi, tại sao nó lại gắn nhãn chúng nếu nó dựa trên ánh xạ/dev/đĩa/by-id? Tại sao nó không quét các uuids và nhãn và lắp ráp chúng dựa trên điều này? Ngoài ra, nội dung trong thông báo lỗi tốt nhất là gây hiểu nhầm: Không thể sử dụng một hoặc nhiều thiết bị vì **nhãn bị thiếu hoặc không hợp lệ**. Chà, nhãn không thiếu cũng không hợp lệ. Có lẽ đây là một lỗi của một số loại và nên được báo cáo?
agatek avatar
lá cờ us
Tero, xuất/nhập nhóm như bạn đề xuất đã hoạt động tốt. Cảm ơn bạn một lần nữa, nhưng trước khi làm điều này, tôi đã xuất nhóm và chỉ phát hành nhập zpool (không có -d). Điều này liệt kê tất cả các thiết bị một cách chính xác, vì vậy thiết bị được đánh dấu ở trên là bị lỗi có id vật lý chính xác và không còn thiếu nữa. Thật thú vị, thiết bị này chưa bao giờ được đưa vào nhóm theo id (đó là /dev/sdX). Bây giờ, người ta có thể đã thực hiện một số thao tác quét phù hợp, nhưng thiết bị cuối cùng (sdi) vẫn là sdi. Chỉ phương thức của bạn, trỏ đến thư mục, được phép liệt kê tất cả thiết bị trong nhóm bằng cách sử dụng id vật lý. Kỳ dị.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.