Skript for automatisk sikkerhetskopiering av serveren din

De av oss som administrerer servere vet hvor viktig det er å ha lagringer, sikkerhetskopier av alt ... vel, i tilfelle problemer eller feil, vil sikkerhetskopien være vår beste venn og vil hjelpe oss med å gjenopprette tjenester 🙂

For en tid siden (flere måneder ... ganske mange måneder) her ble ikke konfigurasjoner sikkerhetskopiert på servere, logger eller noe sånt automatisk. Og det kunne bare ikke være sånn haha, jeg vurderte å bruke Bacula, men Gud !! For det jeg ønsket var dette også, veldig, veldig komplisert etter min mening, hvis det du bare vil lage sikkerhetskopier og lagre disse (eller sende dem til en annen server, eller via e-post), er det ikke nødvendig å bruke Bacula, med en enkelt skript alle problemer er løst, derfor bestemte jeg meg for å lage mitt eget skript og på den måten var jeg mer fornøyd 😀

Og nettopp dette skriptet er det jeg deler med deg, jeg forklarer veldig kort hva det gjør:

  1. Lag en mappe der alt skal lagres, og denne mappen er den som deretter komprimeres.
  2. Denne mappen vil ha navnet på året, måneden og i dag, for eksempel i dag vil den mappen hete: 2012-04-26
  3. kopi /etc/ (og alt innholdet) til den mappen.
  4. Kopier logger (/ var / log /) til den nevnte mappen.
  5. Eksporter MySQL-databasene som vi har.
  6. Komprimer med passord (PASSORD) den mappen, komprimerer den til RAR.
  7. Generer en fil (data.info) med all loggen over gjort (filkopieringslogg og komprimering til .rar), i tillegg til å sette størrelsen (i MB-er) av .RAR-filen, som jeg minner om, inneholder alt vi bestemte oss for å lagre.
  8. Slett mappen der vi plasserte filene og komprimerte, for hvis vi allerede har denne komprimerte mappen, er det ikke nødvendig å også ha den komprimert.
  9. Send e-post til administratorer eller personer relatert til serveren, og informer om at sikkerhetskopien ble gjort riktig, og filen med loggen over alt vil bli sendt vedlagt den e-posten (data.info.rar)

Åpenbart skal dette skriptet ikke utføres, og nå haha, du må åpne det og endre MySQL-passordet ditt i det, for jeg vet ikke rotpassordet til databasene dine LOL !!!, samt endre e-postmeldingene til De vil at varselet skal sendes, fordi e-postene jeg legger er bare for eksempel.

Hvis du vil komprimere den til .tar.gz og ikke i . Sjelden (hvordan skriptet er konfigurert) der forlot jeg den kommenterte linjen, det er bare å kommentere den og kommentere den . Sjelden. På samme måte, hvis du vil kopiere den komprimerte filen med SSH (ved hjelp av SCP) til en annen server eller hosting, forlot jeg også linjen på slutten (den er kommentert), i den må du legge tilgangsdataene til serveren din eller hosting ( bruker- og domene- eller server-URL), men for at dette skal fungere må du også konfigurere SSH uten passord, siden skriptet ikke vil ha tilgang til serveren hvis det ikke har tilgang på den.

Ah, hvis du vil at e-postmeldingen skal fungere, må du ha den postfix installert på serveren, nesten alle installere postfix men hei, avklaringen er gyldig 🙂

Selv om ... de kunne endre og bruke en skript i Python at jeg dro for en stund siden, men jeg tror det ville fungert litt mer ^ - ^ U

Og vel, det gjenstår bare å forlate skriptet:

VPS Backup-skript

Husk at du må gi det utførelsestillatelser (chmod + x vps_backup-script.sh)

For å få den til å kjøre hver dag klokka 10, setter de dette i en terminal:

echo "* 10    * * *   root    cd /root && ./vps_backup-script.sh" >> /etc/crontab && /etc/init.d/cron restart

Forutsatt at skriptet er lagret som: /root/vps_backup-script.sh

Vel nok, jeg vil ikke få dette til å virke for komplisert, noe det ikke er haha, faktisk er dette noe ekstremt enkelt, bare at når du ser det for første gang kan det være litt skummelt 🙂

Gi meg beskjed om tvil, spørsmål eller forslag, du vet at jeg liker å hjelpe 😀

Hilsen

PD: Jeg presiserer at jeg ikke er eller anser meg selv som programmerer haha, ikke engang nær LOL !! Jeg vet at manuset kan optimaliseres mye mer, men hei ... jeg er ikke programmerer 🙂


Innholdet i artikkelen følger våre prinsipper for redaksjonell etikk. Klikk på for å rapportere en feil her.

29 kommentarer, legg igjen dine

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   faustod sa

    Legge bort,

    hilsen,

    Hvordan er du veldig interessant, men en advarsel; Hvis det manuset kjøres i dag, vil det hete 2012-04-25, i dag er klokkedagen.

    Takk
    faustod

    1.    KZKG ^ Gaara sa

      HAHAHA sant hahaha, det er at jeg liksom lever i fremtiden ... LOL !!!

  2.   linuxman sa

    Veldig interessant, faktisk viser det meg hvordan jeg kan gjøre flere ting, jeg utvikler mine egne og jeg skal ta noen koder fra deg for å legge til funksjonalitet.

    I mitt tilfelle vil jeg bruke rsync i stedet for cp for å kopiere filene.

    Jubel !!

    1.    KZKG ^ Gaara sa

      Ja, bruk av rsync er en god ide, men jeg foretrakk å bruke cp fordi jeg vil kopiere filer til en tom mappe, jeg vil ikke synkronisere med annen informasjon haha ​​det er derfor jeg bare brukte cp :)

      Hvis du vil vite flere tips for bash, sjekk koden her på siden ... du finner hvordan du lager låsefiler, kontrollerer hvilke brukere som kan utføre skriptet osv. 😀
      https://blog.desdelinux.net/tag/bash/

      Hilsen og takk for kommentaren 🙂

  3.   Edwin sa

    en server med ssh uten passord?

    1.    KZKG ^ Gaara sa

      Ikke uten passord, men godta SSH-tilkoblinger med tillit fra en spesifikk IP, dette gjøres på en MEGET sikker måte med bruk av offentlige og private nøkler, i lenken jeg la igjen forklarte jeg alt i detalj 🙂

      1.    Edwin sa

        Med nøkler ja, et øyeblikk var jeg redd xD

        1.    KZKG ^ Gaara sa

          LOL !!! ei heller at jeg var selvmordstank LOL !!!

          1.    Courage sa

            Nei, men inne i ting vi er, liker du virkelig å klage

  4.   andresnetx sa

    flott dette skriptet.
    håper de fortsetter å legge ut manus. hjelpe de av oss som bytter til linux å være mer produktive i tide og redusere læringstiden.

    1.    KZKG ^ Gaara sa

      😀 takk til deg for kommentaren.
      Snart vil jeg publisere et nytt tips om bash 😉

      Hilsen

      1.    føflekkerammer sa

        takk gal! En dag vil jeg gi tilbake favorittene som kameratene i dette vakre linux-samfunnet gir meg!

  5.   ivan sa

    Hvordan kan jeg kopiere innholdet i flere loggfiler og plassere det i en enkelt fil ,,,, automatisk hvert 5. minutt, med tanke på ,,,,, at innholdet i filene som skal kopieres måles kontinuerlig

    1.    elwuilmer sa

      Min anbefaling, (forslag), vil være et bidrag ... Lag en betingelse om at han hvert 5. minutt verifiserer filen eller filene, enten med:

      * siste tilgang = tid
      * sist endret = mtime
      * siste informasjonsendring = ctime

      Følgelig, hvis det er noen endring i filene, grupperer du dem og / eller leser dem (cat) og sender dem> loggfiler.

      Dette er et klart eksempel, et spørsmål om å teste, prøve, verifisere og modifisere.

  6.   KZKG ^ Gaara sa

    Tester Caché-plugin ...

  7.   Santiago sa

    Veldig god informasjon, sannheten som var veldig nyttig for meg, jeg gjennomfører et stort prosjekt (åpenbart er det fiktivt, fordi det er fra studien), og denne informasjonen var veldig bra for meg.
    Takk så mye!!

  8.   liten brunette sa

    Hvordan vil du lage et skallskript som:?
    Be brukeren om å spesifisere navnet på katalogen som skal sikkerhetskopieres
    Be deg om stedet der du vil sikkerhetskopiere katalogen
    Inkluder sikkerhetskopidato

    1.    KZKG ^ Gaara sa

      Hei,

      Med "lese" kan jeg be brukeren om alle dataene, så tilordner jeg dem til variabler og det er det.

      Skriv meg til e-posten min hvis du er i tvil: kzkggaara [at] desdelinux [dot] net

      Hilsen

      PS: Sikkerhetsdatoen er allerede inkludert i skriptet.

  9.   ana_gaby sa

    presentere et enklere skript for å sikkerhetskopiere mapper fra ubuntu og overføre dem med ftp til en annen server takk

  10.   John sa

    Hei, hvordan lager jeg en sikkerhetskopi av hele Linux-operativsystemet og sender den til en annen pc. Jeg vil sette pris på oppmerksomheten din, tusen takk !!

  11.   Franco Valdettaro sa

    Kan du sende meg skriptet til e-posten min fvaldettaro@gmail.com vær så snill.

  12.   Xavier sa

    Kan du sende meg skriptet til e-posten min, takk en million hilsener.

  13.   Wuilmer Bolivar sa

    God morgen venn, jeg tror du har et problem med underdomenet "lim inn" fordi jeg sjekket noen publiserte koder / skript som førte til paste.desdelinux, og de omdirigerer meg alle til blog.desdelinux.

  14.   Ekorn i nettet sa

    Ja, det er ikke mulig å få tilgang til skriptet fordi lim inn. omdirigerer deg, kan du laste den opp et annet sted?

    1.    AlexStreaming sa

      Har problemet med å få manuset blitt løst?

      Takk.

      1.    Luigys toro sa

        Det er løst, de kan nå få tilgang til kodene

      2.    Ekorn i nettet sa

        Nå ja, takk!

  15.   paco sa

    god ettermiddag, jeg vil gjerne kunne laste ned skriptet, det ville være mulig å laste det opp igjen, nå er det ikke tilgjengelig

  16.   Ramiro sa

    Hei,
    Veldig bra bidrag! Kan jeg be deg om at manuset skal lastes ned? Tusen takk 🙂