Ubuntu не видит файлов windows

Обновлено: 05.07.2024

Когда папка ИЛИ файл создается вне bash.exe, я никогда не вижу его, независимо от прав доступа и владельца.

Чтобы показать информацию, которую мне пришлось использовать Cygwin, чтобы показать права доступа к файлам, я также изменил разрешения, чтобы увидеть, появится ли папка. (Два командных окна внизу)

Снимок экрана, показывающий права доступа к папке, bash.exe и Cygwin:

введите описание изображения здесь

Я пытаюсь переместить все свои скрипты Cygwin в подсистему Linux, но мне не хочется пересоздавать каждый файл, затем копировать и переносить с помощью bash, а затем переформатировать, а затем с помощью Dos2unix (очень длинный).

Нашел это на GitHub для подсистемы Linux:

копирование непосредственно в подсистему Linux из Windows не поддерживается, согласно обсуждению других заявок. Где-то в AppData есть каталог (я забыл, где), который содержит файлы для файловой системы WSL. Но если вы поместите туда новые файлы или измените существующие файлы, ваши изменения не будут правильно отражены в WSL.

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

Если вам действительно нужно сделать это, обходной путь - написать сценарий drag'n'drop .bat или что-то такое, что делает bash.exe -c "mv% 1 / home / $ USER /". (Вам придется проделать некоторую умную работу с sed и tr, возможно, чтобы перевести% 1 в правильный путь WSL.)

В качестве альтернативы - не могли бы вы поместить ваши файлы в каталог Windows и в WSL сделать «cd

; ln -s / mnt / c / path / to / my / files», чтобы они оказались в вашем домашнем каталоге WSL?

Читайте также: