Jump to content
Ganav

[TuT] Realizarea operatiunii de upgrade de la Ubuntu 12.04 la Ubuntu 14.04

Recommended Posts

Posted (edited)

Recent, m-am confruntat cu numeroase probleme la realizarea unei operatii de upgrade de la o distributie Ubuntu 12.04 la Ubuntu 14.04. Pe Ubuntu upgrade-ul, in mod normal, se realizeaza ruland ca root in terminal urmatoarea comanda:


sudo do-release-upgrade

Exista sanse(destul de ridicate, din pacate) ca etapele in care se realizeaza upgrade-ul sa nu se execute cu succes. In cazul meu am avut probleme cu xserver(pachetul xorg). Drept urmare GUI-ul nu mai era activ; doar terminalul mai putea fi folosit. La start-up trebuiesc apasate tastele:


Ctrl + Alt + F1

pentru a folosi terminalul. Sunt recomandate cateva practici de lucru inainte de upgrade:

  • stocarea tuturor fisierelor intr-un director bine definit(de ex. /home/Ganav)
  • folosind foarte mult Sun Virtual Box am fost nevoit sa fac o copie a imaginilor HDD a masinilor virtuale. Acestea sunt stocate in directorul /root/VirtualBox VMs(am lansat in executie programul ca si root pentru a putea face packet spoofing/sniffing din respectivele masini)
  • salvarea tuturor pachetelor instalate. Aceasta se poate realiza ruland:
    dpkg --get-selections > ~/Desktop/pachete_instalate


    Pentru a le restaura putem rula:

    dpkg --clear-selections
    sudo dpkg --set-selections < ~/Desktop/pachete_instalate


    iar pentru a inlatura pachetele invechite:


    sudo apt-get autoremove


Acum trebuie sa facem un backup la /etc/apt/* si /etc/X11. In primul director se gasesc toate repository-urile in care se gasesc pachetele distributiei respective(server-ele impreuna cu distributia de care apartin pachetele) iar in al doilea configurarea xserver-ului. Aceste este responsabil de accesul cu placa grafica, afisajul desktop-ului si a ferestrelor in acesta. Pentru a le copia rulam:


sudo su
#cp -a /etc/apt. ~/aptBackup
#cp -a /etc/X11. ~/aptBackup

cp -a permite copierea tuturor fisierelor(chiar si a symlink-urilor si a celor ascunse) si pastrarea drepturilor initiale ale acestora(read, write, execute).

Pentru a copia imaginile masinilor virtuale(fisierele .vdi din /root/(Virtual VMs)) rulam:


sudo su
# cp -a /root/. ~/rootBackup

In acest moment avem toate fisierele in backup in directorul utilizatorului curent(de ex. /home/Ganav). Inainte de a lansa in executie operatiunea de upgrade este recomandat sa facem disable la "Screen lock". Eu nu am facut acest lucru si o data ce ecranul s-a stins nu am mai putut sa il restaurez(nu aveam un mod de a sti daca upgrade-ul s-a terminat sau nu). Acest lucru se poate realiza in Ubuntu urmarind pasii urmatori:


System ? Preferences ? Screen Saver

display_2.png

Acum putem rula:


sudo do-release-upgrade

Asteptam pana ce procesul se termina de executat dupa care restartam statia de lucru. Daca nu avem o imagine la restart apasam combinatia de taste:


Ctrl+Alt+F1

dupa care ne logam din terminal:

20.png

In acest moment problemele care afecteaza sistemul sunt legate, in principiu, fie de:

  • drivere proprietare(de la Nvidia sau ATI) care intra in conflict cu cele noi(care au fost descarcate in timpul upgrade-ului).
  • sau xserver intra in conflict cu driver-ele vechi.

Pentru a gasi cauza putem sterge toate driverele proprietare. Pentru Nvidia rulam:


dpkg -l | grep nvidia
sudo apt-get --purge remove nvidia*
dpkg -l | grep nvidia

Ulterior restartam statia de lucru. Daca problema persista inseamna ca problemele provin de la xserver. Putem rula urmatoarea comanda:


startx
sudo startx

Daca apar conflicte in ceea ce priveste permisiunile stergem fisierul: ~/.XAuthority din direcotrul home al user-ului curent dupa care rulam din nou comenzile. Daca apare o eroare similara cu:


(EE) module ABI major version (6) doesn't match the server's version (8)
xinit: connection to X server lost
waiting for X server to shut down (EE) Server terminated successfully (0). Closing log file.

atunci xserver are nevoie de driver-e mai recente. Putem executa urmatoarele comenzi:


sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get install --reinstall xserver-xorg
sudo apt-get install --reinstall ubuntu-desktop
sudo dpkg-reconfigure xserver-xorg

Daca erorarea persista trebuie sa reinstalam xserver si driver-ele necesare manual. Inainte de acest lucru putem incerca sa-l lansam cu configuratiile anterioare(cele pe care le-am salvat in backup). In cazul in care nu este functional il reinstalam in felul urmator:


sudo apt-get --purge remove xserver-xorg

Acum aruncam o privire in log-urile xorg:


sudo su
# cat /var/log/Xorg.0.log | grep -n '(EE)'\''(WW)'
# cat /var/log/Xorg.0.log.old | grep -n '(EE)'\''(WW)'

Comenzile de mai sus ne arata liniile si numarul acestora din fisiere care indica o eroare sau un warning in timpul rularii xserver-ului. Putem reinstala xorg manual urmarind indicatiile de aici:


http://www.linuxfromscratch.org/blfs/view/svn/x/x7driver.html#xorg-fbdev-driver

Un alt mod de a aborda aceasta problema este reinstalarea efectiva a noii distributii. Imaginea .ISO poate fi descarcata aici:

Download Ubuntu Desktop | Download | Ubuntu

Inainte de instalare este recomandata salvarea fisierelor din backup pe un dispozitiv extern/partitie separata(diferita de "/"). In cazul in care se foloseste un dispozitiv extern este recomandata formatarea acestuia in urmatoarele formate: NTFS sau ext-4 pentru a nu avea limita de 4GB per fisier impusa de formatul FAT32 cu care majoritatea acestor dispozitive sunt distribuite. Pentru a folosi dispozitivul(HDD,USB), il conectam la statia de lucru dupa care rulam comenzile:


sudo fdisk -l

Comanda de mai sus ne arata toate fisierele din /dev/ care reprezinta dispozitive(devices) conectate la statia respectiva. In functie de capacitatea acestora putem observa cu usurinta care este noul dispozitiv conectat(presupunand ca nu exista doua sau mai multe cu aceiasi capacitate si format de fisiere). In exemplul de mai jos este rezultatul comenzii pentru doua discuri de capacitati diferite precum si zonele de swap. In cazul in care adaugam noi dispozitive intrarile acestora vor fi vizibile in urma celor doua, anterioare.


Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x7c12e647

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 206847 102400 7 HPFS/NTFS/exFAT
/dev/sda2 206848 1446717439 723255296 7 HPFS/NTFS/exFAT
/dev/sda3 1446717510 1465142787 9212639 7 HPFS/NTFS/exFAT
Partition 3 does not start on physical sector boundary.

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0002e9e4

Device Boot Start End Blocks Id System
/dev/sdb1 2048 3905535 1951744 82 Linux swap / Solaris
/dev/sdb2 3907582 1953523711 974808065 5 Extended
Partition 2 does not start on physical sector boundary.
/dev/sdb5 3907584 1953523711 974808064 83 Linux

Pentru a monta noul dispozitiv rulam:


sudo mkdir /media/external
sudo mount -t vfat /dev/DISPOZITIV_NOU /media/external -o uid=1000,gid=1000,utf8,dmask=027,fmask=137

Acum navigam in acel dispozitiv si copiem fisierele din backup:


sudo cd /media/external
sudo cp -a ~/backupDirectory .

La sfarsit rulam:


sudo umount /dev/NUME_DISPOZITIV

Daca dorim sa reformatam dispozitivul in format NTFS rulam urmtoarele comenzi:


sudo su
# mount | grep NUME_DISPOZITIV # verificam daca este montat sau nu
# umount NUME_DISPOZITIV # il demontam daca este
# mkfs.ntfs NUME_DISPOZITIV # ATENTIE comanda aceasta sterge toate fisierele existente pe dispozitiv

O data reformata il remontam sub noul format:


sudo mount -t ntfs-3g /dev/NUME_DISPOZITIV /media/external
sudo cd /media/external
sudo cp -a ~/backupMare . # backup mare este un director cu o dimensiune mai mare decat 4GB
sudo umount /dev/NUME_DISPOZITIV

O data ce avem totul salvat pe suport extern putem reinstala noua distributie peste cea veche. Ulterior putem recupera totul(inclusiv pachetele initiale) din fisierele backup.

Daca dupa noua instalare apare urmatoarea eroare:

AiwJH.png

rulati urmatoarele comenzi:

  • pentru placile Nvidia
    sudo apt-get install nvidia-current                  # pachete stabile
    sudo apt-get install nvidia-current-updates # pachete noi


  • pentru placile ATI
    sudo apt-get install fglrx


Acum:

sudo apt-get install --reinstall ubuntu-desktop
sudo reboot

Am mai deshis un thread pe aceasta tema. Poate fi gasit aici:

https://rstforums.com/forum/88964-reinstalare-xserver-pe-ubuntu.rst

Edited by Ganav
  • Upvote 2
Posted
Mi se pare mai sanatoasa, rapida si eficienta varianta asta.

Da, intr-adevar este, insa nu intotdeauna ai la dispozitie un HDD extern de 2TB(imaginile .vdi, in cazul meu cel putin, ocupa foarte mult spatiu) pe care sa faci backup-ul.

Posted
Nu stiai ce se mai intampla si din nerabdare ai dat restart fortat? Asta ar fi fost cauza tuturor problemelor tale ulterioare cu sistemul?

Intreb pentru ca eu dezactivez "screen locker". Dau "lock" manual atunci cand consider eu ca este potrivit (rar).

Nu pot sa spun ca m-am grabit sa-i dau restart(l-am lasat peste noapte).

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...