As title says. Might be ceph build system bug or change. This patch to ebuild solves the problem: --- a/sys-cluster/ceph/ceph-15.2.2.ebuild 2020-05-19 16:04:22.057307000 +0000 +++ b/sys-cluster/ceph/ceph-15.2.2-r1.ebuild 2020-05-21 20:32:53.458478000 +0000 @@ -262,6 +262,7 @@ -DWITH_RDMA=OFF -DWITH_TBB=OFF -DSYSTEMD_UNITDIR=$(systemd_get_systemunitdir) + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR=$(systemd_get_systemunitdir) -DEPYTHON_VERSION="${EPYTHON#python}" -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PN}-${PVR}" -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc" Reproducible: Always
Another problem, the systemd unit files are now installed by cmake-utils_src_install, so I am not sure it this part is relevant anymore: # units aren't installed by the build system unless systemd is enabled # so no point installing these with the USE flag disabled if use systemd; then systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" \ "ceph-mds@.service" systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" \ "ceph-osd@.service" fi As a consequence, the /usr/lib/ceph ExecStartPre problem is back. This patch fixes the issue: diff -ur ceph-15.2.2/systemd/ceph-osd@.service.in ceph-15.2.2.af/systemd/ceph-osd@.service.in --- ceph-15.2.2/systemd/ceph-osd@.service.in 2020-05-18 16:25:12.000000000 +0000 +++ ceph-15.2.2.af/systemd/ceph-osd@.service.in 2020-05-21 21:20:58.318655944 +0000 @@ -10,7 +10,7 @@ EnvironmentFile=-@SYSTEMD_ENV_FILE@ Environment=CLUSTER=ceph ExecStart=/usr/bin/ceph-osd -f --cluster ${CLUSTER} --id %i --setuser ceph --setgroup ceph -ExecStartPre=/usr/lib/ceph/ceph-osd-prestart.sh --cluster ${CLUSTER} --id %i +ExecStartPre=/usr/libexec/ceph/ceph-osd-prestart.sh --cluster ${CLUSTER} --id %i ExecReload=/bin/kill -HUP $MAINPID LockPersonality=true MemoryDenyWriteExecute=true
One problem more with the ebuild. The /run/ceph is not created, so the daemons silently fail to create the socket files. They work, but ceph tell does not work. I have added this: @@ -358,6 +360,11 @@ "ceph-osd@.service" fi + if use systemd; then + insinto /usr/lib/tmpfiles.d + newins "${FILESDIR}"/tmpfiles.d-ceph.conf ceph.conf + fi + udev_dorules udev/*.rules with cat ceph/files/tmpfiles.d-ceph.conf d /run/ceph 0770 ceph ceph -
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8077590d4fd447e07508c7e511e9190920f0ca8 commit c8077590d4fd447e07508c7e511e9190920f0ca8 Author: Patrick McLean <patrick.mclean@sony.com> AuthorDate: 2020-05-28 19:08:53 +0000 Commit: Patrick McLean <chutzpah@gentoo.org> CommitDate: 2020-05-28 19:09:22 +0000 sys-cluster/ceph-15.2.2-r1: Revbump, fix bugs #724508 and #724438 Adds a "diskprediction" USE flag to enable diskprediction_local since it forces an old scipy (forcing off python3_8) (bug #724438) Fixes up the systemd unit and adds a tmpfiles entry (bug #724508) Closes: https://bugs.gentoo.org/724508 Closes: https://bugs.gentoo.org/724438 Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.100, Repoman-2.3.22 Signed-off-by: Patrick McLean <chutzpah@gentoo.org> .../{ceph-15.2.2.ebuild => ceph-15.2.2-r1.ebuild} | 30 +++++++++++++++------- .../ceph/files/ceph-15.2.2-systemd-unit.patch | 12 +++++++++ sys-cluster/ceph/files/ceph-tmpfilesd | 1 + sys-cluster/ceph/metadata.xml | 1 + 4 files changed, 35 insertions(+), 9 deletions(-)