Takaisin



RASPBERRY PI - OPAS OSA 18 - 12.04.2013

Kuva 1.

Mikäli joudut Linuxissa tekemään toistuvasti samoja asioita, niin kannattaa miettiä skriptin tekemistä tätä varten.

Itse olen tässä kehitellyt omia ohjelmia raspissa ja aika ajoin tuli tarvetta ottaa varmuuskopio tekemistäni ohjelmista, lähdekoodeista yms. ennen kuin kävin tekemään muutoksia tiedostoihin. Tällä saavutin sen että aikaisempi versio tuli talteen ja pystyisin ottamaan askeleen taaksepäin ohjelmien versioissa jos jotain menisi pahasti pieleen.

Ja oli turhauttavaa jatkuvasti kopioida tiedostoja talteen manuaalisesti Linuxin komentorivillä, joten tein skriptin varmuuskopiointia varten ja tässä nyt yksinkertaistettu esimerkki kyseistä skriptistä ja jokainen voi jalostaa skriptistä mieleisensä, joka vastaa omia tarpeita.

Kuva 2.

Aloitetaan tekemällä kaksi kansioita. Itse tein root käyttäjän kotihakemistoon. Tehdään ensin backup kansio.

Kuva 3.

Tämän jälkeen tehdään data kansio.

Kuva 4.

siirrytään tekemääsi data kansioon.

Kuva 5.

Tehdään 3 teksti tiedostoa nanolla ja kirjoitetaan niihin jotakin ja tallennetaan.

Tämän jälkeen katsotaan data-kansion sisältö ls-komennolla ja sinulla pitäisi näkyä kolme tekstitiedostoa. Itse nimesin tiedostot seuraavasti: eka.txt, toka.txt ja kolmas.txt.

Kuva 6.

Tämän jälkeen poistutaan data-kansiosta ja mennään backup-kansioon. Ja katso pwd-komennolla tiedosto polku missä olet, tarvitaan myöhemmin. Luodaan nanolla backup.sh tiedosto.

Kuva 7.

Aloitetaan skriptin luonti:

tar -cvzf backup.tar.gz /root/data : kyseinen rivi pakkaa root kansiossa olevan data-kansion sisältöineen.

date > /root/backup/info.txt : rivi tulostaa päivämäärän info nimiseen tekstitiedostoon bakcup-kansiossa ja luo tiedoston jos sitä ei aiemmin ole.

md5sum backup.tar.gz >> /root/backup/info.txt : laskee md5-summan pakatusta tiedostosta ja tallentaa tuloksen info nimiseen tekstitiedostoon.

Tarkista että laitoit oikeat hakemisto polut skriptiin. PWD-komento auttaa tässä.

Kuva 8.

Annetaan chmod komennolla vain rootille oikeus skriptiin. ajetaan tehty skripti. Tämän jälkeen backup kansioon pitäisi ilmestyä 2 tiedostoa lisää backup.tar.gz ja info.txt tiedostot.

Kuva 9.

Avataan info.txt tiedosto ja tutkitaan sen sisältöä.

Kuva 10.

Tiedostoon on tulostunut päivämäärä ja kellonaika ja pakatun tiedoston md5-summa.

Kuva 11.

Siirrytään takaisin backup-kansioon ja luodaan recovery.sh skripti nanolla.

Kuva 12.

Kirjoitetaan kuvassa 12 näkyvät rivit.

cd / : siirrytään juureen.

tar -xvzf /root/backup/backup.tar.gz : Puretaan pakattu backup-paketti kyseisen polun päästä juureen.

Kuva 13.

Mennään seuraavaksi tehtyyn data kansioon ja poistetaan luodut tekstitiedostot komennolla rm *.txt. Tarkistetaan että tekstitiedostojen poisto on onnistunut ls-komennolla.

Kuva 14.

Tämän jälkeen mennään backup-kansioon ja ajetaan recovery.sh skripti jonka jälkeen skripti purkaa backup-paketin tiedostot tiedostopolkujen päähän. Kun tämä on tehty niin käydään tarkistamassa onnistuttiinko tässä käymällä data-kansiossa tarkistamassa palautetut tekstitiedosto.

Pienillä skripteillä saa näppärästi automatisoitua useasti tehtäviä toimenpiteitä Linux-koneella. Vielä kun antaa scriptit cronin ajettavaksi niin voi tämänkin backup toimenpiteen automatisoida.

<-Osa 17. Osa 19.->
©MikaWeb