Turinys
Waiting for root file
system
Prieš atnaujinimą mes rekomenduojame Jums taip pat perskaityti Skyrius 5, Dalykai, kuriuos reikia žinoti apie lenny. Tas skyrius aprašo potencialias problemas, kurios nėra tiesiogiai susietos su atnaujinimo procesu, tačiau vis tik svarbu apie jas žinoti prieš atnaujinimą.
Prieš atnaujinant sistemą, primygtinai rekomenduojama atlikti pilną atsarginę kopiją, arba bent jau išsaugoti visus duomenis ir konfigūravimo nustatymus, kurių negalite sau leisti prarasti. Atnaujinimo įrankiai ir procesas yra gana patikimi, bet dėl aparatūros sutrikimų atnaujinimo proceso viduryje gali atsirasti rimtų sistemos pažeidimų.
Pirmiausia atsarginėje kopijoje reikėtų išsisaugoti
/etc
, /var/lib/dpkg
,
/var/lib/aptitude/pkgstates
katalogų turinį ir komandos
dpkg --get-selections "*"
(kabutėd būtinos) išvestį.
Atnaujinimo procesas pats savaime nekeičia nieko /home
kataloge. Tačiau kai kurios programos (pvz., dalis Mozilla rinkinio, ir
GNOME bei KDE darbastalio aplinkos) perrašo esamus naudotojo nustatymus
naujais numatytaisiais nustatymais (ypač, kai naudotojas pirmą kartą
paleidžia vykdyti naujos versijos programą). Todėl dėl atsargumo, verta
padaryti paslėptų failų ir katalogų, esančių naudotojų namų kataloguose
(taip vadinamų „dotfiles“ failų) atsarginę kopiją. Šios
atsarginės kopijos gali padėti atstatyti ar atkurti senuosius
nustatymus. Taip pat verta informuoti naudotojus apie tai.
Bet kokio paketo diegimas turi būti vykdomas administratoriaus teisėmis,
todėl turite prisijungti kaip root
arba naudoti
su ar sudo komandas, tam kad įgyti
reikiamas teises.
Atnaujinimas turi turi kelis išankstinius reikalavimus; Jūs turite patikrinti juos prieš pradėdami vykdyti atnaujinimą.
Laidoje lenny esančios bibliotekos glibc
versija neveiks su branduoliu senesniu nei
2.6.8
bet kurioje architektūroje, o kai kurioms
architektūroms reikalavimai dar aukštesni. Mes primygtinai rekomenduojame,
prieš pradedant laidos atnaujinimo procesą, atnaujinti ir išbandyti laidos
etch 2.6.18
ar 2.6.24
branduolį, arba savo kompiliuotą branduolį bent 2.6.18
versijos.
Pageidautina iš anksto pranešti visiems naudotojams apie visus planuojamus atnaujinimus, nors naudotojai prieinantys prie Jūsų sistemos per ssh ryšį neturėtų pajusti ypatingų problemų atnaujinimo metu, ir pilnai gali tęsti darbą.
Jei norite imtis papildomų atsargumo priemonių, padarykite naudotojų disko
skirsnio (/home
) atsarginę kopiją arba atjunkite šį
disko skirsnį prieš atnaujinimą.
Tikriausiai teks atnaujinti ir branduolį atnaujinant į lenny, todėl bus būtinas pakartotinas sistemos įkėlimas (reboot). Paprastai, tai bus padaryta po to, kai atnaujinimo bus baigtas.
Dėl daugelio pokyčių branduolyje tarp etch ir lenny laidų (įrenginių nustatymo ir jų įvardijimo bei įrenginių failų tvarkos pasikeitimų, įrenginių valdyklių pokyčių), yra realus pavojus, kad gali kilti problemų naujai įkeliant (rebooting) Jūsų sistemą po atnaujinimo. Daug žinomų galimų problemų yra pateikta šio dokumento tolimesniuose skyriuose.
Dėl šios priežasties tikslinga užtikrinti, kad butų galima sugrąžinti sistemą į buvusią būseną, jei jūsų sistemai nepavyks naujai įsikelti arba, nuotoliniu būdu valdytoje sistemoje nebeveiks tinklas.
Jei jūs atnaujinate nuotoliniu būdu per ssh ryšį, labai rekomenduojama imtis atsargumo priemonių ir numatyti, kad būtų galima prieiti prie serverio naudojant nutolusį nuoseklų terminalą. Gali nutikti, kad po branduolio atnaujinimo ir sistemos perkrovimo, kai kurie įrenginiai bus pervadinti (kaip aprašyta Skyrius 4.6.2, „Įrenginių numeracijos pertvarkymas“ skyriuje) ir Jūs galėsite pataisyti sistemos konfigūracijos nustatymus tik per lokalią konsolę. Be to, jei sistema atsitiktinai persileistų viduryje atnaujinimo, Jums tai pat prireiktų lokalios konsolės sistemos atstatymui.
Akivaizdu, kad tokiu atveju pirmiausiai reikia pabandyti naujai įkelti (reboot) sistemą naudojant senąjį branduolį. Tačiau dėl įvairių priežasčių, aprašytų kitose šio dokumento dalyse, tai ne visuomet pavyksta.
Jei tai nepavyks, Jums prireiks alternatyvaus būdo įkelti savo sistemą, kad
būtų galima prie jos prieiti ir ją pataisyti. Viena galimybė yra naudoti
specialų sistemos atkūrimo atvaizdą arba naudoti Linux demonstracinį (live)
kompaktinį diską. Po paleidimo vienu iš šių būdų, galėsite prijungti savo
šakninę failų sistemą ir pasinaudojus chroot
, surasti ir
ištaisyti problemą.
Kita galimybė, kurią norėtume rekomenduoti, tai naudoti Debian'o lenny įdiegiklio atstatymo veikseną (rescue mode). Šio būdo pranašumas yra tame, kad Jūs galite pasirinkti vieną iš daugelio diegimo metodų, kuris geriausiai atitinka Jūsų atvejį. Norėdami gauti daugiau informacijos, apie tai, skaitykite „Sugadintos sistemos atstatymas“ 8-ajame Įdiegimo vadovas skyriuje ir Debian'o įdiegiklio DUK.
Paketas initramfs-tools
turi
derinimo apvalkalą (debug shell),[2] kuris yra jo sugeneruotame initrds faile. Jei pavyzdžiui initrd
negali prijungti šakninės failų sistemos, bus įeita į šį derinimo apvalkalą,
kurie turi pagrindines komandas galinčias padėti išaiškinti problemą ir
galbūt ištaisyti.
Pagrindiniai dalykai kuriuos reikia tikrinti: ar yra teisingi failai
kataloge /dev
; kokie moduliai įkelti (cat
/proc/modules
); patikrinti ar nėra klaidų įkeliant valdykles
komandos dmesg išvestyje. Komandos
dmesg išvestis taip pat parodys kuriam diskui buvo
priskirtas koks įrenginio failas; įsitikinkite, kad echo
$ROOT
išvestis rodo į laukiamą šakninės failų sistemos įrenginį.
Jeigu jums pavyko išspręsti problemą, išėjimui iš derinimo apvalkalo
aplinkos įveskite exit
ir sistemos įkėlimo procesas bus
pratęstas toje pačioje vietoje, kurioje buvo susidurta su problema. Žinoma,
Jums dar reikės pašalinti priežastį ir sugeneruoti naują initrd, kad
sekantis sistemos įkėlimas neužkliūtų vėl.
Distributyvo atnaujinimas turėtų būti atliekamas arba lokaliai iš tekstinės virtualios konsolės (arba tiesiogiai prie nuosekliosios jungties prijungto terminalo) arba nuotoliniu būdu per ssh ryšį.
Siekiant įgyti papildomo atsargumo atnaujinant nuotoliniu būdu, mes rekomenduojame atnaujinimą vykdyti programos screen tiekiamoje virtualioje konsolėje, kuri leidžia saugiai prisijungti pakartotinai ir užtikrina atnaujinimo proceso tęsimą net jei įvyks ryšio trūkių.
![]() | Svarbu |
---|---|
Negalima atnaujinti naudojant telnet, rlogin, rsh, ar iš grafinio X seanso, valdomo xdm, gdm ar kdm ir t.t.. Taip yra todėl, kad kiekvienas iš šių servisų gali būti nutrauktas atnaujinimo metu, ir pusiau atnaujinta sistema gali tapti nebeprieinama. |
Naudotojai naudojantys LILO pradinį įkėliklį turėtų
atkreipti dėmesį, kad numatytieji programos initramfs-tools
nustatymai dabar sukuria
initramfs, kuris yra per didelis, kad LILO galėtų
įkelti. Šiuo atveju reikia arba pereiti prie grub
naudojimo arba redaguoti failą
/etc/initramfs-tools/initramfs.conf
, pakeičiant eilutę
MODULES=most
į
MODULES=dep
Atminkite, kad tokiu atveju initramfs-tools
į initramfs pateks tik tie
moduliai, kurių reikia esamos sistemos aparatinei įrangai; taigi, jei norite
sukurti įkėlimo laikmeną, kuri turi tikti didesniam kiekiui aparatinės
įrangos, reikia palikti nustatymą
MODULES=most
ir nenaudoti LILO.
Atnaujinimo procesas aprašytas šiame skyriuje yra skirtas atnaujinimui iš „grynos“ etch sistemas be trečiųjų šalių paketų. Dėl didesnio atnaujinimo proceso patikimumo užtikrinimo, būtų gerai pašalinti trečiųjų šalių paketus iš jūsų sistemos, prieš pradedant atnaujinimą.
Aprašant šią procedūrą taip pat numanoma, kad jūsų sistema yra atnaujinta iki paskutiniosios etch laidos. Jei to dar nepadarėte arba nesate tuo įsitikinę, skaitykite instrukcijas skyriuje Skyrius A.1, „Sistemos etch atnaujinimas“.
Kai kuriais atvejais, naudojant paketų įdiegimui apt-get vietoj aptitude gali atsitikti taip, kad aptitude ima kai kuriuos paketus laikyti „nenaudojamais“ ir planuoja juos pašalinti. Apskritai, prieš pradedant atnaujinimą iki sekančios laidos, reikia įsitikinti, kad dabartinė sistema yra visiškai atnaujinta ir „švari“.
Todėl patikrinkite, ar paketų tvarkymo programa aptitude
nėra numačiusi kokių nors atidėtų veiksmų. Jei ši programa planuoja paketą
pašalinti arba atnaujinti, tai gali turėti neigiamos įtakos laidos
atnaujinimo procedūrai. Atkreipkite dėmesį, kad pataisyti tai įmanoma tik
kol Jūsų sources.list
vis dar nurodyta
etch;, o ne stable ar
lenny; žiūr. Skyrius A.2, „APT šaltinių sąrašo tikrinimas“.
Norėdami tai padaryti, paleiskite aptitude programą „interaktyviam režime“ ir paspauskite klaviša g („Go“). Jei ji rodo bet kokius numatomus veiksmus, turite juos peržiūrėti ir arba juos pašalinti arba įgyvendinti. Jei jokių veiksmų nenumatyta Jums bus pateiktas pranešimas: „No packages are scheduled to be installed, removed, or upgraded“.
Jei esate nustatę APT įdiegti tam tikrus paketus iš kito distributyvo
(pvz. iš testing, esant pagrindiniam distributyvui stable), jums gali tekti
pakeisti APT nustatymus (saugomi faile
/etc/apt/preferences
), tam kad leisti atnaujinti paketų
versijas įki naujosios stabilios laidos. Daugiau informacijos apie APT
pinning galima rasti apt_preferences(5).
Nepriklausomai nuo atnaujinimo metodo, rekomenduojama pirmiausia patikrinti visų paketų statusą, ir įsitikinti, kad visiems paketai yra leista atsinaujinti. Žemiaau pateikta komanda parodys paketus, kurie yra dalinai įdiegti (Half-Installed), kurių nepavyko sukonfigūruoti po įdiegimo (Failed-Config), ir kitus klaidingos būsenos paketus.
# dpkg --audit
Taip pat galite patikrinti paketų būseną Jūsų sistemoje naudodami programas dselect, aptitude, arba tokia komanda, kaip antai
# dpkg -l | pager
arba
# dpkg --get-selections "*" > ~/curr-pkgs.txt
Pageidautina, kad prieš atnaujinimą būtų pašalinti visi paketų sulaikymai (hold). Jei paketas, kurį būtiną atnaujinti yra sulaikytas, atnaujinimas baigsis nesėkmingai.
Atkreipkite dėmesį, kad aptitude naudoja skirtingą sulaikytų paketų žymėjimo metodą nei apt-get ir dselect. Nustatyti, kurie paketai aptitude programai yra sulaikymo būsenoje galite taip:
# aptitude search "~ahold" | grep "^.h"
Jei norite patikrinti, kurie paketai apt-get programai yra sulaikymo būsenoje, naudokite
# dpkg --get-selections | grep hold
Jei Jūs pakeitėte ir perkompiliavote paketą lokaliai, bet nepakeitėte jo vardo ar nepapildėte jo versijos „epocha“, jūs privalote jį sulaikyti, kad jo nebūtų galima atnaujinti.
Paketo sulaikymo būsena („hold“) programai aptitude gali būti pakeista naudojant:
# aptitude hold package_name
Pakeiskite hold
į unhold
, tam kad
išjungti sulaikymo būseną.
Jei Jums reikia dar kažką ištaisyti, tai geriausia daryti kol Jūsų
sources.list
faike dar nurodytas etch, kaip
tai paaiškinta Skyrius A.2, „APT šaltinių sąrašo tikrinimas“.
Jei esate /etc/apt/sources.list
failą papildę skyriumi
proposed-updates
, turite ją pašalinti iš šio failo prieš
bandant atnaujinti savo sistemą. Tai atsargumo priemonė, siekiant sumažinti
konfliktų tikimybę.
Jei savo sistemoje turite įdiegę kokius nors paketus ne iš Debian'o
repozitorijų,tai žinokite, kad jie gali būti pašalinti atnaujinimo metu dėl
priklausomybių konfliktų. Jeigu dėl šių paketų įdiegimo į
/etc/apt/sources.list
buvo įrašyti ir papildomi
archyvai, patikrinkite ar šie archyvai siūlo paketus ir lenny laidai
ir pakeiskite šaltinių eilutes atitinkamai,tuo pat metu kai keisite šaltinių
eilutes Debian'o paketams.
Kai kurie naudotojai gali būti jau įdiegę savo sistemose neoficialių „naujesnių“ versijų, bet pritaikytų etch laidai, paketų. Tokie paketai greičiausiai taps atnaujinimo problemų priežastimi, kadangi jie gali sukelti ir failų konfliktus[3]. Skyrius 4.5.8, „Galimos problemos atnaujinimo metu“ aprašo, ką daryti kilus failų konfliktams.
backports.org
yra pusiau oficiali Debian GNU/Linux kūrėjų
saugykla, tiekianti naujesnes paketų, perkompiliuotų iš
„testinės“ archyvo šakos, versijas stabiliai laidai.
Į backports.org
saugykloje (t.y. adaptuotų paketų
saugykloje) pagrindinai yra paketai patekė iš „testing“ šakos,
bet turintys sumažintus versijos numerius kad atnaujinimas iš
etch backports į lenny vyktų sklandžiai. Tačiau yra
keletas adaptuotų paketų, kurie yra pagaminti iš nestabilios šakos: saugumo
atnaujinimai, taip pat tokios išimtys: Firefox, Linux branduolys,
OpenOffice.org ir X. Org.
If you do not use one of these exceptions, you can safely upgrade to
lenny. If you use one of these exceptions, set the
Pin-Priority
(see apt_preferences(5)) temporarily to 1001
for all packages
from lenny, and you should be able to do a safe dist-upgrade too.
Siekiant išvengti, kad aptitude nepašalintų kai kurių paketų, kurių buvo įdiegti dėl priklausomybių išsprendimo, reikia rankiniu būdu pažymėti juos kaip auto paketus. Tokie paketai yra OpenOffice ir Vim,darbastalio idiegimui:
# aptitude unmarkauto openoffice.org vim
Ir taip pat 2.6 branduolio, jei jį įdiegėte naudodamiesi branduolio metapaketu:
# aptitude unmarkauto $(dpkg-query -W 'linux-image-2.6.*' | cut -f1)
![]() | Pastaba |
---|---|
Galite peržiūrėti, kurie paketai pažymėti kaip auto pagal aptitude, įvykdydami komandą: # aptitude search '~i~M' |
Prieš pradedant atnaujinimą reikia nustatyti programos apt
konfigūraciją paketų sąrašams,
/etc/apt/sources.list
.
Programa apt
, iš visų paketų,
kuriuos galima rasi šaltinių failo „deb
“
eilutėmis nurodytuose šaltiniuose, įdiegs paketus su didžiausiais versijų
numeriais. Tačiau, esant vienodom versijom, pirmenybė teikiama pirmesnei
eilutei šaltinių faile (taigi jei turite nurodę keletą veidrodžių, paprastai
geriausia pirma nurodyti saugyklą vietiniame diske, tada
CD-ROM, ir galiausiai HTTP/FTP veidrodžius).
![]() | Patarimas |
---|---|
Gali tekti įdėti GPG tikrinimo pašalinimą
DVD ir CD-ROM diskams. Pridėkite šią
eilutę į failą APT::Authentication::TrustCDROM "true"; Tačiau ai neveiks su DVD/CD-ROM atvaizdų failais. |
Laida dažnai gali būti nurodoma jos kodiniu vardu (pvz,
etch
, lenny
) ir
jos statuso vardu (t.y. oldstable
,
stable
, testing
,
unstable
). Nuoroda į laidą jos kodiniu vardu turi tą
privalumą, kad Jūs niekada, netikėtai sau pačiam, nepradėsite naudoti
naujesnės laidos. Dėl šios priežasties mes čia taip ir darome. Tai žinoma
reiškia, kad Jums teks patiems sekti anonsus apie naujų laidų
pasirodymą. Jei distributyvo nurodymui naudosite statuso vardą, Jūs tiesiog,
pasirodžius naujai laidai, pamatysite didelį kiekį atnaujintų paketų.
Numatytieji nustatymai įgalina atlikti atnaujinimą iš pagrindinių Debian'o
interneto serverių, tačiau Jūs galite pakeisti šaltinių failą
/etc/apt/sources.list
ir naudotis kitais serveriais -
veidrodžiais, pvz. tais, kurie yra arčiausiai Jūsų.
Debian'o HTTP ir FTP veidrodžių adresus galima rasti adresu http://www.debian.org/distrib/ftplist (žiū. skyriuje „list of Debian mirrors“). HTTP veidrodžiai paprastai greitesni nei FTP veidrodžiai.
Pavyzdžiui, tarkime, Jums artimiausias Debian veidrodis yra
http://mirrors.kernel.org
. Peržiūrint veidrodį interneto
naršyklę arba FTP klientine programa, pastebėsite, kad pagrindiniai
katalogai yra organizuoti taip:
http://mirrors.kernel.org/debian/dists/lenny/main/binary-i386/... http://mirrors.kernel.org/debian/dists/lenny/contrib/binary-i386/...
Kad apt
naudotų ši veidrodį, į failą
sources.list
pridėkit tokią eilutę:
deb http://mirrors.kernel.org/debian lenny main contrib
Atkreipkite dėmesį, kad `dists
' įrašoma besąligiškai, o
argumentai, sekantys po laidos vardo, yra naudojami pratęsti kelią iki
keleto realių katalogų.
Pridėjus naujų šaltinių, išjunkite anksčiau egzistavusias
„deb
“ eilutes faile
sources.list
, įvesdami maišos ženklą
(#
) eilutės pradžioje.
Vietoj HTTP ar FTP veidrodžių, galima naudoti ir veidrodžius (saugyklas)
vietiniame diske, atitinkamai pakeitus įrašą šaltinių faile
/etc/apt/sources.list
(šis diskas gali būti prijungtas
ir per NFS).
Pavyzdžiui, jei Jūsų paketų saugykla yra kataloge
/var/ftp/debian/
, o jo pagrindiniai katalogų vardai
tokie:
/var/ftp/debian/dists/lenny/main/binary-i386/... /var/ftp/debian/dists/lenny/contrib/binary-i386/...
Norėdami naudoti šią paketų saugyklą su apt
, pridėkite tokią eilutę į failą
sources.list
:
deb file:/var/ftp/debian lenny main contrib
Atkreipkite dėmesį, kad `dists
' įrašoma besąligiškai, o
argumentai, sekantys po laidos vardo, yra naudojami pratęsti kelią iki
keleto realių katalogų.
Pridėjus naujų šaltinių, išjunkite anksčiau egzistavusias
„deb
“ eilutes faile
sources.list
, įvesdami maišos ženklą
(#
) eilutės pradžioje.
Jei norite naudoti tik kompaktinius diskus,
užkomentuokite visas „deb
“ eilutes faile
sources.list
, įvesdami maišos ženklą
(#
) eilutės pradžioje.
Įsitikinkite, kad yra eilutė faile /etc/fstab
, kuri
leidžia prijungti (mount) CD-ROM įrenginį prie taško
/cdrom
(kaip tik prie šio taško reikalauja prijungimo
komanda apt-cdrom). Pavyzdžiui, jei
/dev/hdc
yra Jūsų CD-ROM įrenginys, faile
/etc/fstab
turi būti tokia eilutė:
/dev/hdc /cdrom auto defaults,noauto,ro 0 0
Atkreipkite dėmesį, kad ketvirtajame eilutės lauke, tarp žodžių
defaults,noauto,ro
, neturi būti
tarpų.
Kad patikrinti ar eilutė įrašyta į failą /etc/fstab
teisingai, įdėkite kompaktinį diską į įrenginį ir įvykdykite komandas:
# mount /cdrom # prijungia CD prie prijungimo taško # ls -alF /cdrom # parodo CD'o šaknini katalogą # umount /cdrom # atjungia CD
Tada vykdykite komandą
# apt-cdrom add
kiekvienam turimam Debian'o dvejetainiam CD-ROM'ui, jei norite kad duomenys apie kiekvieną CD patektų į APT duomenų bazę.
Rekomenduojamas būdu atnaujinti ankstesnių Debian GNU/Linux laidą yra naudoti paketų valdymo įrankį aptitude. Ši programa daro saugesnius sprendimus apie paketų įdiegimą nei naudojant apt-get tiesiogiai.
Nepamirškite prijungti visus reikalingus diskų skirsnius (ypač root ir
/usr
skirsnius) skaitymui ir rašymui. Tai galima
padaryti komanda:
# mount -o remount,rw /mountpoint
Toliau reikėtų dar kartą patikrinkite, kad APT šaltiniių įrašai (faile
/etc/apt/sources.list
) rodo arba į
„lenny
“ arba į
„stable
“. Neturėtų būti jokių šaltinių įrašų
nurodančių į etch.
![]() | Pastaba |
---|---|
Šaltinių eilutės, skirtos CD-ROM įrenginiui, dažnai nurodo į
„ |
Labai rekomenduojama, kad naudotumėte programą /usr/bin/script atnaujinimo seanso įrašymui. Tada, jei iškiltų problemų, Jūs turėsite visų įvykusių veiksmų žurnalą, ir prireikus, galėsite pateikti šią informaciją pranešimą apie riktą. Norėdami pradėti įrašinėti, įvykdykite komandą:
# script -t 2>~/upgrade-lenny.time -a ~/upgrade-lenny.script
ar panašiai. Nepatalpinkit failo su įrašais į laikiną katalogą, tokį kaip
/tmp
ar /var/tmp
(failai šiuose
kataloguose gali būti ištrinti atnaujinimo metu arba perleidžiant
kompiuterį).
Šis įrašas taip pat suteiks galimybę peržiūrėti informaciją, kuri išeis už
ekrano ribų atliekant atnaujinimą. Tiesiog persijunkite į antrąją virtualią
konsolę VT2 (naudojant klavišų kombinaciją Alt+F2) ir,
prisijungus prie sistemos, failo peržiūrai įvykdykite komandą less
-R ~root/upgrade-lenny.script
.
Pabaigus atnaujinimą, galite sustabdyti programą script
įvedę exit
komandinėje eilutėje.
Jei programai script perdavėte parametrą -t, galėsite pasinaudodamas programa scriptreplay pakartoti visą seansą:
# scriptreplay ~/upgrade-lenny.time ~/upgrade-lenny.script
Pirmiausia reikia atnaujinti paketų, esančių naujojoje laidoje, sąrašą. Tai atliekama komanda:
# aptitude update
Vykdant šią komandą pirmą kartą bus išvesta keletas įspėjimų, susijusių su naujų šaltinių prieinamumu. Šie įspėjimai yra nekenksmingas ir nebebus rodomi, jei įvykdysite komandą dar kartą.
Prieš pilną sistemos atnaujinimą (kuris aprašytas čia Skyrius 4.5.7, „Likusios sistemos dalies atnaujinimas“), Jūs turite įsitikinti, kad turite pakankamai
laisvos vietos standžiajame diske. Pirmiausia, visi reikiami įdiegimui
paketai, atsisiunčiami iš tinklo yra saugomi kataloge
/var/cache/apt/archives
(o siuntimo metu - kataloge
partial/
), todėl būtina įsitikinti, kad turite
pakankamai vietos disko skirsnyje, kuris talpina katalogą
/var/
, nes čia laikinai bus patalpinti visi atsisiųsti
paketai įdiegimui. Po parsisiuntimo, Jums tikriausiai prireiks daugiau
vietos kitose failų sistemos dalyse, atnaujinamų paketų įdiegimui (kurie
gali būti didesni) ir naujų paketų įdiegimui, kurie bus diegiami naujoje
laidoje. Jeigu Jūsų sistema neturi pakankamai vietos, galite likti su
nebaigta atnaujinti sistemą, kurią vėliau sunku atstatyti.
Ir aptitude, ir apt
programa parodo išsamią informacija apie
vietos poreikį. Prieš vykdant atnaujinimą, galėsite pasižiūrėti šią
informaciją įvykdę komandą:
# aptitude -y -s -f --with-recommends dist-upgrade [ ... ] XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded. Need to get xx.xMB/yyyMB of archives. After unpacking AAAMB will be used. Would download/install/remove packages.
![]() | Pastaba |
---|---|
Ši komanda atnaujinimo pradžioje, dėl priežasčių, nurodytų žemiau, gali pranešti klaidą. Tokiu atveju jums reikės šios komandos pagalba įvertinti reikiamą vietos diske dydį tik atlikus minimalų sistemą atnaujinimą, kaip aprašyta Skyrius 4.5.6, „Minimalus sistemos atnaujinimas“ ir atnaujinus branduolį. |
Jei neturite pakankamai vietos diske, atlaisvinkite vietos iš anksto. Jūs galite:
Pašalinti paketus, kurie anksčiau buvo atsisiųsti (iš katalogo
/var/cache/apt/archives
). Įvykdžius komandą
apt-get clean arba aptitude clean bus
pašalinti visi anksčiau atsiųstų paketų failai.
Pašalinti užmirštus paketus. Jei turite idiegę popularity-contest
paketą, pasinaudodami komanda
popcon-largest-unused galite gauti sąrašą paketų,kurių
nenaudojate ir kurie užima daugiausia vietos. Taip pat galite naudoti
deborphan arba debfoster komandas, tam
kad rasti pasenusius paketus (žiūr. Skyrius 4.10, „Pasenę paketai“). Arba galite
pasikeisti programą aptitude „interaktyviu
režimu“ ir rasti pasenusius paketus skyriuje „Nebenaudojami ir
lokaliai sukurti paketai“.
Pašalinti paketus, kurie užima daug vietos ir šiuo metu nėra reikalingi (Jūs
visada galėsite juos vėl įdiegti po sistemos atnaujinimo). Paketų, užimančių
daug vietos diske, sąrašą galima gauti programos dpigs
(pateikiamos debian-goodies
pakete)
pagalba arba programos wajig (įvykdžius wajig
size
) pagalba.
You can list packages that take up most of the disk space with aptitude
. Start aptitude
into „visual mode“, select
→ (this menu entry is available only after
etch version), press l and enter ~i
,
press S and enter ~installsize
, then it
will give you nice list to work with. Doing this after upgrading
aptitude
should give you access to
this new feature.
Pašalinti vertimus ir lokalizacijos failus iš sistemos, jei jie nėra
būtini. Jūs galite įdiegti paketą localepurge
ir sukonfigūruoti jį taip, kad tik
keletas atrinktų sisteminių lokalių bus palikta sistemoje. Tai atlaisvins
diske dalį katalogo /usr/share/locale
užimamos vietos.
Laikinai perkelti į kitą sistemą, arba visam laikui pašalinti, sistemos
žurnalus, esančius kataloge /var/log/
.
Naudoti laikiną katalogą /var/cache/apt/archives
: Jūs
galite laikinai naudoti šiai talpyklai katalogą iš kitos failų sistemos
(USB įrenginį, laikiną kietąjį diską, jau naudojamą failų
sistemą, ...)
![]() | Pastaba |
---|---|
Nenaudokite NFS failų sistemos, nes atnaujinimo metu tinklo ryšys gali būti nutrauktas. |
Pavyzdžiui, jei turite USB diską, prijungtą prie taško
/media/usbkey
:
pašalinkite paketus, kurie anksčiau buvo atsisiųsti įdiegimui:
# apt-get clean
nukopijuokite katalogą /var/cache/apt/archives
į
USB diską:
# cp -ax /var/cache/apt/archives /media/usbkey/
prijunkite laikiną talpyklą prie dabartinės:
# mount --bind /media/usbkey/archives /var/cache/apt/archives
po atnaujinimo, atkurkite originalų katalogą
/var/cache/apt/archives
:
# umount /media/usbkey/archives
pašalinti likusį ir nebereikalingą katalogą
/media/usbkey/archives
.
Galite sukurti laikiną talpyklos katalogą bet kurioje failų sistemoje, jau esančioje (t.y. prijungtoje) Jūsų sistemoje.
Atkreipkite dėmesį, kad norint saugiai pašalinti paketus, patartina
pataisyti failą sources.list
atgal į etch
šaltinius, kaip aprašyta čia: Skyrius A.2, „APT šaltinių sąrašo tikrinimas“.
Pranešimai apie atnaujinimo problemas parodė, kad seni aptitude
bei apt
įrankiai, iš Debian „Etch“ versijos dažnai
negali teisingai atnaujinti sistemos iki Debian lenny
versijos. Debian lenny versijoje esantis apt
įrankis geriau dirba su sudėtingomis
priklausomybėmis, kuomet reikia neatidėliotinų programų paketų
konfigūravimo, taipogi ir nauja aptitude
versija yra gudresnė ieškant programų
paketų priklausomybių sprendimų. Šios savyvės yra labai naudojamos
atnaujinimo (dist-upgrade) į Debian lenny metu, todėl būtinai reikia
atnaujinti „apt“ bei „aptitude“ paketus prieš atnaujinant visą operacinę
sistemą. apt
įrankio atnaujinimui
įvykdykite:
# apt-get install apt
įrankio aptitude
atnaujinimui (jeigu
Jūsų sistemoje jis yra įdiegtas) įvykdykite:
# aptitude install aptitude
Šios komandos automatiškai atnaujins libc6
bei locales
paketus bei papildomai įdiegs will
SELinux palaikymo bibliotekas (libselinux1
). Šių paketų įdiegimo metu, keletas
veikiančių tarnybų (services) bus perleistos iš naujo, tame tarpe
xdm, gdm bei kdm
naudotojų prisijungimo programos. Dėl to, grafinėje aplinkoje (X11)
dirbantys naudotojai gali būti atjungti - rekomenduojame sistemos
atnaujinimą vykdyti iš tekstinės aplinkos arba prisijungus nuotoliniu būdu.
aptitude
įrankis prižiūri sąrašus
programų paketų, kurie buvo įdiegti automatiškai (pavyzdžiui, dėl
priklausomybių nuo kitų paketų). Debian lenny versijoje apt
įrankis taip pat turi šią galimybę.
Kai pirmą kartą paleisite Debian lenny versijos aptitude
įrankį, jis pritaikys automatiškai
įdiegtų paketų sąrašą, kad jį galėtų naudoti ir lenny versijoje
esantis apt
įrankis. Jei jūs
naudojotės aptitude
įrankiu, tuomet
turėtumėte bent kartą paleisti aptitude komandą po
atnaujinimo, kad ir naujoji sistema žinotų automatiškai įdiegtų programų
paketų sąrašą. Tai galite padaryti pvz. paieškodami neegzistuojančio paketo:
# aptitude search "?false"
Dėl tam tikrų neišvengiamų programų paketų konfliktų tarp etch
ir lenny paprastas aptitude dist-upgrade
įvykdymas dažnai pasiūlys pašalinti daug programinės įrangos paketų, kuriuos
jūs norite turėti. Todėl mes rekomenduojame atnaujinimą vykdyti dviem
žingsniais: pirmiausia - minimalus atnaujinimas, apeinant šiuos konfliktus
(aptitude safe-upgrade
), o tada - pilnas atnaujinimas
aptitude dist-upgrade
.
Pradžioje įvydykite:
# aptitude safe-upgrade
Ši komanda atnaujins visus programų paketus, kurie gali būti atnaujinti nepašalinant bei neįdiegiant jokių kitų papildomų paketų.
Kitas žingsnis, kurį reikės įvykdyti, priklauso nuo jūsų sistemoje įdiegtų programų paketų. Šiame dokumente yra pateikti bendri patarimai kurį atnaujinimo būdą reiktų pasirinkti, tačiau, visiems abejojantiems mes rekomenduojame patiems patikrinti visą sąrašą pašalinamų paketų, kuriuos pasiūlys pašalinti pasirinkus kitą žingsnį.
Tikėtina, kad jums pasiūlys išmesti šiuos nereikalingus programų paketus:
base-config
, hotplug
, xlibs
, netkit-inetd
, python2.3
, xfree86-common
bei xserver-common
. Daugiau informacijos apie
pasenusius lenny laidoje pasenusius paketus rasite: Skyrius 4.10, „Pasenę paketai“.
Dabar Jūs esate pasiruošę atlikti pagrindinę (svarbiausią) atnaujinimo dalį. Įvykdykite komanda:
# aptitude dist-upgrade
Tai atliks pilną sistemos atnaujinimą, t.y. įdiegs esamas naujausias visų paketų versijas, ir išspręs visus galimus priklausomybių pakitimus tarp skirtingų laidų paketų. Jeigu būtina, tai įdiegs ir kai kuriuos naujus paketus (paprastai naujas bibliotekų versijas, ar pervadintus paketus), ir pašalins visus, konfliktavimą sukelenčius, senus paketus.
Atnaujinant iš kompaktinių diskų komplekto (ar DVD), sistema keletą kartų paprašys įdėti konkrečius kompaktinius diskus. Gali tekti įdėti tą patį kompaktinį diską keletą kartų. Taip yra todėl, kad tarpusavio priklausomybėmis surišti paketai patalpinti skirtinguose diskuose.
Naujos versijos šiuo metu jau įdiegtų paketų, kurie negali būti atnaujinti,
nekeičiant kitų paketų statuso, nebus atnaujinamos (paketai bus pažymėti
kaip „sulaikyti“ - „held back“). Šioje situacijoje reikia
programos aptitude pagalba pažymėti tuos paketus kaip
atnaujinamus arba vykdant komandą aptitude -f install
.
paketo_vardas
If an operation using aptitude, apt-get, or dpkg fails with the error
E: Dynamic MMap ran out of room
the default cache space is insufficient. You can solve this by either
removing or commenting lines you don't need in
/etc/apt/sources.list
or increasing the cache size.
The cache size can be increased by setting
APT::Cache-Limit
in
/etc/apt/apt.conf
. The following command will set it
to a value that should be sufficient for the upgrade:
# echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf
This assumes that you do not yet have this variable set in that file.
Sometimes it's necessary to enable the
APT::Force-LoopBreak
option in APT to be able to
temporarily remove an essential package due to a Conflicts/Pre-Depends
loop. aptitude will alert you of this and abort the
upgrade. You can work around this by specifying the option -o
APT::Force-LoopBreak=1
on the aptitude command
line.
It is possible that a system's dependency structure can be so corrupt as to require manual intervention. Usually this means using aptitude or
# dpkg --remove package_name
to eliminate some of the offending packages, or
# aptitude -f install # dpkg --configure --pending
In extreme cases you might have to force re-installation with a command like
# dpkg --install /path/to/package_name.deb
File conflicts should not occur if you upgrade from a „pure“ etch system, but can occur if you have unofficial backports installed. A file conflict will result in an error like:
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>
You can try to solve a file conflict by forcibly removing the package mentioned on the last line of the error message:
# dpkg -r --force-depends package_name
After fixing things up, you should be able to resume the upgrade by repeating the previously described aptitude commands.
During the upgrade, you will be asked questions regarding the configuration
or re-configuration of several packages. When you are asked if any file in
the /etc/init.d
or /etc/terminfo
directories, or the /etc/manpath.config
file should be
replaced by the package maintainer's version, it's usually necessary to
answer `yes' to ensure system consistency. You can always revert to the old
versions, since they will be saved with a .dpkg-old
extension.
If you're not sure what to do, write down the name of the package or file and sort things out at a later time. You can search in the typescript file to review the information that was on the screen during the upgrade.
This section explains how to upgrade your kernel and identifies potential
issues related to this upgrade. You can either install one of the
linux-image-*
packages provided by
Debian, or compile a customized kernel from source.
Note that a lot of information in this section is based on the assumption
that you will be using one of the modular Debian kernels, together with
initramfs-tools
and udev
. If you choose to use a custom kernel that
does not require an initrd or if you use a different initrd generator, some
of the information may not be relevant for you.
When you dist-upgrade from etch to lenny, it is strongly recommended that you install a new linux-image-2.6-* metapackage. This package may be installed automatically by the dist-upgrade process. You can verify this by running:
# dpkg -l "linux-image*" | grep ^ii
If you do not see any output, then you will need to install a new linux-image package by hand. To see a list of available linux-image-2.6 metapackages, run:
# apt-cache search linux-image-2.6- | grep -v transition
If you are unsure about which package to select, run uname
-r
and look for a package with a similar name. For example, if
you see '2.6.18-6-686
', it is recommended that you
install linux-image-2.6-686
. (Note
that the k7
flavor no longer exists; if you are currently
using the k7
kernel flavor, you should install the
686
flavor instead.) You may also use
apt-cache to see a long description of each package in
order to help choose the best one available. For example:
# apt-cache show linux-image-2.6-686
You should then use aptitude install
to install it. Once
this new kernel is installed you should reboot at the next available
opportunity to get the benefits provided by the new kernel version.
For the more adventurous there is an easy way to compile your own custom
kernel on Debian GNU/Linux. Install the kernel-package
tool and read the documentation
in /usr/share/doc/kernel-package
.
If possible, it is to your advantage to upgrade the kernel package
separately from the main dist-upgrade
to reduce the
chances of a temporarily non-bootable system. Note that this should only be
done after the minimal upgrade process described in Skyrius 4.5.6, „Minimalus sistemos atnaujinimas“.
lenny features a more robust mechanism for hardware discovery than previous releases. However, this may cause changes in the order devices are discovered on your system, affecting the order in which device names are assigned. For example, if you have two network adapters that are associated with two different drivers, the devices eth0 and eth1 refer to may be swapped. Please note that the new mechanism means that if you e.g. exchange ethernet adapters in a running lenny system, the new adapter will also get a new interface name.
For network devices, you can avoid this reordering by using udev
rules, more specifically, through the
definitions at
/etc/udev/rules.d/70-persistent-net.rules
[4]. Alternatively you can use the ifrename
utility to bind physical devices to specific names at boot time. See
ifrename(8) and iftab(5) for more information. The two alternatives (udev
and ifrename) should not
be used at the same time.
For storage devices, you can avoid this reordering by using initramfs-tools
and configuring it to load
storage device driver modules in the same order they are currently loaded.
To do this, identify the order the storage modules on your system were
loaded by looking at the output of lsmod.
lsmod lists modules in the reverse order that they were
loaded in, i.e., the first module in the list was the last one loaded. Note
that this will only work for devices which the kernel enumerates in a stable
order (like PCI devices).
However, removing and reloading modules after initial boot will affect this
order. Also, your kernel may have some drivers linked statically, and these
names will not appear in the output of lsmod. You may be
able to decipher these driver names and load order from looking at
/var/log/kern.log
, or the output of
dmesg.
Add these module names to /etc/initramfs-tools/modules
in the order they should be loaded at boot time. Some module names may have
changed between etch and lenny. For example,
sym53c8xx_2
has become sym53c8xx
.
You will then need to regenerate your initramfs image(s) by executing
update-initramfs -u -k all
.
Once you are running a lenny kernel and udev
, you may reconfigure your system to access
disks by an alias that is not dependent upon driver load order. These
aliases reside in the /dev/disk/
hierarchy.
If an initrd created with initramfs-tools
is used to boot the system, in
some cases the creation of device files by udev
can happen too late for the boot scripts to
act on.
The usual symptoms are that the boot will fail because the root file system
cannot be mounted and you are dropped into a debug shell. But if you check
afterwards, all devices that are needed are present in
/dev
. This has been observed in cases where the root
file system is on a USB disk or on
RAID, especially if
LILO is
used.
A workaround for this issue is to use the boot parameter
rootdelay=
. The value for
the timeout (in seconds) may need to be adjusted.
9
When aptitude dist-upgrade
has finished, the
„formal“ upgrade is complete, but there are some other things
that should be taken care of before the next reboot.
If you are using lilo
as your
bootloader (it is the default bootloader for some installations of
etch) it is strongly recommended that you rerun
lilo after the upgrade:
# /sbin/lilo
Notice this is needed even if you did not upgrade your system's kernel, as lilo's second stage will change due to the package upgrade.
Also, review the contents of your /etc/kernel-img.conf
and make sure that you have do_bootloader = Yes
in it.
That way the bootloader will always be rerun after a kernel upgrade.
If you encounter any issues when running lilo, review the
symbolic links in /
to vmlinuz
and
initrd
and the contents of your
/etc/lilo.conf
for discrepancies.
If you forgot to rerun lilo before the reboot or the
system is accidentally rebooted before you could do this manually, your
system might fail to boot. Instead of the lilo prompt, you will only see
LI
when booting the system[5]. See Skyrius 4.1.3, „Pasiruošimas atstatymui“ for information on how to
recover from this.
Kai kurie naudotojai pranešė, kad po sistemos perkrovimo, ją atnaujinus, branduoliui nepavyksta rasti šakninės failų sistemos.
Tokiu atveju sistemos įkėlimas pakimba, esant tokiam pranešimui:
Waiting for root file system ...
ir po keleto sekundžių išvedamas busybox kvietinys (prompt).
Ši problema gali kilti, kai atnaujinant branduolį pradedamos naudoti naujos
kartos IDE tvarkyklės. Senose IDE
tvarkyklėse diskams buvo priskiriami vardai hda
,
hdb
, hdc
,
hdd
. Naujosios tvarkyklės tuos pačius diskus vadina
atitinkamai sda
, sdb
,
sdc
, sdd
. Problema kyla tuomet, kai
atnaujinimo metu nesukuriamas naujas failas
/boot/grub/menu.lst
su naujais diskų vardais. Įkėlimo
metu Grub perduoda branduoliui šakninės failų sistemos disko skirsnį, kurio
branduolys negali rasti.
Jei susidūrėte su šia problema po atnaujinimo, peršokite į Skyrius 4.8.2, „Kaip pataisyti Debian sistemą atsiradus problemoms po atnaujinimo“. Norėdami išvengti šios problemos prieš atnaujinimą, skaitykite toliau.
Šios problemos galima išvengti visiškai, naudojant šakninės failų sistemos identifikatorių, kuris nesikeičia tarp vieno ir kito sistemos įkėlimo. Yra du galimi būdai tai padaryti - paženklinant failų sistemą žyme, arba naudojantis universalių unikalių failų sistemos identifikatorių (UUID). Šie metodai yra palaikoma Debian sistemoje pradedant laida "etch".
Abu metodai turi privalumų ir trūkumų. Ženklinimo žyme būdas yra suprantamesnis žmogui, bet gali būti problemų, jei kita failų sistema Jūsų kompiuteryje turi tokią pačią žymę. UUID naudojimas mažiau akivaizdus, tačiau dviejų UUID sutapimas yra vargiai įmanomas.
Žemiau pateiktuose pavyzdžiuose laikysime, kad šakninė failų sistema yra
disko skirsnyje/dev/hda6
. Taip pat laikysime, kad
sistema naudoja udev ir failų sistemos yra ext2 ar ext3.
Siekiant įgyvendinti ženklinimo žyme metodą:
Paženklinkite failų sistemą (pavadinimas turi būti < 16 simbolių), vykdydami komandą: e2label /dev/hda6 rootfilesys
Pataisykite/boot/grub/menu.lst
failo eilutę:
# kopt=root=/dev/hda6 ro
į
# kopt=root=LABEL=rootfilesys ro
![]() | Pastaba |
---|---|
Nepašalinkite simbolio |
Atnaujinkite kernel
eilutes faile
menu.lst
, įvykdydami komandą
update-grub.
Pataisykite failą /etc/fstab
pakeisdami eilutę, kurioje
prijungiamas skirsnis /
, pavyzdžiui pakeisdami:
/dev/hda6 / ext3 defaults,errors=remount-ro 0 1
į
LABEL=rootfilesys / ext3 defaults,errors=remount-ro 0 1
Šia keičiamas tik pirmasis lentelės stulpelis, nereikia keisti kitų stulpelių šioje eilutėje.
Siekiant įgyvendinti UUID metodą:
Sužinokite universalių unikalių failų sistemos identifikatorių, pasinaudodami komanda: ls -l /dev/disk/by-uuid | grep hda6
Turite gauti eilutę, panašią į šią:
lrwxrwxrwx 1 root root 24 2008-09-25 08:16 d0dfcc8a-417a-41e3-ad2e-9736317f2d8a -> ../../hda6
UUID yra simbolinės nuorodos vardas, nurodančios
į/dev/hda6
t.y.:
d0dfcc8a-417a-41e3-ad2e-9736317f2d8a
.
![]() | Pastaba |
---|---|
ūsų failų sistemos UUID bus kitoks. |
Pataisykite/boot/grub/menu.lst
failo eilutę:
# kopt=root=/dev/hda6 ro
į
# kopt=root=UUID=d0dfcc8a-417a-41e3-ad2e-9736317f2d8 ro
![]() | Pastaba |
---|---|
Nepašalinkite simbolio |
Atnaujinkite kernel
eilutes faile
menu.lst
, įvykdydami komandą
update-grub.
Pataisykite failą /etc/fstab
pakeisdami eilutę, kurioje
prijungiamas skirsnis /
, pavyzdžiui pakeisdami:
/dev/hda6 / ext3 defaults,errors=remount-ro 0 1
į
UUID=d0dfcc8a-417a-41e3-ad2e-9736317f2d8 / ext3 defaults,errors=remount-ro 0 1
Šia keičiamas tik pirmasis lentelės stulpelis, nereikia keisti kitų stulpelių šioje eilutėje.
Šiuo atveju pasinaudojama Grub meniu, leidžiančiu pasirinkti ką ir iš kur norite įkelti (boot). Jei toks meniu nerodomas, bandykite paspausti Esc klavišą prieš branduoliui pradedant įkėlimo procesą. Jei negalite patekti į šį meniu, pabandykite Skyrius 4.8.2.2, „ II būdas“ arba Skyrius 4.8.2.3, „ III būdas“.
Pasirinkite Grub meniu įrašą, kurį norite panaudoti sistemos įkėlimui. Paspauskite klavišą e, kad pereitumėte į šio įrašo redagavimo režimą. Jūs pamatysite kažką panašaus į:
root (hd0,0) kernel /vmlinuz-2.6.26-1-686 root=/dev/hda6 ro initrd /initrd.img-2.6.26-1-686
Pasirinkę eilutę
kernel /vmlinuz-2.6.26-1-686 root=/dev/hda6 ro
paspauskite klavišą e ir pakeiskite
hd
į
X
sd
(X
X
yra
raidė a
, b
, c
arba
d
, priklausomai nuo jūsų sistemos). Mūsų pavyzdyje
eilutė taps:
kernel /vmlinuz-2.6.26-1-686 root=/dev/sda6 ro
Tada paspauskite Enter, kad išsaugotumėte pakeitimą. Jei
kitose eilutėse yra hd
,
pakeiskite jas taip pat. Nekeiskite įrašo, panašaus į X
root
(hd0,0)
. Kai visi pakeitimai yra padaryti, paspauskite klavišą
b. Dabar Jūsų sistemos įkėlimas turėtų vykti kaip įprasta.
Po sėkmingo sistemos įkėlimo, reikia galutinai pataisyti šią problemą. Peršokite į Skyrius 4.8.1, „Kaip išvengti problemų prieš atnaujinimą“ ir pasinaudokite vieną iš dviejų siūlomų procedūrų.
Įkelkite Debian GNU/Linux įdiegimo (CD/DVD)
laikmeną ir kai pasirodys kvietimas sistemos įkėlimui, pasirinkite
rescue
, t.y. atstatymo režimą. Pasirinkite savo kalbą,
vietą, ir klaviatūra; tada leiskite programai konfigūruoti tinklą (nesvarbu,
ar tai pavyks, ar ne). Po kurio laiko, Jūsų paklaus kurį disko skirsnį
norite naudoti kaip šakninę failų sistemą. Siūlomas pasirinkimas atrodys
maždaug taip:
/dev/ide/host0/bus0/target0/lun0/part1 /dev/ide/host0/bus0/target0/lun0/part2 /dev/ide/host0/bus0/target0/lun0/part5 /dev/ide/host0/bus0/target0/lun0/part6
Jei žinote, kuriame disko skirsnyje yra šakninės failų sistemą, pasirinkite jį. Jei ne, pabandykite su pirmuoju. Jei programa praneš, kad tai negali būti šakninė failų sistema, pabandykite kitą, ir taip toliau. Šie bandymai nesugadins disko skirsnių ir, jei turite įdiegtą tik viena operacinę sistemą diskuose, turėtumėte lengvai rasti tinkamą šakninę failų sistemą. Jei turite daug operacinių sistemų įdiegtų diskuose, geriau būtų tiksliai žinoti, kuris disko skirsnis yra reikiamas.
Kai pasirinksite disko skirsnį, Jums bus pasiūlyta keletas pasirinkimo variantų. Pasirinkite komandinės eilutės vykdymo apvalkalą (shell). Jei programa praneš, kad negali to padaryti, tuomet bandykite pasirinkti kitą disko skirsnį.
Dabar Jūs turite gauti priėjimą administratoriaus root
teisėmis savo šakninėje failų sistemoje, prijungtoje taške
/target
. Jums reikalingas priėjimas prie katalogų
/boot
, /sbin
ir
/usr
kietajame diske, kurie dabar turėtų būti
prieinamas kaip /target/boot
,
/target/sbin
ir /target/usr
katalogai. Jei šių katalogai turi būti prijungti iš kitų disko skirsnių -
padarykite tai (žiūr. /etc/fstab
, jei nepamenate
kuriuos disko skirsnius reikėtų prijungti).
Peršokite į Skyrius 4.8.1, „Kaip išvengti problemų prieš atnaujinimą“ ir
pasinaudokite vieną iš dviejų siūlomų procedūrų, siekiant galutinai
pataisyti šią problemą. Tada įveskite exit
, tam kad
išeiti iš atstatymo (rescue) aplinkos, ir pasirinkite
reboot
(pakartotinas sistemos įkėlimas) sistemos
įkėlimui kaip įprasta (nepamirškite išimti įdiegimo laikmenos).
Paleiskite jums patinkantį Linux demonstracinį diską (LiveCD), pvz. Debian Live, Knoppix ar Ubuntu Live.
Prijunkite disko skirsnį, kuriame yra katalogas
/boot
. Jei nežinote, kuris tai disko skirsnis turėtų
būti, pasinaudokite komandos dmesg išvestimi, tam kad
sužinotumėte ar tai diskas hda
, hdb
,
hdc
, hdd
ar sda
,
sdb
, sdc
, sdd
. Kai
žinote, kuriame diske dirbama, pvz. sdb
, pažiūrėkite
disko skirsnių lentelę (tam, kad rasti tinkamą skirsnį), pasinaudodami
komanda: fdisk -l /dev/sdb
Darant prielaidą, kad prijungėte tinkamą disko skirsnį taške
/mnt
ir kad šiame skirsnyje yra
/boot
katalogas ir jo turinys, pataisykite failą
/mnt/boot/grub/menu.lst
.
Suraskite skyrių panašų į:
## ## End Default Options ## title Debian GNU/Linux, kernel 2.6.26-1-686 root (hd0,0) kernel /vmlinuz-2.6.26-1-686 root=/dev/hda6 ro initrd /initrd.img-2.6.26-1-686 title Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode) root (hd0,0) kernel /vmlinuz-2.6.26-1-686 root=/dev/hda6 ro single initrd /initrd.img-2.6.26-1-686 ### END DEBIAN AUTOMAGIC KERNELS LIST
ir pakeisti kiekvieną hda
, hdb
,
hdc
, hdd
į sda
,
sdb
, sdc
, sdd
atitinkamai. Nekeiskite eilutės panašios į:
root (hd0,0)
Paleiskite sistemą iš naujo ir išimkite Linux demonstracinį diską (LiveCD) - tuomet jūsų sistema turėtų pasileisti normaliai.
Kai sistema jau įkelta, pasinaudokite vieną iš dviejų čia Skyrius 4.8.1, „Kaip išvengti problemų prieš atnaujinimą“ siūlomų procedūrų, tam kad galutinai pataisytumėt šią problemą.
Po atnaujinimo yra keletas dalykų, kuriuos galite padaryti, siekiant pasiruošti kitai laidai.
Jei naujas branduolio atvaizdo metapaketas buvo įkeltas kaip priklausomybė nuo senojo, jis bus pažymėtas kaip įdiegtas automatiškai. Tai turėtų būti ištaisyta tokiu būdu:
# aptitude unmarkauto $(dpkg-query -W 'linux-image-2.6-*' | cut -f1)
Pašalinkite pasenusius ir nepanaudojamus paketus kaip aprašyta Skyrius 4.10, „Pasenę paketai“. Peržiūrėkite, kokius konfigūracijos failus jie naudojo, ir pagalvokite apie paketų pašalinimą kartu su konfigūracijos failais (purge).
Naujojoje lenny laidoje įvedama keletas tūkstančių naujų paketų, bet kartu daugiau nei du tūkstančiai etch buvusių paketų tampa pasenusiais. Šie pasenę paketai nebebus atnaujinti. Nors niekas netrukdo Jums ir toliau naudoti pasenusius paketus jei pageidaujate, Debian'o projektas paprastai nutrauks saugumo palaikymą tokiems paketams praėjus metams po lenny išleidimo[6] ir daugiau nebeteiks jokio palaikymo. Rekomenduojama pakeisti juos alternatyviais paketais, jei tokių yra.
Yra daug priežasčių, kodėl paketai gali būti pašalinti iš distributyvo: jie nebepalaikomi pačių programinės įrangos autorių; nebėra Debian'e žmonių suinteresuotų paketo priežiūra; paketą išstumia kita, funkcionalumo prasme, pažangesnė programinė įranga; arba paketas, dėl jame esančių riktų, nebėra laikomos tinkamu lenny laidai. Pastaruoju atveju paketas vis dar gali būti palaikomas „unstable“ distributyve.
Nustatyti, kurie paketai atnaujintoje sistemoje yra „pasenę“ yra paprasta, nes paketų valdymo programos pažymi juos tokiais. Jei naudojate aptitude programą, matysite tokių paketų sąrašą, pateikiamą kaip „Obsolete and Locally Created Packages“. Programa dselect pateikia panašią informaciją, tačiau sąrašas gali šiek tiek skirtis.
Also, if you have used aptitude to manually install packages in etch it will have kept track of those packages you manually installed and will be able to mark as obsolete those packages pulled in by dependencies alone which are no longer needed if a package has been removed. Also, aptitude, unlike deborphan will not mark as obsolete packages that you manually installed, as opposed to those that were automatically installed through dependencies.
There are additional tools you can use to find obsolete packages such as
deborphan, debfoster or
cruft. deborphan is highly
recommended, although it will (in default mode) only report obsolete
libraries: packages in the „libs
“ or
„oldlibs
“ sections that are not used by any
other packages. Do not blindly remove the packages these tools present,
especially if you are using aggressive non-default options that are prone to
produce false positives. It is highly recommended that you manually review
the packages suggested for removal (i.e. their contents, size and
description) before you remove them.
The Debian Bug Tracking System often provides additional information on why the package was removed. You should review both the archived bug reports for the package itself and the archived bug reports for the ftp.debian.org pseudo-package.
The list of obsolete packages includes:
Kai kurie paketai iš etch buvo išskaidyti į keletą paketų lenny laidoje, dažniausiai siekiant pagerinti sistemos palaikymą. Siekiant palengvinti atnaujinimą, tokiais atvejais, lenny laidoje dažnai sutinkami „tušti“ („dummy“) paketai, pavadinti tokių pačiu vardu senieji paketai etch laidoje. Įdiegiant šiuos paketus, dėl priklausomybių įdiegiami nauji paketai. Tuoj po atnaujinimo, šie „tušti“ paketai tampa pasenusiais ir juos galima saugiai pašalinti.
Daugumos (bet ne visų) tokių tuščių paketų aprašymuose yra aiškiai nurodyta
jų paskirtis. Deja. jokių griežtų taisyklių tuščių paketų aprašymams nėra,
todėl jų nustatymui gali būti naudinga komanda deborphan
su parametru --guess
. Atkreipkite dėmesį, kad kai kurių
tuščių paketų neverta pašalinti po atnaujinimo, bet, priešingai, jie
naudojami stebėti dabartinę turimą programos versiją laikui bėgant.
[2] Ši funkcija gali būti išjungta pridedant parametrą
panic=0
prie įkėlimo parametrų.
[3] Debian paketų valdymo sistema paprastai neleidžia paketui pašalinti arba pakeisti failų, priklausančių kitam paketui, išskyrus atvejus, kai paketas - failo savininkas yra nustatęs, kad tą daryti galima.
[4]
The rules there are automatically generated by the script
/etc/udev/rules.d/75-persistent-net-generator.rules
to
have persistent names for network interfaces. Delete this symlink to
disable persistent device naming for NICs by udev
.
[5] For more information on lilo's boot error codes please see The Linux Bootdisk HOWTO.
[6] Arba tol, kol nėra išleista kita laida per tą laikotarpį. Paprastai tik dvi stabilios laidos palaikomos vienu metu.