*FreeBSD-13 でディスク障害が発生した。 *FreeBSD gmirror GPT 3T HDD トリプルミラーでの障害 *セクタエラー *障害復旧手順の記録 *zfs ではない *GPT のバックアップ領域と gmirror の管理領域が重複するため、GPTではディスク丸ごと gmirror できない。 *FreeBSD GPT gmirror 失敗 *MBR だったらディスク丸ごと gmirror ができる。 *回避のため、GPTで複数のパーティションを作成し、それぞれのパーティションで gmirror を動作している。 *複数の gmirror が動作している。 *ここでは、bootcode + freebsd-swap + freebsd-ufs !!!発生状況 !1/8 root@ns4:/home/nonaka # smartctl -a /dev/ada0 smartctl 7.2 2020-12-30 r5155 [FreeBSD 11.4-RELEASE-p9 amd64] (local build) Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Western Digital Green Device Model: WDC WD30EZRX-00D8PB0 Serial Number: WD-WMC4N******* LU WWN Device Id: 5 0014ee 6043***** Firmware Version: 80.00A80 User Capacity: 3,000,592,982,016 bytes [3.00 TB] Sector Sizes: 512 bytes logical, 4096 bytes physical Rotation Rate: 5400 rpm Device is: In smartctl database [for details use: -P show] ATA Version is: ACS-2 (minor revision not indicated) SATA Version is: SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s) Local Time is: Mon Jan 8 18:30:59 2024 JST SMART support is: Available - device has SMART capability. SMART support is: Enabled !!!作業概要 *gmirror ada0 ada1 ada2 のトリプルミラー *ada0 が故障 *トリプルミラー から ada0 を除去 gmirror remove p3 ada0p3 gmirror remove p1 ada0p1 gmirror remove p2 ada0p2 *ada0 を入れ替え *ada0 のパーティション設定 gpart create -s gpt /dev/ada0 gpart add -b 40 -s 128 -t freebsd-boot ada0 gpart add -t freebsd-ufs -s 5853151096 ada0 gpart add -t freebsd-swap -s 7381870 -a 2 ada0 *ada0 の起動コード書き込み ls -l /boot/pmbr gpart bootcode -b /boot/pmbr ada0 ls -l /boot/gptboot gpart bootcode -p /boot/gptboot -i 1 ada0 *トリプルミラー再開 gmirror insert p1 /dev/ada0p1 gmirror insert p3 /dev/ada0p3 gmirror insert p2 /dev/ada0p2