Nhập ZFS không thể tìm thấy bất kỳ nhóm


11

Tôi đã có một nhóm ZFS - một máy nhân bản chứa 2 vdevs - đang chạy trên máy chủ FreeBSD. Bây giờ tôi chỉ có một trong số các đĩa từ máy nhân bản và tôi đang cố gắng khôi phục các tệp từ nó.

Dữ liệu ZFS nằm trong phân vùng GPT trên đĩa.

Khi tôi cố gắng nhập nhóm, không có dấu hiệu nào cho thấy nó tồn tại cả. Tôi đã thử một số cách tiếp cận, nhưng không có gì xảy ra.

Tôi đã chạy zdb -lutrên phân vùng, và dường như tìm thấy các nhãn tốt.

# zpool import
# zpool import -D
# zpool status
no pools available
# zpool import -f ztmp
cannot import 'ztmp': no such pool available
# zpool import 16827460747202824739
cannot import '16827460747202824739': no such pool available

Thông tin phân vùng:

# gpart list da0
Geom name: da0
modified: false
state: OK
fwheads: 255
fwsectors: 63
last: 3907029134
first: 34
entries: 128
scheme: GPT
Providers:
1. Name: da0p1
   Mediasize: 65536 (64K)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 17408
   Mode: r0w0e0
   rawuuid: d7a10230-8b0e-11e1-b750-f46d04227f12
   rawtype: 83bd6b9d-7f41-11dc-be0b-001560b84f0f
   label: (null)
   length: 65536
   offset: 17408
   type: freebsd-boot
   index: 1
   end: 161
   start: 34
2. Name: da0p2
   Mediasize: 17179869184 (16G)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 82944
   Mode: r0w0e0
   rawuuid: d7aa40b7-8b0e-11e1-b750-f46d04227f12
   rawtype: 516e7cb5-6ecf-11d6-8ff8-00022d09712b
   label: (null)
   length: 17179869184
   offset: 82944
   type: freebsd-swap
   index: 2
   end: 33554593
   start: 162
3. Name: da0p3
   Mediasize: 1905891737600 (1.7T)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 82944
   Mode: r0w0e0
   rawuuid: d7b6a47e-8b0e-11e1-b750-f46d04227f12
   rawtype: 516e7cba-6ecf-11d6-8ff8-00022d09712b
   label: (null)
   length: 1905891737600
   offset: 17179952128
   type: freebsd-zfs
   index: 3
   end: 3755999393
   start: 33554594
Consumers:
1. Name: da0
   Mediasize: 2000398934016 (1.8T)
   Sectorsize: 512
   Mode: r0w0e0

Nhãn ZFS:

--------------------------------------------
LABEL 0
--------------------------------------------
    version: 5000
    name: 'ztmp'
    state: 0
    txg: 0
    pool_guid: 16827460747202824739
    hostid: 740296715
    hostname: '#############'
    top_guid: 15350190479074972289
    guid: 3060075816835778669
    vdev_children: 1
    vdev_tree:
        type: 'mirror'
        id: 0
        guid: 15350190479074972289
        whole_disk: 0
        metaslab_array: 30
        metaslab_shift: 34
        ashift: 9
        asize: 1905887019008
        is_log: 0
        create_txg: 4
        children[0]:
            type: 'disk'
            id: 0
            guid: 3060075816835778669
            path: '/dev/gptid/d7b6a47e-8b0e-11e1-b750-f46d04227f12'
            phys_path: '/dev/gptid/d7b6a47e-8b0e-11e1-b750-f46d04227f12'
            whole_disk: 1
            DTL: 5511
            resilvering: 1
        children[1]:
            type: 'disk'
            id: 1
            guid: 3324029433529063540
            path: '/dev/gptid/396a2b11-cb16-11e1-83f4-f46d04227f12'
            phys_path: '/dev/gptid/396a2b11-cb16-11e1-83f4-f46d04227f12'
            whole_disk: 1
            DTL: 3543
            create_txg: 4
            resilvering: 1
    features_for_read:
    create_txg: 0
Uberblock[0]
    magic = 0000000000bab10c
    version = 5000
    txg = 0
    guid_sum = 1668268329223536005
    timestamp = 1361299185 UTC = Tue Feb 19 10:39:45 2013

(Các nhãn khác là bản sao chính xác)

Có một cuộc thảo luận về một vấn đề nghe có vẻ tương tự trong chủ đề cũ này . Tôi đã thử chạy labelfixcông cụ của Jeff Bonwick (với các bản cập nhật từ bài đăng này ), nhưng dường như nó không giải quyết được vấn đề.

Có ý kiến ​​gì không?


2
Các ổ đĩa đã được tách ra khỏi gương, thay vì bị chia tách. Có vẻ như đó là nguyên nhân của vấn đề. Phần còn lại của gương không tồn tại, thật không may.
mực ống

1
Tôi không biết rằng đây là diễn đàn phù hợp cho vấn đề này, bởi vì 'câu trả lời' cho câu hỏi liên quan đến rất nhiều thử nghiệm & lỗi. Hiện tại, hãy thử 'nhập zpool -d </ dev / path / to / đĩa>'. -D liệt kê các nhóm bị phá hủy, -d lấy một đối số về vị trí của đĩa để xem và có thể được chỉ định nhiều lần trên dòng lệnh (nhưng trong trường hợp của bạn, chỉ cần một lần khi bạn có nhưng một đĩa) . Xem những gì nó làm.
Nex7

1
Bạn có thể đúng về điều này không phải là diễn đàn đúng. Và vâng, tôi đã thử với các tùy chọn -d-Dkhông có kết quả.
mực ống

1
Nếu bạn đã thử với -d <đường dẫn đĩa dev bao gồm phân vùng> và nó không hiển thị, hãy thử lại mọi thứ nhưng trên hệ điều hành illumos. Nếu điều đó vẫn không thể nhìn thấy nó, tôi không có ý tưởng. Bạn có thể cần phải tham gia một chuyên gia phục hồi dữ liệu nếu dữ liệu có giá trị bằng tiền hoặc bắt đầu xem mã (src.illumos.org) trong khi trên đạo hàm illumos và thực hiện lệnh nhập zpool để xem đường dẫn và thử đường nào để tìm hiểu tại sao nó không thể nhìn thấy hồ bơi của bạn.
Nex7

2
@GrahamPerrin Tôi đã làm cho nó hoạt động. Tôi đã chỉnh sửa các nguồn ZFS trên bản cài đặt FreeBSD của mình và làm cho chúng bỏ qua tất cả các kiểm tra độ tỉnh táo. Sau khi vô hiệu hóa đủ số đó, tôi quản lý để có được nhóm nhập khẩu. Ai đó phải bỏ qua kiểm tra sự tỉnh táo của riêng tôi ...
mực ống

Câu trả lời:


6

để tham khảo trong tương lai, chỉ cần thực hiện nhập zpool -a (sẽ tìm kiếm tất cả), thường cũng hữu ích khi zpool / zfs fs không được nhận dạng.


tôi thậm chí nhìn thấy tôi trong bộ nhớ cache, nhưng thử nó không hoạt động. Tôi đang sao lưu tệp bộ nhớ cache của mình, thử và không có nó, và để buộc nó, v.v., cũng sẽ kiểm tra những gì Graham đề xuất ở trên.
Brian Thomas

4

Từ bình luận (từ poster mở đầu):

Tôi đã chỉnh sửa các nguồn ZFS trên bản cài đặt FreeBSD của mình và làm cho chúng bỏ qua tất cả các kiểm tra độ tỉnh táo. Sau khi vô hiệu hóa đủ số đó, tôi quản lý để có được nhóm nhập khẩu.


1

Tôi bằng cách nào đó làm hỏng cấu hình ZFS của tôi. Thật không may, tôi không nhớ chính xác những gì tôi đã làm (tôi đã thay đổi một số phần cứng nên tôi đã nhầm lẫn; đừng như tôi!), Nhưng điều này hiệu quả với tôi. Tôi đang sử dụng XigmaNAS (Nas4free) và tất cả các lệnh bên dưới được phát hành qua thiết bị đầu cuối.

Một số ký ức mơ hồ về những gì tôi đã làm (và không làm):

  • Không xuất bất kỳ nhóm
  • Có thể đã xóa (phá hủy) hồ bơi

Triệu chứng:

  1. Trong GUI Web, đĩa có thể được nhập tự động và được nhận dạng dưới dạng zpool (không được định dạng hoặc UFS, v.v.)
  2. Tuy nhiên, phần GUI ZFS không thể phát hiện zpool. Vì vậy, tôi không thể nhập hồ bơi bằng cách nhấn các nút. Lực lượng nhập khẩu cũng không hoạt động.
  3. Thông tin SMART về đĩa này trông hoàn toàn đúng trong GUI. Tôi không nghĩ rằng đĩa bị hỏng vật lý.
  4. Trong phần Thông tin GUI hiển thị đĩa dưới dạng da1. Đây là đủ thông tin tôi cần trước khi đi đến thiết bị đầu cuối.
  5. Cảnh báo cho những người dùng khác: Nếu bạn gặp vấn đề với GUI, hãy dừng ngay lập tức mọi hoạt động phá hoại. Chẳng hạn như tạo một vdev mới hoặc thử với các định dạng đĩa khác. Đi đến nhà ga.
  6. Trong thiết bị đầu cuối, đây là một số lệnh và kết quả đã thử.

    • zpool import -a nói no pool available to import
    • zpool statusnói no pools available(ngôn ngữ bị hỏng? lol.)
    • gpart list -a không hiển thị da1
    • gpart list da1 nói gpart: no such geom: da1
    • zpool list nói no pools available
    • glabel list -a không hiển thị bất kỳ hồ bơi trong da1
    • zdb -l /dev/da1có thể in hai nhãn trong da1, vì vậy đĩa của tôi không chết
    • zpool import -Dnói rằng hồ bơi trên da1bị phá hủy và có thể nhập khẩu

Giải pháp:

Chạy zpool import -D -f (poolname)giải quyết vấn đề.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.