[Pkg-ltsp-devel] Bug#509640: ltsp-server: confusing out of the box experience

Vagrant Cascadian vagrant at freegeek.org
Wed Dec 24 18:55:37 UTC 2008


On Tue, Dec 23, 2008 at 05:51:40PM -0800, Ross Boylan wrote:
> I just installed this package, and there were a lot of things that seemed odd
> or confusing.

thanks for your report!
 
> The reference to /opt in the package installation and man
> ltsp-build-client seemed odd, because Debian doesn't use that (not
> sure abou FHS).  I thought the defaults when I ran it would be
> different, but they weren't.

arguably, according to the FHS ltsp should probably be installed in /srv,
though when LTSP was first developed, /srv didn't even exist. all other LTSP
implementations use /opt/ltsp, so we decided to stick with it for Debian.

though really, i don't think /opt/ltsp is so off regarding the FHS:

  /opt : Add-on application software packages

  Purpose

  /opt is reserved for the installation of add-on application software packages.

  A package to be installed in /opt must locate its static files in a separate /
  opt/<package> or /opt/<provider> directory tree, where <package> is a name that
  describes the software package and <provider> is the provider's LANANA
  registered name.

> No /etc/ltsp directory was created by the installation.  I created it
> and made ltsp-build-client.conf:
> 
> dist=testing
> mirror=debian.betterworld.us
> base=/var/ltsp
> 
> This was a guess; I found no syntax specification for the file.  The
> man page seems to imply the command-line options can go in the file
> ("If present, defaults will be read from the configuration  file
> /etc/ltsp/ltsp-build-client.conf, and will be overridden by using the
> command line options."), but it didn't work.

good guess without any documentation, though they're actually upper case: DIST,
MIRROR and BASE. also note that according to the manpage you need to use
file:/// or http:// URL. you've already filed a bug report on the issue with
setting DIST to testing; it relies on valid codenames from debootstrap.
 
> It's not clear to me to what extent I need an lts.conf with the
> parameters in /usr/share/doc/lts-parameters.txt.gz if the server is
> the machine I'm building on.  Also, is the config file lts.conf (as it
> says in the parameter file) or ltsp.conf?

it is in fact lts.conf (due to decisions made years and years ago upstream),
and it is only used in the chroot, not on the server itself.

with ltsp5, lts.conf is entirely optional.
 
> I'm not using 192.169.168.0.1; again, it's not clear to me exactly
> what I need to change, or if it's detected automatically (QuickInstall
> says if you change IP addresses you should run ltsp-update-sshkeys,
> but doesn't mention anything else--and I'm not changing anything).

recommended documentation for debian is:

  http://wiki.debian.org/LTSP/Howto

you'll need to edit your DHCP configuration to reflect your network settings,
and ltsp-update-sshkeys should run whenever you bring an interface up, so that
should be covered.
 
> man ltsp-build-client uncertainties:
> Does this need to be run as root? (yes)

> Do "mirrors," "packages", and "distribution" refer to the usual Debian
> things of that name, or is it some upstream concept? (apparently
> Debian)

do you have some proposed text you would like to see added to the man page for
the above two items?

> If I change base do I need to tweak the clients, or is that automatic?

the client doesn't need to know anything about the base location, however, some
of the server tools (ltsp-update-sshkeys, ltsp-update-kernels) may need to be
explicitly told to use the alternate locations. using an alternate base
location is not well tested, and there are likely bugs.

> To try to summarize what I think would help:
> 1. build an /etc/ltsp directory and populate it with sample config
> files, if appropriate (that is, if packages are supposed to create
> their /etc/ directories).

i would consider doing such with /usr/share/doc/ltsp-server/examples, but i'm
not going to populate /etc/ with configuration files unless they're actually
needed to function properly, as the defaults work without them.

> 2. Change the default chroot to something more Debianny,
> e.g. /var/ltsp if appropriate (policy consistent).

again, i think /opt is not inappropriate according to FHS, even if /srv is more
appropriate.  but there is a huge amount of and cross-distro consistancy and
documentation lost by switching that location.

> 3. Provide more of an overview.

where do you think an overview belongs? is http://wiki.debian.org/LTSP/Howto
insufficient?

> 4. Provide more details in the man pages, including the format of the
> configuration files (I found ltsp.conf configuration on the web, but
> nothing for the builder).

they're all NAME=value pairs, though a brief overview in the manpages
would be a good idea, it would be hard to write in a distro-agnostic
way, as the relevent values would be totally different. so i might just
stick with example configuration files.

> 5. Use ltsp consistently for file names (or lts).

lts.conf is kept as is for historical consistancy, everything else uses "ltsp".

> There's probably a lot I'm misunderstanding, but it would be nice if
> it were easier to understand :)

it always is, yes. :)
 
> I'm also a little puzzled that both nbd-server and a tftpd server are
> necessary (and an nfs server), though I'm willing to take it on faith.

tftp is needed to boot with PXE, nbd-server is needed to provide network swap,
and nfs-kernel-server is used for the root filesystem.

i hope these explanations help. i'll try and address some of the issues, though
probably post-lenny, as we're in freeze.

live well,
  vagrant





More information about the Pkg-ltsp-devel mailing list