web-dev-qa-db-fra.com

Pourquoi le remontage résout le problème mais pas le fstab?

J'ai Linux et Windows à double démarrage qui ont tous deux accès à une partition NTFS locale (non-os) partagée sur/dev/sda5.

Voici comment je le monte dans le fichier fstab:

UUID=D8A0830EA082F1F4   /mnt/files   ntfs   rw,uid=1000,gid=1000   0   0

Le problème est, chaque fois que j'utilise l'option de redémarrage rapide, qui est une sorte d'hibernation, sur mon Windows, cette partition se monte en lecture seule sur mon Linux. Je le remonte donc à chaque fois et il redeviendra accessible en écriture:

Sudo mount -o remount,rw /dev/sda5 /mnt/files

Alors s'il vous plaît, dites-moi quelle est la différence entre cette commande et celle que j'ai dans mon fstab? comment puis-je corriger mon fstab pour monter en lecture-écriture à chaque fois sans avoir besoin d'exécuter cette commande?

2
Matin Lotfaliee

Remount ne résout pas le problème. Cela pourrait même aggraver la situation.

Voici ce qui se passe:

  1. Windows hiberne tout en gardant cette partition montée
  2. Ubuntu démarre, découvre que la partition n'a pas été démontée correctement et la monte en lecture seule. C'est une caractéristique de sécurité et c'est pour votre bien.
  3. Vous le remontez en lecture/écriture et commencez peut-être à y écrire.

Ce qui n'est pas évident:

1.a. Windows a gardé un cache en mémoire de l'état du système de fichiers qui disait que (au sens figuré) le secteur 789 est libre

1.b. Ce cache en mémoire a été stocké dans le fichier d'hibernation.

  1. Ubuntu écrit un nouveau fichier dans le secteur 789 - il est gratuit après tout.

  2. Vous redémarrez vers Windows et il charge son état à partir du fichier d'hibernation.

  3. Vous créez un nouveau fichier

  4. Windows utilise le secteur 789 pour stocker ce nouveau fichier - après tout, son cache indique que ce secteur est libre.

  5. Le fichier que vous avez créé dans Ubuntu (étape 4) est maintenant corrompu.

La bonne façon de résoudre ce problème consiste à démonter cette partition dans Windows avant de la mettre en veille prolongée et à la remonter automatiquement au démarrage.

Comment faire cela et si cela est possible est au-delà de ce forum.

2
sмurf