Portál AbcLinuxu, 7. května 2025 22:16
lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 558.9G 0 disk └─sda1 8:1 0 558.9G 0 part ├─rhel--raid1-max_maxp_spool 253:2 0 8G 0 lvm /max/maxp/spool ├─rhel--raid1-IDSLOGS 253:3 0 32G 0 lvm /IDSLOGS └─rhel--raid1-data1 253:4 0 518.9G 0 lvm /data1 sdb 8:16 0 1.7T 0 disk ├─sdb1 8:17 0 1023.8M 0 part /boot/efi ├─sdb2 8:18 0 2G 0 part /boot ├─sdb3 8:19 0 1.6T 0 part │ ├─rhel--raid5-root 253:0 0 32G 0 lvm / │ ├─rhel--raid5-swap 253:1 0 16G 0 lvm [SWAP] │ ├─rhel--raid5-home 253:5 0 2G 0 lvm /home │ ├─rhel--raid5-var 253:6 0 12G 0 lvm /var │ ├─rhel--raid5-tmp 253:7 0 4G 0 lvm /tmp │ ├─rhel--raid5-max 253:8 0 16G 0 lvm /max │ ├─rhel--raid5-max_maxp_homes 253:9 0 12G 0 lvm /max/maxp/homes │ ├─rhel--raid5-IDSDATA 253:10 0 120G 0 lvm /IDSDATA │ └─rhel--raid5-data2 253:11 0 1.4T 0 lvm /data2 └─sdb4 8:20 0 54.5G 0 part └─rhel--raid5-max_maxp_homes 253:9 0 12G 0 lvm /max/maxp/homesPři běžné kontrole /dev/sdb3 pomocí
badblocks -s -v /dev/sdb3
jsem našel 32 vadných bloků. Provedl jsem badblock -svnf /dev/sdb3
, kontrola našla ty stejné vadné bloky, ale ačkoliv jsem očekával opravu (nebo spíš označení jako nečitelné), tak další kontrola stále zobrazuje ty samé vadné bloky.
Při práci s diskem zatím žádný problém s nečitelností dat nepozoruju (což může být jen náhoda), projevuje se to však při zálohování pomocí VEEAM Agent for Linux, které končí chybou při čtení disku.
Jaký by měl být další postup? Data mám samozřejmě odložená i jinde. RAID adaptér chyby nehlásí, SMART taky ne. Ideální by bylo vyměnit všechny disky v poli, ale to je až krajní možnost.
Díky. JR
Řešení dotazu:
e2fsck -fccky /dev/sdXXNo a konecne to muzes naformatovat. Souborovy system?
megasasctl -e
k radiču MegaRAID SAS a pod.
Radič by sa mohol dať zistiť napríklad takto:
lspci | grep -i raid 01:00.0 RAID bus controller: Broadcom / LSI MegaRAID SAS-3 3108 [Invader] (rev 02)
megasasctl -e a0 ServeRAID M1015 SAS/SATA Controller encl:1 ldrv:1 batt:FAULT, module missing, pack missing, charge failed a0d0 271GiB RAID 10 2x2 optimal a0e64s0 136GiB a0d0 online write errors: corr: 0 delay: 0 rewrit: 0 tot/corr: 0 tot/uncorr: 0 read errors: corr: 0 delay: 0 reread: 0 tot/corr: 0 tot/uncorr: 0 verify errors: corr: 0 delay: 0 revrfy: 0 tot/corr: 0 tot/uncorr: 0 a0e64s1 136GiB a0d0 online write errors: corr: 0 delay: 0 rewrit: 0 tot/corr: 0 tot/uncorr: 0 read errors: corr: 1Gi delay: 0 reread: 0 tot/corr: 1Gi tot/uncorr: 0 verify errors: corr:256Mi delay: 0 revrfy: 0 tot/corr:256Mi tot/uncorr: 0 a0e64s2 136GiB a0d0 online write errors: corr: 0 delay: 0 rewrit: 0 tot/corr: 0 tot/uncorr: 0 read errors: corr: 2Gi delay: 0 reread: 0 tot/corr: 2Gi tot/uncorr: 0 verify errors: corr: 1Gi delay: 0 revrfy: 0 tot/corr: 1Gi tot/uncorr: 0 a0e64s3 136GiB a0d0 online write errors: corr: 0 delay: 94 rewrit: 1 tot/corr: 0 tot/uncorr: 1 read errors: corr: 0 delay: 10 reread: 8 tot/corr: 0 tot/uncorr: 8 verify errors: corr: 0 delay: 0 revrfy: 8 tot/corr: 0 tot/uncorr: 8V tomto prípade bol chybný disk č. 4 (a0e64s3), pretože mal uncorrected errors.
Je tam ext4.
Tohle↑ tedy hrozí průšvihem jednoznačně. Časovaná bomba. V roce 2023 to nemá co dělat.
Tak takového serveru bych se fakt bál. V jakém stavu jsou na něm data, to je ve hvězdách.
…s hardwarovým RAID řadičem…
Pozor, nic takového neexistuje. Je to chybný název, scam a pohádka. Takzvaný „hardwarový“ řadič má dvě „skvělé“ vlastnosti:
RAID se tomuhle↑ ve slušné společnosti neříká. Je to AID bez R.
Ideální by bylo vyměnit všechny disky v poli, ale to je až krajní možnost.
Bohužel existuje nesmyslná pověra, že se mají disky měnit najednou, že se mají kombinovat jenom disky podobného stáří a podobně. Máloco může být vzdálenější pravdě.
Takový nesmysl pak vede k potu a slzám — a kaskádám selhání. Když na starém RAID5 (neřkuli AID5) začne náročná oprava po náhradě disku, pravděpodobnost selhání dalšího disku je nepříjemně vysoká.
Proto je rozumné mít v RAID poli plánovanou rotaci disků. Jasně, zpočátku pole sestává z nových disků a je zdánlivě škoda je rotovat, ale takový už je život; buď chci dlouhodobý spolehlivý provoz bez náhlých dramatických událostí, nebo mám jiné priority…
Příklad rotace: Dejme tomu, že máme (skutečný) RAID (pozor, ne „hardwarový“ AID) s 8 disky. První dva roky se nechá běžet beze změn. Pak se každý kvartál vymění 1 disk, toho času nejstarší (nebo zpočátku jeden z nejstarších, dokud je ještě stáří některých disků stejné). Co tohle zajistí:
Samozřejmě záleží na tom, jaké požadavky se na příslušný server kladou a kolik stojí (zbytečná a nečekaná a přesčasová) práce lidí v případě selhání ve srovnání s … koupí jednoho disku za kvartál. Bude tam značný nepoměr; zbytečná práce lidí je klidně o dva desítkové řády dražší.
├─sdb3 8:19 0 1.6T 0 part │ ├─rhel--raid5-root 253:0 0 32G 0 lvm / │ ├─rhel--raid5-swap 253:1 0 16G 0 lvm [SWAP] │ ├─rhel--raid5-home 253:5 0 2G 0 lvm /home │ ├─rhel--raid5-var 253:6 0 12G 0 lvm /var │ ├─rhel--raid5-tmp 253:7 0 4G 0 lvm /tmp │ ├─rhel--raid5-max 253:8 0 16G 0 lvm /max │ ├─rhel--raid5-max_maxp_homes 253:9 0 12G 0 lvm /max/maxp/homes │ ├─rhel--raid5-IDSDATA 253:10 0 120G 0 lvm /IDSDATA │ └─rhel--raid5-data2 253:11 0 1.4T 0 lvm /data2
Tohle↑ je učiněná katstrofa. Zbytečné tříštění prostoru nedává nikdy smysl. Aby jeden proces nezabral druhému procesu celý disk, od toho jsou kvóty a podobné vymoženosti, které lze kdykoliv dynamicky upravit, trvale nebo dočasně, podle potřeby.
Co když bude /var
jeden den potřebovat 13G místo 12G? S rozumným (ne)rozdělením diskového prostoru tohle není žádný problém. Upravím kvótu, uložím/vypočítám, co je potřeba, pak zase kvótu zredukuju. S touhle šíleností se z úplně běžné věci stává rocket science, zoufalství a hra na pacmana k tomu.
Jasně, že LVM dokáže (libovolně fragmentovaně) přidat k LV další bloky odněkud odjinud a v tom se pak dá nafouknout souborový systém — který rozhodně nemá být od volume managementu ani od RAIDu oddělený, leč u obsolete technooogií typu LVM bohužel je —, ale nechtěl bych něco takového podstupovat. Přesněji, v roce 2003 klidně jo, protože tenkrát bych musel. V roce 2023 už ne, protože … nemusím.
Pass completed, 48 bad blocks found (48/0/0 errors)
sudo badblocks -sv /dev/sdb
dmesg
nie je nič?
critical medium error, dev sdb, sector 3154816248 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [305571.041556] Buffer I/O error on dev sdb, logical block 394352031, async page readAle ani z toho nevidím, který disk je vadný. Zkusím ještě data vykopírovat a RAID postavit znovu. Třeba to při tom nové buildu vyhodí nějakou chybu.
# hdparm -I /dev/sdb /dev/sdb: SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ATA device, with non-removable media Standards: Likely used: 1 Configuration: Logical max current cylinders 0 0 heads 0 0 sectors/track 0 0 -- Logical/Physical Sector size: 512 bytes device size with M = 1024*1024: 0 MBytes device size with M = 1000*1000: 0 MBytes cache/buffer size = unknown Capabilities: IORDY not likely Cannot perform double-word IO R/W multiple sector transfer: not supported DMA: not supported PIO: pio0 smartctl -x /dev/sdb smartctl 7.1 2020-04-05 r5049 [x86_64-linux-4.18.0-305.3.1.el8_4.x86_64] (local build) Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Vendor: HPE Product: LOGICAL VOLUME Revision: 2.65 Compliance: SPC-3 User Capacity: 1,800,279,121,920 bytes [1.80 TB] Logical block size: 512 bytes Logical Unit id: 0x600508b1001cb4dd10e0db406dca8872 Serial number: PFJHD0ARCCZ1HF Device type: disk Local Time is: Tue Aug 15 21:04:45 2023 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled Temperature Warning: Disabled or Not Supported Read Cache is: Enabled Writeback Cache is: Disabled === START OF READ SMART DATA SECTION === SMART Health Status: OK Current Drive Temperature: 0 C Drive Trip Temperature: 0 C Error Counter logging not supported Device does not support Self Test logging Device does not support Background scan results loggingZ toho pořád nevidím, o jaký fyzický disk jde.
man smartctl
:
To look at disks behind HP Smart Array controllers, use syntax such as: smartctl -a -d cciss,0 /dev/cciss/c0d0 (cciss driver under Linux) smartctl -a -d cciss,0 /dev/sg2 (hpsa or hpahcisr drivers under Linux)Aký driver to používa? (
lspci -v
)
01:00.7 RAID bus controller: Hewlett-Packard Company Device 193f (rev 01) DeviceName: Embedded Storage Subsystem: Hewlett Packard Enterprise Device 00e4 Flags: bus master, fast devsel, latency 0, IRQ 255, NUMA node 0 Memory at d9b9c000 (32-bit, non-prefetchable) [size=16K] Memory at d9b98000 (32-bit, non-prefetchable) [size=16K] Capabilities: [70] MSI-X: Enable- Count=4 Masked- Capabilities: [80] Express Legacy Endpoint, MSI 00 Capabilities: [f0] Power Management version 3 Capabilities: [100] Advanced Error Reporting
01:00.0 RAID bus controller: Broadcom / LSI MegaRAID SAS-3 3008 [Fury] (rev 02) Subsystem: IBM MegaRAID SAS-3 3008 [Fury] ... Capabilities: [148] Alternative Routing-ID Interpretation (ARI) Kernel driver in use: megaraid_sasalebo
08:00.0 Serial Attached SCSI controller: Adaptec Smart Storage PQI SAS (rev 01) Subsystem: Lenovo ThinkSystem RAID 5350-8i PCIe 12Gb Adapter ... Capabilities: [300] Secondary PCI Express Kernel driver in use: smartpqi
b1:00.0 Serial Attached SCSI controller: Adaptec Smart Storage PQI SAS (rev 01) Subsystem: Hewlett-Packard Company Smart Array P408i-p SR Gen10 Physical Slot: 1 Flags: bus master, fast devsel, latency 0, IRQ 34, NUMA node 0 Memory at f3800000 (64-bit, non-prefetchable) [size=32K] I/O ports at c000 [size=256] Capabilities: [80] Power Management version 3 Capabilities: [b0] MSI-X: Enable+ Count=64 Masked- Capabilities: [c0] Express Endpoint, MSI 00 Capabilities: [100] Advanced Error Reporting Capabilities: [300] Secondary PCI Express Kernel driver in use: smartpqi Kernel modules: smartpqi
smartpqi is a SCSI driver for Microsemi Smart Family controllers. Supported ioctl() operations For compatibility with applications written for the cciss(4) and hpsa(4) drivers, many, but not all of the ioctl(2) operations supported by the hpsa driver are also supported by the smartpqi driver...Takže by mohlo fungovať niečo z toho predošlého príspevku (
smartctl -d cciss,
...)
smartctl -a -d cciss,0 /dev/sdb smartctl 7.1 2020-04-05 r5049 [x86_64-linux-4.18.0-305.3.1.el8_4.x86_64] (local build) Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Vendor: HP Product: EG000600JWJNP Revision: HPD3 Compliance: SPC-4 User Capacity: 600,127,266,816 bytes [600 GB] Logical block size: 512 bytes Rotation Rate: 10500 rpm Form Factor: 2.5 inches Logical Unit id: 0x5000c500c9cc3333 Serial number: WFJ38HBE Device type: disk Transport protocol: SAS (SPL-3) Local Time is: Wed Aug 16 07:40:34 2023 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled Temperature Warning: Enabled === START OF READ SMART DATA SECTION === SMART Health Status: OK Current Drive Temperature: 49 C Drive Trip Temperature: 60 C Manufactured in week 09 of year 2020 Specified cycle count over device lifetime: 10000 Accumulated start-stop cycles: 347 Specified load-unload count over device lifetime: 300000 Accumulated load-unload cycles: 1486 Elements in grown defect list: 0 Error counter log: Errors Corrected by Total Correction Gigabytes Total ECC rereads/ errors algorithm processed uncorrected fast | delayed rewrites corrected invocations [10^9 bytes] errors read: 0 0 0 0 0 58832.195 0 write: 0 0 0 0 0 4851.599 0 verify: 0 0 0 0 0 17.751 0 Non-medium error count: 9378 SMART Self-test log Num Test Status segment LifeTime LBA_first_err [SK ASC ASQ] Description number (hours) # 1 Background short Completed - 27161 - [- - -] # 2 Background short Completed - 27161 - [- - -] Long (extended) Self-test duration: 3300 seconds [55.0 minutes]Takhle dokážu prohlédnout všechny disky, ale ani na jednom mi to žádnou chybu neukáže.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.