Actualizare Perl, realizez instalarea, configurarea, întreținerea serverelor

Și așa, este timpul să actualizați perl. pentru că se spune:

Odată cu lansarea versiunii perl 5.14 a anunțat oficial sfârșitul suportului Perl 5.10

Deoarece acest proces poate fi întârziat și nu întotdeauna la fel de simplu cum se pare, voi descrie câteva momente din acest miracol.







Dacă nu aveți perl-după-upgrade. apoi a fost eliminat din cauza nevoii. Iată ce a fost scris în una dintre expedieri:

perl-after-upgrade nu mai este necesar.

Pentru a actualiza 5.16.3 -> 5.16.x (x> 3), nu va trebui să reconstruiți modulele.

Anterior, modulele au fost instalate în folderul x.y.z și pentru a actualiza 5.16.0 la 5.16.1 era necesar să se execute perl-after-upgrade astfel încât să se mute modulele instalate din directorul 5.16.0 la 5.16.1

Acum, modulele sunt introduse în x.y și dacă actualizați perla doar ultima cifră, nu este necesară nicio acțiune suplimentară.

Pentru a actualiza de la x.y la x.z (de exemplu, de la 5.16 la 5.18), tot trebuie să reconstruiți toate modulele, cel puțin deoarece se schimbă modulele ABI pentru XS.







0) Fix pkgdb.db (pentru siguranță):
pkgdb -Ff

În această comitere există o eroare în numele pachetului perl5.12. și anume adăugarea unei liniuțe. În varianta de mai jos, am scos bordelul. Fii atent

1) Reinstalați noua versiune de Perl (5.14):
env DISABLE_CONFLICTS = 1 portupgrade -o lang / perl5.14 -f perl5.12. \ *

2) Reinstalați totul depinde de Perl:
portupgrade -fr perl

Utilizatorii Portmaster:

portmaster -o lang / perl5.14 lang / perl5.12

Conservator:
portmaster p5-

Comprehensiv (dar poate prea mult):
portmaster -r perl-

Notă: Dacă "perl" globul se potrivește cu mai multe porturi, va trebui să
specificați explicit numele directorului Perl din / var / db / pkg.

Dar, în loc de a efectua reconstrucția manuală sau automată a pachetelor care necesită perl. puteți rula următoarea comandă:

Acest script este scris în perl'e și merge cu el în kit.

Navigare după înregistrări

Aceasta nu este o eroare, liniuțele în numele pachetului perl-5.12 încă mai au nevoie, pentru că în sistem este înregistrat cu o linie, și fără o linie este un catalog în porturi

env DISABLE_CONFLICTS = 1 portupgrade -o lang / perl5.14 -f perl- 5.12. \ *

env DISABLE_CONFLICTS = 1 portupgrade -o lang / perl5.20 -f perl \ * portupgrade -fr perl

Este pentru dvs. - că linia nu este editat de fiecare dată, prin căutarea în primele rezultate pentru cuvinte cheie freebsd perl upgrade







Articole similare

Trimiteți-le prietenilor: