Gestion d'un disque dur externe en ext4

Si votre disque dur externe n'est utilisé qu'à partir d'un système Linux vous avez tout intérêt à le formater en ext4 pour bénéficier du système d'extents limitant le phénomène de fragmentation. Il est également possible d'utiliser reiser4 (en mode extents) ou btrfs mais ces solutions sont encore expérimentales.

On notera toutefois qu'un mot de passe root vous sera demandé au montage, ce qui peut paraître fastidieux dans le cadre d'un usage domestique. Voici trois solutions pour éviter cela.

Montage sans mot de passe pour un utilisateur donné

Éditer ou créer /etc/polkit-1/rules.d/10-mount-system.rules

polkit.addRule (function (a,s) {
if (a.id == 'org.freedesktop.udisks2.filesystem-mount-system' && s.user == 'UserName')
return polkit.Result.YES;
});

Vérification (les modifications dans polkit s'appliquent immédiatement, pas besoin de relancer quoique ce soit) :

pkcheck --action-id org.freedesktop.udisks2.filesystem-mount-system --process $$ && echo Succès

Montage pour tous les utilisateurs du groupe storage

Éditer ou créer /etc/polkit-1/rules.d/10-mount-system.rules

polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
action.id == "org.freedesktop.udisks2.filesystem-mount") &&
subject.isInGroup("storage")) {
return polkit.Result.YES;
}
});
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.udisks.filesystem-mount-system-internal") &&
subject.isInGroup("storage")) {
return polkit.Result.YES;
}
});

Pour vérifier les groupes auxquels vous appartenez :

groups

Pour ajouter l'utilisateur lapin au groupe storage :

usermod -G storage -a lapin

Ajout dans le /etc/fstab

Il est tout à fait possible de monter automatiquement un disque dur externe dans le fstab à condition d'utiliser l'option nofail pour ne pas subir de blocage au démarrage si le disque est absent. Pour éviter tout soucis de changement de désignation dans /dev il est conseillé de désigner la partition par son UUID

Pour connaitre l'UUID d'une partition :

ls -l /dev/disk/by-uuid/

La ligne dans mon fstab :

UUID=f4cd4d67-b9fc-4f44-a07a-1c0199520c3f  /media/E500  ext4  rw,nosuid,nodev,user,relatime,data=ordered,nofail  0 2

Notez l'option 2 dans la dernière colonne qui permet le contrôle automatique par fsck. Mettez 0 si vous préférez le faire manuellement. Pour modifier la fréquence des contrôles voir tune2fs

Vus : 2442
Publié par Vincent Gay : 38