Корак 1: Тачке које треба размотрити пре ажурирања инстанце
Корак 2: Ажурирање на најновију верзију закрпе
Корак 3: Ажурирање на мање или веће издање
У овом чланку ћемо надоградити ФрееБСД оперативни систем користећи freebsd-update. freebsd-updateАлат може се користити за ажурирање инстанцу са најновијим патцх издању или можете изабрати да надограде или малолетном лицу или главне верзије.
Корак 1: Тачке које треба размотрити пре ажурирања инстанце
- Направите резервну копију своје инстанце. Најлакши начин је да направите снимак. Такође можете опционо изабрати да имате додатну резервну копију конфигурационих датотека из
/etc/.
- Резервишите период одржавања како би се надоградња могла планирати и тестирати у том временском оквиру; више времена би требало резервисати за већу надоградњу издања у поређењу са мањом надоградњом издања или закрпе.
- Ако надограђујете на главно издање, сигурније је тестирати га
freebsd-updateна тестној или развојној инстанци пре него што га покушате на производном серверу. Можете користити снимак да брзо покренете пробну инстанцу, тестирате надоградњу без икаквог утицаја на вашу производну инстанцу.
- Пре него што започнете надоградњу, препоручује се да искључите услуге на инстанци. На пример: веб сервер, база података, итд. Они могу бити омогућени када се надоградња заврши. Овај корак је посебно важан за велике надоградње издања.
- Прођите кроз белешке о издању циљног ФрееБСД издања пре него што започнете надоградњу.
- Потребно је да имате најмање 500 МБ слободног простора на
/varпартицији посебно за надоградњу на ново мање или веће издање.
Корак 2: Ажурирање на најновију верзију закрпе
Преузимање ажурирања
Издања закрпа садрже исправке за датотеке оперативног система и бинарне датотеке, а могу садржати и промену у кернелу. Преузмите ажурирање користећи freebsd-update. Излаз команди испод је уређен ради краткоће.
# freebsd-version
11.0-RELEASE-p1
# freebsd-update fetch
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching public key from update4.freebsd.org... done.
Fetching metadata signature for 11.0-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files... done.
Fetching 998 patches......... done.
Applying patches... done.
Fetching 6 files... done.
The following files will be removed as part of updating to 11.0-RELEASE-p11:
/boot/kernel/hv_ata_pci_disengage.ko
...
The following files will be added as part of updating to 11.0-RELEASE-p11:
/usr/share/zoneinfo/Asia/Barnaul
...
The following files will be updated as part of updating to 11.0-RELEASE-p11:
/bin/freebsd-version
...
WARNING: FreeBSD 11.0-RELEASE-p1 is approaching its End-of-Life date.
It is strongly recommended that you upgrade to a newer
release within the next 2 months.
Инсталирање ажурирања
Ажурирања су преузета на ваш сервер. Сада их инсталирајте.
# freebsd-update install
src component not installed, skipped
Installing updates... done.
Поново покрените ново језгро ако је потребно
Пошто ажурирање од 11.0-RELEASE-p1до 11.0-RELEASE-p11укључује инсталацију новог кернела, поново покрените инстанцу да бисте покренули ново инсталирано језгро.
# shutdown -r now
... system reboot ...
# freebsd-version
11.0-RELEASE-p11
Сада сте успешно надоградили своју инстанцу са 11.0-RELEASEна 11.0-RELEASE-p11. Поново омогућите своје услуге и тестирајте инстанцу.
Корак 3: Ажурирање на мање или веће издање
Преузимање надоградње
У овом одељку, надоградимо нашу ФрееБСД инстанцу са ФрееБСД 11.0-RELEASEна ФрееБСД 11.1-RELEASE. freebsd-updateКоманда разликује у овом случају из ранијег патцх релеасе надоградње у. Имајте на уму да ако постоје неки сукоби у датотекама због локалних промена, то freebsd-updateће вас обавестити о истом и омогућити вам да решите конфликт.
# freebsd-version
11.0-RELEASE-p11
# freebsd-update upgrade -r 11.1-RELEASE
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching metadata signature for 11.0-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Fetching 1 metadata files... done.
Inspecting system... done.
The following components of FreeBSD seem to be installed:
kernel/generic kernel/generic-dbg world/base world/lib32
The following components of FreeBSD do not seem to be installed:
world/base-dbg world/doc world/lib32-dbg
Does this look reasonable (y/n)? y
Fetching metadata signature for 11.1-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Fetching 1 metadata files... done.
Inspecting system... done.
Fetching files from 11.0-RELEASE for merging... done.
Preparing to download files... done.
Fetching 11513 patches.....10....11510. done.
Applying patches... done.
Fetching 262 files... done.
Attempting to automatically merge changes in files... done.
The following files will be removed as part of updating to 11.1-RELEASE-p0:
/usr/include/netinet/ip_ipsec.h
...
The following files will be added as part of updating to 11.1-RELEASE-p0:
/boot/kernel/amd_ecc_inject.ko
...
The following files will be updated as part of updating to 11.1-RELEASE-p0:
/.cshrc
...
To install the downloaded upgrades, run "/usr/sbin/freebsd-update install".
Инсталирање надоградње
Сада када су датотеке преузете и сви конфликти су решени, можете наставити и инсталирати ажурирање.
# freebsd-update install
src component not installed, skipped
Installing updates...
Kernel updates have been installed. Please reboot and run
"/usr/sbin/freebsd-update install" again to finish installing updates.
Поново покрените ново језгро и наставите са инсталацијом
Када се инстанца поново покрене, можете потврдити верзију кернела коју користите и наставити инсталацију.
# uname -a
FreeBSD fbsd 11.1-RELEASE FreeBSD 11.1-RELEASE #0 r321309: Fri Jul 21 02:08:28 UTC 2017
root@releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
# freebsd-version
11.0-RELEASE-p11
# freebsd-update install
src component not installed, skipped
Installing updates...
Completing this upgrade requires removing old shared object files.
Please rebuild all installed 3rd party software (e.g., programs
installed from the ports tree) and then run "/usr/sbin/freebsd-update install"
again to finish installing updates.
Главне верзије користе различите бинарне интерфејсе апликација (АБИ), што ће покварити већину апликација трећих страна. Ако користите портове за прављење апликација независних произвођача, потребно је да направите све те апликације. Ако користите систем за управљање пакетима, онда можете користити следећу команду.
# pkg-static upgrade -f
Када су сви пакети поново инсталирани, довршите freebsd-updateинсталацију.
# freebsd-update install
src component not installed, skipped
Installing updates... done.
# freebsd-version
11.1-RELEASE
Честитамо, ваша инстанца је надограђена на 11.1-RELEASE! Сада можете наставити да омогућите све потребне услуге и потврдите да се инстанца понаша како се очекује.