Miklix

Ngaganti Drive Gagal dina Array mdadm dina Ubuntu

Diterbitkeun: 15 Pébruari 2025 jam 22.07.54 UTC

Upami anjeun aya dina kaayaan anu pikasieuneun pikeun gagalna drive dina susunan RAID mdadm, tulisan ieu ngajelaskeun kumaha carana ngagentos éta dina sistem Ubuntu.


Kaca ieu ditarjamahkeun ku mesin tina basa Inggris supados tiasa diaksés ku saloba-lobana jalma. Hanjakalna, tarjamahan mesin henteu acan janten téknologi anu sampurna, janten kasalahan tiasa lumangsung. Upami anjeun hoyong, anjeun tiasa ningali versi Inggris asli di dieu:

Replacing a Failed Drive in an mdadm Array on Ubuntu

Inpormasi dina tulisan ieu dumasar kana Ubuntu 18.04 sareng versi mdadm kalebet dina repositori na; dina waktu nulis v4.1-rc1. Ieu bisa atawa bisa jadi teu valid pikeun vérsi séjén.

Kuring nembe ngalaman kagagalan drive dadakan dina server file imah kuring, nu diwangun ku salapan drive dina mdadm RAID-6 Asép Sunandar Sunarya. Éta salawasna pikasieuneun, tapi untungna kuring tiasa gancang ngagentos drive anu parantos dikirimkeun énjing-énjing supados kuring tiasa ngamimitian deui.

Kuring éta Diaku bit teuing mirah lamun kuring mimitina setelan file server; ngan dua tina drive anu sabenerna NAS drive (Seagate IronWolf), sedengkeun sésana mangrupa desktop drive (Seagate Barracuda). Teu anéh, éta mangrupikeun salah sahiji drive desktop anu parantos nyerah (sanggeus ampir tilu taun jasa, sanaos). Ieu sagemblengna maot; Saatos ngalihkeunana kana panyimpen USB desktop anu kuring kaluarkeun nyaéta sora ngaklik anu teu pikaresepeun sareng sanés Ubuntu 20.04 atanapi Windows 10 henteu tiasa ngadeteksi éta.

Oh muhun, kana bagian ngagantian (sareng enya, drive anyar kuring meuli éta hiji IronWolf, palajaran diajar) - sakumaha pikasieuneun sakumaha kaleungitan drive dina Asép Sunandar Sunarya ngajalankeun, éta malah pikasieuneun lamun teu nyaho prosedur bener pikeun ngaganti eta. Ieu sanes kahiji waktos Kuring geus kungsi ngaganti hiji drive gagal dina Asép Sunandar Sunarya mdadm, Tapi untungna éta jadi langka nu kuring biasana kudu néangan up Paréntah ditangtoskeun. waktos Ieu kuring mutuskeun pikeun mecut nepi pituduh saeutik kuring sorangan pikeun rujukan hareup.

Janten, mimitina, nalika anjeun nampi e-mail acara gagal anu pikasieuneun ti mdadm, anjeun kedah idéntitas mana drive anu gagal. Pasti, éta bakal nyarioskeun ka anjeun nami alat (bisi kuring / dev / sdf), tapi sigana henteu écés mana drive fisik anu leres-leres sakumaha nami-nami tiasa robih nalika mesin di-boot.

Upami anjeun henteu yakin kana nami alat mana anu gagal, anjeun tiasa nganggo paréntah di handap ieu pikeun milarian (ganti / dev / md0 sareng alat RAID anjeun):

mdadm -–query -–detail /dev/md0

Sakumaha anu disebatkeun, dina kasus kuring éta / dev / sdf, janten hayu urang teraskeun éta.

Teras, anjeun tiasa nyobian milarian nomer séri drive anu gagal ku ngaluarkeun paréntah ieu:

smartctl -–all /dev/sdf | grep -i 'Serial'

(upami smartctl henteu kapendak, anjeun kedah pasang pakét smartmontools dina Ubuntu)

Jumlah serial lajeng bisa dibandingkeun jeung nomer serial dina labél fisik dina drive pikeun inohong kaluar nu salah geus gagal.

waktos ieu, kuring teu jadi untung, sanajan. Drive ieu sagemblengna maot komo nampik nyadiakeun SMART atawa data sejenna, kaasup nomer serial.

Kusabab kuring kungsi aksés fisik ka server (anu bener butuh mun anjeun bade ngaganti drive fisik sorangan, Kuring anggap ;-)) jeung server sabenerna ngajalankeun nalika disk gagal (sarta terus ngajalankeun rupa nuhun ulang razia-6), Kuring indit jeung bener primitif, tapi sabenerna pohara efektif tur atra, metoda saukur nyalin file badag ka server jeung ningali nu flicker lampu. Dina sababaraha detik kuring geus ngaidentifikasi penjahat.

Ayeuna, sateuacan nyabut drive fisik, éta hadé pikeun nginpokeun ka mdadm sacara resmi ngeunaan maksud ieu, ku ngaluarkeun paréntah ieu (ganti nami alat sareng nami anjeun nyalira):

mdadm -–manage /dev/md0 -–remove /dev/sdf1

Dina kasuksésan, mdadm bakal ngawalon pesen nyebutkeun yen eta "panas dihapus" drive, tétéla kusabab alat razia maya sabenerna ngajalankeun dina waktu éta.

Upami gagal sareng pesen kasalahan anu sami sareng "alat atanapi sumber daya sibuk", meureun mdadm leres-leres henteu ngadaptarkeun drive pikeun gagal lengkep. Jang ngalampahkeun éta, ngaluarkeun paréntah ieu (deui, émut pikeun ngagentos nami alat ku anjeun nyalira upami pas):

mdadm --manage /dev/md0 --fail /dev/sdf

Sanggeus éta, anjeun kudu bisa nyabut alat tina Asép Sunandar Sunarya jeung paréntah saméméhna.

Ayeuna waktosna leres-leres ngagentos drive. Upami anjeun leres-leres - sapertos, leres - pasti mesin sareng pangontrol anjeun ngadukung swapping panas, anjeun tiasa ngalakukeun ieu tanpa mareuman mesin. Éta bakal janten jalan pikeun sistem produksi kritis anu dijalankeun dina hardware server anu leres sareng leres anu anjeun terang tiasa ngadamelana. Pangladén file bumi kuring didasarkeun kana motherboard desktop kelas konsumen sareng sababaraha pengendali SATA semi-noname dina slot PCIe pikeun nyayogikeun langkung seueur palabuhan SATA, sanaos.

Sanaos SATA umumna kedah ngadukung swapping panas, kuring henteu badé risiko naon waé dina setélan ieu, janten kuring milih mareuman mesin nalika ngagentos drive.

Saméméh ngalakukeun éta, éta mangrupakeun ide nu sae pikeun mairan kaluar alat razia dina / jsb / fstab file ambéh Ubuntu moal coba mun Gunung eta otomatis dina boot salajengna, sabab bisa ngagantung tur maksakeun anjeun kana mode recovery alatan susunan RAID didegradasi. Éta moal janten masalah anu ageung upami éta sistem desktop, tapi kuring ngajalankeun server ieu tanpa sirah tanpa monitor atanapi keyboard napel, janten ieu bakal janten repot.

Saatos booting mesin jeung drive anyar ngagurilap dipasang, make lsblk atawa cara séjén pikeun ngaidentipikasi eta. Upami anjeun teu acan robah nanaon sejenna, eta meureun (tapi teu merta ) meunang ngaran anu sarua sakumaha drive nu diganti. Bisi kuring éta, janten anu énggal disebut ogé /dev/sdf.

Salaku Asép Sunandar Sunarya abdi dumasar kana partitions tinimbang alat fisik, abdi diperlukeun pikeun nyalin tabel partisi ti drive kerja ka drive anyar dina urutan pikeun mastikeun aranjeunna persis sarua. Upami anjeun ngajalankeun array anjeun dina alat fisik, anjeun tiasa ngalangkungan léngkah ieu.

I dipaké sgdisk pikeun tujuan ieu, nyalin tabel partisi tina / dev / sdc ka / dev / sdf. Pastikeun pikeun ngaganti ngaran alat pikeun nyocogkeun sorangan sakumaha hade.

Perhatikeun urutan di dieu: Anjeun daptar "ka" drive munggaran! Ieu rada kontra-intuitif pikeun kuring, tapi pastikeun anjeun leres-leres supados anjeun henteu nampi kagagalan drive anu sanés dina susunan ;-)

sgdisk -R /dev/sdf /dev/sdc

Teras pikeun ngahindarkeun konflik UUID, ngahasilkeun UUID énggal pikeun drive énggal:

sgdisk -G /dev/sdf

Sareng ayeuna tungtungna waktosna pikeun nambihan drive énggal kana susunan sareng ngamimitian pésta ngawangun deui! (Oke, éta sanés pésta, éta leres-leres prosés anu lambat sareng ngaganggu sabab anjeun leres-leres henteu hoyong drive sanés gagal dina waktos ayeuna. Bir tiasa ngabantosan, sanaos)

Atoh, pikeun nambihan drive énggal kana susunan, ngaluarkeun paréntah ieu (deui, pastikeun pikeun ngagentos nami alat sareng nami anjeun nyalira):

mdadm -–manage /dev/md0 -–add /dev/sdf1

Upami sadayana lancar, drive bakal ditambah kana susunan tanpa hiccups. Kuring yakin eta sabenerna ditambahkeun salaku "panas cadang" sacara standar, tapi saprak Asép Sunandar Sunarya ieu leungit hiji disk (anu gagal), eta geuwat nempatkeun kana pamakéan sarta prosés ngawangun deui bakal ngamimitian.

Anjeun tiasa ngawaskeunana sapertos kieu:

watch cat /proc/mdstat

Ieu meureun bakal butuh bari; dina server lowly kuring (dumasar pisan kana hardware kelas konsumen na desktop drive, pikiran anjeun) éta bisa ngahontal saukur dina 100 MB / detik. Émut yén ieu RAID-6, janten seueur itungan parity aub sareng ngawangun deui; a RAID-10 bakal geus leuwih gancang. mesin tinangtu ieu boga AMD A10 9700E quad core CPU (nu "E" hartina éta model efisien énergi under-clocked, ie teu super gancang), ngan pikeun masihan anjeun hiji gagasan naon nyangka. Kalayan salapan drive 8 TB dina setélan kuring, ngawangun deui pinuh nyandak langkung ti 24 jam.

Salila ngawangun deui, anjeun tiasa pasang filesystem dina Asép Sunandar Sunarya sareng anggo sapertos biasa upami anjeun hoyong, tapi kuring langkung resep ngantunkeun kana ngawangun deui dugi ka réngsé. Émut yén upami hiji drive gagal, anu sanésna bakal enggal-enggal nuturkeun, janten anjeun hoyong ngawangun deui gancang-gancang sabab anjeun leres-leres henteu hoyong drive sanés gagal dina waktos éta. Ku alatan éta, ulah beungbeurat ku IO séjén nu teu mastikeun diperlukeun.

Saatos réngsé, tambahkeun deui kana file /etc/fstab anjeun, reboot teras nikmati file anjeun :-)

Bagikeun on BlueskyBagikeun dina FacebookBagikeun on LinkedInBagikeun dina TumblrBagikeun harga XBagikeun on LinkedInPin on Pinterest

Mikkel Bang Christensen

Ngeunaan Pangarang

Mikkel Bang Christensen
Mikkel mangrupikeun panyipta sareng pamilik miklix.com. Anjeunna gaduh pangalaman langkung ti 20 taun salaku programmer komputer / pamekar software profésional sareng ayeuna padamelan full-time pikeun korporasi IT Éropa anu ageung. Nalika henteu ngeblog, anjeunna nyéépkeun waktos luangna dina sajumlah ageung minat, hobi, sareng kagiatan, anu tiasa ditingali dina rupa-rupa topik anu aya dina halaman wéb ieu.