Μερικές φορές όταν θέλετε να αποθηκεύσετε το στήριγμά σας ή οποιοδήποτε άλλοδήποτε μεγάλο σύνολο αρχείων on-line ή να θελήσετε να τους μοιραστείτε κάποιος άλλος πρέπει να βρείτε έναν τρόπο να συμπιέσετε και να χωρίσετε τα αρχεία στα χοντρά κομμάτια 100 ή περισσότερων μεγαμπάιτ. Αισθάνθηκα την ανάγκη για αυτό επίσης πρόσφατα όταν θέλησα να αποθηκεύσω τα στηρίγματά μου on-line και η σε απευθείας σύνδεση υπηρεσία αποθήκευσης είχε μια ΚΑΠ 100 ΜΒ ανά αρχείο. Βρήκα μια πραγματικά τακτοποιημένη λύση βασισμένη πίσσα εντολή. Χρησιμοποιώντας αυτήν την μέθοδο χώρισα το στήριγμά μου περίπου 1 ΜΒ σε 10 χοντρά κομμάτια 100 ΜΒ κάθε με τα επαυξητικά ονόματα αρχείου.
Το 1 αρχείο ΜΒ που θέλησα να χωρίσω κλήθηκε dbbackup.db. Εδώ είναι η εντολή που έτρεξα για να δημιουργήσω τα πολλαπλάσια αρχεία πίσσας 100 ΜΒ κάθε από την:
# πίσσα - βλ. - dbbackup.db | διάσπαση - β 100m - db_backup.tar
Αυτή η εντολή πήρε έναν μακροπρόθεσμο για να τρέξει. Μόλις έγινε τρέχοντας αφέθηκα με δέκα αρχεία, 100 ΜΒ κάθε ένα που ονομάστηκε db_backup.tar AA, db_backup.tar αβ, εναλλασσόμενο ρεύμα του db_backup.tar, κ.τ.λ., κ.τ.λ.
Τώρα μπορώ να αντιγράψω αυτά τα αρχεία στην εξωτερική αποθήκευσή μου ή να τα στείλω με την ευκολία. Για να ράψει τη 1GB πλάτη αρχείων μαζί όλη η ανάγκη Ι να κάνει είναι να τρεχτεί η ακόλουθη εντολή:
# γάτα db_backup.tar a* | (πίσσα Χ)
Και voila, παίρνω το αρχικό αρχείο μου πάλι.























{ 2 τα σχόλια… τους διαβάζουν κατωτέρω ή προσθέστε ενός }
Ίσως χάνω κάτι. Για ένα ενιαίο μεγάλο αρχείο γιατί να χρησιμοποιήσει όχι απλά τη διασπασμένη εντολή από το; Executing a single command might be faster than executing both tar and split.
split –bytes=1024b sdbackup.db db_backup_
cat db_backup_* > joined_file.db
Perhaps a better example would show the same operation used on multiple folders
# tar -cf - /var/www /var/ftp | split -b 100m - my_backup.tar
To guard against missing or damaged pieces, install “par2cmdline”, and create parity files so that you can repair missing pieces.
To create parity files with a 15% redundency:
# par2 create -r15 my_backup.tara*
To verify:
# par2 verify my_backup.taraa.par2
To repair missing pieces:
# par2 repair my_backup.taraa.par2
To combine the pieces and extract:
# cat my_backup.tara? | (tar x)
Leave a Comment