diff --git a/fr_FR.ISO8859-1/books/handbook/basics/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/basics/chapter.sgml index ddef528cfc..dbb6083eb9 100644 --- a/fr_FR.ISO8859-1/books/handbook/basics/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/basics/chapter.sgml @@ -1,3030 +1,3032 @@ Chris Shumway Réécrit par Quelques bases d'UNIX &trans.a.fonvieille; Synopsis Le chapitre suivant couvrira les commandes et fonctionnalités de base du système d'exploitation FreeBSD. La plupart de ces informations sera valable pour n'importe quel système d'exploitation &unix;. Soyez libre de passer ce chapitre si vous êtes familier avec ces informations. Si vous êtes nouveau à FreeBSD, alors vous voudrez certainement lire attentivement ce chapitre. Après la lecture de ce chapitre, vous saurez: Comment utiliser les “consoles virtuelles” de &os;. Comment les permissions des fichiers d'&unix; fonctionnent ainsi que l'utilisation des indicateurs de fichiers sous &os;. L'architecture par défaut du système de fichiers sous &os;. L'organisation des disques sous &os;. Comment monter et démonter des systèmes de fichier. Ce que sont les processus, daemons et signaux. Ce qu'est un interpréteur de commande, et comment changer votre environnement de session par défaut. Comment utiliser les éditeurs de texte de base. Ce que sont les périphériques et les fichiers spéciaux de périphérique. Quel est le format des binaires utilisé sous &os;. Comment lire les pages de manuel pour plus d'information. Consoles virtuelles & terminaux consoles virtuelles terminaux FreeBSD peut être utilisé de diverses façons. L'une d'elles est en tapant des commandes sur un terminal texte. Une bonne partie de la flexibilité et de la puissance d'un système d'exploitation &unix; est directement disponible sous vos mains en utilisant FreeBSD de cette manière. Cette section décrit ce que sont les “terminaux” et les “consoles”, et comment les utiliser sous FreeBSD. La console console Si vous n'avez pas configuré FreeBSD pour lancer automatiquement un environnement graphique au démarrage, le système vous présentera une invite d'ouverture de session après son démarrage, juste après la fin des procédures de démarrage. Vous verrez quelque chose de similaire à: Additional ABI support:. Local package initialization:. Additional TCP options:. Fri Sep 20 13:01:06 EEST 2002 FreeBSD/i386 (pc3.example.org) (ttyv0) login: Les messages pourront être différents sur votre système, mais cela devrait y ressembler. Les deux dernières lignes sont celles qui nous intéressent actuellement. La seconde de ces lignes nous donne: FreeBSD/i386 (pc3.example.org) (ttyv0) Cette ligne contient quelques éléments d'information sur le système que vous venez de démarrer. Vous êtes en train de lire une console “FreeBSD”, tournant sur un processeur Intel ou compatible de la famille x86 C'est ce que signifie i386. Notez que même si vous faites tourner FreeBSD sur un CPU Intel 386, cela sera i386. Ce n'est pas le type de votre microprocesseur, mais “l'architecture” du microprocesseur qui est donnée ici. . Le nom de cette machine (chaque machine &unix; a un nom) est pc3.example.org, et vous regardez actuellement sa console système—le terminal ttyv0. Et enfin, la dernière ligne est toujours: login: C'est le moment où vous êtes supposé taper votre “nom d'utilisateur” pour vous attacher au système FreeBSD. La section suivante décrit comment procéder. Ouvrir une session sur un système FreeBSD FreeBSD est un système multi-utilisateur, multi-processeur. C'est la description formelle qui est habituellement donnée pour un système qui peut être utilisé par différentes personnes, qui exécutent simultanément de nombreux programmes sur une machine individuelle/ Chaque système multi-utilisateur a besoin d'un moyen pour distinguer un “utilisateur” du reste. Sous FreeBSD (et sous tous les systèmes de type &unix;), cela est effectué en demandant à chaque utilisateur de “s'attacher” au système avant d'être en mesure d'exécuter des programmes. Chaque utilisateur possède un nom unique (le nom d'utilisateur) et une clé secrète personnelle (le mot de passe). FreeBSD demandera ces deux éléments avant d'autoriser un utilisateur à lancer un programme. procédures de démarrage Juste après que FreeBSD ait démarré et en ait terminé avec l'exécution des procédures de démarrage Les procédures de démarrage sont des programmes qui sont exécutés automatiquement pas FreeBSD au démarrage. Leur fonction principale est de configurer le système pour permettre l'exécution de tout programme, et de démarrer tout service que vous avez configuré pour tourner en tâche de fond et exécuter des choses utiles. , il présentera une invite et demandera un nom d'utilisateur valide: login: Pour cet exemple, supposons que votre nom d'utilisateur est john. Tapez john à cette invite puis appuyez sur Entrée. Alors vous devrez être invité à entrer un “mot de passe”: login: john Password: Tapez maintenant le mot de passe de john, et appuyez sur Entrée. Le mot de passe n'est pas affiché! Vous n'avez pas à vous préoccuper de cela maintenant. Il suffit de penser que cela est fait pour des raisons de sécurité. Si vous avez tapé correctement votre mot de passe, vous devriez être maintenant attaché au système et prêt à essayer toutes les commandes disponibles. Vous devriez voir apparaître le MOTD ou message du jour suivi de l'invite de commande (un caractère #, $, ou %). Cela indique que vous avez ouvert avec succès une session sous &os;. Consoles multiples Exécuter des commandes &unix; dans une console est bien beau, mais FreeBSD peut exécuter plusieurs programmes à la fois. Avoir une seule console sur laquelle les commandes peuvent être tapées serait un peu du gaspillage quand un système d'exploitation comme FreeBSD peut exécuter des dizaines de programmes en même temps. C'est ici que des “consoles virtuelles” peuvent être vraiment utiles. FreeBSD peut être configuré pour présenter de nombreuses consoles virtuelles. Vous pouvez basculer d'une console virtuelle à une autre en utilisant une combinaison de touches sur votre clavier. Chaque console a son propre canal de sortie, et FreeBSD prend soin de rediriger correctement les entrées au clavier et la sortie vers écran quand vous basculez d'une console virtuelle à la suivante. Des combinaisons de touches spécifiques ont été réservées par FreeBSD pour le basculement entre consoles Une description assez technique et précise de tous les détails de la console FreeBSD et des pilotes de clavier peut être trouvée dans les pages de manuel de &man.syscons.4;, &man.atkbd.4;, &man.vidcontrol.1; et &man.kbdcontrol.1;. Nous ne nous étendrons pas en détails ici, mais le lecteur intéressé peut toujours consulter les pages de manuel pour explication plus détaillée et plus complète sur le fonctionnement des choses. . Vous pouvez utiliser AltF1, AltF2, jusqu'à AltF8 pour basculer vers une console virtuelle différente sous FreeBSD. Quand vous basculez d'une console à une autre, FreeBSD prend soin de sauvegarder et restaurer la sortie d'écran. Il en résulte l'“illusion” d'avoir plusieurs écrans et claviers “virtuels” que vous pouvez utiliser pour taper des commandes pour FreeBSD. Les programmes que vous lancez sur une console virtuelle ne cessent pas de tourner quand cette console n'est plus visible. Ils continuent de s'exécuter quand vous avez basculé vers une console virtuelle différente. Le fichier <filename>/etc/ttys</filename> La configuration par défaut de FreeBSD démarre avec huit consoles virtuelles. Cependant ce n'est pas un paramétrage fixe, et vous pouvez aisément personnaliser votre installation pour démarrer avec plus ou moins de consoles virtuelles. Le nombre et les paramétrages des consoles virtuelles sont configurés dans le fichier /etc/ttys. Vous pouvez utiliser le fichier /etc/ttys pour configurer les consoles virtuelles de FreeBSD. Chaque ligne non-commentée dans ce fichier (les lignes qui ne débutent pas par le caractère #) contient le paramétrage d'un terminal ou d'une console virtuelle. La version par défaut de ce fichier livrée avec FreeBSD configure neuf consoles virtuelles, et en active huit. Ce sont les lignes commençant avec le terme ttyv: # name getty type status comments # ttyv0 "/usr/libexec/getty Pc" cons25 on secure # Virtual terminals ttyv1 "/usr/libexec/getty Pc" cons25 on secure ttyv2 "/usr/libexec/getty Pc" cons25 on secure ttyv3 "/usr/libexec/getty Pc" cons25 on secure ttyv4 "/usr/libexec/getty Pc" cons25 on secure ttyv5 "/usr/libexec/getty Pc" cons25 on secure ttyv6 "/usr/libexec/getty Pc" cons25 on secure ttyv7 "/usr/libexec/getty Pc" cons25 on secure ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure Pour une description détaillée de chaque colonne de ce fichier et toutes les options que vous pouvez utiliser pour configurer les consoles virtuelles, consultez la page de manuel &man.ttys.5;. Console en mode mono-utilisateur Une description détaillée de ce qu'est le mode mono-utilisateur peut être trouvée dans . Il est important de noter qu'il n'y a qu'une console de disponible quand vous exécuter FreeBSD en mode mono-utilisateur. Il n'y a aucune console virtuelle de disponible. Le paramétrage de la console en mode mono-utilisateur peut être également trouvé dans le fichier /etc/ttys. Recherchez la ligne qui commence avec le mot console: # name getty type status comments # # If console is marked "insecure", then init will ask for the root password # when going to single-user mode. console none unknown off secure Comme l'indiquent les commentaires au-dessus de la ligne console, vous pouvez éditer cette ligne et changer secure pour insecure. Si vous faites cela, quand FreeBSD démarrera en mode mono-utilisateur, il demandera le mot de passe de root. Cependant faites attention quand vous modifiez cela pour insecure. Si vous oubliez le mot de passe de root, le démarrage en mode mono-utilisateur sera condamné. Il est encore possible, mais cela pourra être relativement compliqué pour quelqu'un qui n'est pas à l'aise avec le processus de démarrage de FreeBSD et les programmes entrant en jeu. Permissions UNIX FreeBSD, étant un descendant direct de l'&unix; BSD, est basé sur plusieurs concepts clés d'&unix;. Le premier, et le plus prononcé, est le fait que FreeBSD est un système d'exploitation multi-utilisateurs. Le système peut gérer plusieurs utilisateurs travaillant tous simultanément sur des tâches complètement indépendantes. Le système est responsable du partage correct et de la gestion des requêtes pour les périphériques matériels, la mémoire, et le temps CPU de façon équitable entre chaque utilisateur. Puisque le système est capable de supporter des utilisateurs multiples, tout ce que le système gère possède un ensemble de permissions définissant qui peut écrire, lire, et exécuter la ressource. Ces permissions sont stockées sous forme de trois octets divisés en trois parties, une pour le propriétaire du fichier, une pour le groupe auquel appartient le fichier, et une autre pour le reste du monde. Cette représentation numérique fonctionne comme ceci: permissions permissions de fichier Valeur Permission Contenu du répertoire 0 Pas d'accès en lecture, pas d'accès en écriture, pas d'accès en exécution --- 1 Pas d'accès en lecture, pas d'accès en écriture, exécution --x 2 Pas d'accès en lecture, écriture, pas d'accès en exécution -w- 3 Pas d'accès en lecture, écriture, exécution -wx 4 Lecture, pas d'accès en écriture, pas d'accès en exécution r-- 5 Lecture, pas d'accès en écriture, exécution r-x 6 Lecture, écriture, pas d'accès en exécution rw- 7 Lecture, écriture, exécution rwx ls répertoires Vous pouvez utiliser l'option avec la commande &man.ls.1; pour afficher le contenu du répertoire sous forme une longue et détaillée qui inclut une colonne avec des informations sur les permissions d'accès des fichiers pour le propriétaire, le groupe, et le reste du monde. Par exemple un ls -l dans un répertoire quelconque devrait donner: &prompt.user; ls -l total 530 -rw-r--r-- 1 root wheel 512 Sep 5 12:31 myfile -rw-r--r-- 1 root wheel 512 Sep 5 12:31 otherfile -rw-r--r-- 1 root wheel 7680 Sep 5 12:31 email.txt ... Voici comment est divisée la première colonne de l'affichage généré par ls -l: -rw-r--r-- Le premier caractère (le plus à gauche) indique si c'est un fichier normal, un répertoire, ou un périphérique mode caractère, une socket, ou tout autre pseudo-périphérique. Dans ce cas, - indique un fichier normal. Les trois caractères suivants, rw- dans cet exemple, donnent les permissions pour le propriétaire du fichier. Les trois caractères qui suivent, r--, donnent les permissions pour le groupe auquel appartient le fichier. Les trois derniers caractères, r--, donnent les permissions pour le reste du monde. Un tiret signifie que la permission est désactivée. Dans le cas de ce fichier, les permissions sont telles que le propriétaire peut lire et écrire le fichier, le groupe peut lire le fichier, et le reste du monde peut seulement lire le fichier. D'après la table ci-dessus, les permissions pour ce fichier seraient 644, où chaque chiffre représente les trois parties des permissions du fichier. Tout cela est bien beau, mais comment le système contrôle les permissions sur les périphériques? En fait FreeBSD traite la plupart des périphériques sous la forme d'un fichier que les programmes peuvent ouvrir, lire, et écrire des données dessus comme tout autre fichier. Ces périphériques spéciaux sont stockés dans le répertoire /dev. Les répertoires sont aussi traités comme des fichiers. Ils ont des droits en lecture, écriture et exécution. Le bit d'exécution pour un répertoire a une signification légèrement différente que pour les fichiers. Quand un répertoire est marqué exécutable, cela signifie que l'on peut être traversé, i.e. il est possible d'utiliser “cd” (changement de répertoire). Ceci signifie également qu'à l'intérieur du répertoire il est possible d'accéder aux fichiers dont les noms sont connues (en fonction, bien sûr, des permissions sur les fichiers eux-mêmes). En particulier, afin d'obtenir la liste du contenu d'un répertoire, la permission de lecture doit être positionnée sur le répertoire, tandis que pour effacer un fichier dont on connaît le nom, il est nécessaire d'avoir les droits d'écriture et d'exécution sur le répertoire contenant le fichier. Il y a d'autres types de permissions, mais elles sont principalement employées dans des circonstances spéciales comme les binaires “setuid” et les répertoires “sticky”. Si vous désirez plus d'information sur les permissions de fichier et comment les positionner, soyez sûr de consulter la page de manuel &man.chmod.1;. Tom Rhodes Contribution de Permissions symboliques permissionssymboliques Les permissions symboliques, parfois désignées sous le nom d'expressions symboliques, utilisent des caractères à la place de valeur en octal pour assigner les permissions aux fichiers et répertoires. Les expressions symboliques emploient la syntaxe: (qui) (action) (permissions), avec les valeurs possibles suivantes: Option Lettre Représente (qui) u Utilisateur (qui) g Groupe (qui) o Autre (qui) a Tous (le monde entier) (action) + Ajouter des permissions (action) - Retirer des permissions (action) = Fixe les permissions de façon explicite (permissions) r Lecture (permissions) w Ecriture (permissions) x Exécution (permissions) t bit collant (sticky) (permissions) s Exécuter avec l'ID utilisateur (UID) ou groupe (GID) Ces valeurs sont utilisées avec la commande &man.chmod.1; comme précédemment mais avec des lettres. Par exemple, vous pourriez utiliser la commande suivante pour refuser l'accès au fichier FICHIER à d'autres utilisateurs: &prompt.user; chmod go= FICHIER Une liste séparé par des virgules peut être fournie quand plus d'un changement doit être effectué sur un fichier. Par exemple la commande suivante retirera - les permissions d'écriture aux groupes et au “reste du + les permissions d'écriture au groupe et au “reste du monde” sur le fichier FICHIER, puis ajoutera la permission d'exécution pour tout le monde: &prompt.user; chmod go-w,a+x FICHIER Tom Rhodes Contribution de Indicateurs des fichiers sous &os; En addition des permissions sur les fichiers précédement présentées, &os; supporte l'utilisation d'indicateurs de fichiers. Ces indicateurs rajoutent un niveau de contrôle et de sécurité sur les fichiers, mais ne concernent pas les répertoires. Ces indicateurs ajoutent donc un niveau de contrôle supplémentaire des fichiers, permettant d'assurer que dans certains cas même le super-utilisateur root ne pourra effacer ou modifier des fichiers. Les indicateurs de fichiers peuvent être modifiés avec l'utilitaire &man.chflags.1;, ce dernier présentant une interface simple. Par exemple, pour activer l'indicateur système de suppression impossible sur le fichier file1, tapez la commande suivante: &prompt.root; chflags sunlink file1 Et pour désactiver l'indicateur de suppression impossible, utilisez la commande précédente avec le préfixe no devant l'option : &prompt.root; chflags nosunlink file1 Pour afficher les indicateurs propres à ce fichier, utilisez la commande &man.ls.1; avec l'option : &prompt.root; ls -lo file1 La sortie de la commande devrait ressembler à: -rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1 Plusieurs indicateurs ne peuvent être positionnés ou retirés que par le super-utilisateur root. Dans les autres cas, le propriétaire du fichier peut activer ces indicateurs. Pour plus d'information, la lecture des pages de manuel &man.chflags.1; et &man.chflags.2; est recommandée à tout administrateur. Organisation de l'arborescence des répertoires hiérarchie des répertoires L'organisation de l'arborescence des répertoires de FreeBSD est essentielle pour obtenir une compréhension globale du système. Le concept le plus important à saisir est celui du répertoire racine, “/”. Ce répertoire est le premier a être monté au démarrage et il contient le système de base nécessaire pour préparer le système d'exploitation au fonctionnement multi-utilisateurs. Le répertoire racine contient également les - points de montage pour tous les autres systèmes de fichiers que - vous pourriez vouloir monter. + points de montage pour les autres systèmes de fichiers qui + sont montés lors du passage en mode multi-utilisateurs. Un point de montage est un répertoire où peuvent être greffés des systèmes de fichiers supplémentaires au système de - fichiers racine. Cela est décrit plus en détails dans la . Les points de montage standards incluent + fichiers parent (en général le système de fichiers racine). Cela est décrit plus en détails dans la . Les points de montage standards incluent /usr, /var, /tmp, /mnt, et /cdrom. Ces répertoires sont en général référencés par des entrées dans le fichier /etc/fstab. /etc/fstab est une table des divers systèmes de fichiers et de leur point de montage utilisé comme référence par le système. La plupart des systèmes de fichiers présents dans /etc/fstab sont montés automatiquement au moment du démarrage par la procédure &man.rc.8; à moins que l'option soit présente. Plus de détails peuvent être trouvés dans la . Une description complète de l'arborescence du système de fichiers est disponible dans la page de manuel &man.hier.7;. Pour l'instant, une brève vue d'ensemble des répertoires les plus courants suffira. Répertoire Description / Répertoire racine du système de fichiers. /bin/ Programmes utilisateur fondamentaux aux deux modes de fonctionnement mono et multi-utilisateurs. /boot/ Programmes et fichiers de configuration utilisés durant le processus de démarrage du système. /boot/defaults/ Fichiers de configuration par défaut du processus de démarrage; voir la page de manuel &man.loader.conf.5;. /dev/ Fichiers spéciaux de périphérique; voir la page de manuel &man.intro.4;. /etc/ Procédures et fichiers de configuration du système. /etc/defaults/ Fichiers de configuration du système par défaut; voir la page de manuel &man.rc.8;. /etc/mail/ Fichiers de configuration pour les agents de transport du courrier électronique comme &man.sendmail.8;. /etc/namedb/ Fichiers de configuration de named; voir la page de manuel &man.named.8;. /etc/periodic/ Procédures qui sont exécutées de façon quotidienne, hebdomadaire et mensuelle par l'intermédiaire de &man.cron.8;; voir la page de manuel &man.periodic.8;. /etc/ppp/ Fichiers de configuration de ppp; voir la page de manuel &man.ppp.8;. /mnt/ Répertoire vide habituellement utilisé par les administrateurs système comme un point de montage temporaire. /proc/ Le système de fichiers pour les processus; voir les pages de manuel &man.procfs.5;, &man.mount.procfs.8;. /rescue/ Programmes liés en statique pour les réparations d'urgence; consultez la page de manuel &man.rescue.8;. /root/ Répertoire personnel du compte root. /sbin/ Programmes systèmes et utilitaires systèmes fondamentaux aux environnements mono et multi-utilisateurs. /tmp/ Fichiers temporaires. Le contenu de /tmp n'est en général PAS préservé par un redémarrage du système. Un système de fichiers en mémoire est souvent monté sur /tmp. Cela peut être automatisé en utilisant les variables &man.rc.conf.5; relatives au système tmpmfs (ou à l'aide d'une entrée dans le fichier /etc/fstab; consultez la page de manuel &man.mdmfs.8;). /usr/ La majorité des utilitaires et applications utilisateur. /usr/bin/ Utilitaires généraux, outils de programmation, et applications. /usr/include/ Fichiers d'en-tête C standard. /usr/lib/ Ensemble des bibliothèques. /usr/libdata/ Divers fichiers de données de service. /usr/libexec/ Utilitaires et daemons système (exécutés par d'autres programmes). /usr/local/ Exécutables, bibliothèques, etc... Egalement utilisé comme destination de défaut pour les logiciels portés pour FreeBSD. Dans /usr/local, l'organisation générale décrite par la page de manuel &man.hier.7; pour /usr devrait être utilisée. Exceptions faites du répertoire man qui est directement sous /usr/local plutôt que sous /usr/local/share, et la documentation des logiciels portés est dans share/doc/port. /usr/obj/ Arborescence cible spécifique à une architecture produite par la compilation de l'arborescence /usr/src. /usr/ports Le catalogue des logiciels portés (optionnel). /usr/sbin/ Utilitaires et daemons système (exécutés par les utilisateurs). /usr/share/ Fichiers indépendants de l'architecture. /usr/src/ Fichiers source FreeBSD et/ou locaux. /usr/X11R6/ Exécutables, bibliothèques etc... de la distribution d'X11R6 (optionnel). /var/ Fichiers de traces, fichiers temporaires, et fichiers tampons. Un système de fichiers en mémoire est parfois monté sur /var. Cela peut être automatisé en utilisant les variables &man.rc.conf.5; relatives au système varmfs (ou à l'aide d'une entrée dans le fichier /etc/fstab; consultez la page de manuel &man.mdmfs.8;). /var/log/ Divers fichiers de trace du système. /var/mail/ Boîtes aux lettres des utilisateurs. /var/spool/ Divers répertoires tampons des systèmes de courrier électronique et d'impression. /var/tmp/ Fichiers temporaires. Ces fichiers sont généralement conservés lors d'un redémarrage du système, à moins que /var ne soit un système de fichiers en mémoire. /var/yp Tables NIS. Organisation des disques Le plus petit élément qu'utilise FreeBSD pour retrouver des fichiers est le nom de fichier. Les noms de fichiers sont sensibles à la casse des caractères, ce qui signifie que readme.txt et README.TXT sont deux fichiers séparés. FreeBSD n'utilise pas l'extension (.txt) d'un fichier pour déterminer si ce fichier est un programme, un document ou une autre forme de donnée. Les fichiers sont stockés dans des répertoires. Un répertoire peut ne contenir aucun fichier, ou en contenir plusieurs centaines. Un répertoire peut également contenir d'autre répertoires, vous permettant de construire une hiérarchie de répertoires à l'intérieur d'un autre. Cela rend plus simple l'organisation de vos données. Les fichiers et les répertoires sont référencés en donnant le nom du fichier ou du répertoire, suivi par un slash, /, suivi par tout nom de répertoire nécessaire. Si vous avez un répertoire foo, qui contient le répertoire bar, qui contient le fichier readme.txt, alors le nom complet, ou chemin (“path”) vers le fichier est foo/bar/readme.txt. Les répertoires et les fichiers sont stockés sur un système de fichiers. Chaque système de fichiers contient à son niveau le plus haut un répertoire appelé répertoire racine pour ce système de fichiers. Ce répertoire racine peut alors contenir les autres répertoires. Jusqu'ici cela est probablement semblable à n'importe quel autre système d'exploitation que vous avez pu avoir utilisé. Il y a quelques différences: par exemple, &ms-dos; utilise \ pour séparer les noms de fichier et de répertoire, alors que MacOS utilise :. FreeBSD n'utilise pas de lettre pour les lecteurs, ou d'autres noms de disque dans le chemin. Vous n'écrirez pas c:/foo/bar/readme.txt sous FreeBSD. Au lieu de cela, un système de fichiers est désigné comme système de fichiers racine. La racine du système de fichiers racine est représentée par un /. Tous les autres systèmes de fichiers sont alors montés sous le système de fichiers racine. Peu importe le nombre de disques que vous avez sur votre système FreeBSD, chaque répertoire apparaît comme faisant partie du même disque. Supposez que vous avez trois systèmes de fichiers, appelés A, B, et C. Chaque système de fichiers possède un répertoire racine, qui contient deux autres répertoires, nommés A1, A2 (et respectivement B1, B2 et C1, C2). Appelons A le système de fichiers racine. Si vous utilisiez la commande ls pour visualiser le contenu de ce répertoire, vous verriez deux sous-répertoires, A1 et A2. L'arborescence des répertoires ressemblera à ceci: / | +--- A1 | `--- A2 Un système de fichiers doit être monté dans un répertoire d'un autre système de fichiers. Supposez maintenant que vous montez le système de fichiers B sur le répertoire A1. Le répertoire racine de B remplace A1, et les répertoires de B par conséquent apparaissent: / | +--- A1 | | | +--- B1 | | | `--- B2 | `--- A2 Tout fichier de B1 ou B2 peut être atteint avec le chemin /A1/B1 ou /A1/B2 si nécessaire. Tous les fichiers qui étaient dans A1 ont été temporairement cachés. Ils réapparaîtront si B est démonté de A. Si B a été monté sur A2 alors le diagramme sera semblable à celui-ci: / | +--- A1 | `--- A2 | +--- B1 | `--- B2 et les chemins seront /A2/B1 et respectivement /A2/B2. Les systèmes de fichiers peuvent être montés au sommet d'un autre. En continuant l'exemple précédent, le système de fichiers C pourrait être monté au sommet du répertoire B1 dans le système de fichiers B, menant à cet arrangement: / | +--- A1 | `--- A2 | +--- B1 | | | +--- C1 | | | `--- C2 | `--- B2 C pourrait être monté directement sur le système de fichiers A, sous le répertoire A1: / | +--- A1 | | | +--- C1 | | | `--- C2 | `--- A2 | +--- B1 | `--- B2 Si vous êtes familier de &ms-dos;, ceci est semblable, bien que pas identique, à la commande join. Ce n'est normalement pas quelque chose qui doit vous préoccuper. Généralement vous créez des systèmes de fichiers à l'installation de FreeBSD et décidez où les monter, et ensuite ne les modifiez jamais à moins que vous ajoutiez un nouveau disque. Il est tout à fait possible de n'avoir qu'un seul grand système de fichiers racine, et de ne pas en créer d'autres. Il y a quelques inconvénients à cette approche, et un avantage. Avantages des systèmes de fichiers multiples Les différents systèmes de fichiers peuvent avoir différentes options de montage. Par exemple, avec une planification soigneuse, le système de fichiers racine peut être monté en lecture seule, rendant impossible tout effacement par inadvertance ou édition de fichier critique. La séparation des systèmes de fichiers inscriptibles par l'utilisateur permet leur montage en mode nosuid; cette option empêche les bits suid/guid des exécutables stockés sur ce système de fichiers de prendre effet, améliorant peut-être la sécurité. FreeBSD optimise automatiquement la disposition des fichiers sur un système de fichiers, selon la façon dont est utilisé le système de fichiers. Aussi un système de fichiers contenant beaucoup de petits fichiers qui sont écrits fréquemment aura une optimisation différente à celle d'un système contenant moins, ou de plus gros fichiers. En ayant un seul grand système de fichiers cette optimisation est perdue. Les systèmes de fichiers de FreeBSD sont très robustes même en cas de coupure secteur. Cependant une coupure secteur à un moment critique pourrait toujours endommager la structure d'un système de fichiers. En répartissant vos données sur des systèmes de fichiers multiples il est plus probable que le système redémarre, vous facilitant la restauration des données à partir de sauvegardes si nécessaire. Avantage d'un système de fichiers unique Les systèmes de fichiers ont une taille fixe. Si vous créez un système de fichiers à l'installation de FreeBSD et que vous lui donnez une taille spécifique, vous pouvez plus tard vous apercevoir que vous avez besoin d'une partition plus grande. Cela n'est pas facilement faisable sans sauvegardes, recréation du système de fichiers, et enfin restauration des données. &os; dispose d'une commande, &man.growfs.8;, qui permettra d'augmenter la taille d'un système de fichiers au vol, supprimant cette limitation. Les systèmes de fichiers sont contenus dans des partitions. Cela n'a pas la même signification que l'utilisation commune du terme partition (par exemple une partition &ms-dos;), en raison de l'héritage Unix de FreeBSD. Chaque partition est identifiée par une lettre de a à h. Chaque partition ne contient qu'un seul système de fichiers, cela signifie que les systèmes de fichiers sont souvent décrits soit par leur point de montage typique dans la hiérarchie du système de fichiers, soit par la lettre de la partition qui les contient. FreeBSD utilise aussi de l'espace disque pour l'espace de pagination (“swap”). L'espace de pagination fournit à FreeBSD la mémoire virtuelle. Cela permet à votre ordinateur de se comporter comme s'il disposait de beaucoup plus de mémoire qu'il n'en a réellement. Quand FreeBSD vient à manquer de mémoire il déplace certaines données qui ne sont pas actuellement utilisées vers l'espace de pagination, et les rapatrie (en déplaçant quelque chose d'autre) quand il en a besoin. Quelques partitions sont liées à certaines conventions. Partition Convention a Contient normalement le système de fichiers racine b Contient normalement l'espace de pagination c Normalement de la même taille que la tranche (“slice”) contenant les partitions. Cela permet aux utilitaires devant agir sur l'intégralité de la tranche (par exemple un analyseur de blocs défectueux) de travailler sur la partition c. Vous ne devriez normalement pas créer de système de fichiers sur cette partition. d La partition d a eu dans le passé une signification particulière, ce n'est plus le cas aujourd'hui, et d pourra être utilisée comme une partition classique. Chaque partition contenant un système de fichiers est stockée dans ce que FreeBSD appelle une tranche (“slice”). Tranche - “slice” est le terme FreeBSD pour ce qui est communément appelé partition, et encore une fois, cela en raison des fondations Unix de FreeBSD. Les tranches sont numérotées, en partant de 1, jusqu'à 4. slices tranches partitions mode dédié Les numéros de tranche suivent le nom du périphérique, avec le préfixe s, et commencent à 1. Donc “da0s1” est la première tranche sur le premier disque SCSI. Il ne peut y avoir que quatre tranches physiques sur un disque, mais vous pouvez avoir des tranches logiques dans des tranches physiques d'un type précis. Ces tranches étendues sont numérotées à partir de 5, donc “ad0s5” est la première tranche étendue sur le premier disque IDE. Elles sont utilisées par des systèmes de fichiers qui s'attendent à occuper une tranche entière. Les tranches, les disques “en mode dédié”, et les autres disques contiennent des partitions, qui sont représentées par des lettres allant de a à h. Cette lettre est ajoutée au nom de périphérique, aussi “da0a” est la partition a sur le premier disque da, qui est en “en mode dédié”. “ad1s3e” est la cinquième partition de la troisième tranche du second disque IDE. En conclusion chaque disque présent sur le système est identifié. Le nom d'un disque commence par un code qui indique le type de disque, suivi d'un nombre, indiquant de quel disque il s'agit. Contrairement aux tranches, la numérotation des disques commence à 0. Les codes communs que vous risquez de rencontrer sont énumérés dans le . Quand vous faites référence à une partition, FreeBSD exige que vous nommiez également la tranche et le disque contenant la partition, et quand vous faites référence à une tranche vous devrez également faire référence au nom du disque. - Faites cela en écrivant le nom du disque, + On fait donc référence à une partition en écrivant le nom du disque, s, le numéro de la tranche, et enfin la lettre de la partition. Des exemples sont donnés dans l'. L' montre un exemple de l'organisation d'un disque qui devrait aider à clarifier les choses. Afin d'installer FreeBSD vous devez tout d'abord configurer les tranches sur votre disque, ensuite créer les partitions dans la tranche que vous utiliserez pour FreeBSD, et alors créer un système de fichiers (ou espace de pagination) dans chaque partition, et décider de l'endroit où seront montés les systèmes de fichiers. Codes des périphériques disques Code Signification ad Disque ATAPI (IDE) da Disque SCSI acd CDROM ATAPI (IDE) cd CDROM SCSI fd Lecteur de disquette
Exemples d'appellation de disques, tranches et partitions Nom Signification ad0s1a Première partition (a) sur la première tranche (s1) du premier disque IDE (ad0). da1s2e Cinquième partition (e) sur la seconde tranche (s2) du deuxième disque SCSI (da1). Modèle conceptuel d'un disque Ce diagramme montre comment FreeBSD voit le premier disque IDE attaché au système. Supposons que le disque a une capacité de 4 Go, et contient deux tranches de 2 Go (partitions &ms-dos;). La première tranche contient un disque &ms-dos;, C:, et la seconde tranche contient une installation de FreeBSD. Dans - cet exemple l'installation de FreeBSD a trois partitions, et + cet exemple l'installation de FreeBSD a trois partitions de données, et une partition de pagination. Les trois partitions accueilleront chacune un système de fichiers. La partition a sera utilisée en tant que système de fichiers racine, la partition e pour le contenu du répertoire /var, et f pour l'arborescence du répertoire /usr. .-----------------. --. | | | | DOS / Windows | | : : > Première tranche, ad0s1 : : | | | | :=================: ==: --. | | | Partition a, montée en tant que / | | | > référencée ad0s2a | | | | | :-----------------: ==: | | | | Partition b, utilisée comme swap | | | > référencée ad0s2b | Partition c, | | | | pas de :-----------------: ==: | système de | | | Partition e, utilisée en /var > fichiers | | > référencée ad0s2e | intégralité | | | | de la tranche :-----------------: ==: | FreeBSD ad0s2c | | | | : : | Partition f, utilisée en /usr | : : > référencée ad0s2f | : : | | | | | | | | --' | `-----------------' --'
Monter et démonter des systèmes de fichiers Le système de fichiers peut être vu comme un arbre enraciné sur le répertoire /. /dev, /usr, et les autres répertoires dans le répertoire racine sont des branches, qui peuvent avoir leurs propres branches, comme /usr/local, et ainsi de suite. système de fichiers racine Il y a diverses raisons pour héberger certains de ces répertoires sur des systèmes de fichiers séparés. /var contient les répertoires log/, spool/, et divers types de fichiers temporaires, et en tant que tels, peuvent voir leur taille augmenter de façon importante. Remplir le système de fichiers racine n'est pas une bonne idée, aussi séparer /var de / est souvent favorable. Une autre raison courante de placer certains répertoires sur d'autres systèmes de fichiers est s'ils doivent être hébergés sur des disques physiques séparés, ou sur des disques virtuels séparés, comme les systèmes de fichiers réseau, ou les lecteurs de CDROM. Le fichier <filename>fstab</filename> systèmes de fichiers montés avec fstab Durant le processus de démarrage, les systèmes de fichiers listés dans /etc/fstab sont automatiquement montés (à moins qu'il ne soient listés avec l'option ). Le fichier /etc/fstab contient une liste de lignes au format suivant: device /mount-point fstype options dumpfreq passno device Un nom de périphérique (qui devrait exister), comme expliqué dans la . mount-point Un répertoire (qui devrait exister), sur lequel sera monté le système de fichier. fstype Le type de système de fichiers à indiquer à &man.mount.8;. Le système de fichiers par défaut de FreeBSD est l'ufs. options Soit pour des systèmes de fichiers à lecture-écriture, soit pour des systèmes de fichiers à lecture seule, suivi par toute option qui peut s'avérer nécessaire. Une option courante est pour les systèmes de fichiers qui ne sont normalement pas montés durant la séquence de démarrage. D'autres options sont présentées dans la page de manuel &man.mount.8;. dumpfreq C'est utilisé par &man.dump.8; pour déterminer quels systèmes de fichiers nécessitent une sauvegarde. Si ce champ est absent, une valeur de zéro est supposée. passno Ceci détermine l'ordre dans lequel les systèmes de fichiers devront être vérifiés. Les systèmes de fichiers qui doivent être ignorés devraient avoir leur passno positionné à zéro. Le système de fichiers racine (qui doit être vérifié avant tout le reste) devrait avoir son passno positionné à un, et les options passno des autres systèmes fichiers devraient être positionnées à des valeurs supérieures à un. Si plus d'un système de fichiers ont le même passno alors &man.fsck.8; essaiera de vérifier les systèmes de fichiers en parallèle si c'est possible. Consultez la page de manuel de &man.fstab.5; pour plus d'information sur le format du fichier /etc/fstab et des options qu'il contient. La commande <command>mount</command> systèmes de fichiers montage La commande &man.mount.8; est ce qui est finalement utilisé pour monter des systèmes de fichiers. Dans sa forme la plus simple, vous utilisez: &prompt.root; mount device mountpoint Il y beaucoup d'options, comme mentionné dans la page de manuel &man.mount.8;, mais les plus courantes sont: Options de montage Monte tous les systèmes de fichiers listés dans /etc/fstab. Exception faite de ceux marqués comme “noauto”, ou exclus par le drapeau , ou encore ceux qui sont déjà montés. Tout effectuer à l'exception de l'appel système de montage réel. Cette option est utile conjointement avec le drapeau pour déterminer ce que &man.mount.8; est en train d'essayer de faire. Force le montage d'un système de fichiers non propre (dangereux), ou force la révocation de l'accès en écriture quand on modifie l'état de montage d'un système de fichiers de l'accès lecture-écriture à l'accès lecture seule. Monte le système de fichiers en lecture seule. C'est identique à l'utilisation de l'argument ( pour les versions de &os; antérieures à la 5.2) avec l'option . fstype Monte le système de fichiers comme étant du type de système donné, ou monte seulement les systèmes de fichiers du type donné, si l'option est précisée. “ufs” est le type de système de fichiers par défaut. Mets à jour les options de montage sur le système de fichiers. Rends la commande prolixe. Monte le système de fichiers en lecture-écriture. L'option accepte une liste d'options séparées par des virgules, dont les suivantes: nodev Ne pas prendre en compte les périphériques spéciaux sur le système de fichiers. C'est une option de sécurité utile. noexec Ne pas autoriser l'exécution de binaires sur ce système de fichiers. C'est également une option de sécurité utile. nosuid Ne pas prendre en compte les indicateurs setuid ou setgid sur le système de fichiers. C'est également une option de sécurité utile. La commande <command>umount</command> systèmes de fichiers démontage La commande &man.umount.8; prend, comme paramètre, un des points de montage, un nom de périphérique, ou l'option ou . Toutes les formes acceptent pour forcer de démontage, et pour le mode prolixe. Soyez averti que l'utilisation de n'est généralement pas une bonne idée. Démonter de force des systèmes de fichiers pourrait faire planter l'ordinateur ou endommager les données sur le système de fichiers. Les options et sont utilisées pour démonter tous les systèmes de fichiers actuellement montés, éventuellement modifié par les types de systèmes de fichiers listés après l'option . Cependant l'option , n'essaye pas de démonter le système de fichiers racine. Processus FreeBSD est un système d'exploitation multi-tâches. Cela veut dire qu'il semble qu'il y ait plus d'un programme fonctionnant à la fois. Tout programme fonctionnant à un moment donné est appelé un processus. Chaque commande que vous utiliserez lancera au moins un nouveau processus, et il y a de nombreux processus système qui tournent constamment, maintenant ainsi les fonctionnalités du système. Chaque processus est identifié de façon unique par un nombre appelé process ID (identifiant de processus), ou PID, et, comme pour les fichiers, chaque processus possède également un propriétaire et un groupe. Les informations sur le propriétaire et le groupe sont utilisées pour déterminer quels fichiers et périphériques sont accessibles au processus, en utilisant le principe de permissions de fichiers abordé plus tôt. La plupart des processus ont également un processus parent. Le processus parent est le processus qui les a lancés. Par exemple, si vous tapez des commandes sous un interpréteur de commandes, alors l'interpréteur de commandes est un processus, et toute commande que vous lancez est aussi un processus. Chaque processus que vous lancez de cette manière aura votre interpréteur de commandes comme processus parent. Une exception à cela est le processus spécial appelé &man.init.8;. init est toujours le premier processus, donc son PID est toujours 1. init est lancé automatiquement par le noyau au démarrage de FreeBSD. Deux commandes sont particulièrement utiles pour voir les processus sur le système, &man.ps.1; et &man.top.1;. La commande ps est utilisée pour afficher une liste statique des processus tournant actuellement, et peut donner leur PID, la quantité de mémoire qu'ils utilisent, la ligne de commande par l'intermédiaire de laquelle ils ont été lancés, et ainsi de suite. La commande &man.top.1; affiche tous les processus, et actualise l'affichage régulièrement, de sorte que vous puissiez voir de façon intéractive ce que fait l'ordinateur. Par défaut, &man.ps.1; n'affiche que les commandes que vous faites tourner et dont vous êtes le propriétaire. Par exemple: &prompt.user; ps PID TT STAT TIME COMMAND 298 p0 Ss 0:01.10 tcsh 7078 p0 S 2:40.88 xemacs mdoc.xsl (xemacs-21.1.14) 37393 p0 I 0:03.11 xemacs freebsd.dsl (xemacs-21.1.14) 48630 p0 S 2:50.89 /usr/local/lib/netscape-linux/navigator-linux-4.77.bi 48730 p0 IW 0:00.00 (dns helper) (navigator-linux-) 72210 p0 R+ 0:00.00 ps 390 p1 Is 0:01.14 tcsh 7059 p2 Is+ 1:36.18 /usr/local/bin/mutt -y 6688 p3 IWs 0:00.00 tcsh 10735 p4 IWs 0:00.00 tcsh 20256 p5 IWs 0:00.00 tcsh 262 v0 IWs 0:00.00 -tcsh (tcsh) 270 v0 IW+ 0:00.00 /bin/sh /usr/X11R6/bin/startx -- -bpp 16 280 v0 IW+ 0:00.00 xinit /home/nik/.xinitrc -- -bpp 16 284 v0 IW 0:00.00 /bin/sh /home/nik/.xinitrc 285 v0 S 0:38.45 /usr/X11R6/bin/sawfish Comme vous pouvez le voir dans cet exemple, la sortie de &man.ps.1; est organisée en un certain nombre de colonnes. PID est l'identifiant de processus discuté plus tôt. Les PIDs sont assignés à partir de 1, et vont jusqu'à 99999, - et puis repassent à 1 quand le maximum est atteint. + et puis repassent à 1 quand le maximum est atteint + (un PID n'est pas réassigné s'il est + déjà utilisé). La colonne TT donne le terminal sur lequel tourne le programme, et peut être pour le moment ignoré sans risque. STAT affiche l'état du programme, peut être également ignoré. TIME est la durée d'utilisation du CPU—ce n'est généralement pas le temps écoulé depuis que vous avez lancé le programme, comme la plupart des programmes passent beaucoup de temps à attendre que certaines choses se produisent avant qu'ils n'aient besoin de dépenser du temps CPU. Et enfin, COMMAND est la ligne de commande qui a été utilisée lors du lancement du programme. &man.ps.1; supporte un certain nombre d'options différentes pour modifier les informations affichées. Un des ensembles d'options les plus utiles est auxww. affiche l'information au sujet de tous les processus tournant, et pas seulement les vôtres. donne le nom de l'utilisateur du propriétaire du processus, ainsi que l'utilisation de la mémoire. affiche des informations sur les processus “daemon”, et oblige &man.ps.1; à - afficher la ligne de commande complète, plutôt que de la + afficher la ligne de commande complète pour chaque processus, plutôt que de la tronquer quand elle est trop longue pour tenir à l'écran. La sortie de &man.top.1; est semblable. Un extrait de session ressemble à ceci: &prompt.user; top last pid: 72257; load averages: 0.13, 0.09, 0.03 up 0+13:38:33 22:39:10 47 processes: 1 running, 46 sleeping CPU states: 12.6% user, 0.0% nice, 7.8% system, 0.0% interrupt, 79.7% idle Mem: 36M Active, 5256K Inact, 13M Wired, 6312K Cache, 15M Buf, 408K Free Swap: 256M Total, 38M Used, 217M Free, 15% Inuse PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 72257 nik 28 0 1960K 1044K RUN 0:00 14.86% 1.42% top 7078 nik 2 0 15280K 10960K select 2:54 0.88% 0.88% xemacs-21.1.14 281 nik 2 0 18636K 7112K select 5:36 0.73% 0.73% XF86_SVGA 296 nik 2 0 3240K 1644K select 0:12 0.05% 0.05% xterm 48630 nik 2 0 29816K 9148K select 3:18 0.00% 0.00% navigator-linu 175 root 2 0 924K 252K select 1:41 0.00% 0.00% syslogd 7059 nik 2 0 7260K 4644K poll 1:38 0.00% 0.00% mutt ... La sortie est divisée en deux sections. L'entête (les cinq premières lignes) donne le PID du dernier processus lancé, la charge système moyenne (qui est une mesure de l'occupation du système), la durée de fonctionnement du système (le temps écoulé depuis le dernier redémarrage), et l'heure actuelle. Les autres éléments de l'entête concernent le nombre de processus en fonctionnement (47 dans notre cas), combien d'espace mémoire et d'espace de pagination sont occupés, et combien de temps le système passe dans les différents états du CPU. En dessous il y a une série de colonnes contenant des informations semblables à celles données par &man.ps.1;. Comme précédemment vous pouvez lire le PID, le nom d'utilisateur, la quantité de temps CPU consommée, et la commande qui a été lancée. &man.top.1; vous affiche par défaut la quantité d'espace mémoire utilisée par chaque processus. Cela est divisé en deux colonnes, une pour la quantité totale, et une autre pour la quantité résidente—la quantité totale représente l'espace mémoire dont a eu besoin l'application, et la quantité résidente représente l'espace qui est en fait utilisé actuellement. Dans cet exemple vous pouvez voir que &netscape; a exigé presque 30 Mo de RAM, mais utilise actuellement seulement 9Mo. &man.top.1; actualise l'affichage toutes les deux secondes; cela peut être modifié avec l'option . Daemons, signaux, et comment tuer un processus Quand vous utilisez un éditeur il est facile de le contrôler, de lui dire de charger des fichiers, et ainsi de suite. Vous pouvez faire cela parce que l'éditeur fournit les possibilités de le faire, et parce qu'un éditeur est attaché à un terminal. Certains programmes ne sont pas conçus pour fonctionner avec un dialogue constant avec l'utilisateur, et donc ils se déconnectent du terminal à la première occasion. Par exemple, un serveur web passe son temps à répondre aux requêtes web, il n'attend normalement pas d'entrée de votre part. Les programmes qui transportent le courrier électronique de site en site sont un autre exemple de cette classe d'application. Nous appelons ces programmes des daemons (démons). Les “daemons” étaient des personnages de la mythologie - Grec; ni bon ni mauvais, c'étaient de petits esprits serviteurs + Grecque: ni bon ni mauvais, c'étaient de petits esprits serviteurs qui, généralement, ont été à l'origine - de choses utiles à l'humanité. - Un peu comme les serveurs web ou de courrier d'aujourd'hui nous + de choses utiles à l'humanité, + un peu comme les serveurs web ou de messagerie d'aujourd'hui nous sont utiles. C'est pourquoi la mascotte BSD a été, pendant longtemps, un démon à l'apparence joyeuse portant des chaussures de tennis et une fourche. Il existe une convention pour nommer les programmes qui fonctionnent normalement en tant que daemons qui est d'utiliser une terminaison en “d”. BIND est le “Berkeley Internet Name - Daemon” (et le programme réel qui est exécuté - s'appelle named), le programme + Domain”, mais le programme réel qui est exécuté + s'appelle named); le programme correspondant au serveur web Apache est - appelé httpd, le daemon de gestion de la file + appelé httpd; le daemon de gestion de la file d'attente de l'imprimante est lpd, et ainsi de suite. C'est une convention, mais pas une obligation pure et simple; par exemple le daemon principal de gestion du courrier électronique pour l'application Sendmail est appelé sendmail, et non pas maild, comme vous pourriez l'imaginer. Parfois vous devrez communiquer avec un processus daemon. - Ces communications sont appelées signaux, et - vous pouvez communiquez avec un daemon (ou avec tout processus en - fonctionnement) en lui envoyant un signal. Il existe un certain + Une manière de procéder est de lui (ou à tout processus en cours + d'exécution) envoyer ce que l'on appelle un + signal. Il existe un certain nombre de signaux différents que vous pouvez envoyer—certains d'entre eux ont une signification précise, d'autres sont interprétés par l'application, et la documentation de l'application vous indiquera comment l'application interprète ces signaux. Vous ne pouvez envoyer de signaux qu'aux processus dont vous êtes le propriétaire. Si vous envoyez un signal à un processus appartenant à quelqu'un d'autre avec &man.kill.1; - ou &man.kill.2; vous obtiendrez un refus de permission. Il existe + ou &man.kill.2;, vous obtiendrez un refus de permission. Il existe une exception à cela: l'utilisateur root, qui peut envoyer des signaux aux processus de chacun. Dans certain cas FreeBSD enverra également aux applications des signaux. Si une application est mal écrite, et tente d'accéder à une partie de mémoire à laquelle elle n'est pas supposée avoir accès, FreeBSD envoie au processus le signal de violation de segmentation (SIGSEGV). Si une application a utilisé l'appel système &man.alarm.3; pour être avertie dès qu'une période de temps précise est écoulée alors lui sera envoyé le signal d'alarme (SIGALRM), et ainsi de suite. Deux signaux peuvent être utilisés pour arrêter un processus, SIGTERM et SIGKILL. SIGTERM est la manière polie de tuer un processus; le processus peut attraper le signal, réaliser que vous désirez qu'il se termine, fermer les fichiers de trace qu'il a peut-être ouvert, et généralement finir ce qu'il était en train de faire juste avant la demande d'arrêt. Dans certains cas un processus peut ignorer un SIGTERM s'il est au milieu d'une tâche qui ne peut être interrompue. SIGKILL ne peut être ignoré par un processus. C'est le signal “Je me fiche de ce que vous faites, arrêtez immédiatement”. Si vous envoyez un SIGKILL à un processus alors FreeBSD stoppera le processus Ce n'est pas tout à fait vrai—il y a quelques cas où les choses ne peuvent être interrompues. Par exemple, si le processus est en train d'essayer de lire un fichier qui est sur un autre ordinateur sur le réseau, et que l'autre ordinateur n'est plus accessible pour quelque raison (a été éteint, ou le réseau a un problème), alors le processus est dit “non interruptible”. Par la suite le processus entrera en pause, typiquement après deux minutes. Dès que cette pause sera effective le processus sera tué. . Les autres signaux que vous pourriez avoir envie d'utiliser sont SIGHUP, SIGUSR1, et SIGUSR2. Ce sont des signaux d'usage général, et différentes applications se comporteront différemment quand ils sont envoyés. Supposez que vous avez modifié le fichier de configuration de votre serveur web—vous voudriez dire à votre serveur web de relire son fichier de configuration. Vous pourriez arrêter et relancer httpd, mais il en résulterait une brève période d'indisponibilité de votre serveur web, ce qui peut être indésirable. La plupart des daemons sont écrits pour répondre au signal SIGHUP en relisant leur fichier de configuration. Donc au lieu de tuer et relancer httpd vous lui enverriez le signal SIGHUP. Parce qu'il n'y a pas de manière standard de répondre à ces signaux, différents daemons auront différents comportements, soyez sûr de ce que vous faites et lisez la documentation du daemon en question. Les signaux sont envoyés en utilisant la commande &man.kill.1;, comme cet exemple le montre: Envoyer un signal à un processus Cet exemple montre comment envoyer un signal à &man.inetd.8;. Le fichier de configuration d'inetd est /etc/inetd.conf, et inetd relira ce fichier de configuration quand un signal SIGHUP est envoyé. Trouvez l'identifiant du processus (PID) auquel vous voulez envoyer le signal. Faites-le en employant &man.ps.1; et &man.grep.1;. La commande &man.grep.1; est utilisée pour rechercher dans le résultat la chaîne de caractères que vous spécifiez. Cette commande est lancée en tant qu'utilisateur normal, et &man.inetd.8; est lancé en tant que root, donc les options doivent être passées à &man.ps.1;. &prompt.user; ps -ax | grep inetd 198 ?? IWs 0:00.00 inetd -wW Donc le PID d'&man.inetd.8; est 198. Dans certains cas la commande grep inetd pourrait aussi apparaître dans le résultat. C'est à cause de la façon dont &man.ps.1; recherche la liste des processus en fonctionnement. Utilisez &man.kill.1; pour envoyer le signal. Etant donné qu'&man.inetd.8; tourne sous les droits de l'utilisateur root vous devez utilisez &man.su.1; pour devenir, en premier lieu, root. &prompt.user; su Password: &prompt.root; /bin/kill -s HUP 198 Comme la plupart des commandes &unix;, &man.kill.1; n'affichera rien si la commande est couronnée de succès. Si vous envoyez un signal à un processus dont vous n'êtes pas le propriétaire alors vous verrez kill: PID: Operation not permitted. Si vous avez fait une erreur dans le PID, vous enverrez le signal soit à un mauvais processus, ce qui peut être mauvais, soit, si vous êtes chanceux, vous enverrez le signal à un PID qui n'est pas actuellement utilisé, et vous verrez kill: PID: No such process. Pourquoi utiliser <command>/bin/kill</command>? De nombreux interpréteurs de commandes fournissent la commande kill comme commande interne; c'est à dire, que l'interpréteur de commandes enverra directement le signal, plutôt que de lancer /bin/kill. Cela peut être utile, cependant les différents interpréteurs ont une syntaxe différente pour spécifier le nom du signal à envoyer. Plutôt que de tenter de les apprendre toutes, il peut être plus simple de juste employer directement la commande /bin/kill .... Envoyer d'autres signaux est très semblable, substituez juste TERM ou KILL dans la ligne de commande si nécessaire. Tuer au hasard des processus sur le système peut être une mauvaise idée. En particulier, &man.init.8;, processus à l'identifiant 1, qui est très particulier. Lancer la commande /bin/kill -s KILL 1 est une manière rapide d'arrêter votre système. Vérifiez toujours à deux fois les arguments que vous utilisez avec &man.kill.1; avant d'appuyer sur Entrée. Interpréteurs de commandes - “Shells” interpréteurs de commandes ligne de commande Sous FreeBSD, beaucoup du travail quotidien est effectué sous une interface en ligne de commande appelée interpréteur de commandes ou “shell”. Le rôle principal d'un interpréteur de commandes est de prendre les commandes sur le canal d'entrée et de les exécuter. Beaucoup d'interpréteurs de commandes ont également des fonctions intégrées pour aider dans les tâches quotidiennes comme la gestion de fichiers, le mécanisme de remplacement et d'expansion des jokers (“file globbing”), l'édition de la ligne de commande, les macros commandes, et les variables d'environnement. FreeBSD est fournit avec un ensemble d'interpréteurs de commandes, comme sh, l'interpréteur de commandes Bourne, et tcsh, l'interpréteur de commandes C-shell amélioré. Beaucoup d'autres interpréteurs de commandes sont disponibles dans le catalogue des logiciels portés, comme zsh et bash. Quel interpréteur de commandes utilisez-vous? C'est vraiment une question de goût. Si vous programmez en C vous pourriez vous sentir plus à l'aise avec un interpréteur de commandes proche du C comme tcsh. Si vous venez du monde Linux ou que vous êtes nouveau à l'interface en ligne de commande d'&unix; vous pourriez essayer bash. L'idée principale est que chaque interpréteur de commandes à des caractéristiques uniques qui peuvent ou ne peuvent pas fonctionner avec votre environnement de travail préféré, et que vous avez vraiment le choix de l'interpréteur de commandes à utiliser. Une des caractéristiques communes des interpréteurs de commandes est de pouvoir compléter les noms de fichiers (“filename completion”). En tapant les premières lettres d'une commande ou d'un fichier, vous pouvez habituellement faire compléter automatiquement par l'interpréteur de commandes le reste de la commande ou du nom du fichier en appuyant sur la touche Tab du clavier. Voici un exemple. Supposez que vous avez deux fichiers appelés respectivement foobar et foo.bar. Vous voulez effacer foo.bar. Donc ce que vous devriez taper sur le clavier est: rm fo[Tab].[Tab]. L'interpréteur de commandes devrait afficher rm foo[BEEP].bar. Le [BEEP] est la sonnerie de la console, c'est l'interpréteur de commande indiquant qu'il n'est pas en mesure de compléter totalement le nom du fichier parce qu'il y a plus d'une possibilité. foobar et foo.bar commencent tous les deux par fo, mais il fut capable de compléter jusqu'à foo. Si vous tapez ., puis appuyez à nouveau sur Tab, l'interpréteur de commandes devrait pouvoir compléter le reste du nom du fichier pour vous. variables d'environnement Une autre caractéristique de l'interpréteur de commandes est l'utilisation de variables d'environnement. Les variables - d'environnement sont une paire variable-valeur stockées dans + d'environnement sont une paire variable/valeur stockées dans l'espace mémoire d'environnement de l'interpréteur de commandes. Cet espace peut être lu par n'importe quel programme invoqué par l'interpréteur de commandes, et contient ainsi beaucoup d'éléments de configuration des programmes. Voici une liste des variables d'environnement habituelles et ce qu'elles signifient: variables d'environnement Variable Description USER Le nom d'utilisateur de la personne actuellement attachée au système. PATH La liste des répertoires, séparés par deux points, pour la recherche des programmes. DISPLAY Le nom réseau de l'affichage X11 auquel on peut se connecter, si disponible. SHELL Le nom de l'interpréteur de commandes actuellement utilisé. TERM - Le nom du terminal de l'utilisateur. Utilisé pour + Le nom du type de terminal de l'utilisateur. Utilisé pour déterminer les capacités du terminal. TERMCAP L'entrée de la base de données des codes d'échappement pour permettre l'exécution de diverses fonctions du terminal. OSTYPE Type du système d'exploitation, e.g. FreeBSD. MACHTYPE L'architecture du CPU sur lequel tourne actuellement le système. EDITOR L'éditeur de texte préferé de l'utilisateur. PAGER Le visualisateur de page de texte préferré de l'utilisateur. MANPATH La liste des répertoires, séparés par deux points, pour la recherche des pages de manuel. Bourne shells Fixer une variable d'environnement diffère légèrement d'un interpréteur de commandes à l'autre. Par exemple, dans le style de l'interpréteur de commandes de type C-shell comme tcsh et csh, vous utiliseriez setenv pour fixer le contenu d'une variable d'environnement. Sous les interpréteurs de commandes Bourne comme sh et bash, vous utiliseriez export pour configurer vos variables d'environnement. Par exemple, pour fixer ou modifier la variable d'environnement EDITOR, sous csh ou tcsh une commande comme la suivante fixera EDITOR à /usr/local/bin/emacs: &prompt.user; setenv EDITOR /usr/local/bin/emacs Sous les interpréteurs de commandes Bourne: &prompt.user; export EDITOR="/usr/local/bin/emacs" Vous pouvez faire afficher à la plupart des interpréteurs de commandes la variable d'environnement en plaçant un caractère $ juste devant son nom sur la ligne de commande. Par exemple, echo $TERM affichera le contenu de $TERM, car l'interpréteur de commande complète $TERM et passe la main à echo. Les interpréteurs de commandes traitent beaucoup de caractères spéciaux, appelés métacaractères, en tant que représentation particulière des données. Le plus commun est le caractère *, qui représente zéro ou plusieurs caractères dans le nom du fichier. Ces métacaractères spéciaux peuvent être utilisés pour compléter automatiquement le nom des fichiers. Par exemple, taper echo * est presque la même chose que taper ls parce que l'interpréteur de commandes prendra tous les fichiers qui correspondent à * et les passera à echo pour les afficher. Pour éviter que l'interpréteur de commande n'interprète les caractères spéciaux, ils peuvent être neutralisés en ajoutant un caractère antislash (\) devant. echo $TERM affichera votre type de terminal. echo \$TERM affichera $TERM tel quel. Changer d'interpréteur de commandes La méthode la plus simple pour changer votre interpréteur de commandes est d'utiliser la commande chsh. En lançant chsh vous arriverez dans l'éditeur correspondant à votre variable d'environnement EDITOR; si elle n'est pas fixée, cela sera vi. Modifiez la ligne “Shell:” en conséquence. Vous pouvez également passer le paramètre à chsh; cela modifiera votre interpréteur de commandes sans avoir à utiliser un éditeur. Par exemple, si vous vouliez changer votre interpréteur de commandes pour bash, ce qui suit devrait faire l'affaire: &prompt.user; chsh -s /usr/local/bin/bash L'interpréteur de commandes que vous désirez utiliser doit être présent dans le fichier /etc/shells. Si vous avez installé l'interpréteur de commandes à partir du catalogue des logiciels portés, alors cela a dû déjà être fait pour vous. Si vous avez installé à la main l'interpréteur de commandes, vous devez alors le faire. Par exemple, si vous avez installé bash à la main et l'avez placé dans /usr/local/bin, vous devrez faire: &prompt.root; echo "/usr/local/bin/bash" >> /etc/shells Puis relancer chsh. Editeurs de texte éditeurs de texte éditeurs Beaucoup de configurations sous FreeBSD sont faites en éditant des fichiers textes. Aussi ce serait une bonne idée de se familiariser avec un éditeur de texte. FreeBSD est fourni avec quelques-uns en tant qu'éléments de système de base, et beaucoup d'autres sont disponibles dans le catalogue des logiciels portés. éditeurs ee L'éditeur de plus facile et le plus simple à apprendre est un éditeur appelé ee, qui signifie l'éditeur facile (easy editor). Pour lancer ee, on taperait sur la ligne de commande ee fichierfichier est le nom du fichier qui doit être édité. Par exemple, pour éditer /etc/rc.conf, tapez ee /etc/rc.conf. Une fois sous ee, toutes les commandes pour utiliser les fonctions de l'éditeur sont affichées en haut de l'écran. Le caractère ^ représente la touche Ctrl sur le clavier, donc ^e représente la combinaison de touches Ctrle. Pour quitter ee, appuyez sur la touche Echap, ensuite choisissez “leave editor”. L'éditeur vous demandera s'il doit sauver les changements si le fichier a été modifié. vi éditeurs vi emacs éditeurs emacs FreeBSD est également fourni avec des éditeurs de texte plus puissants comme vi en tant qu'élément du système de base, alors que d'autres éditeurs, comme Emacs et vim, en tant qu'élément du catalogue des logiciels portés de FreeBSD (editors/emacs et editors/vim). Ces éditeurs offrent beaucoup plus de fonctionnalités et de puissance aux dépens d'être un peu plus compliqués à apprendre. Cependant si vous projetez de faire beaucoup d'édition de texte, l'étude d'un éditeur plus puissant comme vim ou Emacs vous permettra d'économiser beaucoup plus de temps à la longue. Périphériques et fichiers spéciaux de périphérique Un périphérique est un terme utilisé la plupart du temps pour les activités en rapport avec le matériel présent sur le système, incluant les disques, les imprimantes, les cartes graphiques, et les claviers. Quand FreeBSD démarre, la majorité de ce qu'affiche FreeBSD est la détection des périphériques. Vous pouvez à nouveau consulter les messages de démarrage en visualisant le fichier /var/run/dmesg.boot. Par exemple, acd0 est le premier lecteur de CDROM IDE, tandis que kbd0 représente le clavier. La plupart de ces périphériques sous un système d'exploitation &unix; peuvent être accédés par l'intermédiaire de fichiers appelés fichiers spéciaux de périphérique (“device node”), qui sont situés dans le répertoire /dev. Créer des fichiers spéciaux de périphérique Quand vous ajoutez un nouveau périphérique à votre système, ou compilez le support pour des périphériques supplémentaires, de nouveaux fichiers spéciaux de périphérique doivent être créés. <literal>DEVFS</literal> (“DEVice File System” - Système de fichiers de périphérique) Le système de fichiers de périphérique, ou DEVFS, fournit un accès à l'espace nom des périphériques du noyau dans l'espace nom du système de fichiers global. Au lieu d'avoir à créer et modifier les fichiers spéciaux de périphérique, DEVFS maintient ce système de fichiers particulier pour vous. Voir la page de manuel de &man.devfs.5; pour plus d'information. Le format des fichiers binaires Afin de comprendre pourquoi &os; utilise le format &man.elf.5;, vous devez d'abord connaître quelques détails concernant les trois formats “dominants” d'exécutables actuellement en vigueur sous &unix;: &man.a.out.5; Le plus vieux et le format objet “classique” d'&unix;. Il utilise une entête courte et compacte avec un nombre magique au début qui est souvent utilisé pour caractériser le format (voir la page de manuel &man.a.out.5; pour plus de détails). Il contient trois segments chargés: .text, .data, et .bss plus une table de symboles et une table de chaînes de caractères. COFF Le format objet SVR3. L'entête comprend une table de section, de telle sorte que vous avez plus de sections qu'uniquement .text, .data et .bss. &man.elf.5; Le successeur de COFF, qui permet des sections multiples et des valeurs possibles de 32 bits et 64 bits. Un inconvénient majeur: ELF a aussi été conçu en supposant qu'il y aurait qu'un seul ABI par architecture système. Cette hypothèse est en fait assez incorrecte, et même dans le monde SYSV (qui a au moins trois ABIs: SVR4, Solaris, SCO) cela ne se vérifie pas. &os; essaye de contourner ce problème en fournissant un utilitaire pour marquer un exécutable connu ELF avec des informations sur l'ABI qui va avec. Consultez la page de manuel de &man.brandelf.1; pour plus d'informations. &os; vient du camp “classique” et a utilisé le format &man.a.out.5;, une technologie employée et éprouvée à travers des générations de BSDs, jusqu'aux débuts de la branche 3.X. Bien qu'il fut possible de compiler et d'exécuter des binaires natifs ELF (et noyaux) sous &os; avant cela, &os; a initialement résisté à la “pression” de passer à ELF comme format par défaut. Pourquoi? Bien, quand le camp Linux ont fait leur pénible transition vers ELF, ce n'est pas tant fuir le format a.out qui rendait difficile la construction de bibliothèques partagée pour les développeurs mais le mécanisme de bibliothèques partagées basé sur des tables de sauts inflexible. Puisque les outils ELF disponibles offraient une solution au problème des bibliothèques partagées et étaient perçus comme “le chemin à suivre” de toute façon, le coût de la migration a été accepté comme nécessaire, et la transition a été réalisée. Le mécanisme &os; de bibliothèques partagées se rapproche plus du style de mécanisme de bibliothèques partagées de &sunos; de Sun, et est très simple à utiliser. Pourquoi existe-t-il tant de formats différents? Dans un obscure et lointain passé, il y avait du matériel simple. Ce matériel simple supportait un simple petit système. a.out était complètement adapté pour représenter les binaires sur ce système simple (un PDP-11). Au fur et à mesure que des personnes portaient &unix; à partir de ce système simple, ils ont maintenus le format a.out parce qu'il était suffisant pour les premiers portages d'&unix; sur des architectures comme le Motorola 68k, les VAX, etc. Alors un certain ingénieur matériel brillant a décidé qu'il pourrait forcer le matériel à faire des choses bizarre, l'autorisant ainsi à réduire le nombre de portes logiques et permettant au coeur du CPU de fonctionner plus rapidement. Bien qu'on l'a fait fonctionner avec ce nouveau type de matériel (connu de nos jour sous le nom de RISC), a.out n'était pas adapté à ce matériel, aussi beaucoup de formats ont été développés pour obtenir de meilleures performances de ce matériel que ce que pouvait offrir le simple et limité format qu'était a.out. Des choses comme COFF, ECOFF, et quelques autres obscures formats ont été inventé et leur limites explorées avant que les choses ne se fixent sur ELF. En outre, les tailles des programmes devenaient énormes alors que les disques (et la mémoire physique) étaient toujours relativement petits, aussi le concept de bibliothèque partagée est né. Le système de VM (mémoire virtuelle) est également devenu plus sophistiqué. Tandis que chacune de ces avancées était faites en utilisant le format a.out, son utilité a été élargie de plus en plus avec chaque nouvelle fonction. De plus les gens ont voulu charger dynamiquement des choses à l'exécution, ou se débarrasser de partie de leur programme après l'initialisation pour économiser de l'espace mémoire et de pagination. Les langages sont devenus plus sophistiqués et les gens ont voulu du code appelé automatiquement avant la partie principale du programme. Beaucoup de modifications ont été apportées au format a.out pour rendre possible toutes ces choses, et cela a fonctionné pendant un certain temps. Avec le temps, a.out n'était plus capable de gérer tous ces problèmes sans une augmentation toujours croissante du code et de sa complexité. Tandis ELF résolvait plusieurs de ces problèmes, il aurait été pénible de quitter un système qui a fonctionné. Ainsi ELF a dû attendre jusqu'au moment où il était plus pénible de rester avec a.out que d'émigrer vers ELF. Cependant, avec le temps, les outils de compilation desquels ceux de &os; sont dérivés (l'assembleur et le chargeur tout spécialement) ont évolué en parallèle. Les développeurs &os; ajoutèrent les bibliothèques partagées et corrigèrent quelques bogues. Les gens de chez GNU qui ont à l'origine écrit ces programmes, les récrivirent et ajoutèrent un support plus simple pour la compilation multi-plateformes, avec différents formats à volonté, et ainsi de suite. Lorsque beaucoup de personnes ont voulu élaborer des compilateurs multi-plateformes pour &os;, elles n'eurent pas beaucoup de chance puisque les anciennes sources que &os; avait pour as et ld n'étaient pas adaptées à cette tâche. Le nouvel ensemble d'outils de GNU (binutils) supporte la compilation multi-plateformes, ELF, les bibliothèques partagées, les extensions C++, etc. De plus, de nombreux vendeurs de logiciels fournissent des binaires ELF, et c'est une bonne chose pour permettre leur exécution sous &os;. ELF est plus expressif qu'a.out et permet plus d'extensibilité dans le système de base. Les outils ELF sont mieux maintenus, et offrent un support pour la compilation multi-plateformes, ce qui est important pour de nombreuses personnes. ELF peut être légèrement plus lent qu'a.out, mais tenter de mesurer cette différence n'est pas aisé. Il y a également de nombreux détails qui diffèrent entre les deux dans la façon dont ils mappent les pages mémoire, gère le code d'initialisation, etc. Dans le futur, le support a.out sera retiré du noyau GENERIC, et par la suite retiré des sources du noyau une fois que le besoin d'exécuter d'anciens programmes a.out aura disparu. Pour plus d'information Les pages de manuel pages de manuel La documentation la plus complète sur FreeBSD est sous la forme de pages de manuel. Presque chaque programme sur le système est fournit avec un court manuel de référence expliquant l'utilisation de base et les diverses options. Ces manuels peuvent être visualisés avec la commande man. L'utilisation de la commande man est simple: &prompt.user; man command command est le nom de la commande à propos de laquelle vous désirez en savoir plus. Par exemple, pour en savoir plus au sujet de la commande ls tapez: &prompt.user; man ls Les manuels en ligne sont divisés en sections numérotées: Commandes utilisateur. Appels système et numéros d'erreur. Fonctions des bibliothèques C. Pilotes de périphérique. Formats de fichier. Jeux et autres divertissements. Information diverse. Commandes de maintenance et d'utilisation du système. Information de développement du noyau. Dans certains cas, le même sujet peut apparaître dans plus d'une section du manuel en ligne. Par exemple, il existe une commande utilisateur chmod et un appel système chmod(). Dans ce cas, vous pouvez préciser à la commande man laquelle vous désirez en spécifiant la section: &prompt.user; man 1 chmod Cela affichera la page de manuel de la commande utilisateur chmod. Les références à une section particulière du manuel en ligne sont traditionnellement placées entre parenthèses, ainsi &man.chmod.1; se rapporte à la commande utilisateur chmod et &man.chmod.2; se rapporte à l'appel système. C'est parfait si vous connaissez le nom de la commande et vous souhaitez simplement savoir comment l'utiliser, mais qu'en est-il si vous ne pouvez pas vous rappelez du nom de la commande? Vous pouvez utiliser man pour rechercher des mots-clés dans les descriptions de commandes en employant l'option : &prompt.user; man -k mail Avec cette commande on vous affichera la liste des commandes qui ont le mot-clé “mail” dans leurs descriptions. C'est en fait équivalent à l'utilisation de la commande apropos. Ainsi, vous regardez toutes ces commandes fantaisistes contenues dans /usr/bin mais vous n'avez pas la moindre idée de ce quelles font vraiment? Faites simplement: &prompt.user; cd /usr/bin &prompt.user; man -f * ou &prompt.user; cd /usr/bin &prompt.user; whatis * ce qui fait la même chose. Fichiers GNU Info Free Software Foundation Fondation pour le Logiciel Libre FreeBSD inclut beaucoup d'applications et d'utilitaires produit par la Fondation pour le Logiciel Libre ( Free Software Foundation). En plus des pages de manuel, ces programmes sont fournis avec des documents hypertexte appelés fichiers info qui peuvent être lus avec la commande info ou, si vous avez installé emacs, dans le mode info d'emacs. Pour utiliser la commande &man.info.1;, tapez simplement: &prompt.user; info Pour une brève introduction, tapez h. Pour une référence rapide sur la commande, tapez ?.
diff --git a/fr_FR.ISO8859-1/books/handbook/desktop/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/desktop/chapter.sgml index ae3894bcb3..9de95fe90f 100644 --- a/fr_FR.ISO8859-1/books/handbook/desktop/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/desktop/chapter.sgml @@ -1,1200 +1,1205 @@ Christophe Juniet Contribution de Bureautique &trans.a.fonvieille; Synopsis FreeBSD peut faire fonctionner une large variété d'applications de bureautique, comme des navigateurs et des traitements de textes. La plupart de ces derniers sont disponibles sous forme pré-compilée ou peuvent être compilé automatiquement à partir du catalogue des logiciels portés. De nombreux utilisateurs s'attendent à trouver ces types d'applications dans leur environnement de travail. Ce chapitre vous montrera comment installer quelques unes des applications de bureautique les plus populaires sans trop d'effort, soit à partir de versions pré-compilées soit à partir du catalogue des logiciels portés. Notez que lorsque l'on installe des programmes à partir du catalogue des logiciels portés, ils sont compilés à partir des sources. Cela peut prendre un temps relativement long, en fonction de ce que vous compilez et de la puissance de votre machine. Si la compilation à partir des sources requiert un temps prohibitif, vous pouvez installer la plupart des programmes de l'arbre des ports à partir de version pré-compilées. Comme FreeBSD dispose d'un système de compatibilité avec les binaires Linux, de nombreuses applications développées à l'origine pour Linux sont disponibles pour votre environnement de travail. Il est vivement recommandé que vous lisiez le avant d'installer des applications Linux. De nombreux logiciels portés utilisant la compatibilité binaire Linux débutent avec le terme “linux-”. Souvenez-vous de cela quand vous recherchez un logiciel porté bien particulier, par exemple à l'aide de &man.whereis.1;. Dans le reste de ce chapitre on suppose que vous avez activé la compatibilité Linux avant d'installer des applications Linux. Voici les catégories d'applications couvertes par ce chapitre: Navigateurs (comme Mozilla, Opera, Firefox, Konqueror) Productivité (comme KOffice, AbiWord, The GIMP, OpenOffice.org) Lecteurs de document (comme &acrobat.reader;, gv, Xpdf, GQview) Finance (comme GnuCash, Gnumeric, Abacus) Avant de lire ce chapitre, vous devrez: Savoir comment installer des logiciels tiers (). Savoir comment installer des logiciels pour Linux (). Pour des informations sur comment mettre en place un environnement multimédia, lisez le . Si vous désirez configurer et utiliser le courrier électronique, veuillez vous référer au . Navigateurs navigateurs web FreeBSD n'est pas livré avec un navigateur particulier installé. Au lieu de cela, le répertoire www du catalogue des logiciels portés contient de nombreux navigateurs prêts à être installés. Si vous n'avez pas le temps de tout compiler (cela peut prendre un temps relativement long dans certains cas) nombres d'entre eux sont disponibles sous forme pré-compilée. KDE et GNOME fournissent déjà un navigateur HTML. Veuillez vous référer au pour plus d'information sur comment configurer ces environnements de travail. Si vous êtes à la recherche de navigateurs légers, vous devriez consulter le catalogue des logiciels portés pour www/dillo, www/links, ou www/w3m. Cette section couvre les applications suivantes: Nom de l'application Ressources nécessaires Installation à partir du catalogue des logiciels portés Dépendances principales Mozilla importantes lourde Gtk+ Opera faibles légère Version native FreeBSD et Linux disponibles. La version Linux dépend de la compatibilité binaire Linux et de linux-openmotif. Firefox moyennes lourde Gtk+ Konqueror moyennes lourde Bibliothèques KDE Mozilla Mozilla Mozilla est un navigateur - moderne et stable, dont le portage &os; est complet. - Il présente un moteur d'affichage HTML qui respecte - vraiment les normes. Il intègre un lecteur de courrier + moderne et stable, dont le portage &os; est complet: + il présente un moteur d'affichage HTML qui respecte + vraiment les normes; il intègre un lecteur de courrier électronique et de forums de discussion. Il possède même un éditeur HTML si vous projetez d'écrire vous-même quelques pages Web. Les utilisateurs de &netscape; trouveront des similitudes avec la suite Communicator, étant - donné que les deux navigateurs partagent la même - base. + donné que les deux navigateurs partagent certains + développements passés. Sur les machines lentes, avec une vitesse de processeur de moins de 233MHz ou avec moins de 64MO de RAM, Mozilla peut être trop consommateur en ressources pour être vraiment utilisable. Vous pourrez vouloir essayer à la place le navigateur Opera décrit plus tard dans ce chapitre. Si vous ne pouvez ou ne voulez compiler - Mozilla pour une quelconque raison, + Mozilla, pour une quelconque raison, l'équipe GNOME de FreeBSD l'a déjà fait pour vous. Installez juste la version pré-compilée à partir du réseau avec: &prompt.root; pkg_add -r mozilla Si la version pré-compilée n'est pas disponible, et que vous avez suffisamment de temps et d'espace disque, vous pouvez obtenir les sources pour Mozilla, le compiler et l'installer sur votre système. Cela s'effectue en faisant: &prompt.root; cd /usr/ports/www/mozilla &prompt.root; make install clean Le logiciel porté Mozilla s'assure d'une initialisation correcte en exécutant la configuration de la base de registre chrome avec les privilèges de root privilèges. Cependant si vous désirez récupérer des modules additionnels comme “mouse gestures”, vous devez exécuter Mozilla en tant que root pour obtenir une installation correcte de ces modules. Une fois que vous avez achevé l'installation de Mozilla, vous n'avez plus besoin d'être sous root. Vous pouvez lancer Mozilla en tant que navigateur en tapant: &prompt.user; mozilla Vous pouvez lancer directement les lecteurs de courrier électronique et de forums comme montré ci-dessous: &prompt.user; mozilla -mail Firefox Firefox Firefox est la génération suivante de navigateurs basés sur le code de Mozilla. Mozilla est une suite complète d'applications, comme un navigateur, un client de messagerie, un client de discussion et bien plus. Firefox est juste un navigateur, ce qui le rend plus petit et plus rapide. Installez la version pré-compilée du logiciel en tapant: &prompt.root; pkg_add -r firefox Vous pouvez également utiliser le catalogue des logiciels portés si vous désirez effectuer la compilation à partir des sources: &prompt.root; cd /usr/ports/www/firefox &prompt.root; make install clean Firefox, Mozilla et le greffon &java; Dans cette section et la suivante, nous supposerons que vous avez déjà installé Firefox ou Mozilla. La fondation &os; a acquis auprès de Sun Microsystems une licence de distribution des binaires &os; pour le Java Runtime Environment (&jre;) et le Java Development Kit (&jdk;). Les paquetages binaires pour &os; sont disponibles sur le site de la fondation &os;. Pour ajouter le support &java; à Firefox ou Mozilla, vous devez installer tout d'abord le logiciel porté java/javavmwrapper. Ensuite, téléchargez le paquetage Diablo &jre; à l'adresse , et installez-le à l'aide de &man.pkg.add.1;. Lancez votre navigateur et tapez about:plugins dans la barre d'adresse et appuyez sur Entrée. Une page - concernant les greffons installés s'affichera, le + listant les greffons installés s'affichera; le greffon &java; devrait désormais apparaître dans la liste. Si ce n'est - pas le cas, en tant que root, exécutez la + pas le cas, en tant que root, exécutez la commande suivante: &prompt.root; ln -s /usr/local/diablo-jre1.5.0/plugin/i386/ns7/libjavaplugin_oji.so \ /usr/local/lib/browser_plugins/ puis relancez votre navigateur. Firefox, Mozilla et le greffon ¯omedia; &flash; Le greffon ¯omedia; &flash; n'est pas disponible pour &os;. Cependant il existe une couche logicielle (wrapper) pour utiliser la version Linux du greffon. Ce wrapper supporte également les - greffons &adobe; &acrobat;, RealPlayer et plus. + greffons &adobe; &acrobat;, &realplayer; et plus. Installez le logiciel porté www/linuxpluginwrapper. Ce logiciel nécessite emulators/linux_base qui est relativement important. Suivez les instructions affichées à la fin de l'installation pour configurer correctement votre fichier /etc/libmap.conf! Des exemples de configurations sont installés dans le répertoire /usr/local/share/examples/linuxpluginwrapper/. L'étape suivante est l'installation du logiciel porté www/linux-flashplugin7. Une fois le greffon installé, lancez votre navigateur, tapez about:plugins dans la barre d'adresse et appuyez sur Entrée. Une des greffons actuellement disponibles devrait apparaître. Si le greffon &flash; n'est pas listé, c'est, la plupart du temps, dû à un lien symbolique manquant. En tant que root, lancez les commandes suivantes: &prompt.root; ln -s /usr/local/lib/npapi/linux-flashplugin/libflashplayer.so \ /usr/local/lib/browser_plugins/ &prompt.root; ln -s /usr/local/lib/npapi/linux-flashplugin/flashplayer.xpt \ /usr/local/lib/browser_plugins/ Si vous relancez votre navigateur, le greffon devrait désormais apparaître dans la liste mentionnée précédemment. Le programme linuxpluginwrapper ne fonctionne que sur l'architecture &i386;. Opera Opera Opera est un navigateur complet respectant les standards. Il intègre un lecteur de courrier électronique et de forums de discussion, un client IRC, un lecteur de flux RSS/Atom et beaucoup plus. Malgré cela, Opera reste relativement léger et très rapide. Il est disponible en deux versions: une version “native” pour FreeBSD et une version utilisant l'émulation Linux. Pour naviguer sur le Web avec la version FreeBSD d'Opera, installez la version pré-compilée: &prompt.root; pkg_add -r opera Certains sites FTP n'ont pas toutes les versions - pré-compilées, mais le même résultat - peut être obtenu avec le catalogue des logiciels + pré-compilées, mais Opera + peut également être obtenu avec le catalogue des logiciels portés en tapant: &prompt.root; cd /usr/port/www/opera &prompt.root; make install clean Pour installer la version Linux d'Opera, utilisez linux-opera à la place d'opera dans les exemples précédents. La version Linux est utile dans les situations demandant l'utilisation de greffons qui sont uniquement disponibles pour Linux, comme &acrobat.reader;. Dans tous les - autres aspects, les versions FreeBSD et Linux sont + autres aspects, les versions FreeBSD et Linux devraient être identiques. Konqueror Konqueror Konqueror fait partie de KDE mais peut être également utilisé en dehors de KDE en installant x11/kdebase3. Konqueror est plus qu'un navigateur, c'est également un gestionnaire de fichiers et une visionneuse multimedia - Konqueror est fourni avec un - ensemble de greffons disponible dans Il existe également un ensemble de greffons pour + Konqueror disponible dans misc/konq-plugins. Konqueror supporte - également &flash; et un - tutorial est disponible à l'adresse &flash;; un + tutorial pour avoir le support de + &flash; sous + Konqueror est disponible à + l'adresse . Productivité Quand on parle de productivité, les nouveaux utilisateurs recherchent souvent une bonne suite bureautique ou un traitement de texte convivial. Bien que certains environnements de travail comme KDE fournissent déjà une suite de - bureautique, il n'y a pas d'application par défaut dans ce - domaine. FreeBSD fournit tout ce qui est nécessaire, + bureautique, il n'y a pas de logiciels de productivité par défaut. + FreeBSD fournit tout ce qui est nécessaire, indépendamment de votre environnement de travail. Cette section couvre les applications suivantes: Nom de l'application Ressources nécessaires Installation à partir du catalogue des logiciels portés Dépendances principales KOffice légères lourde KDE AbiWord légères lourde Gtk+ ou GNOME The Gimp légères lourde Gtk+ OpenOffice.org importantes très lourde &jdk; 1.4, Mozilla KOffice KOffice suite de bureautique KOffice La communauté KDE propose son environnement de travail avec une suite de bureautique qui peut être utilisée en dehors de KDE. Elle comprend quatre composants standard que l'on peut trouver dans d'autres suites. KWord est le traitement de texte, KSpread est le tableur, KPresenter est le programme pour gérer des présentations, et Kontour vous permet de créer des documents graphiques. Avant d'installer la dernière version de KOffice, soyez sûr d'avoir une version à jour de KDE. Pour installer KOffice à partir de la version pré-compilée, utilisez la commande suivante: &prompt.root; pkg_add -r koffice Si la version pré-compilée n'est pas disponible, vous pouvez utiliser le catalogue des logiciels portés. Par exemple, pour installer KOffice pour KDE3, faites: &prompt.root; cd /usr/ports/editors/koffice-kde3 &prompt.root; make install clean AbiWord AbiWord AbiWord est un traitement de texte gratuit similaire au niveau de l'apparence et de la prise en main à µsoft; Word. Il convient pour taper des lettres, des rapports, des mémos, et ainsi de suite. Il est très rapide, dispose de nombreuses fonctions, et très convivial. AbiWord peut importer et exporter dans de nombreux formats de fichiers, dont certains formats propriétaires comme le .doc de - Microsoft. + µsoft;. AbiWord est disponible sous forme pré-compilée. Vous pouvez l'installer avec: &prompt.root; pkg_add -r abiword Si la version pré-compilée n'est pas disponible, il peut être compilé à partir du catalogue des logiciels portés. Le catalogue devra être plus à jour. Cela peut être fait de cette façon: &prompt.root; cd /usr/ports/editors/abiword &prompt.root; make install clean The GIMP The GIMP Pour la création et la retouche d'image The GIMP est un programme de manipulation d'image très sophistiqué. Il peut être utilisé comme un simple programme de dessin ou comme une suite de retouche d'image de qualité photo. Il supporte un grand nombre de modules additionnels et présente une interface de création de procédures. The GIMP peut lire et écrire dans un très grand nombre de formats de fichiers. Il supporte l'interfaçage avec des scanners et des tablettes graphiques. Vous pouvez installer la version pré-compilée en utilisant cette commande: &prompt.root; pkg_add -r gimp Si votre site FTP ne dispose pas de la version pré-compilée, vous pouvez utiliser le catalogue des logiciels portés. Le répertoire graphics du catalogue contient également le Manuel de The Gimp. Voici comment les installer: &prompt.root; cd /usr/ports/graphics/gimp &prompt.root; make install clean &prompt.root; cd /usr/ports/graphics/gimp-manual-pdf &prompt.root; make install clean Le répertoire graphics du catalogue des logiciels portés contient la version de développement de The GIMP dans graphics/gimp-devel. Une version HTML du Manuel de The Gimp est disponible à partir de graphics/gimp-manual-html. OpenOffice.org OpenOffice.org suite de bureautique OpenOffice.org OpenOffice.org comprend toutes les applications indispensables d'une suite de bureautique complète: un traitement de texte, un tableur, un programme de gestion de présentation, et un logiciel de dessin. Son interface utilisateur est très proche de celle d'autres suites de bureautique, et elle peut importer et exporter dans divers formats de fichiers populaires. Elle est disponible dans de - nombreuses langues et cela pour l'interface, les correcteurs - orthographiques, et les dictionnaires. + nombreuses langues — l'interface, les correcteurs + orthographiques, et les dictionnaires ont été + internationalisés. Le traitement de texte d'OpenOffice.org utilise un format de fichier natif en XML pour augmenter la portabilité et la flexibilité. Le tableur dispose d'un langage de macro et il peut être interfacé avec des bases de données extérieures. OpenOffice.org est déjà stable et fonctionne en natif sous &windows;, &solaris;, Linux, FreeBSD, et &macos; X. Plus d'information à propos d'OpenOffice.org peut être trouvé sur le site Web d'OpenOffice.org. Pour une information spécifique à &os;, et pour télécharger directement les versions - précompilées utilisez le site Web de + précompilées, utilisez le site Web de l'Equipe &os; de portage d'OpenOffice.org. Pour installer OpenOffice.org, faites: &prompt.root; pkg_add -r openoffice.org Cette commande devrait fonctionner si vous utilisez une version -RELEASE de &os;. Si ce n'est pas le cas, vous devriez consulter le site de l'équipe de portage d'OpenOffice.org pour télécharger puis installer le paquetage adéquat en utilisant &man.pkg.add.1;. Les versions actuelles et de développement sont disponibles. Une fois l'installation effective, vous avez juste à taper la commande suivante pour exécuter OpenOffice.org: &prompt.user; openoffice.org Lors de la première exécution, quelques questions vous seront posées et un répertoire .openoffice.org2 sera créé dans votre répertoire utilisateur. Si les version pré-compilées d'OpenOffice.org ne sont pas disponibles, vous avez toujours la possibilité de compiler le logiciel porté. Cependant, vous devez garder à l'esprit que cela demande beaucoup d'espace disque et un temps de compilation relativement long. &prompt.root; cd /usr/ports/editors/openoffice.org-2 &prompt.root; make install clean Si vous désirez compiler une version localisée, remplacez la dernière ligne de commande avec la suivante: &prompt.root; make LOCALIZED_LANG=votre_langage install clean Vous devez remplacer votre_langage avec le code ISO de langage approprié. Une liste des codes de langage supportés est disponible dans le fichier files/Makefile.localized situé dans le répertoire du logiciel porté. Une fois cela effectué, OpenOffice.org peut être lancé avec la commande: &prompt.user; openoffice.org Lecteurs de document - Certains nouveaux formats de documentation ont récemment - gagné en popularité. Les lecteurs standard qu'ils + Certains nouveaux formats de documentation ont + gagné en popularité depuis l'avènement d'&unix;; + les lecteurs standard qu'ils nécessitent peuvent ne pas être disponibles dans le système de base. Nous verrons, dans cette section, - comment les installer. + comment installer ces lecteurs de document. Cette section couvre les applications suivantes: Nom de l'application Ressources nécessaires Installation à partir du catalogue des logiciels portés Dépendances principales &acrobat.reader; faibles légère Compatibilité binaire Linux gv faibles légère Xaw3d Xpdf faibles légère FreeType GQview faibles légère Gtk+ ou GNOME &acrobat.reader; Acrobat Reader PDF lecture De nombreux documents sont désormais distribués sous forme de fichiers PDF, qui signifie “Format Portable de Document” - Portable Document Format. Un des lecteurs recommandé est &acrobat.reader;, sorti par Adobe pour Linux. Comme FreeBSD peut exécuter les binaires Linux, il est également disponible pour FreeBSD. Pour installer &acrobat.reader; 7, à partir du catalogue de logiciels portés, faire: &prompt.root; cd /usr/ports/print/acroread7 &prompt.root; make install clean Il n'existe pas de paquetage pour des raisons de licence. gv gv PDF lecture PostScript lecture gv un lecteur de fichier &postscript; et PDF. Il est a l'origine basé sur ghostview mais présente un plus bel aspect grâce à la bibliothèque Xaw3d. Il est rapide et son interface est simple. gv possède de nombreuses fonctionnalités comme l'orientation, le format du papier, l'échelle, l'anticrénelage. Presque toutes les opérations peuvent être effectuées soit à partir du clavier soit à la souris. Pour installer gv à partir de la version pré-compilée, faites: &prompt.root; pkg_add -r gv Si vous ne pouvez obtenir la version pré-compilée, vous pouvez utiliser le catalogue des logiciels portés: &prompt.root; cd /usr/ports/print/gv &prompt.root; make install clean Xpdf Xpdf PDF lecture Si vous désirez un petit lecteur de fichiers PDF, Xpdf est léger et efficace. Il demande très peu de ressources et est très stable. Il utilise les polices de caractères standards de X et ne requiert pas &motif; ou tout autre ensemble d'éléments graphiques pour X. Pour installer la version pré-compilée d'Xpdf utilisez la commande suivante: &prompt.root; pkg_add -r xpdf Si la version pré-compilée n'est pas disponible ou que vous préfériez utiliser le catalogue des logiciels portés, faites: &prompt.root; cd /usr/ports/graphics/xpdf &prompt.root; make install clean Une fois l'installation achevée, vous pouvez lancer Xpdf et utiliser le bouton droit de la souris pour activer le menu. GQview GQview GQview est un gestionnaire d'image. Vous pouvez visualiser un fichier avec un simple clic, lancer un éditeur externe, obtenir une pré-visualisation par vignettes, et bien plus. Il propose également un mode présentation et quelques possibilités d'opérations sur fichiers de base. Vous pouvez gérer des collections d'images et trouver facilement les doublons. GQview supporte l'affichage plein écran et l'internationalisation de l'interface. Si vous désirez installer la version pré-compilée de GQview, faites: &prompt.root; pkg_add -r gqview Si la version pré-compilée n'est pas disponible ou que vous préférez utiliser le catalogue des logiciels portés, faites: &prompt.root; cd /usr/ports/graphics/gqview &prompt.root; make install clean Finance Si, pour diverses raisons, vous voudriez gérer vos finances personnelles sous FreeBSD, il existe quelques applications puissantes et simples d'emploi prêtes à être installées. Certaines d'entre elles sont compatibles avec des formats de fichiers très - répandus comme ceux des documents Quicken ou Excel. + répandus comme ceux utilisés par Quicken ou Excel pour stocker des documents. - Cette section couvre les applications suivantes: + Cette section couvre les programmes suivants: Nom de l'application Ressources nécessaires Installation à partir du catalogue des logiciels portés Dépendances principales GnuCash faibles lourde GNOME Gnumeric faibles lourde GNOME Abacus faibles légère Tcl/Tk GnuCash GnuCash GnuCash fait partie de l'effort GNOME en vue de fournir des applications puissantes et conviviales pour l'utilisateur final. Avec GnuCash, vous pouvez suivre vos - crédits et débits, vos comptes bancaires, ou vos actions. + crédits et débits, vos comptes bancaires, et vos actions. Il présente une interface intuitive tout en restant très professionnel. GnuCash fournit un registre intelligent, un système hiérarchique pour les comptes, de nombreux raccourcis clavier et des systèmes d'autocomplémentation de la frappe au clavier. Il peut diviser une simple transaction en plusieurs étapes plus détaillées. GnuCash peut importer et fusionner des fichiers QIF de Quicken. Il supporte également la plupart des formats internationaux de date et de monnaies. Pour installer GnuCash sur votre système, faites: &prompt.root; pkg_add -r gnucash Si la version pré-compilée n'est pas disponible, vous pouvez utiliser le catalogue des logiciels portés: &prompt.root; cd /usr/ports/finance/gnucash &prompt.root; make install clean Gnumeric Gnumeric tableur Gnumeric Gnumeric est un tableur, faisant partie de l'environnement de travail GNOME. Il dispose d'un système automatique “devinant” le type d'entrée de l'utilisateur en fonction du format de la - cellule et d'un système de remplissage automatique pour de + cellule avec un système de remplissage automatique pour de nombreuses séquences d'utilisation. Il peut importer des fichiers de nombreux formats populaires comme ceux d'Excel, Lotus 1-2-3, ou Quattro Pro. Gnumeric supporte l'affichage de graphiques grâce au programme de tracé math/guppi. Il dispose d'un grand nombre de fonctions intégrées et permet tous les formats de cellule habituels comme le format numérique, monétaire, date, temps, et bien plus. Pour installer Gnumeric sous forme pré-compilée, tapez: &prompt.root; pkg_add -r gnumeric Si la version pré-compilée n'est pas disponible, vous pouvez utiliser le catalogue des logiciels portés en faisant: &prompt.root; cd /usr/ports/math/gnumeric &prompt.root; make install clean Abacus Abacus tableur Abacus Abacus est un tableur léger et facile d'emploi. Il incorpore de nombreuses fonctions utiles dans plusieurs domaines comme les statistiques, la finance, et les mathématiques. Il peut importer et exporter en format Excel. Abacus peut produire des sorties en &postscript;. Pour installer Abacus à partir de la version pré-compilée, faites: &prompt.root; pkg_add -r abacus Si la version pré-compilée n'est pas disponible, vous pouvez utiliser le catalogue des logiciels portés en faisant: &prompt.root; cd /usr/ports/deskutils/abacus &prompt.root; make install clean Résumé Alors que FreeBSD est populaire parmi les fournisseurs d'accès à Internet pour ses performances et sa stabilité, il est quasiment prêt pour une utilisation quotidienne en tant que station de travail. Avec plusieurs milliers d'applications disponibles sous forme pré-compilées ou dans le catalogue des logiciels portés, vous pouvez vous construire l'environnement de travail qui vous conviendra le mieux. Voici un bref rappel de toutes les applications abordées dans ce chapitre: Nom de l'application Nom du logiciel pré-compilé Nom du logiciel porté Mozilla mozilla www/mozilla Opera opera www/opera Firefox firefox www/firefox KOffice koffice-kde3 editors/koffice-kde3 AbiWord abiword editors/abiword The GIMP gimp graphics/gimp OpenOffice.org openoffice editors/openoffice-1.1 &acrobat.reader; acroread print/acroread7 gv gv print/gv Xpdf xpdf graphics/xpdf GQview gqview graphics/gqview GnuCash gnucash finance/gnucash Gnumeric gnumeric math/gnumeric Abacus abacus deskutils/abacus diff --git a/fr_FR.ISO8859-1/books/handbook/eresources/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/eresources/chapter.sgml index 397bf1ce28..626d11f5b1 100644 --- a/fr_FR.ISO8859-1/books/handbook/eresources/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/eresources/chapter.sgml @@ -1,2025 +1,2031 @@ Ressources sur Internet &trans.a.fonvieille; L'évolution rapide de FreeBSD rend peu pratique le suivi des développements via des supports imprimés. Les supports électroniques sont le meilleur, sinon la plupart du temps le seul, moyen de se tenir au courant des dernières avancées. Comme FreeBSD est un effort basé sur le volontariat, la communauté des utilisateurs sert généralement de “service de support technique”, le courrier électronique et les forums de discussion étant le meilleur moyen de contacter cette communauté. Les points de contact les plus importants avec la communauté des utilisateurs de FreeBSD sont listés ci-dessous. Si vous connaissez d'autres ressources qui n'y figurent pas, communiquez-les s'il vous plaît à la &a.doc; de façon à ce qu'elles soient aussi mentionnées. Listes de diffusion Bien qu'un grand de nombre de développeurs de FreeBSD lisent les forums de discussion, nous ne pouvons vous garantir de réponse en temps et en heure à vos questions (ni même de réponse tout court) si vous ne les postez que sur un des forums comp.unix.bsd.freebsd.*. En adressant vos questions sur la liste de diffusion appropriée vous nous contacterez en même temps qu'un auditoire FreeBSD concentré, ce qui vous garantit invariablement une meilleure (ou tout au moins une plus rapide) réponse. Les chartes d'utilisation pour les différentes listes sont données à la fin de ce document. Lisez-les s'il vous plaît avant de vous inscrire ou d'envoyer du courrier à une liste. La plupart des inscrits à nos listes reçoivent maintenant des centaines de messages en rapport à FreeBSD chaque jour, et en définissant des chartes et des règles d'utilisation, nous essayons de garder assez élevé le rapport signal/bruit sur les listes. Ne pas le faire verrait l'échec des listes de diffusion comme moyen efficace de communication pour le projet. En cas de doute sur la liste sur laquelle poser une question, lisez Comment obtenir les meilleurs résultats sur la liste de diffusion FreeBSD-questions. Avant de poster sur une liste de diffusion, veuillez apprendre à utiliser au mieux les listes de diffusion, comme par exemple éviter de relancer des discussions qui reviennent régulièrement, en lisant le document (FAQ) sur les questions fréquemment posées au sujet des listes de diffusion. Des archives de toutes les listes de diffusion sont conservées et on peut effectuer des recherches sur le serveur World Wide Web de FreeBSD. Les archives interrogeables par mots-clés offrent un excellent moyen de trouver des réponses aux questions fréquemment posées et devraient être consultées avant de poster une question. Résumé des listes de diffusion Listes générales: les listes suivantes sont des listes générales auxquelles chacun est libre (et encouragé) de s'inscrire: Liste Objet &a.cvsall.name; Toutes les modifications de l'arborescence des sources &a.advocacy.name; Propagande FreeBSD &a.announce.name; Evénements et étapes importantes du projet &a.arch.name; Discussions sur l'architecture et l'implémentation de FreeBSD &a.bugbusters.name; Discussions concernant la maintenance de la base des données des rapports de bogue de FreeBSD et des outils rattachés &a.bugs.name; Rapports de bogue &a.chat.name; Sujets non-techniques en rapport avec la communauté FreeBSD &a.current.name; Discussions concernant l'utilisation de &os.current; &a.isp.name; Pour les fournisseurs d'accès utilisant FreeBSD &a.jobs.name; Emplois et interventions de consultants en rapport avec FreeBSD &a.policy.name; Décisions de la politique de l'équipe de base de FreeBSD. Volume faible, et accès en lecture uniquement &a.questions.name; Questions des utilisateurs et support technique &a.security-notifications.name; Avis de sécurité &a.stable.name; Discussions concernant l'utilisation de &os.stable; &a.test.name; Où envoyer vos messages de test au lieu que dans une des listes réelles Listes techniques: les listes suivantes sont destinées aux discussions techniques. Vous devriez lire la charte d'utilisation pour chaque liste attentivement avant de s'y inscrire ou d'y envoyer du courrier parce qu'il y a des règles fermes quant à leur utilisation et leur contenu. Liste Objet &a.acpi.name; Développement de l'ACPI et de la gestion d'energie &a.afs.name; Portage d'AFS sous FreeBSD &a.aic7xxx.name; Développement de pilotes pour les contrôleurs AIC 7xxx d'&adaptec; &a.alpha.name; Portage de FreeBSD sur les systèmes Alpha &a.amd64.name; Portage de &os; sur les systèmes AMD64 &a.apache.name; Discussion sur les logiciels portés relatifs à Apache &a.arm.name; Portage de FreeBSD sur les processeurs &arm; &a.atm.name; Utilisation de réseaux ATM avec FreeBSD &a.audit.name; Projet d'audit du code source &a.binup.name; Conception et développement du système de mise à jour binaire &a.bluetooth.name; Utilisation de la technologie &bluetooth; sous &os; &a.cluster.name; Utilisation de FreeBSD dans un environnement en grappe &a.cvsweb.name; Maintenance du système CVSweb &a.database.name; Discussions à propos de l'utilisation de bases de données et de leur développement sous FreeBSD &a.doc.name; Création de documents en rapport avec FreeBSD &a.drivers.name; Ecrire des pilotes de périphériques pour &os; &a.eclipse.name; Pour les utilisateurs &os; de l'EDI Eclipse, les outils, les applications clientes et les logiciels portés. &a.embedded.name; Utilisation de &os; dans les applications embarquées &a.eol.name; Entre-aide sur les logiciels relatifs à &os; et qui ne sont plus supportés par le projet &os;. &a.emulation.name; Emulation d'autres systèmes comme Linux/&ms-dos;/&windows; &a.firewire.name; Discussion technique au sujet du &firewire; (iLink, IEEE 1394) sous FreeBSD &a.fs.name; Systèmes de fichiers &a.geom.name; Discussions spécifiques à GEOM et à ses implémentations &a.gnome.name; Portage de GNOME et des applications GNOME &a.hackers.name; Discussions techniques générales &a.hardware.name; Discussion générale à propos du matériel fonctionnant sous FreeBSD &a.i18n.name; Internationalisation de FreeBSD &a.ia32.name; &os; sur la plate-forme IA-32 (&intel; x86) &a.ia64.name; Portage de FreeBSD sur les futurs système &intel; IA64 &a.ipfw.name; Discussion technique concernant le développement du nouveau code du coupe-feu &a.isdn.name; Développeurs ISDN + + &a.jail.name; + Discussion au sujet des environnements + &man.jail.8; + + &a.java.name; Développeurs &java; et personnes portant et les JDKs sous FreeBSD &a.kde.name; Portage de KDE et des applications pour KDE &a.lfs.name; Portage de LFS sous FreeBSD &a.libh.name; Le système d'installation et de logiciel pré-compilé de seconde génération &a.mips.name; Portage de &os; sur &mips; &a.mobile.name; Discussions à propos des ordinateurs portables &a.mozilla.name; Portage de Mozilla sous FreeBSD &a.multimedia.name; Applications multimédia &a.newbus.name; Discussions techniques au sujet de l'architecture de bus &a.net.name; Discussion au sujet des réseaux et du code source TCP/IP &a.openoffice.name; Portage d'OpenOffice.org et de &staroffice; sous FreeBSD &a.performance.name; Questions relatives à l'optimisation pour les installations à charge/performances élevées. &a.perl.name; Maintenance des logiciels portés relatifs à perl &a.pf.name; Discussions et questions concernant le système de coupe-feu packet filter &a.platforms.name; Portages sur des plateformes à architecture non &intel; &a.ports.name; Discussion sur le catalogue des logiciels portés &a.ports-bugs.name; Discussion sur les bogues/PRs des logiciels portés &a.ppc.name; Portage de FreeBSD pour le &powerpc; &a.proliant.name; Discussion technique sur l'utilisation de &os; sur les serveurs HP ProLiant &a.python.name; Problèmes concernant l'utilisation de Python sous &os; &a.qa.name; Discussion sur la qualité de FreeBSD, généralement entre deux versions &a.rc.name; Discussion relative au système rc.d et à son développement &a.realtime.name; Développement des extensions temps réel de FreeBSD &a.scsi.name; Sous-système SCSI &a.security.name; Questions concernant la sécurité &a.small.name; Utilisation de FreeBSD dans les applications embarquées (obsolète, utilisez &a.embedded.name; à la place) &a.smp.name; Discussions sur la conception du traitement symétrique multiprocesseurs &a.sparc.name; Portage de FreeBSD sur les systèmes &sparc; &a.standards.name; Conformité de FreeBSD aux normes C99 et &posix; &a.sun4v.name; Portage de &os; sur les systèmes basés sur &ultrasparc; T1 &a.threads.name; Threading sous &os; &a.testing.name; Tests de stabilité et de performance de &os; &a.tokenring.name; Support du Token Ring sous FreeBSD &a.x11.name; Support et maintenance de X11 sous &os; &a.usb.name; Discussion sur le support USB sous &os; &a.vuxml.name; Discussion sur l'infrastructure VuXML &a.x11.name; Maintenance and support of X11 on FreeBSD Liste à accès restreint: les listes suivantes sont pour les assistances plus spécialisées (et exigeantes) et ne sont probablement pas d'intérêt général. C'est aussi une bonne idée d'être d'abord actif sur les listes techniques avant de vous inscrire à une de ces listes limités de sorte que vous compreniez l'étiquette impliquée dans ces communications. Liste Objet &a.hubs.name; Pour ceux qui gèrent des sites miroir (questions d'infrastructure) &a.usergroups.name; Coordination des groupes d'utilisateurs &a.vendors.name; Coordination des fournisseurs des pré-versions &a.www.name; Webmestres de www.FreeBSD.org Résumé de liste: Toutes les listes ci-dessus sont également disponibles sous forme de résumé. Une fois inscrit à une liste, vous pouvez modifier vos options de résumé dans les options de votre compte. Listes CVS lists: Les listes suivantes sont destinées aux personnes intéressées par la lecture des journaux des modifications effectuées sur les différentes partie de l'arborescence des sources. Ce sont des listes à lecture seule et on ne devrait pas y envoyer de messages. Liste Partie de l'arborescence des sources Description de la partie (des sources concernées) &a.cvsall.name; /usr/(CVSROOT|doc|ports|projects|src) Toute modification de l'arborescence (agrégation de l'ensemble des listes CVS) &a.cvs-doc.name; /usr/(doc|www) Toutes les modifications effectuées sur les arborescences doc et www &a.cvs-ports.name; /usr/ports Toutes les modifications effectuées sur l'arborescence des logiciels portés &a.cvs-projects.name; /usr/projects Toutes les modifications effectuées sur l'arborescence des projets &a.cvs-src.name; /usr/src Toutes les modifications effectuées sur l'arborescence des sources Comment s'inscrire Pour s'inscrire à une liste, cliquez sur le nom d'une liste ci-dessus où sur &a.mailman.lists.link; et cliquez ensuite sur la liste qui vous intéresse. La page de la liste devrait contenir toutes les instructions nécessaires à l'inscription. Pour poster réellement sur une liste, envoyez simplement un courrier électronique à l'adresse nom-de-la-liste@FreeBSD.org. Ce courrier sera alors redistribué à l'ensemble des membres de la liste de par le monde. Pour vous désabonner d'une liste, cliquez sur l'URL se trouvant à la fin de chaque message reçu de la liste. Il est également possible d'envoyer un message à nom-de-la-liste-unsubscribe@FreeBSD.org pour vous désabonner. Encore une fois, nous voudrions vous demander de garder aux discussions sur les listes techniques leur caractère technique. Si vous n'êtes intéressés uniquement que par les annonces importantes alors nous vous suggérons de vous inscrire à la liste &a.announce;, dont le trafic n'est qu'occasionnel. Chartes d'utilisation des listes Il y a pour toutes les listes de diffusion FreeBSD des règles de base auxquelles tous leurs utilisateurs doivent se conformer. En cas de non respect de ces règles, et après deux (2) avertissements écrits de la part du “Postmaster” de FreeBSD postmaster@FreeBSD.org, au troisième manquement, le contrevenant sera désabonné de toutes les listes de diffusion de FreeBSD, et ses messages ultérieurs filtrés. Nous regrettons de devoir prendre de telles mesures, mais l'Internet d'aujourd'hui est un milieu relativement hostile, et beaucoup ne se rendent pas compte de la fragilité de certains de ses mécanismes. Règles générales: Le sujet de tout message doit correspondre au sujet traité par la liste à laquelle il est adressé, e.g., si c'est une liste concernant des problèmes techniques alors le contenu de votre message doit être technique. Le bavardage continu et les polémiques ne font que dégrader la qualité de la liste de diffusion pour tous les utilisateurs et ne seront pas tolérés. Pour des discussions libres sans sujet particulier, la &a.chat; est disponible et devrait être utilisée dans ce cas. Aucun message ne doit être adressé à plus de 2 listes de diffusion, et à 2 listes uniquement dans le cas où il y a une nécessité évidente de poster sur les deux listes. Pour la plupart des listes, il y a déjà beaucoup de souscripteurs communs, et mis à part les cas les plus ésotériques (par exemple “-stable & -scsi”), il n'y a pas vraiment de raison de poster sur plus d'une liste à la fois. Si vous recevez un message où apparaissent sur la ligne Cc plusieurs listes de diffusion, vous devez purger cette ligne Cc avant d'y répondre. Vous êtes toujours responsable de vos expéditions croisées, peu importe qui en a été à l'origine. Les attaques personnelles et les insultes (dans le cadre d'une discussion) ne sont pas autorisés, et cela concerne tout autant les utilisateurs que les développeurs. Les manquements grossiers à la “nétiquette”, citer ou reposter des courriers privés quand l'accord n'en a pas été donné et ne le sera pas, par exemple, sont désapprouvés, mais pas particulièrement réprimés. Cependant de tels contenus entrent rarement dans le cadre des règles d'utilisation d'une liste, et entraîneront donc probablement un avertissement (ou une exclusion) pour cette seule raison. La publicité pour des produits ou services sans rapport avec FreeBSD est rigoureusement interdite et entraînera l'exclusion immédiate s'il s'avère que le contrevenant adresse ses publicités par “courrier électronique non sollicité” - spam. Chartes liste par liste: &a.acpi.name; Développement de l'ACPI et de la gestion de l'énergie &a.afs.name; Système de fichiers Andrew - Andrew File System C'est une liste de discussion sur le portage et l'utilisation d'AFS de CMU/Transarc. &a.announce.name; Evénements importants / étapes importantes pour le projet C'est une liste pour les gens intéressés uniquement par les annonces occasionnelles d'évènements FreeBSD importants. Cela inclut les annonces d'instantanés et autres versions. Cela comprend également les annonces de nouvelles fonctionnalités de FreeBSD. Il peut y avoir aussi des appels à volontaires, etc... C'est une liste de faible volume et rigoureusement modérée. &a.arch.name; Discussions concernant l'architecture et l'implémentation C'est une liste pour discuter de l'architecture de FreeBSD. Les messages y seront habituellement de nature technique. Des exemples de sujets qui cadrent avec cette liste sont: Comment revoir le système de compilation pour que plusieurs compilations personnalisées puissent être effectuées en même temps. Que faut-il corriger dans VFS pour que les couches Heidemann fonctionnent. Comment modifier l'interface des pilotes de périphériques pour que la même interface fonctionne proprement sur différents bus et architectures. Comment écrire un pilote réseau. &a.audit.name; Projet d'audit du code source C'est la liste de discussion pour le projet d'audit du code source de FreeBSD. Bien que n'étant à l'origine destinée qu'aux modifications relatives à la sécurité, sa charte a été élargie pour l'examen de toute modification de code. Cette liste est très chargée de correctif, et n'est probablement pas intéressant pour l'utilisateur moyen de FreeBSD. Les discussions sur la sécurité non relatives à une modification particulière du code ont lieu sur freebsd-security. Réciproquement, tous les développeurs sont encouragés à envoyer leur correctifs sur la liste pour examen, tout particulièrement s'ils touchent une partie du système où un bogue peut compromettre l'intégrité du système. &a.binup.name; Projet de mise à jour binaire de FreeBSD Cette liste existe pour discuter du système de mise à jour binaire, ou binup. Problèmes de conception, détails d'implémentation, correctifs, rapports de bogue, rapport d'état, demandes de fonctionnalités, traces des modifications du code, et tout ce qui peut avoir rapport avec binup sont à leur place ici. &a.bluetooth.name; &bluetooth; sous &os; C'est un forum où se rassemble les utilisateurs de la technologie &bluetooth; sous &os;. Problèmes de conception, détails de l'implémentation, rapports de bogues, état du support, demande de fonctionnalités, et tous les sujets en rapport avec &bluetooth; sont les bienvenues. &a.bugbusters.name; Coordination de la gestion des rapports de bogue L'objet de cette liste est de servir de forum de coordination et de discussion entre le “Boguemestre”, ses chasseurs de bogues et toute autre partie intéressée dans la base de données des PRs. Cette liste n'est pas destinée aux discussions sur des bogues spécifiques, correctifs ou PRs. &a.bugs.name; Rapports de bogue C'est la liste pour rapporter les bogues de FreeBSD. Chaque fois que c'est possible, les bogues devraient être soumis en utilisant la commande &man.send-pr.1; ou son interface WEB. &a.chat.name; Sujets non-techniques en rapport avec la communauté FreeBSD Cette liste reçoit le résidu des discussions sur les autres listes: informations sociologiques, et non techniques. Cela va de savoir si Jordan ressemble ou non à un furet de bande dessinée, s'il faut tapez en majuscules, qui boit trop de café, quelle est la meilleure bière, qui brasse de la bière dans sa cave, et ainsi de suite. Les annonces occasionnelles d'événements importants (les prochaines fêtes, mariages, naissances, nouveaux emplois, etc...) peuvent être adressées aux listes techniques, mais doivent ensuite être redirigées sur cette liste. &a.core.name; Equipe de base de FreeBSD C'est une liste interne à l'usage des membres de l'équipe de base. Des messages peuvent y être adressés lorsqu'un sujet en rapport avec FreeBSD demande arbitrage ou examen à haut niveau. &a.current.name; Discussions concernant l'utilisation de &os.current; C'est la liste de diffusion pour les utilisateurs de &os.current;. Elle inclut avertissements au sujet de nouvelles fonctionnalités de -CURRENT qui affecteront les utilisateurs, et les instructions sur ce qu'il faut faire pour rester à jour avec -CURRENT. Tous les utilisateurs de “CURRENT” doivent s'inscrire à cette liste. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.cvsweb.name; Project CVSweb de FreeBSD Discussions techniques au sujet de l'utilisation, du développement et de la maintenance du FreeBSD-CVSweb. &a.doc.name; Project de documentation C'est la liste de discussion sur les questions et projets liés à la rédaction de documentation pour FreeBSD. Les membres de cette liste sont collectivement appelés “Le Projet de Documentation de FreeBSD” - The FreeBSD Documentation Project. C'est une liste ouverte; n'hésitez pas à vous inscrire et à participer! &a.drivers.name; Ecrire des pilotes de périphériques pour &os; C'est une liste pour les discussions techniques au sujet des pilotes de périphériques sous &os;. C'est principalement un lieu où les personnes écrivant les pilotes peuvent poser des questions sur l'écriture de pilotes utilisant les APIs du noyau &os;. &a.eclipse.name; Pour les utilisateurs &os; de l'EDI Eclipse, les outils, les applications clientes et les logiciels portés. L'objectif de cette liste est de fournir un support pour tout que qui concerne le choix, l'installation, l'utilisation, le développement et la maintenance de l'EDI Eclipse, des ses outils, de ses applications clients sous &os; et l'aide au portage de l'EDI Eclipse et de ses greffons sous l'environnement &os;. Le but est également de faciliter les échanges d'information entre les communautés Eclipse et &os; pour un bénéfice mutuel. Bien que cette liste soit principalement destinée à répondre aux demandes des utilisateurs d'Eclipse, elle est également un forum pour ceux qui désirent développer des applications spécifiques à &os; en utilisant le système Eclipse. &a.embedded.name; Utilisation de &os; dans les applications embarquées Cette liste aborde les sujets relatifs à l'utilisation de &os; dans les systèmes embarqués. C'est une liste de diffusion à caractère technique pour laquelle on attend un contenu strictement technique. Dans le cadre de cette liste, nous définissons le terme de système embarqué pour les appareils informatisés qui ne sont pas des stations de travail et qui sont destinés à une application bien particulière et limitée par opposition aux systèmes informatiques classiques. Des exemples de systèmes embarqués, parmi tant d'autres, sont les combinés téléphoniques, les équipements réseau comme les routeurs, les commutateurs et les PABXs, les équipements de mesure à distance, les PDAs, les systèmes de distributeurs, et ainsi de suite. &a.emulation.name; Emulation d'autres systèmes comme Linux/&ms-dos;/&windows; C'est une liste pour les discussions techniques relativent à l'exécution sous &os; de programmes écris pour d'autres systèmes d'exploitation. &a.eol.name; Entre-aide sur les logiciels relatifs à &os; et qui ne sont plus supportés par le projet &os;. Cette liste est destinée aux personnes désirant proposer ou recherchant une aide pour les logiciels relatifs à &os; pour lesquels le projet &os; ne fournir officiellement plus de support (par exemple sous la forme d'avis de sécutité et de correctifs). &a.firewire.name; &firewire; (iLink, IEEE 1394) C'est une liste pour les discussions sur la conception et le développement d'un sous-système &firewire; (IEEE 1394, iLink) sous FreeBSD. Les sujets appropriés incluent spécifiquement les normes, les bus périphériques et leur protocole, l'ensemble d'adaptateurs/cartes/circuits, et l'architecture et l'implémentation de leur propre support. &a.fs.name; Systèmes de fichiers Discussions concernant les systèmes de fichiers FreeBSD. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.geom.name; GEOM Discussions spécifiques à GEOM et aux implémentations relatives. C'est une liste de diffusion technique sur laquelle le contenu doit être strictement technique. &a.gnome.name; GNOME Discussions concernant l'environnement de travail GNOME sous les systèmes FreeBSD. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.ipfw.name; Coupe-feu IP C'est le forum pour les discussions techniques concernant la nouvelle implémentation du code du coupe-feu IP sous FreeBSD. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.ia64.name; Portage de FreeBSD sur IA64 C'est une liste de discussion technique pour les personnes travaillant sur le portage de FreeBSD sur la plate-forme IA-64 d'&intel;, pour soulever les problèmes ou discuter de solutions alternatives. Ceux qui sont intéressés à suivre les discussions techniques sont aussi bienvenus. &a.isdn.name; Communications ISDN C'est la liste pour les personnes discutant du développement du support ISDN de FreeBSD. &a.java.name; Développement &java; C'est la liste pour les personnes discutant du développement d'applications &java; significatives sous FreeBSD et du portage et de la maintenance des &jdk;s. &a.jobs.name; Recherches et offres d'emplois C'est un forum pour poster des offres d'emplois et des curriculum vitae relatifs à &os;, c'est à dire si vous cherchez un emploi concernant &os; ou que vous offrez un emploi impliquant &os;, alors c'est le bon endroit. Ce n'est pas une liste de diffusion pour les problèmes généraux relatifs aux offres et à la recherche d'un emploi puisque des forums adéquats existent déjà par ailleurs. Notez que cette liste, comme les autres listes de diffusion du domaine FreeBSD.org, est diffusée au niveau mondial. Par conséquent, vous devez être précis quant à l'emplacement, les possibilités de travail à distance ou de déplacement. Les messages devraient utiliser uniquement des formats ouverts — de préférence du texte brut, mais le PDF, l'HTML, et quelques autres formats sont acceptables. Les formats propriétaires comme µsoft; Word (.doc) seront rejetés par le serveur de la liste de diffusion. &a.kde.name; KDE Discussions concernant KDE sous les systèmes &os;. C'est une liste de discussion technique sur laquelle le contenu doit rester strictement technique. &a.hackers.name; Discussions techniques C'est le forum pour les discussions techniques au sujet de FreeBSD. C'est la principale liste technique. Elle est destinée à ceux qui travaillent activement à FreeBSD, pour soulever des problèmes et discuter de solutions alternatives. Ceux qui sont intéressés à suivre les discussions techniques sont aussi bienvenus. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.hardware.name; Discussions générales sur le matériel pour FreeBSD Discussions générales sur les types de matériel sur lesquels tourne FreeBSD, les problèmes rencontrés et suggestions sur quoi acheter ou éviter. &a.hubs.name; Sites miroir Annonces et discussions pour les personnes qui font fonctionner les sites miroir FreeBSD. &a.isp.name; Questions concernant les fournisseurs d'accès à Internet C'est la liste pour discuter des sujets qui intéressent les fournisseurs d'accès Internet - Internet Service Providers (ISPs) - qui utilisent FreeBSD. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.openoffice.name; OpenOffice.org Discussions concernant le portage et la maintenance d'OpenOffice.org et &staroffice;. &a.performance.name; Discussions au sujet de l'optimisation et l'accélération de la vitesse d'exécution de &os; Cette liste de diffusion existe pour offrir un endroit aux hackers, administrateurs, et/ou les parties concernées pour discuter de sujets ayant trait aux performances de &os;. Les sujets acceptables comprennent les discussions concernant les installations de &os; qui sont soit sous charge importante, soit présentant des problèmes de performance, ou encore qui repoussent les limites de &os;. Les personnes désirant travailler sur l'amélioration des performances de &os; sont grandement encouragées à s'inscrire à cette liste. C'est une liste hautement technique destinée aux utilisateurs expérimentés de &os;, aux hackers, ou aux administrateurs intéressés par un &os; rapide, robuste, et adaptable. Ce n'est pas une liste de questions-réponses qui remplace la lecture de la documentation, mais c'est un endroit où il est possible d'effectuer des contributions ou de se préoccuper de sujets non-résolus relatifs aux performances. &a.pf.name; Discussions et questions concernant le système de coupe-feu packet filter Discussions concernant le système de coupe-feu packet filter (pf) sous &os;. Les discussions techniques ainsi que les questions des utilisateurs sont les bienvenues. Cette liste est également un endroit où discuter du système de qualité de service ALTQ. &a.platforms.name; Portage sur les plate-formes non &intel; Questions concernant le support d'autres plates-formes, discussions générales et propositions pour les portages sur des plates-formes non &intel;. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.policy.name; Décisions de la politique de l'équipe de base C'est une liste de discussion à faible trafic, et en lecture seule pour les décisions de la politique de l'équipe de base. &a.ports.name; Discussion sur les “logiciels portés” Discussions concernant le ``catalogue des logiciels portés'' de FreeBSD (/usr/ports), propositions de portages, modifications de l'infrastructure du catalogue des logiciels portés et coordination générale. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.proliant.name; Discussion technique sur l'utilisation de &os; sur les serveurs HP ProLiant Cette liste de diffusion doit être utilisée pour les discussions techniques concernant l'utilisation de &os; sur les serveurs HP ProLiant, y compris les discussions sur les pilotes spécifiques à ces machines, les logiciels de gestion, les outils de configuration, et les mises à jour du BIOS. C'est également le premier endroit où discuter des modules hpasmd, hpasmcli, et hpacucli. &a.python.name; Python sous &os; C'est une liste pour les discussions relatives à l'amélioration du support de Python sous &os;. C'est une liste de discussion technique. Elle est destinée aux personnes travaillant sur le portage de Python, de ses modules tiers partie et éléments relatifs à Zope sous &os;. Les personnes intéressées par ces discussions techniques sont également les bienvenues. &a.questions.name; Questions des utilisateurs C'est la liste pour les questions à propos de FreeBSD. Vous ne devriez pas adresser de questions du type “comment faire” aux listes techniques à moins que vous n'estimiez que la question soit vraiment très technique. &a.scsi.name; Sous-système SCSI C'est la liste de diffusion pour ceux qui travaillent sur le sous-système SCSI de FreeBSD. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.security.name; Questions relatives à la sécurité Questions ayant trait à la sécurité des ordinateurs sous FreeBSD (DES, Kerberos, trous de sécurité connus et correctifs, etc...). C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. Notez que ce n'est pas une liste de question-réponse, mais ce type de contribution (la question ET la réponse) à la FAQ est le bienvenue. &a.security-notifications.name; Avis de sécurité Notifications des problèmes de sécurité concernant FreeBSD et correctifs. Ce n'est pas une liste de discussion. La liste de discussion correspondante est FreeBSD-security. &a.small.name; Utilisation de FreeBSD dans les applications embarquées Cette liste discute de sujets relatifs aux installations inhabituellement petites et embarquées de FreeBSD. C'est une liste de discussion technique sur laquelle un contenu strictement technique est attendu. Cette liste est obsolète depuis la création de &a.embedded.name;. &a.stable.name; Discussions concernant l'utilisation de &os.stable; C'est la liste de diffusion pour les utilisateurs de &os.stable;. Elle inclut avertissements au sujet de nouvelles fonctionnalités de -STABLE qui affecteront les utilisateurs, et des instructions sur ce qu'il faut faire pour rester à jour avec -STABLE. Tous les utilisateurs de la branche “STABLE” devraient s'inscrire à cette liste. C'est une liste de discussion technique sur laquelle le contenu doit être strictement technique. &a.standards.name; Conformité aux normes C99 & POSIX C'est un forum pour les discussions techniques concernant la conformité de FreeBSD aux normes C99 et POSIX. &a.usb.name; Discussion sur le support USB sous &os; C'est une liste de diffusion pour les discussions techniques relatives au support de l'USB sous &os; &a.usergroups.name; Coordination des groupes d'utilisateurs C'est la liste pour les coordinateurs des différents groupes locaux d'utilisateurs, destinée à leurs discussions entre eux et avec un membre désigné de l'équipe de base. Cette liste doit se limiter aux comptes-rendus de réunions et à la coordination de projets entre plusieurs groupes d'utilisateurs. &a.vendors.name; Fournisseurs Coordination des discussions entre le projet FreeBSD et les fournisseurs de logiciel ou de matériel pour FreeBSD. Filtrages en vigueur sur les listes de diffusion Les listes de diffusion &os; sont filtrées de plusieurs façons en vue d'éviter la distribution de SPAM, de virus, et tout autre message non-sollicité. Les opérations de filtrage décries dans cette section ne comprennent pas toutes celles utilisées pour protéger les listes re diffusion. Seuls certains types de pièces jointes sont autorisés sur les listes de diffusion. Toutes les pièces jointes avec un format MIME qui ne figurent pas parmi la liste ci-dessous seront retirées avant que le message ne soit distribué sur les listes de diffusion. application/octet-stream application/pdf application/pgp-signature application/x-pkcs7-signature message/rfc822 multipart/alternative multipart/related multipart/signed text/html text/plain text/x-diff text/x-patch Certaines listes de diffusion pourront autoriser des pièces jointes sous d'autres formats MIME, mais la liste précédente devrait être applicable pour la plupart des listes de diffusion. Si un message contient une version HTML et une version texte du contenu du message, la version HTML sera retirée. Si le corps d'un message est uniquement sous forme HTML, il sera converti sous forme texte brut. Forums de discussion En plus de deux forums de discussion spécifiques à FreeBSD, il y en a de nombreux autres où il est question de FreeBSD ou qui sont par ailleurs d'intérêt pour les utilisateurs de FreeBSD. Des archives interrogeables par mots-clés sont disponibles pour certains de ces forums, grâce à Warren Toomey wkt@cs.adfa.edu.au. Forums spécifiques à BSD comp.unix.bsd.freebsd.announce comp.unix.bsd.freebsd.misc de.comp.os.unix.bsd (Allemand) fr.comp.os.bsd (Français) it.comp.os.freebsd (Italien) tw.bbs.comp.386bsd (Chinois) Autres forums &unix; intéressants comp.unix comp.unix.questions comp.unix.admin comp.unix.programmer comp.unix.shell comp.unix.user-friendly comp.security.unix comp.sources.unix comp.unix.advocacy comp.unix.misc comp.bugs.4bsd comp.bugs.4bsd.ucb-fixes comp.unix.bsd Système X Window comp.windows.x.i386unix comp.windows.x comp.windows.x.apps comp.windows.x.announce comp.windows.x.intrinsics comp.windows.x.motif comp.windows.x.pex comp.emulators.ms-windows.wine Serveurs World Wide Web &chap.eresources.www.inc; Adresses électroniques Les groupes d'utilisateurs suivants fournissent à leurs membres des adresses électroniques liées à FreeBSD. Les administrateurs cités se réservent le droit de supprimer l'adresse si elle est à l'origine d'abus. Domaine Possibilités offertes Groupe d'utilisateurs Administrateur ukug.uk.FreeBSD.org Transmission de courrier uniquement freebsd-users@uk.FreeBSD.org Lee Johnston lee@uk.FreeBSD.org Comptes Les groupes d'utilisateurs suivants fournissent des comptes aux personnes supportant le projet FreeBSD. Les administrateurs cités se réservent le droit de supprimer le compte s'il est à l'origine d'abus. Hôte Accès Possibilités offertes Administrateur dogma.freebsd-uk.eu.org Telnet/FTP/SSH Adresse électronique, espace Web, FTP anonyme Lee Johnston lee@uk.FreeBSD.org diff --git a/fr_FR.ISO8859-1/books/handbook/l10n/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/l10n/chapter.sgml index b7d285cdcd..20c0eba331 100644 --- a/fr_FR.ISO8859-1/books/handbook/l10n/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/l10n/chapter.sgml @@ -1,1082 +1,1082 @@ Andrey Chernov Contribution de Michael C. Wu Réécrit par Localisation - Utilisation et configuration de l'I18N/L10N &trans.a.fonvieille; Synopsis FreeBSD est un projet à très large audience avec des utilisateurs et des contributeurs provenant du monde entier. Ce chapitre discute des fonctions d'internationalisation et de localisation de FreeBSD qui permettent aux non-anglophones de travailler. Il y a de nombreux aspects de l'implémentation i18n au niveau système et application, et quand ce sera possible nous renverrons le lecteur à des sources de documentation plus spécifiques. Après la lecture de ce chapitre, vous connaîtrez: Comment les différentes langues et “locales” sont codées sur les systèmes d'exploitation modernes. Comment paramétrer les “locales” pour votre interpréteur de commandes. Comment configurer la console pour d'autres langues que l'anglais. Comment employer le système X Window efficacement avec différentes langues. Où trouver plus d'informations sur l'écriture d'applications conformes à la norme i18n. Avant de lire ce chapitre, vous devrez: Savoir comment installer des logiciels tiers (). Les bases Qu'est-ce que I18N/L10N? internationalisation localisation localisation Les développeurs ont raccourci le terme internationalisation en I18N, en comptant le nombre de lettres entre la première et la dernière du mot internationalisation. L10N utilise le même principe, et provient du mot “localisation”. Combinées ensemble, les méthodes I18N/L10N, les protocoles, et les applications conformes permettent aux utilisateurs d'utiliser la langue de leur choix. Les applications I18N sont programmées en utilisant des kits I18N par dessous les bibliothèques. Cela permet aux développeurs d'écrire un simple fichier et traduire les menus et textes affichés dans chaque langue. Nous encourageons fortement les programmeurs à suivre cette convention. Pourquoi devrais-je employer l'I18N/L10N? I18N/L10N est utilisé à chaque fois que vous désirez afficher, entrer, ou traiter des données dans des langues autres que l'anglais. Quelles sont les langues supportées par l'I18N? I18N et L10N ne sont pas spécifiques à FreeBSD. Actuellement, on peut choisir parmi la plupart des langues principales du monde, y compris mais pas seulement: le chinois, l'allemand, le japonais, le coréen, le français, le russe, le vietnamien et d'autres. Utiliser la localisation Dans toute sa splendeur, I18N n'est pas spécifique à FreeBSD et est une convention. Nous vous encourageons à aider FreeBSD à suivre cette convention. locale Le paramétrage des “locales” est basé sur trois termes principaux: le code de la langue, le code du pays, et le codage des caractères. Les noms de “locales” sont construits à partir de ces trois éléments comme suit: CodeLangue_CodePays.CodageCaractères Codage de la langue et du pays codage des langues codage des pays Afin de localiser un système FreeBSD pour une langue spécifique (ou tout autre &unix; supportant l'I18N), l'utilisateur doit déterminer les codes spécifiques pour le pays et la langue (les codes pays indiquent aux applications quelle variation d'une langue donnée utiliser). De plus, les navigateurs Web, les serveurs SMTP/POP, les serveurs Web... agissent en fonction de ces codes. Ce qui suit est un exemple de codes langue/pays: Code langue/pays Description en_US Anglais - Etats Unis ru_RU Russe pour la Russie zh_TW Chinois traditionnel pour Taiwan Codage des caractères codages des caractères ASCII Certaines langues utilisent les codages non-ASCII sur 8 bits ou codent des caractères sur plusieurs octets, voir &man.multibyte.3; pour plus de détails. Les vieilles applications ne les reconnaissent pas ou les remplacent à tord par des caractères de contrôle. Les applications récentes reconnaissent normalement les caractères 8 bits. En fonction de l'implémentation, les utilisateurs devront peut être compiler une application avec le support des caractères sur 8 bits ou multi-octets, ou la configurer correctement. Afin d'accepter l'usage et le traitement de tels caractères, le catalogue des logiciels portés de FreeBSD fournit pour certains programmes une version dans chaque langue. Référez-vous à la documentation I18N de chaque logiciel porté respectif. Spécifiquement, l'utilisateur doit consulter la documentation de l'application pour décider de comment la configurer correctement ou comment passer les valeurs correctes à la procédure configure, au Makefile ou au compilateur. Quelques éléments à garder à l'esprit sont: Les jeux de caractères au codage simple des caractères de la bibliothèque C (voir &man.multibyte.3;), par exemple ISO8859-1, ISO8859-15, KOI8-R, et CP437. Les codages étendus ou multi-octets, e.g. EUC, Big5. Vous pouvez contrôler la liste des jeux de caractères actuellement actifs dans le registre de l'IANA. &os; utilise à la place un codage des “locales” compatible avec X11. Applications I18N Dans le système de logiciels portés et pré-compilés de FreeBSD, les applications I18N ont été nommées avec I18N dans leur nom pour une identification aisée. Cependant, elles ne supportent pas toujours la langue désirée. Configurer les “locales” Généralement il est suffisant d'exporter le nom de la “locale” grâce à la variable LANG sous l'interpréteur de commandes utilisé lors de la session. Cela pourra être fait dans le fichier ~/.login_conf de l'utilisateur ou le fichier de configuration de l'interpréteur de commandes de l'utilisateur (~/.profile, ~/.bashrc, ~/.cshrc). Il n'est pas nécessaire de configurer toutes les autres variables de localisation comme LC_CTYPE, LC_CTIME. Veuillez consulter la documentation de FreeBSD spécifique à votre langue pour plus d'informations. Vous devrez configurer les deux variables d'environnement suivantes dans vos fichiers de configuration: POSIX LANG pour la famille de fonctions &posix; &man.setlocale.3; MIME MM_CHARSET pour le jeu de caractères MIME des applications Cela comprend la configuration de l'interpréteur de commandes, la configuration spécifique des applications, et celle de X11. Méthodes de configuration des “locales” “locales” classe de session Il existe deux méthodes pour configurer les “locales”, elles sont décrites ci-dessous. La première (celle qui est recommandée) est d'assigner les variables d'environnement dans une classe de session, et la seconde est d'ajouter le paramétrage des variables d'environnement dans les fichiers d'initialisation de l'interpréteur de commandes du système. Méthode utilisant les classes de session utilisateur Cette méthode permet d'assigner une fois pour toute les variables d'environnement nécessaires pour le nom des “locales” et le jeu de caractères MIME et cela pour toutes les sessions au lieu de le faire à chaque nouvelle session par l'intermédiaire de la configuration des fichiers d'initialisation de l'interpréteur de commandes. La configuration au niveau utilisateur peut être faite par l'utilisateur lui-même et la configuration au niveau administrateur demande les privilèges de super-utilisateur. Configuration au niveau utilisateur Voici un exemple minimal d'un fichier .login_conf dans le répertoire personnel d'un utilisateur, fichier qui a les deux variables fixées pour le codage Latin-1: me:\ :charset=ISO-8859-1:\ :lang=de_DE.ISO8859-1: Chinois traditionnelcodage BIG-5 Voici un exemple de fichier .login_conf qui fixe les variables pour le chinois traditionnel dans le codage BIG-5. Notez les nombreuses variables supplémentaires paramétrées parce que certains logiciels ne respectent pas les variables des “locales” correctement pour le chinois, le japonais, et le coréen. #Users who do not wish to use monetary units or time formats #of Taiwan can manually change each variable me:\ :lang=zh_TW.Big5:\ :setenv=LC_ALL=zh_TW.Big:\ :setenv=LC_COLLATE=zh_TW.Big5:\ :setenv=LC_CTYPE=zh_TW.Big5:\ :setenv=LC_MESSAGES=zh_TW.Big5:\ :setenv=LC_MONETARY=zh_TW.Big5:\ :setenv=LC_NUMERIC=zh_TW.Big5:\ :setenv=LC_TIME=zh_TW.Big5:\ :charset=big5:\ :xmodifiers="@im=gcin": #Set gcin as the XIM Input Server Voir la configuration au niveau administrateur et la page de manuel &man.login.conf.5; pour plus de détails. Configuration au niveau administrateur Vérifiez que que la classe de session d'utilisateur dans /etc/login.conf fixe la bonne langue. Soyez sûr que ces paramètres apparaissent dans /etc/login.conf: nom_langue:intitulé_comptes:\ :charset=jeu_caractères_MIME:\ :lang=nom_locale:\ :tc=default: Donc si l'on reste sur notre exemple précédent utilisant le Latin-1, cela donnera quelque chose comme: german:German Users Accounts:\ :charset=ISO-8859-1:\ :lang=de_DE.ISO8859-1:\ :tc=default: Avant de modifier les classes de session des utilisateurs, exécutez la commande suivante: &prompt.root; cap_mkdb /etc/login.conf pour rendre visible à l'intégralité du système la nouvelle configuration du fichier /etc/login.conf. Modifier les classes de session avec &man.vipw.8; vipw Utilisez vipw pour ajouter de nouveaux utilisateurs, et créer une entrée ressemblant à celle-ci: utilisateur:mot_de_passe:1111:11:langue:0:0:Nom d'utilisateur:/home/utilisateur:/bin/sh Modifier les classes de session avec &man.adduser.8; adduser classe de session Utilisez adduser pour ajouter de nouveaux utilisateurs, et faites ce qui suit: Paramétrez defaultclass = langue dans /etc/adduser.conf. Gardez à l'esprit que vous devez dans ce cas entrer une classe par default (défaut) pour tous les utilisateurs d'autres langues. Une variante est d'entrer la langue spécifiée à chaque fois que &man.adduser.8; affiche Enter login class: default []:. Une autre alternative est d'employer ce qui suit pour chaque utilisateur de langue différente que vous désirez ajouter: &prompt.root; adduser -class langue Modifier les classes de session avec &man.pw.8; pw Si vous utilisez &man.pw.8; pour ajouter de nouveaux utilisateurs, appelez la fonction de cette manière: &prompt.root; pw useradd nom_utilisateur -L langue Méthode utilisant les fichiers d'initialisation de l'interpréteur de commandes Cette méthode n'est pas recommandée parce qu'elle demande une configuration différente pour chaque interpréteur de commandes choisi. Utilisez la méthode utilisant les classes de session utilisateur à la place. MIME “locales” Pour ajouter le nom de la “locale” et le jeu de caractère MIME, positionnez juste les deux variables d'environnement comme montré ci-dessous dans les fichiers d'initialisation de l'interpréteur de commandes /etc/profile et/ou /etc/csh.login. Nous utiliserons la langue allemande comme exemple ci-dessous: Dans /etc/profile: LANG=de_DE.ISO8859-1; export LANG MM_CHARSET=ISO-8859-1; export MM_CHARSET Ou dans /etc/csh.login: setenv LANG de_DE.ISO8859-1 setenv MM_CHARSET ISO-8859-1 Alternativement, vous pouvez ajouter les instructions précédentes à /usr/share/skel/dot.profile (similaire à ce qui fut utilisé dans /etc/profile ci-dessus), ou /usr/share/skel/dot.login (similaire à ce qui fut utilisé dans /etc/csh.login ci-dessus). Pour X11: Dans $HOME/.xinitrc: LANG=de_DE.ISO8859-1; export LANG Ou: setenv LANG de_DE.ISO8859-1 En fonction de votre interpréteur de commandes (vois ci-dessus). Configuration de la console Pour tous les ensembles de jeu de caractères utilisés par la bibliothèque C, positionnez les bonnes polices de caractères pour la console dans /etc/rc.conf pour la langue en question avec: font8x16=nom_police font8x14=nom_police font8x8=nom_police Le nom_police provient ici du répertoire /usr/share/syscons/fonts, sans le suffixe .fnt. sysinstall table de clavier table de correspondance d'affichage Vérifiez également que vous avez paramétré les bonnes tables de clavier et de correspondance d'affichage pour votre jeu de caractères C par l'intermédiaire de sysinstall (/stand/sysinstall sous les versions de &os; antérieures à la 5.2). Une fois dans sysinstall, sélectionnez Configure, puis Console. Alternativement, vous pouvez ajouter ce qui suit au fichier /etc/rc.conf: scrnmap=table_correspondance_affichage keymap=nom_table_clavier keychange="numéro_touche_fonction séquence" La table_correspondance_affichage ici provient du répertoire /usr/share/syscons/scrnmaps sans le suffixe .scm. Une table de correspondance d'affichage avec une police de correspondance est généralement nécessaire pour passer de 8 à 9 bits la matrice de caractère d'une carte VGA dans une zone pseudo-graphique, i.e., déplacer les lettres en dehors de cette zone si la police d'écran utilise une colonne de 8 bits. Si vous avez le “daemon” moused activé par défaut grâce à la ligne suivante dans votre /etc/rc.conf: moused_enable="YES" alors lisez les informations sur le curseur de souris dans le paragraphe suivant. moused Par défaut le curseur du pilote &man.syscons.4; de la console occupe la zone d'adresses 0xd0-0xd3 dans le jeu de caractères. Si votre langue utilise cette zone, vous devez déplacer la zone du curseur en dehors. Pour effectuer cela sous &os;, ajoutez la ligne suivante dans /etc/rc.conf: mousechar_start=3 Le nom_table_clavier provient ici du répertoire /usr/share/syscons/keymaps sans le suffixe .kbd. Si vous n'êtes pas sûr de la table de clavier à utiliser, vous pouvez employer &man.kbdmap.1; pour tester la table sans avoir à redémarrer. Le keychange est généralement utilisé pour programmer les touches de fonction pour correspondre avec le type de terminal sélectionné parce que les séquences de touches de fonction ne peuvent être définies dans la table de clavier. Soyez également sûr de configurer le type de console correct dans le fichier /etc/ttys pour toutes les entrées ttyv*. Les correspondances actuellement pré-définies sont: Jeu de caractères Type de terminal ISO8859-1 ou ISO8859-15 cons25l1 ISO8859-2 cons25l2 ISO8859-7 cons25l7 KOI8-R cons25r KOI8-U cons25u CP437 (jeu de caractères VGA par défaut) cons25 US-ASCII cons25w Pour les langues au caractères étendus ou multi-octets, utilisez le logiciel porté adéquat de votre répertoire /usr/ports/langue. Certains logiciels apparaissent comme utilisant la console alors que le système lui voit un vtty série, par conséquent vous devez réserver suffisamment de vttys pour X11 et la console pseudo-série. Voici une liste partielle des applications pour utiliser d'autres langues sous la console: Langue Emplacement Chinois traditionnel (BIG-5) chinese/big5con Japonais japanese/kon2-16dot ou japanese/mule_freewnn Coréen korean/han Configuration d'X11 Bien qu'X11 ne fasse pas partie du projet FreeBSD, nous avons inclus quelques éléments d'informations ici pour les utilisateurs de FreeBSD. Pour plus de détails, référez-vous au site Web d'&xorg; ou à celui du serveur X11 que vous utilisez. Dans le fichier ~/.Xresources, vous pouvez en plus adapter les paramètres I18N spécifiques des applications (e.g., polices de caractères, menus, etc...). Affichage des polices de caractères serveur de polices de caractères True Type pour X11 Installez le serveur &xorg; (x11-servers/xorg-server) ou le serveur &xfree86; (x11-servers/XFree86-4-Server), puis installez les polices de caractères &truetype; de la langue concernée. Un paramétrage correct des “locales” devrait vous permettre de visualiser les menus dans la langue que vous avez choisie etc. Saisie de caractères non-anglais X11 Input Method (XIM) Le protocole “X11 Input Method” - méthode de saisie pour X11 (XIM) est un nouveau standard pour tous les clients X11. Toutes les applications X11 devraient être écrites en tant que clients XIM qui reçoivent les entrées de serveurs de saisie XIM. Il existe différents serveurs XIM disponibles pour différentes langues. Configuration de l'imprimante Certains jeux de caractères de la bibliothèque C sont généralement codés en dur dans les imprimantes. Les jeux de caractères étendus ou multi-octets demandent une configuration spéciale et nous recommandons d'utiliser apsfilter. Vous pouvez également convertir le document en format &postscript; ou PDF en utilisant des convertisseurs spécifiques à la langue. Noyau et systèmes de fichiers Le système de fichiers rapide de FreeBSD (FFS) est complètement sur 8 bits, et peut donc être utilisé avec n'importe quel jeu de caractères de la bibliothèque C (voir &man.multibyte.3;), mais il n'y a aucun jeu de caractères de stocké dans le système de fichiers; i.e., c'est du 8 bits brut et le système ne sait rien sur l'ordre du codage. Officiellement, le FFS ne supporte encore aucun jeu de caractères étendus ou multi-octets. Cependant, certains jeux de caractères étendus ou multi-octets disposent de correctifs indépendants pour FFS activant un tel support. Ce sont seulement des solutions temporaires non portables ou des “bidouilles” et nous avons décidé de ne pas les inclure dans l'arborescence des sources. Référez-vous aux sites Internet des langues respectives pour plus d'informations et pour les correctifs. DOS Unicode Le support FreeBSD du système fichiers &ms-dos; a la capacité paramétrable de faire la conversion entre jeux de caractères &ms-dos;, Unicode et les jeux de caractères choisis pour le système de fichiers FreeBSD. Voir la page de manuel &man.mount.msdosfs.8; pour plus de détails. Compiler des programmes I18N De nombreux logiciels ont été portés pour FreeBSD avec le support I18N. Certains d'entre eux sont identifiés avec -I18N dans le nom du logiciel porté. Ces derniers et beaucoup d'autres programmes intègrent le support I18N et ne nécessitent aucune considération spéciale. MySQL Cependant, certaines applications comme MySQL nécessitent d'avoir un fichier Makefile configuré avec le jeu de caractères spécifiques. Ceci est en général fait dans le Makefile ou effectué en passant une valeur à configure dans les sources. Localiser FreeBSD pour des langues spécifiques Andrey Chernov Contribution originelle de Russe (codage KOI8-R) localisation russe Pour plus d'informations sur le codage KOI8-R, consultez les Références KOI8-R (Jeu de caractères russes pour Internet). Configuration des “locales” Ajoutez les lignes suivantes dans votre fichier ~/.login_conf: me:My Account:\ :charset=KOI8-R:\ :lang=ru_RU.KOI8-R: Voir plus haut dans ce chapitre pour des exemples de configuration des “locales”. Configuration de la console Ajoutez la ligne suivante à votre fichier /etc/rc.conf: mousechar_start=3 Ajoutez également les paramétres suivants dans /etc/rc.conf: keymap="ru.koi8-r" scrnmap="koi8-r2cp866" font8x16="cp866b-8x16" font8x14="cp866-8x14" font8x8="cp866-8x8" Pour chaque entrée ttyv* dans /etc/ttys, utilisez cons25r comme type de terminal. Voir plus haut dans ce chapitre pour des exemples de configuration de la console. Configuration de l'imprimante imprimantes Comme la plupart des imprimantes avec un jeu de caractères russes ont un “code page” matériel CP866, un filtre de sortie spécial pour la conversion du KOI8-R vers le CP866 est nécessaire. Un tel filtre est installé par défaut sous /usr/libexec/lpr/ru/koi2alt. Une entrée de /etc/printcap pour imprimante russe devra ressembler à: lp|Russian local line printer:\ :sh:of=/usr/libexec/lpr/ru/koi2alt:\ :lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs: Consultez la page de manuel &man.printcap.5; pour plus de détails. Système de fichiers &ms-dos; et noms de fichiers russes L'exemple suivant d'entrée du fichier &man.fstab.5; active le support des noms de fichiers russes sur les systèmes de fichiers &ms-dos; montés: /dev/ad0s2 /dos/c msdos rw,-Wkoi2dos,-Lru_RU.KOI8-R 0 0 L'option la “locale” utilisée, et fixe la table de conversion de caractères. Pour utiliser l'option assurez-vous de monter /usr avant la partition &ms-dos;, car en effet les tables de conversion sont situées dans le répertoire /usr/libdata/msdosfs. Pour plus d'informations, consultez la page de manuel &man.mount.msdosfs.8;. Configuration de X11 Effectuez tout d'abord la configuration des “locales” comme décrit plus haut dans ce chapitre. Si vous utilisez &xorg;, installez le paquetage x11-fonts/xorg-fonts-cyrillic. Contrôlez la section "Files" de votre fichier /etc/X11/xorg.conf. Les lignes suivantes doivent être ajoutées avant toute autre entrée FontPath: FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/misc" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/100dpi" Si vous utilisez un mode vidéo haute résolution, intervertissez les lignes 75 dpi et 100 dpi. Consultez le catalogue des logiciels portés pour plus de fontes cyrilliques. Pour mettre en service un clavier russe, ajoutez ce qui suit à la section "Keyboard" de votre fichier xorg.conf: Option "XkbLayout" "us,ru" Option "XkbOptions" "grp:toggle" Vérifiez également que XkbDisable est désactivé (mis en commentaire). Pour l'option grp:caps_toggle le passage de russe à latin se fera par l'intermédiaire de Right Alt, pour grp:ctrl_shift_toggle, le passage se fera à l'aide de la séquence CtrlShift. L'ancienne fonctionnalitée de la touche CapsLock est toujours disponible via ShiftCapsLock (en mode latin uniquement). Pour l'option grp:toggle le passage du russe au latin se fera par l'intermédiaire de la touche Right Alt. L'option grp:caps_toggle ne fonctionne pas sous &xorg; pour une raison inconnue. Si vous disposez de touches “&windows;” sur votre clavier, et que vous constatez que certaines touches non-alphabétiques ne sont pas appariées correctement en mode russe, ajoutez la ligne suivante à votre fichier xorg.conf: Option "XkbVariant" ",winkeys" Le clavier russe XKB peut ne pas fonctionner avec des applications non localisées. localisées. Pour être un minimum localisée, une application devrait appeler la fonction XtSetLanguageProc (NULL, NULL, NULL); assez tôt dans le programme. Consulter KOI8-R pour X Window pour plus d'instructions sur la localisation des applications pour X11. Localisation du chinois traditionnel pour Taiwan localisation chinois traditionnel Le projet FreeBSD taiwanais dispose d'un guide sur FreeBSD en chinois à l'adresse utilisant de nombreuses applications du répertoire chinese du catalogue des logiciels portés. Le rédacteur du guide sur &os; en chinois est Shen Chuan-Hsing statue@freebsd.sinica.edu.tw. Chuan-Hsing Shen statue@freebsd.sinica.edu.tw a créé la collection FreeBSD chinoise (CFC) de logiciels en utilisant le document zh-L10N-tut taiwanais. Les logiciels pré-compilés et les fichiers de procédures sont disponibles à l'adresse . Localisation pour la langue allemande (valable également pour tous les langues respectant le standard ISO 8859-1) localisation allemand Slaven Rezic eserte@cs.tu-berlin.de a rédigé un guide sur l'utilisation des “umlauts” sur une machine FreeBSD. Le guide est écrit en allemand et est disponible sur . + url="http://user.cs.tu-berlin.de/~eserte/FreeBSD/doc/umlaute/umlaute.html">. Localisation pour le japonais et le coréen localisation japonaise localisation coréenne Pour le japonais, référez-vous à , et pour le coréen à . Documentation FreeBSD dans d'autres langues que l'anglais Certains contributeurs à FreeBSD ont traduit des parties de la documentation FreeBSD dans d'autres langues. Les traductions sont disponibles grâce à des liens sur le site principal ou dans /usr/share/doc. diff --git a/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml index 6ef43a7618..15e543a235 100644 --- a/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml @@ -1,1182 +1,1181 @@ Neil Blakey-Milner Contribution de Gestion des comptes et des utilisateurs &trans.a.fonvieille; Synopsis FreeBSD permet à de nombreux utilisateurs d'utiliser l'ordinateur en même temps. Evidemment, seul un de ces utilisateurs peut être assis devant l'écran et le clavier à un instant donné Bon, à moins que vous ne connectiez de multiples terminaux, mais nous laisserons cela pour le . , mais n'importe quel nombre d'utilisateurs peut ouvrir une session par l'intermédiaire du réseau pour mener à bien son travail. Pour utiliser le système chaque utilisateur doit posséder un compte. Après la lecture de ce chapitre, vous connaîtrez: Les différences entre les divers comptes utilisateur sur un système FreeBSD. Comment ajouter des comptes utilisateur. Comment supprimer des comptes utilisateur. Comment modifier les paramètres d'un compte, comme le nom complet de l'utilisateur, ou l'interpréteur de commandes préféré. Comment fixer des limites par compte, pour contrôler les ressources comme la mémoire et le temps CPU auxquels les comptes et les groupes de comptes sont autorisés à accéder. Comment utiliser les groupes pour rendre la gestion de comptes plus aisée. Avant de lire ce chapitre, vous devrez: Comprendre les fondements d'&unix; et de FreeBSD (). Introduction Tout accès au système est effectué par l'intermédiaire de comptes, et tous les processus sont exécutés par des utilisateurs, la gestion des comptes et des utilisateurs est capitale sur les systèmes FreeBSD. Chaque compte sur un système FreeBSD est associé avec un certain nombre d'informations utilisé pour identifier le compte. “User name” - nom d'utilisateur Le nom d'utilisateur comme il sera tapé à l'invite login:. Les noms d'utilisateur doivent être uniques sur le système; vous ne pouvez pas avoir deux utilisateurs avec le même nom d'utilisateur. Il y a un certain nombre de règles pour la création de noms d'utilisateur valides, documentées dans &man.passwd.5;; vous utiliserez généralement des noms d'utilisateurs de huit lettres ou moins et en minuscules. “Password” - mot de passe Chaque compte est associé à un mot de passe. Le mot de passe peut être vide, dans ce cas aucun mot de passe ne sera requis pour accéder au système. Ceci est une très mauvaise idée; chaque compte devrait avoir un mot de passe. “User ID (UID)” - identifiant utilisateur L'UID est un nombre compris entre 0 et 65535 Il est possible d'utiliser pour les UID/GIDs tout nombre inférieur à 4294967295, mais de telles valeurs peuvent être à l'origine de sérieux problèmes avec des logiciels qui font des suppositions sur la valeur des identifiants. , utilisé pour identifier de façon unique un utilisateur sur le système. Au niveau interne, FreeBSD utilise l'UID pour identifier les utilisateurs—toute commande qui vous permet de spécifier un utilisateur convertira le nom d'utilisateur en son UID avant de le traiter. Cela signifie que vous pouvez avoir plusieurs comptes avec des noms d'utilisateurs différents mais le même UID. En ce qui concerne FreeBSD ces comptes ne sont qu'un seul et unique utilisateur. Il est peu probable que vous ayez jamais à faire cela. “Group ID (GID)” - identifiant de groupe Le GID est un nombre compris entre 0 et 65535, utilisé pour identifier de façon unique le groupe principal auquel appartient l'utilisateur. Les groupes sont un mécanisme pour contrôler l'accès aux ressources qui est basé sur le GID de l'utilisateur plutôt que sur son UID. Un utilisateur peut également appartenir à plus d'un groupe. “Login class” - classe de session Les classes de session sont une extension du mécanisme de groupe qui apporte une flexibilité supplémentaire quand on adapte le système aux différents utilisateurs. “Password change time” - durée de vie d'un mot de passe Par défaut FreeBSD n'oblige pas les utilisateurs à changer leur mot de passe régulièrement. Vous pouvez forcer cela en fonction de l'utilisateur, en obligeant certains ou tous les utilisateurs à changer leur mot de passe après qu'une certaine période de temps se soit écoulée. “Account expiry time” - date d'expiration d'un compte Par défaut FreeBSD ne désactive pas de comptes après une certaine période. Si vous créez des comptes qui auront une durée de vie limitée, par exemple, dans une école où il existe des comptes pour les étudiants, alors vous pouvez spécifier la date d'expiration des comptes. Après la durée d'expiration écoulée le compte ne pourra plus être utilisé pour ouvrir de session sur le système, bien que les répertoires et les fichiers attachés au compte seront conservés. “User's full name” - nom complet d'utilisateur Le nom d'utilisateur identifie uniquement le compte sur FreeBSD, mais ne reflète pas nécessairement le nom réel de l'utilisateur. Cette information peut être associée avec le compte. “Home directory” - répertoire utilisateur Le répertoire utilisateur est le chemin complet vers un répertoire sur le système dans lequel se retrouve l'utilisateur quand il ouvre une session sur le système. Une convention commune est de mettre tous les répertoires d'utilisateurs sous /home/username ou /usr/home/username. L'utilisateur pourra stocker ses fichiers personnel dans son répertoire utilisateur et dans tout sous-répertoire qu'il pourra y créer. “User shell” - interpréteur de commandes de l'utilisateur L'interpréteur de commandes fournit aux utilisateurs l'environnement par défaut pour communiquer avec le système. Il existe plusieurs différents types d'interpréteurs de commandes, et les utilisateurs expérimentés auront leur préférence, qui peut se refléter dans le paramétrage de leur compte. Il y a trois principales sortes de comptes: le super-utilisateur, les utilisateurs système, et les comptes utilisateur. Le compte super-utilisateur, normalement appelé root, est utilisé pour gérer le système sans aucune limitation de privilèges. Les utilisateurs système exécutent des services. Et enfin, les comptes utilisateur sont utilisés par de véritables utilisateurs, qui ouvrent des sessions, lisent leur courrier électronique, et ainsi de suite. Le compte super-utilisateur comptes super-utilisateur (root) Le compte super-utilisateur, habituellement appelé root, est préconfiguré pour simplifier l'administration système, et ne devrait pas être utilisé pour des tâches quotidiennes comme l'envoi et la réception de courrier électronique, l'exploration du système, ou la programmation. Cela parce que le super-utilisateur, à la différence des comptes utilisateurs ordinaires, peut agir sans aucune limite, et une mauvaise utilisation du compte super-utilisateur peut être à l'origine de résultats catastrophiques. On ne peut pas endommager par erreur le système avec un compte utilisateur, il est donc généralement préférable d'utiliser des comptes utilisateur ordinaires chaque fois que c'est possible, à moins d'avoir particulièrement besoin de droits supplémentaires. Vous devriez toujours vérifier et revérifier les commandes que vous tapez en tant que super-utilisateur, parce qu'un espace en trop ou un caractère manquant peuvent signifier la perte définitive de données. Donc, la première chose que vous devriez faire, après la lecture de ce chapitre, est de vous créer un compte utilisateur sans privilèges si vous n'en avez pas déjà. Cela s'applique aussi bien à une machine multi-utilisateurs qu'à une machine mono-utilisateur. Plus loin dans ce chapitre, nous expliquerons comment créer de nouveaux comptes, et comment passer d'un compte utilisateur ordinaire au compte du super-utilisateur. Comptes système comptes système Les utilisateurs système sont ceux utilisés pour exécuter des services comme le DNS, le courrier électronique, les serveurs web, et ainsi de suite. La raison de cela est la sécurité; si tous les services s'exécutaient avec les droits du super-utilisateur, ils pourraient agir sans aucune restriction. comptes daemon comptes operator Des exemples d'utilisateurs système sont daemon, operator, bind (pour le serveur de noms de domaine), news, et www. comptes nobody nobody est l'utilisateur sans privilèges générique du système. Cependant, il est important de garder à l'esprit que plus grand est le nombre de services utilisant nobody, plus grand sera le nombre de fichiers et de processus associés à cet utilisateur, et par conséquent plus grand sera le nombre de privilèges de cet utilisateur. Comptes utilisateur comptes utilisateur Les comptes utilisateur sont le principal moyen pour les véritables utilisateurs d'accéder au système, ces comptes isolent l'utilisateur du reste de l'environnement, empêchant les utilisateurs d'endommager le système et ou les comptes d'autres utilisateurs, tout en leur permettant de personnaliser leur environnement sans incidence pour les autres utilisateurs. Chaque personne accédant à votre système ne devrait posséder que son propre et unique compte. Cela vous permet de savoir qui fait quoi, empêche un utilisateur de désorganiser l'environnement d'un autre ou de lire du courrier électronique qui ne lui est pas destiné, et ainsi de suite. Chaque utilisateur peut configurer son propre environnement en fonction de ses besoins, pour utiliser d'autres interpréteurs de commandes, éditeurs, raccourcis de clavier, et langues. Modifier des comptes comptes modification Il existe une variété de différentes commandes disponibles dans l'environnement &unix; pour manipuler les comptes utilisateur. Les commandes les plus communes sont récapitulées ci-dessous, suivis par des exemples détaillés de leur utilisation. Commande Résumé &man.adduser.8; L'application en ligne de commande recommandée pour ajouter de nouveaux utilisateurs. &man.rmuser.8; L'application en ligne de commande recommandée pour supprimer des utilisateurs. &man.chpass.1; Un outil flexible pour modifier les informations de la base de données utilisateur. &man.passwd.1; L'outil simple en ligne de commande pour changer les mots de passe utilisateur. &man.pw.8; Un puissant et flexible outil pour modifier tous les aspects des comptes utilisateurs. <command>adduser</command> compte création adduser /usr/share/skel répertoire de squelettes &man.adduser.8; est un programme simple pour ajouter de nouveaux utilisateurs. Il crée les entrées dans les fichiers système passwd et group. Il crée également le répertoire utilisateur pour le nouvel utilisateur, y copie les fichiers de configuration par défaut (“dotfiles”) à partir de /usr/share/skel, et peut éventuellement envoyer à l'utilisateur un courrier électronique de bienvenue. Ajouter un utilisateur sous &os; &prompt.root; adduser Username: jru Full name: J. Random User Uid (Leave empty for default): Login group [jru]: Login group is jru. Invite jru into other groups? []: wheel Login class [default]: Shell (sh csh tcsh zsh nologin) [sh]: zsh Home directory [/home/jru]: Use password-based authentication? [yes]: Use an empty password? (yes/no) [no]: Use a random password? (yes/no) [no]: Enter password: Enter password again: Lock out the account after creation? [no]: Username : jru Password : **** Full Name : J. Random User Uid : 1001 Class : Groups : jru wheel Home : /home/jru Shell : /usr/local/bin/zsh Locked : no OK? (yes/no): yes adduser: INFO: Successfully added (jru) to the user database. Add another user? (yes/no): no Goodbye! &prompt.root; Le mot de passe que vous tapez n'apparaît pas à l'écran, et il n'y a pas non plus d'astérisques affichés. Assurez-vous de ne pas vous tromper dans le mot de passe. <command>rmuser</command> rmuser comptes suppression Vous pouvez utiliser &man.rmuser.8; pour supprimer complètement un utilisateur du système. &man.rmuser.8; effectue les opérations suivantes: Supprime les entrées appartenant à l'utilisateur de la &man.crontab.1; (s'il y en a). Supprime les tâches &man.at.1; appartenant à l'utilisateur. Tue tous les processus appartenant à l'utilisateur. Supprime l'utilisateur du fichier de mots de passe local. Supprime le répertoire l'utilisateur (s'il lui appartient). Supprime les courriers électroniques en attente pour l'utilisateur dans /var/mail. Supprime tous les fichiers temporaires appartenant à l'utilisateur des zones de stockages temporaires comme /tmp. Et enfin, supprime l'utilisateur de tous les groupes auxquels il appartient dans /etc/group. Si un groupe est vide de ce fait et que le nom du groupe est le même que celui de l'utilisateur, le groupe est supprimé; c'est la réciproque de la création par &man.adduser.8; d'un groupe propre pour chaque utilisateur. &man.rmuser.8; ne peut pas être employé pour supprimer des comptes super-utilisateur, car cela entraînerait presque toujours des destructions massives. Par défaut, la commande travaille en mode interactif, pour garantir que vous soyez sûr de ce que vous faites. Suppression interactive de compte avec <command>rmuser</command> &prompt.root; rmuser jru Matching password entry: jru:*:1001:1001::0:0:J. Random User:/home/jru:/usr/local/bin/zsh Is this the entry you wish to remove? y Remove user's home directory (/home/jru)? y Updating password file, updating databases, done. Updating group file: trusted (removing group jru -- personal group is empty) done. Removing user's incoming mail file /var/mail/jru: done. Removing files belonging to jru from /tmp: done. Removing files belonging to jru from /var/tmp: done. Removing files belonging to jru from /var/tmp/vi.recover: done. &prompt.root; <command>chpass</command> chpass &man.chpass.1; modifie les informations de la base de données des utilisateurs comme les mots de passe, les interpréteurs de commandes, et les informations personnelles. Seuls les administrateurs système, comme le super-utilisateur, peuvent modifier les informations concernant les autres utilisateurs et les mots de passe à l'aide de &man.chpass.1;. Utilisé sans options, en dehors du nom facultatif de l'utilisateur, &man.chpass.1; ouvre un éditeur affichant les informations de l'utilisateur. Quand l'utilisateur quitte l'éditeur, la base de données utilisateur est mise à jour avec les nouvelles informations. On vous demandera votre mot de passe en quittant l'éditeur si vous n'êtes pas le super-utilisateur. <command>chpass</command> interactif par le super-utilisateur #Changing user database information for jru. Login: jru Password: * Uid [#]: 1001 Gid [# or name]: 1001 Change [month day year]: Expire [month day year]: Class: Home directory: /home/jru Shell: /usr/local/bin/zsh Full Name: J. Random User Office Location: Office Phone: Home Phone: Other information: Un utilisateur ordinaire ne peut modifier qu'une partie de ces informations, et seulement celles qui le concernent. <command>chpass</command> interactif par un utilisateur ordinaire #Changing user database information for jru. Shell: /usr/local/bin/zsh Full Name: J. Random User Office Location: Office Phone: Home Phone: Other information: &man.chfn.1; et &man.chsh.1; sont juste des liens vers &man.chpass.1;, comme le sont &man.ypchpass.1;, &man.ypchfn.1;, et &man.ypchsh.1;. NIS est supporté automatiquement, aussi spécifier yp avant la commande n'est pas nécessaire. Si cela vous semble confus, ne vous inquiétez pas, NIS sera abordé dans le chapitre . <command>passwd</command> passwd comptes modifier le mot de passe &man.passwd.1; est la méthode habituelle pour modifier son mot de passe, ou celui d'un autre utilisateur si vous êtes le super-utilisateur. Pour prévenir des modifications accidentelles ou non autorisées, le mot de passe original doit être entré avant de pouvoir fixer un nouveau mot de passe. Modifier votre mot de passe &prompt.user; passwd Changing local password for jru. Old password: New password: Retype new password: passwd: updating the database... passwd: done Modifier le mot de passe d'un autre utilisateur en tant que super-utilisateur &prompt.root; passwd jru Changing local password for jru. New password: Retype new password: passwd: updating the database... passwd: done Comme pour &man.chpass.1;, &man.yppasswd.1; est juste un lien vers &man.passwd.1;, donc NIS fonctionnera avec l'une des deux commandes. <command>pw</command> pw &man.pw.8; est un utilitaire en ligne de commande pour créer, supprimer, modifier, et lister utilisateurs et groupes. Il fonctionne comme une interface aux fichiers d'utilisateurs et de groupe. &man.pw.8; possède un ensemble puissant d'options qui le rende adapté à une utilisation dans des procédures, mais les nouveaux utilisateurs pourront le trouver plus compliqué que les autres commandes présentées ici. Mettre en place des restrictions pour les utilisateurs restrictions pour les utilisateurs comptes restriction Si vous avez plusieurs utilisateurs sur votre système, la possibilité de limiter leur utilisation du système peut venir à l'esprit. FreeBSD fournit plusieurs méthodes à l'administrateur système pour limiter la quantité de ressources système qu'un utilisateur peut utiliser. Ces limites sont généralement divisées en deux parties: les quotas disque, et les autres limites de ressource. quotas restrictions pour les utilisateurs quotas quotas disque Les quotas limitent l'utilisation des disques par les utilisateurs, et ils fournissent un moyen de vérifier rapidement cette utilisation sans avoir à faire des calculs à chaque fois. Les quotas sont abordés dans la . Les autres limites de ressource comprennent les moyens de limiter l'utilisation du CPU, de la mémoire, et les autres ressources qu'un utilisateur peut consommer. Elles sont définies en employant des classes de session et sont abordées ici. /etc/login.conf Les classes de session sont définies dans /etc/login.conf. La sémantique précise sort du cadre de cette section, mais est décrite en détail dans la page de manuel &man.login.conf.5;. Il est suffisant de dire que chaque utilisateur est assigné à une classe (default par défaut), et que chaque classe dispose d'un ensemble de capacités associées. La forme utilisée pour ces capacités est une paire nom=valeurnom est un identifiant connu et valeur est une chaîne arbitraire dépendante du nom. Paramétrer des classes et des capacités est plutôt direct et également décrit dans &man.login.conf.5;. Le système ne lit normalement pas directement le fichier /etc/login.conf, mais plutôt la base de données /etc/login.conf.db qui fournit plus rapidement les réponses au système. Pour générer /etc/login.conf.db à partir du fichier /etc/login.conf, exécutez la commande suivante: &prompt.root; cap_mkdb /etc/login.conf Les limites de ressource sont différentes des capacités standards des classes en deux points. Premièrement, pour chaque limite, il existe une limite douce (actuelle) et limite dure. Une limite douce peut être ajustée par l'utilisateur ou une application, mais jamais dépasser la limite dure. Cette dernière peut être abaissée par l'utilisateur, mais jamais augmentée. Deuxièmement, la plupart des limites de ressource s'applique par processus à un utilisateur spécifique, et non pas à l'utilisateur dans sa totalité. Notez, cependant, que ces différences sont exigées par la manipulation spécifique des limites, et non pas par l'implémentation du système des capacités des classes de session utilisateur (i.e., elles ne sont vraiment pas un cas particulier des capacités des classes de session). Sans plus attendre, ci-dessous sont présentées les limites de ressource les plus souvent utilisées (le reste, avec les autres capacités des classes de session, peut être trouvé dans &man.login.conf.5;). coredumpsize coredumpsize restrictions pour les utilisateurs coredumpsize La limite sur la taille du fichier core généré par un programme est, pour d'évidentes raisons, subordonnée aux autres limites sur l'utilisation du disque (e.g., filesize, ou les quotas de disque). Néanmoins, elle est souvent employée comme méthode moins sévère pour contrôler la consommation d'espace disque: puisque les utilisateurs ne génèrent pas de fichier core eux-mêmes, et souvent ne les suppriment pas, paramétrer cela peut leur éviter de manquer d'espace disque si un programme important (e.g., emacs) plante. cputime cputime restrictions pour les utilisateurs cputime C'est la quantité maximale de temps CPU qu'un processus d'un utilisateur peut consommer. Les processus - la dépassant seront tués par le noyau. + la dépassant seront tués par le noyau. C'est une limite sur le temps CPU consommé, non sur le pourcentage comme affiché par certains champs de &man.top.1; et &man.ps.1;. Une limite sur ce dernier est, au moment de l'écriture de ces lignes, impossible, et serait plutôt inutile: un compilateur—probablement une tâche légitime—peut aisément utiliser presque 100% du CPU pendant un certain temps. - filesize filesize restrictions pour les utilisateurs filesize C'est la taille maximale du plus gros fichier qu'un utilisateur peut posséder. Contrairement aux quotas, cette limite ne s'applique qu'aux fichiers individuellement, et non pas sur l'ensemble lui-même de tous les fichiers que possède un utilisateur. maxproc maxproc restrictions pour les utilisateurs maxproc C'est le nombre maximal de processus que peut exécuter un utilisateur en même temps. Ceci inclut les processus de premier plan et de tâche de fond. Pour d'évidentes raisons, il ne doit pas être plus grand que les limites du système spécifiées par la variable &man.sysctl.8; kern.maxproc. Notez en outre qu'une valeur trop basse peut gêner la productivité de l'utilisateur: il est souvent utile d'ouvrir plusieurs sessions à la fois ou d'exécuter des opérations sous forme de “pipeline”. Certaines tâches, comme compiler un gros programme, engendrent également de multiples processus (e.g., &man.make.1;, &man.cc.1;, et autres préprocesseurs). memorylocked memorylocked restrictions pour les utilisateurs memorylocked C'est la quantité maximale de mémoire qu'un processus peut avoir demandé de verrouiller en mémoire principale (e.g., voir &man.mlock.2;). Certains programmes système critiques, comme &man.amd.8;, sont verrouillés en mémoire principale de sorte qu'en cas de dépassement de la mémoire de pagination, ils ne contribuent pas aux ennuis du système. memoryuse memoryuse restrictions pour les utilisateurs memoryuse C'est la quantité maximale de mémoire qu'un processus peut consommer à un instant donné. Cela inclus la mémoire principale et celle de pagination. Ce n'est pas le remède miracle pour restreindre la consommation de mémoire, mais c'est un bon début. openfiles openfiles restrictions pour les utilisateurs openfiles C'est le nombre maximal de fichiers qu'un processus peut avoir ouvert. Sous FreeBSD, des fichiers sont également employés pour représenter les sockets et les canaux IPC, par conséquent faites attention à ne fixer une valeur trop basse. La limite générale du système pour cela est définie par la variable &man.sysctl.8; kern.maxfiles. sbsize sbsize restrictions pour les utilisateurs sbsize C'est une limite sur la quantité de mémoire réseau, et donc de “mbufs”, qu'un utilisateur peut consommer. Ceci est à l'origine une réponse à une vielle attaque par refus de service en créant de nombreuses sockets, mais peut être généralement employée pour limiter les communications réseau. stacksize stacksize restrictions pour les utilisateurs stacksize C'est la taille maximale de la pile d'un processus. Seule, cela n'est pas suffisant pour limiter la quantité de mémoire que peut utiliser un programme, par conséquent, cette limite devra être utilisée en même temps que d'autres limitations. Il y a quelques éléments à se rappeler quand on fixe des limites de ressource. Quelques astuces générales, suggestions, et commentaires divers: Les processus lancés au démarrage du système par /etc/rc sont assignés à la classe daemon. Bien que le fichier /etc/login.conf qui est fourni avec le système est une bonne source de valeurs raisonnables pour la plupart des limites, seul vous, l'administrateur, peut savoir ce qui est approprié à votre système. Fixer une limite trop haute peut laisser la porte ouverte aux abus, alors qu'une limite trop basse peut être un frein à la productivité. Les utilisateurs du système X Window (X11) devraient se voir allouer plus de ressources que les autres utilisateurs. X11 par lui-même utilise beaucoup de ressources, mais il encourage également les utilisateurs à exécuter plus de programmes simultanément. Souvenez-vous que de nombreuses limites ne s'appliquent qu'aux processus individuels, et non pas à l'utilisateur globalement. Par exemple, paramétrer openfiles à 50 signifie que chaque processus que l'utilisateur exécute pourra ouvrir jusqu'à 50 fichiers. Ainsi, la quantité totale de fichiers qu'un utilisateur peut ouvrir est la valeur openfiles multipliée par la valeur maxproc. Ceci s'applique également à la consommation de mémoire. Pour de plus amples informations sur les limites et les classes de session et les capacités en général, veuillez consulter les pages de manuel appropriées: &man.cap.mkdb.1;, &man.getrlimit.2;, &man.login.conf.5;. Groupes groupes /etc/groups comptes groupes Un groupe est simplement une liste d'utilisateurs. Les groupes sont identifiés par leur nom et leur GID (identificateur de groupe). Dans FreeBSD (et la plupart des systèmes &unix;), les deux éléments que le noyau utilise pour décider si un processus est autorisé à faire quelque chose sont son ID utilisateur et la liste des groupes auxquels il appartient. Différent d'un identificateur utilisateur, un processus est associé à une liste de groupes. Vous pourrez entendre faire références au “group ID” d'un utilisateur ou d'un processus; la plupart du temps on veut parler du premier groupe dans la liste. La table d'équivalence nom de groupe et identificateur de groupe se trouve dans /etc/group. C'est un fichier texte avec quatre champs délimités par deux points. Le premier champ est le nom du groupe, le second est le mot de passe crypté, le troisième est l'ID du groupe, et le quatrième est une liste de membres séparés par des virgules. Ce fichier peut sans risque être édité à la main (en supposant, bien sûr, que vous ne faites pas d'erreur de syntaxe!). Pour une description complète de le syntaxe, voir la page de manuel &man.group.5;. Si vous ne voulez pas éditer /etc/group à la main, vous pouvez utiliser la commande &man.pw.8; pour ajouter et éditer des groupes. Par exemple, pour ajouter un groupe appelé teamtwo et ensuite vérifier qu'il existe bien vous pouvez utiliser: Ajouter un groupe en utilisant &man.pw.8; &prompt.root; pw groupadd teamtwo &prompt.root; pw groupshow teamtwo teamtwo:*:1100: Le nombre 1100 ci-dessus est l'identificateur de groupe pour le groupe teamtwo. A cet instant teamtwo n'a aucun membre, et est par conséquent plutôt inutile. Changeons cela en ajoutant jru au groupe teamtwo. Ajouter quelqu'un dans un groupe en utilisant &man.pw.8; &prompt.root; pw groupmod teamtwo -M jru &prompt.root; pw groupshow teamtwo teamtwo:*:1100:jru Le paramètre ajouté à l'option est une liste, délimitée par des virgules, d'utilisateurs qui sont membres du groupe. Des sections précédentes nous savons que le fichier des mots de passe contient également un groupe pour chaque utilisateur. Le dernier (utilisateur) est automatiquement ajouté à la liste des groupes par le système; l'utilisateur n'apparaîtra pas comme étant membre quand on utilise l'option avec &man.pw.8;, mais apparaîtra quand l'information est demandée par l'intermédiaire de &man.id.1; ou un outil similaire. En d'autres termes, &man.pw.8; manipule uniquement le fichier /etc/group, il n'essaiera jamais de lire des données supplémentaires à partir du fichier /etc/passwd. Utilisation de &man.id.1; pour déterminer l'appartenance à un groupe &prompt.user; id jru uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo) Comme vous pouvez le voir, jru est membre des groupes jru et teamtwo. Pour plus d'information sur &man.pw.8;, voir sa page de manuel, et pour d'information sur le format de /etc/group, consultez la page de manuel &man.group.5;.