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

Script για relaunch προγράμματος


chek2fire

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

Δεν δοκιμαζεις να βαλεις ενα & στο τελος της εντολης, να το στειλεις στο background?

Με την επιλογη -daemon παει ουτως η αλλως...

mobimob μήπως είναι θέμα permission? Γιατί όπως είπα το script του τρίτονα ας πούμε δολεύει μια χαρά αλλά δεν ξεκινάει στο start με τίποτα. Κάτι εκεί παίζει με το πως μπορώ να βάλω ας πούμε αυτό το script να ξεκινάει με το boot.

Κατι δεν παει καλα, αλλα από το documentation δεν φαινεται να χρειαζεται κατι παραπανω απο την υπαρξη του χρηστη και του /etc/bitcoin.conf με κάποιον κωδικό στο rpcpassword.

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

  • Απαντ. 88
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Μπορώ να πω με βεβαιότητα ότι το script που δίνουν στο repo δεν δουλεύει :-D

Δουλεύει όμως το παρακάτω (από απάντηση στο stackexchange):

description "bitcoind"

start on filesystem
stop on runlevel [!2345]
oom score -500
expect fork
respawn
respawn limit 10 60 # 10 times in 60 seconds

script
    user=bitcoind
    home=/home/$user
    cmd=$home/bin/bitcoind
    pidfile=$home/bitcoind.pid
    # Don't change anything below here unless you know what you're doing
    [[ -e $pidfile && ! -d "/proc/$(cat $pidfile)" ]] && rm $pidfile
    [[ -e $pidfile && "$(cat /proc/$(cat $pidfile)/cmdline)" != $cmd* ]] && rm $pidfile
    exec start-stop-daemon --start -c $user --chdir $home --pidfile $pidfile -m --startas $cmd
end script

Το βάζεις σαν bitcoind.conf στο /etc/init/ , κάνεις τις αλλαγές που χρειάζονται (user, cmd) και αφού κάνεις και τις ρυθμίσεις στο bitcoin.conf του χρήστη σου το εκκινείς με sudo service bitcoind start.

To δοκίμασα σε vm με την 14.04.

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

για τις αλλαγές στο bitcoin.conf φαντάζομαι που ορίζεις password κτλ κάτι που έχω ήδη κάνει γιατί το τρέχω το node εδώ και καιρό. το μόνο που πρέπει να κάνω κάθε φορά που κρασάρει είναι manual restart

Το δοκιμάζω asap και γράφω εντυπώσεις :P

Τρέχω και άλλο ένα node σε vps αλλά έχω κάνει τις οδηγίες εδώ με αυτόματο relaunch σε κάθε restart του server

 

http://pastebin.com/MGu1iBkH

 

θα έκανα το ίδιο αλλά αυτό το script θέλει σταθερή ip για να δουλέψει... :P

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

Μπορώ να πω με βεβαιότητα ότι το script που δίνουν στο repo δεν δουλεύει :-D

Δουλεύει όμως το παρακάτω (από απάντηση στο stackexchange):

description "bitcoind"

start on filesystem
stop on runlevel [!2345]
oom score -500
expect fork
respawn
respawn limit 10 60 # 10 times in 60 seconds

script
    user=bitcoind
    home=/home/$user
    cmd=$home/bin/bitcoind
    pidfile=$home/bitcoind.pid
    # Don't change anything below here unless you know what you're doing
    [[ -e $pidfile && ! -d "/proc/$(cat $pidfile)" ]] && rm $pidfile
    [[ -e $pidfile && "$(cat /proc/$(cat $pidfile)/cmdline)" != $cmd* ]] && rm $pidfile
    exec start-stop-daemon --start -c $user --chdir $home --pidfile $pidfile -m --startas $cmd
end script

Το βάζεις σαν bitcoind.conf στο /etc/init/ , κάνεις τις αλλαγές που χρειάζονται (user, cmd) και αφού κάνεις και τις ρυθμίσεις στο bitcoin.conf του χρήστη σου το εκκινείς με sudo service bitcoind start.

To δοκίμασα σε vm με την 14.04.

 

 

To έβαλα αυτό αλλά υπάρχει ένα πρόβλημα ενώ το service φαίνεται ότι λειτουργεί μετά το reboot καθώς αν δώσω την εντολή 

 

sudo service bitcoind start 

 

μου επιστρέφει

 

start: Job is already running: bitcoind

 

αν όμως κοιτάξω αν όντος τρέχει το bitcoind node με την εντολή

 

bitcoin-cli getinfo

 

που βλέπεις αν όντος τρέχει το node και δέχεται connections και το πόσα connections έχει μου επιστρέφει

 

error: couldn't connect to server

 

με λίγα λόγια ότι ο server απλά δεν τρέχει.

Τώρα στο user= τι πρέπει να βάλω τον user του home μου? Μήπως κάπου εκεί βρίσκεται όλο το λάθος στις ρυθμίσεις

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

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

Στο user πρεπει να βαλεις το χρηστη σου, στο cmd πρεπει να βαλεις την πλήρη διαδρομη για το εκτελεσιμο και το bitcoin.conf στο home σου πρεπει να εχει τουλαχιστον ρυθμισμενο το rpcpassword. Αν δεν κανεις τις δυο πρωτες αλλαγες, θα εχεις ακριβως την συμπεριφορα που περιγραφεις. Αν δεν έχεις ρυθμίσει το rpcpassword, τότε ο daemon θα κλείνει. Από την στιγμή όμως που το node το τρέχεις καιρό δεν θα πρέπει να έχεις πρόβλημα με το τελευταίο.

Να προσθέσω ότι τις δοκιμές τις έκανα με το πακέτο από το bitcoin ppa.

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

το rpcpassword το έχω ήδη ρυθμισμένο γιατί αλλιώς δεν τρέχει καν το node. Και εγώ το ppa έχω πακέτο. Οι διαδρομές για τα εκτελέσιμα νομίζω είναι οι ίδιες με αυτες που έχει βάλει στο script δεν αλλάζει κάτι

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

Το άφησα ως έχει.

Τα μόνα που άλλαξα ήταν τα user (έβαλα mobinmob γιατί... αυτός είναι ο χρήστης μου στην vm) και  cmd σε /usr/bin/bitcoind.

Πριν από τις αλλαγές μου έκανε ότι κάνει και σ' εσένα. Έλεγε ότι ξεκινούσε, αλλά δεν εμφανιζόταν στην έξοδο της ps, ούτε μπορούσες να δεις τι γίνεται με το bitcoin-cli.

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

Ξανά το ίδιο άλλαξα ότι έγραψες αλλά το ίδιο με το sudo service bitcoind start μου λέει ότι το service τρέχει αλλά με το bitcon-cli getinfo μου λέει ότι δεν τρέχει το service :( 

Γιατι ρε γμτ τι κάνω λάθος? 

Σε σένα το getinfo τι σου δίνει?

Ανεβάζω και πως έχω το αρχείο μου στο bitcoin.conf στο init

 

 

start on filesystem

stop on runlevel [!2345]
oom score -500
expect fork
respawn
respawn limit 10 60 # 10 times in 60 seconds
 
script
    user=bitcoin
    home=/home/$user
    cmd=/usr/bin/bitcoind
    pidfile=$home/bitcoind.pid
    # Don't change anything below here unless you know what you're doing
    [[ -e $pidfile && ! -d "/proc/$(cat $pidfile)" ]] && rm $pidfile
    [[ -e $pidfile && "$(cat /proc/$(cat $pidfile)/cmdline)" != $cmd* ]] && rm $pidfile
    exec start-stop-daemon --start -c $user --chdir $home --pidfile $pidfile -m --startas $cmd
end script
 

 

o χρήστης είναι όντος bitcoin που έχω βάλει

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

Κλείσε το service πρώτα με sudo service bitcoind stop και αφού έχουν γίνει αλλαγές ξεκίνησέ το πάλι (αλλιώς τρέχει το παλιό που είχες στην εκκίνηση).

Για να δεις αν τρέχει το εκτελέσιμο δώσε ps aux|grep bitcoind. Θα πρέπει να σου δώσει 2 αποτελέσματα - την εντολή που έτρεξες και το ίδιο το bitcoind.

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

οκ το έκλεισα μετά το ξεκίνησα και όντος είδα ότι τρέχει το bitcoind και παίρνω και πληροφορίες και με το getinfo αρα δουλεύει. Μένει τώρα να δω αν δουλέψει στο reboot... 


Μετά από reboot ξανά το ίδιο 

 

 bitcoin-cli getinfo

error: couldn't connect to server

 

η εντολή αυτή όμως 

ps aux|grep bitcoind

 

μου επιστρέφει ότι τρέχει ένα bitcoind 

 

bitcoin   1123  0.0  0.0  11740   940 pts/0    S+   14:57   0:00 grep --color=auto bitcoind
 
παράξενο. Τι είναι αυτό το bitcoind που τρέχει εκεί και από που προέρχεται?
Αν δώσω τώρα 
 
sudo service bitcoind start
 
μου επιστρέφει 
 
start: Job is already running: bitcoind
 
αρά το πρόβλημα έχει νομίζω εντοπιστεί. Κάτι ξεκινάει ποιο πριν σαν bitcoind service που δεν αφήνει το script να τρέξει γιατί το σύστημα μάλλον βλέπει ότι λανθασμένα τρέχει ήδη.
Που μπορώ να βρω από που προέρχεται αυτό το service?
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Περίεργο...  στο vm αν δεν κάνω λάθος ξεκινούσε κανονικά στο reboot.

Να φανταστώ ότι κλείσεις το service και το επανεκκινήσεις δουλεύει;

Θα ξαναδω ακριβώς τι γίνεται στο vm μου σε περίπου δύο ώρες - δεν έχω πρόσβαση στο μηχάνημα αυτή τη στιγμή.

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

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

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

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

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

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

Σύνδεση

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

Συνδεθείτε τώρα
  • Δημιουργία νέου...