Differences

This shows you the differences between two versions of the page.

Link to this comparison view

bsd:kernel_tuning [2010/01/12 13:29] (current)
Line 1: Line 1:
 +Il est possible sous FreeBSD, NetBSD et OpenBSD de modifier des caractéristiques système "à chaud"​. \\ 
 +Cette fonction est similaire aux modifications de fichiers virtuels de /proc sous GNU/​Linux.\\ ​
 +Prenons l'​ultra classique example de l'​activation de la fonction de passerelle ( ip forwarding ).
  
 +Identifions avant tout le nom du paramètre :
 +
 +( nous prendrons comme exemple FreeBSD 4.x )
 +<​code>​
 +# sysctl -a|grep forward
 +net.inet.ip.forwarding:​ 0
 +net.inet.ip.fastforwarding:​ 0
 +net.inet6.ip6.forwarding:​ 0
 +</​code>​
 +
 +1ere remarque, les "​variables"​ sont identifiées de manière similaire aux MIB snmp.
 +On constate que la valeur net.inet.ip.forwarding ( qui selon toute vraisemblence,​ est celle que nous désirons modifier ) est placée à 0.
 +Changeons cette valeur :
 +<​code>​
 +# sysctl -w net.inet.ip.forwarding=1
 +</​code>​
 +
 +Et verifions que le changement est pris en compte :
 +<​code>​
 +#sysctl net.inet.ip.forwarding
 +net.inet.ip.forwarding:​ 1
 +</​code>​
 +
 +Parfait, la valeur a bien été modifiée.
 +Pour garder les valeurs au prochain démarrage, il faut créer un fichier **/​etc/​sysctl.conf** au format suivant :
 +
 +parametre=valeur
 +
 +par exemple :
 +<​code>​
 +kern.securelevel=2
 +net.inet.ip.forwarding=1
 +...
 +</​code>​
 +
 +La commande sysctl -a vous donnera l'​ensemble des variables ainsi que leurs valeurs, le plus souvent, \\ 
 +leurs noms sont relativement explicites, le cas échéant, reportez vous aux fichiers /​usr/​include :
 +<​code>​
 +sys/​sysctl.h
 +sys/​socket.h
 +sys/gmon.h
 +vm/​vm_param.h
 +netinet/​in.h
 +netinet/​icmp_var.h
 +et netinet/​udp_var.h
 +</​code>​
bsd/kernel_tuning.txt · Last modified: 2010/01/12 13:29 (external edit)