sendmail
Prise en main rapide d'une « post-installation ». De nombeux exemples proviennent de la page de manuel afterboot(8)
.
À la fin de ce fichier, il faut rajouter ces variables :
hostname="nom.domaine.tld" clear_tmp=YES dhclient=YES # DHCP ## XDM #xdm=YES #xdm_flags=""
Les 2 dernières lignes sont commentées pour l'instant, car X11 n'est pas encore configuré.
Je désactive également postfix 1).
postfix=NO
Pour plus de détails man 5 rc.conf
.
Cette étape est optionnelle, mais je n'aime pas avoir des « beeps » en console, donc je rajoute ces lignes.
# Turn off beep console setvar bell.pitch=0 #setvar bell.volume=0
Si la première ligne ne fonctionne pas, essayez la seconde.
Ensuite, il faut relancer le daemon wscons
.
/etc/rc.d/wscons restart
La commande ifconfig -a
donne des informations sur la carte. Ci-dessous un exemple
ne2: flags=8822<BROADCAST,NOTRAILERS,SIMPLEX,MULTICAST> mtu 1500 address: 00:20:18:2a:4a:53 media: Ethernet autoselect (10base2) lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192 inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
Ma carte s'appellle donc ne2
(on aurait pu la trouver grace à la commande dmseg
).
Pour établir une connexion par DHCP :
dhclient -1 ne2 ifconfig -a ne2: flags=8863<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500 address: 00:20:18:2a:4a:53 media: Ethernet autoselect (10baseT) inet 192.168.1.72 netmask 0xffffff00 broadcast 192.168.1.255 inet6 fe80::220:18ff:fe2a:4a53%ne2 prefixlen 64 scopeid 0x1 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192 inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
L'offre est assez conséquente, cependant pour le début les plus importants sont :
J'aime bien avoir également, screen, emacs et zsh.
Pour les installer, il faut utiliser la commande pkg_add
.
<note importante>Bien que les BSD possèdent les mêmes outils, les options sont différentes.</note>
Le plus simple consiste à définir la variable PKG_PATH
correspondant à un miroir du serveur NetBSD 2). Il faut choisir un serveur FTP le plus proche.
Ensuite, il suffit de « l'exporter dans l'environnement ». Un exemple pour un ordinateur de type i386
.
Si le compte root utilise le C shell
setenv PKG_PATH ftp://ftp3.de.netbsd.org/pub/NetBSD/pkgsrc/packages/NetBSD-4.0/i386/All
Si le compte root utilise le Korn shell
export PKG_PATH="ftp://ftp3.de.netbsd.org/pub/NetBSD/pkgsrc/packages/NetBSD-4.0/i386/All"
Désormais l'installation d'un paquet précompilé se fera de cette manière :
pkg_add -v perl
Pour ne pas à avoir à chaque fois exporter cette variable, il est préférable de la copier dans le fichier .profile
de l'utilisateur root.
Voici ce que j'utilise.
# miroir FTP if [ ! -d /usr/pkgsrc ]; then _ARCH=`uname -p` _OS=`uname -s` _RELEASE=`uname -r` export PKG_PATH="ftp://ftp3.de.netbsd.org/pub/pkgsrc/packages/$_OS-$_RELEASE/$_ARCH/All" fi
Il faut l'avoir sélectionner lors de l'installation, sinon on a 2 alternatives.
pkgrsc
mais nécessite une compilation (très long, mais on aura à sa disposition le Xorg modulaire).Pour générer automatiquement le fichier de configuration de XFree86 (c'est sensiblement la même chose pour Xorg).
X -configure
On obtient un fichier XF86Config.new
, il faut le modifier notamment pour disposer d'un clavier français, mettre les bonnes résolutions de l'écran, etc.
. . . Section "InputDevice" Identifier "Keyboard0" Driver "keyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc105" Option "XkbLayout" "fr" EndSection Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Protocol" "wsmouse" Option "Device" "/dev/wsmouse" Option "ZAxisMapping" "4 5" EndSection . . .
Ensuite pour tester la configuration :
xf86cfg -xf86config /root/XF86Config.new
Si tout est correct, on peut copier le fichier dans le répertoire /etc/X11
.
cp XF86Config.new /etc/X11/XF86Config
Précédemment, on a vérifié, que les périphériques (écran, carte graphique, clavier, souris) sont reconnus et fonctionnels, on peut désormais choisir un gestionnaire de fenêtres. Pour l'utilisateur root twm
3) suffira.
cp /etc/X11/xinit/xinitrc ~/.xinitrc ln -s .xinitrc .xsession
Puis, on lance le serveur avec startx
, Ctrl+Alt+BackSpace
pour l'arrêter.
Pour empêcher l'écoute du port 6000 par X11, dans le fichier /usr/X11R6/bin/startx
la ligne commençant par serverargs
, je rajoute ceci.
serverargs="-nolisten tcp"
Dans le fichier /etc/X11/xdm/Xsetup_0
je commente la ligne
xconsole -geometry 480x130-0-0 -daemon -notify -verbose -fn fixed -exitOnFail
Pour l'instant, on a fait l'essentiel du travail sous le compte root, ce n'est pas recommendé. La commande s'appelle useradd
.
Avant de l'exécuter, je peuple le répertoire /etc/skel
de certains fichiers de configuration.
Voici le mien par exemple
ls /etc/skel total 28 -r--r--r-- 1 root wheel 483 Dec 27 23:01 .Xresources -r--r--r-- 1 root wheel 762 Apr 24 2003 .cshrc -r--r--r-- 1 root wheel 13087 Dec 23 18:30 .emacs.el -r--r--r-- 1 root wheel 488 Apr 24 2003 .login -r--r--r-- 1 root wheel 291 Dec 23 18:49 .login_conf -r--r--r-- 1 root wheel 265 Apr 24 2003 .logout -r--r--r-- 1 root wheel 510 Sep 1 2006 .profile -r--r--r-- 1 root wheel 3729 Dec 23 18:14 .screenrc -r--r--r-- 1 root wheel 136 Sep 14 2006 .shrc -r--r--r-- 1 root wheel 2670 Dec 27 22:59 .twmrc -r--r--r-- 1 root wheel 644 Dec 27 23:01 .xinitrc
Je crée également une classe dans le fichier /etc/login.conf
.
# login.conf - login class capabilities database # default:\ :welcome=/etc/motd:\ :path=/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin /usr/pkg/sbin /usr/pkg/bin:\ :nologin=/var/run/nologin:\ :cputime=unlimited:\ :datasize=unlimited:\ :stacksize=unlimited:\ :memorylocked=unlimited:\ :memoryuse=unlimited:\ :filesize=unlimited:\ :coredumpsize=unlimited:\ :openfiles=unlimited:\ :maxproc=unlimited:\ :posixlocks=unlimited:\ :sbsize=unlimited:\ :vmemoryuse=unlimited:\ :priority=0:\ :ignoretime@:\ :minpasswordlen=4:\ :umask=022: # # French Users Accounts. Setup proper environment variables. # french|French Users Accounts:\ :charset=ISO8859-15:\ :lang=fr_FR.ISO8859-15:\ :tc=default:
<note>Cela n'a pas l'air d'être réellement pris en compte par le système, alors que sous FreeBSD et DragonFly aucun problème.</note>
Si on modifie ce fichier, il faut mettre à jour la base de données.
cap_mkdb /etc/login.conf
Dans le fichier .login_conf
j'ai ceci :
# Users who do not wish to use monetary units or time formats # of French can manually change each variable. me:\ :charset=ISO8859-15:\ :lang=fr_FR.ISO8859-15:\ :lc_ctype=fr_FR.ISO8859-15:\ :lc_collate=C:\ :lc_messages=fr_FR.ISO8859-15:\ :lc_monetary=C:\ :lc_numeric=C:\ :lc_time=C:
L'ajout d'un nouvel utilisateur se fait de cette façon :
useradd -G wheel,operator -g users -m -s /usr/pkg/bin/zsh -L french utilisateur
-g
groupe principal-G
groupe secondaire, pour pouvoir se connecter en root il faut appartenir au groupe wheel
Pour donner un mot de passe :
passwd olivier
<note>Lorsque l'utilisateur root invoque cette commande, il ne donne pas l'ancien mot de passe.</note>
Pour éteindre convenable un ordinateur si on utilise autre chose que KDE et Gnome, il faut utiliser la commande shutdown
. Seul l'utilisateur root possède les droits suffisants. On va autoriser tous les utilisateurs à pouvoir utiliser cette commande, on lance visudo
, et on rajoute ces lignes :
. . . # User alias specification User_Alias USERS = utilisateur . . . USERS NomMachine = NOPASSWD: /sbin/shutdown
Il faut bien sur remplacer NomMachine
et utilisateur
par vos valeurs.
On peut maintenant décommenter les 2 dernières lignes du fichier /etc/rc.conf
correspondant au serveur X, redémarrer l'ordinateur.