Cuprins
Vă sugerăm ca înainte de actualizare să citiți informațiile din Cap. 5, Probleme în jessie de care ar trebui să știți. Acel capitol tratează probleme potențiale care nu sunt legate direct de procesul de actualizare, dar care ar putea fi important de știut înainte să începeți.
Înainte de a vă actualiza sistemul, este indicat să faceți o copie de siguranță completă, sau cel puțin a datelor sau a configurațiilor pe care nu vă permiteți să le pierdeți. Uneltele și procesele de actualizare sunt foarte fiabile, însă o problemă hardware apărută în mijlocul actualizării poate afecta sever un sistem.
Cele mai importate lucruri de copiat sunt conținutul lui
/etc
, al lui /var/lib/dpkg
, al lui
/var/lib/apt/extended_states
și rezultatul comenzii
dpkg --get-selections "*"
(ghilimelele sunt
importante). Dacă folosiți aptitude pentru administrarea
pachetelor pe sistemul dumneavoastră, va trebui să salvați și
/var/lib/aptitude/pkgstates
.
Procesul de actualizare, în sine, nu modifică nimic în directorul
/home
. Totuși, unele aplicații (cum ar fi unele
componente ale suitei Mozilla, mediile grafice GNOME și KDE) sunt cunoscute
pentru faptul că suprascriu valorile existente ale configurațiilor
utilizatorilor cu noi valori implicite în momentul în care o versiune nouă a
aplicației este pornită pentru prima oară de către utilizator. Ca măsură de
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. Copia ar putea să vă ajute să recreați vechile
configurații. Probabil veți dori să informați și utilizatorii în legătură cu
această problemă.
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 de acces necesare.
Operația de actualizare trebuie să respecte câteva precondiții; va trebui să verificați dacă sunt respectate înainte de actualizare.
Este o idee bună să vă informați din timp toți utilizatorii despre actualizările planificate, chiar dacă utilizatorii ce vă accesează sistemul prin conexiuni ssh n-ar trebui să sesizeze prea multe în timpul actualizării și ar trebui să-și poată continua lucrul.
Dacă doriți să vă luați măsuri suplimentare de precauție, faceți o copie de
siguranță sau demontați partiția /home
înainte de
actualizare.
Va trebui sa faceți o înnoire de nucleu odată cu trecerea la jessie, deci o repornire va fi necesară. În mod normal aceasta se face atunci când actualizarea este încheiată.
Pot exista servicii oferite de sistem, care sunt asociate cu pachete care vor fi incluse in actualizare. În acest caz țineți cont că aceste servicii vor fi oprite în timp ce pachetele asociate sunt înlocuite și configurate. În această perioadă, serviciile respective nu vor fi disponibile.
Timpul precis de indisponibilitate a acestor servicii variază în funcție de numărul de pachete înnoite în sistem și include de asemenea timpul necesar administratorului de sistem să răspundă la întrebările de configurare ale diverselor pachete înnoite (dacă există). Țineți cont că în cazul în care procesul de înnoire se face nesupraveghat și sistemul solicită indicații pe parcursul actualizării, este foarte posibil ca serviciile să fie indisponibile[1] pentru o perioadă de timp semnificativă.
Dacă sistemul de actualizat furnizează servicii critice pentru utilizatori sau rețea[2] puteți reduce timpul de indisponibilitate dacă faceți o înnoire minimală, cum este descrisă în Secțiune 4.4.4, „Actualizare minimală de sistem”, urmată de o înnoire a nucleului și o repornire și apoi înnoiți pachetele asociate cu serviciile critice. Înnoiți aceste pachete înainte de înnoirea completă a sistemului, descrisă în Secțiune 4.4.5, „Actualizarea sistemului ”. În acest fel puteți să vă asigurați că aceste servicii critice rulează și sunt disponibile pe durata întregului proces de înnoire și timpul cât sunt indisponibile este redus.
Deși Debian face tot posibilul ca sistemul să poată fi pornit în orice moment există un risc real să întâmpinați probleme la reinițializarea sistemului, după actualizare. Problemele potențial cunoscute sunt documentate aici și în următorul capitol al Notelor de lansare.
Din acest motiv are sens să vă asigurați că veți putea să recuperați sistemul în eventualitatea că acesta nu va mai putea reporni sau, în cazul sistemelor la distanță, nu va putea să activeze conexiunile la rețea.
Dacă faceți actualizarea de la distanță printr-o conexiune ssh este recomandabil să luați măsurile necesare pentru a putea accesa serverul printr-un terminal serial. Există posibilitatea ca după actualizarea nucleului și repornirea sistemului, să fie nevoie să reparați configurația sistemului printr-o consolă locală. De asemenea, dacă sistemul este repornit accidental în mijlocul actualizării există șansa să fie nevoie să recuperați folosind o consolă locală.
Generally we recommend using the rescue mode of the jessie Debian Installer. The advantage of using the installer is that you can choose between its many methods to find one that best suits your situation. For more information, please consult the section „Recovering a Broken System” in chapter 8 of the Installation Guide and the Debian Installer FAQ.
Dacă aceasta nu reușește, va trebui să porniți sistemul printr-o metodă
alternativă, astfel încât să-l puteți accesa și repara. O opțiune este să
folosiți o imagine specială pentru recuperare sau un Linux care rulează de
pe CD. După pornirea în acest fel ar trebui să puteți monta sistemul de
fișiere rădăcină și să faceți chroot
în el pentru a
investiga și repara problema.
Pachetul initramfs-tools
include un
interpretor de comenzi minimal[3] în
imaginile initrd pe care le generează. Dacă, de exemplu, imaginea initrd nu
poate să monteze sistemul de fișiere rădăcină, veți fi transferat la acest
interpretor de comenzi, care dispune de comenzi de bază pentru a putea
detecta și, în măsura posibilităților, de a rezolva problema.
Lucruri uzuale pe care ar trebui să le verificați: prezența
fișierelor-dispozitiv corecte în /dev
, care module sunt
încărcate (cat /proc/modules
), verificarea rezultatului
comenzii dmesg pentru erori la încărcarea
driverelor. Rezultatul comenzii dmesg va arăta și care
fișiere-dispozitiv au fost alocate discurilor. Ar trebui să verificați
rezultatul comenzii echo $ROOT
pentru a vă asigura că
sistemul de fișiere rădăcină este pe dispozitivul pe care vă așteptați să
fie.
Dacă reușiți să corectați problema, puteți ieși din consola de depanare cu
comanda exit
și apoi se va continua procesul de
inițializare de la punctul în care a eșuat. Desigur, va trebui să reparați
problema reală și să regenerați imaginea initrd pentru ca următoarea
inițializare a sistemului să nu eșueze la fel.
If the boot fails under systemd, it is possible to obtain a debug root shell
by changing the kernel command line. If the basic boot succeeds, but some
services fail to start, it may be useful to add
systemd.unit=rescue.target
to the kernel parameters.
Otherwise, the kernel parameter
systemd.unit=emergency.target
will provide you with a
root shell at the earliest possible point. However, this is done before
mounting the root file system with read-write permissions. You will have to
do that manually with:
mount -o remount,rw /
More information on debugging a broken boot under systemd can be found in the Diagnosing Boot Problems article.
If everything else fails, you might be able to boot via the old sysvinit
system. This requires that sysvinit
is still installed and the binary /lib/sysvinit/init
is
included in your initramfs. If these requirements are met, add
init=/lib/sysvinit/init
on the kernel command-line and it
will boot with the sysvinit binary.
Actualizarea distribuției ar trebui făcută fie local dintr-o consolă virtuală în mod text (sau printr-o conexiune la un terminal serial), fie de la distanță printr-o conexiune ssh.
Important | |
---|---|
Dacă utilizați servicii VPN (ca |
Pentru a avea încă o măsură de siguranță când actualizați de la distanță, vă sugerăm să rulați procesul de actualizare într-o consolă virtuală furnizată de programul screen, lucru care vă va permite să vă reconectați în siguranță și oferă siguranța că procesul de instalare nu va fi întrerupt, chiar dacă procesul care întreține conexiunea la distanță eșuează.
Important | |
---|---|
Nu actualizați sistemul folosind o sesiune telnet, rlogin, rsh, sau dintr-o sesiune X administrată de xdm, gdm sau kdm, etc. pe sistemul pe care îl actualizați. Acest lucru este necesar deoarece oricare dintre aceste servicii poate fi oprit în timpul actualizării, ceea ce poate rezulta într-un sistem inaccesibil, actualizat doar parțial. Utilizarea aplicației GNOME update-manager pentru actualizarea la versiuni noi de sistem este descurajată, deoarece acest utilitar depinde de sesiunea de birou curentă. |
Procedeul de actualizare descris în acest capitol a fost conceput pentru actualizări de la sisteme wheezy „pure”, fără pachete din surse terțe. Pentru o mai mare fiabilitate a procedeului de actualizare veți dori să ștergeți pachetele provenite din surse terțe înainte să începeți actualizarea.
Direct upgrades from Debian releases older than 7 (wheezy) are not supported. Please follow the instructions in the Release Notes for Debian 7 to upgrade to 7 first.
De asemenea, se pleacă de la premiza că ați actualizat până la ultima versiune minoră a lui wheezy. Dacă nu ați făcut acest lucru sau dacă aveți dubii, urmați instrucțiunile din Secțiune A.1, „Actualizarea sistemului wheezy”.
În anumite cazuri, dacă ați folosit apt-get să instalați pachete în loc să folosiți aptitude, aptitude poate considera un pachet ca fiind nefolosit și să-l înregistreze pentru ștergere. În general, ar trebui să vă asigurați că sistemul este adus la zi și curat, înainte de a continua procesul de actualizare.
Din această cauză ar trebui să verificați dacă sunt acțiuni în așteptare în
managerul de pachete aptitude. Dacă un pachet este
programat pentru ștergere sau actualizare în managerul de pachete ar putea
avea un impact negativ asupra procedeului de actualizare. Țineți cont că
acest lucru nu poate fi corectat decât dacă
sources.list
se referă încă la
wheezy și nu la stable
sau jessie, vedeți Secțiune A.2, „Verificarea listei de surse”.
Pentru a face această verificare porniți aptitude în „modul visual” și apăsați g (de la „Go”). Dacă vă arată vreo acțiune ar trebui să revizuiți și să anulați sau să efectuați acțiunile sugerate. Dacă nu este sugerată nici o acțiune va fi afișat mesajul „No packages are scheduled to be installed, removed, or upgraded” (sau „Nici un pachet nu este programat sa fie instalat, șters sau înnoit”).
Dacă ați configurat APT să instaleze anumite pachete dintr-o distribuție
diferită de cea stabilă (ex. din testare), ar putea fi nevoie să schimbați
configurația alegerilor selective APT (prezentă în
/etc/apt/preferences
și
/etc/apt/preferences.d/
) pentru a permite actualizarea
pachetelor la versiunile din noua versiune stabilă. Mai multe informații
despre alegeri selective 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ă vă va afișa eventualele pachete care au starea de jumătate-instalat sau eșec-configurare, precum și cele cu o stare eronată.
# dpkg --audit
Ați putea, de asemenea, să inspectați starea tuturor pachetelor de pe sistemul dumneavoastră utilizând aptitude sau folosind comenzi precum
# dpkg -l | pager
sau
# dpkg --get-selections "*" > ~/pachete-curente.txt
Este preferabil să ștergeți marcajul „păstrat” al oricărui pachet în această stare, înaintea actualizării. Dacă un pachet esențial care trebuie actualizat este „păstrat”, actualizarea va eșua.
A se reține că aptitude folosește o metodă diferită de a marca pachetele care sunt păstrate față de apt-get și dselect. Puteți identifica pachetele păstrate pentru aptitude cu
# aptitude search "~ahold"
Dacă vreți să verificați ce pachete aveți păstrate pentru apt-get, ar trebui să folosiți
# dpkg --get-selections | grep 'hold$'
Dacă ați modificat și recompilat un pachet local și nu l-ați redenumit sau nu i-ați atașat o epocă în versiune, trebuie să îl plasați pe „păstrat” pentru a preveni actualizarea sa.
Starea „păstrat” pentru apt-get poate fi schimbată folosind:
# echo nume_pachet
hold | dpkg --set-selections
Înlocuiți hold
cu install
pentru a
demarca starea „hold”.
Dacă este ceva ce trebui rezolvat, cel mai bine vă asigurați că
sources.list
încă se referă la wheezy după
cum este explicat în Secțiune A.2, „Verificarea listei de surse”.
Dacă aveți secțiunea proposed-updates
enumerată în
fișierul /etc/apt/sources.list
, ar fi bine să o
ștergeți înainte de a încerca să actualizați sistemul. Aceasta este o măsură
de precauție pentru a reduce probabilitatea de apariție a unor conflicte.
Dacă aveți pachete non-Debian pe sistemul dumneavoastră, 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 jessie și să schimbați
linia cu sursa corespunzătoare la același moment cu schimbarea surselor
pentru pachetele Debian.
Some users may have unofficial backported „newer” versions of packages that are in Debian installed on their wheezy system. Such packages are most likely to cause problems during an upgrade as they may result in file conflicts[4]. Secțiune 4.5, „Probleme posibile în timpul actualizării” has some information on how to deal with file conflicts if they should occur.
Înainte de a începe actualizarea trebuie să ajustați fișierul de configurare
apt
pentru listele de pachete,
/etc/apt/sources.list
.
apt
va lua în considerare toate
pachetele care pot fi găsite prin intermediul unei linii
„deb
” și va instala pachetul cu cea mai mare
versiune, stabilind prioritatea în funcție de poziția liniilor (astfel, în
cazul mai multor locații ar trebui să listați în primul rând un harddisk
local, după care CD-uri și după aceea situri-oglindă
HTTP/FTP).
O versiune poate fi referită deseori atât prin numele de cod (de ex:
wheezy
, jessie
) 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. Evident, aceasta înseamnă 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 pregătită 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 dintr-un loc apropiat de dumneavoastră, din punct de
vedere a rețelei în care vă aflați.
Serverele Debian alternative HTTP sau FTP pot fi găsite la https://www.debian.org/distrib/ftplist (secțiunea „Lista completă a siturilor-oglindă Debian”). Locațiile alternative 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/
. Când inspectați această
locație cu un navigator de web sau un client de FTP, veți observa că
directoarele principale sunt organizate astfel:
http://mirrors.kernel.org/debian/dists/jessie/main/binary-amd64/... http://mirrors.kernel.org/debian/dists/jessie/contrib/binary-amd64/...
Pentru a utiliza această locație cu apt
, trebuie să adăugați această linie la
fișierul dumneavoastră sources.list
:
deb http://mirrors.kernel.org/debian jessie main contrib
A se observa faptul că „dists
” este adăugat
implicit, iar argumentele de după numele versiunii sunt utilizate pentru a
expanda calea în directoare multiple.
După ce adăugați noile surse, dezactivați liniile
„deb
” care existau înainte în
sources.list
, prin plasarea unui diez
(#
) la începutul lor.
În loc să folosiți situri-oglindă HTTP sau FTP, ați putea dori să modificați
/etc/apt/sources.list
pentru a folosi o sursă pe un
disc local (poate montat cu NFS).
De exemplu, locația dumneavoastră cu pachete poate fi în
/var/ftp/debian/
, având directoarele principale astfel:
/var/ftp/debian/dists/jessie/main/binary-amd64/... /var/ftp/debian/dists/jessie/contrib/binary-amd64/...
Pentru a utiliza această locație cu apt
, trebuie să adăugați această linie la
fișierul dumneavoastră sources.list
:
deb file:/var/ftp/debian jessie main contrib
A se observa faptul că „dists
” este adăugat
implicit, iar argumentele de după numele versiunii sunt utilizate pentru a
expanda calea în directoare multiple.
După ce adăugați noile surse, dezactivați liniile
„deb
” care existau înainte în
sources.list
, prin plasarea unui diez
(#
) la începutul lor.
Dacă doriți să folosiți doar CD-uri (sau DVD-uri sau
discuri Blu-ray), dezactivați liniile „deb
”
care existau înainte în sources.list
, prin plasarea
unui diez (#
) la începutul lor.
Make sure there is a line in /etc/fstab
that enables
mounting your CD-ROM drive at the /media/cdrom
mount
point. For example, if /dev/sr0
is your CD-ROM drive,
/etc/fstab
should contain a line like:
/dev/sr0 /media/cdrom auto noauto,ro 0 0
A se reține că nu trebuie să existe nici un spațiu
între cuvintele noauto,ro
din cel de-al patrulea câmp.
Pentru a verifica funcționarea, introduceți un CD și încercați să rulați
# mount /media/cdrom # this will mount the CD to the mount point # ls -alF /media/cdrom # this should show the CD's root directory # umount /media/cdrom # this will unmount the CD
Apoi, rulați
# apt-cdrom add
pentru fiecare CD-ROM Debian cu binare pe care îl aveți, pentru a adăuga date despre fiecare CD în baza de date APT.
Metoda recomandată pentru actualizarea de la versiuni Debian precedente este folosirea utilitarului pentru administrarea pachetelor apt-get. În lansările anterioare utilitarului aptitude era recomandat pentru acest scop, dar versiuni recente ale apt-get oferă același nivel de funcționalitate și se pare că produce în mai multe cazuri rezultatul dorit la actualizări.
Nu uitați să montați toate partițiile necesare (în special partiția rădăcină
și partiția /usr
) în mod citire-scriere, cu o comandă
ca:
# mount -o remount,rw /punct_de_montare
În continuare ar trebui să verificați că sursele APT (din
/etc/apt/sources.list
) se referă la
„jessie
” sau la
„stable
”. Nu ar trebui să fie nici o sursă
care se referă la wheezy.
Notă | |
---|---|
Liniile de surse pentru CD-ROM pot uneori conține
„ |
Este recomandat să utilizați programul /usr/bin/script pentru a înregistra sesiunea de actualizare. În cazul în care intervine vreo 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 -t 2>~/upgrade-jessieetapă
.time -a ~/upgrade-jessieetapă
.script
sau similar. Dacă trebuie să porniți înregistrarea din nou (ex. dacă trebuie
să reporniți sistemul) folosiți valori diferite pentru
etapă
pentru a indica ce etapă a actualizării
este înregistrată. Nu puneți fișierul script într-un director temporar cum
ar fi /tmp
sau /var/tmp
(fișiere
în aceste directoare ar putea fi șterse în timpul actualizării sau la o
repornire).
Fișierul script vă va permite, de asemenea, să consultați informația care a
defilat în afara ecranului. Dacă sunteți la consola sistemul puteți schimba
la VT2 (folosind Alt-F2) și, după ce vă
autentificați, utilizați less -R
~root/actualizare-jessie.script
pentru a vedea fișierul.
După terminarea actualizării, puteți opri comanda script
tastând exit
la prompt.
Dacă ați folosit opțiunea -t a lui script puteți folosi programul scriptreplay pentru a reda întreaga sesiune:
# scriptreplay ~/actualizare-jessie.time ~/actualizare-jessie.script
Mai întâi trebuie preluată lista pachetelor disponibile în noua versiune. Aceasta se face cu:
# apt-get update
Înainte de a începe actualizarea completă, așa cum este descrisă în Secțiune 4.4.5, „Actualizarea sistemului ”, trebuie să vă asigurați că aveți suficient
spațiu pe disc. În primul rând, orice pachet necesar pentru instalare, care
este descărcat prin rețea este stocat în
/var/cache/apt/archives
(și subdirectorul
partial/
în timpul descărcării), deci trebuie să aveți
suficient spațiu pe sistemul de fișiere pe care se află
/var/
pentru a descărca pachetele ce vor fi instalate
pe sistemul dumneavoastră. După descărcare veți avea nevoie de mai mult
spațiu pe alte partiții de sistem pentru a instala atât pachetele
actualizate (care e posibil să conțină binare mai mari sau mai multe date)
cât și pachetele noi care vor fi aduse pentru actualizare. Dacă sistemul
dumneavoastră nu are suficient spațiu este posibil să rămâneți cu o
actualizare incompletă. În această situație, recuperarea este foarte
dificilă.
apt-get vă poate arăta informații detaliate despre spațiul necesar pentru instalare. Înainte să începeți actualizarea, puteți vedea această estimare folosind comanda:
# apt-get -o APT::Get::Trivial-Only=true dist-upgrade [ ... ] XXX actualizate, XXX noi instalate, XXX de îndepărtat și XXX neactualizate. Trebuie descărcate xx.xMB de arhive. După această operațiune, AAAMB spațiu suplimentar va fi folosit.
Notă | |
---|---|
Rulând această comandă la începutul procedeului de actualizare ar putea genera o eroare, din motive descrise în următoarele secțiuni. În acest caz va trebui să așteptați până ați făcut o actualizare minimală conform Secțiune 4.4.4, „Actualizare minimală de sistem” înainte de a rula această comandă pentru a estima spațiul pe disc. |
Dacă nu aveți spațiu suficient pentru actualizare, apt-get vă va avertiza cu un mesaj asemănător cu:
E: Nu aveți spațiu suficient în /var/cache/apt/archives/.
În această situație eliberați spațiu înainte de actualizare. Aveți mai multe opțiuni:
Ștergeți pachetele care au fost descărcate anterior pentru a fi instalate
(în /var/cache/apt/archive
). Curățarea depozitului
temporar de pachete, cu comanda apt-get clean va șterge
toate fișierele descărcate anterior.
Îndepărtați pachete uitate. Dacă ați utilizat aptitude sau apt-get pentru a instala manual pachete în wheezy, acesta va reține faptul că au fost instalate manual și va putea marca drept inutile pachetele care au fost instalate doar ca dependențe și nu mai sunt necesare deoarece pachetele care aveau nevoie de ele au fost șterse. În consecință nu va marca pentru ștergere pachetele pe care le-ați instalat manual. Pentru a îndepărta pachetele instalate automat și care nu mai sunt folosite, executați:
# apt-get autoremove
Puteți folosi și deborphan, debfoster sau cruft pentru a găsi pachete inutile. Nu dezinstalați pachetele prezentate de aceste unelte fără o examinare atentă, mai ales dacă folosiți opțiunile agresive, neimplicite, care sunt susceptibile de a da rezultate eronate cu privire la starea pachetelor. Este indicat să analizați pachetele sugerate pentru dezinstalare (ex: conținutul, dimensiunea și descrierea) înainte de a le dezinstala.
Îndepărtați pachete care ocupă prea mult loc și nu sunt necesare imediate
(le puteți instala din nou după actualizare). Dacă aveți instalat pachetul
popularity-contest
, puteți folosi
popcon-largest-unused pentru a afișa pachetele nefolosite
care ocupă cel mai mult spațiu. Puteți găsi pachetele care ocupă cel mai
mult spațiu cu dpigs (disponibil în pachetul debian-goodies
) sau cu wajig
(rulând wajig size
). Puteți folosi și aptitude
. Porniți aptitude în
„modul vizual”, alegeți
→
( → în varianta engleză), apăsați tasta
l și introduceți ~i
, apăsați
S și introduceți ~installsize
iar ca
rezultat veți obține o listă cu care veți putea lucra.
Din sistem se pot șterge fișierele de traducere și localizare, în caz că nu
mai sunt necesare. Se poate instala localepurge
și configura astfel încât doar
câteva din localizări să fie păstrate în sistem. Aceasta va reduce din
spațiul ocupat în /usr/share/locale
.
Mutați temporar pe un alt sistem sau ștergeți permanent fișierele jurnal de
sistem din /var/log/
.
Folosiți un /var/cache/apt/archives
temporar: puteți
folosi un director pentru depozitul temporar de pe alt sistem de fișiere
(dispozitiv de stocare USB, harddisk de împrumut, un alt
sistem de fișiere în utilizare, ...)
Notă | |
---|---|
Nu folosiți o partiție NFS deoarece conexiunea la rețea ar putea fi întreruptă în timpul actualizării. |
De exemplu, dacă aveți un dispozitiv USB montat la
/media/usbkey
:
ștergeți pachetele care au fost descărcate anterior spre instalare:
# apt-get clean
copiați directorul /var/cache/apt/archives
pe
dispozitivul USB:
# cp -ax /var/cache/apt/archives /media/usbkey/
montați directorul pentru depozit temporar peste cel curent:
# mount --bind /media/usbkey/archives /var/cache/apt/archives
după actualizare restaurați directorul
/var/cache/apt/archives
original:
# umount /media/usbkey/archives
ștergeți /media/usbkey/archives
rămas.
puteți crea directorul pentru depozit temporar pe orice sistem de fișiere montat pe sistemul dumneavoastră.
Executați o actualizare minimală a sistemului (citiți Secțiune 4.4.4, „Actualizare minimală de sistem”) sau actualizări parțiale a sistemului urmată de o actualizare completă. Acest lucru va face posibil să actualizați sistemul parțial și vă va permite curățirea depozitului temporar de pachete înainte de actualizarea completă.
Țineți cont că pentru a putea șterge pachete în siguranță se recomandă să
treceți sources.list
înapoi la wheezy după
cum este descris în Secțiune A.2, „Verificarea listei de surse”.
În unele cazuri, dacă faceți direct o actualizare completă (așa cum e descrisă mai jos), puteți șterge un număr mare de pachete pe care ați dori să le păstrați. Așadar vă recomandăm o actualizare în doi pași, mai întâi o actualizare minimală pentru a depăși conflictele, apoi o actualizare completă așa cum este descrisă în Secțiune 4.4.5, „Actualizarea sistemului ”.
Pentru a face acest lucru mai întâi rulați:
# apt-get upgrade
Notă | |
---|---|
Procesul de actualizare pentru unele versiuni precedente recomanda utilizarea aptitude pentru actualizare. Această unealtă nu este recomandată pentru actualizări de la wheezy la jessie. |
Aceasta are ca efect actualizarea acelor pachete care pot fi actualizate fără ca alte pachete să fie șterse sau instalate.
Actualizarea minimală a sistemului poate fi folositoare și atunci când sistemul nu dispune de spațiu suficient și nu se poate face o actualizare completă datorită constrângerilor de spațiu.
Dacă pachetul apt-listchanges
este
instalat acesta va afișa informații importante despre pachetele actualizate
(în configurația implicită). După ce ați citit apăsați q
pentru a ieși din cititor și a continua actualizarea.
Odată executați pașii anteriori, sunteți gata să continuați cu partea principală a actualizării. Executați:
# apt-get dist-upgrade
Notă | |
---|---|
Procesul de actualizare pentru unele versiuni precedente recomanda utilizarea aptitude pentru actualizare. Această unealtă nu este recomandată pentru actualizări de la wheezy la jessie. |
Aceasta va efectua o actualizare completă a sistemului, instalând cele mai noi versiuni disponibile ale tuturor pachetelor și va rezolva toate posibilele schimbări de dependențe dintre pachetele din diferitele versiuni. Dacă este necesar, va instala câteva pachete noi (de obicei, versiuni de biblioteci mai noi sau pachete redenumite) și va elimina orice pachete învechite care sunt în conflict.
Când actualizați de pe un set de CD-uri (sau DVD-uri), vi se va cere să introduceți anumite CD-uri la diverse momente în 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.
Pachetele deja instalate care nu pot fi înnoite la versiuni mai noi fără a
schimba statutul instalării altui pachet vor fi lăsate la versiunea curentă
(marcate ca „held back”). Acest lucru poate fi rezolvat prin
utilizarea comenzii aptitude și alegerea acestor pachete
pentru instalare sau prin rularea comenzii apt-get install
.
pachet
Secțiunile următoare descriu probleme cunoscute care pot apărea pe timpul procesului de actualizare la jessie.
În anumite cazuri pasul apt-get dist-upgrade poate să eșueze după descărcarea pachetelor cu:
E: Could not perform immediate configuration on 'package
'. Please see man 5 apt.conf under APT::Immediate-Configure for details.
Dacă se întâmplă acest lucru, rularea comenzii apt-get dist-upgrade -o APT::Immediate-Configure=0 ar putea permite continuarea actualizării.
O altă posibilă ocolire a problemei ar fi să adăugați temporar surse pentru
wheezy și jessie în sources.list
și să
rulați apt-get update.
The upgrade process to jessie might ask for the removal of packages on the system. The precise list of packages will vary depending on the set of packages that you have installed. These release notes give general advice on these removals, but if in doubt, it is recommended that you examine the package removals proposed by each method before proceeding. For more information about packages obsoleted in jessie, see Secțiune 4.10, „Pachete învechite”.
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
Conflict/Pre-Dependență. apt-get vă va avertiza în
legătură cu aceasta și va abandona actualizarea. Puteți ocoli această
situație precizând opțiunea -o APT::Force-LoopBreak=1
în
linia de comandă a lui apt-get.
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 apt-get sau
# dpkg --remove nume_pachet
pentru a elimina pachetele problemă, sau
# apt-get -f 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/nume_pachet.deb
Dacă actualizați de la un sistem wheezy „pur” nu ar trebui să apară conflicte de fișiere, însă acestea pot interveni dacă aveți pachete neoficiale de tip backport. Un conflict de fișiere poate rezulta într-o eroare de genul:
Unpacking<pachet-oarecare>
(from<fișier-pachet-oarecare>
) ... dpkg: error processing<pachet-oarecare>
(--install): trying to overwrite `<ceva-fișier>
', which is also in package<alt-pachet>
dpkg-deb: subprocess paste killed by signal (Broken pipe) Errors were encountered while processing:<pachet-oarecare>
Puteți încerca să rezolvați un conflict de fișiere prin eliminarea forțată a pachetelor menționate în ultima linie a mesajului de eroare:
# dpkg -r --force-depends nume_pachet
După ce ați rezolvat problema, ar trebui să puteți continua actualizarea prin repetarea comenzilor apt-get descrise mai sus.
În timpul actualizării este posibil să apară întrebări referitor la
configurarea sau re-configurarea mai multor pachete. Dacă sunteți întrebat
dacă un fișier din directorul /etc/init.d
, sau fișierul
/etc/manpath.config
ar trebui înlocuit cu versiunea
responsabilului de pachet, în general este necesar să răspundeți cu
„da” („yes” în engleză) pentru a asigura
integritatea sistemului. Puteți oricând reveni la versiunile vechi, deoarece
acestea vor fi 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 script informația afișată în timpul actualizării.
Dacă faceți actualizare folosind consola de sistem locală, veți observa că la un moment dat în timpul actualizării consola va fi mutată într-o altă vizualizare și procesul de actualizare nu va mai fi vizibil. Acest lucru se poate întâmpla spre exemplu pe sisteme de birou când este repornit managerul de display.
Pentru a recupera consola cu procesul de actualizare în derulare va trebui să folosiți Ctrl+Alt+F1 (dacă sunteți în mediul grafic) sau Alt+F1 (dacă sunteți în modul text) pentru a vă întoarce la terminalul virtual 1. Înlocuiți F1 cu tasta funcțională cu același număr ca terminalul virtual pe care se derulează procesul de actualizare. Puteți de asemenea să folosiți Alt+săgeată-stânga sau Alt+săgeată-dreapta pentru a schimba între diferitele terminale în mod text.
În cele mai multe cazuri actualizarea pachetelor de la wheezy la jessie ar trebui să se desfășoare fără probleme. Există un număr mic de cazuri când este necesar să interveniți, fie înainte, fie în procesul de actualizare. Acestea sunt detaliate mai jos în funcție de pachet.
The Debian upgrade from wheezy to jessie will by default migrate your init system from the SysV to systemd. Depending on your system and setup, you may need to do some manual changes. We have detailed known issues in Secțiune 5.6, „Upgrading installs the new default init system for Jessie”.
If you have LXC installed, you may need special care when upgrading your system and your containers. Please have a look at Secțiune 5.8, „Upgrade considerations for LXC hosts and containers” for known issues and solutions.
Această secțiune explică actualizarea nucleului și identifică potențialele
probleme legate de aceasta. Puteți instala unul din pachetele linux-image-*
oferite de Debian sau să compilați
un nucleul personalizat din surse.
O mare parte din informația expusă în această secțiune se bazează pe
presupunerea că veți folosi un nucleu modular din Debian împreună cu
initramfs-tools
și udev
. Dacă ați ales să folosiți un nucleu ce nu
necesită initrd sau este folosit un alt generator initrd, atunci o parte din
aceste informații ar putea să nu fie de interes.
When you dist-upgrade from wheezy to jessie, it is strongly recommended that you install a linux-image-* metapackage, if you have not done so before. These metapackages will automatically pull in a newer version of the kernel during upgrades. You can verify whether you have one installed by running:
# dpkg -l "linux-image*" | grep ^ii | grep -i meta
If you do not see any output, then you will either need to install a new linux-image package by hand or install a linux-image metapackage. To see a list of available linux-image metapackages, run:
# apt-cache search linux-image- | grep -i meta | 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.32-5-amd64
', it is recommended that you
install linux-image-amd64
. 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-amd64
You should then use apt-get 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.
However, please have a look at Secțiune 4.7, „Lucruri de făcut înainte de repornire” before
performing the first reboot after the upgrade.
Pentru cei mai îndrăzneți există un mod mai ușor să compilați propriul
nucleu folosind Debian. Instalați sursele nucleului oferite de pachetul
linux-source
. Puteți folosi ținta
deb-pkg
disponibilă în fișierul „makefile” ce vine cu
sursele pentru a construi fișierele binare. Mai multe informații pot fi
găsite în manualul Debian Linux Kernel
Handbook, care este disponibil și sub forma pachetului debian-kernel-handbook
.
Dacă este posibil, ar fi spre avantajul dumneavoastră să înnoiți pachetul cu
nucleul separat de procedura de dist-upgrade
pentru a
reduce șansele de a avea temporar probleme la inițializarea sistemului. A se
reține că aceasta ar trebui să se facă doar după înnoirea minimală descrisă
în Secțiune 4.4.4, „Actualizare minimală de sistem”.
initramfs-tools
will now also run
fsck
on the root filesystem before mounting it. If the
chosen init program is systemd
and there is a separate
/usr
filesystem, it will also fsck and mount
/usr
.
If /usr
is a separate filesystem on a RAID device and
the INITRDSTART
setting in
/etc/default/mdadm
is not 'all
', you
will need to change it to include that device.
If /usr
is a separate filesystem on an LVM logical
volume, and the line for /usr
in
/etc/fstab
specifies the device by
UUID
or LABEL
, you must change this
line to specify the device using the format
/dev/mapper/
or
VG
-LV
/dev/
.
VG
/LV
It is no longer possible to bind-mount the /usr
filesystem.
If the RTC (real time clock) is set to local time and the local time is
ahead of UTC, e2fsck
will print a warning during boot
about the time changing backward (bug #767040). You can disable
this by putting the following lines in
/etc/e2fsck.conf
:
[options] broken_system_clock=1
După ce apt-get dist-upgrade
a terminat, înseamnă că
actualizarea „formală” s-a terminat, dar există alte lucruri
care trebuie făcute înainte să reporniți sistemul.
When upgrading from Wheezy to Jessie, it can be a good idea to purge old packages before the first reboot. In particular, obsolete init scripts may cause issues. Please see Secțiune 4.8.1, „Purging removed packages” for details on finding and purging removed packages.
După actualizare sunt mai multe lucruri pe care le puteți face pentru a pregăti următoarea lansare.
Remove newly redundant or obsolete packages as described in Secțiune 4.4.3, „Verificați dacă aveți suficient spațiu pentru actualizare” and Secțiune 4.10, „Pachete învechite”. You should review which configuration files they use and consider purging the packages to remove their configuration files. See also Secțiune 4.8.1, „Purging removed packages”.
It is generally advisable to purge removed packages. This is especially true if these have been removed in an earlier release upgrade (e.g. from the upgrade to wheezy) or they were provided by third-party vendors. In particular, old init.d scripts have been known to cause issues.
Atenție | |
---|---|
Purging a package will generally also purge its log files, so you might want to back them up first. |
The following command displays a list of all removed packages that may have configuration files left on the system (if any):
# dpkg -l | awk '/^rc/ { print $2 }'
The packages can be removed by using apt-get purge. Assuming you want to purge all of them in one go, you can use the following command:
# apt-get purge $(dpkg -l | awk '/^rc/ { print $2 }')
If you use aptitude
, you can also
use the following alternative to the commands above:
$ aptitude search '~c' $ aptitude purge '~c'
Odată cu următoarea lansare Debian 9 (numită stretch) unele caracteristici vor fi învechite. Utilizatorii vor trebui să migreze către alternative pentru a preveni apariția problemelor la actualizare la 9.
Acestea includ următoarele caracteristici:
Introducing lot of new packages, jessie also retires and omits quite some old packages that were in wheezy. It provides no upgrade path for these obsolete packages. While nothing prevents you from continuing to use an obsolete package where desired, the Debian project will usually discontinue security support for it a year after jessie's release[5], and will not normally provide other support in the meantime. Replacing them with available alternatives, if any, is recommended.
Există multe motive pentru care pachetele pot fi eliminate din distribuție: nu mai sunt întreținute de către autorii originari, nu mai există un dezvoltator Debian interesat de î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 jessie datorită problemelor avute. În cazul din urmă, pachetele ar putea fi încă prezente în distribuția „instabil”.
Detectarea pachetelor „învechite” î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 „Pachete învechite și pachete create local”.
Sistemul Debian de raportare a problemelor (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.
Lista pachetelor depășite include:
postgresql-9.1
, successor is
postgresql-9.4
. Once the operating
system upgrade is finished, you should plan to also upgrade your PostgreSQL
9.1 database clusters to the new PostgreSQL version 9.4 using the
pg_upgradecluster tool. For users of the PL/perl
procedural language, jessie provides an updated postgresql-plperl-9.1
package linked against
jessie's version of libperl in order to enable upgrading to the new perl
version in jessie while keeping the old PL/perl database functions usable
until the database is upgraded as well.
python3.2
, successor is python3.4
. (Version 2.7 is supported in both
wheezy and jessie.)
ruby1.8
and ruby1.9.1
; successor is ruby2.1
. Please install the package ruby
to automatically track the current ruby
version.
mplayer
; alternatives are
mplayer2
, and mpv
(new in jessie). Whilst the former
is mostly compatible with mplayer in terms of command-line arguments and
configuration (and adds a few new features too), the latter adds a lot of
new features and improvements, and it is actively maintained upstream.
Anumite pachete din wheezy au fost împărțite în mai multe pachete în jessie, deseori pentru a îmbunătăți mentenabilitatea sistemului. Pentru a ușura actualizarea în aceste cazuri, jessie oferă pachete „marionetă”: pachete goale care au același nume ca versiunea din wheezy cu dependențe ce cauzează instalarea pachetelor noi. Aceste pachete „marionetă” sunt considerate învechite și după actualizare pot fi dezinstalate fără probleme.
Cele mai multe (însă nu toate) descrieri ale pachetelor marionetă indică
scopul lor. Descrierile pachetelor marionetă nu sunt uniforme, totuși puteți
folosi deborphan cu opțiunile
--guess-
(de
ex. *
--guess-dummy
) pentru a le detecta în sistemul
dumneavoastră. Notați faptul că anumite pachete marionetă nu sunt destinate
dezinstalării după actualizare, ci sunt utilizate pentru a urmări în timp
versiunea curentă a unui program.
[1] Dacă prioritatea debconf este stabilită la un nivel foarte ridicat puteți preveni întrebările de configurare, dar serviciile care depind de opțiuni de configurare implicite ce nu se potrivesc sistemului dumneavoastră nu vor porni.
[2] Spre exemplu: serviciile DNS sau DHCP, îndeosebi când nu există redundanță sau soluție de rezervă. În cazul DHCP utilizatorii pot fi deconectați de la rețea dacă timpul de deținere a adresei este mai mic decât timpul necesar procesului de înnoire.
[3] Această facilitate poate fi dezactivată prin adăugarea parametrului
panic=0
la parametrii de inițializare.
[4] Sistemul de management al pachetelor din Debian nu permite, în mod normal, unui pachet să șteargă sau să înlocuiască un fișier deținut de alt pachet, decât dacă a fost definit ca înlocuitor pentru acel pachet.
[5] Sau atât timp cât nu este o altă lansare în acel interval de timp. În mod obișnuit sunt doar două versiuni stabile suportate în același timp.