Bureau David
De Diablotins.org.
| Installer un système de bureau
|
| ||
| Ayant récemment fait l'acquisition d'une carte mère “Gigabyte M61PME-S2P” et du processeur AMD Athlon(tm) 7750 Dual-Core associé, j'ai téléchargé puis gravé le disque d'installation pour AMD64 bootonly.
Moquez-vous, ce n'est pas ce que j'ai fait, mais ce que j'aurais du faire. Ayant une mémoire de poisson rouge, cette article m'est en premier lieu, destiné. |
|
Installation
En amorçant sur le CD, j'ai, via sysinstall(8), installé rapidement FreeBSD pour AMD64.
Voyons, avec sysctl:
hw.model: AMD Athlon(tm) 7750 Dual-Core Processor hw.ncpu: 2
Disques
Je dispose d'un disque dur SATA, sur le canal 2, reconnu comme périphérique /dev/ad4.
david# atacontrol list
ATA channel 0:
Master: acd0 <PIONEER DVD-RW DVR-112D/1.21> ATA/ATAPI revision 7
Slave: no device present
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <MAXTOR STM3250310AS/4.AAA> SATA revision 2.x
Slave: no device present
ATA channel 3:
Master: no device present
Slave: no device present
le fstab créé lors de l'installation donne:
>cat /etc/fstab # Device Mountpoint FStype Options Dump Pass# /dev/ad4s1b none swap sw 0 0 /dev/ad4s1a / ufs rw 1 1 /dev/ad4s1e /tmp ufs rw 2 2 /dev/ad4s1f /usr ufs rw 2 2 /dev/ad4s1d /var ufs rw 2 2 /dev/acd0 /cdrom cd9660 ro,noauto 0 0
Je réserve 20G pour /temp et /var, parce que j'ai beaucoup de place.
> df -H Filesystem Size Used Avail Capacity Mounted on /dev/ad4s1a 520M 453M 25M 95% / devfs 1.0k 1.0k 0B 100% /dev /dev/ad4s1e 21G 25k 19G 0% /tmp /dev/ad4s1f 196G 13G 168G 7% /usr /dev/ad4s1d 21G 498M 19G 3% /var
Réseau
La carte est reconnue comme interface nfe0, qui se configure via le serveur DHCP de ma neufbox.
> ifconfig -l nfe0 plip0 lo0
Ma machine se nomme «david.marec» (mais où je suis allé chercher cela ?):
david:~>hostname david.marec
Console
Afin de préparer une station francophone, définissons les terminaux, comme suit
- Clavier FR avec accents
- Polices ISO88519-15.
- Consoles cons25l1.
N'oubliez pas de configurer la souris, au passage.
configuration générée
Voici le résultat:
# -- sysinstall generated deltas -- # Wed Jul 29 17:13:56 2009 # Created: Wed Jul 29 17:13:56 2009 # Enable network daemons for user convenience. # Please make all changes to this file, not to /etc/defaults/rc.conf. # This file now contains just the overrides from /etc/defaults/rc.conf. font8x14="iso15-8x14" font8x16="iso15-8x16" font8x8="iso15-8x8" hostname="david.marec" ifconfig_nfe0="DHCP" keymap="fr.iso.acc" moused_enable="YES" scrnmap="NO"
- ttys ( extrait )
ttyv0 "/usr/libexec/getty Pc" cons25l1 on secure # Virtual terminals ttyv1 "/usr/libexec/getty Pc" cons25l1 on secure ttyv2 "/usr/libexec/getty Pc" cons25l1 on secure ttyv3 "/usr/libexec/getty Pc" cons25l1 on secure ttyv4 "/usr/libexec/getty Pc" cons25l1 on secure ttyv5 "/usr/libexec/getty Pc" cons25l1 on secure ttyv6 "/usr/libexec/getty Pc" cons25l1 on secure ttyv7 "/usr/libexec/getty Pc" cons25l1 on secure ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure
Logiciels
Installons toutes les sources, sauf xorg, pour éviter qu'il ne soit compilé avec hal, ce qui génère plus de problèmes que de confort, AMHA.
Configurer
Une fois lancé, n'oubliez pas de donner un mot de passe à root:
# passwd
Utilisateurs
Préparons nos utilisateurs en déclarant une classe «french» pour les francophones, dans /etc/login.conf.
Extrait:
french|France users accounts:\ :charset=ISO-8859-15:\ :lang=fr_FR.ISO8859-15:\ :tc=default:
Définssons ensuite la classe «french» par défaut dans /etc/adduser.conf
defaultclass=french
Ainsi qu'un squelette de l'arborescence standard, pour les media amovibles:
cd /usr/share/skel touch photo touch cdrom
Dans le même esprit, afin d'obtenir un shell plus aisé à utiliser, ici csh/tcsh,
modifions comme suit son fichier de configuration par défaut, notamment l'invite:
david:~>cat /usr/share/skel/dot.cshrc
# $FreeBSD: src/share/skel/dot.cshrc,v 1.13 2001/01/10 17:35:28 archie Exp $
#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
#
alias h history 25
alias j jobs -l
alias la ls -a
alias lf ls -FA
alias ll ls -lA
alias ls ls -G
# A righteous umask
umask 22
set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin)
setenv EDITOR edit
setenv PAGER more
setenv BLOCKSIZE K
if ($?prompt) then
# An interactive shell -- set some stuff up
set prompt="%n:%c03%#"
set filec
set history = 100
set savehist = 100
set mail = (/var/mail/$USER)
if ( $?tcsh ) then
bindkey "^[[1~" beginning-of-line
bindkey "^[[4~" end-of-line
bindkey "^[[3~" delete-char
bindkey "^?" delete-char
bindkey "^W" backward-delete-word
bindkey -k up history-search-backward
bindkey -k down history-search-forward
endif
endif
Créons david:
adduser david
qui donne:
Création de David: adduser david Username : david Password : ***** Full Name : David Marec Uid : 1002 Class : french Groups : wheel operator Home : /home/david Home Mode : Shell : /bin/tcsh Locked : no
David est aussi membre de “operator”
Créons le groupe «Arcade» dédié aux joueurs.
pw groupadd Arcade -M david
Mise à jour
Afin de préparer le système pour les mises à jour, configurons csup.
Copions tous les fichiers de /usr/share/examples/cvsup dans /usr/local/etc/cvsup
david# mkdir -p /usr/local/etc/cvsup david# cp -R /usr/share/examples/cvsup /usr/local/etc/ david# ls /usr/local/etc/cvsup/ ports-supfile stable-supfile standard-supfile doc-supfile
Et choisissons un serveur français, pour ces fichiers, en définissant dans chaque variable “host” le serveur «cvsup.fr.FreeBSD.org».
*default host=cvsup.fr.FreeBSD.org *default base=/var/db *default prefix=/usr
directement, par exemple:
sed 's/CHANGE_THIS/cvsup.fr/' /usr/share/examples/cvsup/ports-supfile > /usr/local/etc/cvsup/ports-supfile
Puis, dans /etc/make.conf:
# added by use.perl 2009-07-29 17:54:50 PERL_VERSION=5.8.9 # CVSup update flags. Edit SUPFILE settings to reflect whichever distribution # file(s) you use on your site (see /usr/share/examples/cvsup/README for more # information on CVSup and these files). To use, do "make update" in /usr/src. # SUP_UPDATE= # SUP= /usr/bin/csup SUPFLAGS= -g -L 2 SUPHOST= cvsup.fr.FreeBSD.org SUPFILE= /usr/local/etc/cvsup/standard-supfile PORTSSUPFILE= /usr/local/etc/cvsup/ports-supfile DOCSUPFILE= /usr/local/etc/cvsup/doc-supfile DOC_LANG= en_US.ISO8859-1 fr_FR.ISO8859-1
Puis mettons tout à jour :
# cd /usr/src # make update
# make -j4 buildworld && make kernel # reboot
# mount -a # kbdmap -K # cd /usr/src # make installworld && mergemaster -U
nota: vous devez avoir installé une première fois les fichiers sources pour utiliser make update. Si vous les avez oubliés, récupérez les sources avec la commande :
# cd /usr/src # csup -L 2 /usr/local/etc/cvsup/standard-supfile
Logiciels de base
Installez en priorité les outils suivants:
- security/sudo
Configurez sudo pour qu'il accepte le groupe wheel:
david# grep wheel /usr/local/etc/sudoers # Uncomment to allow people in group wheel to run all commands %wheel ALL=(ALL) ALL # %wheel ALL=(ALL) NOPASSWD: ALL
- misc/tmux
- ports-mgmt/portmaster
- ports-mgmt/portupgrade
- x11/xorg, sans HAL !
- x11-wm/fluxbox
- www/links
interface graphique
Définissons “fluxbox“ dans .xinitrc de david
david# cat ~david/.xinitrc exec startfluxbox
Laissons xorg générer ses fichiers:
david# X -configure david# cp /root/xorg.conf.new /etc/X11/xorg.conf
et configurons un clavier francophone:
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbLayout" "fr"
Option "XkbVariant" "latin9"
EndSection
Nous ne pouvont utiliser que les pilotes libres nv (peu performant, sans accélaration), ou nouveau ( en test) .
Actuellement, Nvidia ne dispose pas de support pour amd64;
il est en cours de test sous la branche 8, mais il est peu probable qu'il soit disponible un jour pour les versions précédentes.
Par contre, le port x11/nvidia-driver fonctionne parfaitement sur la plateforme x86, que vous pouvez utiliser plutôt que la version amd64 que j'ai choisie.
| |
N'oubliez pas que HAL n'a pas été inclus lors de l'installation de Xorg, sinon... |
Le reste
Nous pouvons maintenant compiler tout un tas de logiciels, dans des terminaux tmux, de préférence.
utilisez l'option
make config-recursive
avant d'installer les logiciels.
Linux
J'ai choisi la Compatiblité linux emulators/linux_base-f7:
kldload linux sysctl compat.linux.osrelease=2.6.16 linux_base-f7
Ajoutez «linux_enable="YES"» dans /etc/rc.conf, et «compat.linux.osrelease=2.6.16» dans /etc/sysctl.conf.
Le confort
- www/opera
- www/firefox35
- Ajoutons «sem_load=yes"» dans /etc/loader.conf pour ce dernier.
- x11/kde3
- french/kde3-i18n
- Configurons Konsole.
- graphics/ImageMagick
- mplayer
- editors/vim
- emulators/sdlmame
- audio/musicpd
- audio/ncmpcpp
- sysutils/cdrtools-devel
config avancée
Autorisons le montage par les utilisateurs, non root:
david# cat /etc/sysctl.conf # $FreeBSD: src/etc/sysctl.conf,v 1.8 2003/03/13 18:43:50 mux Exp $ # # This file is read when going to multi-user and its contents piped thru # ``sysctl'' to adjust kernel values. ``man 5 sysctl.conf'' for details. # # Uncomment this to prevent users from seeing information about processes that # are being run under another UID. #security.bsd.see_other_uids=0 vfs.usermount=1
Afin de pouvoir graver un disque à l'aide de cdrecord ou cdrdao,
qui utilisent le bus SCSI pour accéder aux périphériques ATAPI,
chargeons le module qui fait le lien entre ces deux bus:
david:~>cat /boot/loader.conf atapicam_load="yes"
Vérifions:
david:~>camcontrol devlist <PIONEER DVD-RW DVR-112D 1.21> at scbus0 target 0 lun 0 (cd0,pass0)
Puis, l'utilisation des périphériques par les utilisateurs du groupe operator:
david:~>cat /etc/devfs.conf perm acd0 0660 perm cd0 0660 perm pass0 0660 perm xpt0 0660
Mettons nous à l'heure à chaque démarrage:
david:~>grep -i ntpdate /etc/rc.conf ntpdate_enable="YES" ntpdate_flags="europe.pool.ntp.org"
Matériel
Tous les périphériques ne sont pas reconnus automatiquement.
Carte son
Afin de faire fonctionner cette carte, il faut d'abord trouver le pilote idoine.
L'idéal serait d'en trouver la référence dans les spécifications de la carte mère, mais, on peut faire plus court.
Chargez tous les pilotes de carte son:
kldload snd_driver
Reportons nous sur la console pour déterminer quel pilote est attaché à la carte son.
hdac0: HDA Codec #0: Realtek ALC883 pcm0: <HDA Realtek ALC883 PCM #0 Analog> at cad 0 nid 1 on hdac0 pcm1: <HDA Realtek ALC883 PCM #1 Analog> at cad 0 nid 1 on hdac0 pcm2: <HDA Realtek ALC883 PCM #2 Digital> at cad 0 nid 1 on hdac0
HDA Codec: Recherchons le dans la liste:
david:~> grep -i HDA /boot/defaults/loader.conf snd_hda_load="NO" # Intel High Definition Audio (Controller)
Maintenant, il suffit de l'intégrer dans loader.conf:
david:~>grep -i hda /boot/loader.conf snd_hda_load=yes
Plus!
- Olivier Cochard-Labbé m' a précédé dans cet exercice

