New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debian Template: jessie-minimal build fails because eatmydata is missing inside the chroot #1098

Closed
adrelanos opened this Issue Aug 3, 2015 · 5 comments

Comments

Projects
None yet
2 participants
@adrelanos
Member

adrelanos commented Aug 3, 2015

Relevant error:

/usr/sbin/chroot: failed to run command 'eatmydata': No such file or directory

Full log:

[user@qubes-build qubes-builder]$ make template
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Exporting indices...
Building template: jessie-minimal
+ . ./builder_setup
++ SCRIPTSDIR=/home/user/qubes-builder/qubes-src/builder-debian/template_debian
++ '[' '!' -d /home/user/qubes-builder/qubes-src/builder-debian/template_debian ']'
++ '[' -z /home/user/qubes-builder/cache/jessie ']'
++ export SCRIPTSDIR CACHEDIR
+ . ./umount_kill.sh
++ . ./functions.sh
+++ set -e
+++ VERBOSE=1
+++ DEBUG=1
+++ . ./functions-name.sh
++++ set -e
++++ VERBOSE=1
++++ DEBUG=1
+++ XTRACE=
+++ '[' '!' '' = true ']'
+++ colors
+++ [[ -t 2 ]]
+++ export build_already_defined_colors=true
+++ build_already_defined_colors=true
+++ '[' 1 -ge 2 -o 1 == 1 ']'
+++ output 'INFO: Currently running script: ./prepare_image'
+++ '[' 1 -ge 1 ']'
+++ [[ -z '' ]]
+++ [[ ehB != ehxB ]]
+++ basename ./prepare_image
++ '[' prepare_image == umount_kill.sh -a prepared_images/jessie-minimal.img ']'
+ '[' 1 -eq 1 ']'
+ '[' 1 == 1 ']'
+ export 'YUM_OPTS= -q'
+ YUM_OPTS=' -q'
++ readlink -m mnt
+ export INSTALLDIR=/home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+ INSTALLDIR=/home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+ mkdir -p /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+ echo '-> Preparing instalation of jessie template...'
-> Preparing instalation of jessie template...
+ /home/user/qubes-builder/qubes-src/builder-debian/template_debian/00_prepare.sh
INFO: Currently running script: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/00_prepare.sh
INFO: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/distribution.sh imported by: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/00_prepare.sh
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt' before un-mounting
INFO: Locating buildStep files: 00_prepare.sh suffix: pre
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
DEBUG: Reusing existing image prepared_images/jessie-minimal.img
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt' before un-mounting
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
INFO: Locating buildStep files: 00_prepare.sh suffix: post
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
+ '[' -f prepared_images/jessie-minimal.img ']'
+ echo '-> Image file already exists, assuming *update*...'
-> Image file already exists, assuming *update*...
+ mount -o loop prepared_images/jessie-minimal.img /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
++ readlink -m /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+ trap 'umount_kill /home/user/qubes-builder/qubes-src/linux-template-builder/mnt' EXIT
+ /home/user/qubes-builder/qubes-src/builder-debian/template_debian/01_install_core.sh
INFO: Currently running script: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/01_install_core.sh
INFO: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/distribution.sh imported by: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/01_install_core.sh
DEBUG: Installing base system using debootstrap
INFO: Locating buildStep files: 01_install_core.sh suffix: pre
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
INFO: Locating buildStep files: 01_install_core.sh suffix: post
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
+ echo '-> Installing package groups...'
-> Installing package groups...
+ /home/user/qubes-builder/qubes-src/builder-debian/template_debian/02_install_groups.sh
INFO: Currently running script: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/02_install_groups.sh
INFO: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/distribution.sh imported by: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/02_install_groups.sh
DEBUG: Configuring and Installing packages for jessie
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt/' before un-mounting
Creating DBUS uuid...
Deactivating initctl...
Adding 'local diversion of /sbin/initctl to /sbin/initctl.distrib'
Creating policy-rc.d
Hacking invoke-rc.d to ignore missing init scripts...
INFO: Locating buildStep files: 02_install_groups.sh suffix: pre
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
INFO: Locating buildStep files: 02_install_groups.sh suffix: post
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
Reactivating initctl...
Removing 'local diversion of /sbin/initctl to /sbin/initctl.distrib'
Removing policy-rc.d
Restoring invoke-rc.d...
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt/' before un-mounting
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/sys
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/run
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/proc
+ trap - EXIT
+ echo '-> Unmounting prepared_image...'
-> Unmounting prepared_image...
++ readlink -m /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+ umount_kill /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
++ getXtrace
++ [[ hB != hxB ]]
++ echo 0
+ local xtrace=0
+ set +x
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt' before un-mounting
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+ exit 0
+ '[' 2 -eq 0 ']'
+ '[' xprepared_images/jessie-minimal.img = x ']'
+ '[' xjessie-minimal = x ']'
++ id -ur
+ ID=0
+ '[' 0 '!=' 0 ']'
+ '[' 1 == 1 ']'
+ export 'YUM_OPTS= -q'
+ YUM_OPTS=' -q'
+ trap cleanup ERR
+ export IMG=qubeized_images/jessie-minimal/root.img
+ IMG=qubeized_images/jessie-minimal/root.img
+ mkdir -p qubeized_images/jessie-minimal
+ echo '--> Copying prepared_images/jessie-minimal.img to qubeized_images/jessie-minimal/root.img...'
--> Copying prepared_images/jessie-minimal.img to qubeized_images/jessie-minimal/root.img...
+ cp prepared_images/jessie-minimal.img qubeized_images/jessie-minimal/root.img
+ echo '--> Mounting qubeized_images/jessie-minimal/root.img'
--> Mounting qubeized_images/jessie-minimal/root.img
+ mkdir -p mnt
+ mount -o loop qubeized_images/jessie-minimal/root.img mnt
+ export INSTALLDIR=mnt
+ INSTALLDIR=mnt
+ /home/user/qubes-builder/qubes-src/builder-debian/template_debian/04_install_qubes.sh
INFO: Currently running script: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/04_install_qubes.sh
INFO: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/distribution.sh imported by: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/04_install_qubes.sh
DEBUG: Installing Qubes packages
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt/' before un-mounting
Creating DBUS uuid...
Deactivating initctl...
Adding 'local diversion of /sbin/initctl to /sbin/initctl.distrib'
Creating policy-rc.d
Hacking invoke-rc.d to ignore missing init scripts...
INFO: Locating buildStep files: 04_install_qubes.sh suffix: pre
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
INFO: Trap ERR and EXIT signals and cleanup (umount)
INFO: Install Qubes Repo and update
INFO: Defining Qubes CUSTOMREPO Location: /home/user/qubes-builder/qubes-src/linux-template-builder/pkgs-for-template/jessie
INFO: Mounting local qubes_repo
DEBUG: Updating system
Ign file: jessie InRelease
Ign file: jessie Release.gpg
Get:1 file: jessie Release [1592 B]                                    
Ign file: jessie/main Translation-en                                                                                        
Get:2 http://security.debian.org jessie/updates InRelease [63.1 kB]                                                         
Get:3 http://http.debian.net jessie InRelease [134 kB]                                                  
Get:4 http://security.debian.org jessie/updates/main Sources [69.4 kB]
Get:5 http://security.debian.org jessie/updates/main amd64 Packages [122 kB]
Get:6 http://security.debian.org jessie/updates/main Translation-en [66.8 kB]                                   
Hit http://http.debian.net jessie/main amd64 Packages                                                                                                       
Hit http://http.debian.net jessie/contrib amd64 Packages                                                                                                    
Hit http://http.debian.net jessie/non-free amd64 Packages          
Hit http://http.debian.net jessie/contrib Translation-en           
Hit http://http.debian.net jessie/main Translation-en              
Hit http://http.debian.net jessie/non-free Translation-en
Fetched 455 kB in 1s (322 kB/s)              
Reading package lists... Done
INFO: Execute any distribution specific flavor or sub flavor
INFO: Locating buildStep files: 04_install_qubes.sh suffix: jessie
./functions.sh: line 170: declare: GLOBAL_CACHE: not found
INFO: Install Qubes packages listed in packages_qubes.list file(s)
DEBUG: Smart files located for: 'packages_qubes.list' (suffix: ):
DEBUG: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/packages_qubes.list
DEBUG: Installing extra packages from: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/packages_qubes.list
INFO: Packages: qubes-core-agent qubes-gui-agent chrony ntpdate libxvmc1 x11-session-utils xfonts-100dpi xfonts-75dpi xfonts-scalable
/usr/sbin/chroot: failed to run command 'eatmydata': No such file or directory
ERROR: /home/user/qubes-builder/qubes-src/builder-debian/template_debian/04_install_qubes.sh: Error. Cleaning up and un-mounting any existing mounts
Reactivating initctl...
Removing 'local diversion of /sbin/initctl to /sbin/initctl.distrib'
Removing policy-rc.d
Restoring invoke-rc.d...
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt' before un-mounting
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/tmp/qubes_repo
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/sys
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/run
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt/proc
INFO: umount /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
++ cleanup
++ errval=127
++ trap - ERR
++ trap
++ umount_kill /home/user/qubes-builder/qubes-src/linux-template-builder/mnt
+++ getXtrace
+++ [[ ehB != ehxB ]]
+++ echo 0
++ local xtrace=0
++ set +x
Attempting to kill any processes still running in '/home/user/qubes-builder/qubes-src/linux-template-builder/mnt' before un-mounting
++ exit 127
Makefile:47: recipe for target 'rootimg-build' failed
make[1]: *** [rootimg-build] Error 127
Makefile:279: recipe for target 'template-local-jessie+minimal+no-recommends' failed
make: *** [template-local-jessie+minimal+no-recommends] Error 1
[user@qubes-build qubes-builder]$
@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 4, 2015

Member
+ '[' -f prepared_images/jessie-minimal.img ']'
+ echo '-> Image file already exists, assuming *update*...'
-> Image file already exists, assuming *update*...

You've probably created that image with BUILDER_TURBO_MODE disabled.
Do we want to fix this, or just add some info to documentation (that the image needs to be recreated after switching this option)?

Member

marmarek commented Aug 4, 2015

+ '[' -f prepared_images/jessie-minimal.img ']'
+ echo '-> Image file already exists, assuming *update*...'
-> Image file already exists, assuming *update*...

You've probably created that image with BUILDER_TURBO_MODE disabled.
Do we want to fix this, or just add some info to documentation (that the image needs to be recreated after switching this option)?

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Aug 4, 2015

Member

I didn't switch that option. (Considered that, but just moved on to non-minimal image for now.)

Member

adrelanos commented Aug 4, 2015

I didn't switch that option. (Considered that, but just moved on to non-minimal image for now.)

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Aug 4, 2015

Member

I think you have, otherwise eatmydata wouldn't be used. Grep doesn't reveal any direct calls, only through $eatmydata_maybe, which is set here:
https://github.com/QubesOS/qubes-builder-debian/blob/master/template_debian/vars.sh#L41-L44

Member

marmarek commented Aug 4, 2015

I think you have, otherwise eatmydata wouldn't be used. Grep doesn't reveal any direct calls, only through $eatmydata_maybe, which is set here:
https://github.com/QubesOS/qubes-builder-debian/blob/master/template_debian/vars.sh#L41-L44

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Sep 1, 2015

Member

Does it still happen?

Member

marmarek commented Sep 1, 2015

Does it still happen?

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Sep 1, 2015

Member

No.

Member

adrelanos commented Sep 1, 2015

No.

@adrelanos adrelanos closed this Sep 1, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment