tritonas00 Δημοσ. 22 Οκτωβρίου 2014 Μέλος Δημοσ. 22 Οκτωβρίου 2014 ναι με το χερι παιζει. το script ομως δεχεται μια εισοδο, η οποια απο arguments την δινουμε με quotes αν ειναι πολλα τα options. backup.sh -u "--acls --xattrs ..." πως θα το εβαζες μεσα στα πολλα για να παιξει? πχ backup.sh -u "--acls --xattrs --exclude=/'ko ko'" και παλι δεν επαιζε. ακομα και με την read που εδινα: --exclude=/"ko ko" παλι δεν το επαιρνε σε ολες τις περιπτωσεις επαιρνε: --exclude=/ko
pmav99 Δημοσ. 22 Οκτωβρίου 2014 Δημοσ. 22 Οκτωβρίου 2014 Γιατί δεν υποστηρίζεις τα options --include και --exclude απευθείας στο interface των backup.sh και restore.sh; Πιο απλό δεν θα είναι έτσι; Έχει φυσικά το μειονέκτημα ότι θα μπορείς να ορίσεις τα ίδια args των *tar με διαφορετικούς τρόπους αλλα δεν θα χρειάζονται τέτοιες αλχημείες.
imitheos Δημοσ. 22 Οκτωβρίου 2014 Δημοσ. 22 Οκτωβρίου 2014 backup.sh -u "--acls --xattrs ..." πως θα το εβαζες μεσα στα πολλα για να παιξει? πχ backup.sh -u "--acls --xattrs --exclude=/'ko ko'" και παλι δεν επαιζε. ακομα και με την read που εδινα: --exclude=/"ko ko" παλι δεν το επαιρνε σε ολες τις περιπτωσεις επαιρνε: --exclude=/ko Δεν έχω κοιτάξει το πρότζεκτ και δεν ήξερα ότι το τρέχεις έτσι. Μια λύση που μπορεί να παίξει είναι με την eval αλλά δεν μου αρέσει αυτός ο τρόπος κλήσης (ειδικά το bash είναι προβληματικό σε αυτό το θέμα με τα quotes). % tree foo foo ├── d1 │ └── f2 ├── f1 └── la la ├── f3 └── lo lo └── f4 3 directories, 4 files % cat t3.sh #!/bin/bash eval tar "$1" % ./t3.sh "cvf ll.tar --exclude=\"la la\" foo" foo/ foo/d1/ foo/d1/f2 foo/f1 % ./t3.sh "cvf ll2.tar --exclude='la la' foo" foo/ foo/d1/ foo/d1/f2 foo/f1 Δεν το προτείνω βέβαια γιατί eval => Here be Dragons. Ίσως θα ήταν καλύτερα μια διαφορετική μέθοδος κλήσης όπως είπε και ο pmav99.
tritonas00 Δημοσ. 22 Οκτωβρίου 2014 Μέλος Δημοσ. 22 Οκτωβρίου 2014 Γιατί δεν υποστηρίζεις τα options --include και --exclude απευθείας στο interface των backup.sh και restore.sh; Πιο απλό δεν θα είναι έτσι; Έχει φυσικά το μειονέκτημα ότι θα μπορείς να ορίσεις τα ίδια args των *tar με διαφορετικούς τρόπους αλλα δεν θα χρειάζονται τέτοιες αλχημείες. γιατι ηδη εχουμε κατι που κανει αυτη την δουλεια, μια εισοδο που δεχεται οτιδηποτε option μπορει να μπει. θα ηταν extra κωδικας για το τιποτα πιστευω. με ελαχιστο κωδικα μετατρεπει το // σε space μεσα στο array και κανει την δουλεια του. Αν δεν υπαρχει // δεν ασχολειται. τι το κακο εχει αυτος ο τροπος? αν το κανω οπως λετε, θελουμε extra ερωτησεις, extra variables, extra arguments...
pmav99 Δημοσ. 22 Οκτωβρίου 2014 Δημοσ. 22 Οκτωβρίου 2014 Και αν κάποιος έχει όνομα με «//» πως θα τον κάνεις escape
tritonas00 Δημοσ. 22 Οκτωβρίου 2014 Μέλος Δημοσ. 22 Οκτωβρίου 2014 Και αν κάποιος έχει όνομα με «//» πως θα τον κάνεις escape το / δεν ειναι απαγορευμενος χαρακτηρας? για αυτο εβαλα // και οχι κατι αλλο δοκιμασε να φτιαξεις αρχειο/φακελο με // στο ονομα ο thunar δεν με αφηνει
pmav99 Δημοσ. 22 Οκτωβρίου 2014 Δημοσ. 22 Οκτωβρίου 2014 Έχεις δίκιο http://stackoverflow.com/questions/9847288/is-it-possible-to-use-in-a-filename
warlock9_0 Δημοσ. 22 Οκτωβρίου 2014 Δημοσ. 22 Οκτωβρίου 2014 έβαλα επιτέλους τον ssd στο laptop επειδή δε μπορούσε να κάνει boot από τον παλιό δίσκο που τον έβαλα στη θέση του dvd έβαλα ένα live usb crunchbang έκανα chroot στην παλιά μου εγκατάσταση και με το transfer τη μετέφερα στον ssd δούλεψε μια χαρά και τελείωσε σε ~15 λεπτά restore.log ====================System Tar & Restore 4.5 {22-10-2014-21:49:18}====================::SUMMARYPARTITIONS:root partition: /dev/sda2 ext4 80.8G discardswap partition: /dev/sda3BOOTLOADER:Grub (i386-pc)Location: /dev/sdaPROCESS:Mode: TransferHome: Only hidden files and foldersSystem: Debian based x86_64RSYNC OPTIONS:--exclude=/run/*--exclude=/dev/*--exclude=/sys/*--exclude=/tmp/*--exclude=/mnt/*--exclude=/proc/*--exclude=/media/*--exclude=/var/run/*--exclude=/var/lock/*--exclude=/home/*/.gvfs--exclude=lost+found--exclude=/home/*/[^.]*::TAR/RSYNC STATUSSystem transferred successfully::GENERATED FSTAB# /dev/sda2UUID=ad742fe9-3dec-4b2a-8530-e8a6848266c2 / ext4 discard 0 1# /dev/sda3UUID=674f734e-8e90-4b6b-8dcb-a913828b61ee none swap defaults 0 0::PREPARING CHROOT ENVIROMENTBinding /runBinding /devBinding /dev/ptsMounting /procMounting /sys::REBUILDING INITRAMFS IMAGESupdate-initramfs: Generating /boot/initrd.img-3.14-2-amd64modprobe: ERROR: ../libkmod/libkmod.c:557 kmod_search_moddep() could not open moddep file '/lib/modules/3.2.0-4-amd64/modules.dep.bin'W: intel-microcode: cpuid kernel driver missingW: intel-microcode: disabling IUCODE_TOOL_SCANCPUS option::GENERATING LOCALESGenerating locales (this might take a while)... el_GR.UTF-8... done en_US.UTF-8... doneGeneration complete.::INSTALLING AND UPDATING GRUB2 IN /dev/sdaInstalling for i386-pc platform.grub-install: warning: Sector 32 is already in use by the program `FlexNet'; avoiding it. This software may cause boot or other problems in future. Please ask its authors not to store data in the boot track.Installation finished. No error reported.Generating grub configuration file ...Found linux image: /boot/vmlinuz-3.14-2-amd64Found initrd image: /boot/initrd.img-3.14-2-amd64Found Windows 7 (loader) on /dev/sdb3done έβγαλε ένα error που ακόμα δεν το έχω ψάξει τι είναι, αλλά το σύστημα δουλεύει κανονικά :cool: 1
tritonas00 Δημοσ. 22 Οκτωβρίου 2014 Μέλος Δημοσ. 22 Οκτωβρίου 2014 chroot στο chroot δηλαδη ωραιος, αυτο δεν το ειχα σκεφτει καν. δεν εβαλες και noatime? επισης πες μου οτι πριν κανεις chroot απο το livecd στο debian εκανες bind τα dev proc sys εσυ γιατι αλλιως δεν παιζει να δουλεψε με αδεια αυτα....
warlock9_0 Δημοσ. 22 Οκτωβρίου 2014 Δημοσ. 22 Οκτωβρίου 2014 χμμμ τα default, noatime έλεγε οτι τα βάζει default εγώ πρόσθεσα το discard το chroot εννοείται, όπως κάνεις και για grub restore
tritonas00 Δημοσ. 22 Οκτωβρίου 2014 Μέλος Δημοσ. 22 Οκτωβρίου 2014 οχι, ελεγε: (Leave blank for defaults,noatime) δηλαδη αν δεν βαλεις τιποτα θα βαλει defaults,noatime. οτι αλλο βαλεις γραφεται αυτο οποτε μπορουσες να βαλεις: defaults,noatime,discard αλλα οκ, το αλλαζεις και μετα αυτο. thanks για το feedback.
warlock9_0 Δημοσ. 23 Οκτωβρίου 2014 Δημοσ. 23 Οκτωβρίου 2014 δεν το διαβασα καλά, νόμιζα οτι αν βάλω κάτι προστίθεται σε αυτά θα τα βάλω
pmav99 Δημοσ. 23 Οκτωβρίου 2014 Δημοσ. 23 Οκτωβρίου 2014 Κάντο έτσι (Leave blank for: <defaults,noatime>) 1
tritonas00 Δημοσ. 23 Οκτωβρίου 2014 Μέλος Δημοσ. 23 Οκτωβρίου 2014 εκανα μια ενημερωση το readme πισετυω ειναι πιο καθαρο/ευαναγνωστο ετσι παρατηρησεις/προτασεις καλοδεχουμενα. 1
tritonas00 Δημοσ. 27 Οκτωβρίου 2014 Μέλος Δημοσ. 27 Οκτωβρίου 2014 Υπαρχει τροπος να κανουμε force την select να τα δειχνει καθετα? τελικα ναι, COLUMNS=1 COLUMNS Used by the select builtin command to determine the terminal width when printing selection lists. Automatically set upon receipt of a SIGWINCH. οποτε πλεον τα scripts δειχνουν τις λιστες (partitions, options κλπ) μονιμα καθετα στο cli interface.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα