Подсистема Windows Linux не видит последние изменения в текстовом файле, сделанном из Windows - PullRequest
0 голосов
/ 07 сентября 2018

Я использую Windows 10 Professional, подсистему Linux, с Ubuntu, установленным из магазина Microsoft.

Я заметил эту проблему. Когда я запускаю приложение Ubuntu, а затем перехожу на раздел Windows, как в

cd /mnt/g/my_data

, где G:\my_data - это место, где у меня есть данные, затем из окна я редактирую файл с помощью текстового редактора Windows, говорю файл G:\my_data\foo.txt, а затем сохраняю файл.

Теперь я ожидаю, что файл, как видно изнутри ubuntu, покажет изменения, которые я в него внес. Но когда я делаю что-то подобное, внутри подсистемы

`ls -l foo.txt`

Он не обновляет отметку времени на нем. И когда я делаю cat foo.txt, он не показывает изменения, которые я только что внес в файл.

Но, когда я закрываю всю подсистему, перезапускаю ее и повторяю вышеописанное, теперь она показывает последние изменения. Так что это была какая-то проблема с кешированием.

Это, кажется, происходит, когда у меня подсистема работает долго. скажем на несколько дней. Тогда подсистема не видит изменений, внесенных в файлы. Это не происходит все время. Я только что увидел это и исправил, перезапустив подсистему.

Кто-нибудь еще видел эту проблему? Разве подсистема не должна видеть последние изменения в файлах сразу же после их изменения в Windows?

Это серьезная проблема, так как я использую make-файлы внутри подсистемы, и они начинают работать, когда метки времени не обновляются при изменении файлов из-за пределов подсистемы.

Конечно, я только изменяю файлы, которые находятся на /mnt/g из окон, и никогда не изменяю / редактирую файлы из окон, которые являются внутренними для самой подсистемы.

...