ltsp client not able to load boot file: ltsp/amd64.tmp/pxelinux.0

Bug #813837 reported by Patrick Wright on 2011-07-20
This bug affects 6 people
Affects Status Importance Assigned to Milestone
ltsp (Ubuntu)
Stéphane Graber
Stéphane Graber
Stéphane Graber

Bug Description

Running lucid-alternate-amd64.iso (10.04.03)

Both the LTSP server and thin client (pxe boot) are able to obtain an IP address from the internal dhcp server.

The thin client starts to connect and fails with an error unable to locate the filename: ltsp/amd64.tmp/pxelinux.0

In /etc/ltsp/dhcpd.conf
Change the line
    filename "/ltsp/amd64.tmp/pxelinux.0";
    filename "/ltsp/amd64/pxelinux.0";

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: ltsp-server-standalone 5.2.1-0ubuntu9
ProcVersionSignature: Ubuntu 2.6.32-33.70-generic
Uname: Linux 2.6.32-33-generic x86_64
Architecture: amd64
Date: Wed Jul 20 16:03:59 2011
InstallationMedia: Ubuntu 10.04.3 LTS "Lucid Lynx" - Release amd64 (20110719.2)
PackageArchitecture: all
SourcePackage: ltsp

Patrick Wright (patrickmwright) wrote :
Colin Watson (cjwatson) wrote :

What filename is it failing to locate?

Jean-Baptiste Lallement (jibel) wrote :

The client tries to download the file ltsp/amd64.tmp/pxelinux.0 but the real location is ltsp/amd64/pxelinux.0

Quick workaround:
Connect on the server
change to /var/lib/tftpboot/ltsp
and create a symlink
$ sudo ln -s amd64 amd64.tmp

Changed in ltsp (Ubuntu Lucid):
importance: Undecided → High
status: New → Triaged
summary: - ltsp client not able to load boot file
+ ltsp client not able to load boot file: ltsp/amd64.tmp/pxelinux.0
Jean-Baptiste Lallement (jibel) wrote :

Or better change it in /etc/ltsp/dhcp.conf

description: updated
Jean-Baptiste Lallement (jibel) wrote :

The problem seems to be this piece of code in ltsp-client-builder.postinst:

chroot /target ltsp-update-image >$COMPRESS_LOG 2>&1 &
while [ -z ${LOOP} ]; do
    rawval=$(tail -1 $COMPRESS_LOG |sed -e 's/^.* //')
    if [ "$(echo $rawval|grep '[0-9]\%$')" ];then
        val=$(echo $rawval|tr -d %)
        if [ "$val" -gt 95 ]; then
            db_progress SET 100
            sleep 3
            if [ "$val" -gt "${OLDVAL}" ];then
                db_progress SET $val

ltsp-update-image is started in the background but the loop to update the debconf progress bar exits when the mksquashfs progress reach 96%
So there is a possibility to exit the loop and continue the execution _before_ ltsp-update-image ends.

In the case $ARCH.img.tmp still exists when the script does the substitution in dhcpd.conf . But in the end the image is correctly renamed and there is no evidence of the failure excepted the wrong entry in dhcpd.conf

Changed in ltsp (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Canonical Foundations Team (canonical-foundations)


Can you attach your installer syslog file?

Having .tmp in the path usually indicates that ltsp-update-image failed
somehow as its last step is to rename amd64.img.tmp to amd64.img.

How much disk space did you give your VM? At build time LTSP can use
around 1GB more than what's needed for a regular Ubuntu install.

Jean-Baptiste Lallement (jibel) wrote :

Here are the installer logs of a failed install.
The VM is set to 8GB of disk and 1GB of RAM.
After installation there are 52% of disk space left.

The same installation, with the same VM setup and same image, failed once and succeeded another time. I tried 10.04.2 which failed and 10.04 which passed.

Jean-Baptiste Lallement (jibel) wrote :

ltsp-image-build.log is truncated. The last line is the progress bar of mksquashfs at 99%.

Changed in ltsp (Ubuntu):
assignee: Canonical Foundations Team (canonical-foundations) → Stéphane Graber (stgraber)
Changed in ltsp (Ubuntu Lucid):
assignee: nobody → Stéphane Graber (stgraber)
Changed in ltsp (Ubuntu Precise):
status: New → Triaged
importance: Undecided → High
assignee: nobody → Stéphane Graber (stgraber)
Changed in ltsp (Ubuntu Lucid):
milestone: none → ubuntu-10.04.4
Changed in ltsp (Ubuntu Precise):
milestone: none → precise-alpha-1
tags: added: rls-mgr-p-tracking
Jean-Baptiste Lallement (jibel) wrote :

lowering importance because it is a race condition that is rarely met.

Changed in ltsp (Ubuntu Lucid):
importance: High → Medium
Changed in ltsp (Ubuntu Precise):
importance: High → Medium
Kate Stewart (kate.stewart) wrote :

moving milestone to alpha-2

Changed in ltsp (Ubuntu Precise):
milestone: precise-alpha-1 → precise-alpha-2
Martin Pitt (pitti) on 2012-01-20
Changed in ltsp (Ubuntu Lucid):
milestone: ubuntu-10.04.4 → none
Stéphane Graber (stgraber) wrote :

Marking lucid as Won't fix as the bug is in a udeb and if we don't fix it in for the milestone, there's no point in fixing it at all.

The rational for not fixing in 10.04.4 is the high risk of regression that comes with touching that script, for fixing a bug that only appears so rarely that as far as I know, Patrick Wright (Canonical QA) is the only one to reproduce it occasionally on loaded test machines.

I hope to have this script redesigned in 12.04 to be race free.

Changed in ltsp (Ubuntu Lucid):
status: Triaged → Won't Fix
Stéphane Graber (stgraber) wrote :

Moving to beta1 where we'll have the new upstream LTSP and some more changes (including a rewrite of that d-i script).

Changed in ltsp (Ubuntu Precise):
milestone: precise-alpha-2 → ubuntu-12.04-beta-1
Stéphane Graber (stgraber) wrote :

Bumping to high as LTSP 5.3 turned compression back on, adding a few minutes of install time and so making this bug happen even on SSD. No LTSP install seems possible until the d-i component is fixed.

Changed in ltsp (Ubuntu Precise):
importance: Medium → High
Changed in ltsp (Ubuntu Precise):
status: Triaged → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ltsp - 5.3.2-0ubuntu1

ltsp (5.3.2-0ubuntu1) precise; urgency=low

  [ Stéphane Graber ]
  * New upstream release (5.3.1)
    - A lot of Debian specific fixes (code path not used by Ubuntu)
    - Ensure /sys and /proc are always mounted when calling init-ltsp
    - Issue a message when ltsp-update-image is disabled
    - Ensure that lts.conf ends up in /etc
    - Only overwrite lts.conf if it has non-zero size
    - Only download tftp from $NBD_ROOT_HOST if it is defined
    - ltsp_config: delete the cache files on boot
    - Start ltsp-client-core only when an LTSP boot was requested
    - set_lts_var: remove old values from the cache file
    - Don't hardcode squashfs as the FSTYPE (LP: #696435)
    - ltsp-build-client: copy /etc/default/keyboard if it exists
  * New upstream release (5.3.2)
    - Use consistently (instead of sometimes having .254)
    - Append to ltsp_config, don't overwrite it.
    - Rearrange init-ltsp.d scripts to set SERVER in more cases.
    - Remove I10-sound as it seems very deprecated.
    - Set sound volume on fat clients too (LP: #923923)
    - Disconnect NBD mounts when the ltsp-client service is stopped
    - Update xfreerdp script to handle the case where rdesktop or
      xfreerdp aren't there.
  * Replace dhcp3-server by isc-dhcp-server (package was renamed)
    (LP: #934014)
  * Setup a clean /etc/nbd-server/config if not already present
  * Use everywhere by default. (LP: #390155)
  * Improvements to debian/ltsp-client-builder.postinst:
    - Wait for ltsp-update-image to actually exit. (LP: #813837)
    - Fix outdated check for universe (was looking for karmic ...)

  [ Alkis Georgopoulos ]
  * Drop mythbuntu debian/extra-plugins hook as it's now covered by the
    upstream fat client implementation and didn't work anyway.
  * Drop debian/ltsp-client-core.dirs as these are now created at boot
    time in ltsp-init.
  * Simplify debian/ltsp-client-core.install
  * LTSP 5.3 allows for ltsp-client-core to be installed on a regular
    machine, so there's no reason to prevent its installation.
    Drop ltsp-client-core.preinst and ltsp-client-core.templates and
    refresh the translations.
  * Drop nbdswapd from ltsp-server.postinst as that's now done in a
    named NBD export since LTSP 5.3.
 -- Stephane Graber <email address hidden> Thu, 23 Feb 2012 14:21:57 -0500

Changed in ltsp (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers