Trinn 1: Punkter du bør vurdere før du oppdaterer forekomsten
Trinn 2: Oppdaterer til siste oppdateringsutgivelse
Trinn 3: Oppdatering til en mindre eller større utgivelse
I denne artikkelen vil vi oppgradere FreeBSD-operativsystemet ved å bruke freebsd-update. Den freebsd-updateverktøyet kan brukes til å oppdatere din forekomst med den nyeste oppdateringen utgivelse, eller du kan også velge å oppgradere til enten en liten eller stor utgivelse.
Trinn 1: Punkter du bør vurdere før du oppdaterer forekomsten
- Sikkerhetskopier forekomsten din. Den enkleste måten er å ta et øyeblikksbilde. Du kan også velge å ha en ekstra sikkerhetskopi av konfigurasjonsfiler fra
/etc/.
- Reserver en vedlikeholdsperiode slik at oppgraderingen kan planlegges og testes i den tidsrammen; mer tid bør reserveres til en større utgivelsesoppgradering sammenlignet med en mindre eller patchutgivelsesoppgradering.
- Hvis du oppgraderer til en større utgivelse, er det tryggere å teste
freebsd-updatepå en test- eller utviklingsforekomst før du prøver det på en produksjonsserver. Du kan bruke et øyeblikksbilde for raskt å starte en testforekomst, teste oppgraderingen uten å ha noen innvirkning på produksjonsforekomsten.
- Før du starter oppgraderingen, anbefales det å slå av tjenestene på instansen. For eksempel: webserver, database osv. Disse kan aktiveres når oppgraderingen er fullført. Dette trinnet er spesielt viktig for større utgivelsesoppgraderinger.
- Vennligst gå gjennom utgivelsesnotatene til mål-FreeBSD-utgivelsen før du starter oppgraderingen.
- Du må ha minst 500 MB ledig plass i
/varpartisjonen, spesielt for å oppgradere til ny mindre eller større utgivelse.
Trinn 2: Oppdaterer til siste oppdateringsutgivelse
Laster ned oppdateringen
Patch-utgivelser inneholder rettelser til operativsystemfiler og binærfiler og kan også inneholde en endring i kjernen. Hent oppdateringen med freebsd-update. Utdataene til kommandoene nedenfor er redigert for korthets skyld.
# 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.
Installerer oppdateringen
Oppdateringene er lastet ned til serveren din. Installer dem nå.
# freebsd-update install
src component not installed, skipped
Installing updates... done.
Start på nytt i den nye kjernen om nødvendig
Siden oppdatering fra 11.0-RELEASE-p1til 11.0-RELEASE-p11innebærer installasjon av en ny kjerne, start forekomsten på nytt for å starte opp i den nylig installerte kjernen.
# shutdown -r now
... system reboot ...
# freebsd-version
11.0-RELEASE-p11
Du har nå oppgradert forekomsten fra 11.0-RELEASEtil 11.0-RELEASE-p11. Aktiver tjenestene dine på nytt og test forekomsten.
Trinn 3: Oppdatering til en mindre eller større utgivelse
Laster ned oppgraderingen
I denne delen oppgraderer vi vår FreeBSD-instans fra FreeBSD 11.0-RELEASEtil FreeBSD 11.1-RELEASE. Den freebsd-updatekommandoen skiller i dette tilfellet fra den tidligere utgivelsen oppgradering patch. Merk at hvis det er noen konflikter i filer på grunn av lokale endringer, freebsd-updatevil du bli spurt om det samme og tillate deg å løse konflikten.
# 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".
Installerer oppgraderingen
Nå som filene er lastet ned og alle konflikter er løst, kan du gå videre og installere oppdateringen.
# 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.
Start på nytt i den nye kjernen og fortsett installasjonen
Når forekomsten har startet på nytt, kan du bekrefte versjonen av kjernen du kjører, og gjenoppta installasjonen.
# 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.
Store versjoner bruker forskjellige Application Binary Interfaces (ABI), som vil ødelegge de fleste tredjepartsapplikasjoner. Hvis du bruker porter til å bygge tredjepartsapplikasjoner, må du bygge alle disse applikasjonene. Hvis du bruker pakkebehandlingssystemet, kan du bruke følgende kommando.
# pkg-static upgrade -f
Når alle pakkene har blitt installert på nytt, fullfør freebsd-updateinstallasjonen.
# freebsd-update install
src component not installed, skipped
Installing updates... done.
# freebsd-version
11.1-RELEASE
Gratulerer, forekomsten din er oppgradert til 11.1-RELEASE! Nå kan du fortsette å aktivere alle nødvendige tjenester og bekrefte at forekomsten oppfører seg som forventet.