Table of Contents
Les secrets du script /etc/init.d/network.sh
Introduction
Au démarrage du système SliTaz exécute le fichier /etc/init.d/network.sh pour initialiser le réseau. Ce script configure le nom d'hôte, l'interface réseau virtuelle (loopback) et la connexion Internet.
Il est également possible de lancer ce script pendant l'éxecution du système pour ouvrir ou fermer les connexions réseaux. Par exemple netbox et les scripts get-wifi-firmware (get-ipw2100-firmware, get-b43-firmware…) l'utilisent ainsi.
Utilisation
Par défaut le script /etc/init.d/network.sh utilise /etc/network.conf comme fichier de configuration. Les informations contenues dans ce fichier sont utilisées comme valeurs initiales lors de la connexion réseau.
Pour démarrer la connexion réseau entrez:
# /etc/init.d/network.sh start
L'argument start doit être utilisé uniquement au démarrage. Pour arrêter la connexion:
# /etc/init.d/network.sh stop
Pour arrêter et redémarrer:
# /etc/init.d/network.sh restart
Mais le plus intéressant est que /etc/init.d/network.sh peut utiliser plusieurs fichiers de configuration. C'est très pratique si vous utilisez un PC portable, vous pouvez utiliser plusieurs configurations pour des connexions dans différents points d'accès.
Par exemple, nous pouvons créer un répertoire /etc/network, contenant des fichiers de configuration, appelés :
- Maison, pour la maison, en utilisant une connexion ethernet et une adresse IP statique.
- Bureau, pour le bureau, avec un cryptage WEP, et une adresse IP statique.
- Univ, wifi sans chiffrage, et avec le DHCP.
À partir de là, pour se connecter à la maison, plus tard dans au bureau et enfin à l'Université, avant d'arrêter la connexion, il suffit de faire :
# /etc/init.d/network.sh restart /etc/network/Home # /etc/init.d/network.sh restart /etc/network/Desktop # /etc/init.d/network.sh restart /etc/network/Univ # /etc/init.d/network.sh stop
Sudo
Vu que /etc/init.d/network.sh/ ne peut être utilisé que par root, si vous voulez qu'un utilisateur normal puisse l'employer, vous devez installer sudo :
# tazpkg get-install sudo
Et le configurer:
# visudo
Pour l'utilisateur tux, qui doit utiliser network.sh sur tout hôte, sans mot de passe, vous devez ajouter :
tux ALL=NOPASSWD: /etc/init.d/network.sh,
Pour l'utilisateur tortux, qui ne peut se connecter seulement que depuis localhost, et qui doit utiliser un mot de passe à chaque fois, vous devez ajouter :
tortux mon_hote=PASSWD: /etc/init.d/network.sh,
Si vous avez oublié votre nom d'hôte, il suffit d'exécuter :
$ cat /etc/hostname
Voici de l'aide pour utiliser visudo :
- i mode d'insertion (pour écrire).
- Escape Sortir du mode d'insertion.
- :wq enregistrer et quitter.
- :q! quitter sans enregistrer.
Avec Openbox
Tout cela n'est pas vraiment convivial…
C'est pourquoi je vais vous donner un bon remède: Un moyen d'intégrer tout ceci dans un menu openbox! Créez un script /usr/lib/openbox/network-menu.sh en insérant ceci :
#!/bin/sh # # openbox pipe menu to start network connections # (This script is only useful if sudo is installed, and correctly configured) echo '' # for default file: echo '' echo '' echo 'sudo /etc/init.d/network.sh restart' echo '' # for others files: for file in $(ls /etc/network/) do echo -e "" echo '' echo "sudo /etc/init.d/network.sh restart /etc/network/$file" echo '' done # To stop connections: echo '' echo '' echo 'sudo /etc/init.d/network.sh stop' echo '' echo ''
Le rendre executable:
# chmod +x /usr/lib/openbox/network-menu.sh
Et maintenant, vous n'avez qu'à ajouter ces lignes dans ~/.config/openbox/menu.xml:
menu id="network-menu" label="Network" execute="/usr/lib/openbox/network-menu.sh" />
Puis reconfigurer openbox:
$ openbox --reconfigure
et déguster!
Section Révision de la page | |
---|---|
Qualité | Bonne |
Revue | |
Priorité | |
Problèmes | |
Comment améliorer |