Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] Makefile: Fix overlay overwriting everything
@ 2016-02-10 15:58 Maxime Hadjinlian
  2016-02-10 20:09 ` Arnout Vandecappelle
  2016-06-02 22:20 ` Yann E. MORIN
  0 siblings, 2 replies; 8+ messages in thread
From: Maxime Hadjinlian @ 2016-02-10 15:58 UTC (permalink / raw)
  To: buildroot

After bumping from a 2 years old Buildroot installation, I got the
following messages from the kernel at boot:

Failed to execute /init (error -2)

It appears that the overlay mechanisms was causing my issues.

Description:
The overlay mechanisms works by rsync'ing files from a folder specified
by the user into target.
Since c5bd8af65e50a51735eb112fed9cbe6337f14e06, /bin, /sbin and /lib are
symlinked into /usr.

Problem:
If you have an overlay that contains the directory /bin, /sbin or /lib, rsync
will erase the symlink and create a directory in its place.
The directory, say .../target/lib, would *only* contains the overlay's content.
Obviously, this causes a lot of troubles, starting with the kernel
failing to start init (because of missing shared libraries).

Solution:
Telling rsync to treat symlinked dir on the receiver side as directory
allow users to be blissfully ignorant of that problem.

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
---
 Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index 71735b5..2f33ddf 100644
--- a/Makefile
+++ b/Makefile
@@ -655,7 +655,7 @@ endif
 
 	@$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
 		$(call MESSAGE,"Copying overlay $(d)"); \
-		rsync -a --ignore-times $(RSYNC_VCS_EXCLUSIONS) \
+		rsync -a --keep-dirlinks --ignore-times $(RSYNC_VCS_EXCLUSIONS) \
 			--chmod=u=rwX,go=rX --exclude .empty --exclude '*~' \
 			$(d)/ $(TARGET_DIR)$(sep))
 
-- 
2.7.0

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-06-02 22:20 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-10 15:58 [Buildroot] [PATCH] Makefile: Fix overlay overwriting everything Maxime Hadjinlian
2016-02-10 20:09 ` Arnout Vandecappelle
2016-02-10 20:16   ` Maxime Hadjinlian
2016-02-10 20:35     ` Arnout Vandecappelle
2016-02-11  9:10       ` Maxime Hadjinlian
2016-02-11 22:26   ` Peter Korsgaard
2016-02-12 13:40     ` Maxime Hadjinlian
2016-06-02 22:20 ` Yann E. MORIN

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox