On 04/14/2012 06:58 AM, Gary Thomas wrote:
On 2012-04-14 02:04, Koen Kooi wrote:

Op 13 apr. 2012, om 21:31 heeft Denys Dmytriyenko het volgende
geschreven:

On Fri, Apr 13, 2012 at 09:54:23AM -0400, Graham Murphy wrote:
I'll add an extra data point. I find that boot succeeds if the file
/etc/machine-id exists, even if it is an empty file.

So far as I can tell from a brief look, systemd tries
to create the file /etc/machine-id, if it does not exist,
but this appears to be attempted when the root file system
is readonly. (And, yes, if you force the root filesystem to
be read-write when /sbin/init starts, again the boot will be
successful.) Not sure yet why that cascades into the observed
failure yet.

Thanks, that's a good analysis! Wondering why it's not manifesting in
a proper
error message in systemd...

I have a hack to get around this:

koen@dominion:/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-core/systemd$
git diff .
diff --git a/meta-oe/recipes-core/systemd/systemd_git.bb
b/meta-oe/recipes-core/systemd/systemd_git.bb
index b23e5f5..f4ca72a 100644
--- a/meta-oe/recipes-core/systemd/systemd_git.bb
+++ b/meta-oe/recipes-core/systemd/systemd_git.bb
@@ -14,7 +14,7 @@ inherit gitpkgv
PKGV = "v${GITPKGVTAG}"

PV = "git"
-PR = "r26"
+PR = "r27"

inherit useradd pkgconfig autotools vala perlnative

@@ -64,6 +64,10 @@ do_install() {

# create dir for journal
install -d ${D}${localstatedir}/log/journal
+
+ # create machine-id
+ # 20:12< mezcalero> koen: you have three options: a) run
systemd-machine-id-setup at install time, b) have / read-only and an
empty file there (for stateless) and c) boot with / writable
+ touch ${D}${sysconfdir}/machine-id
}

But I wonder if we should fix it differently. We already have this one:

koen@dominion:/OE/tentacle/sources/meta-openembedded/meta-oe/recipes-core/systemd$
cat ./systemd-compat-units/machineid.service
[Unit]
Description=Machine ID first boot configure
DefaultDependencies=no
ConditionPathExists=|!/etc/machine-id
After=remount-rootfs.service
Before=sysinit.target

[Service]
ExecStart=/bin/systemd-machine-id-setup
RemainAfterExit=No
Type=oneshot
StandardOutput=syslog

[Install]
WantedBy=basic.target
WantedBy=sysinit.target

Which apparently is too late.

I'm not convinced that this is the problem. I just rebuilt
systemd-image and Cloud9-image from scratch (BeagleBone) and
it came up just fine _without_ /etc/machine-id. I'm not sure
what changed between my original report and now, but it's working
now and I've not done anything different other than update my
Angstrom tree and rebuild.

My working Angstrom setup is:

OE Build Configuration:
BB_VERSION = "1.15.1"
TARGET_ARCH = "arm"
TARGET_OS = "linux-gnueabi"
MACHINE = "beaglebone"
DISTRO = "angstrom"
DISTRO_VERSION = "v2012.04-core"
TUNE_FEATURES = "armv7a vfp neon cortexa8"
TARGET_FPU = "vfp-neon"
meta-angstrom = "master:bfb6c66ee406d2e3db618e41e32d51d63e430657"
meta-oe
toolchain-layer
meta-efl
meta-gpe
meta-gnome
meta-xfce
meta-initramfs = "master:204f537a181e3532ef8ba9ddadb7baf49a3b2be5"
meta-opie = "master:efa3892b20a4ef80274e56e5633ebd62c16f9731"
meta-java = "master:3386ea6c96096f107f43f282f654e5afa456109e"
meta-mozilla = "master:5737d9fa26a632a27b2aa760c0d01190f0a17d0e"
meta-ti = "master:246cb75a970e9aab0a3974a55e72c6d90f1df151"
meta-efikamx = "master:2c09a3a780b23448e8a6ca964256ff7f5ccba65d"
meta-nslu2 = "master:3d9fc951b05b4df476374b6fc3085ebac7f293ee"
meta-htc
meta-nokia
meta-openmoko
meta-palm = "master:ba34166f4565b52209adea82cef196615cf82246"
meta-handheld = "master:1f05a15aceb4c3a19fa070463b58125b5658b2a9"
meta-intel
meta-sugarbay
meta-crownbay
meta-emenlow
meta-fishriver
meta-fri2
meta-jasperforest
meta-n450 = "master:15860ffb2164629c27f4bf49614efad5177441c4"
meta = "master:17f3cc1be0e8648cb4579793a9eb5a701deac85f"



What is your build machine OS by chance? Thanks

_______________________________________________
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel

Reply via email to