#!/bin/bash
# Tuer ppp pour forcer une déconnexion

# Le script doit être exécuté en tant qu'utilisateur root.

killppp="eval kill -9 `ps ax | awk '/ppp/ { print $1 }'`"
#                     -------- ID du processus ppp -----  

$killppp                  # Cette variable est maintenant une commande.


# Les opérations suivantes doivent être faites en tant qu'utilisateur root.

chmod 666 /dev/ttyS3      #  Restaure les droits de lecture/écriture, sinon que
                          #+ se passe-t'il ?
#  Comme nous lançons un signal SIGKILL à ppp après avoir changé les droits sur
#+ le port série, nous restaurons les droits à l'état initial.

rm /var/lock/LCK..ttyS3   #  Supprime le fichier de verrouillage du port série.
                          #+ Pourquoi ?

#  Note :
#  Suivant le matériel et même la version du noyau,
#+ le port du modem de votre machine pourrait être différent --
#+ /dev/ttyS1 ou /dev/ttyS2.

exit 0

# Exercices:
# ---------
# 1) Que le script vérifie si l'utilisateur root l'appelle.
# 2) Faire une vérification concernant le processus à tuer (qu'il existe bien).
# 3) Écrivez une autre version de ce script basé sur 'fuser' :
#+   if [ fuser -s /dev/modem ]; then ...