Muokataan sivua USB-varmuuskopio

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 3: Rivi 3:
==Menetelmä==
==Menetelmä==


*UDEV-säännöllä luodaan <tt>/dev</tt> -hakemistoon [[laitetiedosto]]linkki tietyllä nimellä kun varmuuskopiointiin käytettävä USB-levy liitetään koneeseen
*UDEV-säännöllä luodaan /dev -hakemistoon laitetiedostolinkki tietyllä nimellä kun varmuuskopiointiin käytettävä USB-levy kytketään
*Varmuuskopio tehdään [http://backup2l.sourceforge.net backup2l]-ohjelmalla UDEV-säännöllä luodun laitenimen avulla
*Varmuuskopio tehdään [http://backup2l.sourceforge.net backup2l]-ohjelmalla UDEV-säännöllä luodun laitenimen avulla
*Varmuuskopiotyön tuloksista lähetetään sähköposti ylläpitäjälle
*Varmuuskopiotyön tuloksista lähetetään sähköposti ylläpitäjälle
Rivi 9: Rivi 9:
==USB-levyn kytkeminen==
==USB-levyn kytkeminen==


Varmuuskopiointiin on varattu erityinen USB-levy. Ytimen [[udev]]-järjestelmä luo laitetiedoston <tt>/dev</tt>-hakemistoon kun USB-laite kytketään. USB-levyt emuloivat [[scsi]]-levyä ja saavat nimiä <tt>/dev/sda1</tt>, <tt>/dev/sda2</tt> jne. Lisätietoja löytyy artikkelista [[Laitetiedosto]]t.
Varmuuskopiointiin on varattu erityinen USB-levy. Linux-kernelin [[udev]]-järjestelmä luo laitetiedoston /dev-hakemistoon kun USB-laite kytketään. USB-levyt emuloivat scsi-levyä ja saavat nimiä: /dev/sda1, /dev/sda2 jne.  


Jos koneeseen kytketään useampia levyjä, ei tietyn levyn laitetiedoston nimestä voi olla varma. Tästä syystä tehdään udev-säännöllä varmuuskopiointiin käytettävän levyn laitetiedostoon viittaava linkki, joka saa aina saman nimen riippumatta siitä, monentenako USB-levynä varmuuskopiolevy kytketään. Tällä tavalla koneessa voi käyttää USB-muistitikkuja ja muita USB-levyjä. Varmuuskopiointi onnistuu, vaikka varmuuskopiolevy ei aina saisikaan samaa <tt>/dev/sda*</tt>-nimeä.
Jos linux-koneeseen kytketään useampia levyjä, ei tietyn levyn laitetiedoston nimestä voi olla varma. Tästä syystä tehdään udev-säännöllä varmuuskopiointiin käytettävän levyn laitetiedostoon viittaava linkki, joka saa aina saman nimen riippumatta siitä, monentenako USB-levynä varmuuskopiolevy kytketään. Tällä tavalla linux-koneessa voi käyttää USB-muistitikkuja ja muita USB-levyjä. Varmuuskopiointi onnistuu, vaikka varmuuskopiolevy ei aina saisikaan samaa /dev/sda*-nimeä.


Seuraava koodinpätkä on tiedostossa <tt>/etc/udev/rules.d/010_usblevy.rules</tt>. Tiedoston nimen edessä on numero 010, koska hakemiston tiedoston suoritetaan järjestyksessä. Numeron avulla tiedosto suoritetaan ensimmäisten joukossa ja mahdolliset aiemmat säännöt eivät pääse vaikuttamaan lopputulokseen.
Seuraava koodinpätkä on tiedostossa <tt>/etc/udev/rules.d/010_usblevy.rules</tt>. Tiedoston nimen edessä on numero 010, koska hakemiston tiedoston suoritetaan järjestyksessä. Numeron avulla tiedosto suoritetaan ensimmäisten joukossa ja mahdolliset aiemmat säännöt eivät pääse vaikuttamaan lopputulokseen.
Rivi 21: Rivi 21:
''HUOM! Edellisen on oltava yhdellä rivillä!''
''HUOM! Edellisen on oltava yhdellä rivillä!''


Ensimmäisellä <tt>Kernel</tt>-lausekkeella kohdistetaan sääntö tilanteisiin, joissa ydin tunnistaa kytkettävän laitteen olevan sd-alkuinen järjestysnumeron 1-9 saanut levy. Toisella, <tt>subsystems</tt>-lausekkeella kohdistetaan sääntö koskemaan ainoastaan USB-väylään kytkettyjä laitteita. <tt>attrs</tt>-lausekkeella kohdistetaan sääntö tiettyyn varmistuslevyyn sen sarjanumeron perusteella. On oleellista muistaa, että ehtolausekkeissa parametrien yhtäläisyyttä kuvataan kahdella yhtäkuin-merkillä. Levyn sarjanumeron saa selville komennolla
Ensimmäisellä Kernel-lausekkeella kohdistetaan sääntö tilanteisiin, joissa Kernel tunnistaa kytkettävän laitteen olevan sd-alkuinen järjestysnumeron 1-9 saanut levy. Toisella, subsystems-lausekkeella kohdistetaan sääntö koskemaan ainoastaan USB-väylään kytkettyjä laitteita. attrs-lausekkeella kohdistetaan sääntö tiettyyn varmistuslevyyn sen sarjanumeron perusteella. On oleellista muistaa, että ehtolausekkeissa parametrien yhtäläisyyttä kuvataan kahdella yhtäkuin-merkillä. Levyn sarjanumeron saa selville komennolla
  [[udevinfo]] -a -p /sys/block/sdb | [[grep]] serial
  udevinfo -a -p /sys/block/sdb | [[grep]] serial
Jos levy näkyy [[laitetiedostot|laitetiedostona]] <tt>/dev/sdb</tt>.
Jos levy näkyy [[laitetiedostot|laitetiedostona]] <tt>/dev/sdb</tt>.


<tt>Symlink</tt>-lausekkeella luodaan [[symbolinen linkki|linkki]] varsinaiseen laitetiedostoon. Tämän linkin avulla laitteelle saadaan vakionimi riippumatta siitä, montako usb-levyä tietokoneeseen on aiemmin kytketty. <tt>GROUP</tt>-lausekkeella määritellään linkin [[Tiedoston oikeudet|käyttäjäryhmä]]. <tt>RUN</tt>-lausekkeella udev käynnistää [[bash-skriptaus|skriptin]], jonka avulla varmistus käynnistetään.
Symlink-lausekkeella luodaan [[symbolinen linkki|linkki]] varsinaiseen laitetiedostoon. Tämän linkin avulla laitteelle saadaan vakionimi riippumatta siitä, montako usb-levyä tietokoneeseen on aiemmin kytketty. GROUP-lausekkeella määritellään linkin [[Tiedoston oikeudet|käyttäjäryhmä]]. RUN-lausekkeella udev käynnistää [[bash-skriptaus|skriptin]], jonka avulla varmistus käynnistetään.


Udev-säännössä käynnistettävä skriptin ajo ei saa kestää pitkään. udev-järjestelmä keskeytyy skriptin ajamisen ajaksi. Jos säännöllä ajetaan pitkään istunnon varaavia ohjelmia, uusien laitetapahtumien rekisteröinti viivästyy. [[Varmuuskopiointi]] on pitkä prosessi, joten prosessin käynnistämiseen käytetään väliskriptiä, joka irrottaa varmuuskopiointiprosessin udevin käynnistämästä komentotulkkiympäristöstä.
Udev-säännössä käynnistettävä skriptin ajo ei saa kestää pitkään. udev-järjestelmä keskeytyy skriptin ajamisen ajaksi. Jos säännöllä ajetaan pitkään istunnon varaavia ohjelmia, uusien laitetapahtumien rekisteröinti viivästyy. [[Varmuuskopiointi]] on pitkä prosessi, joten prosessin käynnistämiseen käytetään väliskriptiä, joka irrottaa varmuuskoprosessin udevin käynnistämästä komentotulkkiympäristöstä.


Komennolla
<code>Udevinfo -e</code> -komennolla saa lisävalaistusta ja vinkkejä udev-sääntölausekkeiden kirjoittamiseen.
udevinfo -e
saa lisävalaistusta ja vinkkejä udev-sääntölausekkeiden kirjoittamiseen.


[[fstab|<tt>/etc/fstab</tt>]] -tiedostoon on seuraavaksi lisättävä rivi
[[/etc/fstab]] -tiedostossa on rivi:
  /dev/usblevy /media/usblevy auto rw,user,noauto 0 0
  /dev/usblevy /media/usblevy auto rw,user,noauto 0 0


Rivi 40: Rivi 38:
==Varmuuskopio-ohjelman käynnistäminen==
==Varmuuskopio-ohjelman käynnistäminen==


<tt>/root</tt>-hakemistossa on seuraava [[bash-skriptaus|skripti]] <tt>backup2l.sh</tt>, jolla varmuuskopiointiohjelma käynnistetään:
/root -hakemistossa on seuraava [[bash-skriptaus|skripti]] <tt>backup2l.sh</tt>, jolla varmuuskopiontiohjelma käynnistetään:


<source lang="bash">
<source lang="bash">
Rivi 49: Rivi 47:
</source>
</source>


Skriptin ensimmäisellä rivillä on varmistus, joka mahdollistaa varmuuskopioinnin estämisen lisäämällä <tt>/root</tt>-hakemistoon <tt>.eibackup2l</tt>-nimisen tiedoston. Tällä voi ehkäistä varmuuskopioinnin käynnistymisen esimerkiksi tilanteessa, jossa tietoja pitäisi palauttaa. Tilanteesta lähetetään <tt>user</tt>-nimiselle [[käyttäjä]]lle sähköpostiviesti.
Skriptin ensimmäisellä rivillä on varmistus, joka mahdollistaa varmuuskopioinnin estämisen lisäämällä <tt>/root</tt>-hakemistoon <tt>.eibackup2l</tt>-nimisen tiedoston. Tällä voi ehkäistä varmuuskopionnin käynnistymisen esimerkiksi tilanteessa, jossa tietoja pitäisi palauttaa. Tilanteesta lähetetään user-nimiselle [[käyttäjä]]lle sähköpostiviesti.


Skriptin toisella rivillä varsinainen varmuuskopio-ohjelma käynnistetään. [[Nice]]-komennolla lasketaan varmuuskopio-ohjelman prioriteettia. Ohjelman virheilmoitukset on ohjattu <tt>/dev/null</tt>:iin, kuten myös vakiosyöte. Vakiosyötteen ohjaaminen on tärkeää, muuten varmuuskopioprosessia ei saa irrotettua alkuperäisestä komentotulkista ja udev keskeyttää lyhyen aikavalvonnan jälkeen skriptin suorituksen. Varmuuskopio-ohjelman vakiotulostus ohjataan sähköpostiohjelmalle.
Skriptin toisella rivillä varsinainen varmuuskopio-ohjelma käynnistetään. [[Nice]]-komennolla lasketaan varmuuskopio-ohjelman prioriteettia. Ohjelman virheilmoitukset on ohjattu /dev/null:iin, kuten myös vakiosyöte. Vakiosyötteen ohjaaminen on tärkeää, muuten varmuuskopioprosessia ei saa irrotettua alkuperäisestä komentotulkista ja udev keskeyttää lyhyen aikavalvonnan jälkeen skriptin suorituksen. Varmuuskopio-ohjelman vakiotulostus ohjataan sähköpostiohjelmalle.


Backup2l-ohjelmalle on kerrottu sen omassa määritystiedostossa <tt>/etc/backup2l.conf</tt> mistä hakemistoista varmuuskopio tehdään. Samassa tiedostossa kerrotaan missä itse varmuuskopiolaitteen kohdehakemisto sijaitsee (<tt>/media/usblevy/backup2l</tt>).
Backup2l-ohjelmalle on kerrottu sen omassa määritystiedostossa <tt>/etc/backup2l.conf</tt> mistä hakemistoista varmuuskopio tehdään. Samassa tiedostossa kerrotaan missä itse varmuuskopiolaitteen kohdehakemisto sijaitsee (<tt>/media/usblevy/backup2l</tt>).
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)