Outils pour utilisateurs

Outils du site


doc:dak:installation_de_dak_sur_ondine

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
doc:dak:installation_de_dak_sur_ondine [2005/08/03 11:12]
lehobey
doc:dak:installation_de_dak_sur_ondine [2005/08/03 18:06] (Version actuelle)
lehobey
Ligne 1: Ligne 1:
 ====== Installation de dak ====== ====== Installation de dak ======
  
-Notes de mon installation de dak sur ondine (d'​après ​le journal ​de cette installation).+Notes de mon installation de dak sur ondine (d'​après ​plusieurs journaux ​de telles installations)
 + 
 +[[projet:​machines:​Ondine]] est une machine de test en **sarge**.
  
 Je suis la procédure du [[/​usr/​share/​doc/​dak/​README.Debian]] dont j'ai aussi fait une [[README.Debian.fr|traduction française]]. Je suis la procédure du [[/​usr/​share/​doc/​dak/​README.Debian]] dont j'ai aussi fait une [[README.Debian.fr|traduction française]].
  
 +===== Installations =====
 +==== Installation de dak ====
 +
 +  # aptitude install dak
 +
 +<​code>​
 +Les NOUVEAUX paquets suivants vont être installés : 
 +  dak libpq3 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 
 +</​code>​
 +
 +=== Réponses aux questions debconf ===
 +J'​essaie de suivre au maximum les choix par défaut.
 +
 +== Where to put the base directory for dak? ==
 +  /opt/dak
 +
 +== Nom d'​hôte de l'​archive : ==
 +  localhost.localdomain
 +
 +**NB** : c'est nécessaire,​ en l'​absence de domaine perso, pour que [[rose]] fonctionne bien.
 +
 +== Nom de votre archive : ==
 +  archive FDL (ondine)
 +
 +== The name of your dak user. ==
 +  deb-dak
 +
 +**NB** : L'​utilisation d'un tiret nécessite d'​être précautionneux avec postgresql.
 +
 +== The name of your dak group. ==
 +  debadmin
 +
 +**NB** : Il ne demande rien sur le groupe //​debuser//​.
 +
 +[[sortie aptitude dak|Résultat]].
 +
 +==== Installation de postgresql ====
 +
 +Je suis :
 +<​file>​
 +6. Steps to a working dak
 +-------------------------
 +
 +a. Have your postgresql up and running. I assume it is on the localhost,
 +   if not change your config files (katie.conf) for dak.
 +</​file>​
 +
 +  # aptitude install postgresql
 +
 +<​code>​
 +Les NOUVEAUX paquets suivants vont être installés : 
 +  postgresql postgresql-client ​
 +</​code>​
 +
 +=== Réponses aux 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@euro
 +
 +== ordre jour/mois des dates ==
 +  Européen
 +
 +[[sortie aptitude postgresql|Résultat]].
 +
 +Et le paquet nous informe :
 +<​file>​
 +A new PostgreSQL database structure was installed.
 +
 +Use /​usr/​bin/​createdb to create a specific database and
 +/​usr/​bin/​createuser to enable other users to connect to a
 +PostgreSQL database.
 +
 +In the first instance, these commands must be run by the
 +user '​postgres'​.
 +</​file>​
 +
 +===== Configurations =====
 +==== Création de l'​utilisateur de la base ====
 +<​file>​
 +b. run createuser YOURDAKUSERNAME with a user that is allowed to create
 +   ​databases and allow YOURDAKUSERNAME to create a database. This user
 +   needs to be superuser in the database as it runs COPY from a file later.
 +</​file>​
 +
 +  # su - postgres
 +  $ createuser deb-dak
 +
 +<​code>​
 +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
 +</​code>​
 +
 +==== Création des répertoires (par défaut) ====
 +<​file>​
 +c. su - YOURDAKUSERNAME
 +d. rose
 +e. Watch how the directories are created.
 +</​file>​
 +
 +  # su - deb-dak
 +  $ rose
 +
 +[[sortie rose|Résultat]].
 +
 +==== Création de la base de données de dak ====
 +Son nom dans les configurations par défaut est //​projectb//​.
 +
 +  # su - deb-dak
 +  $ createdb projectb
 +<​code>​
 +CREATE DATABASE
 +$ psql -l        ​
 +        List of databases
 +   ​Name ​   |  Owner   | Encoding ​
 +-----------+----------+----------
 + ​projectb ​ | deb-dak ​ | LATIN9
 + ​template0 | postgres | LATIN9
 + ​template1 | postgres | LATIN9
 +(3 rows)
 +
 +</​code>​
 +
 +==== Création du groupe ftpmaster ====
 +<​file>​
 +f. Add a group "​ftpmaster"​ to your postgresql database.
 +   At a psql prompt a CREATE GROUP ftpmaster; should do it.
 +   Add your YOURDAKUSERNAME to this group.
 +</​file>​
 +
 +  # su - deb-dak
 +  $ psql projectb
 +
 +<​code>​
 +Welcome to psql 7.4.7, the PostgreSQL interactive terminal.
 +
 +Type:  \copyright for distribution terms
 +       \h for help with SQL commands
 +       \? for help on internal slash commands
 +       \g or terminate with semicolon to execute query
 +       \q to quit
 +
 +</​code>​
 +
 +  projectb=# CREATE GROUP ftpmaster ;
 +
 +  CREATE GROUP
 +
 +  projectb=# ALTER GROUP ftpmaster ADD USER "​deb-dak"​ ;
 +**NB** la présence des guillemets est expliquée dans l'​anomalie [[http://​bugs.debian.org/​cgi-bin/​bugreport.cgi?​bug=23945]].
 +
 +  ALTER GROUP
 +
 +  projectb=# \q
 +
 +==== Initialisation de la base de données ====
 +<​file>​
 +g. Change to your DAKDIR/​katie and run /​usr/​share/​dak/​neve -a and watch
 +   her creating the database. If it ends with some VACUUM and two GRANTs
 +   it worked.
 +   Be careful, neve DROPS your database, so don't run it if you like the
 +   data that is in that database!
 +</​file>​
 +
 +  # su - deb-dak
 +  $ cd /​usr/​share/​dak ; neve -a
 +**NB :** Le //cd// est important !
 +
 +[[sortie neve -a|Résultat]].
 +
 +==== Création des utilisateurs ====
 +<​file>​
 +h. You need to get your maintainers in the database. The Debian Archive
 +   uses a script (emilie) that syncs with its LDAP Server, but you
 +   ​probably don't want to sync with Debian'​s LDAP. :)
 +   If you have a setup with an LDAP Server, look at emilie and their
 +   ​config options. If not, there is a script called uma which helps you
 +   to do this. You basically give it a keyid with the -k parameter and
 +   it will do the rest, after asking you if you like the action.
 +   If you told it to create a system user for the new account it will
 +   run useradd to do the stuff, for that YOURDAKUSERNAME needs sudo
 +   ​access to useradd, with NOPASSWD set. It will also add new users to
 +   the mail whitelist file, if you have that option enabled (it is per
 +   ​default).
 +</​file>​
 +
 +=== uma et exim4 ===
 +Il est nécessaire,​ pour que les courriels d'​[[uma]] partent, d'​avoir ajouté à ///​etc/​email-addresses//​ quelque chose qui ressemble à :
 +<​file>​
 +nobody: LEHOBEY@free.fr
 +</​file>​
 +
 +=== uma et sudo ===
 +J'​ajoute la ligne suivante à la configuration de sudo (///​etc/​sudoers//​),​ avec //visudo// :
 +<​file>​
 +deb-dak ​  ALL = NOPASSWD: /​usr/​sbin/​useradd
 +</​file>​
 +
 +=== Initialisation du trousseau de deb-dak ===
 +<​file>​
 +k. You should setup the keyring for katie now. Do a command similar to
 +   the following, but adjust your path:
 +   gpg --no-default-keyring --keyring /​opt/​dak/​keyrings/​keyring.gpg
 +</​file>​
 +
 +Que je comprends comme s'​appliquant à l'​utilisateur //​deb-dak//​.
 +
 +  # su - deb-dak
 +  $ gpg --no-default-keyring --keyring /​opt/​dak/​keyrings/​keyring.gpg --keyserver pgp.mit.edu --recv-keys 2B022951
 +<​code>​
 +gpg: directory `/​var/​lib/​dak/​.gnupg'​ created
 +gpg: new configuration file `/​var/​lib/​dak/​.gnupg/​gpg.conf'​ created
 +gpg: WARNING: options in `/​var/​lib/​dak/​.gnupg/​gpg.conf'​ are not yet active during this run
 +gpg: keyring `/​var/​lib/​dak/​.gnupg/​secring.gpg'​ created
 +gpg: keyring `/​opt/​dak/​keyrings/​keyring.gpg'​ created
 +gpg: requesting key 2B022951 from hkp server pgp.mit.edu
 +gpg: key 2B022951: duplicated user ID detected - merged
 +gpg: /​var/​lib/​dak/​.gnupg/​trustdb.gpg:​ trustdb created
 +gpg: key 2B022951: public key "​Frederic LEHOBEY <​Frederic.Lehobey@free.fr>"​ imported
 +gpg: no ultimately trusted keys found
 +gpg: Total number processed: 1
 +gpg:               ​imported:​ 1
 +</​code>​
 +
 +=== Création du groupe debuser ===
 +Ce groupe est nécessaire au fonctionnement d'​[[uma]].
 +
 +  # addgroup debuser
 +<​code>​
 +Adding group `debuser'​ (1001)...
 +Fait.
 +</​code>​
 +
 +=== Un exemple de création d'​utilisateur ===
 +<​file>​
 +i. Repeat step h for every user you have.
 +</​file>​
 +
 +  # su - deb-dak
 +  $ uma -k 2B022951 -u lehobey
 +Option //-u// pour choisir l'​identifiant de connexion.
 +<​code>​
 +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
 +</​code>​
 +
 +==== Installation des tâches récurrentes ====
 +<​file>​
 +j. Install the cronjobs you need. Start with cron.unchecked which is
 +   ​already copied in /​YOURDAKPATH/​katie/​cron.unchecked and asks
 +   ​jennifer to process new uploads. The Crontab Debian uses can be found
 +   ​in ​ /​usr/​share/​doc/​dak/​crontabs as an example.
 +</​file>​
 +
 +Donc à partir de l'​exemple dans [[/​usr/​share/​doc/​dak/​crontabs/​katie.crontab]] j'​installe dans les tâches récurrentes de //dak-deb// par
 +  $ crontab -e
 +le fichier suivant :
 +<​file>​
 +SHELL=/​bin/​sh
 +
 +## Archive maintenance
 +MAILTO=fdl
 +2,17,32,47 * * * * sh /​opt/​dak/​katie/​cron.unchecked
 +</​file>​
 +
 +Résumé des changements :
 +  * Remplacement de %%/​org/​ftp.debian.org/​%% par /opt/dak/.
 +  * Suppression de toutes les lignes sauf [[/​opt/​dak/​katie/​cron.unchecked]].
 +  * MAILTO changé de cron@yourhost.yourdomain à fdl (qui existe sur ondine).
 +
 +=== Test de cron.unchecked ===
 +C'est essentiellement [[jennifer]] qui est à l'​oeuvre.
 +  $ sh -x /​opt/​dak/​katie/​cron.unchecked
 +[[sortie cron.unchecked|Résultat]].
 +
 +==== Une clef pour ziyi ====
 +<​file>​
 +l. To let ziyi sign the Release files you need a s3kr1t key.
 +   gpg --gen-key and follow the prompts. Then move it from the home of
 +   ​YOURDAKUSERNAME to the path of "​SigningKeyring"​ from the
 +   ​config. Both, public and private key. Write your Keyid in the config
 +   value "​SigningKeyIds"​. Remember that the signing works automagically,​
 +   so a passphrase on the key doesnt help...
 +</​file>​
 +
 +  # su - deb-dak
 +  $ gpg --gen-key
 +
 +[[sortie gpg --gen-key|Session]].
 +
 +  $ cp .gnupg/???​ring.gpg /​opt/​dak/​s3kr1t/​dot-gnupg/​
 +
 +Puis modification dans /​opt/​dak/​katie/​katie.conf de la ligne
 +<​file>​
 +   ​SigningKeyIds "​CHANGETHISONEFORziyi";​
 +</​file>​
 +en
 +<​file>​
 +   ​SigningKeyIds "​401FAEF5";​
 +</​file>​
 +Avec au passage un ajout :
 +<​file>​
 +   // If defined this address gets a bcc of all mails.
 +   // Bcc "​archive@localhost.localdomain";​
 +   Bcc "​fdl@ondine";​
 +</​file>​
 +pour surveiller ce qui se passe.
 +
 +===== Désinstallations =====
 +==== Désinstallation de dak ====
 +Avec les ajouts nécessaires pour contourner l'​anomalie de dak dans sarge (avec les valeurs de debconf par défaut).
 +
 +  # aptitude purge dak
 +
 +Pour virer les configurations oubliées par l'​anomalie :
 +  # ucf --purge /​opt/​dak/​katie/​apt.conf
 +  # ucf --purge /​opt/​dak/​katie/​cron.unchecked
 +  # ucf --purge /​opt/​dak/​katie/​katie.conf
 +  # ucf --purge /​etc/​katie/​katie.conf
 +  # ucf --purge /​opt/​dak/​katie/​vars
 +  # ucf --purge /​opt/​dak/​katie/​Contents.top
 +
 +Pour faire le propre :
 +  # rm -r /etc/katie
 +(attention, ci-dessous c'est toute l'​archive que le mainteneur a fait exprès de laisser)
 +  # rm -r /opt/dak
 +
 +**Penser à virer le //crontab// de deb-dak** si on a mis quelque chose dedans.
  
 +Pour aussi virer les utilisateur et groupe créés.
 +  # deluser deb-dak
 +  # delgroup debadmin
 +et s'il a été créé :
 +  # delgroup debuser
doc/dak/installation_de_dak_sur_ondine.1123060349.txt.gz · Dernière modification: 2005/08/03 11:18 (modification externe)