** Description changed:
- I don't now
+ [Impact]
+
+ The samba-common-bin postinst script relies on the presence of the
+ /run/samba directory. This directory will not be available unless samba-
+ common-bin is installed right after samba-common, whose postinst script
+ creates /run/samba. Although samba-common-bin Depends on samba-common,
+ reducing the risk of an user hitting the described bug, samba-common
+ only Recommends samba-common-bin, making the following case possible:
+
+ The user installs samba-common. Then, the user removes samba-common-bin.
+ Then the user reboots the system (which removes /run/samba created
+ during samba-common installation). Finally, the user installs samba-
+ common-bin, which results in a postinst script failure.
+
+ For the case described above, restarting the system and reconfiguring
+ (or running the installation again) should fix the issue, since the
+ samba-common-bin systemd-tmpfiles configuration would now create
+ /run/samba (running systemd-tmpfiles --create for the samba-common-bin
+ would also work).
+
+ The proposed patch cherry picks commit 0c3b205 from Debian to run
+ systemd-tempfiles before the testparm call and applies further changes
+ so the #DEBHELPER# tag can be expanded using debhelper compat 12.
+ Aditionally, it introduces an autopkgtest test case for the fixed issue.
+
+ [Test Plan]
+
+ Run the following steps:
+
+ # apt install samba-common
+ # apt remove samba-common-bin
+
+ Reboot the system and verify that the /run/samba directory no longer
+ exists
+
+ Run
+
+ # apt install samba-common-bin
+
+ This command should exit with a non-zero status, as described in the
+ original bug report
+
+ [Where problems could occur]
+
+ There are 2 changes to be considered here. The one to d/rules and the
+ one to d/samba-common-bin.postinst
+
+ The change to d/rules makes the #DEBHELPER# tag, moved in the change to
+ d/samba-common-bin.postinst to actually generate code.
+
+ The generated code is making a call to systemd-tmpfiles, which is
+ provided by the systemd package. However, samba-common-bin does not
+ deppend on systemd.
+
+ Here is the generated snippet:
+
+ # Automatically added by dh_installsystemd/12.10ubuntu1
+ if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" =
"abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
+ # In case this system is running systemd, we need to ensure that all
+ # necessary tmpfiles (if any) are created before starting.
+ if [ -d /run/systemd/system ] ; then
+ systemd-tmpfiles --create samba.conf >/dev/null || true
+ fi
+ fi
+ # End automatically added section
+
+ The snipped showed above does check for evidence that systemd-tmpfiles
+ is available in the system, although it does not make such check
+ directly. However, in case /run/systemd/system is available and systemd-
+ tmpfiles is not, the postinst script will not fail at that point. Still,
+ if the systemd-tmpfiles command does not run, the issue this SRU is
+ fixing will still manifest itself under the described conditions (which
+ is true for hirsute, impish, and Debian stable as well).
+
+ [Other Info]
+
+ This issue was already fixed in Debian unstable and, consequently, in
+ Ubuntu hirsute and impish.
+
+ [Original message]
ProblemType: Package
DistroRelease: Ubuntu 20.04
Package: samba-common-bin 2:4.11.6+dfsg-0ubuntu1.6
ProcVersionSignature: Ubuntu 5.4.0-54.60-generic 5.4.65
Uname: Linux 5.4.0-54-generic x86_64
ApportVersion: 2.20.11-0ubuntu27.12
Architecture: amd64
CasperMD5CheckResult: skip
Date: Tue Nov 24 07:17:34 2020
DistributionChannelDescriptor:
# This is the distribution channel descriptor for the OEM CDs
# For more information see
http://wiki.ubuntu.com/DistributionChannelDescriptor
canonical-oem-somerville-bionic-amd64-20180608-47+loki-n3-v3-whl+X32
ErrorMessage: o subprocesso instalado, do pacote samba-common-bin, o script
post-installation retornou erro do status de saída 1
InstallationDate: Installed on 2020-11-12 (11 days ago)
InstallationMedia: Ubuntu 18.04 "Bionic" - Build amd64 LIVE Binary
20180608-09:38
Python3Details: /usr/bin/python3.8, Python 3.8.5, python3-minimal,
3.8.2-0ubuntu2
PythonDetails: /usr/bin/python2.7, Python 2.7.18, python-is-python2, 2.7.17-4
RelatedPackageVersions:
dpkg 1.19.7ubuntu3
- apt 2.0.2ubuntu0.1
+ apt 2.0.2ubuntu0.1
SambaClientRegression: Yes
SourcePackage: samba
Title: package samba-common-bin 2:4.11.6+dfsg-0ubuntu1.6 failed to
install/upgrade: o subprocesso instalado, do pacote samba-common-bin, o script
post-installation retornou erro do status de saída 1
UpgradeStatus: Upgraded to focal on 2020-11-21 (3 days ago)
** Changed in: samba (Ubuntu Groovy)
Assignee: (unassigned) => Athos Ribeiro (athos-ribeiro)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1905387
Title:
samba-common-bin should call systemd-tmpfiles before testparm
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/samba/+bug/1905387/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs