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

System tar & restore Project


tritonas00

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

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

Ανεβασα την 2.6.

google code

aur

 

Αλλαγες:

 

- Μπηκε support για XZ στο backup script. (argument: -c ή --compression και δεχεται GZIP ή XZ)

 

- Αλλαξα το argument -y, --yes σε -q, --quiet στο restore script. Αν δωθει τοτε δεν σταματαει στο summary, ουτε ρωταει για edit το fstab.

 

- Μπηκε argument για να μεταφερει μονο τα κρυφα αρχεια και φακελους του /home στο transfer mode (-o, --only-hidden)

 

- Κατηγοριες στο summary. Ειχα δωσει ενα:

 

 

restore -r /dev/sdb2 -b /dev/sdb1 -h /dev/mapper/arch-home -s /dev/sda2 -S /dev/sdb -f /home/babis/mpeee.tar.xz -R __active -V -U

 

 

και μου βγηκανε τα ματια στο summary :P Οποτε πλεον δειχνει:

 

2013_03_19_031646_1024x768_scrot.jpg

 

 

- Και τα δυο scripts πλεον, αν χρησιμοποιουμε arguments, ενεργουν μονο με αυτα που τους δωσαμε και δεν ρωτανε για τα υπολοιπα, αφου θεωρουν οτι δεν τα θελει ο χρηστης.

 

- To restore script αναγνωριζει το περιεχομενο του αρχειου που του δινουμε και δειχνει/κανει αναλογως - τοπικα και απο url. Υποστηριζει gzip ή xz compressed archive.

 

- Αν επιλεξουμε Syslinux, το παλιο syslinux.cfg εχει σωθει ως syslinux.cfg-old.

 

- Μπηκε και το hostname στο ονομα του backup file.

 

- Διορθωθηκε ενα bug-ακι, οπου το restore script στο Dialog interface, δεν αναγνωριζε το backup file αν αυτο ηταν σε διαδρομη με κενα.

 

- Αυτοματο μεγεθος στους διαλογους για τα partitions/δισκους, αναλογα με το περιεχομενο τους.

 

- Αφαιρεση των trailing spaces απο τα scripts.

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

Μιας και τα scripts ειναι πλεον wrapper-ready, εγραψα εναν γρηγορο zenity wrapper για το backup script.

 

Σε arch, αν εχετε εγκατεστημενο το πακετο θα χρησιμοποιησει αυτο (/usr/bin/backup).

Αλλιως, ανεξαρτητως διανομης, βαζετε το script στον ιδιο φακελο με το backup script για να το βρει και να το τρεξει.

 

Απαιτουνται zenity και xterm.

 

Enjoy  :P

 

 

 

#!/bin/bash

if [ -z $(which zenity 2> /dev/null) ];then
  echo -e "Package zenity is not installed\nInstall the package and re-run the script"
  exit
fi

if [ -z $(which xterm 2> /dev/null) ];then
  echo -e "Package xterm is not installed\nInstall the package and re-run the script"
  exit
fi

zenity --info --no-wrap --text  "This script will make a tar backup image of your entire system.

==>Make sure you have enough free space.
==>Make sure you have GRUB or SYSLINUX packages installed.

GRUB Packages:
-->Arch: grub-bios
-->Debian: grub-pc
-->Fedora: grub2

SYSLINUX Packages:
-->Arch: syslinux
-->Debian: syslinux extlinux
-->Fedora: syslinux syslinux-extlinux

Press OK to continue."

zenity --question --no-wrap --text "The default folder for creating the backup image is / (root).\nSave in the default folder?"
if [[ $? == 0 ]] ; then
   BR_BACKUP_OPTS="-d /"
else
   BRFOLDER=$(zenity --file-selection --directory)
   BR_BACKUP_OPTS="-d $BRFOLDER"
fi

zenity --question --no-wrap --text "Include /home directory?"
if [[ $? == 0 ]] ; then
   BR_BACKUP_OPTS="${BR_BACKUP_OPTS}"
else
   BR_BACKUP_OPTS="${BR_BACKUP_OPTS} -h"
   zenity --question --no-wrap --text "Keep hidden files and folders inside /home?"
   if [[ $? == 0 ]] ; then
     BR_BACKUP_OPTS="${BR_BACKUP_OPTS}"
   else
     BR_BACKUP_OPTS="${BR_BACKUP_OPTS} -n"
   fi
fi

BRcompression=$(zenity --list --column "Item" GZIP XZ --text "Select compression type:")
BR_BACKUP_OPTS="${BR_BACKUP_OPTS} -c $BRcompression"

zenity --question --no-wrap --text "Continue?"
if [[ $? == 0 ]] ; then
  if [ -z $(which backup 2> /dev/null) ];then
    xterm -e "BRcontinue="y" ./backup -i CLI ${BR_BACKUP_OPTS} && sleep 1" 
  else
    xterm -e "BRcontinue="y" backup -i CLI ${BR_BACKUP_OPTS} && sleep 1" 
  fi
else
  exit
fi

 

 

 

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

Δοκίμασα σήμερα το dropbox. Επειδή δεν έχει κάποια προστασία γιατί κάνω login και παίρνω το tar μου δούλεψε με το url. 

 

Το μόνο που δεν είδα είναι αν ολοκληρώνεται το restore γιατί δεν είχα χώρο για να κατεβάσω όλο το tar. Αλλά αυτό δεν μου το είπε το script. Δεν έβγαλε κάποιο μήνυμα λάθους. Απλά συνέχισε παρακάτω και μου έδειξε κάποια errors, δεν έκανε mount τα dev,proc,sys και μετά δεν έβρισκε grub ή syslinux όπως ήταν φυσικό. Κατάλαβα ότι δεν μπορώ να το κατεβάσω όλο όταν πήγα να το κατεβάσω από τον chromium που έχει το live cd. Στην τελευταία έκδοση όλα αυτά.

 

Nice το zenity. 

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

το αρχειο το κατεβαζει μεσα στο root partition.Oποτε αφου δεν εβγαλε error οταν το ελεξε, σημαινει οτι κατεβηκε ολοκληρο.

 

δεν μπορεις να το κατεβασεις επευθειας στο livecd, θα μεινεις απο χωρο (ram) (για αυτο και στο κατεβαζει στο root partition το script)

 

απο κει και μετα, ναι, αν εμεινες απο χωρο στο root partition ηταν λογικο να κανει ολα αυτα.

 

ποσο ηταν το tar image και ποσο το root partition σου ?

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

1,6 το tar και 10GB το root partition αν κατάλαβα καλά. Σε ένα partition θα γινόταν το restore. Αν θες αύριο μπορώ να το κοιτάξω καλύτερα.

 

Δες το και αν είναι πες μου τι θες να κάνω για να το δοκιμάσω αύριο.

 

Το zenity το καλούμε όπως και το backup από το menu του openbox; Μπορούμε να του βάλουμε switches κανονικά;

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

κατεβασα ενα archive, αλλα το εκοψα ωστε να μην κατεβει ολοκληρο.

 

το εδωσα στο script και οντως οταν πηγε να το τσεκαρει εβγαλε error.

 

οποτε το αρχειο σου κατεβηκε σωστα.μπορεις να δεις το αρχειο στον φακελο /mnt/target για να σιγουρευτεις οτι κατεβηκε ολοκληρο.

 

απλα ξανατσεκαρε το μεγεθος του root partition σου.

 

το zenity script, ειναι wrapper. Αυτο ουσιαστικα βαζει τα arguments στο main script. το εκτελεις σαν root απο οπου θελεις.

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

Για το zenity άλλο εννοώ. Του βάζω δίπλα κανονικά τα switches που είχα στο backup; Δλδ από 

sudo /home/chris/Scripts/Backup/backup -i Dialog -d /media/external/Linux

το κάνω 

sudo /home/chris/Scripts/Backup/zenity-wrapper -i Dialog -d /media/external/Linux

Μάλλον κάτι έκανα λάθος εγώ. Θα το ξανακοιτάξω. Μπορεί και να χρησιμοποίησα την 32bit έκδοση του live cd κατα λάθος. Θα δοκιμάσω αύριο και ενημερώνω.

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

οχι δεν μπαινουν switches στο zenity script.

 

δεν εχει νοημα γιατι ουσιαστικα, το zenity script σου καλει το backup script και το τρεχει σε δικο του παραθυρο.

 

το zenity δινει arguments στο backup script, δεν παιρνει arguments.  :P

 

απλος wrapper ειναι.

 

αν θες απευθειας arguments τοτε χρησιμοποιεις το main script (backup), οπως ηδη ξερεις.

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

οχι δεν μπαινουν switches στο zenity script.

 

δεν εχει νοημα γιατι ουσιαστικα, το zenity script σου καλει το backup script και το τρεχει σε δικο του παραθυρο.

 

το zenity δινει arguments στο backup script, δεν παιρνει arguments.  :P

 

απλος wrapper ειναι.

 

αν θες απευθειας arguments τοτε χρησιμοποιεις το main script (backup), οπως ηδη ξερεις.

To zenity script που βρίσκεται;

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

post 632 σε spoiler.

 

θα κανω και εναν για το restore και θα τα ανεβασω git οταν τελειωσουν.

 

tritona προσέθεσε το και εδώ

https://wiki.archlinux.org/index.php/Backup_Programs

θα το κοιταξω καποια στιγμη.
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

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

Οι wrappers ειναι ετοιμοι. Αυριο θα τους ανεβασω και θα εξηγησω τι και πως.
 

backup.jpg

 

restore.jpg

Επεξ/σία από tritonas00
  • Like 2
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

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

Ανεβασα τους wrappers

git clone https://github.com/tritonas00/system-tar-and-restore -b zenity

Readme

 

Και στα 2 scripts, ολα επιλεγονται απο ενα παραθυρο το οποιο αλλαζει δυναμικα, εμφανιζοντας οτι εχουμε επιλεξει, οπως φαινεται στα screenshots.

 

Tο restore-zenity προσπαθησα να το κανω να αποφευγει λαθη του χρηστη ωστε να δινονται σωστα arguments στο main script, οποτε:

 

- Το partition που επιλεγουμε δεν εμφανιζεται ξανα στις λιστες

 

- Αν δωθει backup file και μετα url ή protected url ή transfer mode (με οποιαδηποτε σειρα) τοτε αυτοματως ενεργοποιειται αυτο που δωσαμε τελευταιο, απενεργοποιωντας τα υπολοιπα. Το ενα αναιρει τα αλλα, ωστε να δωθει σωστα μια πηγη στο main script και οχι 10. (Aλλιως θα εβγαζε αντιστοιχο error το τελευταιο)

 

- Αναγκαστικα πρεπει να δωθει root partition και μια πηγη για το backup file ή transfer mode, αλλιως θα εμφανισει τα αντιστοιχα errors.

 

Και στα 2 scripts, οταν τελειωσουμε επιλεγουμε κατω κατω το done για να καλεσει με τη σειρα του το main script με το input που δωσαμε.

 

Ζωαρα :P

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

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

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

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

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

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

Σύνδεση

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

Συνδεθείτε τώρα

  • Δημιουργία νέου...