Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 07-03-2018 13:22:26

loularsen
Membre
Lieu : Lanzarote
Distrib. : stretch + backports
Noyau : Linux 4.14.0-0.bpo.2-amd64
(G)UI : xfce
Inscription : 26-02-2018

[Résolu] lancer umount si le disque n'est plus en écriture

Bonjour à tous.
Question qui pourrait sembler basique.
Dans un script de backup vers un HD externe (avec rsync) lancé par anacron, je voudrai démonter le disque en fin de script mais en m'assurant qu'il n'est plus en écriture.
Existe t'il un moyen de vérifier qu'un disque n'est plus en écriture avant de lancer umount ?
Mon doute est le suivant :
Si le disque est encore en écriture, la commande umount est elle:
1/  arrêtée (abandonnée);
2/  juste ajournée , puis reprise en fin d'écriture.
3/  forcée, ce qui rendrait le backup inutilisable.

Merci.

Dernière modification par loularsen (08-03-2018 20:58:15)

Hors ligne

#2 07-03-2018 14:13:09

dejieres
Membre
Lieu : Moselle
Distrib. : Stretch 64 bits
Noyau : Linux 4.9.0-7-amd64
(G)UI : GNOME 3.22.2
Inscription : 07-02-2017

Re : [Résolu] lancer umount si le disque n'est plus en écriture

Je ne dirai qu'une chose smile :

man umount

Tu devrais trouver la réponse dans les deux premiers paragraphes.

En ligne

#3 07-03-2018 16:13:18

loularsen
Membre
Lieu : Lanzarote
Distrib. : stretch + backports
Noyau : Linux 4.14.0-0.bpo.2-amd64
(G)UI : xfce
Inscription : 26-02-2018

Re : [Résolu] lancer umount si le disque n'est plus en écriture

Merci dejieres,
option -l, démontage paresseux.
Mais la phrase : "Détacher maintenant le système de fichiers de
  la hiérarchie de fichiers" me chiffonne . Surtout le " maintenant".
Suis toujours dans le doute, surtout si un autre processus est lancé entre temps sur ce même disque.

Hors ligne

#4 07-03-2018 16:22:54

dejieres
Membre
Lieu : Moselle
Distrib. : Stretch 64 bits
Noyau : Linux 4.9.0-7-amd64
(G)UI : GNOME 3.22.2
Inscription : 07-02-2017

Re : [Résolu] lancer umount si le disque n'est plus en écriture

Il y a aussi ce paragraphe

man umount a écrit :

Remarquez qu'un système de fichiers ne peut pas être démonté quand il est « occupé »,  par  exemple  quand  il  y  a  des fichiers  ouverts  dessus, quand certains processus y ont leur répertoire de travail, ou quand un fichier d'échange y est utilisé. L'un de ces processus « récalcitrants » pourrait même être umount lui-même : il ouvre la libc, qui peut ouvrir à son tour des fichiers locaux. Un démontage paresseux évite ce problème.



A priori, l'option -l doit faire disparaître le point de montage du système de fichier, mais les processus qui l'utilisent encore y ont toujours accès.
Le démontage réel ne sera fait qu'une fois que tous les processus utilisant le point de montage se seront terminés.

Ensuite, si umount échoue, il doit bien y avoir une valeur d'erreur à récupérer, je pense.

En ligne

#5 07-03-2018 17:06:07

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] lancer umount si le disque n'est plus en écriture

loularsen a écrit :

Existe t'il un moyen de vérifier qu'un disque n'est plus en écriture avant de lancer umount ?


Qu'entends-tu exactement par "en écriture" ?
C'est une vraie question piège.

Hors ligne

#6 07-03-2018 19:06:12

loularsen
Membre
Lieu : Lanzarote
Distrib. : stretch + backports
Noyau : Linux 4.14.0-0.bpo.2-amd64
(G)UI : xfce
Inscription : 26-02-2018

Re : [Résolu] lancer umount si le disque n'est plus en écriture

raleur a écrit :

Qu'entends-tu exactement par "en écriture" ?
C'est une vraie question piège.


En fait, bien que le script arrive à sa  fin, le transfert des données lui, n'est pas terminé et peut durer un certain temps
en fonction du volume à transférer. C'est ce que je veux dire par "en écriture"





A priori, l'option -l doit faire disparaître le point de montage du système de fichier, mais les processus qui l'utilisent encore y ont toujours accès.
Le démontage réel ne sera fait qu'une fois que tous les processus utilisant le point de montage se seront terminés.


La remarque de dejieres m'eclaire bien.

Merci.

Hors ligne

#7 07-03-2018 22:10:11

raleur
Membre
Inscription : 03-10-2014

Re : [Résolu] lancer umount si le disque n'est plus en écriture

Si tous les processus qui utilisaient le système de fichiers (en lecture ou en écriture, peu importe) se sont terminés, alors on n'est pas dans la situation évoquée par dejieres : "les processus qui l'utilisent encore" => il n'y en a plus. Donc on devrait pouvoir immédiatement démonter le système de fichiers. S'il reste des données à écrire dans les tampons du noyau, cela concerne le noyau et lui seul.

As-tu rencontré des problèmes en essayant de démonter le système de fichiers immédiatement après la terminaison des processus qui écrivaient dedans ?

Par contre, si tu veux savoir quand tu peux débrancher le disque sans risque, c'est une autre histoire. A priori, la commande umount ne rend la main que lorsque tout est écrit. Sinon, une commande "sync" avant umount.

Hors ligne

#8 08-03-2018 20:43:43

loularsen
Membre
Lieu : Lanzarote
Distrib. : stretch + backports
Noyau : Linux 4.14.0-0.bpo.2-amd64
(G)UI : xfce
Inscription : 26-02-2018

Re : [Résolu] lancer umount si le disque n'est plus en écriture

raleur a écrit :

As-tu rencontré des problèmes en essayant de démonter le système de fichiers immédiatement après la terminaison des processus qui écrivaient dedans ?


Non pas de problème pour démonter à posteriori, je le faisais à la main, (pas inclus dans le script)
Ai fait des essais en incluant dans le script:
sync ;
umount /dev/sdx

Tout se passe bien et je vois que la commande umount  est exécutée avec un délai qui doit correspondre, j'imagine,  avec ce que j'appelais
antérieurement phase " d'écriture".

Vous remercie tous pour vos remarques.
Ai appris une nouvelle commande , "sync" qui jusqu'à ce jour était pour moi une inconnue et comprends
mieux maintenant  toute la séquence.
cool  A+

post_data:  Dois-je ajouter "résolu" au titre de la discussion ? et surtout comment (pas trouvé).

Hors ligne

#9 08-03-2018 20:49:34

dejieres
Membre
Lieu : Moselle
Distrib. : Stretch 64 bits
Noyau : Linux 4.9.0-7-amd64
(G)UI : GNOME 3.22.2
Inscription : 07-02-2017

Re : [Résolu] lancer umount si le disque n'est plus en écriture

Pour ajouter le [résolu], il te suffit de modifier le sujet du premier message.

En ligne

#10 08-03-2018 20:58:52

loularsen
Membre
Lieu : Lanzarote
Distrib. : stretch + backports
Noyau : Linux 4.14.0-0.bpo.2-amd64
(G)UI : xfce
Inscription : 26-02-2018

Re : [Résolu] lancer umount si le disque n'est plus en écriture

Parfait, merci.

Hors ligne

Pied de page des forums