|
Recherche |
Les releases OVH sont des scripts bash qu'on télécharge et exécute sur un serveur dédié installé par OVH dans le but de le mettre à jour. Administrer la machine en ssh (shell sous bash). Les avantages de ces patchs :
Attention: n'appliquez pas la release si votre serveur est personalisé au niveau de la configuration. Cela veut dire: php, apache, mysql. Tout les options de compilation seront perdue lors de l'application du patch. Certaines releases sont des patchs de sécurité, c'est à dire que si vous ne mettez pas à jour votre machine, votre machine risque d'être hackée très simplement. Peu importe quel distribution ( Release 1 ou Release 2 ) vous utilisez simplement la commande suivante via ssh et non pas via webmin. wget ftp://ftp.ovh.net/made-in-ovh/release/patch-all.sh -O patch-all.sh; sh patch-all.sh Les détails indiqué si dessous concernent surtout la Release 1 OVH. Release ou patch : la release est un script qui se télécharge et s'exécute. Par exemple : wget ftp://ftp.ovh.net/made-in-ovh/release/patch-1.38-1.39.sh -O patch-1.38-1.39.sh; sh patch-1.38-1.39.sh Lorsqu'il est telechargé et exécuté, le script regarde d'abord s'il est dans le bon n° de release avant de s'exécuter. Ceci evite qu'on execute la release 1.38 avant la release 1.34 par exemple. n° de release : les releases s'exécutent dans un certain ordre. Historiquement nous avons commencé sur la 1.04. Si vous essayez d'executer les releases dans le mauvais sens elles refuseront de s'exécuter. Pour faire fonctionner les releases, nous avons mis en place un système de blocage pour permettre l'exécution dans le bon sens. Nous avons donc créé le fichier /etc/ovhrelease où la release actuelle de la machine est notée. La nouvelle release va d'abord verifier que la release installée sur la machine est bien la précédente à elle-même et dans ce cas-là seulement, elle va s'exécuter. root@ns30096 root# cat /etc/ovhrelease 1.37 À chaque execution de release on met à jour /etc/issue ce qui permet de voir le n° de release très simplement lors de la connection sur la machine : Red Hat Linux release 7.2 (Enigma) Linux ns30096.ovh.net 2.4.19 #2 SMP mer nov 20 17:40:06 CET 2002 i686 unknown machine : 2344 release : 1.37 ip : 213.186.42.25 hostname : ns30096.ovh.net root@ns30096 root# Ceci nous permet aussi de voir le n° de release et l'ip de la machine en mettant l'écran et clavier. Lorsque votre machine a des problèmes cela nous fait gagner du temps de voir ces informations simplement sans aucune connexion en console. Historique ou changelog est disponible sur ftp://ftp.ovh.net/made-in-ovh/release/CHANGELOG.release. Pour appliquer une nouvelle release, il suffit de se connecter en SSH sur la machine et de copier coller la commande. root@ns30096 root# wget ftp://ftp.ovh.net/made-in-ovh/release/patch-1.37-1.38.sh -O patch-1.37-1.38.sh; sh patch-1.37-1.38.sh [...] Le patch commencera à s'exécuter et il fera son travail. Son exécution peut prendre plusieurs minutes. [...] Arrêt de sshd : OK Démarrage de sshd : OK OpenSSH_3.7.1p2, SSH protocols 1.5/2.0, OpenSSL 0.9.6i engine Feb 19 2003 root@ns30096 root# cat /etc/issue Red Hat Linux release 7.2 (Enigma) Linux ns30096.ovh.net 2.4.19 #2 SMP mer nov 20 17:40:06 CET 2002 i686 unknown machine : 2344 release : 1.38 ip : 213.186.42.25 hostname : ns30096.ovh.net Et voilà nous sommes passés de la release 1.37 à 1.38 et le serveur sshd a été mis à jour. Pour éviter de regarder à chaque fois dans quelle release votre serveur se trouve, vous avez la possibilité d'executer un patch-all.sh qui exécute automatiquement les bonnes releases dans le bon sens. Vous n'avez rien à faire. root@ns30096 root# wget ftp://ftp.ovh.net/made-in-ovh/release/patch-all.sh -O patch-all.sh; sh patch-all.sh [...] patch-all.sh lance toutes les détections et exécute ce qu'il faut [...] Red Hat Linux release 7.2 (Enigma) Linux ns30096.ovh.net 2.4.19 #2 SMP mer nov 20 17:40:06 CET 2002 i686 unknown machine : 2344 release : 1.39 ip : 213.186.42.25 hostname : ns30096.ovh.net Et nous voilà en 1.39 Patch-all.sh met aussi votre machine à l'heure en utilisant un systeme de calcul de delta de décalage d'heure. C'est à dire qu'avant de mettre à jour l'heure il regarde de combien est votre décalage et met à jour ce chiffre. En suite clockspeed qui est installé sur votre machine utilise ce chiffre tous les X minutes pour corriger l'heure avec ce delta. Ce qui fait que votre machine est à l'heure tout le temps et pas seulement lorsque vous mettez à jour l'heure. Il ne faut pas exécuter trop souvent la mise à jour du décalage, car le calcul de décalage est meilleur sur des delais importants. Les machines qui n'ont pas été installées en release (avant une certaine date) peuvent être mise à jour avec les patchs. Les patchs sont des scripts relativements automatisés, testés sur plusieurs plateformes (et donc possedant une detection de la plateforme). Mais vu que chaque machine est differente avec sa propre histoire, il faut les adapter à chaque machine. Vous pouvez donc les telecharger, les éditer, modifier et exécuter en suite. Si vous avez des erreurs de compilation, consultez les mailing-lists comme sd@ml.ovh.net. N'envoyez pas d'email sur le support. Nous n'allons pas pouvoir vous aider sur ce genre des problèmes via le support, car la solution au problème n'est pas une réponse mais une discussion. Et donc il faut utiliser les mailing-lists. Les patchs se trouvent dans ftp://ftp.ovh.net/made-in-ovh/patch. Vous avez :
-rwxr-xr-x 3517 jui 7 2002 apache_1.3.26+mod_ssl-2.8.10+php_4.2.1.sh -rwxr-xr-x 3517 jui 22 2002 apache_1.3.26+mod_ssl-2.8.10+php_4.2.2.sh -rwxr-xr-x 3517 sep 11 2002 apache_1.3.26+mod_ssl-2.8.10+php_4.2.3.sh -rwxr-xr-x 3656 oct 4 2002 apache_1.3.27+mod_ssl-2.8.11+php_4.2.3.sh -rwxr-xr-x 4567 jun 20 2003 apache_1.3.27+mod_ssl-2.8.14+php_4.3.2.sh -rwxr-xr-x 4567 aoû 31 2003 apache_1.3.28+mod_ssl-2.8.15+php_4.3.3.sh -rwxr-xr-x 4601 déc 4 21:44 apache_1.3.29+mod_ssl-2.8.16+php_4.3.4.sh
-rwxr-xr-x 825 jui 7 2002 named_8.3.3.sh -rwxr-xr-x 2320 jui 22 15:55 named_9.2.1-noshell.sh -rwxr-xr-x 2407 jui 8 2002 named_9.2.1.sh
-rw-r--r-- 2481 sep 29 02:23 rebuild-ssh-auto.sh -rw-r--r-- 2188 mar 24 2003 rebuild-ssh-downgrad.sh -rw-r--r-- 2564 sep 28 20:10 rebuild-ssh.sh
-rw-r--r-- 1086 mar 24 2003 rebuild-ssl-downgrad.sh -rw-r--r-- 1079 mar 23 2003 rebuild-ssl.sh
-rw-r--r-- 1234 jun 17 12:25 patch_reboot.sh -rw-r--r-- 403 mar 4 2002 patch_resolv.sh -rwxr-xr-x 627 jun 2 14:28 check_reboot.sh -rw-r--r-- 634 jui 10 2002 a_l_heure.sh -rwxr-xr-x 2230 aoû 22 2002 rc.sysinit.patch.sh Voici une machine avec un ssh et openssl qui n'est pas à jour: # ssh -V OpenSSH_3.4p1, SSH protocols 1.5/2.0, OpenSSL 0x0090600f
Nous allons d'abord recompiler openssl parcequ'il est utilisé par les autres softs comme apache, ssh, qmail etc. 5 minutes plus tard # openssl version OpenSSL 0.9.6l engine 04 Nov 2003 Ça y est. On est sur la bonne version d'openssl. On va passer maintenant à ssh : # wget ftp://ftp.ovh.net/made-in-ovh/patch/rebuild-ssh.sh -O rebuild-ssh.sh
Mettons un noyau plus recent: # uname -a Linux ns3060.ovh.net 2.4.16 #1 lun déc 17 15:22:27 CET 2001 i686 unknown
$ ssh xxxxxx
On recompile apache maintenant : # wget ftp://ftp.ovh.net/made-in-ovh/patch/apache_1.3.29+mod_ssl-2.8.16+php_4.3.4.sh
la release du systeme est IMPORTANT: vérification des versions disponibles d'openssl : OpenSSL 0.9.6l engine 04 Nov 2003 OpenSSL 0.9.6d 9 May 2002 Pas bon ça. ça veut dire qu'il y a une version d'openssl compilé à la main : # rm -rf /usr/local/ssl On recommence: # cd
la release du systeme est IMPORTANT: vérification des versions diponibles d'openssl: OpenSSL 0.9.6l engine 04 Nov 2003 [...] 15 minutes plus tard: make: Quitte le répertoire `/home/ovh/src/apache_1.3.29' src si la compilation s'est bien passée, vous pouvez installer cette version en production avec les commandes suivantes: cd /home/ovh/src/apache_1.3.29 make install /etc/rc.d/init.d/httpd restart puis vérifier la version actuellement en cours /usr/local/apache/bin/httpd -v /usr/local/bin/php -v
Starting httpd: Syntax error on line 191 of /usr/local/apache/conf/httpd.conf: Missing, invalid, or non-numeric port FAILED
Starting httpd: OK
Server built: Nov 12 2003 20:31:33
The Zend Engine API version 20021010 which is installed, is newer. Contact Zend Technologies at http://www.zend.com/ for a later version of Zend Optimizer. PHP 4.3.4 (cgi) (built: Nov 12 2003 20:30:11) Copyright (c) 1997-2003 The PHP Group Zend Engine v1.3.0, Copyright (c) 1998-2003 Zend Technologies Vous pouvez mettre à jour votre release 3 à partir de votre accès ssh sur votre serveur dédié et de la commande suivante : wget ftp://ftp.ovh.net/made-in-ovh/release/patch-all-release-3.sh && sh patch-all-release-3.sh Si votre release est à jour, vous devez rencontrez le message suivante lors de l'exécution de la commande : ... found OVH-Release 3 +-------------------------------+ ! OVH-Release is up to date ! !+-------------------------------+Pour la mise à jour de vos packages , veuillez vous rendre sur votre webmin, puis si une mise à jour est disponible vous trouverez dans votre page principale ceci: Mises à jours de Paquet 1 package updates are available Vous cliquez sur 1 package update are available, puis update upgrade package. Ce qui vous donnera un résultat de ce type : Building complete list of updates .. Now updating tzdata .. Installing package(s) with command yum -y install tzdata .. Loaded plugins: fastestmirror, priorities Loading mirror speeds from cached hostfile * base: mirror.ovh.net * epel: mirror.muntinternet.net * extras: mirror.ovh.net * rpmforge: mirror.nl.leaseweb.net * updates: mirror.ovh.net 1398 packages excluded due to repository priority protections Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package tzdata.noarch 0:2013c-2.el6 will be updated ---> Package tzdata.noarch 0:2013g-1.el6 will be an update --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ========================================================================== Updating: tzdata noarch 2013g-1.el6 updates 457 k Transaction Summary ============================================================================= Upgrade 1 Package(s) Total download size: 457 k Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Updating : tzdata-2013g-1.el6.noarch 1/2 Cleanup : tzdata-2013c-2.el6.noarch 2/2 Verifying : tzdata-2013g-1.el6.noarch 1/2 Verifying : tzdata-2013c-2.el6.noarch 2/2 Updated: Complete! .. install complete. Pour information, pour connaitre la version de votre release, je vous invite à executer la commande suivante via votre accès ssh: cat /etc/ovhrelease Le changelog est disponible à l'adresse suivante ftp://ftp.ovh.net/made-in-ovh/release/ Puis veuillez sélectionner la version souhaité ex : update_3.25-3.26/CHANGELOG Soit l'url suivante pour l'update de la version 3.25 vers 3.26. ftp://ftp.ovh.net/made-in-ovh/release/update_3.25-3.26/CHANGELOG |