rev |
line source |
slaxemulator@4
|
1 ====== Les secrets du script /etc/init.d/network.sh ======
|
slaxemulator@4
|
2
|
slaxemulator@4
|
3 ===== Introduction =====
|
slaxemulator@4
|
4
|
slaxemulator@4
|
5 Au démarrage du système SliTaz exécute le fichier ///etc/init.d/network.sh // pour initialiser le réseau.
|
slaxemulator@4
|
6 Ce script configure le nom d'ôte, l'interface de boclage (loopback) et la connexion Internet.
|
slaxemulator@4
|
7
|
slaxemulator@4
|
8 Il est également possible de lancer ce script pendant l'éxecution du système pour ouvrir ou fermer les connexions réseaux.
|
slaxemulator@4
|
9 Par exemple **netbox** et les scripts get-wifi-firmware (get-ipw2100-firmware, get-b43-firmware...) l'utilise.
|
slaxemulator@4
|
10
|
slaxemulator@4
|
11
|
slaxemulator@4
|
12 ===== Utilisation =====
|
slaxemulator@4
|
13
|
slaxemulator@4
|
14 Par défaut le script ///etc/init.d/network.sh// utilise ///etc/network.conf// comme fichier de configuration.
|
slaxemulator@4
|
15 Les informations contenu dans ce fichier, sont utilisées comme valeurs initiales pour la connexion réseau.
|
slaxemulator@4
|
16
|
slaxemulator@4
|
17 Pour démarrer la connexion réseau entrez:
|
slaxemulator@4
|
18
|
slaxemulator@4
|
19 <code>
|
slaxemulator@4
|
20 # /etc/init.d/network.sh start
|
slaxemulator@4
|
21 </code>
|
slaxemulator@4
|
22
|
slaxemulator@4
|
23 The start arg should be used only at boot. Pour arrêter la connexion:
|
slaxemulator@4
|
24
|
slaxemulator@4
|
25 <code>
|
slaxemulator@4
|
26 # /etc/init.d/network.sh stop
|
slaxemulator@4
|
27 </code>
|
slaxemulator@4
|
28
|
slaxemulator@4
|
29 Pour arrêter et redémarrer:
|
slaxemulator@4
|
30
|
slaxemulator@4
|
31 <code>
|
slaxemulator@4
|
32 # /etc/init.d/network.sh restart
|
slaxemulator@4
|
33 </code>
|
slaxemulator@4
|
34
|
slaxemulator@4
|
35 Mais le plus intéressant est que ///etc/init.d/network.sh// peut utiliser plusieurs fichiers de configuration.
|
slaxemulator@4
|
36 C'est très pratique si vous utilisez un PC portable avec plusieurs connections.
|
slaxemulator@4
|
37
|
slaxemulator@4
|
38 For example, we can create a directory /etc/network, containing some config files, named:
|
slaxemulator@4
|
39
|
slaxemulator@4
|
40 * Home, for home, using an ethernet connection and a static ip.
|
slaxemulator@4
|
41 * Desktop, for the desktop, with a wep encryption, and a static ip.
|
slaxemulator@4
|
42 * Univ, wifi without encryption, and with dhcp.
|
slaxemulator@4
|
43
|
slaxemulator@4
|
44 Now to get connected at Home, later at a Desktop and finally at Univ, before stopping connection, we only have to:
|
slaxemulator@4
|
45
|
slaxemulator@4
|
46 <code>
|
slaxemulator@4
|
47 # /etc/init.d/network.sh restart /etc/network/Home
|
slaxemulator@4
|
48 # /etc/init.d/network.sh restart /etc/network/Desktop
|
slaxemulator@4
|
49 # /etc/init.d/network.sh restart /etc/network/Univ
|
slaxemulator@4
|
50 # /etc/init.d/network.sh stop
|
slaxemulator@4
|
51 </code>
|
slaxemulator@4
|
52
|
slaxemulator@4
|
53 ===== Sudo =====
|
slaxemulator@4
|
54
|
slaxemulator@4
|
55 Since /etc/init.d/network.sh/ can only be used by root, if you want a normal user to use it, you should install sudo:
|
slaxemulator@4
|
56
|
slaxemulator@4
|
57 <code>
|
slaxemulator@4
|
58 # tazpkg get-install sudo
|
slaxemulator@4
|
59 </code>
|
slaxemulator@4
|
60
|
slaxemulator@4
|
61 And then configure it:
|
slaxemulator@4
|
62
|
slaxemulator@4
|
63 <code>
|
slaxemulator@4
|
64 # visudo
|
slaxemulator@4
|
65 </code>
|
slaxemulator@4
|
66
|
slaxemulator@4
|
67 For user tux, which must use network.sh from every host; without a password you should add:
|
slaxemulator@4
|
68
|
slaxemulator@4
|
69 <code bash>
|
slaxemulator@4
|
70 tux ALL=NOPASSWD: /etc/init.d/network.sh,
|
slaxemulator@4
|
71 </code>
|
slaxemulator@4
|
72
|
slaxemulator@4
|
73 For user tortux, which may only get connected from localhost, and which should use a password each time, you should add:
|
slaxemulator@4
|
74
|
slaxemulator@4
|
75 <code bash>
|
slaxemulator@4
|
76 tortux my_hostname=PASSWD: /etc/init.d/network.sh,
|
slaxemulator@4
|
77 </code>
|
slaxemulator@4
|
78
|
slaxemulator@4
|
79 If you forgot your hostname, just run:
|
slaxemulator@4
|
80
|
slaxemulator@4
|
81 <code>
|
slaxemulator@4
|
82 $ cat /etc/hostname
|
slaxemulator@4
|
83 </code>
|
slaxemulator@4
|
84
|
slaxemulator@4
|
85 Here is some help to use visudo:
|
slaxemulator@4
|
86
|
slaxemulator@4
|
87 * i insertion mode (to write).
|
slaxemulator@4
|
88 * Escape exit insertion mode.
|
slaxemulator@4
|
89 * :wq record and quit.
|
slaxemulator@4
|
90 * :q! quit without recording.
|
slaxemulator@4
|
91
|
slaxemulator@4
|
92 ===== With Openbox =====
|
slaxemulator@4
|
93
|
slaxemulator@4
|
94 All this is not that really user friendly...
|
slaxemulator@4
|
95
|
slaxemulator@4
|
96 That's why I'll give you a perfect treat: A way to integrate all this in an openbox menu! Create a script /usr/lib/openbox/network-menu.sh, and add this to it:
|
slaxemulator@4
|
97
|
slaxemulator@4
|
98 <code bash>
|
slaxemulator@4
|
99 #!/bin/sh
|
slaxemulator@4
|
100 #
|
slaxemulator@4
|
101 # openbox pipe menu to start network connections
|
slaxemulator@4
|
102 # (This script is only useful if sudo is installed, and correctly configured)
|
slaxemulator@4
|
103
|
slaxemulator@4
|
104 echo ''
|
slaxemulator@4
|
105
|
slaxemulator@4
|
106 # for default file:
|
slaxemulator@4
|
107 echo ''
|
slaxemulator@4
|
108 echo ''
|
slaxemulator@4
|
109 echo 'sudo /etc/init.d/network.sh restart'
|
slaxemulator@4
|
110 echo ''
|
slaxemulator@4
|
111
|
slaxemulator@4
|
112 # for others files:
|
slaxemulator@4
|
113 for file in $(ls /etc/network/)
|
slaxemulator@4
|
114 do
|
slaxemulator@4
|
115 echo -e ""
|
slaxemulator@4
|
116 echo ''
|
slaxemulator@4
|
117 echo "sudo /etc/init.d/network.sh restart /etc/network/$file"
|
slaxemulator@4
|
118 echo ''
|
slaxemulator@4
|
119 done
|
slaxemulator@4
|
120
|
slaxemulator@4
|
121 # To stop connections:
|
slaxemulator@4
|
122 echo ''
|
slaxemulator@4
|
123 echo ''
|
slaxemulator@4
|
124 echo 'sudo /etc/init.d/network.sh stop'
|
slaxemulator@4
|
125 echo ''
|
slaxemulator@4
|
126
|
slaxemulator@4
|
127 echo ''
|
slaxemulator@4
|
128 </code>
|
slaxemulator@4
|
129
|
slaxemulator@4
|
130 Make it executable:
|
slaxemulator@4
|
131
|
slaxemulator@4
|
132 <code sh>
|
slaxemulator@4
|
133 # chmod +x /usr/lib/openbox/network-menu.sh
|
slaxemulator@4
|
134 </code>
|
slaxemulator@4
|
135
|
slaxemulator@4
|
136 And now you only have to add these lines in //~/.config/openbox/menu.xml//:
|
slaxemulator@4
|
137
|
slaxemulator@4
|
138 <code bash>
|
slaxemulator@4
|
139 menu id="network-menu" label="Network"
|
slaxemulator@4
|
140 execute="/usr/lib/openbox/network-menu.sh" />
|
slaxemulator@4
|
141 </code>
|
slaxemulator@4
|
142
|
slaxemulator@4
|
143 Then reconfigure openbox:
|
slaxemulator@4
|
144
|
slaxemulator@4
|
145 <code>
|
slaxemulator@4
|
146 $ openbox --reconfigure
|
slaxemulator@4
|
147 </code>
|
slaxemulator@4
|
148
|
slaxemulator@4
|
149 Enjoy!
|