Forráskód Böngészése

base-files: merge /etc/passwd on rw-rootfs

Support installations without root-overlayfs (and hence without /rom)
when migrating user accounts.

Signed-off-by: Imran Khan <[email protected]>
Signed-off-by: Daniel Golle <[email protected]>
[simplified patch, bumped PKG_RELEASE, cleaned message]
Imran Khan 4 éve
szülő
commit
9c2eceef90

+ 1 - 1
package/base-files/Makefile

@@ -12,7 +12,7 @@ include $(INCLUDE_DIR)/version.mk
 include $(INCLUDE_DIR)/feeds.mk
 
 PKG_NAME:=base-files
-PKG_RELEASE:=237
+PKG_RELEASE:=238
 PKG_FLAGS:=nonshared
 
 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/

+ 5 - 3
package/base-files/files/lib/preinit/80_mount_root

@@ -20,11 +20,13 @@ do_mount_root() {
 	boot_run_hook preinit_mount_root
 	[ -f /sysupgrade.tgz ] && {
 		echo "- config restore -"
+		cp /etc/passwd /etc/group /etc/shadow /tmp
 		cd /
 		tar xzf /sysupgrade.tgz
-		missing_lines /rom/etc/passwd /etc/passwd >> /etc/passwd
-		missing_lines /rom/etc/group /etc/group >> /etc/group
-		missing_lines /rom/etc/shadow /etc/shadow >> /etc/shadow
+		missing_lines /tmp/passwd /etc/passwd >> /etc/passwd
+		missing_lines /tmp/group /etc/group >> /etc/group
+		missing_lines /tmp/shadow /etc/shadow >> /etc/shadow
+		rm /tmp/passwd /tmp/group /tmp/shadow
 		# Prevent configuration corruption on a power loss
 		sync
 	}