← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1816753] Re: do-release-upgrade on WSL failed horribly due to grub and others

 

This bug was fixed in the package systemd - 239-7ubuntu10.11

---------------
systemd (239-7ubuntu10.11) cosmic; urgency=medium

  * virt: detect WSL environment as a container (LP: #1816753)

 -- Balint Reczey <rbalint@xxxxxxxxxx>  Mon, 25 Mar 2019 11:30:22 +0100

** Changed in: systemd (Ubuntu Cosmic)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1816753

Title:
  do-release-upgrade on WSL failed horribly due to grub and others

Status in systemd package in Ubuntu:
  Fix Released
Status in systemd source package in Xenial:
  Fix Released
Status in systemd source package in Bionic:
  Fix Committed
Status in systemd source package in Cosmic:
  Fix Released
Status in systemd source package in Disco:
  Fix Released

Bug description:
  [Impact]

   * Package maintainer scripts and services use systemd-detect-virt and systemd's virtualization detection to determine the environment they are ran in and based on that skip not applicable operations, such as installing grub info to the MBR or to the EFI partition in a container. The WSL environment is similar to containers in that boot loader and initramfs preparations are not useful, but without this change only ad-hoc tests could be implemented in each separate package to avoid obsolete actions or failing in trying not applicable operations.
   * The fix detects WSL as a container type, called wsl in systemd and as a result make packages behave like they would in classic Linuxcontainers.

  [Test Case]

   * Install the fixed systemd package in WSL and observe that it is detected as a container:
   $ systemd-detect-virt --container
   wsl
   $

   * Install the fixed systemd package in LXC and observe that it is still detected correctly:
   $ systemd-detect-virt --container
   lxc
   $

   * Install the fixed systemd package in a VM or on a bare metal systemd and observe that it is still detected correctly:
   $ systemd-detect-virt --container
   none
   $ echo $?
   1

   * Observe the man page of sytemd-detect-virt mentioning wsl.

  [Regression Potential]

   * The changes is virtualization detection could break the detection logic but the test cases here cover most of the relevant code paths and the detection logic is also exercised in autopkgtests thus causing a regression is unlikely.
   * The changes to the man pages could break the formatting, but a simple observation mitigates that risk, too.

  [Original Bug Text]

  Upon reading an Ubuntu page that said it was possible to upgrade my
  Ubuntu-under-Windows 10 install (WSL) from 16.04 LTS just by running
  do-release-upgrade, I excitedly went to my terminal and ran the
  command.

  First it refused to run because system was not fully updated. Fine, I ran:
  sudo apt update
  sudo apt dist-upgrade

  This process completed without any errors. I then ran do-release-
  upgrade again. This time it started okay and got through most of the
  process.

  But then at some point it decided to run grub even though I am running
  Ubuntu under WSL, so presumably grub should not be used. It did
  apparently detect that it wasn't needed, because it asked me if I was
  sure I didn't want to install it on the boot device. I answered yes.
  Then the install proceeded to LXD but soon after came an error related
  to grub.

  After that it went downhill fast with at least 2 other errors.

  Additionally, when the system attempted to roll back the upgrade I got
  an error from a kernel package.

  ProblemType: Package
  DistroRelease: Ubuntu 18.04
  Package: friendly-recovery 0.2.38ubuntu1
  ProcVersionSignature: Microsoft 4.4.0-17763.253-Microsoft 4.4.35
  Uname: Linux 4.4.0-17763-Microsoft x86_64
  ApportVersion: 2.20.9-0ubuntu7.5
  Architecture: amd64
  Date: Tue Feb 19 23:50:44 2019
  Dmesg: [    0.017808]  Microsoft 4.4.0-17763.253-Microsoft 4.4.35
  ErrorMessage: installed friendly-recovery package post-installation script subprocess returned error exit status 1
  PackageArchitecture: all
  Python3Details: /usr/bin/python3.6, Python 3.6.7, python3-minimal, 3.6.7-1~18.04
  PythonDetails: /usr/bin/python2.7, Python 2.7.15rc1, python-minimal, 2.7.15~rc1-1
  RelatedPackageVersions:
   dpkg 1.19.0.5ubuntu2.1
   apt  1.6.8
  SourcePackage: grub2
  Title: package friendly-recovery 0.2.38ubuntu1 failed to install/upgrade: installed friendly-recovery package post-installation script subprocess returned error exit status 1
  UpgradeStatus: Upgraded to bionic on 2019-02-20 (0 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1816753/+subscriptions