@matigo, вероятно, прав с комментарием о повреждении файловой системы. Я также согласен с тем, что использование ext4 в WSL2 почти наверняка более надежно, если оно соответствует вашим потребностям.
Если вы еще этого не сделали, сделайте wsl --shutdown
(из PowerShell), чтобы убедиться, что все дескрипторы/блокировки сняты. Затем перезапустите и повторите попытку. У него относительно небольшой шанс сработать, но стоит попробовать, так как он такой быстрый.
Если это не сработает, я бы рекомендовал следующее для попытки восстановить экземпляр WSL1.
По сути, сделайте круговой обход экземпляра WSL1 через wsl --экспорт
/wsl --импорт
. смола
туда и обратно, который выполняет этот процесс должен (надеюсь) удалить поврежденный файл при архивировании или разархивировании, одно или другое.
Из PowerShell:
# Подтвердить имя дистрибутива
wsl -l -v
# Имя дистрибутива может быть "Ubuntu" или "Ubuntu-20.04" - соответствующим образом отредактируйте следующие строки:
wsl --shutdown
компакт-диск ~\Документы
mkdirWSL\изображения
mkdir WSL\экземпляры\UbuntuRecovery
wsl --export Ubuntu WSL\images\ubuntu.tar
wsl --import UbuntuRecovery WSL\instances\UbuntuRecovery WSL\images\ubuntu.tar --версия 1
wsl -d UbuntuRecovery
Посмотрите, исчез ли файл или его можно удалить в этом новом экземпляре.
Если это так, и если в новом экземпляре все остальное выглядит нормально, то:
Новый экземпляр будет использоваться по умолчанию всякий раз, когда wsl
работает.
Наконец, удалите исходный поврежденный экземпляр с помощью:
wsl --отменить регистрацию Ubuntu
Важный: Это разрушительный операция. Убедитесь, что все работает, как задумано. С другой стороны, мы уже сделали резервную копию ...
Вы также можете удалить «Приложение» Ubuntu, которое было установлено из Магазина на тот момент.
Вы запустите через wsl
(если вы еще этого не сделали) или Windows Terminal с момента Ubuntu.exe
(или же Ubuntu2004.exe
) команда исчезнет.