Pull to refresh

Файлы подсистемы Linux нельзя создавать, изменять или удалять при помощи инструментов для Windows

Development for Linux *Development for Windows *
image

Весной этого года компания Microsoft начала интеграцию Linux-инструментария в свою новую ОС Windows 10. Первым шагом было включение Ubuntu и Bash инструментария в сборку 14316. Суть обновления заключалась в добавлении прослойки WSL, которая транслировала системные вызовы Linux в системные вызовы Windows, что позволяет развернуть в основном окружении Windows полноценный инструментарий Ubuntu Linux без эмуляции и виртуализации.

Вчера Microsoft опубликовала в официальном блоге запись, призывающую разработчиков не изменять, создавать или удалять файлы Linux при помощи инструментов или приложений Windows, так как это приводит к повреждению дистрибутива с необходимостью его последующей переустановки.

В начале поста в блоге на MSDN стоит крупное предупреждение:

Ни при каких обстоятельствах НЕ создавайте и/или изменяйте файлы Linux с помощью Windows, будь то приложения, инструменты, скрипты, консоли и т.д.

Создание/изменение файлов Linux из под Windows, скорее всего, приведет к повреждению данных и / или повреждению среды Linux, что в дальнейшем потребует переустановки дистрибутива!

Речь идет о любых файлах или папках, которые лежат в %LOCALAPPDATA%\lxss в подсистеме Linux в Windows 10.

Происходит подобное, судя по информации в блоге, из-за логики работы WSL.

Если WSL не удается найти файл метаданных Linux для данного файла, то делается вывод, что файл либо поврежден или удален, либо вы не в состоянии открыть или правильно прочитать файл, что приводит к сбоям. В некоторых случаях удаленные файлы распознаются как «поврежденные».

«Метаданные файлов (расширения, дата создания и прочая информация) формируются в Linux и Windows по-разному. По этой причине ПО и инструменты для Windows не способны корректно сохранить и записать метаданные Linux-файлов (в принципе, они и не должны этого уметь). Кроме этого некоторое ПО для Windows часто не редактирует исходный файл, а создает его копию. При этом исходный файл удаляется и заменяется другим, а метаданные теряются», — говорится в блоге.

Решается данная проблема хранением необходимых файлов, работа с которыми производится средствами Windows, в рамках файловой системы ОС от Microsoft, а файлы Linux не изменять, создавать или удалять при помощи инструментов для Windows.
Tags:
Hubs:
Total votes 28: ↑26 and ↓2 +24
Views 33K
Comments Comments 102