Utiliser des paquets de différentes versions de debian

Aujourd’hui on va voir comment customiser les fichier source.list de debian afin de pouvoir installer des paquets de versions autres que la stable.

avant de commencer, il faut savoir que la version actuelle de debian (donc la version stable) est : lenny

la version qui nous intéresse est la testing ou bien squeeze (on pourrait s’intéresser à la sid (non stable) mais c’est à éviter)

pour plus d’infos sur ces versions : http://wiki.debian.org/DebianReleases

pour pouvoir installer des paquets de la squeeze sous lenny il faut éditer son fichier /etc/apt/sources.list en ajoutant :

deb http://ftp.fr.debian.org/debian squeeze main
deb http://security.debian.org/ squeeze/updates main

en gros dupliquer les lignes existantes en remplaçant lenny (ou stable) par squeeze (on pourrait ajouter non-free après main en cas de besoin ; pour installer jdk par exemple…)

maintenant notre debian est configurée pour aller chercher ces paquets dans la branche squeeze, cool, mais c’est un peu la cata quand même :-) en fait, on ne veut prendre dans squeeze que certains paquets, et par défaut on voudrait garder lenny quand même, pour cela il faut tout simplement le dire à la machine :

on édite le fichier /etc/apt/apt.conf (le créer si non existant)
on met dedans la ligne suivante :

APT::Default-Release "stable";

et maintenant un simple apt-get install va aller chercher les paquets au bon endroit (c’est à dire : lenny)

et si on veut installer un paquet de squeeze, on fait :

apt-get install --target-release squeeze MON-SUPPER-PAQUET-DE-SQUEEZE

et le tour est joué :)

à l’heure actuelle lenny est la version stable, le jour où la stable change, il suffira d’adapter un peu tout ça.

Share

Comment installer fileinfo sous debian

Les fonctions de l’extension FileInfo essaient de savoir le type de contenu et l’encodage d’un fichier en regardant certaines séquences d’octet « magique » à des positions spécifiques à l’intérieur du fichier. Bien qu’il ne s’agit pas d’une approche infaillible, la méthode heuristique effectue un très bon travail.

le problème avec cette extension c’est qu’elle est un peu dur à installer, en réalité pas si dur que ça, il suffit de prendre le temps de le faire. Il faut juste savoir qu’un simple apt-get install php5-fileinfo ne suffira pas, tout simplement parce qu’il n’existe pas de paquet debian pour cette extension (pas encore…).

Donc pour l’installer, voici la procédure :
Il faut d’abord installer PEAR :

apt-get install php-pear

ensuite il faut installer php5-dev si ce n’est pas déjà fait, ceci installera phpize ce qui nous évitera l’erreur :

sh: phpize: command not found
ERROR: `phpize' failed

installation de php5-dev :

apt-get install php5-dev

c’est presque bon mais pas encore :
maintenant il faut installer libmagic pour nous éviter une erreur lors de l’installation de fileinfo :

apt-get install libmagic-dev

maintenant tout est bon, nous allons enfin pouvoir lancer l’installation de notre extension :

pecl install fileinfo

Voilà, maintenant fileinfo est installée, nous allons pouvoir vérifier les types mime des fichiers avec des méthodes plus fiables 😉

Normalement tout devrait fonctionner maintenant, mais il ce peut que l’extension ne soit pas activée comme il faut, dans ce cas il faudra créer un fichier fileinfo.ini dans /etc/php5/apache2/conf.d avec le contenu suivant :

extension=fileinfo.so

reloader apache avec /etc/init.d/apache2 reload et le tour est joué :)

Share

Aide mémoire Linux

Certaines commandes peuvent changer en fonction de la distribution choisie.

Ce qui va suivre sont des commandes de l’utilisation de tous les jours avec un système linux.

cd : sert à se deplacer dans les repertoire
ex : cd tmp, cd /etc/init.d, cd ../.., cd usr, cd /

ls : sert à lister un/des répertoires
ex : ls, ls -l (résultat sous forme de liste), ls -a (avec les fichiers cachés), ls -al (les deux options cumulées)

cp : sert à copier un fichier vers une destination (cp source destination)

mv : sert à déplacer ou renommer un fichier (mv source destination)

pwd : sert à afficher le chemin du répertoire dans lequel vous vous trouvez

sh : permet d’executer un script shell (sh script.sh)

cat ou more : permet de lire un fichier (more access.log)

vi, joe, emacs: permet d’editer un fichier (vi lettre_de_dem.txt)

rm : supprime un fichier (rm fichier) (rm -R permet de supprimer un dossier et ses sous repertoire, R pour récursif)

find, which, locate : trouver un fichier (locate httpd.conf)

grep : trouver du texte dans un fichier

CRON : mm hh jj MMM JJJ tâche > log
exemple :

45 6 * * * /root/backup.sh > /root/backup.log

mm minutes (de 0 à 59)
hh l’heure (de 0 à 23)
jj jours (de 1 à 31)
MMM mois (de 1 à 12) ou l’abréviation (jan, feb, mar, apr, …)
JJJ l’abréviation du nom du jour ou le chiffre correspondant au jour de la semaine (0 représente le dimanche, 1 représente le lundi, …)

tâche représente la commande ou le script shell à exécuter

log représente le nom d’un fichier dans lequel stocker le journal des opérations. Si la clause > log n’est pas spécifiée, cron enverra automatiquement un mail de confirmation. Pour éviter cela il suffit de spécifier > /dev/null

Pour chaque unité de temps (minute/heure/…) les notations sont possibles:
*: a chaque unité de temps
2-5: les unités de temps (2,3,4,5)
*/3: toutes les 3 unités de temps (0,3,6,…)
5,8: les unités de temps 5 et 8

apt-get update
Met à jour la liste des paquets disponibles, à partir des sources définies dans /etc/apt/sources.list. Cette commande devrait être exécutée avant toute autre opération, pour s’assurer que la liste des paquets disponibles est correcte.

apt-get install <package>
Installe le package <package> en gérant les dépendances (autres packages nécessaire à l’exécution) et conflits (packages incompatibles).

apt-get -s install <package>
Simule l’installation du package <package>. L’option -s indique qu’il faut simuler les actions qui seraient effectuées par l’opération demandée (ici, l’installation). Cela permet de voir quelles actions apt effectuerait si la commande était réellement exécutée: paquets additionnels qui seraient ajoutés, paquets incompatibles qui seraient supprimés…

apt-get dist-upgrade
Met à jour la distribution par rapport à la liste des paquets disponibles. Il est recommandé d’examiner les opérations qu’APT va effectuer en invoquant dist-upgrade avec le flag -s. Si vous travaillez en « testing », sachez que les mises à jour sont généralement plus conséquentes et parfois plus périlleuses. Redoublez de méfiance.

apt-get –purge remove <package>
Supprime un package et le purge (suppression définitive et exhaustive).

apt-cache search <regexp>

apt-cache search php4

apt-cache search '^php4'

Recherche la <regexp> dans le nom et la description des packages. Notez la différence entre les deux dernières recherches. Dans le premier cas, la recherche est: nom de paquet ou description contenant php4. Dans le second cas, la recherche est: nom de paquet ou description commençant par php4.

apt-cache showpkg <package>

apt-cache show <package>

Affiche les informations concernant <package>: description, version, dépendances, …
Décompresser une archive : tar xzf fichier.tr.gz

Pour vos commentaires c’est par ici : http://naeh.net/forum/index.php?topic=5.0

PS. Les informations postées dans cet article sont issues de différents sites traitant du sujet.

Share