Szukaj


drukuj pdf

Wszystko o releases OVH


Release'y OVH są to skrypty bash, pobierane i wykonywane na serwerze dedykowanym, w celu jego aktualizacji: SshNaSerwerzeDedykowanym

Zalety tych łatek :

  • szybkość,
  • prostota,
  • stabilność.

Uwaga! Release'y nie biorą pod uwagę tzw. niestabilnych wersji oprogramowania, takich jak mysql 4.X, apache 2.X. Serwis nie będzie w stanie Ci pomóc. W przypadku tych wersji należy zwrócić się o pomoc do innych klientów ovh na forum http://forum.ovh.pl/

Uwaga

Niektóre release'y są łatkami bezpieczeństwa, co oznacza, że jeżeli nie aktualizujesz swojego serwera, ryzykujesz atak hakerski.


Słowniczek

Release lub łatka (patch) : skrypt pobierany i wykonywany na serwerze. Na przykład:

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


Kiedy już skrypt zostanie pobrany, weryfikuje on, czy jest odpowiednią wersją aktualizacji zanim dojdzie do jego wykonania. Dzięki temu unika się wykonania release'u 1.38 przed releasem 1.34.
Release'y wykonywane są w określonym porządku. Zaczęliśmy od release'u
numer 1.04. Jeżeli spróbujesz wykonać release'y w niewłaściwym porządku, odmówią one wykonania.

Filozofia

Aby zapewnić właściwe funkcjonowanie release'ów, wprowadziliśmy system blokowania, który pozwala na ich wykonywanie zgodnie z przyjętą kolejnością. Stworzyliśmy plik /etc/ovhrelease, w którym odnotowywany jest aktualny release serwera. Nowy release najpierw zweryfikuje, czy release wcześniej zainstalowany na serwerze jest tuż przed nim w kolejności, i tylko jeżeli tak faktycznie jest, wykona się.

root@ns30096 root# cat /etc/ovhrelease
1.37


Przy każdym wykonaniu release'a, aktualizuje się /etc/issue, co pozwala na sprawdzenie numeru release'u w momecie połączenia z serwerem :

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#


Możemy sprawdzić numer release'u oraz IP serwera przy wykorzystaniu ekranu i klawiatury. Pozwala to również zaoszczędzić czas: otrzymujemy te informacje bez konieczności uzyskania połącznia.


Changelog

Historia (lub changelog) jest dostępna pod adresem:
ftp://ftp.ovh.net/made-in-ovh/release/CHANGELOG.release

Stosowanie release'ów jeden po drugim


Aby zastosować nowy release, wystarczy połączyć się z SSH na serwerze i skopiować komendę :

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
[...]


Rozpocznie się instalowanie patchu. Ten proces może potrwać kilka minut.

[...]
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


Przeszliśmy właśnie od release'u 1.37 do 1.38, a serwer sshd został zaktualizowany.

Stosowanie wszystkich release'ów

Aby uniknąć sprawdzania przy każdej okazji numeru najnowszej wersji release'u, masz możliwość wykonania patch-all.sh. Instaluje on automatycznie release'y we właściwej kolejności. Ty nie musisz nic robić.

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 uruchamia sprawdzanie systemu i przeprowadza instalację niezbędnych elementów.

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
[...]


Oto wersja 1.39.

Inne funkcje


Patch-all.sh aktualizuje również czas na Twoim serwerze. Robi to przy pomocy systemu obliczeniowego wykorzystującego deltę, służącą do zmiany czasu. Oznacza to, że zanim dokona ustawienia czasu, weryfikuje
cyfrę wyjściową przesunięcia i ją aktualizuje. Następnie clockspeed, który jest zainstalowany na Twoim serwerze, wykorzystuje tę cyfrę co x minut w celu synchronizacji czasu. Nie należy zbyt często synchronizować czasu, ponieważ obliczanie synchronizacji jest bardziej precyzyjne przy rzadkim wykonaniu.

Bez release'u

Serwery, które nie zostały zainstalowane z releasem (przed określoną datą), mogą być aktualizowane przy pomocy łatek. �?atki są stosunkowo zautomatyzowanymi skryptami, przetestowanymi na wielu platformach (posiadają więc zdolność identyfikowania platform). Zważywszy, że każdy serwer jest inny i ma własna historię, należy je zaadaptować do każdego serwera. Możesz je ściągnąć, edytować, modyfikować, a następnie instalować. Jeżeli wystąpi u Ciebie błąd kompilacji, poszukaj pomocy
na liście mailingowej takiej jak ad@ml.ovh.net. Nie kieruj e-maili w tej sprawie do pomocy technicznej. Nie będziemy w stanie Ci pomóc z problemem tego rodzaju, ponieważ nie ma tutaj gotowej odpowiedzi.

�?atki znajdują się w ftp://ftp.ovh.net/made-in-ovh/patch . Istnieją:
  • łatki dla apache'a (serwer web):

-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 aou 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

  • łatki dla binda (named)

-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

  • łatki dla ssh

-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

  • łatki dla ssl

-rw-r--r-- 1086 mar 24 2003 rebuild-ssl-downgrad.sh
-rw-r--r-- 1079 mar 23 2003 rebuild-ssl.sh

  • i inne:

-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 aou 22 2002 rc.sysinit.patch.sh


Przykłady Bez Release'u


Oto serwer, który zawiera starsze wersje ssh i openssl:

# ssh -V
OpenSSH_3.4p1, SSH protocols 1.5/2.0, OpenSSL 0x0090600f
  1. openssl version
OpenSSL 0.9.6 24 Sep 2000


Najpierw dokonamy ponownej kompilacji openssl, ponieważ jest on używany
przez inne programy takie jak apache, ssh, qmail etc

# wget ftp://ftp.ovh.net/made-in-ovh/patch/rebuild-ssl.sh -O rebuild-ssl.sh
  1. sh rebuild-ssl.sh

5 minut później

# openssl version
OpenSSL 0.9.6l engine 04 Nov 2003


Mamy już odpowiednią wersję openssl-a. Przechodzimy do ssh:

# wget ftp://ftp.ovh.net/made-in-ovh/patch/rebuild-ssh.sh -O rebuild-ssh.sh
  1. sh rebuild-ssh.sh
  2. ssh -V
OpenSSH_3.7.1p2, SSH protocols 1.5/2.0, OpenSSL 0.9.6l engine 04 Nov 2003


Dokonajmy aktualizacji:

# uname -a
Linux ns3060.ovh.net 2.4.16 #1 lun déc 17 15:22:27 CET 2001 i686 unknown
  1. cat /proc/cpuinfo
cpu MHz : 846.870
  1. wget ftp://ftp.ovh.net/made-in-ovh/bzImage/bzImage-2.4.25-grs-piii*]*
  2. wget ftp://ftp.ovh.net/made-in-ovh/bzImage/System.map-2.4.25-grs-piii**
  3. pico /etc/lilo.conf
  4. /sbin/lilo
  5. reboot
  6. logout
$ ping xxxxxx
$ ssh xxxxxx
  1. uname -a
Linux nsxxxx.ovh.net 2.4.21-grsec #1 mer jun 18 01:41:51 CEST 2003 i686 unknown


Teraz rekompilujemy apache'a:

# wget ftp://ftp.ovh.net/made-in-ovh/patch/apache_1.3.29+mod_ssl-2.8.16+php_4.3.4.sh
  1. sh apache_1.3.29+mod_ssl-2.8.16+php_4.3.4.sh

cat: /etc/ovhrelease: Żaden plik ani katalog tego typu
release tego systemu to

WAŻNE:

poszukiwanie dostępnych wersji openssl:
OpenSSL 0.9.6l engine 04 Nov 2003
OpenSSL 0.9.6d 9 May 2002


Niewłaściwe. To znaczy, że istnieje wersja openssl kompilowana ręcznie:

# rm -rf /usr/local/ssl


Zaczynamy od nowa:

# cd
  1. sh apache_1.3.29+mod_ssl-2.8.16+php_4.3.4.sh

cat: /etc/ovhrelease: Żaden plik ani katalog tego typu
release tego systemu to

WAŻNE

wyszukiwanie dostępnych wersji openssl
OpenSSL 0.9.6l engine 04 Nov 2003
[...]


15 minut później:

make1: Quitte le répertoire `/home/ovh/src/apache_1.3.29'
src
Jeżeli kompilacja przebiegła prawidłowo, możesz
zainstalować tę wersję roboczą używając
następujących komend:
cd /home/ovh/src/apache_1.3.29
make install
/etc/rc.d/init.d/httpd restart

Następnie sprawdź, jaka jest aktualna wersja

/usr/local/apache/bin/httpd -v
/usr/local/bin/php -v
  1. cd /home/ovh/src/apache_1.3.29
  2. make install
  3. /etc/rc.d/init.d/httpd restart
Stopping httpd: OK
Starting httpd: Syntax error on line 191 of /usr/local/apache/conf/httpd.conf:
Missing, invalid, or non-numeric port
FAILED
  1. pico /usr/local/apache/conf/httpd.conf
  2. /etc/rc.d/init.d/httpd restart
Stopping httpd: FAILED
Starting httpd: OK
  1. /usr/local/apache/bin/httpd -v
Server version: Apache/1.3.29 (Unix)
Server built: Nov 12 2003 20:31:33
  1. /usr/local/bin/php -v
Zend Optimizer requires Zend Engine API version 20001224.
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



Release 3



System release 3 można zaktualizować łącząc się z serwerem przez SSH i wykonując polecenie:

ftp://ftp.ovh.net/made-in-ovh/release/patch-all-release-3.sh && sh patch-all-release-3.sh


Jeżeli twój system jest aktualny otrzymasz informację:


... found OVH-Release 3
+-------------------------------+

! OVH-Release is up to date ! !

+-------------------------------+



W celu zaktualizowania pakietów proszę wejść na stronę panelu webmin i jeżeli uaktualnienia są dostępne będzie tam informacja:


Updates Packet 1 package updates are available

Należy kliknąć w "1 package updates are available" i tam zaktualizować pakiety

Spowoduje to wyświetlenie komunikatów podobnych do:


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.


W celu sprawdzenia swojej wersji systemu release3 należy wykonać przez ssh polecenie:

cat /etc/ovhrelease


Changelog jest dostępny pod adresem:
ftp://ftp.ovh.net/made-in-ovh/release/

tam należy wybrać odpowiednią wersję aktualizacji, np. update_3.25-3.26/CHANGELOG
aby sprawdzić listę zmian wprowadzanych przy aktualizacji z wersji 3.25 do 3.26

ftp://ftp.ovh.net/made-in-ovh/release/update_3.25-3.26/CHANGELOG