Script datakopie

Van MandrivaClub.NL Wiki

Ga naar: navigatie, zoek

Inhoud

[bewerk] Scriptje om een kopie van je bestanden te maken zodat je die op CD of DVD kan zetten.


Ik heb tot mijn schade en schande geleerd dat je best alles wat voor jou van belang is op een CD/DVD bewaart voor het geval dat.
Je kan in de konsole een reeks taken laten uitvoeren. Wanneer je regelmatig dezelfde handelingen verricht dan kan je die bundelen in een script
Dus ga ik het maken van een script uitleggen waarmee je een map kan vullen met de gegevens die je veilig wil stellen. Nadien moet je ze enkel nog op CD/DVD branden met bvb K3b. Rayke

[bewerk] Hoe maak je een overzichtelijke mappenstructuur aan?

Bij de installatie van je distro wordt een map aangemaakt die voorzien is om je bestanden in te plaatsen. Die zal Dokumenten of iets dergelijks heten en staat in je home map (/home/[gebruiker]/Documenten). Je kan die map gebruiken en verder uitbouwen.
Wanneer je in het K-Menu op "Persoonlijke map" klikt opent konqueror een scherm en zie je jouw persoonlijke mappen.
Wanneer je rechts klikt in het rechterdeel van het scherm dan kan je kiezen om een nieuwe map te maken.
Als je bevoorbeeld vaak teksten maakt kan je een map "teksten" maken.
Zo ga je tewerk voor alle zaken die jij op je computer doet.
Voor mezelf heb ik zo een paar mappen gemaakt. Mijn hoofdmap heet "Docu" daarin vind je bvb Allerlei, sos, Teksten, ...
Naast Docu heb ik ook een map "Foto" gemaakt. Nu is er veel plaats in maar als het weer beter wordt kan die aardig wat plaats innemen. Vandaar dat die 2° map er is. Ik moet het nog op CD/DVD krijgen ook.
Binnen Foto zijn er weer een paar onderverdelingen gemaakt. Foto-Ori (originele foto's), allerlei, FotoSite (waar alles van mijn webstekje in staat) en Pictures (de map met alles van DigiKam).
Daar ik weet dat de foto's veel plaats innemen heb ik daar rekening mee gehouden in de scriptjes. Ik maak er 3 zodat de bestanden over 3 CD/DVD kunnen verdeeld worden als dat nodig is.

[bewerk] Firefox favorieten

Natuurlijk maak ik een kopie van mijn favorieten in firefox. Hoe? Wel in Firefox kies je bovenaan in het menu voor: Bladwijzers >> Bladwijzers beheren.
In het nieuw geopende scherm kies je in het menu : Bestand >> exporteren, en dan voor opslaan.
Nu is er een bestand genaamd bookmarks.html gemaakt in je persoonlijke map. Daarin zitten al je favorieten opgeslagen.
Je kan die terug importeren als je ipv exporteren voor importeren kiest.

[bewerk] Mail adressen

In K Mail klik je aan de linkerkant op Adressen waarna je jouw mailadressen ziet.
Je kiest bovenaan in het menu voor: Bestand >> exporteren >> Als LDIF adresboek.
Nadat je voor alle contactpersonen gekozen hebt (OK klikken) word je de naam "addressbook.ldif" in je persoonlijke map voorgesteld en kan je kiezen voor opslaan.

[bewerk] De scriptjes.

Het eerste script zal dienen om mijn map Docu naar een map (DVDdata) te kopieren die ik dan evt op DVD kan branden. Tevens geeft het script de grootte van de mappen en als laatste de totale grootte weer, dan weet ik wat er op CD of DVD gaat. Ik heb hetzelfde script gekopieerd en aangepast om mijn foto's klaar te zetten om op DVD te branden.

#!/bin/sh
#Kopieer alle mapen met data naar DVDdata
cp -R -f /home/rayke/Docu/ /home/rayke/DVDdata/
cp -f /home/rayke/bookmarks.html /home/rayke/DVDdata/
cp -f /home/rayke/addressbook.ldif /home/rayke/DVDdata/
#Zet rechten op rayke
chown -R rayke /home/rayke/DVDdata
chgrp -R rayke /home/rayke/DVDdata
#Grootte nazien
du -h /home/rayke/DVDdata

[bewerk] Uitleg.

Als er aan het begin van een regel een # staat dan is de rest van die regel gewoon uitleg, dus geen opdracht. Dus de eerste 2 bvb zijn uitleg.
De andere regels zijn opdrachten.
Nu gaan we de regels overlopen met een woordje uitleg.

[bewerk] Het script dieper uitgelegd.

  • #!/bin/sh

    Dit is dus een tekst, geen opdracht.

  • #Kopieer alle mapen met data naar DVDdata

  • cp -R -f /home/rayke/Docu/ /home/rayke/DVDdata/

    • cp : komt van copy en is de opdracht op te kopieren

    • -R : Is een parameter (aanvulling voor een opdracht). -R betekend recursief, dus alle onderliggende mappen worden meegenomen.

    • -f : Is het uitschakelen van een vraag of je het evt bestaande bestand wil overschrijven.

    • /home/rayke/Docu/ : Is het pad naar de map waar alle documenten opgeslagen zijn.

    • /home/rayke/DVDdata/ : Is het pad naar waar ik de kopie wil opslaan.


  • cp -f /home/rayke/bookmarks.html /home/rayke/DVDdata/
    • Met deze regel kopieer ik het bestand bookmarks.html (je favorieten van firefox) mee naar DVDdata




  • cp -f /home/rayke/addressbook.ldif /home/rayke/DVDdata/
    • Met deze regel kopieer ik het bestand addressbook.ldif (je favorieten van firefox) mee naar DVDdata





  • chown -R rayke /home/rayke/DVDdata
    • chown : Ch = change (verander) own = owner (eigenaar).

      Dus verander de eigenaar van de mappen in het pad. Dit is om zeker te zijn dat ik eigenaarsrechten heb op de kopie.

    • -R : Is de parameter voor recursief, dus alle onderliggende mappen worden meegenomen.

    • rayke : Is de gebruiker die ik de eigenaarsrechten over de gekopieerde mappen wil geven.

    • /home/rayke/DVDdata : Is het pad naar de plaats waar kopie opgeslagen is.



  • chgrp -R rayke /home/rayke/DVDdata
    • chgrp : Ch = change (verander) grp = group (groep).

      Dus verander de groep van de mappen in het pad. Dit doe ik omdat wanneer je bvb meerdere gebruikers hebt die deel uitmaken van een groep, zij dan ook met de gekopieerde mappen kunnen werken.

    • -R : Is de parameter voor recursief, dus alle onderliggende mappen worden meegenomen.

    • rayke : Is de groep die ik de eigenaarsrechten over de gekopieerde mappen wil geven.

    • /home/rayke/DVDdata : Is het pad naar de plaats waar mijn gekopieerde mails opgeslagen zijn.



  • du -h /home/rayke/DVDdata
    • du : disk usage = plaatsgebruik.

    • -h : Is de parameter die ervoor zorgt dat je het resultaat in MB og GB krijgt ipv kilobytes.

    • /home/rayke/DVDdata : Is het pad naar de plaats waar mijn gekopieerde data opgeslagen zijn.



  • #einde van dit script.

    • En weer een regeltje tekst, geeft het einde van dit scriptje aan. Dat had je al door denk ik.



[bewerk] Het script maken.

In je start-menu zoek je naar de tekstverwerker Kate. Die vind ik, onder Mandriva, bij de editors.
Je slaat het bestand op onder een naam die jezelf kiest (in mijn geval: data1). OK? Dan gaan we aan het tikken.
Je kan de tekst van mijn script overnemen, maar pas het pad en de gebruiker aan. Zowel voor de plaats waar jouw mails staan als voor de plaats waar je ze wil opslaan.
Als je script klaar is sla je het op en dan moeten we het nog op zijn plaats zetten en uitvoerbaar maken.


[bewerk] Het script naar de juiste plaats kopieren en uitvoerbaar maken.

Je opent een konsole en maakt je root.

Eerst tik je: su
Daarna wordt je rootpaswoord gevraagd, voer het in en druk op de enter-toets. Je prompt verandert.
Nu gaan we ons bestand kopieren van de plaats waar jij het opgeslagen hebt naar de map usr/bin. De volgende opdracht moet je dus aanpassen.
cp /home/rayke/Docu/sos/SCP/Mailscript /usr/bin
Als laatste moeten we ervoor zorgen dat je het bestand kan uitvoeren. Je pc moet het script kunnen begrijpen.
Daarvoor gebruiken we de opdracht chmod +x (execute=voer uit). Weer de onderstaande opdracht aanpassen aan de naam die jij aan je script gaf.
chmod +x /usr/bin/Mailscript

[bewerk] Het script gebruiken.

Het is klaar voor gebruik.
Je opent een konsole en maakt je root.

Eerst tik je: su
Daarna wordt je rootpaswoord gevraagd, voer het in en druk op de enter-toets. Je prompt veranderd.
Je voert de naam van je script in, voor mij dus Mailscript, en drukt de enter-toets en hup daar gaat je script.

[bewerk] En dan?

Wel dan kan je de gekopieerde bestanden opslaan op cd/dvd (met K3b) of op USB-stick (met konquerror).

[bewerk] TIP

Ik heb een laptopje en dacht eens proberen om met een scriptje de net gemaakte kopie naar mijn lapje te kopieren.
Als je het wil proberen kijk dan eens hier. . Je kan dat scriptje aanpassen om de reservekopie te verplaatsen.

Persoonlijke instellingen
MandrivaClub.NL