Passer d'un serveur Mandriva à un serveur Debian...
6 novembre, 2009 - 17:46 | Ulhume | GNU/Linux Système Tutoriel

Je vois déjà Dab faire des petits bons :-) Désolé mais non, je ne migre pas vers Debian mais comme je suis régulièrement confronté à cette distribution sur des serveurs en production, j'ai souvent besoin de savoir comment passer de l'un à l'autre des deux mondes, pour ce qu'ils ont de différent. Ce qui suit est donc une simple table de conversion permettant, lorsque l'on est habitué à Mandriva, de répondre à la question "Comment on fait ... sur une Debian ?".

Dépôts

La gestion des dépôts de softs est au fond la grande différence entre les debians (ou *buntu pour ceux qui l'auraient oublié) et les mandriva (ou plutôt les dérivés de RedHat). Sur les debians, le système de paquets (.deb) est utilisé avec l'utilitaire de gestion locale dpkg et de dépendances apt. Merci à Dab pour m'avoir plus qu'aidé à créer cette table !

Gestion des dépôts

TâcheMandrivaDebian
Les noms de dépôtsmain/contrib/nonfree/plfmain,contrib,non-free
Les sous-dépôtsrelease,update,testing,backportstable,unstable,testing,backport
Une manière simple de chopper tous les dépôts selon vos besoinseasyurpmi.zarb.org?
Ajouter un dépôturpmi.addmedia?
Supprimer un dépôturpmi.removemediaprpmq --dump-config : vi /etc/apt/source.list
Mise à jour des dépôtsurpmi.update MEDIA (ou -a pour tous)apt-get update

Recherche dans les dépôts

TâcheMandrivaDebian
Recherche simpleurpmq -Y openofficeapt-cache search openoffice
Recherche avec informationsurpmq -Yi openofficeapt-cache show openoffice
Recherche avec changementsurpmq --changelog openoffice.orgapt-listchanges --apt openoffice.org
Recherche d'un fichier particulierurpmf /usr/bin/oowriterdpkg -S /usr/bin/oowriter
sinon il y a aussi apt-file

Installation de paquet

TâcheMandrivaDebian
Installationurpmi openoffice.orgapt-get install openoffice.org
Mise à jour automatique de ce qui est installéurpmi --auto-updateapt-get upgrade
Re-installation d'un paqueturpmi --replacepkg enchantapt-get --reinstall install enchant

Travail sur la base locale

TâcheMandrivaDebian
Recherche d'un paquet installérpm -qa | grep -i xorgdpkg -l | grep xorg
Liste des fichiers d'un paquet installérpm -ql gzip-1.3.12-3mdv2009.0dpkg -L gzip
Informations sur un paquet installérpm -qi gzip-1.3.12-3mdv2009.0?
Recherche du paquet associé à un fichierrpm -qf /usr/bin/lsdpkg -S /usr/bin/ls
Dépendances d'un paquet installérpm -qR pm-utils-1.2.0-3mdv2009.0apt-cache show pm-utils | grep Depends
Vérification de l'intégrité des fichiers par rapport à leur paquet d'originerpm -Vadpkg -C

Désinstallations

TâcheMandrivaDebian
Désinstallation d'un paqueturpme openoffice.orgapt-get remove openoffice.org
Désinstallation d'un paquet sans ses dépendancesrpm -e --nodeps $(rpm -qa | grep -i xorg)dpkg --force-depends remove xorg
Désinstallation des paquets orphelinsurpme --auto-orphansdeborphan | xargs dpkg -P

Gestion des services

TâcheMandrivaDebian
Arrêt/démarrage d'un serviceservice mysql stop/etc/init.d/mysql stop
Désactivation d'un servicechkconfig --del mysql-ndb-mgp update-rc.d -f mysql-ndb-mgm remove
Activation d'un servicechkconfig --add mysql-ndb-mgp update-rc.d mysql-ndb-mgm defaults
Liste des services activéschkconfig --list?

UTF8

Configurer la debian en UTF8

root#dpkg-reconfigure locales
# Laissez les 3 choix présents...
[*] fr_FR ISO-8859-1 [*] fr_FR.UTF-8 UTF-8 [*] fr_FR@euro ISO-8859-15
# validez puis sélectionnez fr_FR.UTF-8 par défaut

Conclusion

Voilà, c'est tout pour l'instant, mais la liste va j'imagine s'étoffer avec le temps...

Commentaires

Nico, le 6 novembre, 2009 - 18:40

Superbe article bien pratique car moi aussi j'ai souvent ce problème.

Mise à jour des dépôts : sous debian c'est pas : apt-get update ???

Merci pour ce tableau.

Ulhume, le 6 novembre, 2009 - 20:16

Si tu as raison, je viens de tester. Je rajoute :)

Theo, le 16 décembre, 2009 - 21:09

apt-get est déprécié.
Place a aptitude install/update/... :)

Ulhume, le 22 décembre, 2009 - 08:38

Mouais, il ne faut pas oublier le sujet du post :) Je ne suis pas un Debianer, je cherche juste à me débrouiller sous debian. J'attendrais qu'apt-get disparaisse pour apprendre quelque chose de neuf, le temps est une denrée couteuse ;p

Seza, le 6 novembre, 2009 - 19:49

A savoir qu'aptitude est aussi très bien, plus simple, et solutionne parfois des problèmes là ou apt bloque :

# installer un paquet
aptitude install package
# installer un paquet dans une version précise
aptitude install package=X.X.X
# installer un paquet, il sera automatiquement supprimer
# si aucun autre paquet ne dépends de lui
aptitude install package+M
# supprime un paquet
aptitude remove package
# supprime un paquet et les fichiers de configuration
aptitude purge package
# reinstall un paquet
aptitude reinstall package
# bloque un paquet
# empêche son installation s'il n'est pas installé
# empêche sa suppression ou son upgrade s'il est installé
aptitude hold package
# debloque un paquet
aptitude unhold package
# mettre à jour la liste des paquets
aptitude update
# mettre à jour les paquets
aptitude safe-upgrade
# mettre à jour la distribution (pour passer de debian 4 à 5 par exemple)
aptitude full-upgrade
# vide le cache des paquets
aptitude clean
# rechercher un paquet
aptitude search paquet
# obtenir des informations su un paquet
aptitude show paquet
# voir le changelog d'un paquet
aptitude changelog paquet
# en cas de conflit de paquets
# ces deux commandes expliqueront le conflit
aptitude why paquet
aptitude why-not paquet

Voilà pour une courte introduction, il y a plein d'option possible comme les tags qui sont intéressant, la possibilité d'effectuer chaque commande avec un pattern plutôt qu'un nom de paquet précis, que toutes les commandes soit logués dans /var/log/aptitude... Vous pouvez jeter un œil ici : http://www.debian.org/doc/manuals/reference/ch-package.fr.html

Sinon l'ordre des sous-dépots c'est : stable => testing => unstable => experimental (et un backport qui est géré différemment)

Sinon pour la gestion des services : ivoke-rc.d start|stop|restart|reload

update-alternatives pour gérer vos paquets préférés par défaut (less comme pager au lieu de more, nano au lieu de vi etc...)

Pour éditer ses sources de paquets je ne connais pas d'autre moyen actuellement que d'édité à la main le fichier /etc/apt/sources.list. En même temps ce n'est pas sorcier.

Pour listé les services lancés au démarrage : ls -l /etc/rc3.d/S (changé le 3 par le mode dans lequel vous êtes)

Ulhume, le 6 novembre, 2009 - 20:11

Merci pour ces informations !! Ceci étant dit, apt, c'est un peu comme vi, c'est présent partout et en standard. En comme sur un serveur de production je n'installe que le strict minimum, ce memo me sert juste à survivre sous Debian :) Ceci dit, cela n'enlève rien à l'intérêt de ton commentaire (que j'ai reformaté pour qu'il soit plus zoli :)

Edit: Je me remange la parole, aptitude est présent sur tout les serveurs de prod que j'ai sous la main. En revanche, c'est pas le cas d'ivoke.

Seza, le 6 novembre, 2009 - 20:24

J'allais te le souffler pour aptitude :)
En revanche c'est étrange invoke-rc.d je l'ai partout. Peut-être qu'il n'est pas présent sur du vieux debian (avant Etch). Je l'ai même quand j'install une debian avec debootstrap (si tu connais) pour me tester/développer/chrooter etc... alors que le paquet locales n'est même pas présent.

Seza, le 6 novembre, 2009 - 19:56

J'oubliais vous pouvez aussi lancer aptitude sans arguments et obtenir une fenêtre plein écran permettant de tout faire à l'aide de menu etc...

Dab, le 7 novembre, 2009 - 02:59

Bon j'avoue j'y failli y croire, de toute manière tu finiras bien par y venir ;)
Tout de même reconnue pour sa stabilité, oui ok c'est un Linux mais régit par des règles strictes.

Ulhume, le 8 novembre, 2009 - 07:43

Il faudrait arrêter de croire qu'il y a _que_ debian à qui sont appliquées des règles _strictes_ ;-) C'est le cas de beaucoup de distributions au fond. J'ai des mandriva, redhat et debian en serveur de production, qui tournent pour certaines depuis des années (dont celle de ce site en mandriva), avec des uptimes de l'ordre de la période de mise à jour. Au fond, GNU/Linux est surtout très mature dés lors que tu ne luis colles pas xorg sur la tête.

A mon humble avis, la distribution qui est la plus stable au monde... c'est celle que tu connais le mieux ;p

Dab, le 9 novembre, 2009 - 16:42

Il faudrait arrêter de croire ...
Je te tanquinais, ça démarre vite ;)
A mon humble avis, la distribution qui est la plus stable au monde... c'est celle que tu connais le mieux
Ben ? c'est exactement ce que je dis, Debian :)

Clochette, le 7 novembre, 2009 - 22:58

je rajoute dans le cas ou comme moi vous êtes sous "sid" unstable et que les mise à jour sont parfois problématique pour les dépendances non satisfaites voir cassé :

aptitude listbugs

Et je plussoie apt est un outils vraiment sympa mais aptitude est bien plus performant

feilong74, le 9 novembre, 2009 - 20:16

Merci pour la liste je vais pouvoir me la faire en arabe. (la lire de droite à gauche)

sinon pour boucher un blanc sous debian :

information sur un paquet et sur un paquet installé :
apt-cache showpkg "nom du paquet" si tu as une entrée (/var/lib/dpkg/status) c'est qu'il est installé sur ton système.

Pour la liste des services activés :
apt-get install chkconfig ;-)
ou
set $(runlevel)&& ls /etc/rc$2.d/S*

Guyou, le 12 novembre, 2009 - 20:41

Il peut être sympa d'indiquer que la plupart de ces manipulations se font aussi via IHM. Dans le cas de Debian, celui que je connais se nomme synaptic.

J'ai bien compris que ce post concerne les serveurs, mais des fois qu'un visiteur se soit perdu sur cette page en cherchant des IHM...

Ulhume, le 12 novembre, 2009 - 20:52

Voilà j'ai changé le titre, comme ça, plus de risque ;p

Tarentrulle, le 29 mai, 2010 - 23:40

J'ajouterais bien apt-get dist-upgrade pour une mise à jour complète du système

blob, le 11 juin, 2010 - 18:42

Bonjour

Y a t-il un moyen d'avoir la liste complète des packages installés ?

Ulhume, le 11 juin, 2010 - 20:02

Yep, dpkg -l

Poster un nouveau commentaire

Si vous avez détecté une erreur, coquille ou bêtises du même ordre, merci de plutôt passer par le formulaire de contact
Pour vous abonner au flux des commentaires sur cet article, clickez ici.
Pour répondre à quelqu'un, utilisez plutôt le lien répondre qui se trouve en haut (ou en bas) à gauche de son commentaire.
Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement. Si vous avez un compte gravatar, l'utilisez pour afficher votre avatar.
  • To highlight piece of code, just surround them with <code type="language"> Your code &tl;/code>>. Language can be java,c++,bash,etc... Everything Geshi support.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <div> <p> <br>
  • Les lignes et les paragraphes vont à la ligne automatiquement.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Every instance of custom tags in the input text will be replaced with a specific tool shortcut.

Plus d'informations sur les options de formatage

Êtes-vous humain ?
Cette question est là pour déterminer si vous êtes humain ou pas...