4. Uppgraderingar från Debian 12 (bookworm)
4.1. Förberedelse inför uppgraderingen
Du bör läsa informationen i Problemområden att känna till för trixie innan du uppgraderar. Det kapitlet täcker in möjliga problem som inte direkt relaterar till uppgraderingsprocessen men som fortfarande kan vara viktiga att känna till innan du påbörjar arbetet.
4.1.1. Säkerhetskopiera all data och konfigurationsinformation
Innan uppgradering av ditt system rekommenderas det starkt att du gör en fullständig säkerhetskopia, eller åtminstone en säkerhetskopia av data eller konfigurationsinformation som du inte vill riskera att förlora. Uppgraderingsverktygen och -processen är tillförlitlig men ett hårdvarufel mitt i en uppgradering kan resultera i ett allvarligt skadat system.
De huvudsakliga delar du vill säkerhetskopiera är innehållet i /etc
, /var/lib/dpkg
, /var/lib/apt/extended_states
och utdata från:
$ dpkg --get-selections '*' # (the quotes are important)
Om du använder aptitude
för att hantera paket på ditt system vill du även ta en säkerhetskopia på /var/lib/aptitude/pkgstates
.
Själva uppgraderingsprocessen ändrar ingenting i katalogen /home
. Dock är det känt att vissa program (exempelvis delar av Mozilla-sviten och skrivbordsmiljöerna GNOME och KDE) skriver över befintliga användarinställningar med nya standardvärden när en ny version av programmet startas för första gången av en användare. Som en försiktighetsåtgård bör du göra en säkerhetskopia av de dolda filerna och katalogerna (så kallade "punktfiler") i användarnas hemkataloger. Denna säkerhetskopia kan hjälpa till att återställa eller återskapa de gamla inställningarna. Du kanske även vill informera dina användare om det här.
Alla paketinstallationsåtgärder måste köras med superanvändarens rättigheter, så logga in som root eller använd su
eller sudo
för att få de nödvändiga åtkomsträttigheterna.
Uppgraderingen innebär att vissa förutsättningar måste mötas; du bör kontrollera dem innan den faktiska uppgraderingen påbörjas.
4.1.2. Informera användarna i förväg
Det är klokt att informera alla användare i förväg angående de uppgraderingar som du planerar att göra, även om användarna som kommer åt ditt system via en ssh-anslutning knappt kommer att märka det under uppgraderingen, och bör kunna fortsätta att arbeta som vanligt.
Om du vill vidta extra försiktighetsåtgärder bör du säkerhetskopiera eller avmontera /home
före uppgradering.
Du kommer behöva göra en kärnuppgradering vid uppgradering till trixie, en omstart kommer alltså att vara nödvändig. Vanligen sker detta efter uppgraderingen är klar.
4.1.3. Förbered för att tjänster blir oåtkomliga
Under uppgraderingsprocessen kan det finnas tjänster knutna till paket som ingår i uppgraderingen. Om detta är fallet kommer dessa tjänster stoppas under tiden som paketen byts ut och får nya inställningar. Under tiden kommer dessa tjänster inte vara tillgängliga.
Exakt hur lång tid tjänsterna är bortkopplade varierar med antalet paket som uppgraderas i systemet. Dessutom ingår tiden som det tar för systemadministratören att besvara frågor om inställningar från olika paket som uppgraderas. Kom ihåg att om uppgraderingsprocessen lämnas oövervakad och systemet frågar efter information är det mycket troligt att tjänsterna är otillgängliga [1] under mycket lång tid.
If the system being upgraded provides critical services for your users or the network [2], you can reduce the downtime if you do a minimal system upgrade, as described in Minimal system upgrade, followed by a kernel upgrade and reboot, and then upgrade the packages associated with your critical services. Upgrade these packages prior to doing the full upgrade described in Upgrading the system. This way you can ensure that these critical services are running and available through the full upgrade process, and their downtime is reduced.
4.1.4. Förbered för återställning
Även om Debian försöker säkerställa att ditt system kan starta vid varje givet tillfälle finns det alltid en möjlighet att du kan uppleva problem med att start om ditt system efter en uppgradering. Kända potentiella problem är dokumenterade i detta och följande kapitel av Kommentarer till utgåvan.
Av den anledningen är det klokt att försäkra sig om att du kan återställa ifall ditt system skulle misslyckas att starta om eller, för fjärrhanterade system, misslyckas att komma åt nätverket.
Om du fjärruppgraderar via en ssh
-länk är det starkt rekommenderat att du vidtar nödvändiga åtgärder för att kunna komma åt servern genom en fjärrserieterminal. Det finns en chans att, efter uppgradering av kärnan och omstart, du kommer att behöva rätta till systemkonfigurationen genom en lokal konsoll. Om systemet av misstag startas om mitt i en uppgradering finns det en chans att du behöver återställa systemet med hjälp av en lokal konsoll.
For emergency recovery we generally recommend using the rescue mode of the trixie Debian Installer. The advantage of using the installer is that you can choose between its many methods to find one that best suits your situation. For more information, please consult the section "Recovering a Broken System" in chapter 8 of the Installation Guide (at https://iwawocd.cewmufwd.tk/releases/trixie/installmanual) and the Debian Installer FAQ.
Om det misslyckas behöver du ett alternativt sätt att starta upp ditt system på så att du kan komma åt och reparera det. En särskild räddningsavbildning eller en avbildning med ett körbart Linuxsystem på. Efter att du har startat upp från en sådan skiva bör du kunna montera ditt rotfilsystem och använda chroot
in i det för att undersöka och rätta till problemet.
4.1.4.1. Felsökningsskal under uppstart med hjälp av initrd
Paketet initramfs-tools lägger till ett felsökningsskal [3] i de initrd som det skapar. Om initrd exempelvis inte kan montera ditt rot-filsystem kommer du att hamna i detta felsökningsskal som har vissa grundläggande kommandon tillgängliga för att spåra och möjligen laga felet.
Grundläggande saker att kontrollera är: närvaron av korrekta enhetsfiler i /dev
; vilka moduler som läses in (cat /proc/modules
); utdata för dmesg
efter fel vid inläsning av drivrutiner. Utdata för dmesg
kommer även att visa vilka enhetsfiler som har tilldelats till vilka diskar; du bör kontrollera det här mot utdata för echo $ROOT
för att försäkra dig om att rotfilsystemet finns på den förväntade enheten.
Om du lyckas rätta till problemet, skriv exit
för att avsluta felsökningsskalet och fortsätta uppstartsprocessen där felet inträffade. Självfallet behöver du även rätta till det underliggande problemet och generera om initrd-filen så att nästa uppstart inte misslyckas.
4.1.4.2. Felsökningsskal då systemet startas med systemd
Om uppstarten misslyckas under system är det möjligt att starta ett felsökningsskal genom att ändra kärnans kommandorad. Om grundläggande uppstart fungerar men några tjänster misslyckas med att starta kan det vara bra att utöka kärnans parametrar med systemd.unit=rescue.target
.
Kärnans parameter systemd.unit=emergency.target
tillhandahåller ett rotskal så tidigt som möjligt. Detta görs dock före rotfilsystemet har monterats med rättigheter för läsning och skrivning. Du behöver lösa det manuellt genom:
# mount -o remount,rw /
Ett annat sätt är att aktivera "early debug shell" i systemd via debug-shell.service
. Vid nästa uppstart kommer denna tjänsten att öppna ett inloggningsskal för root på tty9 väldigt tidigt i uppstartsprocessen. Det kan aktiveras via kärnanas startparameter systemd.debug-shell=1
eller fixerat med systemctl enable debug-shell
(kom då ihåg att stänga av det igen när felsökningen är avslutad).
Mer information om att felsöka en felaktig uppstartsprocess med systemd finns i artikeln Freedesktop.org Diagnosing Boot Problems (engelska).
4.1.5. Förbered en säker miljö för uppgraderingen
Viktigt
If you are using some VPN services (such as tinc) consider that they might not be available throughout the upgrade process. Please see Prepare for downtime on services.
För att öka säkerhetsmarginalen vid en fjärruppgradering föreslår vi att du kör uppgraderingsprocesser i den virtuella konsollen som tillhandahålls av programmet screen
, vilket innebär att det går att återansluta till sessionen och försäkra sig om att uppgraderingsprocessen inte avbryts även om fjärranslutningen avbryts.
De som använder watchdog-tjänsten som tillhandahålls av paketet micro-evtd ska stoppa tjänsten och avaktivera whatcdog-timern innan uppgraderingen för att undvika oönskade omstarter mitt i uppgraderingsprocessen:
# service micro-evtd stop
# /usr/sbin/microapl -a system_set_watchdog off
4.2. Börja med en "ren" Debian
Uppgraderingsprocessen som beskrivs i detta kapitel är helt och hållet inriktad på "rena" Debian-system som kör stabil-utgåva. APT kontrollerar vad som finns installerat på ditt system. Om dina APT-inställningar har andra källor än bookworm, om du har installerat paket från andra utgåvor eller från tredjepart så bör du överväga att ta bort dessa för att säkerställa att uppgraderingen inte kompliceras av detta.
APT använder i huvudsak inställningarna i /etc/apt/sources.list
för att avgöra varifrån paket ska hämtas men det kan också finnas filer i katalogen /etc/apt/sources.list.d/
- läs mer om detta i sources.list(5) (engelska). Om ditt system använder flera käll-filer behöver du säkerställa att de förblir konsekventa.
4.2.1. Uppgradera till Debian 12 (bookworm)
Enbart uppgraderingar från Debian 12 (bookworm) stöds. Visa din aktuella Debianversion med:
$ cat /etc/debian_version
Please follow the instructions in the Release Notes for Debian 12 at https://iwawocd.cewmufwd.tk/releases/bookworm/releasenotes to upgrade to Debian 12 first if needed.
4.2.2. Uppgradera till senaste punkt-utgåvan
Processen förutsätter att ditt system har uppdaterats till den senaste punkutgåven av 12. Om du inte har gjort detta eller är osäker, följ instruktionerna i Uppgradering av ditt bookworm-system.
4.2.3. Debian Backports
Debian Backports möjliggör användning av mer aktuella paket för de som använder stabil utgåva av Debian (vissa avsteg i testning och säkerhetsstöd görs dock). Debian Backports-gruppen tillhandahåller ett mindre antal paket från nästa Debianutgåva som är justerade kompilerade för att fungera på den aktuella stabila utgåvan av Debian.
Paket från bookworm-backports har versionsnummer som är lägre än versionen i trixie, därför ska de uppgraderas till trixie som "vanliga" paket för bookworm gör under distributionsuppgraderingen. Det finns inga kända problem men uppgraderingsvägen från backports är inte lika väl testad och innebär alltså en högre risk.
Varning
Vanliga Debian backports stöds vid uppgradering men det finns ingen uppenbar uppgraderingsväg från sloppy-backports (dessa använder APT sources på formen bookworm-backports-sloppy).
As with Unofficial sources, users are advised to remove "bookworm-backports" entries from their APT source-list files before the upgrade. After it is completed, they may consider adding "trixie-backports" (see https://backports.debian.org/Instructions/).
För ytterligare information läs i Backports wikisidor (i huvudsak på engelska).
4.2.4. Förbered paketdatabasen
Du måste säkerställa att paketdatabasen är redo innan uppgraderingen fortsätter. Om du använder en annan pakethanterare som aptitude eller synaptic så måste du kontrollera påbörjade åtgärder. Ett paket som ska installeras eller tas bort kan orsaka besvär med uppgraderingsproceduren. Att justera detta kräver att dina APT-källor fortfarande pekar ut "bookworm" istället för "stable" eller "trixie". Läs mer i avsnittet Kontrollera dina APT sources.list-filer.
4.2.5. Ta bort föråldrade paket
It is a good idea to remove obsolete packages from your system before upgrading. They may introduce complications during the upgrade process, and can present security risks as they are no longer maintained.
4.2.6. Ta bort icke-Debian-paket
Nedan kan du läsa om två metoder för att hitta installerade paket som inte kommer från Debian. Antingen genom apt
eller apt-forktracer
. Observera dock att ingen av dem är 100% korrekta (exempelvis visar apt paket som tidigare varit tillhandahållna av Debian men inte längre är det - t.ex. äldre kärnpaket).
$ apt list '?narrow(?installed, ?not(?origin(Debian)))'
$ apt-forktracer | sort
4.2.7. Städa upp kvarlämnade inställningsfiler
En tidigare uppgrdering kan ha lämnat kvar oanvända inställningsfiler; äldre versioner av inställningsfiler, versioner som ditribuerats av de som har hand om resprektive paket eller liknande. Det är en bra idé att rensa upp sådant för att minska risken för förvirring. Hitta sådana kvarlämnade inställningsfiler med:
# find /etc -name '*.dpkg-*' -o -name '*.ucf-*' -o -name '*.merge-error'
4.2.8. Komponenter från non-free och non-free-firmware
Om du har icke-fri fast mjukvara installerad är det rekommenderat att lägga till non-free-firmware
till dina APT sources-list-filer. För mer detaljer läs Arkivdelar och Icke-fri fastprogramvara flyttad till sin egen del av arkivet.
4.2.9. Avsnittet proposed-updates
Om du har proposed-updates
i dina APT-källfiler ska du ta bort det innan du försöker uppdatera ditt system. Detta är en försiktighetsåtgärd för att minska risken för att konflikter uppstår.
4.2.10. Inofficiella källor
Om du har några icke-Debianpaket på ditt system, bör du tänka på att dessa kan tas bort under uppgraderingen på grund av beroendekonflikter. Om dessa paket blev installerade genom att lägga till extra paketarkiv i dina APT-källfiler bör du kontrollera om det arkivet även erbjuder paket som är byggda för trixie och ändra källan på lämpligt sätt samtidigt som källorna för Debian-paket.
Some users may have unofficial backported "newer" versions of packages that are in Debian installed on their bookworm system. Such packages are most likely to cause problems during an upgrade as they may result in file conflicts [4]. Possible issues during upgrade has some information on how to deal with file conflicts if they should occur.
4.2.11. Inaktivera APT-nålning
Om du har konfigurerat APT att installera vissa paket från en annan distribution än den stabila (exempelvis från testing), kan du ändra din konfiguration för paketnålning i APT (lagrad i /etc/apt/preferences
och /etc/apt/preferences.d/
) för att tillåta uppgraderingen av paket till versionerna i den nya stabila utgåvan. Ytterligare information om APT-nålning kan hittas i apt_preferences(5) (på engelska).
4.2.12. Kontrollera att gpgv är installerad
APT behöver gpgv version 2 eller senare för att kontrollera nycklarna som används för att signera utgåvan av trixie. I och med att gpgv1 rent tekniskt uppfyller beroendet men enbart är användbar i vissa specifika tillfällen bör användarna säkerställa att rätt version är installerad genom:
# apt install gpgv
4.2.13. Kontrollera paketstatus
Oavsett vilken metod som används för uppgradering, rekommenderas det att du kontrollerar statusen på paketen först och verifierar att alla paket är möjliga att uppgradera. Följande kommando kommer att visa de paket som har statusen Half-Installed eller Failed-Config, och de som har någon form av felstatus.
$ dpkg --audit
Du kan även inspektera tillståndet för alla paket på ditt system med aptitude
, eller med kommandon som
$ dpkg -l | pager
eller
# dpkg --get-selections '*' > ~/curr-pkgs.txt
Alternativt så kan du använda apt
.
# apt list --installed > ~/curr-pkgs.txt
Det är önskvärt att ta bort eventuella tillbakahållna paket innan uppgradering. Om något paket är systemkritiskt och hålls tillbaka för uppgraderingen, kommer uppgraderingen att misslyckas.
$ apt-mark showhold
Om du ändrat och byggt om ett paket lokalt, och inte bytte namn på det eller la in ett datum i versionen, måste du hålla tillbaka det för att förhindra att det uppgraderas.
Pakettillståndet "hold" (håll) för apt
kan ändras med:
# apt-mark hold package_name
Replace hold
with unhold
to unset the "hold" state.
Om det är någonting du behöver rätta till är det bäst att se till att din APT-källfiler fortfarande refererar till bookworm vilket förklaras i Kontrollera dina APT sources.list-filer.
4.3. Förbered källor för APT
Före uppgraderingen påbörjas behöver du justera APTs källor (/etc/apt/sources.list
och filer i /etc/apt/sources.list.d/
) för att lägga till källor för trixie och för att ta bort källor för bookworm.
Apt kommer att överväga alla paket som kan hittas via någon av de installerade arkiven. Valet faller sedan på att installera paketet med högsta versionsnumret, där prioritet ges till de rader som kommer först. Om du nyttjar flera redundanta arkiv, bör du först namnge en lokal hårddisk, sedan cd-skivor, och sedan fjärr-speglar.
En utgåva kan ofta refereras till både dess kodnamn (t.ex. "bookworm", "trixie") och efter dess statusnamn (alltså "oldstable", "stable", "testing", "unstable"). Att referera till en utgåva efter dess kodnamn har fördelen att du aldrig blir överraskad av en ny utgåva och av den anledningen används den här metoden här. Det kan naturligtvis betyda att du själv måste hålla utkik efter nya utgåvor. Om du istället använder statusnamnet kommer systemet automatiskt att uppgraderas utan förvarning genom att uppdatera en mängd paket så snart en utgivning har skett.
Debian tillhandahåller två sändlistor med kungörelser (på engelska) som kan hjälpa dig att hålla dig uppdaterad med vad som sker med Debians utgåvor:
Genom att anmäla dig till Debians kungörelse sändlista så kommer du få en notifiering varje gång Debian tillgänglig gör en ny utgåva. Exempelvis när "trixie" skiftar från "testing" till "stable".
Genom att anmäla dig till Debians säkerhetskungörelse sändlista så kommer du få en notifiering varje gång Debian publicerar ett säkerhetsmeddelande.
4.3.1. Lägg till APT-källor från Internet
Vid nyinstallation installeras APT så att det använder Debian APT CDN, detta bör innebära att paket automatiskt hämtas från en server i relativ närhet av dig - sett till nätverksvägar. I och med att detta är en relativt ny tjänst kan äldre installationer ha inställningar som fortfarande pekar på en av de huvudsakliga internetservrarna från Debian eller på en av speglarna. Rekommendationen är att byta till att använda CDN-tjänsten i dina APT-inställningar.
För att använda CDN-tjänsten ska en rad likt följande läggas till dina inställningar för APT-källor (antar här att main
och contrib
används):
deb https://deb.debian.org/debian trixie main contrib
Efter att du har lagt till dina nya källor ska du inaktivera de tidigare befintliga "deb
"-raderna genom att placera ett hash-tecken (#
) framför dem.
Om din upplevelse blir bättre genom att använda en särskild spegel belägen närmare dig vad gäller nätverksavstånd så finns detta alternativ alltjämt kvar.
Adresserna till Debians speglar kan hittas på https://iwawocd.cewmufwd.tk/distrib/ftplist (se avsnittet "Lista över Debianspeglingar").
Anta till exempel att din närmaste Debian-spegel är http://mirrors.kernel.org
. När den spegeln inspekteras med en webbläsare, kommer du att märka att huvudkatalogerna är organiserade så här:
http://mirrors.kernel.org/debian/dists/trixie/main/... http://mirrors.kernel.org/debian/dists/trixie/contrib/...
För att ställa in APT att använda en särskild spegel ska en rad likt följande läggas till (återigen antas att du använder main
och contrib
):
deb http://mirrors.kernel.org/debian trixie main contrib
Observera att "dists
" läggs till automatiskt och att argumenten efter utgåvans namn används för att utöka sökvägen till flera kataloger.
Återigen; efter att du lagt till källor behöver de tidigare arkiven avaktiveras.
4.3.2. Lägg till APT-källor för en lokal spegelserver
Istället för att använda paketspeglar, kanske du önskar ändra /etc/apt/sources.list
till att använda en spegel på en lokal hårddisk (möjligen monterad över NFS).
Din paketspegel kan exempelvis finnas under /var/local/debian/
och innehålla huvudkataloger som dessa:
/var/local/debian/dists/trixie/main/... /var/local/debian/dists/trixie/contrib/...
Lägg till den här raden till din sources.list
för att använda den här med apt:
deb file:/var/local/debian trixie main contrib
Observera att "dists
" läggs till automatiskt och att argumenten efter utgåvans namn används för att utöka sökvägen till flera kataloger.
Efter att du har lagt till dina nya källor ska du inaktivera de tidigare befintliga arkiv i APT-källfilerna genom att placera ett hash-tecken (#
) framför dem.
4.3.3. Lägg till APT-källor från optisk media
Om du endast vill använda DVD-skivor (eller CD- eller Blu-ray-skivor) ska du inaktivera de övriga raderna i APT-källfilerna genom att placera ett hash-tecken (#
) framför dem.
Se till att det finns en rad i /etc/fstab
som aktiverar montering av din cd-rom-enhet på monteringspunkten /media/cdrom
. Till exempel, om /dev/sr0
är din cd-rom-enhet, ska /etc/fstab
innehålla en rad som denna:
/dev/sr0 /media/cdrom auto noauto,ro 0 0
Observera att det inte får finnas några blanksteg mellan orden noauto,ro
i det fjärde fältet.
För att verifiera att det fungerar, mata in en cd och försök köra
# mount /media/cdrom # this will mount the CD to the mount point
# ls -alF /media/cdrom # this should show the CD's root directory
# umount /media/cdrom # this will unmount the CD
Kör sedan:
# apt-cdrom add
för varje Debian cd-rom med binärer som du har tillgång till för att lägga till data om varje cd till APT:s databas.
4.4. Uppgradering av paket
Det rekommenderade verktyget för att genomföra uppgraderingen från föregående utgåva av Debian är att använda pakethanteringsverktyget apt
.
Observera
apt
är tänkt för interaktivanvändning och ska inte användas i skript. I skript bör apt-get
som har fast hantering av utdata som passar sig för maskinell avläsning.
Glöm inte att montera alla nödvändiga partitioner (speciellt rot- och /usr
-partitionerna) läs- och skrivbara, med ett kommando som det här:
# mount -o remount,rw /mountpoint
Härefter ska du kontrollera att källraderna för APT (i /etc/apt/sources.list
och filerna i /etc/apt/sources.list.d/
) refererar antingen till "trixie" eller till "stable". Det ska inte finnas några källrader som pekar till bookworm.
Observera
Källrader för en cd-skiva kommer ofta att referera till "unstable
", även om det här är konstigt ska du inte ändra dem.
4.4.1. Spela in sessionen
Det rekommenderas starkt att du använder programmet /usr/bin/script
för att spela in en utskrift av uppgraderingssessionen. Om problem uppstår har du en logg på vad som hände och, om det behövs, kan tillhandahålla exakt information i en felrapport. För att påbörja inspelningen, kör:
# script -t 2>~/upgrade-trixie-step.time -a ~/upgrade-trixie-step.script
eller liknande. Om du behöver köra typescript-filen igen (exempelvis om du behövde starta om systemet) ska du använda olika step-värden för att peka ut vilket steg av uppgraderingen du loggar. Lägg inte typescript-filen i en temporär katalog såsom /tmp
eller /var/tmp
(filer i dessa kataloger kan tas bort under uppgraderingen eller under en omstart).
The typescript will also allow you to review information that has
scrolled off-screen. If you are at the system's console, just switch to
VT2 (using Alt+F2
) and, after logging in, use
# less -R ~root/upgrade-trixie.script
to view the file.
Efter att du har färdigställt uppgraderingen, kan du stoppa script
genom att ange exit
vid prompten.
apt
kommer också att logga förändrad status för paket i /var/log/apt/history.log
och utdatat i terminalen i /var/log/apt/term.log
. dpkg
kommer dessutom att logga statusförändringar för alla paket i /var/log/dpkg.log
. Om du använder aptitude
så kommer status även att loggas i /var/log/aptitude
.
Om du har använt flaggan -t för script
kan du använda programmet scriptreplay
för att spela upp hela sessionen:
# scriptreplay ~/upgrade-trixie-step.time ~/upgrade-trixie-step.script
4.4.2. Uppdatering av paketlistan
Först behöver listan över tillgängliga paket för den nya utgåvan hämtas. Det görs genom att köra:
# apt update
Observera
Användare av apt-secure kan drabbas av besvär när aptitude
eller apt-get
används. För apt-get kan kommandot apt-get update --allow-releaseinfo-change
användas.
4.4.3. Se till att du har tillräckligt med utrymme för uppgraderingen
You have to make sure before upgrading your system that you will have
sufficient hard disk space when you start the full system upgrade
described in Upgrading the system. First, any
package needed for installation that is fetched from the network is
stored in /var/cache/apt/archives
(and the partial/
subdirectory, during download), so you must make sure you have enough
space on the file system partition that holds /var/
to temporarily
download the packages that will be installed in your system. After the
download, you will probably need more space in other file system
partitions in order to both install upgraded packages (which might
contain bigger binaries or more data) and new packages that will be
pulled in for the upgrade. If your system does not have sufficient space
you might end up with an incomplete upgrade that is difficult to recover
from.
apt
kan visa detaljerad information om det diskutrymme som behövs för installationen. Du kan se denna uppskattning innan den faktiska uppgraderingen påbörjas genom att köra:
# apt -o APT::Get::Trivial-Only=true full-upgrade
[ ... ]
XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded.
Need to get xx.xMB of archives.
After this operation, AAAMB of additional disk space will be used.
Observera
Running this command at the beginning of the upgrade process may give an error, for the reasons described in the next sections. In that case you will need to wait until you've done the minimal system upgrade as in Minimal system upgrade before running this command to estimate the disk space.
Om du inte har tillräckligt med utrymme för uppgraderingen så kommer apt
att varna dig på följande sätt:
E: You don't have enough free space in /var/cache/apt/archives/.
Försök i så fall frigöra utrymme innan uppgraderingen. Du kan:
Ta bort paket som tidigare har hämtats för installation (i
/var/cache/apt/archive
). Rensa upp paketcachen genom att köraapt clean
vilket kommer att ta bort alla tidigare hämtade paketfiler.Ta bort bortglömda paket. Om du har använt
aptitude
ellerapt
för att manuellt installera paket i bookworm kommer dessa paket att vara markerade som manuellt installerade och kommer att kunna markera automatiskt installerade paket som redundanta när de inte längre behövs och därmed kan tas bort. Manuellt installerade paket undantas alltså från detta. För att ta bort automatiskt installerade paket som inte längre används kör följande kommando:# apt autoremove
Du kan också använda
deborphan
,debfoster
ellercruft
för att hitta redundanta paket. Lita inte blint på vad dessa verktyg presenterar, speciellt inte om du använder ickestandardmässiga och aggresiva inställningar - då dessa är källor till falska resultat. Att manuellt gå igenom listorna är starkt rekomenderat innan du använder deras förslag för en upprensningaktion.Ta bort paket som använder för mycket utrymme och inte behövs just nu (du kan alltid installera dem efter uppgraderingen). Om du har popularity-contest installerat kan du använda
popcon-largest-unused
för att ta fram en lista med paket som du inte använder men tar upp mycket plats. Du kan hitta vilka paket som tar upp mycket plats genomdpigs
(tillhandahålls via debian-goodies-paketet) eller medwajig
(körwajig size
). De kan också visas med aptitude i "visuellt läge", väljVyer > Ny platt paketlista
, tryckl
och ange~i
, tryckS
och ange~installsize
, så visas en praktisk lista att arbeta med.Ta bort översättningar och lokalanpassade filer för systemet om de inte behövs. Du kan installera paketet localepurge och ställa in det så att endast de lokalanpassaningar som du vill ha sparas på systemet. Detta kommer att minska mängden hårddiskutrymme som används i
/usr/share/locale
.Flytta systemloggar från
/var/log/
till ett annat system, eller ta bort permanent.Använd en temporär
/var/cache/apt/archives
: Du kan använda en temporär cachekatalog på ett annat filsystem (USB-diskenhet, temporär hårddisk, filsystem som redan används, ...).Observera
Använd inte en NFS-montering eftersom nätverksanslutningen kan avbrytas under uppgraderingen.
Till exempel, om du har en USB-diskenhet monterad på
/media/usbkey
:ta bort paket som tidigare hämtats för installation:
# apt clean
kopiera katalogen
/var/cache/apt/archives
till USB-diskenheten:# cp -ax /var/cache/apt/archives /media/usbkey/
montera den temporära cachekatalogen ovanpå den nuvarande:
# mount --bind /media/usbkey/archives /var/cache/apt/archives
efter uppgraderingen återställer du originalkatalogen
/var/cache/apt/archives
:# umount /var/cache/apt/archives
radera det som lämnats kvar i
/media/usbkey/archives
.
Du kan skapa den temporära cachekatalogen på vilket filsystem som helst som finns monterat på ditt system.
Do a minimal upgrade of the system (see Minimal system upgrade) or partial upgrades of the system followed by a full upgrade. This will make it possible to upgrade the system partially, and allow you to clean the package cache before the full upgrade.
Observera att du för att ta bort paket på ett säkert sätt, rekommenderas växla tillbaka din APT-källfiler till bookworm vilket förklaras i Kontrollera dina APT sources.list-filer.
4.4.4. Avsluta övervakningssytem
I och med att apt
kan komma att temporärt stoppa tjänster som kör på ditt system så ör det troligen en god idé att stoppa övervakningssytem som kan komma att starta om tjänster (inklusive avslutade tjänster). I Debian är monit ett exempel på en spdan tjänst.
4.4.5. Minimal systemuppgradering
In some cases, doing the full upgrade (as described below) directly might remove large numbers of packages that you will want to keep. We therefore recommend a two-part upgrade process: first a minimal upgrade to overcome these conflicts, then a full upgrade as described in Upgrading the system.
För att göra detta, kör först:
# apt upgrade --without-new-pkgs
Det här innebär att endast de paket som kan uppgraderas utan att kräva att några andra paket tas bort eller installeras uppgraderas.
Den minimala uppgraderingen kan också vara användbar när systemet har ont om utrymme och en komplett uppgradering inte kan utföras på grund av utrymmesskäl.
Om paketet apt-listchanges är installerat kommer det (i standardutförande) visa viktig information om paketen som uppgraderas i en textvisare när paketen är hämtade. Tryck på tangenten q
för att lämna visaren efter genomläsning för att fortsätta med uppgraderingen.
4.4.6. Uppgradering av systemet
När du genomfört föregående steg är du redo att fortsätta med huvuddelen av uppgraderingen. Kör:
# apt full-upgrade
Det här kommer att genomföra en fullständig uppgradering av systemet, alltså installera de senaste tillgängliga versionerna av samtliga paket och lösa alla tänkbara beroendeändringar mellan paketen i olika utgåvor. Om det är nödvändigt kommer det även att installera några nya paket (vanligtvis nya versioner av bibliotek eller paket som fått nya namn) samt ta bort eventuella föråldrade paket som står i konflikt med varandra.
Vid uppgradering från en uppsättning CD/DVD/BD-avbildningar, kommer du bli uppmanad att mata in specifika avbildningar vid olika tillfällen under uppgraderingen. Du kanske måste använda samma avbildning flera gånger; detta beror på att sammankopplade paket har blivit utspridda över avbildningarna.
Nya versioner av installerade paket, som inte kan uppgraderas utan att ändra installationsstatus för ett annat paket, kommer att lämnas kvar vid deras nuvarande version (visas som "återhållna"). Det kan lösas genom att antingen använda aptitude
för att välja dessa paket för installation eller genom att köra apt install paket
.
4.5. Möjliga problem under uppgraderingen
Följande kapitel beskriver kända problem som kan uppstå under uppgradering till trixie.
4.5.1. Full-upgrade misslyckas med meddelandet "Could not perform immediate configuration"
I några fall kan steget apt full-upgrade
misslyckas efter nedladdningen av paket med meddelandet:
E: Could not perform immediate configuration on 'package'. Please see man 5 apt.conf under APT::Immediate-Configure for details.
Om detta händer bör exekvering av apt full-upgrade -o APT::Immediate-Configure=0
tillåta uppgraderingen att fortsätta.
En annan väg runt detta problem är att temporärt lägga till källorna för både bookworm och trixie i APTs källfiler och köra kommandot apt update
.
4.5.2. Förväntade raderingar
The upgrade process to trixie might ask for the removal of packages on the system. The precise list of packages will vary depending on the set of packages that you have installed. These release notes give general advice on these removals, but if in doubt, it is recommended that you examine the package removals proposed by each method before proceeding. For more information about packages obsoleted in trixie, see Obsolete packages.
4.5.3. Konflikter vid förberoende-loop
Ibland är det nödvändigt att aktivera alternativet APT::Force-LoopBreak
i APT för att temporärt ta bort ett systemkritiskt paket på grund av en Konflikt/Förberoende-slinga. apt
kommer att varna dig om det här och avbryta uppgraderingen. Du kan lösa det genom att ange alternativet -o APT::Force-LoopBreak=1
på kommandoraden för apt
.
Det är möjligt att beroendestrukturen för ett system kan vara så skadat att det kräver handpåläggning. Vanligtvis innebär det att använda apt
eller
# dpkg --remove package_name
för att plocka bort några av de störande paketen, eller
# apt -f install
# dpkg --configure --pending
I extrema fall kan du behöva tvinga fram en ominstallation med ett kommando som detta
# dpkg --install /path/to/package_name.deb
4.5.4. Filkonflikter
Filkonflikter bör inte inträffa om du uppgraderar från ett "rent" bookworm-system, men kan inträffa om du har inofficiella bakåtporteringar installerade. En filkonflikt resulterar i ett fel som:
Unpacking <package-foo> (from <package-foo-file>) ...
dpkg: error processing <package-foo> (--install):
trying to overwrite `<some-file-name>',
which is also in package <package-bar>
dpkg-deb: subprocess paste killed by signal (Broken pipe)
Errors were encountered while processing:
<package-foo>
Du kan försöka lösa en filkonflikt genom att tvinga igenom borttagning av paketet som nämns på sista raden i felmeddelandet:
# dpkg -r --force-depends package_name
Efter att problemen har lösts, bör du kunna återuppta uppgraderingen genom att upprepa tidigare beskrivna apt
-kommandon.
4.5.5. Inställningsförändringar
Under uppgraderingen kommer det att ställas frågor om konfiguration eller omkonfiguration av flera paket. När du blir tillfrågad om någon fil i katalogen /etc/init.d
eller filen /etc/manpath.config
ska ersättas av paketansvariges version, är det oftast nödvändigt att svara "ja" för att upprätthålla systemets tillstånd. Du kan alltid återgå till de gamla versionerna, eftersom de kommer att sparas med en .dpkg-old
-ändelse.
Om du inte är säker på vad som behöver göras, skriv ner namnet på paketet eller filen och red ut saker och ting senare. Du kan söka i typescript-filen för att granska informationen som visades på skärmen under uppgraderingen.
4.5.6. Flytt av sessionen till konsoll
Om du kör uppgraderingen i systemets lokala konsoll kan det tänkas att under några delar av uppgraderingen så flyttar konsollen till en annan vy och du kan inte längre se uppgraderingsprocessen. Exempelvis händer detta i skrivbordsmiljöer när visningshanteraren startas om.
För att återta konsollen där uppgraderingen körs behöver du använda Ctrl+Alt+F1
för att byta till den virtuella terminalen 1 om du är vid den grafiska startbilden eller använd Alt+F1
i lokala textlägeskonsollen. Ersätt F1 med den funktionstangent som har motsvarande nummer för den virtuella terminal som uppgraderingen körs i. Du kan också använda Alt+Vänsterpil
eller Alt+Högerpil
för att byta mellan de olika textlägeskonsollerna.
4.7. Förberedelse inför nästa utgåva
Efter uppgraderingen finns det flera saker som du kan göra för att förbereda inför nästa utgåva.
Remove newly redundant or obsolete packages as described in Make sure you have sufficient space for the upgrade and Obsolete packages. You should review which configuration files they use and consider purging the packages to remove their configuration files. See also Purging removed packages.
4.7.1. Utrensning av borttagna paket
I allmänhet är det en bra idé att rensa bort paket markerade som borttagna helt. Detta är extra sant om paketet togs bort i en tidigare uppgradering (exempelvis vid uppgradering till bookworm) eller om de tillhandahölls av tredjepartstillverkare. Särskilt äldre init.d-skript är visat sig problematiska.
Varning
Bortrensning av paket tar vanligtvis öven bort dess loggfiler, dessa kan vara en bra idé att göra en säkerhetskopia av först.
Följande kommando visar en lista med alla borttagna paket som kan ha inställningsfiler kvar på systemet:
$ apt list '~c'
Paketen kan rensas bort genom att använda kommandot apt purge
. Vill du rensa bort allt på en enda gång kan följande kommando användas:
# apt purge '~c'
4.8. Föråldrade paket
trixie introducerar många nya paket men pensionerar och utelämnar gamla paket som fanns i bookworm. Det tillhandahålls inget uppgraderingssätt för dessa föråldrade paket. Ingenting hindrar dig från att fortsätta att använda ett föråldrat paket om så önskas men Debianprojektet kommer vanligtvis att sluta ge säkerhetsstöd för dessa ett år efter utgivningen av trixie [5], och ger normalt inget annat stöd under tiden. Rekomendationen är att ersätta de med andra tillgängliga alternativ , om detta finns.
Det finns många anledningar till varför paket kan ha tagits bort från distributionen: de underhålls inte längre av upphovsmännen; det finns inte längre någon Debianutvecklare som är intresserad av att underhålla paketen; funktionaliteten de tillhandahåller har ersatts av en annan programvara (eller en ny version); eller så anses de inte längre vara lämpliga för trixie på grund av fel i dem. I det senare fallet kan paket fortfarande finnas i "unstable"-distributionen.
Gamla och lokalt skapade paket ("Obsolete and Locally Created Packages") kan visas och rensas från kommandoraden genom:
$ apt list '~o'
# apt purge '~o'
Debian Bug Tracking System tillhandahåller ofta ytterligare information om varför paketet blev borttaget. Du bör granska både de arkiverade felrapporterna för själva paketet och de arkiverade felrapporterna för pseudopaketet på ftp.debian.org.
Listan med föråldrade paket i trixie kan studeras i Föråldrade paket.
4.8.1. Tomma övergångspaket
Vissa paket i bookworm har ersatts i trixieav tomma övergångspaket, dessa har till uppgift att underlätta uppgraderingar. Om en applikation tidigare tillhandahälls som ett enda paket men numera är delad i flera paket så kan ett tomt övergångspaket med samma namn användas för att tillse att beroendena installeras. När detta gjorts kan övergångspaketet tas bort.
Tomma övergångspaket har vanligtvis beskrivningar som pekar på varför de existerar. De ser dock inte alla likadana ut, vissa är designade för att vara installerade hela tiden för att tillse att alla delar av en mjukvarusvit installeras eller att senaste versionen installeras. För att hitta tomma övergångspaket kan exempelvis deborphan
användas med flaggorna --guess*
(ex. --guess-dummy
).