[OpenBSD]

[3.4 -> 3.5] | [3.5 -> 3.6] | [3.6 -> 3.7] | [3.7 -> 3.8] | [3.8 -> 3.9] | [3.9 -> 4.0] | [4.0 -> 4.1] | [4.1 -> 4.2] | [FAQ Index]

Przewodnik po aktualizacji: z 4.2 do 4.3


Uwaga: upgrade jest dostępny tylko z release do release, zalecane jest aby nie opuszczać wydań pośrednich. Nie opuszczaj wersji release.

Jest niezwykle ważne abyś przeczytał cały dokument i dokładnie zrozumiał cały proces zanim będziesz usiłował go przeprowadzić. Jeśli zamierzasz działać na krytycznej lub fizycznie odległej maszynie, zalecamy abyś przetestował ten proces na identycznej, lokalnej maszynie i zweryfikował szanse na powodzenie zanim przystąpisz aktualizacji.

Upgrade to wygodny sposób na utrzymywanie twojego systemu OpenBSD aktualnym z ostatnią aktualną wersją. Jednakże, rezultat w zamierzeniu nie odpowiada dokładnie wynikowi instalacji wyczyść-i-załaduj. W szczególności stare pliki bibliotek, nie są usuwane w procesie aktualizacji, ponieważ mogą być wymagane przez starsze aplikacje które mogą, lecz nie muszą być zaktualizowane w danym momencie. Jeżeli NAPRAWDĘ chcesz pozbyć się tych wszystkich plików, prawdopodobnie lepiej będzie jeśli zainstalujesz wszystko od początku.

Spis treści:


Zanim rozpoczniesz: sprawy do przemyślenia i te którymi należy się martwić

To nie jest kompletna lista zmian jakie pojawiły się pomiędzy wersjami 4.1 i 4.2 lecz raczej zestawienie ważnych spraw na które może natrafić znaczna liczba użytkowników podczas procesu aktualizacji. Szczegółową listę zmian znajdziesz na stronie plus43.html oraz w logach zmian CVS.


Proces uaktualnienia

Uaktualnienie za pomocą kernela instalacyjnego

Jeżeli posiadasz dostęp do konsoli serwera wówczas najłatwiejszą i najbezpieczniejszą metodą na uaktualnienie systemu jest uruchomienie systemu z medium instalacyjnego lub z bsd.rd i wykonanie procesu uaktualnienia który bardzo przypomina proces instalacji systemu. Następnie należy wykonać przedstawione poniżej ostatnie kroki.

Jedną z najłatwiejszych metod na uruchomienie systemu z instalacyjnego kernela jest umieszczenie pliku bsd.rd dla wersji 4.3 w głównym drzewie systemu plików i poinstruowanie boot loadera by wystartował z pliku bsd.rd. Dla amd64 oraz i386 wykonasz to wpisując po prostu "boot bsd.rd" gdy pojawi się znak zachęty boot>.

Uaktualnienie bez kernela instalacyjnego

NIE jest to zalecany proces. Korzystaj z medium instalacyjnego gdy to tylko jest to możliwe!

Czasem ktoś może potrzebować aktualizacji na maszynie na której nie można w łatwy sposób przeprowadzić normalnego procesu aktualizacji. Można wówczas wykonać aktualizację ostrożnie postępując w procesie podobnym do aktualizacji opartej na źródłach:

Podczas tego procesu, sendmail(8) może zwrócić pewien błąd podobny do poniższego:
    Nov 1 12:47:05 puffy sm-mta[16733]: filesys_update failed: No such file or dire
    ctory, fs=., avail=-1, blocksize=380204
Wiadomość ta może być bezpiecznie zignorowana, możesz też chcieć zatrzymać sendmail(8)-a na czas aktualizacji. Zwracamy uwagę, że sendmail nie działa w tym punkcie aktualizacji dobrze i wymagany jest jego restart (jako część restartu maszyny), zanim poczta będzie mogła być obsługiwana zgodnie z oczekiwaniami.


Ostatnie kroki

Jakkolwiek wykonujesz aktualizację, czy to przez kernel instalacyjny i wykonanie "formalnego" procesu aktualizacji, czy też aktualizację binarną "w-miejsce", musisz wykonać kilka kroków.

1. Nowi użytkownicy i grupy

Wymagane jest utworzenie nowych użytkowników dla ospf6d oraz snmpd. Możesz dodać odpowiednie konta korzystając z polecenia useradd(8).
useradd -u90 -g=uid -c"OSPF6 Daemon" -d/var/empty -s/sbin/nologin _ospf6d
useradd -u91 -g=uid -c"SNMP Daemon" -d/var/empty -s/sbin/nologin _snmpd
Musisz także użyć vipw(8) do zmiany pliku z hasłami oraz ulubionego edytowa do zmiany pliku /etc/group, zmieniając _hoststated na _relayd, oraz zmieniając w vipw(8) opis z "HostState Daemon" na "Relay Daemon". Nie zmieniaj innych linii.

2. Aktualizacja /etc

Rozpakuj plik etc43.tgz do tymczasowej lokalizacji:

tar -C /tmp -xzphf ${RELEASEPATH}/etc43.tgz
Pliki które prawdopodobnie mogą być skopiowane z etc43.tgz "w takiej postaci w jakiej są":
etc/mail/README
etc/moduli
etc/mtree/4.4BSD.dist
etc/mtree/BSD.local.dist
etc/mtree/special
etc/netstart
etc/ospf6d.conf
etc/rc
etc/rc.conf
etc/relayd.conf
etc/security
etc/snmpd.conf
var/named/etc/root.hint
Zauważ, że JEST możliwe by lokalnie zmodyfikować te pliki, jeżeli to było zrobione, będzie konieczne ręczne scalenie. Zwróć szczególną uwagę na mail/* jeżeli używasz czegoś innego niż domyślna konfiguracja Sendmail(8)-a. Tutaj są linie kopiuj/wklej do kopiowania tych plików, zakładając że rozpakowałeś etc43.tgz w miejscu sugerowanym powyżej:
cd /tmp/etc
cp moduli netstart ospf6d.conf rc rc.conf relayd.conf security snmpd.conf /etc
cp mtree/* /etc/mtree/
cp mail/README /etc/mail
cp ../var/named/etc/root.hint /var/named/etc

Pliki które muszą być ręcznie włączone, uwzględniając lokalne zmiany w nich wykonane (jeżeli były modyfikowane z domyślnych), w przeciwnym wypadku po prostu również je skopiuj:

etc/changelist
etc/chio.conf
etc/ftpusers
etc/mail/aliases
etc/ssh/sshd_config
etc/sudoers
etc/sysctl.conf
var/named/etc/named-dual.conf
var/named/etc/named-simple.conf
var/named/etc/named.conf
var/www/conf/httpd.conf
var/www/conf/mime.types
var/www/htdocs/manual/mod/core.html
var/www/htdocs/manual/server-wide.html
Zmiany w tych plikach znajdują się w tej łatce. Możesz spróbować z niego skorzystać wykonując jako root nastepujące polecenie:
cd /
patch -C -p0 < upgrade43.patch
Spowoduje to przetestowanie łatki jak dobrze pasuje do TWOJEGO systemu, aby ją zastosować opuść opcję "-C". Zauważ że w sytuacji w której posiadasz zmodyfikowane pliki, lub pliki które nie są wystarczająco aktualne, a także w sytuacji w której zostały zaktualizowane z wersji "snapshot" 4.2, pliki te mogą nie zostać "czysto" zaakceptowane. W takiej sytuacji, będziesz musiał ręcznie uwzględnić zmiany. Prosimy wykonaj test tego procesu zanim się na niego zdecydujesz dla maszyny do której nie możesz się w łatwy sposób dostać.

/etc/ttys został uzgodniony pomiędzy platformami, wymagają one jednak dodatkowych działań na tym pliku. Zalecane jest skopiowanie nowego pliku i ręczne wprowadzenie do niego zmian.

mv /etc/ttys /etc/ttys.orig
cp /tmp/etc/ttys /etc

W poniższych plikach zostały wprowadzone pewne zmiany na które należy zwrócić uwagę, lecz nie mogą być bezpośrednio skopiowane lub scalone (przykładowo jeżeli korzystasz z pf.conf, przyjżyj się sugerowanej zmianie strategii i zdecyduj czy jest właściwa dla twoich potrzeb).

etc/pf.conf

Kilka plików musi zostać usuniętych z systemu ponieważ nie są używane w 4.3:

rm /etc/hoststated.conf /var/named/standard/root.hint
Ostatecznie skorzystaj z newaliases(8) aby zaktualizować bazę aliasów oraz mtree(8) aby utworzyć jakiekolwiek nowe katalogi oraz zmienić właściciela i prawa dostępu do /etc/chio.conf:
newaliases
mtree -qdef /etc/mtree/4.4BSD.dist -p / -u
chown root:operator /etc/chio.conf
chmod 644 /etc/chio.conf

3. Sprawdzanie kernela

Uwaga: większość osób może pominąć ten krok!

Jeżeli podążałeś za instrukcjami procesu aktualizacji bez instalacji nowego kernela, juz zakończyłeś ten krok procesu. Jednakże, jeśli korzystałeś z medium instalacyjnego, i posiadałeś zmodyfikowany kernel w 4.2, istnieje prawdopodobieństwo, że będziesz musiał zmodyfikować kernel w 4.3. Może to być równie proste jak modyfikacja określonego urządzenia korzystając z config(8), lub może pociągać za sobą rekompilację, jeśli dana opcja nie jest włączona w kernelu GENERIC. Prosimy zobacz FAQ 5 - Tworzenie systemu ze źródeł, zanim zdecydujesz się na rekompilację kernela.

4. Aktualizacja pakietów

Jeśli instalowałeś jakiekolwiek pakiety w twoim systemie, powinieneś zaktualizować je po zakończeniu aktualizacji systemu bazowego. Jednakże pamiętaj że niektóre pakiety mogą wymagać dalszej konfiguracji przed i/lub po uaktualnieniu pakietu. Sprawdź informacje dotyczące aktualizacji koniecznych pakietów.

Narzędzia obsługi pakietów pozwalają na aktualizację "w miejsce", poprzez użycie pkg_add -u. Przykładowo, aby zaktualizować twoje pakiety, upewnij się ze PKG_PATH wskazuje na katalog z pakietami dla 4.2 na twoim CD lub najbliższym mirrorze FTP (przyp. tłum. lub na katalog na lokalnym dysku), i użyj polecenia podobnego to poniższego

# pkg_add -ui -F update -F updatedepends
gdzie opcja -u wskazuje tryb aktualizacji, -i określa tryb interaktywny, więc pkg_add będzie zwracał się do ciebie gdy napotka niejasność. Przeczytaj stronę manuala dla pkg_add(1) oraz dokument FAQ dotyczący zarządzania pakietami.

5. Usunięcie xbase42.tgz

Jeśli instalowałeś xbase42.tgz aby mieć zainstalowane biblioteki libexpat wymagane dla niektórych pakietów, nie potrzebujesz tego w 4.3. Możesz go usunąć lub zainstalować xbase43.tgz.

Jeżeli chcesz usunąć, wykonaj poniższe polecenia:

# mv /usr/X11R6/lib/libexpat.so.* /usr/lib
# rm -r /usr/X11R6 /etc/X11 /etc/fonts

Jeżeli chcesz zainstalować xbase43.tgz, musisz wykonać porządki ze starymi plikami dla libexpat:

# mv /usr/X11R6/lib/libexpat.so.* /usr/lib
# rm /usr/X11R6/lib/libexpat*
# rm /usr/X11R6/include/expat*

[3.4 -> 3.5] | [3.5 -> 3.6] | [3.6 -> 3.7] | [3.7 -> 3.8] | [3.8 -> 3.9] | [3.9 -> 4.0] | [4.0 -> 4.1] | [4.1 -> 4.2] | [FAQ Index]


[back] www@openbsd.org
$OpenBSD: upgrade43.html,v 1.4 2008/05/27 10:00:24 tobias Exp $