J'ai lu dans quelques endroits que umount -l
est dangereux:
Dans une réponse de @cas :
n'utilisez pas l'option
--lazy
umount
si vous vous souciez du moment où le lecteur externe peut être débranché en toute security
Un commentaire de @frostschutz :
umount --lazy
n'est pas sûr et ne peut pas être sécurisé. […]
Ce commentaire util-linux
de Ruediger Meier :
Vous devriez éviter d'utiliser
umount -l
du tout. Il suffit de tuer tous les process qui utilisent/tmp/mountpoint
, puis montez sans l'option-l
.
Pourquoi umount -l
dangereux / dangereux?
Y a-t-il un moyen de le rendre sécuritaire?
Il y a un faux sentiment de security : il semble que le système de files a été démonté, mais en réalité, il n'a été caché que dans l'espace de noms / hiérarchie du file.
Cela signifie que si vous umount -l /media/hdd
vous ne pourrez plus accéder à /media/hdd/dir/file
(nom de path absolu), mais si vous avez un process avec le directory de travail /media/hdd
pour créer de nouveaux process qui peuvent lire / écrire ./dir/file
(path relatif).
Si vous tentez de démonter l'appareil, vous obtiendrez un message déroutant:
# umount --force --all-targets /dev/sdb2 umount: /dev/sdb2: not mounted
Cela donne l'printing que l'appareil n'a pas été monté, mais il peut toujours y avoir des process d'écriture sur le disque.
Comme il existe diverses situations non évidentes pouvant causer le blocage de umount , le système de files peut ne pas être démonté même si lsof +f -- /dev/device
ne montre rien.
Vous ne saurez jamais si le système de files se démonte réellement. Il n'y a aucun moyen de le savoir.
Si vous ne umount -l
un disque amovible, vous êtes dans une impasse: vous ne pouvez pas être sûr que toutes datatables en attente ont été écrites sur le disque.
Le mieux que vous puissiez faire après un umount -l
est de s'assurer que toutes les écritures sont terminées et d'éviter d'écrire à l'avenir , mais vous ne pouvez toujours pas garantir qu'il a été démonté.
Avec des périphériques amovibles, si le périphérique n'est pas démonté correctement, un comportement étrange peut se produire la prochaine fois qu'il est branché:
Le périphérique recevra un nom de périphérique incrémenté, par exemple /dev/sdb
devient /dev/sdc
. Les messages du journal du kernel peuvent toujours se référer à /dev/sdb
même si ce périphérique n'existe plus en tant que file sous /dev
. (La seule façon que je sache pour résoudre ce problème est de redémarrer.)