marți, 26 martie 2013

slackpkg - un utilitar pentru update de sistem

Dupa cum v-am spus intr-o postare anterioara, pachetele de instalare a programelor in sistemul de operare Slackware Linux au, de regula, extensiile .txz sau .tgz si pot fi instalate, dupa ce au fost descarcate/downloadate, utilizand instalpkg, in cazul unei instalari noi, sau upgradepkg, in cazul unui upgrade. Va voi arata acum o alta metoda folosita pentru a upgrada sistemul la o versiune mai noua (sau chiar la versiunea "-current", aflata in faza de beta-release, adica ce nu este una stabila, ci una oferita spre testare publicului larg), sau pentru a-l tine "la zi" cu ultimele versiuni ale programelor. Este o metoda foarte simpla si ceea ce imi place la ea este usurinta cu care pot realiza upgrade-ul sistemului, fara a mai fi nevoie sa verific manual ce programe s-au modificat, sa le descarc pe fiecare in parte si sa le instalez. Totul este realizat automat, prin executia unei serii scurte de comenzi, tastate ca utilizator root bineinteles, programul necesitand insa si o serie de configurari/setari, descrise in cele ce urmeaza.

Programul are fisierele de configurare in directorul /etc/slackpkg. In acest director, primul fisier ce trebuie putin modificat este fisierul mirrors. Acest fisier contine doua sectiuni cu adrese de servere ftp mirror pentru distributia Slackware - pentru versiunea curenta si pentru ultima versiune stabila (14.0 in martie 2013). Decomentati (stergeti caracterul # de inceput de linie) linia care va convine. Eu folosesc de exemplu serverul http://slackware.osuosl.org/pub/slackware/slackware-14.0/ pentru a tine updatat sistemul meu in acest fel.
Al doilea fisier ce trebuie modificat este fisierul blacklist. Acest fisier contine pachetele care nu vor fi upgradate, sterse sau instalate de slackpkg. De regula aici se trec expresii regulate partiale care sa acopere diferite serii de pachete instalate "by third parties", de exemplu pachetele neoficiale de pe Slackbuilds.org, sau alte tipuri de pachete neoficiale Slackware.
Este recomandat si chiar necesar sa blacklistati (decomentati) urmatoarele pachete:
  • kernel-firmware
  • kernel-generic
  • kernel-generic-smp
  • kernel-huge
  • kernel-huge-smp
  • kernel-modules
  • kernel-modules-smp
Acum, inainte de a incepe procesul de update propriu-zis trebuie verificat (in ChangeLog.txt de la adresa mirror utilizata) daca au aparut kerneluri noi. Daca raspunsul este afirmativ, va trebui sa descarcati si sa instalati (folositi installpkg si nu upgradepkg!!!) noile pachete kernel. Apoi updatati fisierul /etc/lilo.conf cu noul kernel, fara a scoate vechiul kernel, si rulati comanda lilo (dar, despre utilizarea lilo pentru gestionarea procesului de bootare intr-o postare viitoare). In felul acesta veti putea sa incarcati sistemul folosind vechiul kernel, in cazul in care apar probleme.
Avand facute aceste modificari esentiale, puteti incepe procesul de update. Acesta presupune executia secventiala a urmatoarelor comenzi:

root@yeti:~# slackpkg update
root@yeti:~# slackpkg install-new
root@yeti:~# slackpkg upgrade-all
root@yeti:~# slackpkg clean-system


Acestea fiind spuse, atrag totusi atentia ca metoda expusa mai sus este una netestata suficient de catre mine si prin urmare pot aparea unele probleme. De exemplu, pot aparea situatii, atunci cand se upgradeaza intre diferite "snapshot"-uri de "-current", in care sa trebuiasca upgradate unele dintre pachetele slackpkg, wget, openssl, openssl-solibs, findutils, pkgtools, tar, xz, in mod manual, inainte de a incepe procesul de update. Cu toate acestea, consider ca slackpkg este un utilitar folositor, care poate simpifica mult munca de administrare a sistemului, daca este folosit cu destul de multa atentie si pricepere.

Niciun comentariu:

Trimiteți un comentariu