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

Ερώτηση για τα rc0.d rc1.d ... rc6.d


firewalker

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

Πείτε μου λίγο πως "λειτουργούν" τα directories αυτά. Τα scrips ή οι deamons που θέλουμε για την εκκίνηση που μπαίνουν; Για παράδειγμα στο Arch υπάρχει το rc.conf. Ότι υπάρχει στα rc0.d ... rc6.d εκτελείται ιεραρχικά από 0 έως το 6; Έχει να κάνει με τα runlevels;

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

Μέσα στο rcX.d υπάρχουν scripts που ξεκινάνε με SXX ή KXX. Χ είναι ένας αριθμός από το 00 ώς το 99. Όταν το σύστημα μπαίνει σε αυτό το runlevel που δείχνει το directory πχ rc3.d θα ξεκινάει με τη σειρά αύξοντα αριθμού ΧΧ τα scripts που ξεκινάνε με S και και σταματάει με τη σειρά αυτά που ξεκινάνε με K. Το σύστημα ανάλογα με το ποιό είναι το default runlevel του, όταν bootάρει θα περάσει με τη σειρά από rc1.d rc2.d rc3.d αν πχ το runlevel είναι το 3.

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

  • 3 μήνες μετά...

Το επαναφέρω για τον εξής λόγο. Πως μπορώ να σταματήσω μερικούς "περιττούς" daemons σε debian; Απλώς σβήνω αρχεία από τα rcx.d; Και αν το ξαναχρειαστώ; Πείτε μου λίγο πως επιλέγω ποιες εφαρμογές θα ξεκινάνε και ποιες όχι.

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

Κανονικά υπάρχει ο κατάλογος /etc/rc.d και υπάρχουν και οι κατάλογοι rcX.d, όπου X ο αριθμός του runlevel. Ο /etc/rc.d μέσα περιέχει τα init scripts, τα scripts που σταματούν/ξεκινούν τους daemons (ή κάνουν οτιδήποτε άλλο τέλος πάντων). Αν εσύ θέλεις ένα script να ξεκινάει στο X runlevel, το αντιγράφεις, ή καλύτερα δημιουργείς symbolic link προς αυτό, μέσα στον κατάλογο rcX.d. Το όνομα του αρχείου ή του symbolic link εκεί μέσα πρέπει να περιέχει 2 πράγματα πριν το όνομα του:

 

1) ένα γράμμα "S" ή "K" στην αρχή του filename που γενικά ορίζει με ποια παράμετρο θα εκτελεστεί το script: K για stop και S για start

2) έναν αριθμό σειράς ακριβώς δίπλα, ο οποίος ορίζει με ποια σειρά θα εκτελεστεί το script σε σχέση με τα άλλα scripts του runlevel

 

 

Αν εσύ θέλεις ένα script να μην εκτελείται καθόλου στο runlevel X, απλά το διαγράφεις (ή το symbolic link του) από τον κατάλογο rcX.d, μιας και το script θα υπάρχει πάντα μέσα στο /etc/rc.d.

 

Αυτό που είπε ο Ros_Original θα το κάνεις αν θέλεις το script να εκτελεστεί με την παράμετρο stop όταν αλλάξεις runlevel σε X από κάποιο άλλο.

Δηλαδή έχει νόημα μόνο στην περίπτωση που έχει ξεκινήσει προηγουμένως το script σε κάποιο άλλο runlevel στο οποίο ήσουν, π.χ. στο runlevel Y (το οποίο θα συνέβαινε αν είχες ορίσει να ξεκινάει το script από τον κατάλογο rcY.d).

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

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...