doc:appunti:linux:sa:raid
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionNext revisionBoth sides next revision | ||
doc:appunti:linux:sa:raid [2008/01/03 16:13] – external edit 127.0.0.1 | doc:appunti:linux:sa:raid [2022/01/31 11:32] – [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 di mdadm ==== | + | |
- | + | ||
- | Invece dei vecchi raidtools si usa il nuovo '' | + | |
=== 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 25: | ||
</ | </ | ||
+ | === 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 | |
+ | </ | ||
==== Checking health of a RAID volume ==== | ==== Checking health of a RAID volume ==== | ||
Line 80: | Line 75: | ||
* http:// | * http:// | ||
* http:// | * http:// | ||
+ | |||
+ | ==== resync=PENDING ==== | ||
+ | |||
+ | If a volume remains in a **'' | ||
+ | |||
+ | < | ||
+ | mdadm --readwrite /dev/md1 | ||
+ | </ | ||
==== GRUB savedefault and RAID mismatches ==== | ==== GRUB savedefault and RAID mismatches ==== | ||
Line 121: | Line 124: | ||
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 150: | Line 191: | ||
debugfs: | debugfs: | ||
</ | </ | ||
+ | |||
+ | ===== Passaggio da ext3 a ext2 ===== | ||
+ | |||
+ | Per convertire un filesystem **ext3** in **ext2** si deve rimuovere il journal, per tornare ad ext3 basta ricrearlo (tutte qui le differenze? | ||
+ | [[http:// | ||
+ | |||
+ | < | ||
+ | tune2fs -O ^has_journal /dev/md3 | ||
+ | </ | ||
+ | |||
+ | Per creare nuovamente il journal: | ||
+ | |||
+ | < | ||
+ | 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