Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

User discussion about Debian Development, Debian Project News and Announcements. Not for support questions.
Post Reply
Message
Author
User avatar
fabien
Forum Helper
Forum Helper
Posts: 621
Joined: 2019-12-03 12:51
Location: Anarres (Toulouse, France actually)
Has thanked: 60 times
Been thanked: 146 times

dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#1 Post by fabien »

First of all: Don't panic! :)

So I have a Bookworm virtual system that I don't update very often and today I had 415 updates awaiting. Amongst those updates was a dpkg update.
The update log reads:

Code: Select all

Préparation du dépaquetage de .../archives/dpkg_1.21.2_amd64.deb ...
Dépaquetage de dpkg (1.21.2) sur (1.21.1) ...
Paramétrage de dpkg (1.21.2) ...
dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs.
dpkg: warning: See <https://wiki.debian.org/Teams/Dpkg/FAQ#broken-usrmerge>.
A bit disturbing, isn't it?

For those who don't know, 'merged usr' refers to, as 'usrmerge' package description says,
the merged /usr directory scheme, in which the /{bin,sbin,lib}/ directories are symlinked to their counterparts in /usr/.
All Debian systems are due to this scheme
The Technical Committee resolves that Debian 'bookworm' should support only the merged-usr root filesystem layout, dropping support for the non-merged-usr layout.

My search first led me to this page with a clear warning:
DO NOT RUN dpkg-fsys-usrunmess FROM THE LINKED WIKI PAGE
And a link to the Debian developers discussion that I think can be summed up for us mere mortals by this sentence:
Given all new installations have been merged-/usr for years, it seems to work sufficiently well for real-world use.
I just wanted to make this entry so that people don't be more at stress than they should be. At least my Bookworm update went well today.

CwF
Global Moderator
Global Moderator
Posts: 2636
Joined: 2018-06-20 15:16
Location: Colorado
Has thanked: 41 times
Been thanked: 192 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#2 Post by CwF »

fabien wrote: 2022-03-28 16:01 And a link to the Debian developers discussion that I think can be summed up for us mere mortals by this sentence:

Given all new installations have been merged-/usr for years, it seems to work sufficiently well for real-world use.
Actually it's not that clear. "...for years" ? Time is relative! This does not hint at failure or success if the original install was Jessie or Stretch. I mentioned years ago that Bullseye might be the end of those lines, still not sure?

User avatar
fabien
Forum Helper
Forum Helper
Posts: 621
Joined: 2019-12-03 12:51
Location: Anarres (Toulouse, France actually)
Has thanked: 60 times
Been thanked: 146 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#3 Post by fabien »

CwF wrote: 2022-03-29 02:05This does not hint at failure or success if the original install was Jessie or Stretch.
You think of the non-merged /usr/ to the merged /usr/ transition I guess? Here it is a problem with dpkg having potential bugs (maybe at the theoretical level) in a merged /usr/ context. The dpkg developers concerns are totally legitimate, my point is just that for simple users the risk of having actual bugs seems low or even very low.

I've made a little test by upgrading a virtual Stretch to Bookworm. For now the upgrade process does not force merged /usr/.
Then I installed 'usrmerge' package and upgraded to unstable. The dpkg warning has changed:

Code: Select all

Préparation du dépaquetage de .../archives/dpkg_1.21.6_amd64.deb ...
Dépaquetage de dpkg (1.21.6) sur (1.21.2) ...
Paramétrage de dpkg (1.21.6) ...
dpkg: warning: This system uses merged-usr-via-aliased-dirs, going behind dpkg's
dpkg: warning: back, breaking its core assumptions. This can cause silent file
dpkg: warning: overwrites and disappearances, and its general tools misbehavior.
dpkg: warning: See <https://wiki.debian.org/Teams/Dpkg/FAQ#broken-usrmerge>.

CwF
Global Moderator
Global Moderator
Posts: 2636
Joined: 2018-06-20 15:16
Location: Colorado
Has thanked: 41 times
Been thanked: 192 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#4 Post by CwF »

fabien wrote: 2022-03-29 23:55 I've made a little test by upgrading a virtual Stretch to Bookworm. For now the upgrade process does not force merged /usr/.
Thanks for that good news.

User avatar
fabien
Forum Helper
Forum Helper
Posts: 621
Joined: 2019-12-03 12:51
Location: Anarres (Toulouse, France actually)
Has thanked: 60 times
Been thanked: 146 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#5 Post by fabien »

CwF wrote: 2022-03-30 02:43Thanks for that good news.
Sorry for the bad news.

usrmerge is now a dependency of init-system-helpers in testing.

Code: Select all

Package: init-system-helpers
Status:  install ok installed - manually
Version: 1.65.2
Essential: yes
Installed-Size: 140
Maintainer: Debian systemd Maintainers <pkg-systemd-maintainers@lists.alioth.debian.org>
Architecture: all
Depends     ▼
 usrmerge|usr-is-merged
Description-en: helper tools for all init systems
 This package contains helper tools that are necessary for switching between
 the various init systems that Debian contains (e. g. sysvinit or
 systemd). An example is deb-systemd-helper, a script that enables systemd unit
 files without depending on a running systemd.
 .
 It also includes the "service", "invoke-rc.d", and "update-rc.d" scripts which
 provide an abstraction for enabling, disabling, starting, and stopping
 services for all supported Debian init systems as specified by the policy.
 .
 While this package is maintained by pkg-systemd-maintainers, it is NOT
 specific to systemd at all. Maintainers of other init systems are welcome to
 include their helpers in this package.
Multi-Arch: foreign
Tag: admin::boot, implemented-in::perl, role::program
Section: admin
Priority: required
Filename: pool/main/i/init-system-helpers/init-system-helpers_1.65.2_all.deb
Size: 49800


Package: usrmerge
Status:  install ok installed - automatically
Version: 31
Installed-Size: 39
Maintainer: Marco d'Itri <md@linux.it>
Architecture: all
Depends     ▼
 perl:any, libfile-find-rule-perl
Provides    ▼
 usr-is-merged
Breaks      ▼
 cruft-ng (<<0.4.4~), initramfs-tools (<<0.121~)
Conflicts   ▼
 acl (<<2.2.52-3~), arptables (<<0.0.4+snapshot20181021-1~), coreutils (<<8.24-1~),
 cruft, cryptsetup (<<2:1.7.0-1~), davfs2 (<<1.5.2-1.2~), debianutils (<<4.5~),
 ebtables (<<2.0.10.4+snapshot20181205-1~), elvis-tiny (<<1.4-24~), kbd (<<2.0.3-1~),
 ksh (<<93u+20120801-3.1~), less (<<481-2~), libbrlapi-dev (<<5.3.1-1~), libdm0-dev,
 libjson-c-dev (<<0.12.1-1.1~), libpng12-0 (<<1.2.54-4~), libusb-0.1-4 (<<2:0.1.12-28~),
 mksh (<<52b-1~), molly-guard (<<0.7.1+exp1~), musl-dev (<<1.1.9-1.1~), nano (<<2.3.99pre3-1~),
 open-iscsi (<<2.0.873+git0.3b4b4500-13~), open-vm-tools (<<2:10.0.5-3227872-2~), policycoreutils (<<2.4-4~),
 safe-rm (<<0.12-6~), tcsh (<<6.18.01-4~), vsearch (<<1.9.5-2~), xfsdump (<<3.1.6+nmu1~),
 xfslibs-dev (<<4.9.0+nmu1~), yp-tools (<<3.3-5~), zsh (<<5.2-4~)
Description-en: Convert the system to the merged /usr directories scheme
 This package will automatically convert the system to the merged
 /usr directory scheme, in which the /{bin,sbin,lib}/ directories are
 symlinked to their counterparts in /usr/.
 .
 There is no automatic method to restore the precedent configuration, so
 there is no going back once this package has been installed.
Multi-Arch: foreign
Homepage: https://wiki.debian.org/UsrMerge
Tag: admin::filesystem, admin::install, implemented-in::perl,
 interface::commandline, role::program, suite::debian, use::configuring
Section: admin
Priority: optional
Filename: pool/main/u/usrmerge/usrmerge_31_all.deb
Size: 13004


Package: usr-is-merged
Source: usrmerge
Version: 31
Installed-Size: 12
Maintainer: Marco d'Itri <md@linux.it>
Architecture: all
Description-en: Transitional package to assert a merged-/usr system
 This package can be successfully installed only on merged-/usr systems.
 .
 It can be safely removed once no other package depends on it anymore.
Multi-Arch: foreign
Homepage: https://wiki.debian.org/UsrMerge
Section: oldlibs
Priority: optional
Filename: pool/main/u/usrmerge/usr-is-merged_31_all.deb
Size: 4920

Code: Select all

Sélection du paquet usrmerge précédemment désélectionné.
(Lecture de la base de données... 44691 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../archives/usrmerge_31_all.deb ...
Dépaquetage de usrmerge (31) ...
Paramétrage de usrmerge (31) ...
The system has been successfully converted.

Code: Select all

ls -ld /bin /sbin /lib*
lrwxrwxrwx 1 root root  7 Sep 23 21:46 /bin -> usr/bin
lrwxrwxrwx 1 root root  7 Sep 23 21:46 /lib -> usr/lib
lrwxrwxrwx 1 root root  9 Sep 23 21:46 /lib32 -> usr/lib32
lrwxrwxrwx 1 root root  9 Sep 23 21:46 /lib64 -> usr/lib64
lrwxrwxrwx 1 root root 10 Sep 23 21:46 /libx32 -> usr/libx32
lrwxrwxrwx 1 root root  8 Sep 23 21:46 /sbin -> usr/sbin

User avatar
Head_on_a_Stick
Posts: 14114
Joined: 2014-06-01 17:46
Location: London, England
Has thanked: 81 times
Been thanked: 132 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#6 Post by Head_on_a_Stick »

@fabien, the init-system-helpers package in Devuan does not have the usrmerge dependency:

http://deb.devuan.org/devuan/pool/main/ ... m-helpers/

The merge isn't reversible but if you have a backup it could be avoided by using their package.
deadbang

CwF
Global Moderator
Global Moderator
Posts: 2636
Joined: 2018-06-20 15:16
Location: Colorado
Has thanked: 41 times
Been thanked: 192 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#7 Post by CwF »

fabien wrote: 2022-09-23 21:00 Sorry for the bad news.
Yes, I hit cancel on some recent work.
Mentioned over in that Firefox thread, I remembered this comment.
I can't say what I think about this yet.
I did decide to manually update whatever did not trigger the conversion and did come across some things that chained through dependency into confusion and had to start over. If I stop my old images at 'upgraded to Bookworm' that gives me a few years...

I think the only issue is it's all very sloppy, but the old file tree is not exactly unified concise perfection.

CwF
Global Moderator
Global Moderator
Posts: 2636
Joined: 2018-06-20 15:16
Location: Colorado
Has thanked: 41 times
Been thanked: 192 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#8 Post by CwF »

Well, I took a stab and updated 2 VM images while avoiding usrmerge.
I held 30 packages on a 757 package i686 and 48 on a 1084 package amd64. Both working ok. I do usually leave no held/orphaned/obsolete packages unless they are non-repository. Both these are minimal specific function VM's, so updates that are not fixes or improvements are a waste of effort anyway...

For something already into the bookworm repository group I'm not finding an issue upgrading 'around' usrmerge, but I'm wondering how clumsy it will be moving a bullseye or earlier into bookworm. I'm thinking it may be wise to move those before the stable status change? maybe...

guess i'll find out, not today.

User avatar
fabien
Forum Helper
Forum Helper
Posts: 621
Joined: 2019-12-03 12:51
Location: Anarres (Toulouse, France actually)
Has thanked: 60 times
Been thanked: 146 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#9 Post by fabien »

Head_on_a_Stick wrote: 2022-09-23 23:30@fabien, the init-system-helpers package in Devuan does not have the usrmerge dependency:
http://deb.devuan.org/devuan/pool/main/ ... m-helpers/
The merge isn't reversible but if you have a backup it could be avoided by using their package.
It's just a VM for testing purpose, but thanks anyway, it could be a solution for those who wish to avoid the /usr/ merge. I think in that case I'd rather switch to Devuan totally (and get rid of systemd at the same time).
I tested your solution and it works so far, but I have to underline that it leads to an unsupported system. Again:
The Technical Committee resolves that Debian 'bookworm' should support only the merged-usr root filesystem layout, dropping support for the non-merged-usr layout.
Before:

Code: Select all

$> cat /etc/debian_version
11.5

$> cat /etc/apt/preferences.d/init-system-helpers.pref 
Package: *
Pin: release o=Devuan
Pin-Priority: -1

Package: init-system-helpers
Pin: release o=Devuan
Pin-Priority: 999

$> apt policy 
Package files:
 100 /var/lib/dpkg/status
     release a=now
  -1 http://deb.devuan.org/merged chimaera-security/main amd64 Packages
     release v=4.0,o=Devuan,a=stable-security,n=chimaera-security,l=Devuan-Security,c=main,b=amd64
     origin deb.devuan.org
  -1 http://deb.devuan.org/merged chimaera/main amd64 Packages
     release v=4.0,o=Devuan,a=stable,n=chimaera,l=Devuan,c=main,b=amd64
     origin deb.devuan.org
 500 http://deb.debian.org/debian bullseye-updates/main amd64 Packages
     release v=11-updates,o=Debian,a=stable-updates,n=bullseye-updates,l=Debian,c=main,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian-security bullseye-security/non-free amd64 Packages
     release v=11,o=Debian,a=stable-security,n=bullseye-security,l=Debian-Security,c=non-free,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages
     release v=11,o=Debian,a=stable-security,n=bullseye-security,l=Debian-Security,c=main,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian bullseye/contrib amd64 Packages
     release v=11.5,o=Debian,a=stable,n=bullseye,l=Debian,c=contrib,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian bullseye/non-free amd64 Packages
     release v=11.5,o=Debian,a=stable,n=bullseye,l=Debian,c=non-free,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian bullseye/main amd64 Packages
     release v=11.5,o=Debian,a=stable,n=bullseye,l=Debian,c=main,b=amd64
     origin deb.debian.org
Pinned packages:
     init-system-helpers -> 1.60+devuan1 with priority 999

$> apt policy init-system-helpers
init-system-helpers:
  Installed: 1.60+devuan1
  Candidate: 1.60+devuan1
  Version table:
 *** 1.60+devuan1 999
         -1 http://deb.devuan.org/merged chimaera/main amd64 Packages
        100 /var/lib/dpkg/status
     1.60 500
        500 http://deb.debian.org/debian bullseye/main amd64 Packages

$> ls -ld /bin /lib* /sbin
drwxr-xr-x  2 root root 4096 23 sept. 21:23 /bin
drwxr-xr-x 17 root root 4096 29 mars  18:37 /lib
drwxr-xr-x  2 root root 4096 23 sept. 21:22 /lib64
drwxr-xr-x  2 root root 4096 23 sept. 21:22 /sbin
After:

Code: Select all

$> cat /etc/debian_version
bookworm/sid

$> apt policy usrmerge
usrmerge:
  Installed: (none)
  Candidate: 31
  Version table:
     31 500
        500 http://deb.debian.org/debian bookworm/main amd64 Packages
         -1 http://deb.devuan.org/merged daedalus/main amd64 Packages

$> apt policy init-system-helpers
init-system-helpers:
  Installed: 1.65.2devuan1
  Candidate: 1.65.2devuan1
  Version table:
 *** 1.65.2devuan1 999
         -1 http://deb.devuan.org/merged daedalus/main amd64 Packages
        100 /var/lib/dpkg/status
     1.65.2 500
        500 http://deb.debian.org/debian bookworm/main amd64 Packages

$> ls -ld /bin /lib* /sbin
drwxr-xr-x  2 root root 4096 25 sept. 23:41 /bin
drwxr-xr-x 17 root root 4096 25 sept. 23:40 /lib
drwxr-xr-x  2 root root 4096 25 sept. 23:39 /lib64
drwxr-xr-x  2 root root 4096 25 sept. 23:41 /sbin

$> apt policy 
Package files:
 100 /var/lib/dpkg/status
     release a=now
  -1 http://deb.devuan.org/merged daedalus/main amd64 Packages
     release v=5.0,o=Devuan,a=testing,n=daedalus,l=Devuan,c=main,b=amd64
     origin deb.devuan.org
 500 http://deb.debian.org/debian bookworm/contrib amd64 Packages
     release o=Debian,a=testing,n=bookworm,l=Debian,c=contrib,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian bookworm/non-free amd64 Packages
     release o=Debian,a=testing,n=bookworm,l=Debian,c=non-free,b=amd64
     origin deb.debian.org
 500 http://deb.debian.org/debian bookworm/main amd64 Packages
     release o=Debian,a=testing,n=bookworm,l=Debian,c=main,b=amd64
     origin deb.debian.org
Pinned packages:
     init-system-helpers -> 1.65.2devuan1 with priority 999

User avatar
fabien
Forum Helper
Forum Helper
Posts: 621
Joined: 2019-12-03 12:51
Location: Anarres (Toulouse, France actually)
Has thanked: 60 times
Been thanked: 146 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#10 Post by fabien »

CwF wrote: 2022-09-25 15:33I'm wondering how clumsy it will be moving a bullseye or earlier into bookworm.
What kind of problem do you foresee? The migration went well in my tests from Stretch to Bookworm. Making backups (timeshift,...) will of course be a good thing, as always.

CwF
Global Moderator
Global Moderator
Posts: 2636
Joined: 2018-06-20 15:16
Location: Colorado
Has thanked: 41 times
Been thanked: 192 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#11 Post by CwF »

fabien wrote: 2022-09-25 23:38 What kind of problem do you foresee?
None really. Just my familiarity will be tested and I'll have to devote brain cycles to digesting change until it becomes familiar again... I hate that.

I assume the trigger for usrmerge will be applied successfully to most any clean system during upgrade. Upgrading 'around it' like I tried on the two mentioned vm's will likely not be possible in the future - but then again, that's the point.

User avatar
Head_on_a_Stick
Posts: 14114
Joined: 2014-06-01 17:46
Location: London, England
Has thanked: 81 times
Been thanked: 132 times

Re: dpkg: warning: System unsupported due to merged-usr-via-aliased-dirs

#12 Post by Head_on_a_Stick »

fabien wrote: 2022-09-25 23:26I have to underline that it leads to an unsupported system
I am prepared to support un-merged systems here. That support might only extend as far as "install the usrmerge package" but the support will be available nonetheless :mrgreen:
deadbang

Post Reply