Junior
Ποιο σήμα αποστέλλεται κατά τη χρήση της εντολής kill: SIGTERM ή SIGKILL;
sobes.tech AI
Απάντηση από AI
Κατά τη χρήση της εντολής kill χωρίς να καθορίσετε τον αριθμό ή το όνομα του σήματος, αποστέλλεται από προεπιλογή το σήμα SIGTERM.
SIGTERM (Σήμα Τερματισμού):
- Είναι ένα ήπιο σήμα τερματισμού.
- Ζητά από τη διαδικασία να τερματίσει σωστά.
- Η διαδικασία μπορεί να πιάσει αυτό το σήμα, να καθαρίσει (κλείσει αρχεία, αποθηκεύσει κατάσταση) και στη συνέχεια να τερματίσει, ή να το αγνοήσει.
SIGKILL (Σήμα Αναγκαστικού Τερματισμού):
- Είναι ένα "σκληρό" σήμα τερματισμού.
- Δεν μπορεί να πιαστεί ή να αγνοηθεί από τη διαδικασία.
- Το σύστημα τερματίζει αμέσως τη διαδικασία, χωρίς να της δώσει την ευκαιρία να καθαρίσει.
Επομένως, η εντολή kill αποστέλλει από προεπιλογή το SIGTERM. Για να στείλετε το SIGKILL, πρέπει να το καθορίσετε ρητά:
# Αποστολή SIGTERM (προεπιλογή)
kill <PID>
# Αποστολή SIGKILL
kill -9 <PID>
# ή
kill -s SIGKILL <PID>