firewalker Δημοσ. 1 Σεπτεμβρίου 2006 Share Δημοσ. 1 Σεπτεμβρίου 2006 Θέλω όταν ξεκινάει το σύστημα να φορτώνεται η εξής εντολή: hidd –server για να ελέγχω τον υπολογιστή με το με το κινητό μέσω bluetooth. Ποιος είναι ο “σωστός” τρόπος να το κάνω; Αυτό που κάνω εγώ είναι να βάλω σε ένα ένα εκτελέσιμο αρχείο την εντολή hidd –server το τοποθετώ στον φάκελο /etc/rc.d και το δηλώνω στο rc.conf στον τομέα με τους Daemons. Όταν ξεκινά ο υπολογιστής φορτώνεται κανονικά η εντολή. Όταν όμως τον κλείνω έχω error στην οθόνη stopping [FAIL]. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
vatraxious Δημοσ. 1 Σεπτεμβρίου 2006 Share Δημοσ. 1 Σεπτεμβρίου 2006 egw 8a proteina na to kaneis me crontab ena scriptaki pou 8a elegxei ta proccesses an trexei to programma ka8e p.x. 10 lepta. an trexei kanei silent exit, an oxi, tote to kanei start kai sou stelnei mail efkolo einai, an 8es na sou dwsw perisotera stoixeia Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
apoikos Δημοσ. 1 Σεπτεμβρίου 2006 Share Δημοσ. 1 Σεπτεμβρίου 2006 Θέλω όταν ξεκινάει το σύστημα να φορτώνεται η εξής εντολή: hidd –server για να ελέγχω τον υπολογιστή με το με το κινητό μέσω bluetooth. Ποιος είναι ο “σωστός” τρόπος να το κάνω; Αυτό που κάνω εγώ είναι να βάλω σε ένα ένα εκτελέσιμο αρχείο την εντολή hidd –server το τοποθετώ στον φάκελο /etc/rc.d και το δηλώνω στο rc.conf στον τομέα με τους Daemons. Όταν ξεκινά ο υπολογιστής φορτώνεται κανονικά η εντολή. Όταν όμως τον κλείνω έχω error στην οθόνη stopping [FAIL][/b']. Υποθέτω ότι θες να το κάνεις στο Arch, έτσι; Το Arch περιμένει ότι κάθε script θα δέχεται ένα όρισμα, το οποίο θα είναι είτε start είτε stop. Στην εκκίνηση εκτελεί /etc/rc.d/script-name start και στον τερματισμό /etc/rc.d/script-name stop. Γενικά αν ρίξεις μια ματιά στα άλλα scripts, θα δεις ότι η βασική δομή είναι η ακόλουθη: > #!/bin/bash . /etc/rc.conf #μεταβλητές συστήματος, π.χ. για χρήση χρωμάτων κλπ . /etc/rc.d/functions #συναρτήσεις του arch, π.χ. stat_busy, stat_done, κλπ case $1 in start) stat_busy "Starting your-service-name" Εδώ μπαίνει η εντολή εκκίνησης if [[ $? -gt 0 ]]; then stat_fail else add_daemon your-service-name stat_done fi ;; stop) stat_busy "Stopping your-service-name" Εντολή και έλεγχοι τερματισμού stat_done ;; esac Γενικά μπορείς να χρησιμοποιήσεις αυτό το γενικό πλάνο ως αναφορά, και να προσθέσεις και άλλες λειτουργίες (π.χ. restart, status, οτιδήποτε θες). Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
firewalker Δημοσ. 1 Σεπτεμβρίου 2006 Μέλος Share Δημοσ. 1 Σεπτεμβρίου 2006 Εγώ έκανα το παρακάτω αλλά όταν δώσω start και μετά stop μου επιστρέφει ένα μήνυμα Can't listen on HID control channel: Address already in use που το βγάζει όταν ο server τρέχει και δώσεις hidd --server. Δουλεύει όμως. > #!/bin/bash . /etc/rc.conf . /etc/rc.d/functions PID=`pidof /usr/bin/hidd` case "$1" in start) stat_busy "Starting HID server" hidd if [ $? -gt 0 ]; then stat_fail else stat_done fi ;; stop) stat_busy "Stopping HID server" if [ $? -gt 0 ]; then stat_fail else kill $PID stat_done fi ;; *) esac exit 0 Υποθέτω ότι θες να το κάνεις στο Arch' date=' έτσι;Το Arch περιμένει ότι κάθε script θα δέχεται ένα όρισμα, [/quote'] Μόνο για το Arch ισχύει αυτό; Ή για το Linux γενικά; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
apoikos Δημοσ. 4 Σεπτεμβρίου 2006 Share Δημοσ. 4 Σεπτεμβρίου 2006 Εγώ έκανα το παρακάτω αλλά όταν δώσω start και μετά stop μου επιστρέφει ένα μήνυμα Can't listen on HID control channel: Address already in use που το βγάζει όταν ο server τρέχει και δώσεις hidd --server. Δουλεύει όμως. Σωστό είναι το script (αν και θα μπορούσες να κάνεις πιο απλά killall hidd). Βασικά γιατί δε χρησιμοποιείς το έτοιμο /etc/rc.d/bluetooth που έχει το arch; Μόνο για το Arch ισχύει αυτό; Ή για το Linux γενικά; Κάθε διανομή έχει το δικό της σύστημα. Το Arch, όπως και το Slackware και το CRUX, χρησιμοποιεί τα λεγόμενα BSD-style initscripts, και το σύστημα δουλεύει όπως περίπου σου είπα. Οι περισσότερες από τις υπόλοιπες διανομές χρησιμοποιούν System V initscripts, τα οποία κατανέμονται σε directories με βάση τα runlevels, όμως και πάλι παίρνουν όρισμα το start ή stop. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
firewalker Δημοσ. 4 Σεπτεμβρίου 2006 Μέλος Share Δημοσ. 4 Σεπτεμβρίου 2006 Βασικά γιατί δε χρησιμοποιείς το έτοιμο /etc/rc.d/bluetooth που έχει το arch; Ενώ το έχω κάνει configure και με το bluetooth όλες οι αλλαγές αρχείων γίνονται σωστά (μέχρι και το kmobiletools δουλεύει μέσω του hcid.conf και του rfcomm.conf) όταν πάω να κάνω απομακρισμένω ελεγχο μέσω του κινητού αν δεν δώσω hidd --server ή hidd -i hciX bdaddr με τα στοιχεία του κινητού δεν γίνεται τίποτε. Ούτε με το bluemote μπόρεσα να το κάνω να δουλέψει. Μόνο με την παραπάνω εντολή. Και κάτι άλλο γιατί όταν δίνω pidof hidd | kill η kill επιστρέφει λάθος; Δέν πέρνει σαν είσοδο αυτό που επιστρέφει η pidof; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 4 Σεπτεμβρίου 2006 Share Δημοσ. 4 Σεπτεμβρίου 2006 όχι, η kill δεν υποστηρίζει piped input. Μπορείς να το κάνεις ως εξής: kill `pidof hidd` (το ` αυτό που είναι αριστερά από το 1) Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
apoikos Δημοσ. 4 Σεπτεμβρίου 2006 Share Δημοσ. 4 Σεπτεμβρίου 2006 Ή να κάνεις pidof hidd | xargs kill Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
firewalker Δημοσ. 4 Σεπτεμβρίου 2006 Μέλος Share Δημοσ. 4 Σεπτεμβρίου 2006 Οκ, ευχαριστώ. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.