====== 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 :
* je place tout dans le répertoire ///var/lib/dak// au lieu de ///opt/dak// ;
* je paramètre dak de façon à n'avoir qu'une seule version de distribution nommée //fdl// avec comme principale section //main//.
Abonde est en version sarge de Debian et il en est de même du paquet dak.
L'installation comprend les étapes suivantes :
- installation de postgresql ;
- installation d'un serveur ftp pour recevoir les paquets (ici vsftpd) ;
- installation et configuration appropriée de dak (le gros morceau) ;
- 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) :
* [[/etc/katie/katie.conf d'abonde]]
==== /var/lib/dak/katie/apt.conf ====
Modifications apportées :
- remplacement de « duck » par « fdl » ;
- une seule version « unstable » (qui contiendra des rétroproductions pour sarge !) ;
- sections « main », « contrib » et « non-free » ;
- ajout de kfreebsd-i386.
* [[/var/lib/dak/katie/apt.conf d'abonde]]
==== /var/lib/dak/katie/katie.conf ====
Modifications apportées :
- ajout des commentaires dans katie.conf suggérés [[http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=329616|ici]] ;
- suppression d'« experimental » : une seule version « unstable » ;
- ajout de versions « stable » et « testing » identiques à « unstable » pour essayer de faire plaisir à [[denise]] ;
- Dinstall::MyEmailAddress devient Lehobey@free.fr ;
- Dinstall::MyAdminAddress devient LEHOBEY@free.fr (remplace ftpmaster) ;
- Alicia::MyEmailAddress devient LEHOBEY@free.fr ;
- Melanie::MyEmailAddress devient LEHOBEY@free.fr ;
- Suite::Unstable::Components : ajout de non-free ;
- Suite::Unstable::Architectures : ajout de kfreebsd-i386 ;
- remplacement de « duck » par « fdl » ;
- Architectures : ajout de « kfreebsd-i386 "Intel IA32 running kFreeBSD" » ;
- Component : ajout de « non-free » ;
- Dinstall::SigningKeyIds paramétré pour la clef 50483642 (voir plus bas) ;
À faire :
- Dinstall::MyHost ;
- Dinstall::BugServer ;
- Dinstall::PackagesServer ;
- Suite::Unstable::Announce ;
* [[/var/lib/dak/katie/katie.conf d'abonde]]
===== 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 -> 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)
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.unchecked d'abonde]]
==== /var/lib/dak/katie/cron.daily ====
Créé de toutes pièces à partir des exemples dans ///usr/share/doc/dak/crontabs//.
Points importants :
- le « export SCRIPTVARS » du début pointe vers ///var/lib/dak/katie/vars// ;
- la sauvegarde de la base se fait dans ///var/lib/dak/backup/dump...// ;
- « 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/cron.daily d'abonde]]
==== /var/lib/dak/katie/vars ====
Modifications apportées :
- aucune pour l'instant ;
* [[/var/lib/dak/katie/vars d'abonde]]