Debian prøver på ikke at ændre de originale programpakker, så ændringer i originalpakkerne vil også optræde i Debian GNU/Linux
I Debian GNU/Linux version 2.2 'Potato' havde programmet tar
tilvalget
-I
for bzip-komprimering. Nu bruges i stedet tilvalget
-j
til dette. Du bliver muligvis nødt til at rette det i dine skripter.
Brugere af virusskannere såsom amavis, scannerdaemon
og clamav bør holde deres pakker opdaterede, da der ellers er
risiko for at en fejlbehæftet pakke kan lukke virusser ind eller ud af systemet
med alvorlige konsekvenser. Det skal også nævnes at virusdatabasen i woody nu
er statisk og forældet. Du kan evt. benytte antivirus-pakkerne fra testing
eller unstable.
Regulativ nr. 84 (21.02.2002, Den Estiske regering), der træder i kraft
01.03.2002, siger, at fra dette år (foråret 2002), er der sommertid i Estland.
Sommertidens begyndelse ("sommer time" på estisk) er den sidste
søndag i marts kl. 01:00 GMT (03:00 lokal tid) og slutter den sidste søndag i
oktober 01:00 GMT (04:00 lokal tid). Du kan bruge nøjagig samme regler som for
Helsinki i filen /usr/share/zoneinfo/Europe/Helsinki.
Den nye udgave af PostgraSQL er mere restriktiv mht. håndtering af inddata.
Det betyder at linjer som foo = NULL som alligevel ikke er gyldigt
ikke længere accepteres. Det betyder også at man ikke længere kan bruge ISO
8859-1 og ISO 8859-15 til at indsætte data i forbindelse med spørgsmål, når man
bruger UNICODE. I sådanne tilfælde anbefales det at konvertere de pågældende
data, som du altid kan gøre med pg_dump -t table database med
recode latin1..utf-16.
Netop denne ændring påvirker opgraderingsprocessen, da programmet kan støde på ugyldige data, når de gamle databaser indlæses i det nye miljø.
Woodys udgave af m4 kan ikke køre på Linuxkerner fra 2.0-serien. Brugere af sendmail anbefales derfor kraftigt til at opgradere deres kerne til 2.2 eller senere forud for opgraderingen.
Inden du opgraderer dit system, anbefales det kraftigt at du tager en fuld sikkerhedskopi, eller i det mindste sikkerhedskopierer dine data eller opsætningsoplysninger, du ikke kan undvære. Opgraderingsværktøjerne og -processen er ret sikker, men fejl i maskinellet midt under en opgradering kan resultere i et meget beskadiget system.
Vigtigst er det nok at sikkerhedskopiere indholdet af /etc,
/var/lib/dpkg og uddata fra dpkg --get-selections \*.
Det er klogest i forvejen at advare alle brugerne om planlagte opgraderinger,
selvom brugere, der f.eks. tilgår dit system via ssh ikke burde mærke ret
meget til opgraderingen, og kan fortsætte deres arbejde. Hvis du vil tage
ekstra forholdsregler, kan du sikkerhedskopiere og afmontere brugernes
partitioner (/home) forud for opgraderingen. Normalt er det
unødvendigt at genstarte systemet.
Opgradering af distributionen kan enten gøres lokalt eller fra en tekst-konsol
(eller direkte forbundet seriel terminal), eller fjernt via en
ssh-forbindelse.
Vigtigt: Du bør ikke opgradere via telnet,
rlogin, rsh eller fra en X-session, der kontrolleres
af xdm på den maskine, du opgraderer, fordi alle disse tjenester
bliver afbrudt under opgraderingen, hvilket kan resultere i et halvt opgraderet
system, du ikke kan få kontakt til
Uanset den metode, du bruger til opgradering, anbefales det at tjekke status for alle pakkerne først, og sikre dig, at alle pakkerne er i et stadie, der kan opgraderes. Følgende kommando viser alle pakker, der har status halvt installeret (Half-Installed), mislykked opsætning (Failed-Config) samt anden fejlstatus.
# dpkg --audit
Du kan også tjekke status for alle dit systems pakker med dselect,
eller med kommandoer såsom
# dpkg -l | pager
eller
# dpkg --get-selections > ~/curr-pkgs.txt
Det er bedst at fjerne alle tilbageholdelser af pakker. Hvis nogle af de pakker, der er essentielle for opgraderingen, er tilbageholdte, vil opgraderingen mislykkes. Du kan se, hvilke pakker, der er tilbageholdt med
# dpkg -l | grep ^h
Hvis du har ændret og genoversat en pakke lokalt, og hverken omdøbte den eller
satte en epoke (epoch) i versionen, er du nødt til at tilbageholde den, for at
den ikke bliver opgraderet. Tilbageholdelses-status for en pakke kan enten
ændret med dselect (brug 'H'- og 'G'-tasterne til hhv. at
tilbageholde og frigive i Udvælg-menuen), eller ved at redigere filen, der
laves af:
dpkg --get-selections > ~/curr-sels.txt
for at ændre "hold" til "install" (eller omvendt), og derefter — med superbruger-rettigheder — udføre:
dpkg --set-selections < ~/curr-sels.txt
Den kommercielle SSH, der lå i pakken ssh inden version 2.2 eller
i pakken ssh-nonfree i version 2.2 er blevet erstattet af den frie
pakke ssh (OpenSSH) i denne udgave. Den kommercielle SSH-samling
eksisterer ikke længere. Pakken ssh stiller et Debconf-spørgsmål,
som vil genskabe en OpenSSH-kompatibel opsætning.
Det er vigtigt, at kataloget /etc/rcS.d eksisterer forud for en
opgradering. Ellers vil installationen af libc6 mislykkes.
Kataloget /usr/share/doc (såfremt det eksisterer) må ikke være en
symbolsk lænke (f.eks. til /usr/doc), da det vil ødelægge
installationen af visse pakker. Dog er det tilladt at have en symbolsk lænke
fra /usr/doc til /usr/share/doc. Bemærk, hvis du
bruger sådan en symbolsk lænke, at der vil komme adskillige beskeder om
/usr/doc-kataloger, der ikke kan fjernes. Det er helt normalt, og
du kan roligt ignorere dem.
Den anbefalede metode til opgradering er at bruge apt-metoden med
dselect, som det beskrives her. Den indbyggede
afhængighedsanalyse giver både smertefri opgraderinger og nemme installationer.
Du bør ikke udføre større pakkeopdateringer med de almindelige
tilgangsmetoder udover apt i dselect fordi disse i
modsætning til apt-metoden ikke installerer pakkerne i
velovervejet rækkefølge, og derfor ikke er lige så pålidelig. Derudover er
sådanne opgraderinger ikke ret godt afprøvede, og anbefales ikke af Debian.
Enhver handling, der involverer installation eller afinstallation af pakker
skal udføres af superbrugeren, så log enten på som root, eller brug
su eller sudo for at få de nødvendige rettigheder.
Før du begynder opgraderingen, skal du sætte apts opsætningsfil
for pakkelister, /etc/apt/sources.list, op.
apt vurderer alle pakker, der kan findes via
"deb"-linjerne, og installerer pakken med det højeste
versionsnummer, med forret til de først nævnte linjer (derfor vil du, hvis du
har flere filspejle, typisk først nævne den lokale harddisk, så cd'er og til
sidst HTTP/FTP-filspejle).
Standardopsætningen vil installere fra Debians hovedservere på internettet, men
du kan rette file /etc/apt/sources.list, så der benyttes andre
filspejle — helst det filspejl, der er tættest på dig rent
netværksmæssigt.
Ellers kan adresserne på Debians HTTP- eller FTP-spejle findes på http://www.debian.org/distrib/ftplist
(se afsnittet om den komplette liste over filspejle). HTTP-filspejle er
generelt hurtigere end ftp-spejle.
Hvis dit nærmeste Debian-filspejl f.eks. er http://mirrors.kernel.org/debian/, vil du med en browser eller FTP-program kunne se, at hovedkatalogerne er organiseret således:
http://mirrors.kernel.org/debian/dists/woody/main/binary-arm/...
http://mirrors.kernel.org/debian/dists/woody/contrib/binary-arm/...
For at benytte dette filspejl med apt, skal du tilføje følgende
linje i filen sources.list:
deb http://mirrors.kernel.org/debian woody main contrib
Bemærk, at `dists' tilføjes implicit, og at navnene efter versionsnavnet bruges til at udvide stien med flere kataloger.
Efter at have tilføjet dine nye kilder, kan du deaktivere de oprindelige
"deb"-linjer i sources.list ved at indsætte
et havelågetegn (#) foran dem.
Enhver pakke, der kræves af installationen og hentes fra netværket gemmes i
kataloget /var/cache/apt/archives (og underkataloget
partial/ under hentningen), så du skal sikre dig, at du har nok
plads, før du forsøger at påbegynde installationen. For en nogenlunde
omfattende Debianinstallation, bør du forvente at, der bliver hentet mindst 300
MB.
Bemærk: Hvis du bruger statiske udgaver af apt og
dpkg, virker værtsnavneopslag ikke. (hvilket er en af grundene
til, at man bør bruge den normale apt, når man opgraderer over
netværket). Løsningen er simpelthen at putte filspejlenes IP-adresse i
"deb"-linjen. (Tip: nslookup
<værtsnavn>)
I stedet for at bruge filspejle via HTTP eller FTP, kan du bruge et filspejl på
en lokal disk (evt. monteret via NFS) ved at rette i filen
/etc/apt/sources.list.
Hvis dit pakke-filspejl f.eks. ligger under /var/ftp/debian/, og
har hovedkatalogerne:
/var/ftp/debian/dists/woody/main/binary-arm/...
/var/ftp/debian/dists/woody/contrib/binary-arm/...
Skal du for at bruge det med apt tilføje denne linie til
sources.list:
deb file:/var/ftp/debian woody main contrib
Bemærk, at `dists' tilføjes implicit, og at navnene efter versionsnavnet bruges til at udvide stien med flere kataloger.
Efter at have tilføjet dine nye kilder, kan du deaktivere de oprindelige
"deb"-linjer i sources.list ved at indsætte
et havelågetegn (#) foran dem.
Se ovenfor om du først er nødt til installere seneste versioner af
pakkerneapt og dpkg.
Hvis du kun vil bruge cd'er, skal du udkommentere de eksisterende
"deb"-linjer i filen /etc/apt/sources.list
ved at indsætte en havelåge (#) foran dem.
Sørg for at /etc/fstab indeholder en linje, der monterer dit
cd-rom-drev på /cdrom (apt-cdrom kræver, at
monteringspunktet er /cdrom). Hvis for eksempel
/dev/hdc er dit cd-rom-drev, skal /etc/fstab
indeholde linjen:
/dev/hdc /cdrom auto defaults,noauto,ro 0 0
Bemærk, at der ingen mellemrum må være mellem ordene defaults,noauto,ro i det fjerde felt.
For at tjekke, at det virker, kan du indsætte en cd og køre:
mount /cdrom (dette vil montere cd'en på monteringspunktet)
ls -alF /cdrom (dette skulle vise indeholdet af cd'ens rodkatalog)
umount /cdrom (dette vil afmontere cd'en)
Kør derefter:
apt-cdrom add
for hver af de Debian program-cd'er du har for at indlæse data om dem i APTs database.
Den anbefalede metode til opgradering til Debian GNU/Linux 3.0 er at bruge
pakkehåndteringsværktøjet dselect. Det er bedre til at tage de
rigtige valg af pakker i forhold til apt-get.
Hvis dselect ikke er installeret, skal du først installere den
version, der hører til din eksisterende version af Debian GNU/Linux.
Måden at tilgå dit arkiv (med APT) er allerede sat op, men du kan ændre opsætningen under menupunktet "[T]ilgang". Hvis du er tilfreds med tilgangsopsætningen, kan du fortsætte til næste trin ved at vælge "[O]pdatér" i menuen. Dette vil opdatere pakkedatabasen.
Hvis opdateringstrinnet ikke gav problemer, kan du vælge "[U]dvælg" i
menuen, dselect vil undersøge de tilgængelige pakker og
intelligent udvælge de pakker, der skal opgraderes samt hvilke nye pakker der
skal installeres som følge af opgraderingen. Den vil tillige foreslå pakker,
der bør fjernes. Når du trykker retur i pakkeudvælgelsesskærmen, vil du enten
få en konflikt/afhængighedsløsningsskærm (hvor du muligvis må ændre dine valg
og trykke retur igen) eller komme tilbage til hovedmenuen. Du kan få hjælp
under pakkeudvælgelsestrinnet ved at trykke "?".
Nu hvor pakkevalgene er gennemført, skal du installere de nye pakker. Vælg "[I]nstallér" fra hovedmenuen. Det vil hente og installere pakkerne med APT fra dit foretrukne medie. Få dig en god kop the; det tager sin tid.
De sidste to trin er "[K]onfig." og "[F]jern", som vil afslutte installationen ved at sætte nye pakker op og fjerne eventuelle overflødiggjorte pakker.
Glem ikke at have alle de nødvendige partitioner (især rod- og
/usr-partitionerne) monteret med skriveadgang. Det kan gøres med
med kommandoer i retningen af:
mount -o remount,rw /mountpoint
Forudsat at du allerede har sat apts sources.list op
som beskrevet ovenfor, kører du (som root):
apt-get update
Det vil synkronisere pakkeoversigten med kilderne og opdatere oplysningerne om nye og opdaterede pakker.
Det anbefales kraftigt at du bruge programmet /usr/bin/script til
at optage opgraderingskørslen. Hvis der skulle opstå problemer, vil du have en
log over, hvad der skete og kan give nøjagtige oplysninger til en evt.
fejlraportering. Start optagelsen med:
script -a ~/opgradering-til-woody.konsollog
eller lignende. Læg ikke konsollog-filen i et midlertidigt katalog som f.eks.
/tmp eller /var/tmp (filerne i disse kataloger kan
blive slettet under opgraderingen eller genstart).
Det er vigtigt at du opgraderer apt, dpkg og debconf inden du foretager hovedparten af opgraderingen. Apt er blevet forbedret betydeligt i forhold til tidligere udgaver. Debconf er et essentielt værktøj, der bruges i udstrækt grad i nyere pakker.
apt-get install dpkg apt debconf
Dette vil installere de nyeste versioner af dpkg, apt
og debconf, som er påkrævede for resten af opgraderingen. Det vil
også opgradere nogle nødvendige systembiblioteker til de seneste versioner.
Når debconf spørger dit om, hvilke typer spørgsmål, den skal stille dig, skal du ikke vælge 'critical', da du ellers vil gå glip af flere vigtige spørgsmål.
Nogen foretrækker at afprøve opgraderingen først med:
apt-get --fix-broken --show-upgraded --simulate dist-upgrade | pager
Selvom det kan tage en del tid, kan det måske forhindre ubehagelige overraskelser. Det vil enten fortælle dig, hvad der måtte være galt med dit system (og hvordan du retter det). Mere sandsynligt er det, at det vil vise dig præcis hvad der vil blive gjort under opgraderingen. Læg især mærke til pakker, der bliver fjernet ("REMOVEd"). Det bør ikke omfatte nogen af de essentielle pakker.
Når du har tjekket, at apt-get fungerer, kører du:
apt-get --fix-broken --show-upgraded dist-upgrade
Dette vil udføre en komplet opgradering af systemet, dvs. installere de nyeste tilgængelige versioner af alle pakker og løse alle afhængighedsændringer mellem pakkerne i de forskellige Debianudgaver. Om nødvendigt vil den installere nogle nye pakker (oftest nye udgaver af biblioteker eller omdøbte pakker) samt fjerne forældede pakker, der er i konflikt med de nye.
Når du opgraderer fra et cd-sæt, vil du blive bedt om at indsætte bestemte cd'er i løbet af opgraderingen. Du kan komme ud for at skulle indsætte den samme cd flere gange. Det skyldes beslægtede pakker, der er blevet spredt mellem cd'erne.
Nye versioner af installerede pakker, der ikke kan opgraderes uden at ændre
installationsstatus for en anden pakke vil forblive i den nuværende version
(vist som "tilbageholdt"). Derfor kan det være nødvendigt at bruge
dpkg eller dselect til at fjerne eller geninstallere
disse pakker eller dem, de afhænger af. Alternativt kan apt-get
dselect-upgrade bruges efter apt-get -f dist-upgrade (Se
apt-get(8)s manualside.).
Tilvalget --fix-broken (eller blot -f) får
apt til at forsøge at rette systemer med uopfyldte afhængigheder.
apt tillader ikke, at der er uopfyldte afhængigheder på et system.
Nogle gange er det nødvendigt at aktivere tilvalget APT::Force-LoopBreak i APT
for midlertidigt at fjerne en essentiel pakke p.g.a. en afhængighedsløkke i
Conflicts/Pre-Depends. apt-get vil advare dig om dette og undlade
opgraderingen. Du kan komme om dette ved at angive tilvalget -o
APT::Force-LoopBreak=1 på apt-gets kommandolinje.
Systemets afhængighedsstruktur kan være så ødelagt, at det kræver manuel
indgriben. Normalt vil det sige at køre dselect eller
dpkg --remove pakkenavn
for at eliminere nogle af de pakker, der skaber problemerne, eller
apt-get --fix-broken --show-upgraded install
dpkg --configure --pending
I ekstreme tilfælde kan du blive nødt til at gennemtvinge en geninstallation med en kommando i retningen af:
dpkg --install /sti/til/pakkenavn.deb
Når du har fået styr på disse ting, skulle det være muligt at fortsætte opgraderingen ved at gentage de tidligere beskrevne dist-upgrade-kommandoer.
Under opgraderingen vil du blive stillet spørgmål om opsætningen af flere af
pakkerne. Når du bliver spurgt om filer i katalogerne /etc/init.d
eller /etc/terminfo eller om filen
/etc/manpath.config skal erstattes af den pakkeansvarliges udgave,
er det normalt nødvendigt at svare 'ja' for at sikre systemts konsistens. Du
kan altid gå tilbage til de gamle versioner, da de gemmes med filendelsen
.dpkg-old.
Hvis du er usikker på, hvad du skal gøre, kan du skrive navnet på pakken eller filen ned og tage dig af dem senere. Du kan kigge i konsollog-filen for at gense de oplysninger, der blev vist på skærmen under opgraderingen.
Når apt-get dist-upgrade er afsluttet, er den "formelle" opgradering færdig, men du bør sørge for enkelte andre ting inden næste genstart.
Som det vigtigste kan det være nødvendigt at installere pakkerne
locales og util-linux det kan gøres med:
apt-get install locales util-linux
Hvis du opgraderede fra Debian version 2.0 eller tidligere, vil dette fjerne
pakken getty, da getty nu ligger i pakken
util-linux.
Der er sikkert flere andre pakker, der skal installeres, uden at
apt-get bemærkede det, da apt-get ikke automatisk
vælger pakker, der ikke afhænger af andre pakker (dvs. alle pakke i felterne
"Recommends:" og "Suggests:"). De kan ret let findes med
dselect eller en anden visuel brugerflade. I dselect
skal du vælge 'apt'-metoden i [T]ilgangs-skærmen (hvis du ikke allerede har
gjort det), og opdatere databasen med nye pakkeoplysninger med [O]pdatér.
Herefter skal du på [U]dvælg-skærmen trykke 'o', 'o', 'v' og skift-d og se
efter overskriften:
--- Forældede og lokale pakker på systemet ---
I dette afsnit vil alle sådanne pakker blive vist. For eksempel blev den gamle
pakke gimp blevet erstattet af gimp1.2. Du kan enten
installere de nye pakker med dselect (som vil vise en
"Konflikt/afhængighedsløsnings-delliste"-skærm, der angiver hvilke af
de gamle pakker, der bør fjernes), eller med:
apt-get install gimp1.2
som vil fjerne de gamle versioner på en gang.
Et andet eksempel, der ofte ikke vises — selv ikke i
dselect, er klienter og servere til telnet og talk samt
NFS-serveren, der blev udskilt fra den gamle pakke netstd package.
Du kan installere dem med kommandoer som f.eks.:
apt-get install telnet telnetd talk talkd nfs-server
Det samme gælder manpages-dev, som blev udskilt fra
manpages.
Der henvises til udgivelsesbemærkningerne for tidligere udgaver af Debian GNU/Linux for flere oplysninger om, hvilke pakker der blev opdelt i den pågældende version. Gå tilbage og læs Omdøbte pakker, Section 5.1 og Opdelte pakker, Section 5.2 for at få en liste over pakker, der blev opdelt i denne udgivelse.
Hvis du opgraderede fra Debian version 2.0 eller tidligere og har X-windowsystemet installeret, skal du udføre følgende kommandoer:
apt-get remove xbase
apt-get install xfonts-base xfonts-75dpi xfonts-100dpi xfonts-scalable
Og hvis du ikke ønsker at xdm automatisk skal starte ved opstart
("X autostart"), skal du også køre:
apt-get remove xdm
Du kan finde flere oplysninger om opgradering af X window-pakkerne i
/usr/share/doc/xfree86-common/README.Debian-upgrade Det er
relevant for brugere af alle tidligere udgaver af Debian. Kort sagt bør du
læse den.
Opsætningssystemet for kernemoduler er ændret siden Debian GNU/Linux version
2.0. Hvis du har opgraderet fra Debian 2.0 eller tidligere, skal du konvertere
dit system inden næste genstart. Normalt er det nok at køre
update-modules force. Det anbefales alligevel at læse
update-modules(8)s manualside.
Bemærk, at Linuxkernen ikke opgraderes med denne metode. Du kan selv
gøre det ved enten at installere en ny kernel-image-*-pakke eller
oversætte en selvbygget kerne fra kildeteksten.
Debian GNU/Linux indeholder version 2.2.19 af Linuxkernen, hvilket er en udgave af den ældre stabile Linuxkerne. Du vil måske hellere bruge en 2.4-udgave med dens bedre understøttelse af nyere udstyr eller forbedrede ydelse. Ved at starte op fra den tredje cdrom vil denne automatisk blive installeret. Ellers kan du senere installere en færdigpakket udgave med:
apt-get install kernel-image-2.4.18-{386,586tsc,686}
For de mere eventyrlystne er der en let måde at kompilere din egen kerne på
Debian GNU/Linux. Installér værktøjet kernel-package og læs
dokumentationen i /usr/share/doc/kernel-package.
Held og lykke med dit nye Debian GNU/Linux 3.0-system! :-)
Udgivelsesbemærkninger for Debian GNU/Linux 3.0 ('woody'), ARM
$Id: release-notes.da.sgml,v 1.1 2003/01/04 00:37:56 joy Exp $debian-doc@lists.debian.org