Могу ли я обновить существующую установку Ubuntu в WSL с 16 по 18 апреля?

15402
iBug

В настоящее время я использую Ubuntu 16.04 в WSL (Windows 10 v1709 или новее), установленную с помощью lxrun.

Могу ли я обновить его до 18.04?

Если так, то как? Если нет, то когда?

28
[Здесь] (https://github.com/Microsoft/WSL/issues/2874) можно прочитать «* Мы будем искать поддержку 18.04, но пока не имеем официального графика времени. *» sba 6 лет назад 0
@Biswapriyo Не уверен, что я сделал это правильно, но `sudo do-release-upgrade -d`, а затем принудительное« apt upgrade »с принудительно измененными источниками (xenial → bionic) мне помогло. Просто убедитесь, что удалили такие вещи, как `linux-image` и grub из WSL. iBug 6 лет назад 0
Ubuntu 18.04 доступна в магазине: https://www.microsoft.com/en-us/store/p/ubuntu-1804/9n9tngvndl3q Biswapriyo 5 лет назад 0

4 ответа на вопрос

21
iBug

Я просто принудительно обновил систему с 16.04, и она прошла успешно, хотя процесс был не совсем удачным.

sudo do-release-upgrade -d 

Сначала сделайте обновление. Как сообщают люди в комментариях, вероятно, все, что вам нужно сделать до 18.04, - это все. В некоторых случаях, таких как мой, он будет делать большинство вещей, показывая как «провал».

В случае, если он отображается как «не удалось», откройте /etc/apt/sources.listи замените все «xenial» на «bionic», и sudo apt update && sudo apt -y upgrade. Большинство людей должны сделать все на этом этапе.

В некоторых случаях (но не во всех) APT и Debian Packager могут не работать во время процесса. Согласно этой ветке GitHub, вам нужно удалить grub и ядра, если они есть:

sudo apt -f purge grub-pc sudo apt -f purge linux-image* 

Повторите последнюю команду несколько раз, так как dpkg не удастся после удаления каждого пакета. После удаления всех этих образов Linux вы получаете полностью работающий Bionic Beaver в вашем WSL.

Подробнее: Руководство по обновлению выпуска вашего приложения Ubuntu - инструменты командной строки Windows для разработчиков

FWIW, возможно, проблемы, с которыми вы столкнулись, были исправлены в обновлении Windows 10 апреля 2018 года, но я выполнил `sudo do-release-upgrade -d`, и он обновился до 18.04 без ошибок, он правильно установил мой sources.list и без grub Пакеты -pc или linux-image * были установлены. Работало отлично! Paul 5 лет назад 11
@Paul Они были установлены ранее и были обновлены вместе. iBug 5 лет назад 0
Можно подтвердить, что просто `sudo do-release-upgrade -d` теперь работает хорошо. Ben 5 лет назад 10
Добавьте [это руководство] (https://blogs.msdn.microsoft.com/commandline/2018/07/09/upgrading-ubuntu/) к своему ответу. Biswapriyo 5 лет назад 0
8
X.Arthur

В магазине Windows теперь есть официальная версия Ubuntu18.04, а также Ubuntu16.04.

Хотя я не нашел никакой официальной информации, в чем разница между этими двумя и Ubuntu.

Да, на данный момент в Windows Store есть три разных Ubuntu.

Две установки, в конце которых указан номер версии, предназначены для людей, которые хотят использовать определенную версию и придерживаться ее. Версия, которая только что помечена как «Ubuntu», предназначена для тех, кто хочет всегда запускать последнюю версию. DavidB 5 лет назад 3
Да, позже узнал в каком-то блоге. X.Arthur 5 лет назад 0
У меня сложилось впечатление, что если бы вы использовали «Ubuntu», он обновился бы до последней версии через магазин приложений, но это, очевидно, не тот случай. DavidB 5 лет назад 0
@DavidB Это должно быть обновлено, когда MS проверила свою стабильность. Похоже, что нынешний 18.04 изменил многое, а некоторые нуждаются в новой реализации на WSL. Надеемся, что следующий выпуск Windows будет включать это. X.Arthur 5 лет назад 0
Вы в этом уверены? Я обновился, и все, кажется, работает гладко. DavidB 5 лет назад 0
@DavidB https://github.com/Microsoft/WSL/issues/2960 см. Обсуждение здесь и здесь https://github.com/Microsoft/WSL/issues/2874. Я тоже обновился и, кажется, ничего плохого. Но я уверен, что я видел, что один из парней из MS упомянул кое-что, что WSL не может обработать 18.04. Может быть, не слишком много связано с ежедневным личным использованием. X.Arthur 5 лет назад 0
Я думаю, что я видел это тоже, но я считаю, что пост был более старым и сейчас устарел. DavidB 5 лет назад 0
6
Jeff Guillaume

Да, ты можешь!

Теперь в Window Store доступно три варианта Ubuntu.

Снимок экрана из Магазина Windows, показывающий три доступных варианта Ubuntu.

  • Ubuntu: Это всегда будет последняя стабильная версия LTS.
  • Ubuntu 18.04 LTS: для разработчиков, которые хотят версию 18.04 специально.
  • Ubuntu 16.04 LTS: для разработчиков, которым нужна версия 16.04.

Если вы установили простое приложение «Ubuntu» (без номера версии) до того, как 18.04 стало доступно в Магазине Windows, вы можете обновить его с помощью следующего набора команд:

sudo apt update -y # makes apt system up-to-date  sudo apt upgrade -y # upgrades Ubuntu 16.04 packages to latest  sudo do-release-upgrade # performs the upgrade to Ubuntu 18.04.1 

Следуйте всем инструкциям и учитывайте все предупреждения, которые вам представлены. Обычно они связаны с настройками и сторонними библиотеками или репозиториями, которые вы добавили сами.

Официальный источник: https://blogs.msdn.microsoft.com/commandline/2018/07/09/upgrading-ubuntu/

Должно быть, на самом деле должно быть `sudo apt dist-upgrade`, или задержанные обновления будут препятствовать обновлению релиза Koying 5 лет назад 0
3
Biswapriyo

Отказ от ответственности: эта следующая процедура требует предварительно установленных дистрибутивов GNU / Linux в WSL (как в OP уже установлена ​​Ubuntu 16.04). Предоставленные ссылки могут не работать в будущем. Вы можете прокомментировать ниже, если таковые имеются. Это требует мало знаний об инструментах командной строки GNU / Linux, например tar, UnsquashFSи т. Д. Установите эти инструменты перед выполнением этой процедуры.

  • Исполняемый файл установщика: вам нужен исполняемый файл, импортирующий функцию WslRegisterDistribution, которая устанавливает дистрибутив. Есть два способа. Вы можете скомпилировать свой собственный установщик из исходного кода ( ссылка 1 ) или извлечь его из предоставленного Microsoft пакета Appx ( ссылка 2 ).

  • Получить Ubuntu 18.04: Загрузите файл Ubuntu 18.04 SquashFS . Теперь запустите старую Ubuntu с WSL в этой папке загрузки и войдите как rootпользователь. Выполните следующие команды ниже (только с пользователем root):

cp ./ubuntu-18.04-server-cloudimg-amd64.squashfs ~  cd ~  unsquashfs -d temp ubuntu-18.04-server-cloudimg-amd64.squashfs  cd temp  tar -czf ../Ubuntu.tar.gz --hard-dereference *  cd ..  mv Ubuntu.tar.gz /mnt/c  

Команда cpкопирует файл SquashFS в домашнюю директорию (обязательно). UnsquashFSизвлекает файлы в tempпапке и tarсжимает все файлы в .tar.gzформате. Затем mvкоманда переместить этот файл в предыдущую папку загрузки. Вы можете удалить tempпапку с помощью rm -rf ~/tempкоманды.

  • Установка: поместите исполняемый файл и файл tar.gz в одну папку, куда вы хотите установить. Вы должны запустить команду ( link1 ) или дважды щелкнуть по исполняемому файлу ( link2 ) для установки. Требуется 15-30 секунд для установки в зависимости от вашей машины.
Также, похоже, есть такие инструменты, как https://github.com/Biswa96/WSLInstall и https://github.com/DDoSolitary/LxRunOffline, которые выглядят так, как будто их можно использовать для установки (хотя я и не тестировал сам). phk 5 лет назад 3
Ахаха, первая ссылка на github от меня, как на самом деле указывает на ваш репозиторий, так что не берите в голову. Ура! phk 5 лет назад 0

Похожие вопросы