Negalima

Tvarkykite „Ubuntu“ paketų saugyklas ir EEPS naudodami „Ansible“

Tvarkykite „Ubuntu“ paketų saugyklas ir EEPS naudodami „Ansible“
Paketų saugyklų ir EEPS įtraukimas ir pašalinimas „Ubuntu“ asmeninėje sistemoje gali būti labai paprasta užduotis. Tačiau jei turite daug „Ubuntu“ mašinų, tarkime, 10 ar daugiau, tada rankiniu būdu kiekvienoje sistemoje pridėdami ir pašalindami kiekvienos sistemos paketų saugyklas ir PPA, daug laiko pareikalausite ir neefektyviai.

„Ansible“ apt_repository modulis gali būti naudojamas lengvai pridėti ir pašalinti paketų saugyklas ir PPA jūsų „Ubuntu“ kompiuteriuose. Taip pat galite atnaujinti APT paketų saugyklos talpyklą naudodami „Ansible“ apt_repository modulis.

Šis straipsnis parodys, kaip valdyti „Ubuntu“ paketų saugyklas ir EEPS naudojant „Ansible“ apt_repository modulis. Taigi, pradėkime.

Būtinos sąlygos

Jei norite išbandyti šiame straipsnyje pateiktus pavyzdžius:

1) Savo kompiuteryje turite būti įdiegę „Ansible“.
2) Jūs turite turėti „Ubuntu“ pagrindinį kompiuterį, sukonfigūruotą „Ansible Automation“.

„LinuxHint“ yra daug straipsnių, skirtų „Ansible“ diegimui ir kompiuterių konfigūravimui „Ansible“ automatizavimui. Galite peržiūrėti šiuos straipsnius, jei jums reikia papildomos informacijos.

Projekto katalogo nustatymas

Prieš pradedant, bus gera idėja sukurti projekto katalogo struktūrą, kad viskas būtų šiek tiek labiau sutvarkyta.

Norėdami sukurti projekto katalogą apt-ppa-repo / ir visus reikalingus pakatalogius (dabartiniame darbo kataloge), vykdykite šią komandą:

$ mkdir -pv apt-ppa-repo / grojaraščiai

Sukūrę projekto katalogą, eikite į projekto katalogą taip:

$ cd apt-ppa-repo

Sukurti šeimininkai atsargų byla taip:

$ nano šeimininkai

Pridėti pagrindinio kompiuterio IP arba DNS pavadinimą (vm7.nodekitas.com ir vm8.nodekitas.com, mano atveju) jūsų „Ubuntu“ kompiuteriai inventoriaus faile.

Baigę išsaugokite failą paspausdami + X, paskui Y ir .

Projekto kataloge sukurkite Ansible konfiguracijos failą taip:

$ nano galima.plg

Įveskite šias eilutes įmanoma.plg failas:

[pagal nutylėjimą]
inventorius = šeimininkai
host_key_checking = Netiesa

Baigę išsaugokite failą paspausdami + X, paskui Y ir .

Šiuo metu projekto katalogas turėtų atrodyti taip:

$ medis

Kaip matote, „Ansible“ kompiuteriai yra prieinami. Taigi galime pereiti prie kito šio straipsnio skirsnio.

$ ansible all -u ansible -m ping

Paketų saugyklų pridėjimas

Šiame skyriuje aš jums parodysiu, kaip pridėti paketų saugyklą „Ubuntu“ naudojant „Ansible“.

Pirmiausia sukurkite naują pjesę pavadinimu add_repo.yaml viduje konors grojaraščiai / katalogą:

„$ nano“ grojaraščiai / add_repo.yaml

Įveskite šias eilutes add_repo.yaml failas:

- šeimininkai: visi
vartotojas: ansible
tapti: Tiesa
užduotys:
- pavadinimas: Įsitikinkite, kad įgalinta visatos saugykla
apt_repository:
repo: deb http: // archyvas.ubuntu.com / ubuntu židinio visata
būsena: dabartis
„update_cache“: tiesa

Baigę išsaugokite failą paspausdami + X, paskui Y ir .

Čia, atpirkimas variantas apt_repository modulis naudojamas nurodyti APT paketo saugyklos eilutę (mano atveju, deb http: // archyvas.ubuntu.com / ubuntu židinio visatapaketo saugyklos, kurią norite pridėti (mano atveju, „Ubuntu 20“).04 LTS pareigūnas visata saugykla).

Norėdami sužinoti daugiau apie APT paketų saugyklos eilutės formatą, perskaitykite „Ubuntu“ paketų saugyklos konfigūracijos failai straipsnio skyrius Kaip naudoti APT paketų tvarkyklę „Ubuntu 20“.04 LTS.

Kai čia pridedu naują paketų saugyklą, valstija yra pateikti.

The update_cache variantas gali būti arba Tiesa/taip arba Klaidinga/ne.

Jei update_cache yra nustatytas į Tiesa, Pridėjus paketų saugyklą, „Ansible“ atnaujins APT paketų saugyklos talpyklą.

Jei update_cache yra nustatytas į Klaidinga, „Ansible“ neatnaujins APT paketų saugyklos talpyklos.

Čia noriu, kad APT paketų saugykla būtų atnaujinta, kai tik bus pridėta nauja paketų saugykla. Taigi, aš nustatiau update_cache į Tiesa.

Dabar paleiskite add_repo.yaml pjesė:

$ ansible-playbook playbooks / add_repo.yaml

Kaip matote, pjesė sėkmingai paleista.

Norėdami patvirtinti, kad paketų saugykla (mano atveju - „Ubuntu 20“).04 LTS visata saugykla), vykdykite šią komandą:

$ grep --color -R 'http: // archyvas.ubuntu.com '/ etc / apt / sources.sąrašą
/ etc / apt / sources.sąrašą.d / *.sąrašą

Kaip matote, „Windows“ programoje buvo sukurtas naujas failas / etc / apt / sources.sąrašą.d / katalogą (1) ir „Ubuntu 20“.04 LTS visata pridėta paketo saugykla (2).

Pagal numatytuosius nustatymus „Ansible“ automatiškai sugeneruos a .sąrašą failą / etc / apt / sources.sąrašą.d / katalogą, atsižvelgiant į APT saugyklos eilutę.

Jei norite pasirinkti konkretų failo pavadinimą (t.e. ubuntu-visata.sąrašą) savo saugyklai, galite nurodyti failo pavadinimą naudodami failo pavadinimas variantas apt_repository modulis jūsų add_repo.yaml grojaraštis, kaip parodyta toliau pateiktoje ekrano kopijoje.

Dabar paleiskite add_repo.yaml dar kartą pjesė.

$ ansible-playbook playbooks / add_repo.yaml

Kaip matote, failo vardas yra tas pats vardas, kurį aš nurodžiau.

$ grep --color -R 'http: // archyvas.ubuntu.com '/ etc / apt / sources.sąrašą
/ etc / apt / sources.sąrašą.d / *.sąrašą

Pakuočių saugyklų pašalinimas

Šiame skyriuje parodysiu, kaip pašalinti esamą paketų saugyklą iš „Ubuntu“ kompiuterių naudojant „Ansible“.

Paketų saugyklos pašalinimo knygelė yra beveik tokia pati kaip pridėjus paketų saugyklą. Taigi, galite tiesiog nukopijuoti add_repo.yaml pjesės failą ir šiek tiek jį modifikuoti. Tai padaryti labai paprasta.

Pirmiausia nukopijuokite add_repo.yaml failą į remove_repo.yaml, taip:

$ cp -v grojaraščiai / add_repo.yaml playbooks / remove_repo.yaml

Redaguokite remove_repo.yaml pjesė:

„$ nano“ grojaraščiai / remove_repo.yaml

Keisti būsena: dabartis į būsena: nėra, kaip pažymėta toliau pateiktoje ekrano kopijoje. Tai bus vienintelis pakeitimas, kurį turite atlikti.

Baigę išsaugokite failą paspausdami + X, paskui Y ir .

Paleiskite remove_repo.yaml pjesė:

$ ansible-playbook playbooks / remove_repo.yaml

Tada paleiskite šią komandą, kad patikrintumėte, ar paketų saugykla, kurią norite pašalinti, iš tikrųjų buvo pašalinta.

$ grep --color -R 'http: // archyvas.ubuntu.com '/ etc / apt / sources.sąrašą
/ etc / apt / sources.sąrašą.d / *.sąrašą

Kaip matote, „Ubuntu 20“.04 LTS pareigūnas visata paketo saugykla, kurią pridėjau anksčiau, pašalinta.

PASTABA: Nepaisykite klaidos pranešimo. Ši žinutė tiesiog reiškia, kad / etc / apt / sources.sąrašą.d / katalogas tuščias. Jei norite pašalinti klaidos pranešimą, tiesiog pridėkite 2> / dev / null komandos pabaigoje taip. Įvedus šią komandą, klaida turėtų nebelikti.

$ grep --color -R 'http: // archyvas.ubuntu.com '/ etc / apt / sources.sąrašą
/ etc / apt / sources.sąrašą.d / *.2 sąrašas> / dev / null

Pridedant EEPS

Šiame skyriuje aš jums parodysiu, kaip pridėti PPA jūsų „Ubuntu“ kompiuteriuose, naudojant „Ansible“.

Aš pridėsiu osomon / nodejs-10.19 židinio Mazgas.js 10.19 „Ubuntu 20“ PPA.04 LTS mano pavyzdyje.

Pirmiausia sukurkite naują pjesę add_ppa.yaml, taip:

„$ nano“ grojaraščiai / add_ppa.yaml

Įtraukite šias eilutes į savo add_ppa.yaml pjesė:

- šeimininkai: visi
vartotojas: ansible
tapti: Tiesa
užduotys:
- vardas: Pridėti mazgą.js 10.19 PPA
apt_repository:
atpirkimas: ppa: osomon / nodejs-10.19 židinio
būsena: dabartis
„update_cache“: tiesa
validate_certs: klaidinga

Kai baigsite, išsaugokite add_ppa.yaml pjesę paspausdami + X, paskui Y ir .

Čia, atpirkimas variantas apt_repository modulis naudojamas PPA pridėti osomon / nodejs-10.19 židinio (1).

Būtinai pridėkite ppa: prieš PPA pavadinimą, t.e. ppa: osomonas / nodejs-10.19 židinio.

Daugelis APS naudoja pačių pasirašytus sertifikatus, todėl „Ansible“ negali jų patvirtinti už jus, todėl paleidus grojaraštį gali kilti klaidų.

Galite nustatyti validate_certs į Klaidinga praleisti pridedamo PPA sertifikato patvirtinimą (2). Tai aš padariau šio straipsnio pavyzdyje.

PASTABA: Taip pat galite nustatyti validate_certs į Klaidinga praleisti sertifikavimo patvirtinimą pridedant trečiųjų šalių paketų saugyklas.

Paleiskite add_ppa.yaml pjesė:

$ ansible-playbook playbooks / add_ppa.yaml

Kaip matote, naujas .sąrašą byla PPA osomon / nodejs-10.19 židinio buvo sukurtas / etc / apt / sources.sąrašą.d / katalogas (1).

Žiūrėdamas į ppa_osomon_nodejs_10_19_focal_focal.sąrašą failą, galiu patvirtinti, kad buvo pridėtas EEPS (2).

$ tree / etc / apt / sources.sąrašą.d /
$ cat / etc / apt / sources.sąrašą.d / ppa_osomon_nodejs_10_19_focal_xenial.sąrašą

EEPS pašalinimas

EEPS galite pašalinti taip pat, kaip pašalinome paketų saugyklas ankstesniame šio straipsnio skyriuje.

Tiesiog nukopijuokite app_ppa.yaml pjesė į pašalinti_ppa.yaml, taip:

$ cp -v grojaraščiai / add_repo.yaml playbooks / remove_repo.yaml

Dabar atidarykite pašalinti_ppa.yaml pjesė:

„$ nano“ grojaraščiai / remove_ppa.yaml

Tada pakeiskite eilutę būsena: dabartis į būsena: nėra, kaip pažymėta toliau pateiktoje ekrano kopijoje.

Kai baigsite, išsaugokite pašalinti_ppa.yaml pjesę paspausdami + X, paskui Y ir .

Paleiskite pašalinti_ppa.yaml pjesė:

$ ansible-playbook playbooks / add_ppa.yaml

Kaip matote, ppa_osomon_nodejs_10_19_focal_focal.sąrašą failas osomon / nodejs-10.19 židinio PPA daugiau nėra / etc / apt / sources.sąrašą.d / kataloge. Taigi, PPA osomon / nodejs-10.19 židinio buvo pašalintas.

$ tree / etc / apt / sources.sąrašą.d /

PPA kodinio pavadinimo keitimas

Kartais PPA, kurį bandote pridėti prie savo „Ubuntu“ pagrindinio kompiuterio, nepalaiko paleistos „Ubuntu“ versijos. Tokiu atveju turėsite rankiniu būdu nurodyti „Ubuntu“ versijos kodo pavadinimą pridedant PPA.

Tarkime, kad naudojate „Ubuntu 20“.04 su kodiniu pavadinimu židinio ir bandote pridėti PPA xyz, bet PPA xyz palaiko tik „Ubuntu 16“.04 LTS kodinis vardas ksenialinis. Jei bandysite pridėti PPA xyz, gausite klaidą, nes PPA neturi jokio „Ubuntu 20“ paketo.04 kodinis vardas židinio. Bet jei nurodysite „Ubuntu 16“.04 LTS kodinis vardas ksenialinis pridėdami PPA, klaidos negausite. Tokiu būdu galite įdiegti norimą paketą iš PPA, net jei jis nepalaiko aiškios šiuo metu naudojamos „Ubuntu“ versijos.

Pažiūrėkime pavyzdį.

Pirmiausia nukopijuokite add_ppa.yaml grojaraščio failą į change_ppa_codename.yaml, taip:

$ cp -v grojaraščiai / add_ppa.yaml playbooks / change_ppa_codename.yaml

Tada atidarykite change_ppa_codename.yaml rinkmeną taip:

„$ nano“ grojaraščiai / change_ppa_codename.yaml

Viskas, ką jums reikia padaryti, tai pridėti Kodinis pavadinimas parinktis su norimu „Ubuntu“ kodiniu pavadinimu (t.e. kodinis pavadinimas: xenial), kaip pažymėta toliau pateiktoje ekrano kopijoje.

Kai baigsite, išsaugokite change_ppa_codename.yaml failą paspausdami + X, paskui Y ir .

Paleiskite change_ppa_codename.yaml pjesė:

$ ansible-playbook playbooks / change_ppa_codename.yaml

PASTABA: Gaunu klaidą, nes čia pridėtas PPA palaiko tik „Ubuntu 20“.04 LTS. Galite tiesiog nepaisyti šio pranešimo.

Kaip matote, buvo pridėtas PPA ir „Ubuntu“ kodinis vardas ksenialinis yra APT paketų saugyklos eilutėje.

Išvada

Šis straipsnis parodė, kaip tvarkyti (pridėti / pašalinti) „Ubuntu“ paketų saugyklas ir EEPS naudojant „Ansible“.

„Ansible“ apt_repository modulis naudojamas valdyti „Ubuntu“ paketų saugyklas ir EEPS. Šiame straipsnyje paaiškintos visos svarbios apt_repository „Ansible“ modulis.

Norėdami gauti daugiau informacijos, patikrinkite apt_repository oficialaus Ansible dokumentacijos puslapį.

Naudingi įrankiai „Linux“ žaidėjams
Jei jums patinka žaisti žaidimus „Linux“ sistemoje, yra tikimybė, kad galbūt naudojote tokias programas ir įrankius kaip „Wine“, „Lutris“ ir „OBS Stud...
„HD Remastered“ žaidimai, skirti „Linux“, kurie niekada anksčiau nebuvo išleisti „Linux“
Daugelis žaidimų kūrėjų ir leidėjų siūlo senų žaidimų HD remasterį, kad prailgintų franšizės laiką. Prašome gerbėjų, prašančių suderinamumo su šiuolai...
Kaip naudoti „AutoKey“, norint automatizuoti „Linux“ žaidimus
„AutoKey“ yra darbalaukio automatizavimo įrankis, skirtas „Linux“ ir „X11“, užprogramuotas „Python 3“, „GTK“ ir „Qt“. Naudodami scenarijų ir „MACRO“ f...