Yum
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.
Sommaire
- 1 Commandes de yum
- 2 pour connaitre les repository dans la base ?
- 3 Verifier si un rpm est dans un repository ?
- 4 desinstaller
- 5 Installation / mise à jour d'un paquet téléchargé
- 6 Mettre à jour votre SME7
- 7 Bien configurer Yum pour une utilisation courante sous SME7
- 8 Utiliser ponctuellement un repository non activé habituellement
- 9 Exclure un RPM de la mise à jour par un repository spécifique
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 :
- http://public.planetmirror.com/pub/smeserver/releases/7/ si vous êtes proche de l'australie
- http://ftp.nluug.nl/os/Linux/distr/smeserver/releases/7/ pour les européens
- 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