doc:appunti:linux:sa:raid
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
doc:appunti:linux:sa:raid [2014/02/05 17:33] – [Checking health of a RAID volume] niccolo | doc:appunti:linux:sa:raid [2022/01/31 11:44] – [Gestione RAID con mdadm] niccolo | ||
---|---|---|---|
Line 5: | Line 5: | ||
==== Cambiare dimensione a una partizione ext3 ==== | ==== Cambiare dimensione a una partizione ext3 ==== | ||
- | < | + | Vedere |
- | resize2fs -p /dev/hda7 < | + | |
- | </ | + | |
- | + | ||
- | Vedere | + | |
- | + | ||
- | Forse conviene che la partizione non sia montata? | + | |
===== Parametri Boot (per GRUB o LILO) relativi al RAID ===== | ===== Parametri Boot (per GRUB o LILO) relativi al RAID ===== | ||
Line 21: | Line 15: | ||
</ | </ | ||
- | ===== Gestione | + | ===== Gestione RAID con mdadm ===== |
- | ==== Utilizzo | + | === Creazione |
- | Invece dei vecchi raidtools si usa il nuovo '' | + | Con il comando seguente viene creato e immediatamente attivato un volume **RAID1** in modalità **degradata**, |
+ | |||
+ | < | ||
+ | mdadm --create /dev/md10 --run --level=1 --raid-devices=2 /dev/sdb3 missing | ||
+ | </ | ||
=== Aggiungere una partizione ad un volume RAID === | === Aggiungere una partizione ad un volume RAID === | ||
+ | |||
+ | Per aggiungere un componente ad un volume RAID, ad esempio per ripristinare un volume degradato: | ||
< | < | ||
Line 33: | Line 33: | ||
</ | </ | ||
+ | === Avviare un volume in modalità degradata === | ||
+ | Se non è possibile montare un volume RAID nella sua completezza (ad esempio perché un componente di un RAID1 è guasto), il volume non viene attivato automaticamente. Per forzare l' | ||
+ | **ATTENZIONE**! Senza il parametro '' | ||
+ | < | ||
+ | mdadm /dev/md17 --assemble /dev/sdc7 --run | ||
+ | </ | ||
+ | === Rimuovere un componente da un volume RAID === | ||
+ | Per rimuovere un componente, ad esempio da un volume RAID1, è necessario prima marcarlo come guasto (fail), dopo sarà possibile rimuoverlo dal RAID, che continuerà a lavorare in modalità degradata: | ||
+ | |||
+ | < | ||
+ | mdadm --manage /dev/md0 --fail /dev/sdb2 | ||
+ | mdadm --manage /dev/md0 --remove /dev/sdb2 | ||
+ | </ | ||
Line 74: | Line 87: | ||
Read also man **md(4)** and **''/ | Read also man **md(4)** and **''/ | ||
+ | |||
+ | ==== Managing bad blocks ==== | ||
+ | |||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
==== resync=PENDING ==== | ==== resync=PENDING ==== | ||
Line 82: | Line 101: | ||
mdadm --readwrite /dev/md1 | mdadm --readwrite /dev/md1 | ||
</ | </ | ||
- | ==== Managing bad blocks ==== | ||
- | |||
- | * http:// | ||
- | * http:// | ||
- | * http:// | ||
==== GRUB savedefault and RAID mismatches ==== | ==== GRUB savedefault and RAID mismatches ==== | ||
Line 128: | Line 142: | ||
Obviously you need to change this parameter **before** the md kernel subsystem assembles the RAID volumes. | Obviously you need to change this parameter **before** the md kernel subsystem assembles the RAID volumes. | ||
+ | ==== Mdadm problem with Debian Jessie and degraded raid1 ==== | ||
+ | **Regression - mdadm in jessie will not boot degraded raid1 array**. See Debian bug [[https:// | ||
+ | < | ||
+ | cd / | ||
+ | cp / | ||
+ | patch --verbose --ignore-whitespace <<' | ||
+ | --- mdadm | ||
+ | +++ mdadm | ||
+ | @@ -76,7 +76,15 @@ | ||
+ | if $MDADM --assemble --scan --run --auto=yes${extra_args: | ||
+ | | ||
+ | else | ||
+ | - log_failure_msg " | ||
+ | + log_warning_msg " | ||
+ | + for dev in $(cat / | ||
+ | + log_begin_msg " | ||
+ | + if $MDADM --run $dev; then | ||
+ | + verbose && log_success_msg " | ||
+ | + else | ||
+ | + log_failure_msg " | ||
+ | + fi | ||
+ | + done | ||
+ | fi | ||
+ | | ||
+ | |||
+ | EndOfPatch | ||
+ | update-initramfs -u | ||
+ | </ | ||
+ | |||
+ | Somewhere on the net there is a suggestion to use the '' | ||
+ | |||
+ | The problem is that the initramfs hook script provided by the mdadm package does: | ||
+ | |||
+ | < | ||
+ | mdadm --assemble --scan --run --auto=yes | ||
+ | </ | ||
+ | |||
+ | which actually does not run the array if it is degraded (where the previous start was not). | ||
===== Filesystem has unsupported feature(s) ===== | ===== Filesystem has unsupported feature(s) ===== | ||
Line 172: | Line 224: | ||
tune2fs -j /dev/md3 | tune2fs -j /dev/md3 | ||
</ | </ | ||
+ | |||
+ | ===== Forzare fsck al reboot ===== | ||
+ | |||
+ | Su un server remoto o privo di monitor/ | ||
+ | |||
+ | Fino a **Debian 7 Wheezy** era sufficiente impostare in **''/ | ||
+ | |||
+ | < | ||
+ | FSCKFIX=yes | ||
+ | </ | ||
+ | |||
+ | Da quando si usa il sistema di //init// **systemd** (cioè da **Debian 8 Jessie**) tale file non viene più preso in considerazione, | ||
+ | |||
+ | < | ||
+ | GRUB_CMDLINE_LINUX=" | ||
+ | </ | ||
+ | |||
+ | Controllare anche in **''/ | ||
+ | |||
+ | Con tune2fs è possibile verificare ogni quanti reboot viene fatto il check e quando è stato fatto l' | ||
+ | |||
+ | < | ||
+ | tune2fs -l /dev/sda3 | ||
+ | ... | ||
+ | Mount count: | ||
+ | Maximum mount count: | ||
+ | Last checked: | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Un metodo di forzare il check è aumentare artificialmente il Mount count: | ||
+ | |||
+ | < | ||
+ | tune2fs -C 100 /dev/sda3 | ||
+ | </ | ||
+ | |||
+ | Oppure creare il file | ||
+ | |||
+ | < | ||
+ | touch /forcefsck | ||
+ | </ | ||
+ | |||
+ | Un altro sistema è forzare il check sulla richiesta di reboot: | ||
+ | |||
+ | < | ||
+ | shutdown -rF now | ||
+ | </ | ||
+ | |||
+ | ===== Filesystem Features ===== | ||
+ | |||
+ | Se ci sono differenze fra il sistema su cui si esegue il **mkfs.ext4** e il sistema su cui si esegue il **grub-install**, | ||
+ | |||
+ | < | ||
+ | grub-install /dev/sda | ||
+ | Auto-detection of a filesystem of /dev/sda2 failed | ||
+ | </ | ||
+ | |||
+ | Il caso visto sopra è dovuto al fatto che il filesystem è stato creato sull' | ||
+ | |||
+ | Con **%%tune2fs -l%%** è possibile vedere le // | ||
+ | |||
+ | < | ||
+ | mkfs.ext4 -O ' | ||
+ | </ | ||
+ | |||
+ |
doc/appunti/linux/sa/raid.txt · Last modified: 2024/04/17 12:44 by niccolo