XFS

XFS sistēmas labošana

XFS sistēmas labošana
Failu sistēmas ir veidotas virs uzglabāšanas ierīcēm. Ir RAID kontrolieri un disku kontrolieri, kuriem katram ir sava mazā programmaparatūra. Lai uzlabotu sniegumu, ir kešatmiņas. Ir diski ar dažādu sektoru izmēriem un ir diski, kas ziņo par atšķirīgu sektora lielumu atkarībā no tā, kā jūs uzdodat jautājumu.

Tā kā ir tik daudz dažādu daļu, kas veido tipisku glabāšanas kaudzīti, ir brīnums, ka kaut kas vispār darbojas. Tomēr lietas lielākoties darbojas labi. Dažas reizes, kad kaut kas noiet greizi, mums ir nepieciešami tādi utilīti kā xfs_repair, lai mūs izkļūtu no jucekļa.

Lietas var noiet greizi, kad rakstāt failu un strāva tiek pārtraukta, vai ir kodola panika. Pat diskā neaktivizēti dati laika gaitā var samazināties, jo var mainīties atmiņas elementu fiziskā struktūra, to sauc par bitu puvi. Visos gadījumos mums ir nepieciešams mehānisms:

  1. Datu, kas tiek lasīti, pārbaude ir tie paši dati, kas tika rakstīti pēdējoreiz. To īsteno, izveidojot katra datu bloka kontrolsummu un salīdzinot šī bloka kontrolsummu, kad dati tiek lasīti. Ja kontrolsumma sakrīt, dati nav mainīti
  2. Veids, kā rekonstruēt korumpētus vai zaudētus datus, izmantojot spoguļa bloku vai paritātes bloku.

Smilškastes iestatīšana

Iestatīsim testbench, lai palaistu xfs labošanas rutīnu, nevis izmantotu faktiskos diskus ar vērtīgiem datiem. Ja jums jau ir bojāta failu sistēma, varat izlaist šo sadaļu un pāriet pa labi uz nākamo. Šis testēšanas stends sastāv no Ubuntu VM, kuram ir pievienots virtuālais disks, nodrošinot neapstrādātu krātuvi. Varat izmantot VirtualBox, lai izveidotu VM un pēc tam izveidotu papildu disku, kuru pievienot VM.

Vienkārši dodieties uz sava VM iestatījumiem un zem Iestatījumi → Krātuve sadaļā jūs varat pievienot jaunu disku SATA kontrolierim, varat izveidot jaunu disku. Kā parādīts zemāk, taču, veicot to, pārliecinieties, vai jūsu VM ir izslēgts.

Kad jaunais disks ir izveidots, ieslēdziet VM un atveriet termināli. Komanda lsblk uzskaita visas pieejamās bloķēšanas ierīces.

$ lsblk
sda 8: 0 0 60G 0 disks
├─sda1 8: 1 0 1M 0 daļa
└─sda2 8: 2 0 60G 0 daļa /
sdb 8:16 0 100G 0 disks
sr0 11: 0 1 1024M 0 rom

Neatkarīgi no galvenā bloka ierīces sda, tur, kur ir instalēta OS, tagad ir jauna SDB ierīce. Ātri izveidosim no tā nodalījumu un formatēsim to ar XFS failu sistēmu.

Atveriet dalītu utilītu kā root lietotāju:

$ šķīrās - optimāls / dev / sdb

Vispirms izveidosim nodalījumu tabulu, izmantojot mklabel, pēc tam izveidojot vienu nodalījumu no visa diska (kura izmērs ir 107 GB). Pārliecinieties, vai nodalījums ir izveidots, uzskaitot to, izmantojot komandu print:

(šķīrās) mklabel gpt
(šķīries) mkpart primārais 0107
(šķīrās) druka
(šķīrās) atmest

Labi, tagad mēs varam redzēt, izmantojot lsblk, ka zem sdb ierīces ir jauna bloķēšanas ierīce ar nosaukumu sdb1.

Formatēsim šo krātuvi kā xfs un pievienosim to direktorijā / mnt. Atkal veiciet šādas darbības kā saknes:

$ mkfs.xfs / dev / sdb1
$ mount / dev / sdb1 / mnt
$ df -h

Pēdējā komanda izdrukās visas pievienotās failu sistēmas, un jūs varat pārbaudīt, vai / dev / sdb1 ir uzstādīts uz / mnt.

Tālāk mēs uzrakstām virkni failu kā fiktīvus datus, lai šeit defragmentētu:

$ dd, ja = / dev / urandom no = / mnt / myfile.txt skaits = 1024 bs = 1024

Iepriekš minētā komanda uzrakstīs failu myfile.txt no 1 MB. Ja vēlaties, varat automātiski ģenerēt vairāk šādu failu, izplatīt tos dažādos direktorijos xfs failu sistēmā (uzstādīts pie / mnt) un pēc tam pārbaudīt sadrumstalotību. Tam izmantojiet bash vai pitonu vai jebkuru citu iecienīto skriptu valodu.

Kļūdu pārbaude un labošana

Datu bojājumi var bez klusēšanas ielīst jūsu diskos bez jūsu ziņas. Ja datu bloks netiek nolasīts un kontrolsumma netiek salīdzināta, kļūda var parādīties nepareizā laikā. Kad kāds mēģina piekļūt datiem reāllaikā. Tā vietā ir ieteicams rūpīgi pārbaudīt visus datu blokus, lai bieži pārbaudītu bitu puvi vai citas kļūdas.

Lietotnei xfs_scrub ir paredzēts veikt šo uzdevumu jūsu vietā. Daļēji iedvesmojoties no OpenZFS skrubēšanas komandas, šī eksperimentālā funkcija ir pieejama tikai xfsprogs 4. versijā.15.1-1ubuntu1, kas nav stabils laidiens. Ja tas kļūdaini atklāj kļūdu, tas var maldināt jūs novērst datu korupciju, nevis to novērst! Tomēr, ja vēlaties ar to eksperimentēt, varat to izmantot pievienotā failu sistēmā, izmantojot komandu:

$ xfs_scrub / dev / sdb1

Pirms mēģināt salabot bojātu failu sistēmu, vispirms tā būs jānoņem. Tas tiek darīts, lai apturētu lietojumprogrammu nejaušu rakstīšanu failu sistēmā, kad to vajadzētu atstāt vienu.

$ umount / dev / sdb1

Kļūdu labošana ir tikpat vienkārša kā darbināšana:

$ xfs_repair / dev / sdb1

Būtiskie metadati vienmēr tiek glabāti kā vairākas kopijas, pat ja jūs neizmantojat RAID un ja ar superbloku vai inodiem ir noticis kaut kas nepareizs, ar šo komandu jūs, visticamāk, var novērst šo problēmu.

Nākamie soļi

Ja bieži redzat datu korupciju (vai pat vienu reizi, ja izmantojat kaut ko kritiski svarīgu), apsveriet iespēju aizstāt savus diskus, jo tas varētu būt agrīns diska, kas drīz mirs, indikators.

Ja kontrolieris neizdodas vai RAID karte ir atteikusies no dzīves, tad neviena programmatūra pasaulē nevar izlabot failu sistēmu. Jūs nevēlaties dārgus datu atgūšanas rēķinus un nevēlaties arī ilgu dīkstāvi, tāpēc sekojiet šiem SSD diskiem un vērpšanas plāksnēm!

Bezmaksas un atvērtā koda spēļu dzinēji Linux spēļu izstrādei
Šis raksts aptvers bezmaksas un atvērtā koda spēļu motoru sarakstu, kurus var izmantot, lai izstrādātu 2D un 3D spēles Linux. Šādu spēļu dzinēju ir da...
Tomb Raider for Linux apmācība
Tomb Raider ēna ir divpadsmitais papildinājums Tomb Raider sērijai - darbības piedzīvojumu spēļu franšīzei, kuru izveidoja Eidos Montreal. Spēli gan k...
Kā palielināt FPS Linux?
FPS apzīmē Kadri sekundē. FPS uzdevums ir izmērīt kadru ātrumu video atskaņošanā vai spēļu izrādēs. Vienkāršos vārdos nepārtrauktu pilnekrāna attēlu s...