Kaip vienu metu atnaujinti kelias mašinas

Tais atvejais, kai valdote kelias mašinas, „Apt“ gali būti labai naudinga, nes tai labai palengvina kiekvienos mašinos saugos pataisų atnaujinimą ir pritaikymą. Problema ta, kad taikant tradicinį metodą, kai tik pasirodys atnaujinimas, turite atsisiųsti visų naujų mašinų naujų paketų kopijas, o tai reiškia, kad fenomenalus mūsų pralaidumo ir pralaidumo sunaudojimas. Iš oficialaus serverio, laimei, yra metodas, leidžiantis atnaujinti vieną iš mašinų ir iš ten atnaujinti likusias mašinas, sudarančias mūsų tinklą. Šis metodas ne tik sumažina išlaidas ir optimizuoja pralaidumo naudojimą, bet ir išvengia paketų dubliavimo skirtingose ​​mašinose: visi paketus įdiegia naudodami mūsų „talpyklos serverį“.


Kai naudojate tą patį paskirstymą skirtingose ​​mašinose (darbe, kompiuterių laboratorijose, serverių fermose, grupėse ar net mažame namų tinkle), gali būti naudinga sukurti savo tinklo talpyklos talpyklą. kad paketą atsisiųsdami iš oficialios saugyklos, visos kitos mašinos jį atsisiųstų iš tos talpyklos talpyklos, kuri saugoma jūsų tinklo mašinoje, kurią vadinsime „serveriu“. Tokiu būdu iš vieno kompiuterio atsisiųstus atnaujinimus galima įdiegti kituose, nereikalaujant jų iš naujo atsisiųsti iš oficialių saugyklų.

Pirmiausia pažvelkime į keletą „netradicinių“ sprendimų, kurių aš Nerekomenduoju, bet kurie tikrai ateis į galvą sprendžiant šį klausimą.

Dalytis / etc / apt

Kai įdiegiate paketą „Debian“ platintuve (arba jo dariniuose), jis saugomas vietoje kataloge „/ etc / apt“. Kai reikalingas paketas, „Apt“ pirmiausia šiame kataloge ieško, ar yra vietinė kopija (tai yra talpykla), taip išvengiant nereikalingo atsisiuntimo. Todėl keli iš jūsų tikrai pagalvojote, kad tinkamas būdas išspręsti problemą galėtų būti pasirinkti kompiuterį, kurį mes paskirtume kaip tam tikrą serverį, kuris būtų atnaujinamas naudojant oficialias saugyklas ir kuris bendrinkite savo katalogą „/ etc / apt“ su likusiais tinklo įrenginiais. Tačiau šis metodas gali sukelti problemų, susijusių su failo „sources.list“ blokavimu. Apskritai tai nėra plačiausiai naudojamas ar patogiausias sprendimas.

Perkelti paketus

Užuot bendrai naudojus „/ etc / apt“ katalogą, kita alternatyva gali būti tai, kad kiekvienas kompiuteris naudoja savo vietinį talpyklos katalogą, bet sugeneruoja scenarijų, kuris rūpinasi paketų kopijavimu iš vienos mašinos į kitą, kad visi jie išliktų atnaujinti. . Priemonė šiai užduočiai atlikti gali būti „apt-move“, bet aš nuoširdžiai nerekomenduoju, nes ji nėra pakankamai skaidri galutiniam vartotojui. Be to, tai gali reikšti visiškai nereikalingą vietos diske naudojimą, nes visus paketus reikės nukopijuoti į kiekvieną mašiną.

Specialios talpyklos sistemos

Geriausias šios problemos sprendimas yra naudoti specialią talpyklos sistemą. Trumpai tariant, tai yra sukurti oficialių serverių kopijas vienoje iš jūsų tinklo mašinų ir sukonfigūruoti likusias mašinas taip, kad, užuot ieškoję naujinimų iš oficialių serverių, jie tai padarytų naudodamiesi vietinė talpykla (arba kopija).

Yra įvairių sistemų, skirtų dirbti su Apt, įskaitant apt-cacher, apt-proxy ir apt-cached.

Čia mes kalbėsime apie „apt-cacher“, kurį lengviausia naudoti.

apt-cacher

„Apt-cacher“ labai skiriasi nuo kitų saugyklos talpyklų sistemų, nes tai nėra atskira programa, bet veikia kaip „CGI“ scenarijus pagal „Apache“. Tai turi keletą privalumų, pvz., Paverčiant jį mažu ir paprastu įrankiu, tačiau tuo pačiu metu labai galingu ir dėl to tvirtesniu, nes protokolams tvarkyti nereikia savo kodo, be to, jis yra labai lankstus, nes galite naudoti „Apache“ prieigos kontrolės mechanizmas tuo atveju, jei norite apriboti mašinų, kurioms leidžiama pasiekti talpyklą, skaičių.

„Apt-cacher“ reikia įdiegti tik vienoje mašinoje, kuri, jūsų nuomone, turėtų veikti kaip jūsų vietinės talpyklos talpykla. Tada kiti jūsų tinklo kompiuteriai turi būti sukonfigūruoti, kad būtų prašoma atnaujinimų iš talpyklos, o ne iš oficialių serverių.

Serverio sąranka

Norėdami įdiegti tik

sudo apt-get įdiekite apt-cacher

Šis paketas turi priklausomybes su apache, perl ir wget, todėl jis jas įdiegs, jei dar neturite jos įdiegę.

Įdiegus, rekomenduojama iš naujo paleisti „Apache“:

/etc/init.d/apache paleiskite iš naujo

Galiausiai tereikia pakoreguoti numatytuosius scenarijaus parametrus. Parašiau terminale:

sudo gedit /etc/apt-cacher/apt-cacher.conf

Apskritai visi numatytieji nustatymai yra tinkami, tačiau rekomenduojama pakoreguoti šiuos tris:

admin_email = imimail @ myserver generuoti_reports = 1 galiojimo laikas_valandos = 24

Antrasis elementas yra Būlio kintamasis, kuris nustato ataskaitų generavimą (0 ataskaitų nekuria, 1 jas sugeneruoja). Pirmasis elementas yra el. Pašto adresas, kuriuo bus siunčiamos sukurtos ataskaitos. Trečias ir paskutinis punktas nustato, kiek valandų Apt turėtų laukti, kol patikrins, ar yra oficialiuose serveriuose galimų naujinių.

Jei naudojate tarpinį serverį, nepamirškite pridėti šių elementų:

http_proxy = proxy.example.com: 8080 use_proxy = 1

Norėdami patikrinti, ar jis veikia, galite pasiekti savo vietinę talpyklą naudodami URL adresą: http: // server_name / apt-cacher / ir pasirodys puslapis, kuriame bus rodoma apt-cacher konfigūracija. Atminkite, kad „server_name“ turi būti pakeistas įrenginio, kurį nurodėte kaip „serverį“, ty vietinio paketo talpyklos saugykla, IP.

Kliento konfigūracija

Dabar tereikia modifikuoti klientų sources.list taip, kad jie pereitų per serverį. Jei serverio IP yra 123.123.123.123, turite jį pridėti prie kiekvienos source.list eilutės, taip pat būkite atsargūs, kad visi jie nurodytų tą patį serverį, kitaip talpykla neturės jokio poveikio.

sudo gedit /etc/apt/sources.list
Pastaba: būkite atsargūs! „Debian“ ir jo išvestiniuose failuose „sources.list“ yra „/ etc / apt“. Tačiau kituose paskirstymuose jis gali būti saugomas kitame kelyje. Jei nerandate failo, visada galite jį rasti terminale įvesdami „locate sources.list“.

Atidarius failą, mūsų serverio IP yra 123.123.123.123, visos eilutės turėtų būti pakeistos pagal šiuos kriterijus:

# Originalus #deb http://ftp.us.debian.org/debian/ sid pagrindinis indėlis ne nemokamas # deb-src http://ftp.us.debian.org/debian/ sid pagrindinis indėlis nemokamas # modifikuotas deb http://123.123.123.123/apt-cacher/ftp.us.debian.org/debian/ sid pagrindinis indėlis ne nemokamas deb-src http://123.123.123.123/apt-cacher/ftp.us.debian. org / debian / sid pagrindinis įnašas nėra nemokamas

Kaip matote, URL pradžioje turite pridėti serverio IP + '/ apt-cacher /'. Tada eina likusi pradinė linija.

Eismo statistika

Jei faile „apt-cacher.conf“ pridėjote elementą „generator_reports = 1“, „apt-cacher“ sugeneruos prieigos statistiką, kurią galite pasiekti naudodami URL „/ apt-cacher / report“.

Jei dėl kokių nors priežasčių turite sugeneruoti statistiką prieš „apt-cacher.conf“ nustatytą valandų skaičių, vykdykite šią komandą:

/usr/share/apt-cacher/apt-cacher-report.pl

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   eduardo sakė

    Sveikinimai, puikus indėlis, mano klausimas yra, jei žinote kokią nors programą, leidžiančią turėti centralizuotą saugyklą, kad galėtumėte pritaikyti pataisas, bet skirtingiems paskirstymams, tai yra, atnaujinti kelias mašinas vienu metu, bet skirtingai paskirstyti

  2.   Panaudokime „Linux“ sakė

    Sveiki, Eduardo! Tiesa ta, kad man tai labai sunku. Jei atrasite kokį nors būdą, nenustokite man pranešti.
    Didelis apkabinimas! Cheers! Paulius.

  3.   chiche sakė

    Aš naudoju lėlę nuotoliniu būdu valdyti savo valdomus serverius.

  4.   Panaudokime „Linux“ sakė

    Taip. Labai ačiū už informaciją. Aš tai jau pataisiau.
    Apkabink! Paulius.

  5.   Geniutrixonas sakė

    Sveiki,

    pamoka yra labai gera ... Aš turiu sritį .. Debian Lenny programoje source.lst yra kelias / etc / apt /

    dėl

  6.   sepulvedamarcos sakė

    klausimas….

    jei turiu keletą mašinų su tuo pačiu distro ... bet ne su tomis pačiomis programomis .... Kaip žinoti, ką atsisiųsti iš oficialių repo ... viską nuleidžia ??? ...

  7.   Panaudokime „Linux“ sakė

    Jūsų klausimas puikus. Apskaičiuoju, kad sistema turėtų veikti taip pat, kaip ir įprastoje „Apt“ sistemoje: jei jos neranda talpykloje, atsisiunčia ją iš oficialių saugyklų. Tokiu atveju viena iš „kliento“ mašinų praneša „serveriui“, kad ją reikia atnaujinti pagal jūsų tinklo „serveryje“ esančių atnaujinimų sąrašą. Norėdami įdiegti šį naujinimą, apskaičiuoju, kad pirmiausia jis ieškos paketo serverio talpykloje. Jei nepavyksta jo rasti, jis atsisiunčia jį iš oficialių saugyklų, išsaugo serveryje ir iš ten jis įdiegiamas mašinoje, kuriai to reikėjo. Tas paketas bus prieinamas „serverio“ talpykloje, kad ir kitos jūsų tinklo mašinos galėtų jį įdiegti iš ten.

    Prašau, rašykite, jei man nebuvo pakankamai aišku.

    Apkabinimas! Paulius.

  8.   Mishudarkas sakė

    Manau, kad yra KLAIDA ... paketai nėra saugomi aplanke / etc / apt .... jie iš tikrųjų lieka aplanke / var / cache / apt / archives

  9.   Panaudokime „Linux“ sakė

    Tiesos aš nežinau.
    Aišku, yra būdas tai padaryti. 🙁
    Jei sužinosite, praneškite man ir aš jį pridėsiu.
    Cheers! Paulius.

  10.   Alvaro sakė

    Nieko su dinaminiais ip, tiesa?

  11.   Marcė sakė

    Akivaizdu, kad dabartiniuose rajonuose turite pridėti prievadą (pagal numatytuosius nustatymus 3142) prie vietinio tinklo URL. Tai atrodytų taip: http://mi_servidor:3142/apt-cacher

  12.   Alfredas Torrealba sakė

    Turiu lubuntu 16.04, kas tai padarė pagal šią sistemą ir jei jis jam pasiteisino? Ką aš norėjau paklausti, yra tai, kad jei aš įdiegiu šį serverį, o kitose mano mašinose nėra tų pačių programų, kai kliento mašinose prašau įdiegti programą, kurią turiu serveryje, ar jūs manote, kad aš įdiegiau tai tiesiogiai iš vietinio serverio, ar prašymas pateikiamas oficialiam saugyklų serveriui?