Mitmeseadmelises Btrfs-failisüsteemis või Btrfs RAID-s võib sõltuvalt failisüsteemi konfiguratsioonist olla Btrfs-failisüsteemi lisatud salvestusseadmete erinevates kohtades salvestatud andmete / metaandmete plokkide mitu koopiat. Kui puhastustööriist Btrfs leiab rikutud andmete / metaandmete ploki, otsib see kõigist Btrfs-failisüsteemi lisatud mäluseadmetest selle andmete / metaandmete ploki koopiad. Kui selle andmete / metaandmete blokaadi duplikaat on leitud, kirjutatakse rikutud andmete / metaandmete plokk õige andmete / metaandmete plokiga üle. Nii parandab Btrfs-i puhastustööriist rikutud andmete / metaandmete plokid mitme seadme Btrfs-failisüsteemis või Btrfs RAID-is.
Selles artiklis näitan teile, kuidas kasutada puhastusvahendit Btrfs mitme seadmega Btrfs-failisüsteemis või Btrfs RAID-i rikutud andmete / metaandmete plokkide leidmiseks ja parandamiseks. Alustame siis.
Lühendid
RAID - Odavate / sõltumatute ketaste üleliigne massiiv
GB - Gigabait
Eeldused
Selle artikli järgimiseks peab teil olema toimiv mitme seadmega Btrfs-failisüsteem või Btrfs RAID.
Olen loonud Btrfs RAID-i RAID-1 konfiguratsioon (paigaldatud / andmed kataloog), kasutades 4 salvestusseadet sdb, SDK, sdd, ja sde, nagu näete alloleval ekraanipildil. Ma kasutan seda Btrfs RAID-i Btrfs-i puhastamise tutvustamiseks selles artiklis.
$ sudo btrfs failisüsteemi kasutamine / andmed
Kui vajate abi Btrfs-failisüsteemi installimisel Ubuntu, vaadake minu artiklit Btrf-ide installimine ja kasutamine Ubuntu 20-s.04 LTS.
Kui vajate abi Fedora Btrfs-failisüsteemi installimisel, vaadake minu artiklit Fedora 33 installimine ja kasutamine Btrfs.
Kui vajate Btrfs RAID-i loomisel abi, vaadake minu artiklit Kuidas seadistada Btrfs RAID-i.
Nukkfailide genereerimine Btrfs-failisüsteemis
Selleks, et näidata, kuidas Btrfs puhastustööriist töötab, peame looma mõned juhuslikud failid, et täita Btrfs-failisüsteem. Loome just selle skripti skripti.
Looge uus shelliskript genfailid.sh aastal / usr / local / bin / kataloogi järgmiselt:
$ sudo nano / usr / local / bin / genfiles.sh
Sisestage järgmistesse koodiridadesse genfailid.sh shelliskript.
#!/ bin / bashtõsi küll
tegema
FILENAME = $ (uuidgen)
kaja "[loomine] $ FILENAME"
dd kui = / dev / juhus = $ FILENAME bs = 1M count = 256 status = progress
kaja "[Loodud] $ FILENAME"
tehtud
Kui olete valmis, vajutage
The genfailid.sh shelliskript töötab lõpmatult samas silmus.
tõsi külltegema
# muud koodi
tehtud
Järgmine rida genereerib UUID, kasutades uuidgen käsk ja salvestab UUID FAILI NIMI muutuv.
Järgmine rida prindib enne faili konsooli teate FAILI NIMI genereeritakse.
Järgmine rida genereerib uue juhusliku faili FAILI NIMI kasutades dd käsk. Fail saab olema 256 MB suuruses.
Järgmine rida prindib pärast faili konsooli teate FAILI NIMI genereeritakse.
Lisage rakendusele täitmisluba genfailid.sh shelliskript järgmiselt:
s
The genfailid.sh shelliskript peaks olema nüüd juurdepääsetav nagu kõik teised käsud.
$ millised genfailid.sh
Genereerime mõned juhuslikud failid Btrfs RAID-i, mis on installitud / andmed kataloogi.
Navigeerige lehele / andmed kataloog, kuhu Btrfs RAID on ühendatud, järgmiselt:
$ cd / andmed
Nagu näete, pole minu Btrfs RAID-is praegu ühtegi faili saadaval.
$ ls -lh
Mõnede juhuslike failide loomiseks praeguses töökataloogis (/ andmed kataloogi), käivitage genfailid.sh shelliskript järgmiselt:
$ sudo genfiles.sh
The genfailid.sh shelliskript peaks hakkama juhuslikke faile genereerima / andmed kataloogi.
The genfailid.sh skript loob juhuslikke faile. Laske skriptil paar minutit töötada, nii et see täidab umbes 2-3 GB kettaruumi Btrfs RAID-is.
Kui soovite peatada genfailid.sh shelliskript, vajutage
Nagu näete, genereeritakse mõned juhuslikud failid Btrfs RAID-is.
$ ls -lh
Olen genereerinud umbes 13 GB juhuslikke faile Btrfs RAID - i, mis on installitud / andmed kataloogi, nagu näete alloleval ekraanipildil.
$ sudo du -sh / data
Töö tööriistaga Btrfs Scrub
Selles jaotises näitan teile, kuidas kasutada puhastustööriista Btrfs. Alustame.
Puhastamisprotsessi saate käivitada Btrfs-failisüsteemis, mis on paigaldatud / andmed kataloogi järgmise käsuga:
$ sudo btrfs nühib algust / andmeid
Btrfs-i failisüsteemis, mis on paigaldatud / andmed kataloogi.
Näete Btrfs-i puhastusprotsessi olekut, mis töötab Btrfs-failisüsteemis, mis on installitud / andmed kataloogi järgmiselt:
$ sudo btrfs puhastamise olek / andmed
Nagu näete, on Btrfs-i puhastusprotsess endiselt jooksmine.
Palju faile sisaldava Btrfs-failisüsteemi või Btrfs RAID-i puhastamine võtab kaua aega.
Kui Btrfs puhastamise protsess on lõpule jõudnud, tuleks selle olekuks muuta valmis, nagu näete alloleval ekraanipildil.
$ sudo btrfs puhastamise olek / andmed
Samuti näete Btrfs-i puhastamise olekut kõigi Btrfs-failisüsteemi lisatud mäluseadmete (ühendatud / andmed kataloog) eraldi järgmiselt:
$ sudo btrfs nühib olekut -d / andmed
Olen teile öelnud, et Btrfs-i puhastusprotsessi lõpuleviimine suure Btrfs-failisüsteemi juures võtab kaua aega. Btrfs puhastustööriista üks suur eelis on see, et selle protsessi saab igal ajal peatada ja jätkata.
Vaatame, kuidas peatada ja jätkata Btrfs-i puhastamise protsessi.
Esmalt käivitage uus Btrfs-i puhastusprotsess Btrfs-failisüsteemis, mis on paigaldatud kataloogi / data järgmiselt:
$ sudo btrfs puhastab algust / andmeid
Süsteemile Btrfs installitud failisüsteemis praegu töötava Btrfs-puhastamisprotsessi tühistamiseks või peatamiseks / andmed kataloogi, käivitage järgmine käsk:
$ sudo btrfs scrub cancel / data
Käimasolev Btrfs puhastamise protsess tuleks tühistada või peatada.
Nagu näete, on Btrfs puhastamise olek katkestati. Niisiis, Btrfsi puhastamise protsess ei tööta enam.
$ sudo btrfs puhastamise olek / andmed
Tühistatud või peatatud Btrfs-puhastamisprotsessi jätkamiseks käivitage järgmine käsk:
$ sudo btrfs scrub resume / data
Btrfsi puhastamisprotsessi tuleks jätkata.
Nagu näete, on Btrfs puhastamise olek nüüd jooksmine. Niisiis, Btrfs puhastamise protsess jätkub.
$ sudo btrfs puhastamise olek / andmed
Kui Btrfs puhastamise protsess on lõpule jõudnud, tuleks Btrfs puhastamise olekuks muuta valmis.
$ sudo btrfs puhastamise olek / andmed
Järeldus
Selles artiklis olen teile näidanud, kuidas töötada Btrfs-puhastustööriistaga Btrfs-i mitme seadme failisüsteemi või RAID-i rikutud andmete / metaandmete plokkide leidmiseks ja parandamiseks. Olen teile näidanud, kuidas tühistada / peatada ja jätkata Btrfs-i puhastamise protsessi, kui see on samuti alanud.