Προς το περιεχόμενο

System tar & restore Project


tritonas00

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

ABOUT:

 

Το System tar & restore εχει στοχο να απλοποιησει την διαδικασια δημιουργιας backup μιας GNU/Linux εγκαταστασης και την επαναφορα αυτου χρησιμοποιωντας τo tar ή την μεταφορα υπαρχουσας εγκαταστασης με rsync.

 

Αποτελειται απο δυο bash scripts, το κυριο προγραμμα star.sh και τον gui wrapper star-gui.sh

 

Τρια modes ειναι διαθεσιμα:

  • Backup: Με αυτο το mode μπορουμε να δημιουργησουμε ενα tar backup archive του συστηματος μας.
  • Restore/Transfer: Το Restore mode χρησιμοποιει το παραπανω archive για να το επαναφερει σε δωθεν partition(s). Το Transfer mode μεταφερει το συστημα μας σε δωθεν partition(s) με την rsync. Κατοπιν, και στις δυο περιπτωσεις, φτιαχνει το fstab, ξανα-χτιζει το initramfs image για καθε διαθεσιμο kernel, κανει generate τα locales και τελος εγκαθιστα τον επιλεχθεντα bootloader.
Υποστηριζομενες διανομες: Arch, Debian/Ubuntu, Fedora, openSUSE, Gentoo, Mandriva.

 

backup.png

 

Documentation

Stable Releases

Changelog

 

TIPS:

 

-(Arch Linux) Aν το restore γινει σε usb φλασακι, τοτε στο αρχικο συστημα που θα παρουμε backup, βεβαιωνομαστε οτι εχουμε ενεργοποιημενο τον block hook στο /etc/mkinitcpio.conf μας για να μπορει να boot-αρει το Arch απο το φλασακι.

 

-Aν επιθυμουμε να παρουμε backup ενα συστημα το οποιο θελουμε αργοτερα να το επαναφερουμε / χρησιμοποιησουμε σε διαφορετικο hardware, διαφορα pc's laptops κλπ καλο θα ειναι να:

 

1.Ορισουμε dhcp

 

2.Nα μην υπαρχει αρχειο xorg.conf εφοσον εχουμε περασει ολους τους drivers του Xorg, ή ακομα καλυτερα να ορισουμε ρητα vesa στο xorg.conf μας και να απενεργοποιησουμε τον KMS (nomodeset στον kernel μας). Με αυτον τον τροπο θα ειμαστε σιγουροι οτι θα ανοιξει ο Xorg ανεξαρτητως hardware, και μετα βαζουμε τον driver της καρτας γραφικων, κατα το δοκουν.

Επεξ/σία από parsifal
Update που ζήτησε ο tritonas
  • Like 22
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντ. 1,6k
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Σιγουρα, απλα με την tar υπαρχει ευελιξια.

 

Απο κει και μετα, επειδη χρησιμοποιω χρονια και σε ολα μου τα μηχανηματα την συγκεκριμενη πρακτικη απροβληματιστα και τα scripts (σε λιγο διαφορετικη μορφη), θελησα να τα μοιραστω και με την βοηθεια του forum και πιο εμπειρων χρηστων απο μενα να τα βελτιωσουμε κι'αλλο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ωραίος μπράβο.

 

Το tar όντως προσφέρει ευελιξία και είναι εύκολο στη χρήση. Δυστυχώς όμως δεν καλύπτει τα πάντα που (ενδεχομένως) χρειάζονται για system backup. Με την "cvpzf" δεν καλύπτεις sparse files που θα αντιγραφούν ολόκληρα αντί ως sparse, ACLs, Extended Attributes, SELinux, κτλ. Αν εξαιρέσεις τα Sparse αρχεία, πολύ λίγοι χρήστες θα χρησιμοποιήσουν κάποιο από τα υπόλοιπα αλλά όλο και περισσότερες διανομές τα χρησιμοποιούν οπότε ο χρήστης, χωρίς να το ξέρει, δεν θα κάνει σωστό backup.

 

Τα sparse αρχεία καλύπτονται από την παράμετρο S ενώ για τα υπόλοιπα χρειάζεσαι patchαρισμένο tar όπως αυτό που δίνει η Fedora. Ίσως να τα υλοποιεί και το Arch. Αν ναι τότε αντιγράφονται όλες οι πληροφορίες εκτός από τα παλιά unix attributes (αυτά που ορίζουμε με το chattr όπως πχ immutable, appendable, κτλ).

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ωραιος ο οδηγος.Μερικες διευκρινησεις θελω..

 

1.Απο οτι καταλαβα απο το backup script , στην ουσια τραβαει το root ?και οτι ειναι εκει μεσα εκτος καποιων εξαιρεσεων απο οτι βλεπω ?(/dev , /media /lost+found κλπ) ?

2.Δεν βλεπω καπου να ελεγχεται το που δηλωνει ο χρηστης να σωθει το backup.Αν εγω δηλωσω για φακελο το / ?Απο οτι βλεπω εχεις βαλει να εξαιρειται ο φακελος οπου θα σωθει το backup.Αρα ?θα εξαιρεθει ολο το / ? :)

3.Αρχεια που χρησιμοποιουνται την ωρα του backup?Αντιγραφονται κανονικα?Permissions?Τι γινεται με αυτα?

 

 

 

ΥΓ : στο fedora ειναι grub2-install/mkconfig κλπ οπως διαπιστωσαμε σε προσφατο θεμα στο φορουμ :)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@imitheos

 

Thanks for the info!!

 

Εχει σημασια και η θεση του ή απλα ενα Scvpzf ειναι οκ ?

 

@mphxths

 

1. Ναι, ολο το / εκτος των περιεχομενων των exclude.Οι φακελοι καθαυτο μενουν.

 

2. Δεν πεταει χυμα τα αρχεια. Θα φτιαξει εναν φακελο με ονομα "ημερομηνια" μεσα στο / και αυτος ο φακελος (που θα εχει και τα αρχεια tgz log και error) θα εξαιρεθει

 

3.Δεν υπαρχει θεμα με το read. Διαβαζονται. Αρκει την ωρα που παιρνει backup μην κανεις write πχ να εισαι ας πουμε στο internet και γραφει η cache γιατι θα παρεις μηνυμα οτι το αρχειο ταδε αλλαξε την ωρα που το διαβαζε :P

τα permissions μενουν ακριβως τα ιδια. ( ο p διακοπτης.)

 

Ωραια thanks για την fedora !

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Thanks for the info!!

 

Εχει σημασια και η θεση του ή απλα ενα Scvpzf ειναι οκ ?

 

Η σειρά των παραμέτρων δεν παίζει κανένα ρόλο με μοναδικό κανόνα τα ορίσματα να μπαίνουν με τη σειρά που πρέπει. Η f για παράδειγμα παίρνει ως όρισμα το όνομα του αρχείου. Η C ορίζει τον κατάλογο στον οποίο θα γίνει chdir οπότε μπορείς να έχεις "zxvfC mitsos.tar.gz /path/to/extract/to" ή "zfxCv mitsos.tar.gz /path/to/extract/to" ή "Czvfx /path/to/extract/to mitsos.tar.gz" δηλαδή θα πρέπει όταν έχεις περισσότερες της μιας παραμέτρους που δέχονται ορίσματα, τα ορίσματα αυτά να μπαίνουν με την σειρά που έχουν δηλωθεί οι αντίστοιχες παράμετροι.

 

Κατά τα άλλα τις βάζεις όπως θέλεις. Το zcvf που είναι το πιο γνωστό μπορεί να γραφτεί με όποιο συνδυασμό θέλεις και θα είναι το ίδιο.

  • Like 3
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Τέλειος και ο οδηγός...

 

Ελπίζω να σας αρέσει το system tar & restore γιατί εγώ που το χρησιμοποίησα αυτές τις μέρες και για testing αλλά και για να κάνω restore δύο συστήματα το βρήκα εξαιρετικά βολικό και χρήσιμο.

 

Με απαντήσεις σαν του imitheos (btw γαμώ τα avatar.... μόλις τελείωσα ένα run στο SoA) θα βελτιωθεί αρκετά το project. Όποιος ξέρει και για τις άλλες διανομές να δώσει πληροφορίες asap... :P

 

Τέλος, εγώ σε ευχαριστώ tritona για την υπομονή σου τόσες μέρες με τα noobικα που έκανα ώρες ώρες. Και φυσικά και για το τέλειο project... Keep on dude...!!!! (Μπεεεεεεεεεεεε :lol: )

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μηπως να γινοταν ελεγχος για το αν υπαρχουν zenity/tar/δικτυο και να εβγαζε τα αναλογα μηνυματα...?

 

error handling με λιγα λογια...

 

καλο, στα υποψην αν δεν υπερβαινει τις γνωσεις μου. :P

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Για το tar λιγο δυσκολο να μην υπαρχει...

 

για το zenity ενας ευκολος τροπος θα ηταν με ενα μπακαλιστικο του στυλ

 

pacman -Ss zenity | grep installed > /tmp/tmpfile

 

και μετα ενας ελεγχος του μεγεθους του αρχειου με ενα if/else .Αν ειναι μηδενικο , αρα δεν ειναι εγκατεστημενο , αλλιως ειναι εγκατεστημενο.

Και μετα γινονται οι αναλογες κινησεις αναλογως τι θα προκυψει απο τον ελεγχο...

 

Οσο για τον ελεγχο υπαρξης δικτυου λογικα θα υπαρχουν ενα καρο κομψοι τροποι...που ξεφευγουν αυτην την στιγμη των γνωσεων μου ή την αντιληψης μου ...λογικα θα υπαρχουν και αλλοι τοσοι μπακαλιστικοι :)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@mphxths

 

Ναι αλλα δεν θελουμε μονο για arch, τουλαχιστον το backup να δουλευει παντου.

 

Οποτε κατι σε φαση να ψαχνει στο /usr/bin για το αν υπαρχει το "zenity" μαλλον.

 

Απο την αλλη το αναφερω στα requirements οπως και τον grub. Θα δουμε τι θα κανουμε.

 

Για το δικτυο ομως θα ηταν καλο να βγαζει καποιο error ας πουμε, αν και για οποιoδηποτε λογο τερματισει η wget θα γυρισει παλι πισω στο file selection dialog

----------------------------------------------------------------------------

 

thanks nullscan !

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

 

 

καλο, στα υποψην αν δεν υπερβαινει τις γνωσεις μου. :P

 

>
BRZENITY=$(which zenity 2>/dev/null)
BRTAR=$(which tar 2>/dev/null)

if [ "x$BRZENITY" = "x" ]; then
   echo "cannot find zenity which is needed for nifty boxen."
   exit
fi

if [ "x$BRTAR" = "x" ]; then
   echo "yeah run a tar-based backup script without having tar installed."
   exit
fi

 

Κάτι τέτοιο σου κάνει ? Αν δεν σε ενδιαφέρει συμβατότητα με μη-bash μπορείς να χρησιμοποιήσεις και [[ αντί για [.

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...