Switch για ακύρωση reboot/shutdown όταν τρέχει προκαθορισμένο process
George Notaras
gnot at g-loaded.eu
Wed Nov 26 21:35:14 EET 2008
George Notaras wrote:
> Αυτό που ζητάω είναι:
>
> 1) Όταν στο PC ξεκινάει ένα συγκεκριμένο process A (πχ ένα backup job
> μέσω cron), να δημιουργείται ένα αρχείο, πχ /var/lock/tonpoulo.lock.
> Εύκολο, με τη χρήση ενός loader script για το process A, το οποίο θα
> δημιουργεί το αρχείο.
>
> 2) Με βασική προϋπόθεση να _μην_ πειράξουμε κάποιο core αρχείο του
> λειτουργικού, πώς θα γίνει το σύστημα, όταν εκτελούνται εντολές όπως
> shutdown/reboot, να ελέγχει την ύπαρξη του αρχείου
> /var/lock/tonpoulo.lock και σε περίπτωση ύπαρξής του να μην εκτελεί τη
> διαδικασία shutdown;
>
> Υπάρχει κάποιος μηχανισμός που να δίνει αυτή τη δυνατότητα; Κι αν δεν
> γίνεται σε επίπεδο initscripts, τα διάφορα γνωστά desktops (kde, gnome,
> xfce) έχουν κάποιο τέτοιο μηχανισμό που να μπορεί κανείς να προσθέσει
> ελέγχους σαν τον παραπάνω;
>
Καταρχήν να ευχαριστήσω όλους για τη βοήθεια.
Έχω ανεβάσει το delayed-shutdown-1.0.tar.gz εδω:
http://www.codetrax.org/downloads/projects/delayed-shutdown/
Εκεί θα ανέβουν και τα νεότερα versions, αν υπάρξουν.
Ακολουθεί αντιγραφή από το readme:
======================================
Manual Installation:
As user 'root' follow the instructions to install the file in your
initscripts directory:
cp delayed-shutdown /etc/init.d/
chmod +x /etc/init.d/delayed-shutdown
For RedHat and relatives run:
chkconfig --add delayed-shutdown
For Debian and relatives run:
update-rc.d delayed-shutdown defaults
Manual De-installation:
If for any reason you need to remove 'delayed-shutdown' from your system
do the following:
For RedHat and relatives run:
chkconfig --del delayed-shutdown
For Debian and relatives run:
update-rc.d -f delayed-shutdown remove
Delete the initscript:
rm /etc/init.d/delayed-shutdown
Usage:
In order to delay the shutdown process until your software finishes its
operation, you should create the no-shutdown lock file:
/var/lock/noshutdown.lock
Then let your software do its job and, when finished, delete the
no-shutdown lock file. In case of a script that would be:
lockfile /var/lock/noshutdown.lock
... [script is working] ...
rm -f /var/lock/noshutdown.lock
===================================
Για το update-rc.d διάβασα το man page online, οπότε αν κάτι είναι
λάθος, παρακαλώ ενημερώστε.
Για τεστ περιλαμβάνεται το test.sh
Αφού εγκατασταθεί το initscript, τρέξτε το test.sh:
./test.sh &
Και κάντε πχ επανεκκίνηση. Λογικά θα πρέπει να περιμένει να τελειώσει το
test.sh, το οποίο κρατάει το lock '/var/lock/noshutdown.lock' και στη
συνέχεια να προχωρήσει στο reboot.
Οποιαδήποτε διόρθωση, υπόδειξη κτλ είναι περισσότερο από ευπρόσδεκτη.
More information about the Linux-greek-users
mailing list