[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#401603: d-i: i386 netinst installgui fails to boot due to broken file attribs in /dev

On Monday 04 December 2006 20:57, Frans Pop wrote:
> With some help from Colin, I managed to find as most probably cause
> that /dev/console and /dev/null have incorrect file attributes in the
> gtk initrd:

I cannot reproduce this error on my own machine, so I suspect it is 
something local on Joey's daily build box.

Note that because fakeroot is used, the files in the tree will not have 
the correct attributes if you look at them after the build (thanks 
dondelcaro). fakeroot keeps an internal status of files that is lost when 
the daemon exits as the build is completed.

I still find it very strange that only one build target is affected.


Could you check with the following command that the initrd created in your 
daily builds indeed contains the wrong devices:
$ zcat tmp/cdrom_gtk/initrd.gz | cpio -i --list -v | grep " dev/"

If so, maybe the attached patch can help find out how/where they get 
created incorrectly.

Index: Makefile
--- Makefile	(revision 43172)
+++ Makefile	(working copy)
@@ -416,6 +416,7 @@
 	# Always needed, in case devfs is not mounted on boot.
 	mknod $(TREE)/dev/console c 5 1
 	mknod $(TREE)/dev/null c 1 3
+	ls -l $(TREE)/dev 2>/dev/null || true
 	mkdir -p $(EXTRAUDEBSDIR)
@@ -432,6 +433,7 @@
 		$(foreach udeb,$(EXTRAUDEBS),$(UDEBDIR)/$(udeb).udeb)
+	ls -l $(TREE)/dev 2>/dev/null || true
 	# Library reduction. Existing libs from udebs are put in the udeblibs
 	# directory and mklibs is made to use those in preference to the
 	# system libs.
@@ -470,6 +472,7 @@
 	echo "Version: $(subst _,-,$(targetstring))-$(BUILD_DATE)" >> $(DPKGDIR)/status
 	echo "Description: debian installation image" >> $(DPKGDIR)/status
 	echo >> $(DPKGDIR)/status
+	ls -l $(TREE)/dev 2>/dev/null || true
 ifdef DROP_LANG
 	# Remove languages from the templates.
@@ -510,6 +513,7 @@
 	# Remove extra udebs now that we're done with them.
+	ls -l $(TREE)/dev 2>/dev/null || true
 	# Tree target ends here. Whew!
 	@touch $@
@@ -561,6 +565,7 @@
 	LOCPATH=$(LOCALE_PATH) LC_ALL=C.UTF-8 reduce-font /usr/src/unifont.bdf < $(TEMP)/all.utf > $(TEMP)/unifont.bdf
 	bdftobogl -b $(TEMP)/unifont.bdf > $@.tmp
 	mv $@.tmp $@
+	ls -l $(TREE)/dev 2>/dev/null || true
 # Create a compressed image of the root filesystem.
 $(TEMP_INITRD): $(STAMPS)tree-$(targetstring)-stamp arch_tree
@@ -591,6 +596,7 @@
 		echo "Unsupported filesystem type"; \
 		exit 1 ;; \
+	ls -l $(TREE)/dev 2>/dev/null || true
 # Create the images for dest/. Those are the targets called from config.
@@ -817,10 +823,12 @@
 	else \
 		sudo /bin/mount -t devfs dev $(TREE)/dev; \
+	ls -l $(TREE)/dev 2>/dev/null || true
 .PHONY: tree_umount
 	-@[ ! -L $(TREE)/proc/self ] || [ ! -c $(TREE)/dev/tty ] || sudo /bin/umount $(TREE)/proc
+	ls -l $(TREE)/dev 2>/dev/null || true
 # For manual invocation, we provide a demo rule. This starts the
 # d-i demo from the tree in tmp.

Attachment: pgpVSckg1H05G.pgp
Description: PGP signature

Reply to: