Süsteemi uuendamine freebsd-update abil
Lisaks otse CVSist uuendamisele võimaldab FreeBSD ka binaarset baas süsteemi uuendamist ning isegi versioonide vahetust.
Meil on näiteks värske FreeBSD 7.0 install ja sooviks kiirelt paigaldada olulisemad turvalisuse ning stabiilsusega seotud parandused. Ei midagi lihtsamat.
Vaatame ja tõmbame esimesena alla kõik uuendused
# freebsd-update fetch Looking up update.FreeBSD.org mirrors... 1 mirrors found. Fetching public key from update1.FreeBSD.org... done. Fetching metadata signature for 7.0-RELEASE from update1.FreeBSD.org... done. Fetching metadata index... done. Fetching 2 metadata files... done. Inspecting system... done. Preparing to download files... done. Fetching 28 patches.....10....20.... done. Applying patches... done. The following files will be updated as part of updating to 7.0-RELEASE-p5: /boot/kernel/if_faith.ko /boot/kernel/if_faith.ko.symbols /boot/kernel/if_fwip.ko /boot/kernel/if_fwip.ko.symbols /boot/kernel/if_stf.ko /boot/kernel/if_stf.ko.symbols /boot/kernel/ip_mroute.ko /boot/kernel/ip_mroute.ko.symbols /boot/kernel/ipfw.ko /boot/kernel/ipfw.ko.symbols /boot/kernel/kernel /boot/kernel/kernel.symbols /boot/kernel/pf.ko /boot/kernel/pf.ko.symbols /usr/bin/dig /usr/bin/host /usr/bin/nslookup /usr/bin/nsupdate /usr/include/netinet/tcp.h /usr/include/netinet6/in6.h /usr/include/netinet6/nd6.h /usr/lib/libssh.a /usr/lib/libssh.so.4 /usr/sbin/dnssec-signzone /usr/sbin/lwresd /usr/sbin/named /usr/sbin/named-checkconf /usr/sbin/named-checkzone /usr/sbin/named-compilezone /usr/sbin/sshd
Ja paigaldame need süsteemi
# freebsd-update install Installing updates... done.
Peale rebooti on meil juba ees 7.0-RELEASE-p5 versioon
Selline lahendus muidugi nõudlikumaid kasutajaid ei rahulda kes harjunud STABLE haru näiteks kasutama. Aga production süsteemis kus kasutusel vaid RELEASE harud ning vajalik vaid turvauuendusi ja suuremaid veaparandusi paigaldada on see ideaalne
Juhul kui paigaldatud uuendused mingil põhjusel ei sobi saame nad eemaldada kiirelt käsuga
# freebsd-update rollback Uninstalling updates... done.
Käske võib anda ka kombineeritult näiteks freebsd-update fetch install
Release uuendamine
Binaarselt on võimalik uuendada ka versiooni ennast näiteks
# freebsd-update upgrade -r 7.1-RELEASE
või
# freebsd-update upgrade -r 8.1-RELEASE
Tegeletakse uuenduste allatõmbamisega ja seadistusfailide mergemisega, kasutajalt küsitakse mõned küsimused.
# freebsd-update install Installing updates... Kernel updates have been installed. Please reboot and run "/usr/sbin/freebsd-update install" again to finish installing updates.
Ehk peale seda tuleb süsteem bootida uuelt kernelilt jätkamiseks. Kui reboot tehtud installitakse userlandi komponendid
# freebsd-update install
Viimase reboodi järel peaks olema näha uus versioon
# shutdown -r now
Juhul kui tegemist pole release vaid STABLE haruga, näiteks on svni kasutades varasemalt buildworld/buildkernel käsuga süsteemi sellele uuendatud, annab freebsd-update veate, et ei leia mirroreid. Selle vea parandamiseks
siseneme csh shelli ja anname seal käsu
# setenv UNAME_r "9.0-RELEASE"
Lingid
http://www.freebsd.org/cgi/man.cgi?query=freebsd-update&sektion=8&manpath=FreeBSD+6.2-RELEASE