Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Προσπαθώ να γράψω ένα script μέσα στο οποίο οι εντολές θέλω από ένα σημείο και μετά να τρέχουν σε fakeroot environment. Αν γράψω #!/bin/bash fakeroot command1 command2 ... commandN (Όπου command1, command2...commandN οι εντολές που θέλω να τρέξω σε fakeroot environment) τότε τρέχει fakeroot και δεν συνεχίζει στις υπόλοιπες εντολές αν δεν κάνω πρώτα ένα exit και φυσικά οι εντολές εκτελούνται εκτός fakeroot environment. Σαν μια πρόχειρη λύση θα μπορούσα να "κοτσάρω" ένα fakeroot μπροστά από την κάθε εντολή, αλλά είναι πάρα πολλές και δεν είμαι και σίγουρος αν θά 'κανε σωστή δουλειά. Κάτι πιο απλό υπάρχει; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 #!/bin/bash fakeroot /bin/bash command1 command2 ... commandN exit #exit fakeroot environment Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 #!/bin/bash fakeroot /bin/bash command1 command2 ... commandN exit #exit fakeroot environment Έχει την ίδια συμπεριφορά με αυτό που έγραψα πιο πάνω Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Έχεις δίκιο, το /bin/bash μετά το fakeroot δεν είναι απαραίτητο. Δοκίμασε αυτό: #!/bin/bash fakeroot << EOF command1 command2 ... commandN EOF Αν ενδιαφέρεσαι να μάθεις πως/γιατί λειτουργεί, googlαρε για "shell here tag". Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 Το δοκίμασα, αλλά όλες οι εντολές μετά την γραμμή fakeroot /bin/bash << EOF πετάνε λάθος και επιπλέον χαλάνε τα χρώματα στο kwrite από εκείνο το σημείο και μετά (σαν να μου λέει υπάρχει λάθος στην σύνταξη) Το ίδιο και με σκέτο fakeroot << EOF Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Μετά τις εντολές έβαλες το συμπληρωματικό EOF? Σε κενή γραμμή χωρίς leading/trailing whitespace. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 Ναι το έβαλα Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Πόσταρε το κομμάτι του script και το σχετικό output. Ένα ενδεικτικό script: #!/bin/bash whoami fakeroot /bin/bash << EOF whoami touch test ls -l test EOF whoami ls -l test Το output του: $ ./test.sh user root -rw-r--r-- 1 root root 0 Sep 13 21:17 test user -rw-r--r-- 1 user users 0 Sep 13 21:17 test $ Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 Το script είναι τεράστιο. Ενδεικτικό output: ls: cannot access *: No such file or directory grep: control: No such file or directory grep: control: No such file or directory Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory grep: control: No such file or directory expr: non-integer argument Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Δες το ενδεικτικό script που παρέθεσα παραπάνω και αν δε βγάζεις άκρη πόσταρε το κομμάτι του script σου μεταξύ των EOF. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 (επεξεργασμένο) Αφαιρέθηκε link Πάει η έκπληξη Επεξ/σία 14 Σεπτεμβρίου 2014 από Oxygene Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Μήπως να περιόριζες τη χρήση του fakeroot? Σε ~3000 γραμμές κώδικα νομίζω είναι επόμενο κάποιες να μην παίζουν σωστά όταν τις κοροϊδεύεις ότι είσαι root. Άντε να κάνεις debug εδώ... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 Ναι αλλά όλες οι εντολές τρέχουν σε ένα συγκεκριμένο φάκελο που μπορεί να είναι μέσα στο home οποιουδήποτε χρήστη Το θέμα είναι ότι χωρίς τις γραμμές fakeroot << EOF και EOF το script (το οποίο είναι ανολοκλήρωτο) τρέχει χωρίς errors Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Artemis Fowl Δημοσ. 13 Σεπτεμβρίου 2014 Share Δημοσ. 13 Σεπτεμβρίου 2014 Για ποιο λόγο χρειάζεσαι fakeroot στην τελική; Για τα archives; Κάνε όλες τις δουλειές σου σαν απλός χρήστης και άλλαξε σε fakeroot μόνο όταν χρειάζεται (i.e. όταν φτιάχνεις τα archives). Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Oxygene Δημοσ. 13 Σεπτεμβρίου 2014 Μέλος Share Δημοσ. 13 Σεπτεμβρίου 2014 Ναι αλλά θέλω τα αρχεία που θα μπουν στο archive να έχουν owner και group root Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα