Je vois l'idée. A priori un route add ne peut être lancé qu'en root donc on peut imaginer que tu fasses un alias dans le profil route pour lancer un script shell qui va d'une par lancer la vrai commande route, et d'autre part l'incorporer dans le fichier de configuration.
#/bin/bash
# le fichier ~/route.sh
str="/sbin/route"
for i in "$*"
do
str="$str $i"
done
$str
if [ $1 = "add" -o $1 = "del" ]; then
echo "j'ajoute $str dans le fichier de configuration"
else
echo "je n'ajoute pas $str dans le fichier de configuration"
fi
exemple :
(mando@cenedra) (~) $ chmod a+x route.sh
(mando@cenedra) (~) $ route -n
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
139.100.140.78 172.20.41.1 255.255.255.255 UGH 0 0 0 eth0
10.193.0.0 0.0.0.0 255.255.0.0 U 0 0 0 tap0
172.20.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 172.20.41.1 0.0.0.0 UG 0 0 0 eth0
(mando@cenedra) (~) $ alias route=~/route.sh
(mando@cenedra) (~) $ route -n
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
139.100.140.78 172.20.41.1 255.255.255.255 UGH 0 0 0 eth0
10.193.0.0 0.0.0.0 255.255.0.0 U 0 0 0 tap0
172.20.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 172.20.41.1 0.0.0.0 UG 0 0 0 eth0
je n'ajoute pas /sbin/route -n dans le fichier de configuration
Cela suppose que root utilise un bash (cf /etc/passwd) puisque le script que je te donne est écrit en bash (je ne sais pas si ca marche avec sh) et que dans son fichier ~/.bashrc la commande alias soit lancée (et donc que /root/.bashrc soit chargé quand root se loggue)
Bonne chance