Le 20/09/2022 à 01:39, Luca Boccassi a écrit :
Thanks for the logs, it looks like it's only file under
/lib/systemd/system/ that went missing - can you find them anywhere
else on the system?
Now that you point out this, it recalls me that years ago,
I moved /lib/systemd/system/ to /etc/conffiles-out-etc/lib/systemd/system
(so that the systemd configuration files are correctly tracked by etckeeper)
and I put a /lib/systemd/system -> /etc/conffiles-out-etc/lib/systemd/system
symlink.
So, I'm downgrading the severity. But as it is allowed
to create symlinks to other part of the disk for directory,
usrmerge should handle this case (or, at least, give a
preeminent message about a strange situation)
vdanjean@eyak:~$ diff -r /etc/conffiles-out-etc/lib/systemd/system/
/lib/systemd/system/
Only in /etc/conffiles-out-etc/lib/systemd/system/: cgroupfs-mount.service
Only in /lib/systemd/system/: [email protected]
Only in /etc/conffiles-out-etc/lib/systemd/system/:
gitlab-ci-multi-runner.service
Only in /etc/conffiles-out-etc/lib/systemd/system/: osspd.service
Only in /lib/systemd/system/: pam_namespace.service
Only in /lib/systemd/system/: pcscd.service
Only in /lib/systemd/system/: pcscd.socket
Only in /etc/conffiles-out-etc/lib/systemd/system/:
pulseaudio-enable-autospawn.service
Only in /etc/conffiles-out-etc/lib/systemd/system/: screen-cleanup.service
diff -r /etc/conffiles-out-etc/lib/systemd/system/speech-dispatcherd.service
/lib/systemd/system/speech-dispatcherd.service
1c1
< # Copyright (C) 2018 Samuel Thibault <[email protected]>
---
> # Copyright (C) 2018, 2022 Samuel Thibault <[email protected]>
23c23
< ExecStart=/usr/bin/speech-dispatcher -d --pid-file
/run/speech-dispatcher/speech-dispatcher.pid
---
> ExecStart=/usr/bin/speech-dispatcher -d -t 0 --pid-file
/run/speech-dispatcher/speech-dispatcher.pid
Only in /etc/conffiles-out-etc/lib/systemd/system/: sudo.service
vdanjean@eyak:~$ ls /etc/conffiles-out-etc/lib/systemd/system/ | wc -l
468
vdanjean@eyak:~$ ls /lib/systemd/system/ | wc -l
466
vdanjean@eyak:~$
I try to explain the difference:
Files previously in /usr/lib/...
Only in /lib/systemd/system/: [email protected]
Only in /lib/systemd/system/: pam_namespace.service
Only in /lib/systemd/system/: pcscd.service
Only in /lib/systemd/system/: pcscd.socket
Package not reinstalled
Only in /etc/conffiles-out-etc/lib/systemd/system/:
gitlab-ci-multi-runner.service
Removed packages
Only in /etc/conffiles-out-etc/lib/systemd/system/: osspd.service
Only in /etc/conffiles-out-etc/lib/systemd/system/:
pulseaudio-enable-autospawn.service
Files not removed on package upgrade?
Only in /etc/conffiles-out-etc/lib/systemd/system/: cgroupfs-mount.service
Only in /etc/conffiles-out-etc/lib/systemd/system/: screen-cleanup.service
Directories are merged recursively if they exist in both hierarchies,
so I guess you had something that installs files in
/usr/lib/systemd/system/ and something went horribly wrong somewhere.
We don't delete files, so I'm thinking they might have been moved to
the wrong place.
We can add debsums -c before/after the conversion, so that if this
happens again there's a clear message immediately. But this is very
strange, I've never seen this reported in Debian or Ubuntu in ~5 years.
If I understand, the bug occurs when a directory exists
in both / and /usr and the directory in / is in fact a
symlink to another directory elsewhere. Not a classical
situation indeed, but it can exists...
Regards,
Vincent