Installing a VServer guest with debootstrap and softupdate
Many people don't use the -m fai VServer build method (maybe because it's broken?) but build their VServer guests without FAI, using debootstrap or any other standard method. A guest installed like that will now nothing about FAI, so in order to turn it into a FAI install client, some manual extra steps are necessary at least once. There are also some pitfalls.
The guest cannot NFS mount by default
For security reasons, the defaults do not allow a VServer guest to perform NFS mounts. In case your FAI config space lives on a separate physical server and therefore needs to be mounted through NFS, this will lead to a permission denied error.
To fix this problem, on the VServer host, create a file called
with the following content:
If your VServer guest was already running, make sure to re-start it for these settings to become effective. (Q: Would there be a parameter to set this at guest build time???)
You need a FAI client on your guest
Before you can do anything else, you will need to install the fai-client package:
aptitude install fai-client
The FAI client needs to know about your config space
In the file /etc/fai/fai.conf look for the line:
Uncomment this line and replace yourserver with the hostname of the sevrer that is exporting your config space via NFS.
The guest does not have enough space in /tmp by default
By default, a VServer guest mounts /tmp to a ramdisk with 16 MB of RAM. This will cause the updatebase step of FAI to stall because it tried to write more than 16 MB to a file in /tmp. There are a number of ways to solve that problem, such as
* Unmount /tmp, so it will use the filesystem, not the ramdisk. * Increase the available space in /tmp. * Set the variable TMPDIR to something else, for example using a VSCHILD.var file in your config space.
The guest does not yet have any FAI classes
Make sure to run
fai softupdate -N
as the -N option will make sure that the class detection for your VServer guest is done from scratch. Without the -N option, you will just see an error message saying that /var/log/fai/classes was not found.