Yum : Différence entre versions

De SME Server Wiki
(Installation / mise à jour d'un paquet téléchargé)
Ligne 3 : Ligne 3 :
 
Il permet soit d'aller chercher directement sur un espace appelé 'repository' le paquet necessaire, ainsi que outes ses dépendances, soit d'installer un paquet rpmdéjà téléchargé sur votre sme mais non encore installé en se substituant aux commande rpm -i ou rpm -U  en resolvant en plus les dependances : c'est à dire que l'installation ne fera pas un echec si une dépéndance requise n'est pas installée, mais ira la télécharger si elle est disponible.
 
Il permet soit d'aller chercher directement sur un espace appelé 'repository' le paquet necessaire, ainsi que outes ses dépendances, soit d'installer un paquet rpmdéjà téléchargé sur votre sme mais non encore installé en se substituant aux commande rpm -i ou rpm -U  en resolvant en plus les dependances : c'est à dire que l'installation ne fera pas un echec si une dépéndance requise n'est pas installée, mais ira la télécharger si elle est disponible.
  
 +
 +
== Commandes de yum ==
 +
 +
usage: yum [options] < update | install | info | remove | list |
 +
    clean | provides | search | check-update | groupinstall |
 +
    groupupdate | grouplist | groupinfo | groupremove |
 +
    makecache | localinstall | erase | upgrade | whatprovides |
 +
    localupdate | resolvedep | shell | deplist >
 +
 +
options:
 +
  -h, --help            show this help message and exit
 +
  -t, --tolerant        be tolerant of errors
 +
  -C                    run entirely from cache, don't update cache
 +
  -c [config file]      config file location
 +
  -R [minutes]          maximum command wait time
 +
  -d [debug level]      debugging output level
 +
  -e [error level]      error output level
 +
  -y                    answer yes for all questions
 +
  --version            show Yum version and exit
 +
  --installroot=[path]  set install root
 +
  --enablerepo=[repo]  enable one or more repositories (wildcards allowed)
 +
  --disablerepo=[repo]  disable one or more repositories (wildcards allowed)
 +
  --exclude=[package]  exclude package(s) by name or glob
 +
  --obsoletes          enable obsoletes processing during updates
 +
  --noplugins          disable Yum plugins
 +
 +
 +
==pour connaitre les repository dans la base ?==
 +
db yum_repositories show |grep repository
 +
 +
== Verifier si un rpm est dans un repository ? ==
 +
yum search --enablerepo=<reponame>
 +
 +
==desinstaller==
 +
yum remove
  
 
== Installation / mise à jour d'un paquet téléchargé ==
 
== Installation / mise à jour d'un paquet téléchargé ==
Ligne 100 : Ligne 135 :
 
Faites ceci uniquement si vous êtes sur de vous. Les mirroirs sont logiquement tous à jours, et ceux plus proches de chez vous seront plus rapide, et surrement moins surchargé que le mirroire inscrit par defaut.
 
Faites ceci uniquement si vous êtes sur de vous. Les mirroirs sont logiquement tous à jours, et ceux plus proches de chez vous seront plus rapide, et surrement moins surchargé que le mirroire inscrit par defaut.
  
== Utiliser ponstuellement un repository non activé habituellement ==
+
== Utiliser ponctuellement un repository non activé habituellement ==
  
Le repository centosplus contient beaucoup de rpm fort interessant, mais sontutilisation pour une mise à jour automatique risque de mettre hors d'usage votre sme en mettant un paquet plus recent que celui qui est disponible sur votre sme sans qu'il soit adapté: je pens epar exemple au webmail horde.
+
Le repository centosplus (par exemple) contient beaucoup de rpm fort interessant, mais sontutilisation pour une mise à jour automatique risque de mettre hors d'usage votre sme en mettant un paquet plus recent que celui qui est disponible sur votre sme sans qu'il soit adapté: je pens epar exemple au webmail horde.
 
En effet certaines installations son spécifiques à l'architecture de votre SME.
 
En effet certaines installations son spécifiques à l'architecture de votre SME.
  
Ligne 112 : Ligne 147 :
  
 
  yum -enablerepo=centosplus update monpaquet
 
  yum -enablerepo=centosplus update monpaquet
 +
 +
==Exclure un RPM de la mise à jour par un repository spécifique==
 +
 +
Si vous utilisez une application modifié par vos soins qui risque d'etre modifiée par une msie à jour SME ou CENTOS, ou pour un paquet specifique SME qui risque d'etre remplacé par un paquet CENTOS non adapté aux templates SME et à son architecture:
 +
 +
db yum_repositories setprop base Exclude monpaquet*
 +
db yum_repositories setprop updates Exclude monpaquet*
 +
db yum_repositories setprop smeos Exclude monpaquet*
 +
expand-template /etc/yum.conf

Version du 1 septembre 2006 à 07:06

Yum est un gestionnaire d'installation des paquets rpm, avec leur dependances disponible sur SME7.

Il permet soit d'aller chercher directement sur un espace appelé 'repository' le paquet necessaire, ainsi que outes ses dépendances, soit d'installer un paquet rpmdéjà téléchargé sur votre sme mais non encore installé en se substituant aux commande rpm -i ou rpm -U en resolvant en plus les dependances : c'est à dire que l'installation ne fera pas un echec si une dépéndance requise n'est pas installée, mais ira la télécharger si elle est disponible.


Commandes de yum

usage: yum [options] < update | install | info | remove | list |
   clean | provides | search | check-update | groupinstall |
   groupupdate | grouplist | groupinfo | groupremove |
   makecache | localinstall | erase | upgrade | whatprovides |
   localupdate | resolvedep | shell | deplist >

options:

 -h, --help            show this help message and exit
 -t, --tolerant        be tolerant of errors
 -C                    run entirely from cache, don't update cache
 -c [config file]      config file location
 -R [minutes]          maximum command wait time
 -d [debug level]      debugging output level
 -e [error level]      error output level
 -y                    answer yes for all questions
 --version             show Yum version and exit
 --installroot=[path]  set install root
 --enablerepo=[repo]   enable one or more repositories (wildcards allowed)
 --disablerepo=[repo]  disable one or more repositories (wildcards allowed)
 --exclude=[package]   exclude package(s) by name or glob
 --obsoletes           enable obsoletes processing during updates
 --noplugins           disable Yum plugins


pour connaitre les repository dans la base ?

db yum_repositories show |grep repository

Verifier si un rpm est dans un repository ?

yum search --enablerepo=<reponame>

desinstaller

yum remove

Installation / mise à jour d'un paquet téléchargé

Habituellement vous faisiez:

wget http://www.monsite.com/monpaquet.rpm
rpm -U monpaquet.rpm

ou encore par exemple

rpm -i http://www.monsite.com/monpaquet.rpm

Et apres soit le paquet est installé avec succés soit vous avez une erreure vous disant qu'un fichier necessaire au rpm n'est pas installé sur votre systeme. Avec Yum plus ce genre de problèmes.

Pour installerun nouveau rpm:

wget http://www.monsite.com/monpaquet.rpm
yum install monpaquet.rpm

ou

yum localinstall ./*.rpm

pour mettre à jour:

wget http://www.monsite.com/monpaquet.rpm
yum update monpaquet.rpm


Et tout s'installe correctement à condition que tous les repository necessaire soient disponibles, activés, et que les dependances requises soient disponibles dessus.

Mettre à jour votre SME7

1- methode console Tout simplement :

yum update

ou

yum upgrade

suivit, si necessaire de

signal-event post-upgrade; signal-event reboot

2- methode server-manager

aller dans mise à jour du logiciel faites mettre à jour selectionnez les mise à jour à installer si vous avez activé la gestion individuelle des paquets (ce que je conseille) evitez de selectionner plus d'une vingtaine de paquets en meme temps sous peine d'obtenir un time-out du navigateur, faite la mise a jour en plusieur fois Une fois tout terminé, aller dans redemarre le serveur, faites une reconfiguration, puis un reboot

Bien configurer Yum pour une utilisation courante sous SME7

1- ajouter le repo Dungog

db yum_repositories set dungog repository \
 BaseURL http://sme.dungog.net/packages/smeserver/7.0/i386/dungog/ \
 EnableGroups yes \
 GPGCheck no \
 Name 'SME Server 7 - dungog' \
 Visible yes \
 status enabled

2- activer les bon repository, cacher les autres et les desactiver

db yum_repositories setprop smeos Visible yes
db yum_repositories setprop smeos status enabled
db yum_repositories setprop smeupdates Visible yes
db yum_repositories setprop smeupdates status enabled
db yum_repositories setprop smeaddons Visible yes
db yum_repositories setprop smeaddons status enabled
db yum_repositories setprop base Visible yes
db yum_repositories setprop base status enabled
db yum_repositories setprop updatesVisible yes
db yum_repositories setprop updates status enabled
db yum_repositories setprop centosplus Visible no
db yum_repositories setprop centosplus status disabled
db yum_repositories setprop addons Visible no
db yum_repositories setprop addons status disabled
db yum_repositories setprop extras Visible no
db yum_repositories setprop extras status disabled
db yum_repositories setprop contrib Visible no
db yum_repositories setprop contrib status disabled
expand-template /etc/yum.conf

3- vous pouvez maintenant utiliser l'interface de mise à jour du server-manager pour installer ou mettre à jour en toute securité, ou utiliser yum pour le faire

4- accessoirement vous pouvez utiliser une adresse d'un mirroire alternatif a celui proposé par defaut pour les repository SME: http://mirror.contribs.org/pub/smeserver/releases/7/ qui envoie par defaut sur http://distro.ibiblio.org/pub/linux/distributions/smeserver/releases/7/ par :

  1. http://public.planetmirror.com/pub/smeserver/releases/7/ si vous êtes proche de l'australie
  2. http://ftp.nluug.nl/os/Linux/distr/smeserver/releases/7/ pour les européens
  3. http://ftp.surfnet.nl/ftp/pub/os/Linux/distr/smeserver/releases/7/ toujours pour les européens

Faites ceci uniquement si vous êtes sur de vous. Les mirroirs sont logiquement tous à jours, et ceux plus proches de chez vous seront plus rapide, et surrement moins surchargé que le mirroire inscrit par defaut.

Utiliser ponctuellement un repository non activé habituellement

Le repository centosplus (par exemple) contient beaucoup de rpm fort interessant, mais sontutilisation pour une mise à jour automatique risque de mettre hors d'usage votre sme en mettant un paquet plus recent que celui qui est disponible sur votre sme sans qu'il soit adapté: je pens epar exemple au webmail horde. En effet certaines installations son spécifiques à l'architecture de votre SME.

Toutefois vous pouvez avoir besoin d'installer, ou metter à jour, ponctuellement un paquet sur ce repository ou sur un autre, la solution pour le faire sans l'activer de facon permanente, oublier de l'enlever aprés installation et se trouver face à des problèmes avec la mise à jour suivante est simple:

yum -enablerepo=centosplus install monpaquet 

ou

yum -enablerepo=centosplus update monpaquet

Exclure un RPM de la mise à jour par un repository spécifique

Si vous utilisez une application modifié par vos soins qui risque d'etre modifiée par une msie à jour SME ou CENTOS, ou pour un paquet specifique SME qui risque d'etre remplacé par un paquet CENTOS non adapté aux templates SME et à son architecture:

db yum_repositories setprop base Exclude monpaquet*
db yum_repositories setprop updates Exclude monpaquet*
db yum_repositories setprop smeos Exclude monpaquet*
expand-template /etc/yum.conf