После завершения работы WSL2 по какой-то причине удаляет все файлы, хранящиеся в / mnt / wsl. Мне не удалось найти никакой документации по этому конкретному делу. Кто-нибудь может объяснить почему?
Поздний ответ, я знаю, но я только что наткнулся на этот вопрос, исследуя некоторые другие функции /mnt/wsl
.
Причина, по которой завершение работы приводит к удалению файлов из /mnt/wsl
, заключается в том, что это монтирование использует tmpfs. Это файловая система, которая создается и хранится в энергозависимой памяти, поэтому естественно, что она исчезнет при выключении/перезагрузке.
Очевидно, он создается в памяти при запуске первого экземпляра WSL, и каждый дополнительный работающий экземпляр WSL может подключаться к нему для передачи файлов между ними.
Если вы хотите иметь энергонезависимое место для хранения файлов между экземплярами, я бы рекомендовал использовать где-нибудь на /mnt/c
или другом диске Windows, если это возможно. По умолчанию диски Windows не сохраняют разрешения и права собственности Linux, но вы можете изменить это (при необходимости) путем монтирования (или автоматического монтирования) дисков с параметром метаданные
. См. ответ Unix & Linux Stack для более подробной информации об этом процессе.
В ближайшее время (в настоящее время в Windows Preview/Insider) также появится возможность создавать новые виртуальные диски (файлы .vhdx
) и монтировать их. Затем они также могут быть разделены между экземплярами.