Package: live-installer Version: 34 Followup-For: Bug #652946
Hi again. Because tar process doesn't return ant error, apparently, I didn't try to extract it's error output in my previous tests. When I did, by adding someting like "2> /target/tar-errors.txt" in the "tar xv" line, the file showed this tar: can't remove old file ./var/lock: Is a directory So the extraction is not completed and stops when extracting /var/lock **and** does not return an error to live-installer. Maybe the exit code of tar extraction process should be also be redirected to track future errors while extracting the filesystem. After trying to get busybox tar to exclude var/lock, without success because tar in debian busybox does not handle exclude option, I've tried the lenny approach I've seen in live-installer.postinst history in git repo, and use live system installed tar to extract the filesystem excluding var/lock. chroot . tar c . --exclude=var/lock | \ (chdir /target && tar xv 2> /target/tar-errors.txt) | \ This gave me another error later upon install about /var/run: tar: can't remove old file ./var/run: Is a directory Then I added var/run to excludes, rebuilt udeb, rebuild live image and the install worked without missing dirs and files, even the excluded dirs were in /target/var. After boot no errors. Patch attached. Merry Christmas. -- System Information: Debian Release: wheezy/sid APT prefers testing APT policy: (500, 'testing') Architecture: i386 (i686) Kernel: Linux 3.1.0-1-686-pae (SMP w/1 CPU core) Locale: LANG=pt_PT.UTF-8, LC_CTYPE=pt_PT.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
>From a99ca344df7ac6f40e550bf5ab1e4b7172b07b23 Mon Sep 17 00:00:00 2001 From: Rui Miguel P. Bernardo <rui.bernardo...@gmail.com> Date: Sat, 24 Dec 2011 14:24:52 +0000 Subject: [PATCH] use live system tar to use exclude --- debian/live-installer.postinst | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/debian/live-installer.postinst b/debian/live-installer.postinst index 800038b..1779082 100644 --- a/debian/live-installer.postinst +++ b/debian/live-installer.postinst @@ -44,7 +44,8 @@ install_live_system () { OLD_IFS=$IFS mkdir -p /target exec 4>&0 - tar c . | \ + # we need to use live system tar to use exclude + chroot . tar c . --exclude=var/lock --exclude=var/run | \ (chdir /target && tar xv) | \ ( while read line; do -- 1.7.2.5