mardi 26 mai 2009

Gestion des clefs de dépots sur Ubuntu

Suite à l'ajout d'un dépots dans "/etc/apt/sources.list", il est parfois
possible de rencontrer des problèmes de signatures de clefs :
Du genre,
[...]
W: GPG error: http://<deb.myurl.org> <ubuntu_codename> Release: Les
signatures suivantes n'ont pas pu être vérifiées car la clé publique
n'est pas disponible : NO_PUBKEY 1234567890
[...]
Pour résoudre ce problème faire :
--- Méthode 1 ---
$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 1234567890
--- Méthode 2 ---
$ sudo su -
# gpg --keyserver keyserver.ubuntu.com --recv 1234567890
# gpg --export --armor 1234567890 | sudo apt-key add -





jeudi 14 mai 2009

mardi 12 mai 2009

Création d'un paquet Debian -- test.deb

Commencer par créer un script qui ne fait pas grand chose (!) :

Exemple "test.sh" :
[...]
#!/bin/bash
echo "Entrer un nom [eg - foo] : "
read nom
echo $nom > ./test
[...]

Ensuite créer l'architecture du paquet "test" :
/home/<vous>/test/
/home/<vous>/test/DEBIAN/
/home/<vous>/test/DEBIAN/control (fichier décrivant les informations
relatives à notre paquet)
/home/<vous>/test/DEBIAN/postinst (script exécuté après l'installation
du paquet)
/home/<vous>/test/DEBIAN/postrm (script exécuté après la désinstallation
du paquet)
/home/<vous>/test/DEBIAN/prerm (script exécuté avant la désinstallation
du paquet)
/home/<vous>/test/usr/
/home/<vous>/test/usr/bin/
/home/<vous>/test/usr/bin/test.sh (notre script, exposé ci-dessus)
/home/<vous>/test/usr/share/
/home/<vous>/test/usr/share/doc/
/home/<vous>/test/usr/share/doc/README (informations relatives à
l'utilisation de test.sh)
/home/<vous>/test/usr/share/doc/copyright
/home/<vous>/test/usr/share/doc/changelog (changements apportés par
rapport à la dernière version)
/home/<vous>/test/usr/share/doc/changelog.Debian (idem, mais seulement
pour le paquet Debian

Note : Les fichiers post* et pre* doivent contenir le "shebang" càd
"#!/bin/bash" au minimum et être en 755

Note2 : De la même manière il est possible d'ajouter des fichiers où
l'on souhaite en respectant l'arborescence du système, eg: /var/www en
sus de /usr/bin, etc...

Renseigner le fichier "control" comme suit :
Package: test
Version: 1.0
Section: base
Priority: optional
Architecture: all
Depends: bash
Maintainer: Mr X <MrX@fun.com>
Description: Que fait mon script test.sh

Note3 : Il est possible de modifier les dépendances de paquet, en
modifiant la ligne "Depends: bash", avec par exemple :
Depends: bash, some_package >= 1.2, some_other_package >= 2 (le
séparateur étant une virgule)

Il ne reste plus qu'à générer le paquet :
# chmod 755 /home/<vous>/test/DEBIAN/post* /home/<vous>/test/DEBIAN/pre*
# cd ~<vous>
# dpkg-deb --build test.deb
Et voilà un beau paquet Debian tout neuf (mais vraiment minimaliste !)
Il ne reste plus qu'à l'installer avec la commande :
# dpkg -i test.deb
Et enlever avec les commandes :
# dkpg --remove test && dpkg --purge test

lundi 4 mai 2009

Installation BT3 sur clef USB / carte SD, 2Go

# wget http://www.remote-exploit.org/cgi-bin/fileget?version=bt3b-usb
# fdisk /dev/sdb
---
Créer sur la clef USB / carte SD le schéma de partition suivant :
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 132 1060258+ b W95 FAT32
/dev/sdb2 133 242 883575 83 Linux
Avec /dev/sdb1 = +1080M
/dev/sdb2 = le reste
---
# mkfs -t vfat /dev/sdb1
# mkfs -t ext2 /dev/sdb2
/*optionnel*/
# fsck -y /dev/sdb1
# fsck -y /dev/sdb2
Monter ISO BT3 avec :
# mount -o loop <chemin_iso> /mnt/BT3
Monter /dev/sdb1 sur /media/disk et :
# cp -r boot /media/disk
# cp -r BT3 /media/disk
# cd boot/syslinux
# chmod 777 lilo
# chmod 777 syslinux
# cd ..
# ./bootinst.sh
Et voilà !
**** Remarque ****
Voir pour modif "Persistent mode"