[meta-virtualization] [PATCH] ceph: fix ceph-crash failed with /var/lib/ceph/crash/posted not found
Hongzhi.Song
hongzhi.song at windriver.com
Tue Sep 10 20:26:11 PDT 2019
root at intelx86-64: journalctl -xe
ceph-crash[854]: ERROR:_main_:directory /var/lib/ceph/crash/posted does
not exist; please create
Create the directory for both of systemd and sysvinit
Signed-off-by: Hongzhi.Song <hongzhi.song at windriver.com>
---
recipes-extended/ceph/ceph_14.2.3.bb | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/recipes-extended/ceph/ceph_14.2.3.bb b/recipes-extended/ceph/ceph_14.2.3.bb
index 722efe3..25a8ea2 100644
--- a/recipes-extended/ceph/ceph_14.2.3.bb
+++ b/recipes-extended/ceph/ceph_14.2.3.bb
@@ -81,12 +81,36 @@ do_install_append () {
rm ${D}${systemd_unitdir}/system/ceph-fuse.target ${D}${systemd_unitdir}/system/ceph-fuse at .service
}
+do_install_append_class-target () {
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ echo "d /var/lib/ceph/crash/posted 0755 root root - -" > ${D}${sysconfdir}/tmpfiles.d/ceph-placeholder.conf
+ fi
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/default/volatiles
+ echo "d root root 0755 /var/lib/ceph/crash/posted none" > ${D}${sysconfdir}/default/volatiles/99_ceph-placeholder
+ fi
+}
+
+pkg_postinst_${PN}() {
+ if [ -z "$D" ] && [ -e ${sysconfdir}/init.d/populate-volatile.sh ] ; then
+ ${sysconfdir}/init.d/populate-volatile.sh update
+ fi
+}
+
FILES_${PN} += "\
${libdir}/rados-classes/*.so.* \
${libdir}/ceph/compressor/*.so \
${libdir}/rados-classes/*.so \
${libdir}/ceph/*.so \
"
+
+FILES_${PN} += " \
+ /etc/tmpfiles.d/ceph-placeholder.conf \
+ /etc/default/volatiles/99_ceph-placeholder \
+"
+
FILES_${PN}-python = "\
${PYTHON_SITEPACKAGES_DIR}/* \
"
--
2.23.0
More information about the meta-virtualization
mailing list