Скраб ZFS не завершается

Прежде всего, давайте начнем с того, что я запускаю. Это домашний медиа-сервер под управлением Ubuntu 16.10. У меня есть один пул зеркальных 6 терабайтных приводов, которые примерно наполовину полны. Я построил систему около месяца назад, и она отлично работает. В качестве хранилища используется SSD в качестве загрузочного диска и вышеупомянутого пула. Я смог сделать все, что мне нужно, с этим бассейном, и все кажется замечательным.

Оба диска были новыми, когда я построил систему около месяца назад, и мне было немного любопытно о некоторых дополнительных вибрациях с одним из них. Ничего плохого, но продавец сказал, что он заменит его бесплатно, поэтому я планировал запустить скраб и вытащить его, чтобы отправить его, работая в деградированном состоянии, пока я жду. На нем нет никаких резервных копий данных, поэтому я не очень обеспокоен, но, очевидно, было бы проще сделать это таким образом, в отличие от убийства пула и восстановления из резервной копии.

Все, что я действительно пытаюсь сделать в данный момент, это запустить скраб и безопасно отсоединить один диск от зеркала. Я запускаю zpool scub tank, а затем сразу запускаю zpool статус, и я вижу, что скраб происходит. Я могу запускать обновление каждые несколько секунд и видеть, как он обновляет статус. Он работает около 30 секунд, а затем статус больше не отображает его. Также я никогда не видел ничего, кроме последнего скраба, завершенного в 0 часов 0 минут от статуса. Для меня это означает, что скраб не доходит до завершения, так как не должен быть скраб, по крайней мере, несколько часов с двумя с половиной терабайтами информации, чтобы пройти.

Что мне не хватает?


добавление запрашиваемой информации:

pool: Tank state: ONLINE scan: scrub repaired 0 in 0h0m with 0 errors on Sun Feb 5 00:31:42 2017 config: NAME STATE READ WRITE CKSUM Tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 sdb2 ONLINE 0 0 0 sdc2 ONLINE 0 0 0 errors: No known data errors 

Я снова пытаюсь скраб, просто чтобы убедиться, что проблема все еще актуальна. Вот статус около 20 секунд после начала …

  pool: Tank state: ONLINE scan: scrub in progress since Fri Feb 10 14:25:12 2017 62.5M scanned out of 2.97T at 1.08M/s, (scan is slow, no estimated time) 0 repaired, 0.00% done config: NAME STATE READ WRITE CKSUM Tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 sdb2 ONLINE 0 0 0 sdc2 ONLINE 0 0 0 errors: No known data errors 

и вот уже через минуту …

  pool: Tank state: ONLINE scan: scrub repaired 0 in 0h1m with 0 errors on Fri Feb 10 14:27:01 2017 config: NAME STATE READ WRITE CKSUM Tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 sdb2 ONLINE 0 0 0 sdc2 ONLINE 0 0 0 errors: No known data errors 

отредактируйте для дополнительной информации 2/16/17

У меня заканчивается время, чтобы отправить «шумный» диск, поэтому я потянул его. Я ничего не делал, кроме как отключать его (пока система не работала). Все продолжает функционировать должным образом на данный момент, хотя и в состоянии DEGRADED, как и ожидалось. Думаю, я продолжу документировать свой опыт здесь, так как я уже начал. Похоже, что никто другой не сталкивался с этой проблемой. Кажется, я не вижу никого другого в сети с той же ситуацией. Мне повезло. Мы увидим, что произойдет, когда я получу запасной диск и резистор. Кто знает … возможно, боги данных будут помиловать меня, и просто замена диска заставит проблему исправить себя. : / Ниже мой вывод после отсоединения диска.

  pool: Tank state: DEGRADED status: One or more devices could not be used because the label is missing or invalid. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Replace the device using 'zpool replace'. see: http://zfsonlinux.org/msg/ZFS-8000-4J scan: scrub repaired 0 in 0h1m with 0 errors on Sun Feb 12 00:24:38 2017 config: NAME STATE READ WRITE CKSUM Tank DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 sdb2 ONLINE 0 0 0 sdc2 UNAVAIL 0 0 0 errors: No known data errors 

Редактировать для дополнительной информации от 3/29/17

 root@NAS:~# zpool status pool: Tank state: ONLINE status: One or more devices has experienced an unrecoverable error. An attempt was made to correct the error. Applications are unaffected. action: Determine if the device needs to be replaced, and clear the errors using 'zpool clear' or replace the device with 'zpool replace'. see: http://zfsonlinux.org/msg/ZFS-8000-9P scan: resilvered 525M in 0h3m with 0 errors on Wed Mar 29 14:28:46 2017 config: NAME STATE READ WRITE CKSUM Tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 sdb2 ONLINE 0 0 0 sdc ONLINE 0 0 732 errors: No known data errors 

Может быть, еще один ключ к проблемам? посмотрите раздел sdc …

 root@NAS:/dev# parted --list Model: ATA Samsung SSD 850 (scsi) Disk /dev/sda: 250GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp 2 538MB 233GB 232GB ext4 3 233GB 250GB 17.1GB linux-swap(v1) Warning: Not all of the space available to /dev/sdb appears to be used, you can fix the GPT to use all of the space (an extra 7 blocks) or continue with the current setting? Fix/Ignore? i Model: ATA HGST HUH728060AL (scsi) Disk /dev/sdb: 6001GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 2097kB 2150MB 2147MB 2 2150MB 6001GB 5999GB zfs Model: ATA HGST HUH728060AL (scsi) Disk /dev/sdc: 6001GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 6001GB 6001GB zfs zfs-802af6a53a6d8383 9 6001GB 6001GB 8389kB 

Редактировать для дополнительной информации о 4/13/17

Да, я пытался исправить эту проблему в течение нескольких месяцев: /

Во-первых, после экспорта / импорта букв диска изменилось, поэтому обратите внимание, что sdb стал sdc, а sdc стал sdd.

Я думаю, что нашел проблему , и я хочу получить совет, как ее исправить. Проблема была наконец обнаружена, когда я запустил «sudo fdisk -l». Ниже представлены перманентные ножницы …

 Disk /dev/sdc: 5.5 TiB, 6001175126016 bytes, 11721045168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: 7127FE7D-E061-11E6-BD1F-3497F600DDAF Device Start End Sectors Size Type /dev/sdc1 4096 4198399 4194304 2G FreeBSD swap /dev/sdc2 4198400 11721043967 11716845568 5.5T FreeBSD ZFS ... Disk /dev/sdd: 5.5 TiB, 6001175126016 bytes, 11721045168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: E799A1D5-F9B7-C843-AB62-AADC9B0A2180 Device Start End Sectors Size Type /dev/sdd1 2048 11721027583 11721025536 5.5T Solaris /usr & Apple ZFS /dev/sdd9 11721027584 11721043967 16384 8M Solaris reserved 1 

Обратите внимание: зеркало изначально было создано в FreeNAS (FreeBSD). У sdc есть своп 2G в начале диска. sdd был создан в Ununtu, и по какой-либо причине ему был присвоен обмен 8M в конце диска.

Теперь, опасаясь, что проблема была неудачной, я отложил sdd и использовал на нем плохие блоки. Это вытирает всю информацию. Хорошей новостью является то, что диск в порядке, никаких плохих блоков. Это также сбрасывает разделы на ничего.

У меня есть два варианта. 1.) Попробуйте вручную сопоставить разделы sdd с рабочим диском (sdc). Хотя я думал, что zfs должен был сделать это автоматически, просто заменив zpool, так что, возможно, это пустая трата времени. 2.) У меня есть резервные копии данных, поэтому я могу стереть оба диска и начать с нуля, создать новое зеркало и позволить ему быть родным пулом Ubuntu.

Может быть, это переоценивает это, но я думаю, что я бегу немного рисковать, разрушая и восстанавливая. Мне нужно уничтожить хорошие данные, которые только резервные копии на не зеркальном диске, а затем rsyncing его обратно в вновь созданный пул. FYI, я использовал rsync для создания резервной копии, и она находится на том же ПК. Мне пришлось полосать 3 диска вместе без избыточности, чтобы соответствовать всем данным на нем. Я также опасаюсь, что перемещение данных вокруг этого без возможности вычистить может привести к некоторой коррупции, и я никогда не узнаю.

У кого-нибудь есть совет? Благодаря!

Linux и Unix - лучшая ОС в мире.