Table des matières

Mon installation de dak sur abonde

Je décris ici une première installation « de production » de dak sur abonde (dédiée à ce seul usage). Je m'inspire évidemment de l'installation de dak sur ondine avec les différences suivantes :

Abonde est en version sarge de Debian et il en est de même du paquet dak.

L'installation comprend les étapes suivantes :

  1. installation de postgresql ;
  2. installation d'un serveur ftp pour recevoir les paquets (ici vsftpd) ;
  3. installation et configuration appropriée de dak (le gros morceau) ;
  4. installation de debianqueued (à la main) pour transfert des paquets déposés.

postgresql

# aptitude install postgresql

Questions debconf

Où créer la base de données de PostgreSQL ?

/var/lib/postgres/data

Faut-il supprimer les données à la purge du paquet ?

Non

Paramètres régionaux utilisés par le moteur de bases de données :

fr_FR.UTF-8

Ordre jour/mois des dates

Européen

Installation du dak de sarge

# aptitude install dak
Les NOUVEAUX paquets suivants vont être installés : 
  bzip2 dak python-apt python-egenix-mxdatetime python-gnupginterface 
  python-ldap python-pygresql python2.3-egenix-mxdatetime 
  python2.3-egenix-mxtools python2.3-ldap python2.3-pygresql sudo 

Questions debconf

Where to put the base directory for dak?

/var/lib/dak

Nom d'hôte de l'archive :

localhost.localdomain

Nom de votre archive :

archive FDL (abonde)

The name of your dak user.

deb-dak

The name of your dak group.

debadmin

Édition des fichiers de configuration

/etc/katie/katie.conf

Tel que produit par debconf (non modifié pour l'instant donc) :

/var/lib/dak/katie/apt.conf

Modifications apportées :

  1. remplacement de « duck » par « fdl » ;
  2. une seule version « unstable » (qui contiendra des rétroproductions pour sarge !) ;
  3. sections « main », « contrib » et « non-free » ;
  4. ajout de kfreebsd-i386.

/var/lib/dak/katie/katie.conf

Modifications apportées :

  1. ajout des commentaires dans katie.conf suggérés ici ;
  2. suppression d'« experimental » : une seule version « unstable » ;
  3. ajout de versions « stable » et « testing » identiques à « unstable » pour essayer de faire plaisir à denise ;
  4. Dinstall::MyEmailAddress devient Lehobey@free.fr ;
  5. Dinstall::MyAdminAddress devient LEHOBEY@free.fr (remplace ftpmaster) ;
  6. Alicia::MyEmailAddress devient LEHOBEY@free.fr ;
  7. Melanie::MyEmailAddress devient LEHOBEY@free.fr ;
  8. Suite::Unstable::Components : ajout de non-free ;
  9. Suite::Unstable::Architectures : ajout de kfreebsd-i386 ;
  10. remplacement de « duck » par « fdl » ;
  11. Architectures : ajout de « kfreebsd-i386 “Intel IA32 running kFreeBSD” » ;
  12. Component : ajout de « non-free » ;
  13. Dinstall::SigningKeyIds paramétré pour la clef 50483642 (voir plus bas) ;

À faire :

  1. Dinstall::MyHost ;
  2. Dinstall::BugServer ;
  3. Dinstall::PackagesServer ;
  4. Suite::Unstable::Announce ;

Création de l'utilisateur deb-dak pour la base postgresql

# su - postgres
$ createuser deb-dak
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) y
CREATE USER

Création des répertoires nécessaires à dak

# su - deb-dak
$ rose

Création de la base de données projectb

# su - deb-dak
$ createdb projectb

Vérification :

$ psql -l
        List of databases
   Name    |  Owner   | Encoding 
-----------+----------+----------
 projectb  | deb-dak  | UNICODE
 template0 | postgres | UNICODE
 template1 | postgres | UNICODE
(3 rows)

Création du groupe ftpmaster pour la base postgresl

C'est absolument nécessaire.

# su - deb-dak
$ psql projectb
projectb=# CREATE GROUP ftpmaster ;
projectb=# ALTER GROUP ftpmaster ADD USER "deb-dak" ;
projectb=# \q

Initialisation de la base de données

NB : détruit les données !

# su - deb-dak
$ cd /usr/share/dak ; ./neve -a

Configurations nécessaires à uma

uma et exim4

Il est nécessaire, pour que les courriels d'uma partent, d’avoir ajouté à /etc/email-addresses quelque chose qui ressemble à :

nobody: LEHOBEY@free.fr

uma et sudo

J'ajoute la ligne suivante à la configuration de sudo (/etc/sudoers), avec visudo :

deb-dak   ALL = NOPASSWD: /usr/sbin/useradd

Initialisation du trousseau de deb-dak

J'utilise l'import de ma clef pour ce faire.

# su - deb-dak
$ gpg --no-default-keyring --keyring /var/lib/dak/keyrings/keyring.gpg --keyserver pgp.mit.edu --recv-keys 2B022951

Création du groupe debuser

Je le crée avec le GID 800 (si j'ai bien compris le katie.conf) sans être convaincu que ce soit vraiment nécessaire.

# addgroup --gid 800 debuser

Création d'un utilisateur

En l'occurence, moi-même.

# su - deb-dak
$ uma -k 2B022951 -u lehobey
0x2B022951 -> Frederic LEHOBEY  <Frederic.Lehobey@free.fr> -> lehobey -> 6750B3F2BF04A269B5D7D677289EB5222B022951
Add user lehobey with above data (y/N) ? y
Added:
Uid:	 lehobey (ID: 1)
Maint:	 Frederic LEHOBEY 
FP:	 6750B3F2BF04A269B5D7D677289EB5222B022951

Création d'une clef pour ziyi

# su - deb-dak
$ gpg --gen-key
$ cp .gnupg/???ring.gpg /var/lib/dak/s3kr1t/dot-gnupg/

Il s'agit de la clef :

pub   1024D/50483642 2005-12-07
      Key fingerprint = C86C 61F1 331A 43B1 3E7C  52A1 0766 BF16 5048 3642
uid                  FDL abonde (FDL abonde deb-dak) <deb-dak@abonde>
sub   2048g/66BE30B4 2005-12-07

Mise en place des tâches récurrentes

NB : les fichiers sont à créer ou éditer en tant que l'utilisateur deb-dak :

# su - deb-dak

/var/lib/dak/katie/cron.unchecked

Tel que produit par dak (non modifié pour l'instant) :

/var/lib/dak/katie/cron.daily

Créé de toutes pièces à partir des exemples dans /usr/share/doc/dak/crontabs.

Points importants :

  1. le « export SCRIPTVARS » du début pointe vers /var/lib/dak/katie/vars ;
  2. la sauvegarde de la base se fait dans /var/lib/dak/backup/dump… ;
  3. « EMAILADDRESS » est replacé par « LEHOBEY@FREE.FR » ;

Déplacement de mklslar :

# cp /usr/share/doc/dak/scripts/mklslar /usr/local/bin/
# chmod +x /usr/local/bin/mklslar

/var/lib/dak/katie/vars

Modifications apportées :

  1. aucune pour l'instant ;