[ înapoi ] [ Sumar ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ A ] [ înainte ]
Înainte de a vă actualiza sistemul, este foarte recomandat să faceți o copie de siguranță cel puțin a datelor sau a configurației pe care nu vă permiteți să le pierdeți. Uneltele și procesele de actualizare sunt suficient de mature, însă o problemă hardware în mijlocul actualizării poate rezulta într-un sistem afectat server.
Lucrurile principale pe care veți dori să le copiați sunt conținutul
/etc, /var/lib/dpkg și rezultatul rulării dpkg
--get-selections "*" (ghilimelele sunt importante).
Procesul de actualizare în sine nu modifică nimic în directorul
/home. Totuși, unele aplicații (cum ar fi Mozilla sau unele
aplicații KDE) sunt cunoscute pentru faptul că suprascriu setările la valori
implicite în momentul în care o versiune nouă este pornită pentru prima oară de
către utilizator. Ca o precauție, veți dori probabil să faceți o copie de
siguranță a fișierelor și directoarelor ascunse (care încep cu punct,
"dotfiles") din directoarele utilizatorilor. Copierea vă va putea
ajuta să recreați vechile setări. Probabil veți dori să informați utilizatorii
dvs. despre această problemă.
Este înțelept să vă informați din timp toți utilizatorii despre actualizarea
planificată, chiar dacă utilizatorii ce vă accesează sistemul prin SSH (cel
puțin) n-ar trebui să sesizeze prea multe în timpul actualizării și ar putea
dori să continue lucrul. Dacă doriți să vă luați precauții suplimentare,
faceți o copie de siguranță sau montați partițiile utilizator
(/home) înainte de actualizare. O repornire nu va fi necesară în
mod normal, cu excepția cazului în care plănuiți să vă actualizați și nucleul.
Actualizarea distribuției ar trebui efectuată fie local, dintr-o consolă
virtuală în mod text (sau de pe un terminal conectat direct pe portul serial),
sau de la distanță printr-o legătură ssh.
Important! Nu ar trebui să efectuați actualizarea prin
intermediul telnet, rlogin, rsh, sau
dintr-o sesiune X gestionată de xdm, gdm sau
kdm etc. de pe mașina pe care o actualizați. Acest lucru este
necesar datorită faptului că fiecare din aceste servicii poate să fie oprit în
timpul actualizării, ceea ce poate duce la un sistem inaccesibil,
actualizat doar pe jumătate.
Orice operație de instalare a pachetelor trebuie executată cu drepturi de
superutilizator, deci fie vă autentificați ca root, fie utilizați
su sau sudo pentru a obține drepturile necesare de
acces.
Procesul de actualizare descris în acest capitol a fost conceput pentru actualizări de la sisteme woody "pure". Se pleacă de la asumpția că ați actualizat până la ultima versiune minoră a lui woody. Dacă nu ați făcut-o sau în caz de dubii, urmați instrucțiunile de la Actualizarea sistemului woody, Secțiunea A.1.
De asemenea, se presupune că aveți instalată versiunea aptitude
din woody. Puteți verifica dacă este instalată, utilizând
$ dpkg -l aptitude
Dacă rezultatul nu începe cu "i", ar trebui să-l instalați înainte de a începe actualizarea, urmând instrucțiunile de la Instalarea versiunii aptitude din woody, Secțiunea A.2.
Dacă ați configurat APT pentru instalarea anumitor pachete dintr-o distribuție
diferită de cea stabilă (de ex, din "testing"), va trebui să vă
schimbați configurația APT de fixare (stocată în
/etc/apt/preferences) pentru a permite actualizarea pachetelor la
noua versiune stabilă. Mai multe informații despre fixarea APT pot fi găsite
în apt_preferences(5).
Indiferent de metoda utilizată pentru actualizare, este recomandat să verificați mai întâi starea tuturor pachetelor, asigurându-vă că toate pachetele sunt într-o stare actualizabilă. Următoarea comandă va afișa eventualele pachete care au o stare de Jumătate-instalat sau Eșec-config, precum și cele cu o stare eronată.
# dpkg --audit
Ați putea de asemenea să inspectați starea tuturor pachetelor de pe sistemul
dvs. utilizând dselect, aptitude sau folosind
comenzi ca
# dpkg -l | pager
sau
# dpkg --get-selections > ~/curr-pkgs.txt
Este preferabil să eliminați orice pachete cu starea "hold" înaintea actualizării. Dacă un pachet esențial pentru actualizare este pe "hold", actualizarea va eșua. Puteți identifica pachetele pe "hold" cu
# dpkg --get-selections | grep hold
Dacă ați modificat și recompilat un pachet local și nu l-ați redenumit sau
atașat un "epoch" în versiune, trebuie să îl plasați pe
"hold" pentru a preveni actualizarea sa. Starea "hold" a
pachetului poate fi schimbată cu aptitude:
# aptitude hold | unhold <package name>
Dacă există lucruri care trebuiesc fixate, este recomandabil să vă asigurați că
sources.list se referă încă la woody, după cum este explicat în Verificarea listei de surse,
Secțiunea A.3.
Dacă aveți pachete non-Debian pe sistemul dvs., ar trebui să știți că acestea
ar putea fi eliminate în cursul actualizării datorită dependențelor
conflictuale. Dacă aceste pachete au fost instalate prin adăugarea unei arhive
suplimentare în /etc/apt/sources.list, ar trebui să verificați
dacă această arhivă oferă pachete compilate pentru sarge și să modificați
fișierul corespunzător.
Unii utilizatori pe sistemul lor woody pachete neoficiale "backportate" instalate, care există în Debian. Aceste pachete cel mai probabil vor cauza probleme în timpul actualizării, deoarece vor rezulta în conflicte de fișiere. [1] Secțiunea Probleme posibile în timpul actualizării, Secțiunea 4.4.5 conține câteva informații despre tratarea conflictelor de fișiere, în cazul în care acestea apar.
Înainte de a începe actualizarea, trebuie să pregătiți fișierul de configurare
al lui apt pentru lista de pachete,
/etc/apt/sources.list.
apt va considera toate pachetele care pot fi găsite prin linia
"deb" și va instala pachetul cu numărul de versiune cel
mai mare, oferind prioritate primelor linii menționate (astfel, în cazul unor
locații alternative multiple, ar trebui să menționați mai întâi un harddisc
local, apoi CD-ROM-urile, după care serverele alternative HTTP/FTP).
O versiune poate fi referită deseori atât prin numele de cod (de ex: woody, sarge) cât și prin numele de stare (ex: oldstable, stable, testing, unstable). Referirea la o versiune folosind numele de cod are avantajul că nu veți avea surpriza unei noi versiuni, motiv pentru care am folosit această abordare aici. Aceasta înseamnă evident că va trebui să urmăriți anunțurile de lansare. Dacă utilizați numele de stare, veți observa multe actualizări pentru pachete, disponibile imediat ce o versiune a fost lansată.
Configurația implicită este setată pentru instalarea de pe serverele Debian din
Internet, însă poate veți dori să modificați /etc/apt/sources.list
pentru a utiliza servere alternative, preferabil de la o locație apropiată
rețelei în care vă aflați.
Serverele Debian alternative HTTP sau FTP pot fi găsite la http://www.debian.org/distrib/ftplist
(secțiunea "lista serverelor Debian"). Locațiile HTTP sunt în
general mai rapide decât cele FTP.
De exemplu, să presupunem că cea mai apropiată locație alternativă Debian este http://mirrors.kernel.org/debian/. Când inspectați această locație cu un navigator web sau client FTP, veți observa că directoarele principale sunt organizate astfel:
http://mirrors.kernel.org/debian/dists/sarge/main/binary-s390/...
http://mirrors.kernel.org/debian/dists/sarge/contrib/binary-s390/...
Pentru a utiliza această locație cu apt, trebuie să adăugați
această linie la fișierul dvs. sources.list:
deb http://mirrors.kernel.org/debian sarge main contrib
Notați faptul că `dists' este implicit adăugat, iar alte argumente după numele versiunii sunt utilizate pentru a expanda calea în directoare multiple.
După ce adăugați noile surse, dezactivați liniile "deb"
anterioare în sources.list, prin plasarea unui diez
(#) la începutul lor.
Orice pachet necesar pentru instalare care este descărcat din rețea va fi
stocat în /var/cache/apt/archives (iar în timpul descărcării în
subdirectorul partial/), deci trebuie să vă asigurați că aveți
sufiecient spațiu înainte de a începe instalarea. Pentru o instalare Debian
relativ extinsă, vă puteți aștepta la cel puțin 300 MB de date descărcate.
În locul folosiri locațiilor alternative HTTP sau FTP, poate veți dori să
modificați /etc/apt/sources.list pentru a utiliza o locație de pe
discul local (posibil montată prin NFS).
De exemplu, locația dvs. cu pachete poate fi în /var/ftp/debian/,
având directoarele principale astfel:
/var/ftp/debian/dists/sarge/main/binary-s390/...
/var/ftp/debian/dists/sarge/contrib/binary-s390/...
Pentru a folosi apt în această configurație, adăugați următoarea
linie în fișierul sources.list:
deb file:/var/ftp/debian sarge main contrib
Notați faptul că `dists' este implicit adăugat, iar alte argumente după numele versiunii sunt utilizate pentru a expanda calea în directoare multiple.
După ce adăugați noile surse, dezactivați liniile "deb"
anterioare în sources.list, prin plasarea unui diez
(#) la începutul lor.
Dacă doriți să folosiți doar CD-uri, comentați liniile
"deb" existente în /etc/apt/sources.list
prin plasarea unui diez (#) la începutul lor.
Asigurați-vă că există o linie în /etc/fstab ce permite montarea
CD-ROM-ului la locația /cdrom (punctul de montare
/cdrom este necesar pentru apt-cdrom). De exemplu,
dacă/dev/hdc reprezintă CD-ROM-ul dvs, /etc/fstab ar
trebui să conțină o linie de genul:
/dev/hdc /cdrom auto defaults,noauto,ro 0 0
Notați faptul că nu trebuie să existe spații între cuvintele defaults,noauto,ro din cel de-al patrulea câmp.
Pentru a verifica funcționalitatea, introduceți un CD și încercați să rulați
# mount /cdrom # aceasta va monta CD-ul în punctul de montare
# ls -alF /cdrom # aceasta va afișa directorul rădăcină din CD
# umount /cdrom # aceasta va demonta CD-ul
Apoi, rulați
# apt-cdrom add
pentru fiecare CD-ROM Debian binar pe care îl aveți, pentru a adăuga date despre fiecare CD în baza de date APT.
Unealta recomandată pentru actualizearea între versiunile Debian GNU/Linux este
aptitude. Aceast program ia decizii mai bune la instalarea
pachetelor decât apt-get.
Nu uitați să montați toate partițiile necesare (în special partițiile root și
/usr) în mod "read-write", cu o comandă ca:
# mount -o remount,rw /mountpoint
Apoi ar trebui să verificați încă o dată dacă intrările din sursa APT (din
/etc/apt/sources.list) se referă fie la
"sarge" sau la "stable". Notă:
liniile sursă pentru un CD-ROM se vor referi deseori la
"unstable"; chiar dacă poate fi confuz, nu ar
trebui să le modificați.
Este foarte recomandat să utilizați programul /usr/bin/script
pentru a înregistra sesiunea de actualizare. În cazul în care intervine o
problemă veți avea un istoric a ceea ce s-a întâmplat, iar dacă este nevoie,
veți putea oferi informații exacte când raportați problema. Pentru a porni
înregistrarea, tastați:
# script -a ~/actualizare-sarge.typescript
sau ceva similar. Nu plasați fișierul typescript într-un director temporar,
cum ar fi /tmp sau /var/tmp (fișierele din aceste
directoare pot fi șterse în timpul actualizării sau repornirii sistemului).
Fișierul typescript vă va permite de asemena să consultați informația care a defilat în afara ecranului. Puteți schimba la VT2 (utilizând alt-F2) și după ce vă autentificați utilizați ~root/actualizare-sarge.typescript pentru a vizualiza fișierul.
După terminarea actualizării, puteți opri script tastând
exit la prompt.
Mai întâi trebuie descărcată lista pachetelor disponibile pentru noua versiune. Aceasta se efectuează executând [2]:
apt-get update
Testele de actualizare au arătat faptul că versiunea aptitude din
sarge este mai bună la rezolvarea dependențelor complexe în timpul actualizării
decât fie apt-get sau versiunea aptitude din woody.
Ar trebui astfel actualizat mai întâi utilizând:
# aptitude install aptitude
Vi se va afișa o listă a schimbărilor care trebuiesc efectuate și vi se va solicita confirmarea lor. Ar trebui să analizați cu atenție schimbările propuse, în special pachetele care vor fi eliminate.
În anumite cazuri, dacă un număr mare de pachete este afișat pentru
dezinstalare, ați putea să reduceți din listă prin "pre-actualizarea"
altor pachete pe lângă aptitude. Un exemplu poate clarifică
aceasta. În timpul testelor de actualizare pentru sisteme cu KDE instalat, am
observat că acest pas ar cauza dezinstalarea unui număr mare de pachete KDE
și/sau perl. Soluția s-a dovedit a fi install aptitude perl, în
locul install aptitude.
Dacă aveți doc-base instalat, va trebui să îl actualizați
înaintea sistemului. Motivul este că ar putea eșua actualizarea simultană cu
perl. Puteți afla dacă este instalat, utilizând:
# dpkg -l doc-base
Dacă linia din rezultat începe cu "i", atunci este instalat și trebuie actualizat înainte de a continua.
# aptitude install doc-base
Sunteți acum gata pentru a continua cu partea principală a actualizarii. Executați:
# aptitude -f --with-recommends dist-upgrade
Aceasta va efectua o actualizare completă a sistemului, instalând cele mai noi
versiuni disponibile ale tuturor pachetelor și rezolvând toate dependențele
pachetelor. Dacă este necesar, va instala câteva pachete noi (de obicei
versiuni de biblioteci mai noi sau pachete redenumite) și va elimina orice
pachete conflictuale sau depășite (cum ar fi console-tools-libs).
Când actualizați de pe un set de CD-uri, vi se va solicita să introduceți CD-uri specifice la anumite momente din timpul actualizării. S-ar putea să trebuiască să introduceți de mai multe ori același CD, datorită pachetelor interdependente dispersate pe mai multe CD-uri.
Noile versiuni ale pachetelor instalate în prezent și care nu pot fi
actualizate fără a schimba starea de instalare a unui alt pachet vor rămâne la
versiunea prezentă (și afișate ca "held back"). Această situație
poate fi remediată fie prin utilizarea aptitude pentru a alege
aceste pachete pentru instalare sau prin aptitude -f install
package.
Opțiunea --fix-broken (sau doar -f) cauzează
apt să încerce să remedieze un sistem cu dependențe nerezolvate.
apt nu permite pachetelor cu dependențe nerezolvate să rămână
instalate pe un sistem.
Dacă o operație ce utilizează aptitude, apt-get sau
dpkg eșuează cu eroarea
E: Dynamic MMap ran out of room
înseamnă că spațiul cache implicit este insuficient. Puteți rezolva această
problemă fie prin eliminarea sau comentarea liniilor de care nu aveți nevoie
din /etc/apt/sources.list, fie prin mărirea dimensiunii
cache-ului. Dimensiunea cache-ului poate fi mărită prin setarea
APT::Cache-Limit în /etc/apt/apt.conf. Următoarea
comandă va seta o valoare suficientă pentru actualizare:
# echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf
Aceasta presupune că nu aveți setată în prealabil o valoare pentru această variabilă.
Uneori este necesar să activați opțiunea APT::Force-LoopBreak în APT pentru a
putea elimina temporar un pachet esențial, datorită unei bucle
Conflicts/Pre-Depends. aptitude vă va avertiza de aceasta și va
opri actualizarea. Puteți remedia această situație specificând opțiunea
-o APT::Force-LoopBreak=1 în linia de comandă
aptitude.
Este posibil ca structura dependențelor dintr-un sistem să fie coruptă într-o
asemenea măsură încât să necesite intervenție manuală. În mod obișnuit aceasta
înseamnă utilizarea aptitude sau a lui:
# dpkg --remove numepachet
pentru a elimina pachetele problemă, sau:
# aptitude --fix-broken install
# dpkg --configure --pending
În cazuri extreme s-ar putea să fie nevoie să forțați o reinstalare cu o comandă cum ar fi:
# dpkg --install /cale/către/numepachet.deb
Dacă actualizați de la un sistem woody "pur" nu ar trebui să apară conflicte de fișiere, însă acestea pot interveni dacă aveți pachete neoficiale "backportate". Un conflict de fișiere poate rezulta într-o eroare de genul:
Dezarhivez înlocuitorul <pachetul-foo> ...
dpkg: eroare la prelucrarea <nume-pachet-pentru-foo> (--unpack):
încercare de suprascriere a `<un-nume-de-fișier>',
care este și în pachetul <pachetul-bar>
Puteți încerca să rezolvați un conflict de fișiere prin eliminarea forțată a pachetelor menționate la sfârșitul mesajului de eroare:
# dpkg -r --force-depends numepachet
După ce ați fixat problema, ar trebui să puteți continua actualizarea prin repetarea comenzilor aptitude descrise mai sus.
În timpul actualizării vi se vor pune întrebări legate de configurarea sau
reconfigurarea anumitor pachete. La întrebările despre înlocuirea fișierelor
din directoarele /etc/init.d, /etc/terminfo sau a
fișierului /etc/manpath.config de obicei trebuie să răspundeți
afirmativ, pentru a asigura consistența sistemului. Puteți oricând să reveniți
la versiunile anterioare, acestea fiind salvate cu extensia
.dpkg-old.
Dacă nu știți sigur ce să faceți, scrieți numele pachetului sau fișierului și amânați rezolvarea problemelor pentru mai târziu. Puteți căuta în fișierul typescript informația afișată în timpul actualizării.
Când aptitude dist-upgrade s-a finalizat, actualizarea "formală" este gata, însă există câteva lucruri care ar trebui rezolvate înainte de repornire.
Citiți /usr/share/doc/xfree86-common/README.Debian-upgrade.gz
pentru mai multe informații despre actualizarea pachetelor X Window System.
Aceste informații sunte relevante pentru utilizatorii tuturor versiunilor
precedente Debian. Pe scurt, trebuie să-l citiți.
Notați faptul că nucleul Linux nu a fost actualizat prin aceste
operații. Veți dori să faceți acest lucru fie prin instalarea unuia dintre
pachetele kernel-image-*, fie prin compilarea din surse a unui
nucleu personalizat.
Debian GNU/Linux vine cu o versiune de nucleu 2.4.27 ce face parte din seria 2.4, seria precedentă de nuclee Linux stabile. Veți dori probabil să utilizați seria 2.6 de nucleu pentru suportul hardware și performanța îmbunătățite.
Totuși, este recomandabil să nu actualizați la un nucleu 2.6 ca parte a actualizării de la woody la sarge. Anumite probleme asociate cu actualizarea la 2.6 sunt documentate în Actualizarea la un nucleu 2.6, Secțiunea 5.2.
Pentru a actualiza nucleul trebuie mai întâi să alegeți nucleul cel mai potrivit pentru subarhitectura dvs. O listă cu nuclee disponibile pentru instalare poate fi găsită cu:
# apt-cache search ^kernel-image
Ar trebui apoi să utilizați aptitude install pentru a-l instala. Odată ce noul nucleu este instalat, ar trebui să reporniți sistemul cu proxima ocazie pentru a beneficia de noile facilități.
Vă rugăm să notați faptul că sistemul de instalare al woody (și al versiunilor anterioare) nu instala nucleul ca un pachet în sistemul dvs. Aceasta s-a schimbat în sarge, de acum puteți instala pachete virtuale pentru a urmări schimbările pachetelor nucleu. Aceste pachete sunt denumite kernel-image-VERSIUNE-ARHITECTURĂ, VERSIUNE corespunzând numărului versiunii nucleului (2.4 sau 2.6) iar ARHITECTURĂ corespunzând arhitecturilor suportate. Dacă doriți să aveți suport de securitate pentru nucleu integrat în administrarea pachetelor, vă rugăm să instalați după actualizare pachetul de nucleu cel mai potrivit pentru hardware-ul dvs.
Pentru cei cu spirit de aventură, există o modalitate facilă de a compila
propriul nucleu pe Debian GNU/Linux. Instalați kernel-package și
citiți documentația din /usr/share/doc/kernel-package.
Odată cu introducerea a mii de pachete noi, sarge retrage și omite mai mult de două mii de pachete vechi din woody. Pentru aceste pachete depășite nu există actualizări. Cu toate că nimic nu vă împiedică să folosiți un pachet depășit, proiectul Debian în mod normal va întrerupe suportul de securitate la un an după lansarea sarge[3], neoferind alt suport în acest timp. Este recomandabil să le înlocuiți cu alternativele disponibile, dacă acestea există.
Există multe motive pentru care pachetele au fost eliminate din distribuție: nu mai sunt întreținute de către autorii originali, nu mai există un dezvoltator Debian interesat în întreținerea pachetelor, funcționalitatea oferită a fost înlocuită de alt software (sau o nouă versiune), sau nu mai sunt considerate a fi potrivite pentru sarge datorită problemelor avute. În cazul din urmă, pachetele ar putea fi încă prezente în distribuția "unstable".
Detectarea pachetelor depășite într-un sistem actualizat este ușoară, deoarece
vor fi marcate ca atare în interfețele de administrare a pachetelor. Dacă
folosiți aptitude, veți observa o listă a acestor pachete în
secțiunea "Obsolete and Locally Created Packages".
dselect oferă o secțiune similară, însă afișarea poate diferi.
Dacă ați utilizat aptitude pentru a instala manual pachete în
woody, acestea va reține faptul că au fost instalate manual. De asemenea,
aptitude, spre deosebire de deborphan, nu va marca cu
starea "obsolete" pachetele pe care le-ați instalat manual, spre
deosebire de cele instalate automat ca dependențe.
Există unelte adiționale pe care le puteți folosi pentru a detecta pachetele
depășite, cum ar fi deborphan, debfoster sau
cruft. deborphan este foarte recomandat, deși
implicit va raporta doar bibliotecile depășite, adică pachetele din secțiunile
"libs" sau "oldlibs" care nu sunt utilizate de alte
pachete. Nu dezinstalați pachetele prezentate de aceste unelte fără a vă gândi
bine, mai ales dacă folosiți opțiunile agresive, neimplicite, ce sunt
succeptibile de "pozitive false". Este foarte recomandat să
analizați pachetele sugerate pentru dezinstalare (ex: conținutul, dimensiunea
și descrierea) înainte de a le dezinstala.
Debian Bug Tracking System
oferă deseori informații suplimentare despre motivele pentru care un pachet a
fost eliminat. Ar trebui să analizați atât arhiva problemelor pentru pachetul
în sine, cât și pentru pseudo-pachetul
ftp.debian.org.
Anumite pachete din woody au fost împărțite în mai multe pachete în sarge, deseori pentru a îmbunătăți mentenabilitatea sistemului. Pentru a ușura actualizarea în aceste cazuri, sarge oferă pachete "dummy": pachete goale care au același nume ca versiunea din woody cu dependințe ce cauzează noile pachete să fie instalate. Aceste pachete "dummy" sunt considerate depășite și după actualizare pot fi dezinstalate fără probleme.
Cele mai multe (însă nu toate) dintre descrierile pachetelor "dummy"
indică scopul lor. Descrierile pachetelor "dummy" nu sunt uniforme,
totuși puteți folosi deborphan cu opțiunea --guess
pentru a le detecta în sistemul dvs. Notați faptul că anumite pachete
"dummy" nu sunt destinate dezinstalării după actualizare, ci sunt
utilizate pentru a urmări în timp versiunea curentă a unui program.
[ înapoi ] [ Sumar ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ A ] [ înainte ]
Note de lansare pentru Debian GNU/Linux 3.1 (`sarge'), S/390
$Id: release-notes.ro.sgml,v 1.3 2005/06/03 16:09:26 jseidel Exp $debian-doc@lists.debian.org