The following systemd unit file, as deployed by the sys-cluster/ceph-10.2.5 ebuild has an "ExecStartPre" clause that references a file that is not installed by the ebuild. Specifically, there is no such script: /usr/lib/ceph/ceph-osd-prestart.sh mimir ceph # cat /usr/lib/systemd/system/ceph-osd@.service [Unit] Description=Ceph object storage daemon After=network-online.target local-fs.target time-sync.target Wants=network-online.target local-fs.target time-sync.target PartOf=ceph-osd.target [Service] LimitNOFILE=1048576 LimitNPROC=1048576 EnvironmentFile=-/etc/sysconfig/ceph 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 ExecReload=/bin/kill -HUP $MAINPID ProtectHome=true ProtectSystem=full PrivateTmp=true TasksMax=infinity Restart=on-failure StartLimitInterval=30min StartLimitBurst=3 [Install] WantedBy=ceph-osd.target These are the scripts, as installed by the ebuild on my system: mimir ceph # equery f ceph | grep .sh$ /usr/lib64/ceph/ceph-monstore-update-crush.sh /usr/lib64/ceph/ceph_init.sh /usr/libexec/ceph/ceph-osd-prestart.sh /usr/libexec/ceph/ceph_common.sh The unit file needs to be adjusted to point to libexec. Portage 2.3.0 (python 3.4.5-final-0, hardened/linux/amd64/no-multilib, gcc-4.9.4, glibc-2.22-r4, 4.7.10-hardened x86_64) ================================================================= System Settings ================================================================= System uname: Linux-4.7.10-hardened-x86_64-AMD_E-350D_APU_with_Radeon-tm-_HD_Graphics-with-gentoo-2.3 KiB Mem: 16142256 total, 220780 free KiB Swap: 1048572 total, 1030116 free Timestamp of repository gentoo: Sun, 01 Jan 2017 00:06:06 +0000 sh bash 4.3_p48-r1 ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 distcc 3.2rc1 x86_64-pc-linux-gnu [disabled] app-shells/bash: 4.3_p48-r1::gentoo dev-lang/perl: 5.22.3_rc4::gentoo dev-lang/python: 2.7.12::gentoo, 3.4.5::gentoo dev-util/cmake: 3.7.1::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.3::gentoo sys-apps/openrc: 0.22.4::gentoo sys-apps/sandbox: 2.10-r1::gentoo sys-devel/autoconf: 2.69::gentoo sys-devel/automake: 1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15::gentoo sys-devel/binutils: 2.25.1-r1::gentoo sys-devel/gcc: 4.9.4::gentoo sys-devel/gcc-config: 1.7.3::gentoo sys-devel/libtool: 2.4.6-r2::gentoo sys-devel/make: 4.1-r1::gentoo sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers) sys-libs/glibc: 2.22-r4::gentoo Repositories: gentoo location: /usr/portage sync-type: git sync-uri: https://github.com/gentoo-mirror/gentoo priority: -1000 jonesmz-public-overlay location: /usr/portage-overlays/jonesmz-public-overlay sync-type: git sync-uri: https://github.com/jonesmz/gentoo-overlay.git masters: gentoo Installed sets: @pc-base-system, @portage ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=x86-64 -mtune=generic -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -O2 -pipe -march=x86-64 -mtune=generic -O2 -pipe" DISTDIR="/usr/portage-distfiles" EMERGE_DEFAULT_OPTS=" --jobs --keep-going --newuse --deep --backtrack=3000 --complete-graph --with-bdeps=y" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs buildpkg clean-logs compress-build-logs compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles installsources merge-sync news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms split-elog split-log splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_US.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j1" PKGDIR="/usr/portage-packages" PORTAGE_COMPRESS="xz" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="acl amd64 avahi berkdb bzip2 clang cli cracklib crypt cxx dbus dri gd gdbm gudev hardened iconv ipv6 justify lm_sensors mmx mmxext modules ncurses nls nptl openmp pam pax_kernel pcre pie python readline samba seccomp session sse sse2 ssl ssp systemd tcpd threads udisks unicode urandom xattr xtpax zeroconf zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core authz_host dir mime unixd socache_shmcb info log_config" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx sse sse2 mmxext" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="coreboot efi-64 emu qemu pc" INPUT_DEVICES="evdev mouse keyboard libinput" KERNEL="linux" L10N="en en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="arm aarch64 x86_64" QEMU_USER_TARGETS="arm aarch64 x86_64" RUBY_TARGETS="ruby21 ruby21" USERLAND="GNU" VIDEO_CARDS="r600 radeon radeonsi amdgpu vesa modesetting fbdev qxl" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON ================================================================= Package Settings ================================================================= sys-cluster/ceph-10.2.5::gentoo was built with the following: USE="cephfs libaio nss radosgw tcmalloc -babeltrace -cryptopp -debug -fuse -gtk -jemalloc -ldap -libatomic -lttng -static-libs -test -xfs -zfs" PYTHON_TARGETS="python2_7 python3_4 -python3_5" CFLAGS="-O2 -pipe -march=x86-64 -mtune=generic -O2 -pipe -fPIC" CXXFLAGS="-O2 -pipe -O2 -pipe -march=x86-64 -mtune=generic -O2 -pipe -fPIC"
Any chance you can provide a patch? I have no easy way of testing systemd units
I just updated to 14.2.11 and noticed this was still a problem. I see that the upstream bug has been fixed with this commit: https://github.com/ceph/ceph/commit/bd8b8540f6b67a25585ca9cf140d6de760bc2a43#diff-cc2318a716c63e0b38fe4ce975142d06 Any chance you could backport it to whatever the latest stabilized version of ceph will be?
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe81ebff670ff16591084df5d04184b6912f40bf commit fe81ebff670ff16591084df5d04184b6912f40bf Author: Patrick McLean <patrick.mclean@sony.com> AuthorDate: 2020-09-25 00:53:15 +0000 Commit: Patrick McLean <chutzpah@gentoo.org> CommitDate: 2020-09-25 00:53:30 +0000 sys-cluster/ceph: Revbumps, fix for systemd units (bug #604328) Closes: https://bugs.gentoo.org/604328 Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-3.0.8, Repoman-3.0.1 Signed-off-by: Patrick McLean <chutzpah@gentoo.org> sys-cluster/ceph/ceph-14.2.11-r1.ebuild | 401 +++++++++++++++++++++ .../{ceph-15.2.5.ebuild => ceph-15.2.5-r1.ebuild} | 2 + .../ceph/files/ceph-14.2.11-systemd-unit-fix.patch | 27 ++ .../ceph/files/ceph-15.2.5-systemd-unit-fix.patch | 27 ++ 4 files changed, 457 insertions(+)