Linux-VServer HowTo : Différence entre versions

Un article de Bulles.
Aller à : navigation, rechercher
 
(Liens)
 
(20 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 8: Ligne 8:
  
 
= Noyeau =
 
= Noyeau =
Il faut avoir un noyeau récent. Plutôt que d'opter pour un noyeau de kernel.org, j'ai récupéré le dernier noyeau Debian dans unstable:
+
Il faut avoir un noyeau récent. Plutôt que d'opter pour un noyeau de kernel.org, j'ai utilisé les sources du dernier noyeau Debian dans unstable:
  apt-get install linux-source-2.6.14
+
  $ apt-get install linux-source-2.6.14
 +
$ cd /usr/src
 +
$ tar xjf linux-source-2.6.14.tar.bz2
  
J'ai aussi récupéré le ''.config'' du package ''linux-image-2.6.14-2-686-smp'' pour avoir une base correcte
+
J'ai aussi récupéré le fichier de configuration ''.config'' du package ''linux-image-2.6.14-2-686-smp'' pour avoir une base de configuration correcte.
 +
$ cd /tmp
 +
$ wget ftp://ftp.belnet.be/pub/debian/pool/main/l/linux-2.6/linux-image-2.6.14-2-686-smp_2.6.14-6_i386.deb
 +
$ ar xv linux-source-2.6.14.tar.bz2 data.tar.gz
 +
$ tar xzvf  data.tar.gz ./boot/config-2.6.14-2-686-smp
 +
$ cp boot/config-2.6.14-2-686-smp /usr/src/linux-source-2.6.14/.config
  
On récupère la dernière version stable des patches Linux-VServer sur http://www.13thfloor.at/vserver/s_rel26/v2.01/
+
On applique la dernière version stable des patches Linux-VServer sur http://www.13thfloor.at/vserver/s_rel26/v2.01/
  bzcat ../patch-2.6.14.3-vs2.01.diff.bz2 | patch -p1
+
$ cd /usr/src
 +
$ wget http://www.13thfloor.at/vserver/s_rel26/v2.01/patch-2.6.14.3-vs2.01.diff.bz2
 +
$ cd linux-source-2.6.14
 +
$ bzcat ../patch-2.6.14.3-vs2.01.diff.bz2 | patch -p1
  
Le patch ne s'applique pas entièrement sur un noyeau Debian, il faut patcher ''init/version.c'' à la main (trivial)
+
/!\ Le patch ne s'applique pas entièrement sur un noyeau Debian il faut patcher ''init/version.c'' à la main (trivial).
  
 
On vérifie les paramètres de Linux-VServer:
 
On vérifie les paramètres de Linux-VServer:
  (todo)
+
  $ make menuconfig
  
On génère le noyeau:
+
La section Linux-VServer resemble à ceci:
  (todo)
+
  [*] Enable Legacy Kernel API
 +
[ ]  Show a Legacy Version ID
 +
[ ] Disable Legacy Networking Kernel API
 +
[*] Enable Proc Security
 +
[*] Enable Hard CPU Limits
 +
[ ]  Limit the IDLE task
 +
    Persistent Inode Context Tagging (UID24/GID24) --->
 +
[ ] Tag NFSD User Auth and Files
 +
[ ] VServer Debugging Code
 +
 
 +
Et dans la section ''Device Drivers'' / ''Block Devices'':
 +
<M> Virtual Root device support 
 +
 
 +
Génération d'un noyeau Debian:
 +
$ fakeroot make-kpkg \
 +
  --revision 2.6.14.vs201 \
 +
  --append_to_version -1-vs2.0.1-686-smp \
 +
  --us --uc \
 +
  --rootcmd fakeroot \
 +
  --initrd \
 +
  kernel_image kernel_headers
 +
 
 +
Et finalement installation:
 +
# dpkg -i /usr/src/kernel-image-2.6.14-1-vs2.0.1-686-smp_2.6.14.vs201_i386.deb
  
 
= Outils =
 
= Outils =
Je n'ai pas eu trop de succès avec ''util-vserver'' de la version stable, j'ai donc décidé de recompiler les outils...
+
Je n'ai pas eu trop de succès avec ''util-vserver'' de la version stable, le problème venant plus que probablement des chois pris lors de la compilation du noyeau. J'ai donc décidé de recompiler les outils...
  
 
Pré-requis:
 
Pré-requis:
  apt-get install vlan dietlibc dietlibc-dev e2fslibs-dev beecrypt2 beecrypt2-dev  
+
  # apt-get install vlan dietlibc dietlibc-dev e2fslibs-dev beecrypt2 beecrypt2-dev  
  
 
Les sources stables sont disponibles elles aussi sur http://www.13thfloor.at/vserver/s_rel26/v2.01/:
 
Les sources stables sont disponibles elles aussi sur http://www.13thfloor.at/vserver/s_rel26/v2.01/:
  wget http://www.13thfloor.at/vserver/s_rel26/v2.01/util-vserver-0.30.209.tar.gz
+
  $ cd /usr/src
 +
$ wget http://www.13thfloor.at/vserver/s_rel26/v2.01/util-vserver-0.30.209.tar.gz
 +
$ tar xzf util-vserver-0.30.209.tar.gz
 +
 
 +
Configuration: nous n'allons pas installer le paquet aux endroits habituels:
 +
* L'ensembles des programmes et librairies sous ''/usr/local/vserver'' pour ne pas mélanger avec d'autres paquets
 +
* Les serveurs virtuels irons dan /home/vservers
  
Configure:
+
$ cd util-vserver-0.30.209
  ./configure --prefix=/usr/local/vserver --with-vrootdir=/home/vservers --localstatedir=/var
+
  $ ./configure --prefix=/usr/local/vserver --with-vrootdir=/home/vservers --localstatedir=/var --sysconfdir=/etc
 
  [...]
 
  [...]
 
  util-vserver 0.30.209
 
  util-vserver 0.30.209
Ligne 55: Ligne 94:
 
  Paths:
 
  Paths:
 
                   prefix: /usr/local/vserver
 
                   prefix: /usr/local/vserver
         sysconf-Directory: ${prefix}/etc
+
         sysconf-Directory: /etc
             cfg-Directory: ${prefix}/etc/vservers
+
             cfg-Directory: /etc/vservers
 
         initrd-Directory: $(sysconfdir)/init.d
 
         initrd-Directory: $(sysconfdir)/init.d
 
       pkgstate-Directory: /var/run/vservers
 
       pkgstate-Directory: /var/run/vservers
 
           vserver-Rootdir: /home/vservers
 
           vserver-Rootdir: /home/vservers
  
 +
Compilation:
 +
$ make
 +
# make install
 +
# make install-distribution
 +
 +
Post-install: s'assurer que ''/home/vservers'' est bien ''chroot barrier'' et mettre les permissions sur ''/proc''
 +
# /usr/local/vserver/sbin/setattr --barrier /home/vservers
 +
# /usr/local/vserver/lib/util-vserver/vprocunhide
 +
 +
= Création d'un serveur virtuel =
 +
 +
Il existe un package ''vserver-debiantools'' qui automatise la création de serveurs sous Debian, mais il est basé sur les ''anciennes'' fonctions de Linux-VServer. Nous ferons donc notre création ''à la main'', ce n'est pas compliqué!
 +
 +
Pour faciliter les choses, on va enregistrer les valeurs par défaut:
 +
* Mirroir: ''/etc/vservers/.defaults/apps/debootstrap/mirror'' contient ''ftp://ftp.belnet.be/pub/debian''
 +
# mkdir -p /etc/vservers/.defaults/apps/debootstrap/
 +
# echo ftp://ftp.belnet.be/pub/debian > /etc/vservers/.defaults/apps/debootstrap/mirror
 +
# apt-get install debootstrap
 +
 +
Creation du vserver:
 +
# PKG_EXCLUDE="dhcp-client,fdutils,iptables,libpcap0.7,makedev,pciutils,ppp,pppconfig,pppoe,pppoeconf"
 +
# vserver alesia build \
 +
>  --hostname alesia.bulles-dsl \
 +
>  --interface eth0:172.16.34.44/26 \
 +
>  -m debootstrap -- -d sarge -- --exclude=${PKG_EXCLUDE}
 +
'''Note''': J'ai utilisé ''debootstrap'' de ''testing'', pour éviter certain warnings
 +
 +
Post-install: il faut se débarrasser de tout ce qui touche au hardware lors du boot.
 +
# vserver alesia start
 +
# vserver alesia enter
 +
alesia:/# LANG=C
 +
alesia:/# NO_INIT="makedev hwclock.sh urandom mountnfs.sh umountnfs.sh networking \
 +
>  ifupdown umountfs halt klogd reboot keymap.sh console-screen.sh checkroot.sh \
 +
>  mountvirtfs procps.sh mountall.sh checkfs.sh ifupdown-clean hwclockfirst.sh modutils"
 +
alesia:/# for FILE in $NO_INIT
 +
> do
 +
>  update-rc.d -f $FILE remove
 +
> done
 +
'''Note''': Il se peut qu'une erreur ''proc/uptime can not be accessed. Usually, this is caused by procfs-security'' apparaisse; dans ce cas relancez ''/usr/local/vserver/lib/util-vserver/vprocunhide''
 +
 +
Les packages installés par ''debootstrap'' sont vraiment le minimum. Le plus simple est d'exécuter ''base-config''.
 +
# vserver alesia enter
 +
alesia:/# LANG=C
 +
alesia:/# base-config new
 +
'''Note''': Il semble que ''debootstrap'' utilise ''testing'' pour ses packages!
 +
 +
= Accès réseau =
 +
La plupart des services réseau font un ''bind'' sur l'ensembles des interfaces réseau disponibles. Il faut s'assurer que l'hôte et les serveurs virtuels n'écoutent que sur leurs IP respectives.
 +
 +
Par exemple pour SSH, dans ''/etc/ssh/sshd_config''
 +
ListenAddress  172.16.34.44
 +
 +
= Démarrage au boot =
 +
Les scripts de démarrage:
 +
# update-rc.d vprocunhide defaults 90 10
 +
# update-rc.d vservers-default defaults 91 09
 +
 +
Pour qu'un VServer démarre au boot: mettre ''default'' dans ''/etc/vservers/<vserver>/apps/init/mark''
 +
 +
= Debian Backports =
 +
A noter que http://www.backports.org/ a un noyeau avec les patch vservers ainsi que util-vserver à jour, ce qui simplifie grandement les choses...
 +
 +
= Incantations pour Unbuntu =
 +
Ce petit paragraphe donne les incantations nécessaires pour avoir un ''guest'' Ubuntu Dapper sur un hôte Debian.
 +
 +
== Deboostrap ==
 +
La version de Debian de ''debootstrap'' connait Breezy, mais pas Dapper.
 +
<BR />Pas de panique, il suffit de récupérer le ''/usr/lib/debootstrap/scripts/dapper'' de la version Ubuntu, par exemple:
 +
# wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap-udeb_0.3.3.0ubuntu3~dapper1_i386.udeb
 +
# ar xv debootstrap-udeb_0.3.3.0ubuntu3~dapper1_i386.udeb data.tar.gz
 +
# tar xzvf data.tar.gz \*/dapper
 +
# cp usr/lib/debootstrap/scripts/dapper /usr/lib/debootstrap/scripts/
 +
 +
== Création du vserver ==
 +
La liste d'exclude est celle de Sarge et est peut-être à affiner...
 +
# PKG_EXCLUDE="dhcp-client,fdutils,iptables,libpcap0.7,makedev,pciutils,ppp,pppconfig,pppoe,pppoeconf"
 +
# vserver ubuntu build --hostname ubuntu.icevpn.net \
 +
> --interface eth1:172.16.1.19/24 \
 +
> -m debootstrap --context 58 \
 +
> -- -d dapper -m http://ubuntu.mirrors.skynet.be/pub/ubuntu.com/ubuntu \
 +
> -- --exclude=${PKG_EXCLUDE}
 +
 +
== Post-install ==
 +
Ubuntu Dapper ne fournit pas l'équivalent de l'habituel ''base-config'' Debian. Quelques étapes à faire à la main...
 +
 +
Le paquet ''ubuntu-minimal'' est installé. Je découragerais l'installation de ''ubuntu-standard'' (et ''ubuntu-base'' qui vont essentiellment installer des paquets inutiles, voire inutilisable dans un VServer... (lvm, mdadm, ...)
 +
 +
# vserver ubuntu start
 +
 +
# vserver ubuntu enter
 +
 +
root@ubuntu:/# LANG=C
 +
 +
root@ubuntu:/# apt-get -u install at cron dnsutils file ftp info iputils-arping iputils-tracepath \
 +
> logrotate ltrace man-db manpages mime-support mtr-tiny nano openssh-client psmisc rsync tcpdump \
 +
> telnet time w3m wget
 +
 +
root@ubuntu:/# NO_INIT="makedev hwclock.sh urandom umountnfs.sh networking umountfs halt klogd \
 +
> reboot keymap.sh console-screen.sh checkroot.sh mountvirtfs procps.sh mountall.sh checkfs.sh"
 +
 +
root@ubuntu:/# for FILE in $NO_INIT
 +
> do
 +
>  update-rc.d -f $FILE remove
 +
> done
 +
 +
root@ubuntu:/# tzconfig
 +
 +
root@ubuntu:/# dpkg-reconfigure --default-priority passwd
 +
 +
Dans Unbutu, il est nécessaire d'installer les ''language packs'' pour avoir les ''locales'':
 +
root@ubuntu:/# apt-get -u install language-pack-en
 +
root@ubuntu:/# apt-get -u install language-pack-fr
 +
 +
Il ne reste plus qu'a installer les paquets habituels:
 +
root@ubuntu:/# apt-get -u install openssh-server apache2 libapache2-mod-php5
  
 
= Liens =
 
= Liens =
* Page du projet: [http://linux-vserver.org/]
+
* Page du projet: http://linux-vserver.org/
 +
* [http://www.5dollarwhitebox.org/wiki/index.php/Howtos_Linux-Vserver_Debian_Sarge Howtos Linux-Vserver Debian Sarge]
 +
* [http://linux-vserver.org/Step-by-Step+Guide+2.6 Step-by-Step Guide 2.6]
 +
* [http://www.13thfloor.at/vserver/s_rel26/v2.01/ Linux-VServer L26 Stable]
 +
* [http://linux-vserver.org/alpha+util-vserver alpha util-vserver]
 +
* [http://www.nongnu.org/util-vserver/doc/conf/configuration.html Flower page]
 +
* [http://www.13thfloor.at/old/VServer/HowTo_LVMQS.shtml  VS Secure Quota HowTo]

Version actuelle datée du 5 septembre 2006 à 14:47

Notes sur l'installation de Linux-VServer sur une Debian Sarge / Linux 2.6

Introduction

Il y a déjà quelques HowTo's dans la place, le but ici n'est pas d'un ré-écrire un, mais plutot d'avoir un brain-dump de mon installation...

Pré-requis

Debian Sarge installé et à jour

Noyeau

Il faut avoir un noyeau récent. Plutôt que d'opter pour un noyeau de kernel.org, j'ai utilisé les sources du dernier noyeau Debian dans unstable:

$ apt-get install linux-source-2.6.14
$ cd /usr/src
$ tar xjf linux-source-2.6.14.tar.bz2

J'ai aussi récupéré le fichier de configuration .config du package linux-image-2.6.14-2-686-smp pour avoir une base de configuration correcte.

$ cd /tmp
$ wget ftp://ftp.belnet.be/pub/debian/pool/main/l/linux-2.6/linux-image-2.6.14-2-686-smp_2.6.14-6_i386.deb
$ ar xv linux-source-2.6.14.tar.bz2 data.tar.gz
$ tar xzvf  data.tar.gz ./boot/config-2.6.14-2-686-smp
$ cp boot/config-2.6.14-2-686-smp /usr/src/linux-source-2.6.14/.config

On applique la dernière version stable des patches Linux-VServer sur http://www.13thfloor.at/vserver/s_rel26/v2.01/

$ cd /usr/src
$ wget http://www.13thfloor.at/vserver/s_rel26/v2.01/patch-2.6.14.3-vs2.01.diff.bz2
$ cd linux-source-2.6.14
$ bzcat ../patch-2.6.14.3-vs2.01.diff.bz2 | patch -p1

/!\ Le patch ne s'applique pas entièrement sur un noyeau Debian il faut patcher init/version.c à la main (trivial).

On vérifie les paramètres de Linux-VServer:

$ make menuconfig

La section Linux-VServer resemble à ceci:

[*] Enable Legacy Kernel API
[ ]   Show a Legacy Version ID
[ ] Disable Legacy Networking Kernel API
[*] Enable Proc Security
[*] Enable Hard CPU Limits
[ ]   Limit the IDLE task
    Persistent Inode Context Tagging (UID24/GID24)  --->
[ ] Tag NFSD User Auth and Files
[ ] VServer Debugging Code

Et dans la section Device Drivers / Block Devices:

<M> Virtual Root device support   

Génération d'un noyeau Debian:

$ fakeroot make-kpkg \
  --revision 2.6.14.vs201 \
  --append_to_version -1-vs2.0.1-686-smp \
  --us --uc \
  --rootcmd fakeroot \
  --initrd \
  kernel_image kernel_headers

Et finalement installation:

# dpkg -i /usr/src/kernel-image-2.6.14-1-vs2.0.1-686-smp_2.6.14.vs201_i386.deb

Outils

Je n'ai pas eu trop de succès avec util-vserver de la version stable, le problème venant plus que probablement des chois pris lors de la compilation du noyeau. J'ai donc décidé de recompiler les outils...

Pré-requis:

# apt-get install vlan dietlibc dietlibc-dev e2fslibs-dev beecrypt2 beecrypt2-dev 

Les sources stables sont disponibles elles aussi sur http://www.13thfloor.at/vserver/s_rel26/v2.01/:

$ cd /usr/src
$ wget http://www.13thfloor.at/vserver/s_rel26/v2.01/util-vserver-0.30.209.tar.gz
$ tar xzf util-vserver-0.30.209.tar.gz

Configuration: nous n'allons pas installer le paquet aux endroits habituels:

  • L'ensembles des programmes et librairies sous /usr/local/vserver pour ne pas mélanger avec d'autres paquets
  • Les serveurs virtuels irons dan /home/vservers
$ cd util-vserver-0.30.209
$ ./configure --prefix=/usr/local/vserver --with-vrootdir=/home/vservers --localstatedir=/var --sysconfdir=/etc
[...]
util-vserver 0.30.209

Features:
                      CC: gcc, gcc (GCC) 3.3.5 (Debian 1:3.3.5-13)
                     CXX: g++, g++ (GCC) 3.3.5 (Debian 1:3.3.5-13)
                CPPFLAGS: 
                  CFLAGS: '-g -O2 -std=c99 -Wall -pedantic -W'
                CXXFLAGS: '-g -O2 -ansi -Wall -pedantic -W -fmessage-length=0'
              build/host: i686-pc-linux-gnu/i686-pc-linux-gnu
            Use dietlibc: yes
      Build C++ programs: yes
      Build C99 programs: yes
          Available APIs: compat,v11,v13,fscompat,net,oldproc,olduts
           ext2fs Source: e2fsprogs
   syscall(2) invocation: alternative
     vserver(2) syscall#: 273/glibc

Paths:
                  prefix: /usr/local/vserver
       sysconf-Directory: /etc
           cfg-Directory: /etc/vservers
        initrd-Directory: $(sysconfdir)/init.d
      pkgstate-Directory: /var/run/vservers
         vserver-Rootdir: /home/vservers

Compilation:

$ make
# make install
# make install-distribution

Post-install: s'assurer que /home/vservers est bien chroot barrier et mettre les permissions sur /proc

# /usr/local/vserver/sbin/setattr --barrier /home/vservers
# /usr/local/vserver/lib/util-vserver/vprocunhide

Création d'un serveur virtuel

Il existe un package vserver-debiantools qui automatise la création de serveurs sous Debian, mais il est basé sur les anciennes fonctions de Linux-VServer. Nous ferons donc notre création à la main, ce n'est pas compliqué!

Pour faciliter les choses, on va enregistrer les valeurs par défaut:

# mkdir -p /etc/vservers/.defaults/apps/debootstrap/
# echo ftp://ftp.belnet.be/pub/debian > /etc/vservers/.defaults/apps/debootstrap/mirror
# apt-get install debootstrap

Creation du vserver:

# PKG_EXCLUDE="dhcp-client,fdutils,iptables,libpcap0.7,makedev,pciutils,ppp,pppconfig,pppoe,pppoeconf"
# vserver alesia build \
>  --hostname alesia.bulles-dsl \
>  --interface eth0:172.16.34.44/26 \
>  -m debootstrap -- -d sarge -- --exclude=${PKG_EXCLUDE}

Note: J'ai utilisé debootstrap de testing, pour éviter certain warnings

Post-install: il faut se débarrasser de tout ce qui touche au hardware lors du boot.

# vserver alesia start
# vserver alesia enter
alesia:/# LANG=C
alesia:/# NO_INIT="makedev hwclock.sh urandom mountnfs.sh umountnfs.sh networking \
>  ifupdown umountfs halt klogd reboot keymap.sh console-screen.sh checkroot.sh \ 
>  mountvirtfs procps.sh mountall.sh checkfs.sh ifupdown-clean hwclockfirst.sh modutils"
alesia:/# for FILE in $NO_INIT
> do
>   update-rc.d -f $FILE remove
> done

Note: Il se peut qu'une erreur proc/uptime can not be accessed. Usually, this is caused by procfs-security apparaisse; dans ce cas relancez /usr/local/vserver/lib/util-vserver/vprocunhide

Les packages installés par debootstrap sont vraiment le minimum. Le plus simple est d'exécuter base-config.

# vserver alesia enter
alesia:/# LANG=C
alesia:/# base-config new

Note: Il semble que debootstrap utilise testing pour ses packages!

Accès réseau

La plupart des services réseau font un bind sur l'ensembles des interfaces réseau disponibles. Il faut s'assurer que l'hôte et les serveurs virtuels n'écoutent que sur leurs IP respectives.

Par exemple pour SSH, dans /etc/ssh/sshd_config

ListenAddress  172.16.34.44

Démarrage au boot

Les scripts de démarrage:

# update-rc.d vprocunhide defaults 90 10
# update-rc.d vservers-default defaults 91 09

Pour qu'un VServer démarre au boot: mettre default dans /etc/vservers/<vserver>/apps/init/mark

Debian Backports

A noter que http://www.backports.org/ a un noyeau avec les patch vservers ainsi que util-vserver à jour, ce qui simplifie grandement les choses...

Incantations pour Unbuntu

Ce petit paragraphe donne les incantations nécessaires pour avoir un guest Ubuntu Dapper sur un hôte Debian.

Deboostrap

La version de Debian de debootstrap connait Breezy, mais pas Dapper.
Pas de panique, il suffit de récupérer le /usr/lib/debootstrap/scripts/dapper de la version Ubuntu, par exemple:

# wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap-udeb_0.3.3.0ubuntu3~dapper1_i386.udeb
# ar xv debootstrap-udeb_0.3.3.0ubuntu3~dapper1_i386.udeb data.tar.gz
# tar xzvf data.tar.gz \*/dapper
# cp usr/lib/debootstrap/scripts/dapper /usr/lib/debootstrap/scripts/

Création du vserver

La liste d'exclude est celle de Sarge et est peut-être à affiner...

# PKG_EXCLUDE="dhcp-client,fdutils,iptables,libpcap0.7,makedev,pciutils,ppp,pppconfig,pppoe,pppoeconf"
# vserver ubuntu build --hostname ubuntu.icevpn.net \
> --interface eth1:172.16.1.19/24 \
> -m debootstrap --context 58 \
> -- -d dapper -m http://ubuntu.mirrors.skynet.be/pub/ubuntu.com/ubuntu \
> -- --exclude=${PKG_EXCLUDE}

Post-install

Ubuntu Dapper ne fournit pas l'équivalent de l'habituel base-config Debian. Quelques étapes à faire à la main...

Le paquet ubuntu-minimal est installé. Je découragerais l'installation de ubuntu-standard (et ubuntu-base qui vont essentiellment installer des paquets inutiles, voire inutilisable dans un VServer... (lvm, mdadm, ...)

# vserver ubuntu start

# vserver ubuntu enter

root@ubuntu:/# LANG=C

root@ubuntu:/# apt-get -u install at cron dnsutils file ftp info iputils-arping iputils-tracepath \
> logrotate ltrace man-db manpages mime-support mtr-tiny nano openssh-client psmisc rsync tcpdump \
> telnet time w3m wget

root@ubuntu:/# NO_INIT="makedev hwclock.sh urandom umountnfs.sh networking umountfs halt klogd \
> reboot keymap.sh console-screen.sh checkroot.sh mountvirtfs procps.sh mountall.sh checkfs.sh"

root@ubuntu:/# for FILE in $NO_INIT
> do
>   update-rc.d -f $FILE remove
> done

root@ubuntu:/# tzconfig

root@ubuntu:/# dpkg-reconfigure --default-priority passwd

Dans Unbutu, il est nécessaire d'installer les language packs pour avoir les locales:

root@ubuntu:/# apt-get -u install language-pack-en
root@ubuntu:/# apt-get -u install language-pack-fr

Il ne reste plus qu'a installer les paquets habituels:

root@ubuntu:/# apt-get -u install openssh-server apache2 libapache2-mod-php5

Liens