Ganav Posted September 22, 2014 Report Posted September 22, 2014 (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 + F1pentru 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_instalatePentru a le restaura putem rula:dpkg --clear-selectionssudo dpkg --set-selections < ~/Desktop/pachete_instalateiar pentru a inlatura pachetele invechite:sudo apt-get autoremoveAcum 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. ~/aptBackupcp -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/. ~/rootBackupIn 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 SaverAcum putem rula:sudo do-release-upgradeAsteptam 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+F1dupa care ne logam din terminal: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 nvidiasudo apt-get --purge remove nvidia*dpkg -l | grep nvidiaUlterior restartam statia de lucru. Daca problema persista inseamna ca problemele provin de la xserver. Putem rula urmatoarea comanda:startxsudo startxDaca 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 lostwaiting 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 updatesudo apt-get dist-upgradesudo apt-get autoremovesudo apt-get autocleansudo apt-get install --reinstall xserver-xorgsudo apt-get install --reinstall ubuntu-desktopsudo dpkg-reconfigure xserver-xorgDaca 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-xorgAcum 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-driverUn alt mod de a aborda aceasta problema este reinstalarea efectiva a noii distributii. Imaginea .ISO poate fi descarcata aici:Download Ubuntu Desktop | Download | UbuntuInainte 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 -lComanda 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 bytes255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk 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/exFATPartition 3 does not start on physical sector boundary.Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk identifier: 0x0002e9e4 Device Boot Start End Blocks Id System/dev/sdb1 2048 3905535 1951744 82 Linux swap / Solaris/dev/sdb2 3907582 1953523711 974808065 5 ExtendedPartition 2 does not start on physical sector boundary./dev/sdb5 3907584 1953523711 974808064 83 LinuxPentru a monta noul dispozitiv rulam:sudo mkdir /media/externalsudo mount -t vfat /dev/DISPOZITIV_NOU /media/external -o uid=1000,gid=1000,utf8,dmask=027,fmask=137Acum navigam in acel dispozitiv si copiem fisierele din backup:sudo cd /media/externalsudo cp -a ~/backupDirectory . La sfarsit rulam:sudo umount /dev/NUME_DISPOZITIVDaca 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 dispozitivO data reformata il remontam sub noul format:sudo mount -t ntfs-3g /dev/NUME_DISPOZITIV /media/externalsudo cd /media/externalsudo cp -a ~/backupMare . # backup mare este un director cu o dimensiune mai mare decat 4GBsudo umount /dev/NUME_DISPOZITIVO 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:rulati urmatoarele comenzi:pentru placile Nvidiasudo apt-get install nvidia-current # pachete stabilesudo apt-get install nvidia-current-updates # pachete noipentru placile ATIsudo apt-get install fglrxAcum:sudo apt-get install --reinstall ubuntu-desktopsudo rebootAm mai deshis un thread pe aceasta tema. Poate fi gasit aici:https://rstforums.com/forum/88964-reinstalare-xserver-pe-ubuntu.rst Edited September 22, 2014 by Ganav 2 Quote
GarryOne Posted September 22, 2014 Report Posted September 22, 2014 Un alt mod de a aborda aceasta problema este reinstalarea efectiva a noii distributii. Imaginea .ISO poate fi descarcata aici:Download Ubuntu Desktop | Download | UbuntuMi se pare mai sanatoasa, rapida si eficienta varianta asta. Quote
Ganav Posted September 22, 2014 Author Report Posted September 22, 2014 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. Quote
Ganav Posted September 22, 2014 Author Report Posted September 22, 2014 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). Quote