Btrfs

Btrfs-saldo gebruiken?

Btrfs-saldo gebruiken?
Het Btrfs-bestandssysteem heeft ingebouwde ondersteuning voor meerdere apparaten, zodat u er verschillende RAID-niveaus mee kunt creëren.

Nadat u een Btrfs RAID hebt gemaakt, kunt u meer opslagapparaten aan de RAID toevoegen om de RAID uit te breiden. Maar zodra u meer opslagapparaten aan de RAID hebt toegevoegd, zal Btrfs de bestaande gegevens/metagegevens/systeemgegevens niet automatisch naar de nieuwe opslagapparaten verspreiden. Het is dus mogelijk dat u niet de gewenste doorvoer (lees-/schrijfsnelheid) uit de RAID haalt en dat de nieuwe opslagapparaten mogelijk niet worden gevuld met de vereiste redundante gegevens. Het is dus mogelijk dat de RAID-array het gewenste aantal schijffouten niet overleeft.

Om deze problemen op te lossen, biedt het Btrfs-bestandssysteem een ​​ingebouwde balanceringstool. Het Btrfs-balanshulpprogramma verspreidt de gegevens/metagegevens/systeemgegevens van de bestaande opslagapparaten van de RAID naar de nieuw toegevoegde opslagapparaten.

In dit artikel laat ik je zien hoe je het Btrfs-balanshulpprogramma kunt gebruiken om de gegevens/metadata/systeemgegevens van de bestaande opslagapparaten van de RAID te verspreiden naar de nieuw toegevoegde opslagapparaten. Dus laten we beginnen!

Afkortingen

INVAL - Redundante reeks goedkope/onafhankelijke schijven
MB - Megabyte
NL - Gigabyte

Vereisten

Om dit artikel te volgen, heb je een werkende Btrfs RAID of multi-apparaat setup nodig.

Ik heb een Btrfs RAID gemaakt in RAID-0 configuratie met 4 opslagapparaten sdb, sdc, sdd, en sde.

Zoals je kunt zien, is het Btrfs-bestandssysteem toegewezen 1 GB schijfruimte voor data1 256 MB schijfruimte voor metagegevens2, en 4 MB schijfruimte voor systeemgegevens3 van elk van de opslagapparaten in de RAID.

Over 18.75 GB uit 20 GB is nog steeds niet toegewezen4 van elk van de opslagapparaten van de RAID.

$ sudo btrfs bestandssysteemgebruik /data

Een script schrijven om willekeurige bestanden te genereren

Om u te laten zien hoe het Btrfs-balanshulpprogramma werkt, moeten we enkele willekeurige bestanden genereren om het Btrfs-bestandssysteem te vullen. Laten we een shellscript maken dat precies dat doet.

Maak een nieuw shellscript genfiles.sh in de /usr/local/bin/ directory als volgt:

$ sudo nano /usr/local/bin/genfiles.sh

Typ de volgende regels codes in de genfiles.sh shell-script.

#!/bin/bash
terwijl het waar is
Doen
FILENAME=$(uuidgen)
echo "[Creëren] $FILENAME"
dd if=/dev/random of=$FILENAME bs=1M count=256 status=progress
echo "[Gemaakt] $FILENAME"
gedaan

Als u klaar bent, drukt u op + X gevolgd door Y en om de te redden genfiles.sh shell-script.

De genfiles.sh shell-script voert een oneindige terwijl lus.

terwijl het waar is
Doen
# andere codes
gedaan

De volgende regel genereert een UUID met behulp van de uuidgen commando en slaat de UUID op in de BESTANDSNAAM variabele.

De volgende regel drukt een bericht af op de console vóór het bestand: BESTANDSNAAM is gegenereerd.

De volgende regel genereert een nieuw willekeurig bestand: BESTANDSNAAM de ... gebruiken dd opdracht. Het bestand zal 256 MB groot zijn.

De volgende regel drukt een bericht af op de console na het bestand BESTANDSNAAM is gegenereerd.

Voeg uitvoertoestemming toe aan de genfiles.sh shell-script als volgt:

$ sudo chmod +x /usr/local/bin/genfiles.sh

De genfiles.sh shellscript zou nu toegankelijk moeten zijn zoals elk ander commando command.

$ welke genfiles.sh

Willekeurige bestanden genereren in het Btrfs-bestandssysteem

We willen willekeurige bestanden genereren in de Btrfs RAID. Laten we zeggen dat de Btrfs RAID is gemonteerd op de /gegevens map.

Navigeer naar de /gegevens directory waar de Btrfs RAID als volgt is aangekoppeld:

$ cd /gegevens

Zoals je kunt zien, zijn er op dit moment geen bestanden beschikbaar in mijn Btrfs RAID.

$ ls -lh

Om enkele willekeurige bestanden in de huidige werkmap te genereren (/gegevens directory in dit geval), voer de genfiles.sh shell-script als volgt:

$ sudo-genbestanden.sh

De genfiles.sh shellscript moet beginnen met het genereren van willekeurige bestanden in de /gegevens map.

De genfiles.sh script genereert willekeurige bestanden. Laat het script een paar minuten draaien, zodat het ongeveer 2-3 GB schijfruimte van de Btrfs RAID vult.

Wanneer u de wilt stoppen genfiles.sh shell-script, druk op + C.

Zoals u kunt zien, worden enkele willekeurige bestanden gegenereerd in de Btrfs RAID.

$ ls -lh


Zoals u kunt zien, heeft de Btrfs RAID 2 GB toegewezen aan elk van de opslagapparaten die aan de RAID zijn toegevoegd. Voorheen wees de Btrfs RAID 1 GB toe van elk van de opslagapparaten die aan de RAID werden toegevoegd.

De niet-toegewezen schijfruimte is teruggebracht van 18.75 GB naar 17.75 GB in alle opslagapparaten van de RAID.

$ sudo btrfs bestandssysteemgebruik /data

Een ander opslagapparaat toevoegen aan de Btrfs RAID

Om u te laten zien hoe u een Btrfs RAID balanceert na het toevoegen van een nieuw opslagapparaat, moet u er een nieuw opslagapparaat aan toevoegen.

Ik heb een nieuwe HDD toegevoegd sdf op mijn computer, die ik wil toevoegen aan de Btrfs RAID gemonteerd op de /gegevens map. Laten we eens kijken hoe het te doen.

$ sudo lsblk -e7

Navigeer naar een andere map (i.e., HUIS map) van de /gegevens map als volgt:

$ cd

Het opslagapparaat toevoegen sdf naar de Btrfs RAID gemonteerd op de /gegevens map, voer de volgende opdracht uit:

$ sudo btrfs apparaat toevoegen /dev/sdf /data

Zoals u kunt zien, is het opslagapparaat sdf wordt toegevoegd aan de Btrfs RAID. De RAID-grootte is toegenomen van 80 GB naar 100 GB.

$ sudo btrfs bestandssysteemgebruik /data

Balanceren van de Btrfs RAID

Zoals u kunt zien, is het nieuw toegevoegde opslagapparaat (sdf) van de RAID (gemonteerd op de /gegevens directory) heeft 20 GB niet-toegewezen, en de andere opslagapparaten (sdb, sdc, sdd, sde, enz.) hebben 17.75 GB niet-toegewezen.

$ sudo btrfs bestandssysteemgebruik /data

De gegevens1, metagegevens2, en systeemgegevens3 zijn alleen beschikbaar op de bestaande opslagapparaten van de RAID, niet op het nieuw toegevoegde opslagapparaat.

Om de gegevens, metagegevens en systeemgegevens op alle opslagapparaten van de RAID (inclusief het nieuw toegevoegde opslagapparaat) die op de /gegevens map, voer de volgende opdracht uit:

$ sudo btrfs saldo start --volledige saldo /data

Het kan even duren om de gegevens, metagegevens en systeemgegevens op alle opslagapparaten van de RAID te verspreiden als deze veel gegevens bevat.

Zodra de opslagapparaten van de RAID goed gebalanceerd zijn, zou u het volgende bericht moeten zien:.

Zoals u kunt zien, heeft het nieuw toegevoegde opslagapparaat, nadat de balansbewerking is voltooid, een gelijke hoeveelheid niet-toegewezen schijfruimte als de andere opslagapparaten van de RAID.

Na de balansbewerking wordt een gelijke hoeveelheid schijfruimte als de andere opslagapparaten van de RAID toegewezen voor de gegevens, metagegevens en systeemgegevens van het nieuw toegevoegde opslagapparaat (sdf) van de RAID.

Conclusie

In dit artikel heb ik het doel van het Btrfs-balanshulpprogramma besproken, evenals hoe een Btrfs RAID- of multi-apparaat bestandssysteem te balanceren na het toevoegen van nieuwe opslagapparaten aan de RAID of multi-apparaat bestandssysteem.

Microsoft Sculpt Touch draadloze muis Review
Ik las onlangs over de Microsoft Sculpt Touch draadloze muis en besloot hem te kopen. Nadat ik het een tijdje had gebruikt, besloot ik mijn ervaring e...
AppyMouse trackpad en muisaanwijzer op het scherm voor Windows-tablets
Tabletgebruikers missen vaak de muisaanwijzer, vooral wanneer ze gewend zijn om de laptop te gebruiken. Het touchscreen Smartphones en tablets hebben ...
Middelste muisknop werkt niet in Windows 10
De middelste muis knop helpt u door lange webpagina's en schermen met veel gegevens te bladeren. Als dat stopt, zul je uiteindelijk het toetsenbord ge...