From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mo4-p00-ob.smtp.rzone.de ([85.215.255.22]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kjge2-0005o5-MF for ptxdist@pengutronix.de; Mon, 30 Nov 2020 11:42:59 +0100 From: Artur Wiebe Date: Mon, 30 Nov 2020 11:42:54 +0100 Message-Id: <20201130104254.112387-1-artur@4wiebe.de> MIME-Version: 1.0 Subject: [ptxdist] [PATCH] machine-id: make using rc-once optional List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de Cc: Artur Wiebe If not set only an empty /etc/machine-id will be installed. Signed-off-by: Artur Wiebe --- projectroot/etc/machine-id | 0 rules/machine-id.in | 22 ++++++++++++++++++---- rules/machine-id.make | 4 ++++ rules/machine-id.postinst | 5 +++-- 4 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 projectroot/etc/machine-id diff --git a/projectroot/etc/machine-id b/projectroot/etc/machine-id new file mode 100644 index 000000000..e69de29bb diff --git a/rules/machine-id.in b/rules/machine-id.in index f18fec554..2a3901f41 100644 --- a/rules/machine-id.in +++ b/rules/machine-id.in @@ -1,11 +1,25 @@ ## SECTION=initmethod -config MACHINE_ID +menuconfig MACHINE_ID tristate prompt "create /etc/machine-id" - select RC_ONCE if RUNTIME - select UTIL_LINUX_NG if !INITMETHOD_SYSTEMD - select UTIL_LINUX_NG_UUIDGEN if !INITMETHOD_SYSTEMD + select RC_ONCE if MACHINE_ID_RC_ONCE && RUNTIME + select UTIL_LINUX_NG if MACHINE_ID_RC_ONCE && !INITMETHOD_SYSTEMD + select UTIL_LINUX_NG_UUIDGEN if MACHINE_ID_RC_ONCE && !INITMETHOD_SYSTEMD help Enable this to make sure there is always a unique /etc/machine-id available in the system. + +if MACHINE_ID + +config MACHINE_ID_RC_ONCE + bool "generate (bbinit) or save (systemd) machine-id using rc-once at first boot" + default y + help + If not set only an empty /etc/machine-id will be installed. + Systemd: + If /etc/machine-id exists and is empty, systemd will bind-mount + a file containing the new machine-id over it and later try + to commit it to disk (if /etc/ is writable). + +endif diff --git a/rules/machine-id.make b/rules/machine-id.make index 3883d64cb..5d66829da 100644 --- a/rules/machine-id.make +++ b/rules/machine-id.make @@ -27,7 +27,11 @@ $(STATEDIR)/machine-id.targetinstall: @$(call install_fixup,machine-id,AUTHOR,"Michael Olbrich ") @$(call install_fixup,machine-id,DESCRIPTION,missing) + @$(call install_alternative, machine-id, 0, 0, 0444, /etc/machine-id) + +ifdef MACHINE_ID_RC_ONCE @$(call install_alternative, machine-id, 0, 0, 0755, /etc/rc.once.d/machine-id) +endif @$(call install_finish,machine-id) diff --git a/rules/machine-id.postinst b/rules/machine-id.postinst index 2060129d1..f1648226b 100644 --- a/rules/machine-id.postinst +++ b/rules/machine-id.postinst @@ -1,3 +1,4 @@ #!/bin/sh -touch "$DESTDIR/etc/machine-id" -$DESTDIR/usr/sbin/enable-rc-once machine-id +if [ -f $DESTDIR/etc/rc.once.d/machine-id ]; then + $DESTDIR/usr/sbin/enable-rc-once machine-id +fi -- 2.29.2 _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de