Sådan installeres et Perl-modul i Linux uden root-tilladelse
Installation af et Perl-modul er ikke et geni-arbejde, men at få det gjort uden rodadgang kan være en udfordrende opgave (selvfølgelig ikke umuligt). Du kan blive udsat for denne situation, når du ikke har rettigheder til standardmapper, hvor et Perl-modul er installeret. I denne tutorial vil vi se, hvordan vi kan installere et Perl-modul uden root eller superbruger tilladelse ved at installere det i separate ikke-standardiserede mapper.
Første skridt
Før vi fortsætter, lad os gøre et par ting klart. Først og fremmest antager jeg, at du har Perl installeret på dit system. Bortset fra det bruger jeg følgende mapper til at installere Perl-modulet:
/ home / perl_modules / bin / home / perl_modules / mand / home / perl_modules / mand / mand1 / home / perl_modules / lib
Du kan oprette disse mapper (bin, mand, mand / man3 og lib) hvor som helst du vil. Vi vil bruge den pågældende sti i Perl-konfigurationen. Du bør erstatte den vej, der blev brugt i vejledningen, til din egen katalogsti.
Andet trin
Nu skal vi definere nogle variabler for at konfigurere Perl lokalt. Denne konfiguration vil blive brugt til at fortælle Perl-modulet, hvor den skal installeres. For at gøre det, vil jeg foreslå, at vi skriver alle disse variabler i en fil og derefter bruger den under installationen. Det vil spare os tid og kræfter ved at skrive de lange kommandoer og vil være gode til fremtidig brug.
Lad os sige, at vi opretter en fil " perl_local_config " i / home directory (filen kan oprettes, hvor du vil):
tryk perl_local_config
Lad os nu redigere denne fil for at indstille konfigurationsvariablerne. Skriv følgende variabler i den:
PREFIX = / home / perl_modules \ INSTALLSCRIPT = / home / perl_modules / bin \ INSTALLBIN = / home / perl_modules / bin \ INSTALLMAN1DIR = / home / perl_modules / man1 \ INSTALLSITELIB = / home / perl_modules / lib
Tredje trin
Download Perl-modulet fra CPAN (eller fra hvor du vil). Pak det ud. Gå ind i modulet bibliotek. Nu er standardtrinnene ved installation af et Perl-modul:
perl Makefile.PL foretage make test make install (hvis alle tests er succesfulde)
Da du ikke har rootadgang, vil perl Makefile.PL give fejl. Og her kommer den lokale konfigurationsfil til vores redning. Kør disse kommandoer en efter en:
perl Makefile.PL `cat / home / perl_local_config`
Hvis Perl-modulet afhænger af andet Perl-modul, vil ovennævnte kommando generere fejl. I så fald skal du downloade og installere de moduler, som den er afhængig af. Samme procedure, som vi diskuterer her, vil blive fulgt.
lavprøve
Alle tests skal bestå med succes.
gøre installationen
Yderligere fejlfinding
Når du kører Perl-modulet, kan det opstå en fejl som denne:
Kan ikke finde Locale / Recode.pm i @INC (@INC indeholder: XXXXX ...... XXXXX) på / home / bin / your_perl_module linje XX.
Det betyder, at Perl leder efter dit modul i standard lib-mappen og ikke den, hvor du har installeret det. For at løse denne fejl skal du tilføje den lokalt oprettede lib-mappe (/ home / perl_modules / lib i eksemplet) til bibliotekets sti som denne:
eksport PERL5LIB = / hjem / perl_moduler / lib / perl5 /: / home / perl_modules / lib / perl5 / site_perl:
Du kan ændre stierne med din egen katalogsti.
Jeg håber, at tutorialen var let at forstå og let at følge. Jeg håber også, at du nu kan installere Perl-moduler lokalt uden superbrugerrettigheder, som en champ nu. Jeg vil sætte pris på din feedback. Tilmeld dig nyhedsbrev, hvis du fandt vejledningen nyttige og vil holde kontakten for flere opdateringer. God fornøjelse :)