paexec είναι ένα βοηθητικό πρόγραμμα που διανέμει με δεδομένες τις εργασίες (stdin) σε διάφορους επεξεργαστές ή μηχανήματα σε ένα δίκτυο.
paexec δεν έχει περιορισμένη εσωτερική προσωρινή πια. Όλα αυτά αλλάζει αυτόματα, όπως απαιτείται. PAEXEC_BUFSIZE μεταβλητή περιβάλλοντος θέτει ένα αρχικό * * μέγεθος του buffer, δεν * * κατ 'ανώτατο όριο το ένα.
README: σημειώσεις σχετικά με τη μη-τυπική getopt_long λειτουργία, καθώς και συμβουλές για το πώς να οικοδομήσουμε paexec στις πλατφόρμες χωρίς getopt_long υποστήριξη (JP-UX, Solaris, κλπ).
Εγκατάσταση:
0) BSD κάνουν απαιτείται. Έχω το όνομα «bmake», αλλά το πραγματικό όνομα του μπορεί να
ποικίλλουν. pmake ή απλά να είναι δυνατές παραλλαγές.
Εάν χρειαστεί να αλλάξετε τις προεπιλεγμένες επιλογές κτίριο,
τρέξει bmake όπως αυτό
env [YOUR_ASSIGNMENTS] bmake
Δείτε το παράδειγμα παρακάτω ενότητα
1) Απαιτείται "libmaa" βιβλιοθήκη για την κατασκευή paexec. Είναι ένα μέρος του
"Dict" http://sourceforge.net/projects/dict έργου
Γρήγορη δείγμα του κτιρίου:
gzip -DC /home/cheusov/downloads/dictd-XYZtar.gz | πίσσα -xf-
CD dictd-Χ-Υ-Ζ / libmaa
./configure
gmake
gmake εγκαταστήσετε
ΣΗΜΕΙΩΣΗ: gmake είναι το GNU κάνει εδώ! Σύμφωνα με τις περισσότερες διανομές Linux
αυτό ονομάζεται κάνουν.
2) Αποσυμπίεση paexec συμπιεσμένο αρχείο που έχετε κατεβάσει, όπως αυτό
gzip -DC paexec-Χ-Υ-Z.tar.gz | πίσσα -xf-
3) cd paexec-Χ-Υ-Ζ
4) bmake
5) (προαιρετικό!) Bmake install-dirs
6) bmake εγκαταστήσετε
Υπάρχουν πολλά Makefile μεταβλητών που μπορεί να αλλάξει κατά τη διάρκεια της
κατασκευή και την εγκατάσταση.
τις μεταβλητές paexec (για όλα αυτά είναι στο ξεκίνημα του Makefile):
ΠΡΟΘΕΜΑ - όπου paexec είναι εγκατεστημένο σε
Επιλογή συνδετήρα για τη σύνδεση "ΜΑΑ" βιβλιοθήκη - LIBMAA
Μεταβλητές BSD μάρκα του (που χρησιμοποιούνται πιο συχνά,
για όλους τους άλλους - ανατρέξτε στην τεκμηρίωση του κατασκευαστή και .mk αρχεία)
BINDIR - όπου paexec εκτελέσιμο ίδια έχει εγκατασταθεί σε
MANDIR - όπου οι σελίδες manual εγκατασταθεί
BINOWN - paexec εκτελέσιμο ιδιοκτήτη
BINGRP - paexec εκτελέσιμο ομάδα
MANOWN - ιδιοκτήτης της σελίδας άνθρωπος
MANGRP - άνθρωπος ομάδα σελίδων
Παραδείγματα κατασκευή και την εγκατάσταση:
1) bmake all install-dirs εγκατάσταση
2) env CC = ΔΠΔ
Prefix = / home / cheusov / τοπικό
CPPFLAGS = '- I / usr / pkg / include »
LDFLAGS = '- L / usr / pkg / lib -Wl, -rpath -Wl, / usr / pkg / lib »
LDADD = -lextralib
CFLAGS = "- Werror -Επιτοίχια»
BINOWN = cheusov
BINGRP = users
MANOWN = cheusov
MANGRP = users
MKCATPAGES = όχι
bmake -s all install-dirs εγκατάσταση
3) paexec χρειάζεται την μη-φορητή getopt_long (3) που υπάρχει στο
* BSD και Linux λειτουργικά συστήματα. Αν είναι απούσα στο OS σας,
μπορείτε να χτίσετε paexec όπως η ακόλουθη.
echo "#include"> ./config.h
env
CPPFLAGS = - = 1 DNO_PORTABHACKS_H -DHAVE_CONFIG_H = 1 '
LDFLAGS = '- lnbcompat »
bmake -s all install-dirs εγκατάσταση
όπου libnbcompat είναι φορητότητα βιβλιοθήκη ενός NetBSD του
Φυσικά, μπορείτε επίσης να χρησιμοποιήσετε οποιαδήποτε άλλη εφαρμογή της getopt_long.
ΣΗΜΕΙΩΣΗ: Όχι, εγώ θα δεν χρησιμοποιούν autotools
Τι είναι καινούργιο σε αυτήν την έκδοση:
- libmaa δεν χρειάζεται πια να την κατασκευή και λειτουργία paexec.
- Παρουσίαση paexec.pdf προστέθηκε.
- μεταβλητή περιβάλλοντος PAEXEC_EOT εισήχθη.
- Η επιλογή -y προστέθηκε στον paexec (1) και paexec_reorder (1) για τον καθορισμό ενός δείκτη στο τέλος του έργου για την & quot? Μαγεία & quot? κορδόνι.
- Η επιλογή -C προστέθηκε στον paexec (1) για τη ρύθμιση & quot? Αριθμομηχανή & quot? πιο εύκολα.
- Η επιλογή -x προστέθηκε στον paexec_reorder (1).
- Προσθήκες και βελτιώσεις σε δοκιμές παλινδρόμησης και τεκμηρίωση έγιναν.
Τι είναι καινούργιο στην έκδοση 0.18.0:
- NULL dereference (SIGSEGV) έχει καθοριστεί paexec (1).
- Αυτό συνέβη όταν η πρώτη γραμμή δίνεται στην είσοδο ήταν άδειο.
- Μια ολόκληρη την εντολή να περάσει ssh-όπως οι μεταφορές είναι τώρα shquoted.
- Σε ιδιαίτερα αυτό επιδιορθώνει -x, η οποία δεν συνεργαζόταν με -t. & Quot? Paexec -g & quot? δέχεται τώρα ένα κενό string ως μια εργασία.
- Μια μικρή ενημέρωση κώδικα έχει γίνει στη σελίδα paexec_reorder άνθρωπος.
- έχουν προστεθεί περισσότερες δοκιμές παλινδρόμησης.
Τι είναι καινούργιο στην έκδοση 0.17.0:
- Η επιλογή -x εντολή paexec (1) εκτελέσετε μία εντολή ανά έργο.
- Βελτιώσεις για την επιλογή -n.
- Η επιλογή «-Mt =" θέτει ένα εναλλακτικό τέλος του δείκτη έργο.
- Η επιλογή -Δ.δ. = θέτει ένα διαχωριστικό μεταξύ εργασιών σε λειτουργία γράφημα (-G).
- Μία γραμμή εξόδου που περιέχει απέτυχε εξαρτώμενα δεν τελειώνει με ένα περιττό χαρακτήρα οριοθέτησης.
- Long επιλογές αφαιρείται εντελώς.
- & quot? Paexec_reorder -g & quot? τώρα έξοδος σωστά λαβές εργασίες που απέτυχαν ».
- Η επιλογή -m προστέθηκε paexec_reorder (1), η οποία είναι παρόμοια με -m paexec του.
- Περισσότερα παραδείγματα και δοκιμές παλινδρόμησης.
- ενημερώσεις τεκμηρίωσης και βελτιώσεις.
Τι είναι καινούργιο στην έκδοση 0.16.0:
- Αυτή η έκδοση έχει μια ενημέρωση κώδικα για τις αποτυχίες συλλογή για την αρχαία OpenBSD, HP-UX, και ίσως και άλλοι.
- Νέες λειτουργίες για εργασίες αναδιάταξη προστέθηκαν? δείτε -W0 και-W2 επιλογές.
- Long επιλογές υποστηρίζονται ακόμα, αλλά θεωρείται ξεπερασμένο.
- & quot? Δοκιμή & quot mkcmake? έχει τώρα την ευκαιρία να πετύχει σε HP-UX, Solaris, και άλλα παράγωγα SVR4.
Τι είναι καινούργιο στην έκδοση 0.15.0:
- Το σύστημα κατασκευής έχει αλλάξει από mk-αρχεία σε mk-configure.
- Υπάρχει ένα νέο εκτελέσιμο paexec_resort (1) για την ομαλοποίηση της φέτες εξόδου paexec (1).
- Υπάρχει μια νέα επιλογή -W για την αναδιάταξη των καθηκόντων.
- Με αυτή την επιλογή, paexec (1) είναι σε θέση να ελαχιστοποιήσει το συνολικό χρόνο επεξεργασίας από τη διανομή των καθηκόντων από το δίκτυο ή επεξεργαστές με έναν καλύτερο τρόπο.
- Υπάρχει μια λύση για ένα ρυθμιστικό 1 byte υπερχείλισης που συνέβη όταν εφαρμόστηκε η επιλογή -d (debugging).
- ενημερώσεις τεκμηρίωσης, μικρές διορθώσεις, και τον κωδικό καθαρό-ups.
Τι είναι καινούργιο στην έκδοση 0.13.0:
- Ο αλγόριθμος για την ανίχνευση του κύκλου (paexec -s) ήταν εντελώς αναδιατυπωθεί και τώρα does't διαθέσει tasks_count ^ 2 ακεραίων.
- Τώρα λειτουργεί πολύ πιο γρήγορα.
- Η Ζ _timeout_ επιλογή προστέθηκε.
- Μια προσπάθεια για την εκ νέου μια εντολή για μια αποτυχημένη κόμβο γίνεται κάθε _timeout_ δευτερόλεπτα.
- Η επιλογή αυτή καθιστά δυνατή την οργάνωση συνεργατικών σχηματισμών πάνω από αναξιόπιστα δίκτυα, υλικού ή λογισμικού.
Τι είναι καινούργιο στην έκδοση 0.12.0:
- Αυτή η έκδοση προσθέτει μια επιλογή -z. Εάν εφαρμοστεί, read / write (2) εργασίες από / προς κόμβους καθίστανται μη-κρίσιμες.
- Σε περίπτωση που paexec έχει χάσει τη σύνδεση με τον κόμβο, θα επανεκχώρηση την αποτυχημένη αποστολή σε άλλο κόμβο και, εάν εφαρμοστεί η επιλογή -s, θα εμφανίσει το string & quot? Θανατηφόρα & quot? στο stdout.
- Το γεγονός αυτό καθιστά paexec ανθεκτική στα σφάλματα I / O, και ως εκ τούτου μπορείτε να δημιουργήσετε paexec συμπλέγματα, ακόμη και σε ένα δίκτυο που αποτελείται από αναξιόπιστες οικοδεσπότες (Internet;).
- Αποτυχία οικοδεσπότες επισημαίνονται ως τέτοια, και δεν θα πρέπει να χρησιμοποιείται κατά τη διάρκεια της τρέχουσας λειτουργίας του paexec. Υπάρχουν μικρές διορθώσεις.
Οι
Τι είναι καινούργιο στην έκδοση 0.11.0:
- Αυτή η έκδοση προσθέτει paexec -s, η οποία ελέγχει ένα γράφημα έργο εισόδου για τους κύκλους πριν από την έναρξη πραγματική εργασία. Αν / έχουν εντοπιστεί, paexec εξόδους με ένα σφάλμα.
- Μια μικρή αποτύπωση σελίδα man έχει γίνει.
Τι είναι καινούργιο στην έκδοση 0.10.1:
- Μια μικρή επιδιόρθωση έγινε για & quot? Paexec - S & quot? (Ρόμβος-όπως εξαρτήσεις).
- Μια μικρή επιδιόρθωση έγινε στην σελίδα man.
- Clean-ups έγιναν σε δοκιμές / test.sh. getopt_long (3) πέφτει πίσω στην getopt (3) στο Solaris, HP-UX, Interix, κλπ.
Τα σχόλια δεν βρέθηκε