Outils pour utilisateurs

Outils du site


disk_trucs

Disk et Trucs

chattr et lsattr

Proteger un fichier de l'ecriture, même root !

# chattr +i /etc/resolv.conf

Et voila: personne ne pourra modifier le fichier.

Il existe aussi un attribut pour “compresser” a la volée un fichier … pas tésté.

Restaurer une partition NTFS endomagée et un secteur de boot

Suivre ce lien .

tune2fs

Reserved block (for root)

Par defaut, lorsqu'on créé une partition, 5% de l'espace disk est réservé à root.
C'est bien pour lui, mais ca peut être trop.

“5%” de 250 Go, ca représente ⇒ 12.5 Go !
De quoi re-installer 10 fois le système Debian Etch !

Etat des lieux

Ce que dit “tune2fs” :

# tune2fs -l /dev/sda1
... <snip> ...
Block count:              60386319
Reserved block count:     3019315
... <snip> ...
Block size:               4096
... <snip> ...

Soit:

  • Espace disk total: 60386319*4096 ⇒ 247342362624 octets ⇒ 247.34 Go ( car divisé par 1000^3 )
  • Espace libre: 3019315*4096 ⇒ 12367114240 octets (12.37 Go) ⇒ ( 12367114240/247342362624 ) *100 = 5 %

Ok.

Et “fdisk” :

# fdisk -u -l /dev/sda
Disk /dev/sda: 250.0 GB, 250058268160 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488395055 sectors
Units = sectors of 1 * 512 = 512 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63   483090614   241545276   83  Linux
/dev/sda2       483090615   488392064     2650725    5  Extended
/dev/sda5       483090678   488392064     2650693+  82  Linux swap / Solaris

Soit:

  • Espace disk total: (483090614-63)+1 ⇒ 483090552 secteurs ⇒ 247342362624 octets ⇒ 247.34 Go

Ok. On parle bien de la même chose.

moins de reserve

Pour réduire le nombre de “block” reservé:

En pourcentage:
(A 2% pour l'exemple)

tune2fs -m 2 /dev/sda1
tune2fs 1.40-WIP (14-Nov-2006)
Initialisation du pourcentage de blocs réservés à 2% (1207726 blocs)

Si on utilise les bases précédentes, cela représente: 2% de 247.34 ⇒ ( 247342362624 * 2 )/100 ⇒ 4946847252 octets ⇒ 4.60 Go (ou 1207726 blocks, d'aprés tune2fs.
C'est bien suffisant !

En “block”, on aurait utilisé “-r”.

Avant:
df disait:

Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur
/dev/sda1             227G  190G   26G  89% /

Aprés:
df dit:

Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur
/dev/sda1             227G  190G   33G  86% /

fsck

Comme le kernel (lenny) ne fonctionne pas correctement avec l'horloge de mon PC, il y a parfois des “fsck” au boot inapproprié (et long ) !

Voir l'etat des reglages du disk:

# tune2fs -l /dev/sda1
...
Mount count:              6
Maximum mount count:      25
Last checked:             Fri Mar 28 09:35:51 2008
Check interval:           15552000 (6 months)
Next check after:         Wed Sep 24 10:35:51 2008
...

Modifier afin qu'il n'y ait plus fsck basé sur l'interval de temps:

# tune2fs -i 0 /dev/sda1

Et voila !
Vérifions:

# tune2fs -l /dev/sda1
...
Mount count:              6
Maximum mount count:      25
Last checked:             Fri Mar 28 09:35:51 2008
Check interval:           0 (<none>)

Check Disk

Classique

# fsck /dev/sdf1

ou

# fsck.ext3 /dev/sdf1

Forcer verification 'physique' en même temps (c'est long):

# fsck /dev/sdf1 -p -c -f

(Je ne suis pas certains de toutes les options…)

On peut aussi faire un “fsck” sur une image disk, sans la mounter:

# fsck.ext3 ./disk.part1

Et forcer le check malgré qu'il parait clean:

# fsck.ext3 ./disk.part1 -f

Plus bas

# badblocks /dev/sdf1

Plus visuel:

# badblocks -v /dev/sdf1
Vérification des blocs 0 à 38684487
Vérification des blocs défectueux (test en mode lecture seule) : done
Passe complétée, 0 blocs défectueux repérés.

Test de lecture/ecriture non destructif:
(c'est long…)

# badblocks -s -n -v /dev/sdf1
Vérification des blocs défectueux dans un mode non destructif de lecture-
écriture
Du bloc 0 au bloc 38684488
Vérification des blocs défectueux (test non destructif de lecture-écriture)
Test en cours avec un motif aléatoire : done
Passe complétée, 0 blocs défectueux repérés.
#

Backup

copie

Copie simple:

# dd if=/dev/sdf1 of=./disk.img bs=4k

gzip

Copie avec compression:

# dd if=/dev/sdf1 bs=4k | gzip > ./disk.gz

Restorer en decompressant:

# gunzip ./disk.gz - | dd of=/dev/sdf1

(En créant la partition a l'identique au préalable, c'est mieux)

Restorer dans un fichier:

# cat ./disk.gz | gunzip >disk.part1

Et mounter le fichier:

# mount -t ext3 ./disk.part1 /mnt/iso -o loop

Grub et Trucs

You shouldn't call /sbin/update-grub

Intriguer que vous êtes par ce message:

Using mkinitramfs-kpkg to build the ramdisk.
Running postinst hook script /sbin/update-grub.
You shouldn't call /sbin/update-grub. Please call /usr/sbin/update-grub instead!

Il faut simplement editer le fichier “/etc/kernel-img.conf” comme suit:

# vi /etc/kernel-img.conf
...

Remplacer les lignes :

postinst_hook = update-grub
postrm_hook   = update-grub

Par :

postinst_hook = /usr/sbin/update-grub
postrm_hook   = /usr/sbin/update-grub
disk_trucs.txt · Dernière modification : 2011/01/02 21:02 de thierry