diff --git a/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml index 65803bc4e4..c99327cfb3 100644 --- a/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/users/chapter.sgml @@ -1,1289 +1,1287 @@ 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), et - news. Souvent les administrateurs système - créent l'utilisateur httpd pour - exécuter les serveurs web qu'ils installent. + 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 + /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. Dans &os; 5.0, &man.adduser.8; a été converti d'une procédure d'origine en Perl en une procédure d'interpréteur de commandes sous la forme d'un programme exécutant &man.pw.8;, aussi l'utilisation de &man.adduser.8; est légèrement différente entre &os; 4.X et &os; 5.X. Pour créer le fichier de configuration initial, utilisez adduser -s -config_create. L'option rend &man.adduser.8; silencieux par défaut. Nous utiliserons plus tard quand nous voudrons modifier les valeurs par défaut. Ensuite, nous configurons les valeurs par défaut pour &man.adduser.8;, et créons notre premier compte utilisateur, puisque l'utilisation du compte root pour un usage ordinaire est une mauvaise idée. Configurer <command>adduser</command> et ajouter un utilisateur sous &os; 4.X &prompt.root; adduser -v Use option ``-silent'' if you don't want to see all warnings and questions. Check /etc/shells Check /etc/master.passwd Check /etc/group Enter your default shell: csh date no sh tcsh zsh [sh]: zsh Your default shell is: zsh -> /usr/local/bin/zsh Enter your default HOME partition: [/home]: Copy dotfiles from: /usr/share/skel no [/usr/share/skel]: Send message from file: /etc/adduser.message no [/etc/adduser.message]: no Do not send message Use passwords (y/n) [y]: y Write your changes to /etc/adduser.conf? (y/n) [n]: y Ok, let's go. Don't worry about mistakes. I will give you the chance later to correct any input. Enter username [a-z0-9_-]: jru Enter full name []: J. Random User Enter shell csh date no sh tcsh zsh [zsh]: Enter home directory (full path) [/home/jru]: Uid [1001]: Enter login class: default []: Login group jru [jru]: Login group is ``jru''. Invite jru into other groups: guest no [no]: wheel Enter password []: Enter password again []: Name: jru Password: **** Fullname: J. Random User Uid: 1001 Gid: 1001 (jru) Class: Groups: jru wheel HOME: /home/jru Shell: /usr/local/bin/zsh OK? (y/n) [y]: y Added user ``jru'' Copy files from /usr/share/skel to /home/jru Add another user? (y/n) [y]: n Goodbye! &prompt.root; En résumé, nous avons modifié l'interpréteur de commandes par défaut pour zsh (un autre interpréteur de commandes trouvé dans le catalogue des logiciels portés), et désactivé l'envoi d'un courrier électronique de bienvenue à la création d'un compte. Nous avons ensuite enregistré cette configuration, créé le compte jru, et fait en sorte que jru appartienne au groupe wheel (de sorte qu'il puisse assurer le rôle de root avec la commande &man.su.1;). 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. Veillez à ne pas vous tromper deux fois de - suite. + affichés. Assurez-vous de ne pas vous tromper dans + le mot de passe. Vous pouvez désormais utiliser &man.adduser.8; sans arguments, et vous n'aurez pas besoin de modifier les valeurs par défaut. Si le programme vous demandait de le faire, quittez-le et essayez l'option . Ajouter un utilisateur sous &os; 5.X &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; <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. Sous os; 5.X, 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 . + linkend="network-servers">. <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 pas directement le fichier /etc/login.conf, mais plutôt la base de données /etc/login.conf.db. 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. 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;. Personnaliser des comptes utilisateur La localisation est une configuration de l'environnement mise en place par l'administrateur système ou l'utilisateur pour adapter l'environnement à différentes langues, jeux de caractères, normes d'écriture de la date et de l'heure, et ainsi de suite. Ceci est abordé dans le chapitre sur la localisation. 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;. diff --git a/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml index b1e341b0be..2a13fefe7e 100644 --- a/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml @@ -1,2054 +1,2059 @@ Ken Tom Mis à jour pour le serveur X11 d'X.Org par Marc Fonvieille Le système X Window &trans.a.fonvieille; Synopsis FreeBSD utilise X11 pour fournir aux utilisateurs une interface graphique puissante. X11 est une implémentation “open-source” du système X Window qui inclue &xorg; et &xfree86;. Les versions de &os; jusqu'à &os; 4.10-RELEASE et &os; 5.2.1-RELEASE utilisent par défaut &xfree86;, le serveur X11 publié par le projet &xfree86;. Depuis &os; 5.3-RELEASE, la version officielle par défaut d'X11 a été remplacée par &xorg;, le serveur X11 de la fondation X.Org. Ce chapitre couvrira l'installation et la configuration d'X11 avec en insistant sur &xorg;. Pour plus d'informations sur le matériel vidéo supporté par X11, consultez soit le site d'&xorg; soit celui d'&xfree86;. Après la lecture de ce chapitre, vous connaîtrez: Les divers composants du système X Window et comment ils fonctionnent ensemble. Comment installer et configurer X11. Comment installer et utiliser différents gestionnaires de fenêtres. Comment utiliser les polices de caractères &truetype; sous X11. Comment configurer votre système pour l'utilisation de procédures de connexions graphiques (XDM). Avant de lire ce chapitre, vous devrez: Savoir comment installer des logiciels tiers (). Ce chapitre couvre l'installation des serveurs X11 &xorg; et &xfree86;. Dans leur majorité les fichiers de configuration, les commandes et les syntaxes à utiliser sont identiques. Dans le cas de différences, les syntaxes pour &xorg; et pour &xfree86; seront données. Comprendre X Utiliser X pour la première fois peut être en quelque sorte un choc pour quelqu'un de familier avec d'autres environnements graphiques, tels que µsoft.windows; ou &macos;. Alors qu'il n'est pas nécessaire de comprendre tout le détail des divers composants de X ni comment ils interagissent entre eux, une certaine connaissance des bases permet de tirer profit des points forts d'X. Pourquoi X? X n'est pas le premier système de fenêtrage écrit pour &unix;, mais c'est le plus populaire d'entre eux. L'équipe originelle de développement d'X avait travaillé sur un autre système de fenêtrage avant d'écrire X. Le nom de ce système était W (pour Window - fenêtre). X était juste la lettre suivante dans l'alphabet romain. X peut être appelé “X”, “Système X Window”, X11&, et sous d'autres noms. Il se peut que vous puissiez trouver que nommer X11 X Windows peut être offensant pour certaines personnes; consultez &man.X.7; pour un peu plus d'éclairements sur la question. Le modèle client/serveur d'X X a été conçu dès le départ autour de la notion de réseau, et adopte un modèle client-serveur. Dans le modèle X, le “serveur X” tourne sur l'ordinateur sur lequel sont branchés le clavier, le moniteur, et la souris. Le serveur est responsable de tâches telles que la gestion de l'affichage, des entrées en provenance du clavier et de la souris, etc... Chaque application X (comme XTerm, ou &netscape;) est un “client”. Un client envoie des messages au serveur comme “Dessines une fenêtre aux coordonnées suivantes”, et le serveur envoie au client des messages du type “L'utilisateur vient de cliquer sur le bouton OK”. Chez soi ou dans un petit bureau, le serveur X et les clients X tourneront presque toujours sur le même ordinateur. Cependant, il est parfaitement possible de faire tourner le serveur X sur un ordinateur de bureau moins puissant, et les applications X (les clients) sur, par exemple, la machine puissante et chère du service. Dans ce scénario la communication entre le client X et le serveur se fera par l'intermédiaire du réseau. Cela jette le trouble chez certaines personnes, parce que la technologie X est exactement le contraire de ce à quoi ils s'attendent. Ils s'attendent à ce que le “serveur X” soit la grosse machine puissante au fond du couloir, et le “client X” la machine sur leur bureau. Il est important de se souvenir que le serveur X est la machine avec le moniteur et le clavier, et les clients X sont les programmes qui affichent les fenêtres. Il n'y a rien dans le protocole qui force les machines clientes et serveurs d'utiliser le même système d'exploitation, ou même de tourner sur le même type d'ordinateur. Il est certainement possible de faire fonctionner un serveur X sur µsoft.windows; ou &macos; d'Apple, et il existe diverses applications gratuites et commerciales qui font exactement cela. Depuis &os; 5.3-RELEASE, le serveur X livré avec &os; est &xorg;, et est disponible gratuitement, sous une licence très proche de la licence FreeBSD. Des serveurs X commerciaux pour FreeBSD sont également disponibles. Le gestionnaire de fenêtres La philosophie de conception d'X est comme celle d'&unix;, “des outils, pas de contraintes”. Cela signifie qu'X n'essaye pas de dicter comment une tâche doit être accomplie. A la place, les outils sont fournis à l'utilisateur, et c'est à lui de décider comment utiliser ces outils. Cette philosophie va jusqu'à pousser X à ne pas contrôler l'aspect des fenêtres à l'écran, comment les déplacer avec la souris, quelles combinaisons de touches devraient être utilisées pour passer de l'une à l'autre (i.e., Alt Tab , dans le cas de µsoft.windows;), comment devraient être les barres de titre de chaque fenêtres, qu'elles aient ou pas des boutons de fermetures, etc... Au lieu de cela, X délègue cette responsabilité à une application appelée un “Window Manager” - gestionnaire de fenêtres. Il existe des douzaines de gestionnaires de fenêtres disponibles pour X: AfterStep, Blackbox, ctwm, Enlightenment, fvwm, Sawfish, twm, Window Maker, et bien plus. Chacun de ces gestionnaires de fenêtres fournit une apparence et une prise en main différente; certains d'entre eux supportent les “bureaux virtuels”; d'autres permettent de personnaliser les combinaisons de touches de gestion du bureau; certains ont un bouton “Démarrer” ou quelque chose d'identique; certains possèdent un système de “thèmes”, permettant un changement complet d'apparence et de prise en main en sélectionnant un nouveau thème. Ces gestionnaires de fenêtres, et bien plus, sont disponibles dans la catégorie x11-wm du catalogue des logiciels portés. De plus, les environnements de travail KDE et GNOME ont leur propre gestionnaire de fenêtres qui s'intègre avec l'environnement. Chaque gestionnaire de fenêtres possède également un mécanisme de configuration propre; certains demandent un fichier de configuration écrit à la main, d'autres disposent d'outils graphiques pour la plupart des tâches de configuration; et au moins un (Sawfish) utilise un fichier de configuration écrit dans un dialecte du langage LISP. Politique de focus Une autre fonction dont est responsable le gestionnaire de fenêtre est la “politique de focus” de la souris. Chaque système de fenêtrage a besoin de méthodes de choix de la fenêtre qui doit recevoir les frappes au clavier, et devrait également indiquer visiblement quelle fenêtre est active. Une politique de focus commune est appelée “click-to-focus” (cliquer pour obtenir le focus). C'est le mode utilisé sous µsoft.windows;, dans lequel une fenêtre devient active quand elle reçoit un clic de la souris. X ne supporte aucune politique de focus particulière. Au lieu de cela, le gestionnaire de fenêtres contrôle quelle fenêtre a le focus à n'importe quel moment. Différents gestionnaires de fenêtres supporteront différentes méthodes de focus. Tous supportent le clic pour obtenir le focus, une grande majorité supporte d'autres méthodes. Les politiques de focus les plus populaires sont: “focus-follows-mouse” - le focus suit la souris La fenêtre qui est sous le pointeur de la souris est la fenêtre qui a le focus. Ce n'est pas nécessairement la fenêtre qui est au-dessus des autres. Le focus est modifié en pointant une autre fenêtre, là il n'y pas besoin de cliquer sur la fenêtre. “sloppy-focus” - focus relaché Cette politique est version dérivée du “focus-follows-mouse”. Avec “focus-follows-mouse”, si la souris est déplacée sur la fenêtre racine (ou fond de l'écran) alors aucune fenêtre n'a le focus, et les frappes au clavier sont tout simplement perdues. Avec le focus relaché, le focus n'est modifié que si le pointeur passe sur une nouvelle fenêtre, et non pas quand il quitte la fenêtre actuelle. “click-to-focus” - cliquer pour obtenir le focus La fenêtre active est sélectionnée par clic de la souris. La fenêtre peut être ramenée au premier plan. Toutes les frappes au clavier seront désormais dirigées vers cette fenêtre, même si le curseur est déplacé vers une autre fenêtre. De nombreux gestionnaires de fenêtres supportent d'autres politiques, comme des variations de celles-ci. Assurez-vous de consulter la documentation du gestionnaire de fenêtres. “Widgets” - Eléments graphiques L'approche d'X d'offir uniquement des outils s'étend aux éléments graphiques que l'on voit à l'écran dans chaque application. “Widget” est un terme pour désigner tous les éléments de l'interface utilisateur qui peuvent être cliqués ou manipulés d'une façon ou d'une autre; boutons, boîtes à cocher, boutons radio, icônes, listes, etc... µsoft.windows; appelle ces derniers des “contrôles”. µsoft.windows; et &macos; d'Apple ont tous deux une politique très rigide au niveaux des éléments graphiques. Les développeurs d'applications sont supposés s'assurer que leurs applications partagent une apparence et une prise en main commune. Avec X, on n'a pas considéré comme sensible d'exiger un style graphique particulier, ou ensemble d'éléments graphiques à respecter. En conséquence, ne vous attendez pas à ce que les applications X aient une apparence et une prise en main communes. Il a plusieurs ensembles populaires d'éléments graphiques et leurs variations, dont l'ensemble d'éléments original Athena du MIT, &motif; (d'après lequel fût modelé l'ensemble d'éléments graphiques de µsoft.windows;, tous les bords biseautés et trois nuances de gris), OpenLook, et d'autres. La plupart des nouvelles applications X, aujourd'hui utiliseront un ensemble d'éléments graphiques à l'apparence moderne, soit Qt, utilisé par KDE, soit GTK+, utilisé par le projet GNOME. A cet égard, il y a une certaine convergence dans l'apparence et la prise en main de l'environnement de travail &unix;, qui facilite certainement les choses pour l'utilisateur débutant. Installer X11 &xorg; ou &xfree86; peuvent être installés sous &os;. Depuis &os; 5.3-RELEASE, &xorg; est l'implémentation par défaut d'X11 sous &os;. - &xorg; est le serveur X11 de la - distribution X11R6.7 publiée par la fondation X.Org. - X11R6.7 est basé sur le code de - &xfree86 4.4RC2 et d'X11R6.6. - La fondation X.Org a publié X11R6.7 en avril 2004. + &xorg; est le serveur X de + l'implémentation open source du système X Window + publiée par la fondation X.Org. + &xorg; est basée sur le code + de &xfree86 4.4RC2 et d'X11R6.6. + La fondation X.Org a publié X11R6.7 en avril 2004 et + X11R6.8.1 en septembre 2004, cette dernière est la + version actuellement disponible dans le catalogue des logiciels + portés de &os;. Pour compiler et installer &xorg; à partir du catalogue des logiciels portés: &prompt.root; cd /usr/ports/x11/xorg &prompt.root; make install clean Pour compiler &xorg; dans son intégralité, assurez-vous de disposer d'au moins 4 Go d'espace libre. Pour compiler et installer &xfree86; à partir du catalogue des logiciels portés: &prompt.root; cd /usr/ports/x11/XFree86-4 &prompt.root; make install clean D'autre part, X11 peut être directement installée à partir de paquetages. Une version pré-compilée à utiliser avec l'outil &man.pkg.add.1; est également disponible pour X11. Quand la fonction de récupération à distance de &man.pkg.add.1; est utilisée, le numéro de version doit être retiré. &man.pkg.add.1; téléchargera automatiquement la toute dernière version de l'application. Donc pour récupérer et installer la version pré-compilée d'&xorg;, tapez simplement: &prompt.root; pkg_add -r xorg La version pré-compilée de &xfree86; 4.X peut être installée en tapant: &prompt.root; pkg_add -r XFree86 Les exemples ci-dessus installeront la distribution complète d'X11 comprenant les serveurs, les clients, les polices de caractères, etc. Des paquetages et des logiciels portés séparés pour les différentes parties d'X11 sont également disponibles. Le reste de ce chapitre expliquera comment configurer X11, et comment installer un environnement de travail productif. Migrer de <application>&xfree86;</application> vers <application>&xorg;</application> Comme pour n'importe quel logiciel porté, vous devriez consulter le fichier /usr/ports/UPDATING à la recherche d'éventuelles informations sur le logiciel. Dans ce fichier se trouvent également des informations sur la conversion de votre système de &xfree86; vers &xorg;. Utilisez CVSup pour mettre à jour votre arborescence des logiciels portés avant de tenter une conversion. Vous devrez également installer le logiciel sysutils/portupgrade avant de migrer votre installation d'X11. Dans votre fichier /etc/make.conf il sera nécessaire d'ajouter la variable X_WINDOW_SYSTEM=xorg. Cela permet d'informer votre système sur la version d'X11 utilisée. L'ancienne variable XFREE86_VERSION est aujourd'hui obsolète et remplacée par la variable X_WINDOW_SYSTEM. Ensuite, utilisez les commandes suivantes: &prompt.root; pkg_delete -f /var/db/pkg/imake-4* /var/db/pkg/XFree86-* &prompt.root; cd /usr/ports/x11/xorg &prompt.root; make install clean &prompt.root; pkgdb -F La commande &man.pkgdb.1; command fait partie du logiciel portupgrade et mettra à jour les différentes dépendances entre paquetages. Pour compiler &xorg; dans son intégralité, assurez-vous de disposer d'au moins 4 Go d'espace libre. Christopher Shumway Contribution de Configuration d'X11 &xfree86; 4.X &xfree86; &xorg; X11 Avant de commencer Avant de configurer X11, les informations sur le système cible sont nécessaires: Caractéristiques du moniteur Circuit graphique présent sur la carte vidéo Quantité de mémoire présente sur la carte vidéo fréquence de balayage horizontale fréquence de synchronisation verticale Les caractéristiques du moniteur sont utilisées par X11 pour déterminer la résolution et le taux de rafraîchissement à utiliser. Ces caractéristiques sont généralement obtenues sur la documentation fournie avec le moniteur ou sur le site web du constructeur. Il y a deux intervalles de nombres nécessaires, les fréquences de balayage horizontale et les fréquences de synchronisation verticale. La circuit graphique présent sur la carte vidéo définit quel pilote de périphérique X11 utilise pour communiquer avec le matériel graphique. Avec la plupart des circuits, cela peut être détecté automatiquement, mais il est toujours utile de connaître le type dans le cas où la détection automatique ne fonctionnerait pas correctement. La quantité de mémoire graphique sur la carte vidéo détermine la résolution et la profondeur de couleurs qui pourront être utilisées. C'est important de le savoir afin que l'utilisateur soit au courant des limitations du système. Configurer X11 La configuration d'X11 est un processus en plusieurs étapes. La première étape est de générer un fichier de configuration. En tant que super utilisateur, lancez simplement: &prompt.root; Xorg -configure Dans le cas de &xfree86;, tapez: &prompt.root; XFree86 -configure Cela générera un squelette de fichier de configuration pour X11 dans le répertoire /root appelé xorg.conf.new (que vous utilisiez &man.su.1; ou ouvrez directement une session, cela affecte la variable d'environnement $HOME du super-utilisateur, et donc le répertoire utilisé pour écrire le fichier). Pour &xfree86;, ce fichier de configuration se nommé XF86Config.new. Le programme X11 tentera de sonder le matériel graphique présent sur le système et écrira un fichier de configuration pour charger les pilotes de périphériques corrects pour le matériel détecté sur le système cible. L'étape suivante est de tester la configuration existante pour vérifier que &xorg; peut fonctionner avec le matériel graphique présent sur le système cible. Pour effectuer ce test, lancez: &prompt.root; Xorg -config xorg.conf.new Les utilisateurs d'&xfree86; lanceront: &prompt.root; XFree86 -xf86config XF86Config.new Si une grille grise et noire et un curseur de souris en forme de X apparaissent, la configuration fonctionne correctement. Pour quitter le test, appuyez simplement sur les touches Ctrl Alt Backspace simultanément. Si la souris ne fonctionne pas, vous devrez, avant toute autre chose, la configurer. Consultez la dans le chapitre sur l'installation de &os;. optimisation de la configuration d'X11 Ensuite, optimisez le fichier de configuration xorg.conf.new (ou XF86Config.new si vous utilisez &xfree86;) selon vos goûts. Ouvrez le fichier dans un éditeur de texte comme &man.emacs.1; ou &man.ee.1;. Tout d'abord, ajoutez les fréquences pour le moniteur du système cible. Celles-ci sont généralement exprimées sous la forme de fréquences de synchronisation horizontale et verticale. Ces valeurs sont ajoutées dans le fichier xorg.conf.new dans la section "Monitor": Section "Monitor" Identifier "Monitor0" VendorName "Monitor Vendor" ModelName "Monitor Model" HorizSync 30-107 VertRefresh 48-120 EndSection Les termes HorizSync et VertRefresh peuvent être absents du fichier de configuration. Si c'est le cas, ils doivent être ajoutés, avec les fréquences horizontales correctes placées après le terme HorizSync et les fréquences verticales après le terme VertRefresh. Dans l'exemple ci-dessus les fréquences du moniteur ont été entrées. X autorise l'utilisation des caractéristiques DMPS (Energy Star) avec les moniteurs qui en sont capables. Le programme &man.xset.1; contrôle les délais et peut forcer la mise en veille, l'arrêt, ou les modes d'extinction. Si vous souhaitez activer les fonctions DMPS de votre moniteur, vous devez ajouter la ligne suivante dans la section concernant le moniteur: Option "DPMS" xorg.conf XF86Config Pendant que le fichier de configuration xorg.conf.new (ou XF86Config.new) est toujours ouvert dans un éditeur, sélectionnez la résolution par défaut et la profondeur de couleurs désirée. Cela est défini dans la section "Screen": Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1024x768" EndSubSection EndSection Le terme DefaultDepth indique la profondeur de couleurs utilisée par défaut. Cette valeur peut être outrepassée avec l'option en ligne de la commande &man.Xorg.1; (ou &man.XFree86.1;). Le terme Modes indique la résolution à utiliser pour la profondeur de couleurs donnée. Notez que seuls les modes standard VESA sont supportés comme définis par le matériel graphique du système cible. Dans l'exemple ci-dessus, la profondeur de couleurs par défaut est de vingt quatre bits par pixel. A cette profondeur de couleurs, la résolution acceptée est de 1024 par 768. Pour fonctionner à une résolution de mille vingt quatre pixels par sept cent soixante huit pixels à vingt quatre bits par pixel, ajoutez le terme DefaultDepth avec la valeur vingt quatre, et ajoutez à la sous-section "Display" avec la valeur Depth désirée le terme Modes avec la résolution souhaitée par l'utilisateur. Notez que seuls les modes standard VESA sont supportés comme définis par le matériel graphique du système cible. Enfin, sauvez le fichier de configuration et testez-le en utilisant la procédure de test donnée ci-dessus. Un des outils disponibles pour vous aider en cas de problèmes sont les fichiers journaux d'X11, qui contiennent des informations sur chaque périphérique auquel le serveur X11 s'attache. Les noms des fichiers journaux d'&xorg; suivent la forme /var/log/Xorg.0.log (les fichiers journaux d'&xfree86; suivent le format XFree86.0.log). Le nom exact du fichier peut aller de Xorg.0.log à Xorg.8.log et ainsi de suite. Si tout se passe bien, le fichier de configuration doit être installé à un emplacement commun où &man.Xorg.1; (ou &man.XFree86.1;) pourra le trouver. C'est typiquement soit /etc/X11/xorg.conf ou /usr/X11R6/etc/X11/xorg.conf (pour &xfree86;, cela sera /etc/X11/XF86Config ou /usr/X11R6/etc/X11/XF86Config). &prompt.root; cp xorg.conf.new /etc/X11/xorg.conf Pour &xfree86;: &prompt.root; cp XF86Config.new /etc/X11/XF86Config La configuration de X11 est maintenant achevée. Afin de pouvoir lancer &xfree86; 4.X avec &man.startx.1;, installez le logiciel porté x11/wrapper. &xorg; inclut déjà le code en question et ne demande pas l'installation de ce logiciel. Le serveur X11 peut également être lancé à l'aide de &man.xdm.1;. Il existe également un outil de configuration graphique, &man.xorgcfg.1; (&man.xf86cfg.1; pour &xfree86;), qui est fourni avec la distribution X11. Il permet de définir intéractivement votre configuration en sélectionnant les pilotes de périphériques et les paramètres adéquats. Ce programme peut être invoqué à partir de la console, en tapant la commande xorgcfg -textmode. Pour plus de détails, consultez les pages de manuel d'&man.xorgcfg.1; et &man.xf86cfg.1;. Alternativement, il existe également un outil appelé &man.xorgconfig.1; (&man.xf86config.1; sous &xfree86;), ce programme est un utilitaire en mode console moins convivial, mais qui peut fonctionner dans les situations où les autres ont échoué. Sujets avancés de configuration Configuration avec les circuits graphiques &intel; i810 circuits graphiques Intel i810 La configuration avec les circuits intégrés graphiques &intel; i810 nécessite agpgart l'interface de programmation AGP pour X11 afin de piloter la carte. Le pilote &man.agp.4; est présent dans le noyau GENERIC depuis les versions 4.8-RELEASE et 5.0-RELEASE. Sous les versions précédentes, vous devrez ajouter la ligne suivante: device agp dans votre fichier de configuration du noyau et recompilez un nouveau noyau. Au lieu de cela, vous pourrez vouloir charger le module noyau agp.ko automatiquement au démarrage avec &man.loader.8;. Pour cela, ajoutez simplement cette ligne au fichier /boot/loader.conf: agp_load="YES" Ensuite, si vous utilisez FreeBSD version 4.X ou précédente, un fichier spécial de périphérique doit être créé pour l'interface de programmation. Pour créer le fichier spécial de périphérique AGP, lancez &man.MAKEDEV.8; dans le répertoire /dev: &prompt.root; cd /dev &prompt.root; sh MAKEDEV agpgart FreeBSD 5.X et suivantes, utiliseront &man.devfs.5; pour allouer les fichiers spéciaux de périphérique de façon transparente pour l'utilisateur, par conséquent l'étape &man.MAKEDEV.8; n'est pas requise. Cela permettra la configuration de ce matériel comme n'importe quelle autre carte graphique. Notez que sur les systèmes sans le pilote &man.agp.4; compilé dans le noyau, tenter de charger le module à l'aide de &man.kldload.8; ne fonctionnera pas. Ce pilote doit être dans le noyau au démarrage soit compilé dans le noyau soit en utilisant /boot/loader.conf. Si vous utilisez &xfree86; 4.1.0 (ou supérieur) et que des messages au sujet de symboles inexistants comme fbPictureInit apparaissent, essayez d'ajouter la ligne suivante après Driver "i810" dans le fichier de configuration d'X11: Option "NoDDC" Murray Stokely Contribution de Utilisation des polices de caractères sous X11 Polices de caractères Type1 Les polices de caractères livrées par défaut avec X11 sont loin d'être idéales pour des applications de type publication. Les grandes polices utilisées pour les présentations présentent un aspect en escalier et peu professionnel, et les petites polices sous &netscape; sont presque complètement illisibles. Cependant, il existe de nombreuses polices Type1 (&postscript;) gratuites, de hautes qualités qui peuvent être aisément utilisées avec X11. Par exemple, la collection de polices de caractères URW (x11-fonts/urwfonts) comprend une version haute qualité des polices de caractères standards type1 (Times Roman, Helvetica, Palatino et autres). La collection Freefonts (x11-fonts/freefonts) comprend beaucoup plus de polices de caractères, mais la plupart d'entre elles sont destinées à être utilisées avec des logiciels graphiques comme The Gimp, et ne sont pas suffisamment complètes pour servir de polices de caractères d'affichage. De plus X11 peut être configuré pour utiliser les polices de caractères &truetype; avec un minimum d'effort. Pour plus de détails à ce sujet, consultez la page de manuel &man.X.7; ou la section sur les polices de caractères &truetype;. Pour installer les collections de polices de caractères Type1 précédentes à partir du catalogue des logiciels portés, lancez les commandes suivantes: &prompt.root; cd /usr/ports/x11-fonts/urwfonts &prompt.root; make install clean Et de même pour la collection Freefont ou d'autres. Pour que le serveur X détecte ces polices, ajoutez une ligne appropriée au fichier de configuration du serveur X dans /etc/X11/ (xorg.conf pour &xorg; et XF86Config pour &xfree86;), du type: FontPath "/usr/X11R6/lib/X11/fonts/URW/" Autre possibilité, en ligne de commande dans une session X lancez: &prompt.user; xset fp+ /usr/X11R6/lib/X11/fonts/URW &prompt.user; xset fp rehash Cela fonctionnera mais les effets seront perdus quand la session X sera fermée, à moins de l'ajouter dans le fichier de démarrage (~/.xinitrc pour une session startx classique, ou dans ~/.xsession quand on s'attache au système par l'intermédiaire d'un gestionnaire de session graphique comme XDM). Une troisième méthode est d'utiliser le nouveau fichier /usr/X11R6/etc/fonts/local.conf: voir la section sur l'anticrénelage. Polices de caractères &truetype; TrueType Fonts fonts TrueType &xfree86; 4.X et &xorg; disposent d'un support intégré pour le rendu des polices &truetype;. Il y a deux différents modules qui peuvent activer cette fonctionnalité. Le module freetype est utilisé dans cet exemple parce qu'il est plus compatible avec les autres moteurs de rendu des polices de caractères. Pour activer le module freetype ajoutez juste la ligne suivante dans la section "Module" du fichier /etc/X11/xorg.conf ou /etc/X11/XF86Config. Load "freetype" Pour &xfree86; 3.3.X, un serveur séparé de polices de caractères &truetype; est nécessaire. Xfstt est généralement utilisé dans ce but. Pour installer Xfstt installez simplement le logiciel porté x11-servers/Xfstt. Maintenant créez un répertoire pour les polices &truetype; (par exemple /usr/X11R6/lib/X11/fonts/TrueType) et copiez toutes les polices &truetype; dans ce répertoire. Gardez à l'esprit que les polices &truetype; ne peuvent être directement prises d'un Macintosh; elles doivent être dans un format &unix;/&ms-dos;/Windows pour être utilisées sous X11. Une fois les fichiers copiés dans ce répertoire, utilisez ttmkfdir pour créer un fichier fonts.dir, de façon à ce que le moteur d'affichage des polices d'X sache que de nouveaux fichiers ont été installés. ttmkfdir est disponible dans le catalogue des logiciels portés de FreeBSD sous x11-fonts/ttmkfdir. &prompt.root; cd /usr/X11R6/lib/X11/fonts/TrueType &prompt.root; ttmkfdir > fonts.dir Maintenant ajoutez le répertoire des polices &truetype; au chemin des polices de caractères. Cela est identique à ce qui est décrit ci-dessus pour les polices Type1, c'est à dire, utiliser &prompt.user; xset fp+ /usr/X11R6/lib/X11/fonts/TrueType &prompt.user; xset fp rehash ou ajouter une ligne FontPath au fichier xorg.conf (ou XF86Config). Voilà. Désormais &netscape;, Gimp, &staroffice;, et toutes les autres applications X devraient maintenant reconnaître les polices de caractères &truetype;. Les polices très petites (comme le texte de page web visualisé sur un écran haute résolution) et les très grandes polices (dans &staroffice;) auront un rendu bien meilleur maintenant. Joe Marcus Clarke Mis à jour par Polices de caractères anticrénelage polices de caractères anticrénelage polices de caractères anticrénelage L'anticrénelage est disponible sous X11 depuis &xfree86; 4.0.2. Cependant, la configuration des polices de caractères était relativement lourde avant l'arrivée d'&xfree86; 4.3.0. Depuis &xfree86; 4.3.0, toutes les polices sous X11 se trouvant dans les répertoires /usr/X11R6/lib/X11/fonts/ et ~/.fonts/ sont automatiquement disponibles pour l'anticrénelage avec les applications compatibles Xft. Toutes les applications ne sont pas compatibles Xft, mais de nombreuses ont été dotées du support Xft. Par exemple, les applications utilisant Qt 2.3 et versions suivantes (la boîte à outils pour l'environnement de travail KDE), GTK+ 2.0 et suivantes (la boîte à outils de l'environnement de travail GNOME), et Mozilla 1.2 et versions suivantes. Afin de contrôler quelles polices de caractères sont anticrénelées, ou pour configurer les propriétés de l'anticrénelage, créez (ou éditez, s'il existe déjà) le fichier /usr/X11R6/etc/fonts/local.conf. Plusieurs caractéristiques avancées du système de fontes Xft peuvent être ajustées par l'intermédiaire de ce fichier; cette section ne décrit ques des possibilités simples. Pour plus de détails, consultez la page de manuel &man.fonts-conf.5;. XML Ce fichier doit être dans le format XML. Faites attention à la casse des caractères, et assurez-vous que toutes les balises sont correctement fermées. Le fichier débute avec l'entête XML classique suivie par une définition DOCTYPE, puis de la balise <fontconfig>: <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> Comme précisé précédemment, l'ensemble des polices de caractères du répertoire /usr/X11R6/lib/X11/fonts/ comme du répertoire ~/.fonts/ sont disponibles pour les applications compatibles Xft. Si vous désirez ajouter un autre répertoire en dehors des ces deux là, ajoutez une ligne similaire à la suivante au fichier /usr/X11R6/etc/fonts/local.conf: <dir>/chemin/vers/mes/fontes</dir> Après l'ajout de nouvelles fontes, et tout particulièrement de nouveaux répertoires de polices, vous devrez exécuter la commande suivante pour reconstituer le cache des polices de caractères: &prompt.root; fc-cache -f L'anticrénelage rend les bords légèrement flous, ce qui rend le texte très petit plus lisible et enlève l'effet “d'escalier” des grands textes, mais peut provoquer une fatigue visuelle si c'est appliqué au texte normal. Pour exclure les tailles de polices inférieures à 14 points de l'anticrénelage, ajoutez ces lignes: <match target="font"> <test name="size" compare="less"> <double>14</double> </test> <edit name="antialias" mode="assign"> <bool>false</bool> </edit> </match> <match target="font"> <test name="pixelsize" compare="less" qual="any"> <double>14</double> </test> <edit mode="assign" name="antialias"> <bool>false</bool> </edit> </match> polices de caractères espacement L'espacement pour certaines polices de caractères à chasse fixe peut également être inapproprié avec l'anticrénelage. Cela semble être un problème avec KDE, en particulier. Une solution possible pour cela est de forcer l'espacement pour de telles polices de caractères à 100. Ajoutez les lignes suivantes: <match target="pattern" name="family"> <test qual="any" name="family"> <string>fixed</string> </test> <edit name="family" mode="assign"> <string>mono</string> </edit> </match> <match target="pattern" name="family"> <test qual="any" name="family"> <string>console</string> </test> <edit name="family" mode="assign"> <string>mono</string> </edit> </match> (ceci ajoute un alias "mono" pour les autres noms communs des polices de caractères fixes), puis ajoutez: <match target="pattern" name="family"> <test qual="any" name="family"> <string>mono</string> </test> <edit name="spacing" mode="assign"> <int>100</int> </edit> </match> Certaines polices de caractères, comme Helvetica, peuvent présenter des problèmes lors de l'anticrénelage. Généralement cela se manifeste par l'impression que la fonte semble coupée en deux verticalement. Au pire cela peut provoquer des crashs avec certaines application comme Mozilla. Pour éviter cela, pensez à ajouter ce qui suit au fichier local.conf: <match target="pattern" name="family"> <test qual="any" name="family"> <string>Helvetica</string> </test> <edit name="family" mode="assign"> <string>sans-serif</string> </edit> </match> Une fois l'édition de local.conf achevée, assurez-vous que le fichier se termine par la balise </fontconfig>. Si ce n'est pas le cas, tous vos changements seront ignorés. L'ensemble de polices de caractères fourni par défaut avec X11 n'est pas très adapté pour l'anticrénelage. Un bien meilleur ensemble de fontes peut être trouvé dans le catalogue des logiciels portés: x11-fonts/bitstream-vera. Ce logiciel installera un fichier /usr/X11R6/etc/fonts/local.conf si ce dernier n'existe pas déjà. Si le fichier existe, le logiciel porté créera un fichier nommé /usr/X11R6/etc/fonts/local.conf-vera. Il fusionnera le contenu de ce fichier dans /usr/X11R6/etc/fonts/local.conf, et les polices de caractères Bitstream remplaceront automatiquement les polices avec empattement (serif), sans empattement (sans-serif) et à chasse fixe d'X11. Et enfin, les utilisateurs peuvent ajouter leurs propres paramètres par l'intermédiaire de leur fichier .fonts.conf. Pour cela, chaque utilisateur devrait créer un fichier ~/.fonts.conf. Ce fichier doit également être écrit en XML. LCD screen Fonts LCD screen Un dernier point: avec un écran LCD, un échantillonage “sub-pixel” peut être désiré. Fondamentalement, ceci traite les composantes rouge, verte et bleu séparéments (horizontalement séparées) pour améliorer la résolution horizontale; les résultats peuvent être dramatiques. Pour activer cela, ajoutez quelque part dans le fichier local.conf les lignes: <match target="font"> <test qual="all" name="rgba"> <const>unknown</const> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> </match> En fonction de type d'écran, le terme “rgb” pourra devoir être changé pour “bgr”, “vrgb” ou “vbgr”: expérimentez pour définir lequel fonctionne le mieux. - Mozilla - navigateurs web - Mozilla - Mozilla + + Mozilla + désactiver l'anticrénelage des + polices de caractères + L'anticrénelage devrait être activé au prochain lancement du serveur X. Cependant, notez que les applications doivent savoir comment l'utiliser. A l'heure actuelle, le “toolkit” Qt le supporte, donc l'intégralité de l'environnement KDE peut utiliser des polices anticrénelées (voir la sur KDE pour plus de détails). GTK+ et GNOME peuvent également faire usage de l'anticrénelage via le système Font (voir la pour plus de détails). Par défaut, Mozilla 1.2 et versions suivantes utiliseront automatiquement l'anticrénelage. Pour désactiver cette caractéristique, recompilez Mozilla avec le paramètre -DWITHOUT_XFT. Seth Kingsley Contribution de Le gestionnaire de procédures de connexions graphiques - “X Display Manager” Généralités X Display Manager Le gestionnaire de procédures de connexions graphiques - “X Display Manager” (XDM) est une partie optionnelle du système X Window qui est utilisée pour la gestion des procédures de connexion au système. C'est utile dans plusieurs types de situations, dont les “Terminaux X” minimaux, et les serveurs X d'affichage de grands réseaux. Comme le système X Window est indépendant du type de réseau et de protocole, il existe une large variété de configurations possibles pour faire fonctionner des clients et des serveurs X sur différentes machines connectées entre elles par un réseau. XDM fournit une interface graphique pour sélectionner à quel serveur d'affichage se connecter, et entrer des informations d'autorisation comme l'ensemble identifiant et mot de passe. Il faut voir XDM comme fournissant les mêmes fonctionnalités à l'utilisateur que l'utilitaire &man.getty.8; (voir la pour plus de détails). C'est à dire, qu'il exécute les ouvertures de session sur le système sur lequel on se connecte et lance alors une session au nom de l'utilisateur (généralement un gestionnaire de fenêtres pour X). XDM attend alors que le programme se termine, signalant que l'utilisateur en a terminé et devrait être déconnecté du système. A ce moment, XDM peut afficher les écrans d'invite d'ouverture de session et de sélection de serveur pour le prochain utilisateur. Utiliser XDM Le “daemon” d'XDM est /usr/X11R6/bin/xdm. Ce programme peut être lancé à n'importe quel moment en tant que root et il s'occupera de la gestion d'X sur la machine locale. Si XDM doit être exécuté à chaque démarrage de la machine, une manière pratique de le faire est d'ajouter une entrée dans /etc/ttys. Pour plus d'informations sur le format et l'utilisation de ce fichier, consultez la . Il existe une ligne dans le fichier /etc/ttys de défaut pour exécuter le “daemon” XDM sur un terminal virtuel: ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure Par défaut cette entrée est désactivée; afin de la réactiver modifiez le cinquième champ de off à on et relancez &man.init.8; en utilisant les indications de la . Le premier champ, le nom du terminal que ce programme gérera, est ttyv8. Cela signifie que XDM démarrera sur le neuvième terminal virtuel. Configurer XDM Le répertoire de configuration d'XDM est situé dans /usr/X11R6/lib/X11/xdm. Dans ce répertoire il y a de nombreux fichiers utilisés pour modifier le comportement et l'apparence d'XDM. Généralement les fichiers suivants seront présents: - + Fichier Description Xaccess Ensemble de règles d'autorisation du client. Xresources Fichier des ressources X par défaut. Xservers Liste des écrans distants et locaux à gérer. Xsession Procédure d'ouverture de session par défaut. Xsetup_* Procédures utilisées pour exécuter des applications avant l'interface d'ouverture de session. xdm-config Configuration globale pour tous les affichages utilisants cette machine. xdm-errors Erreurs générées par le programme serveur. xdm-pid L'identifiant du processus exécutant actuellement XDM. Dans ce répertoire se trouvent également quelques procédures et programmes utilisés pour configurer l'environnement quand XDM fonctionne. L'objet de chacun de ces fichiers sera brièvement décrit. La syntaxe exacte et l'utilisation de tous ces fichiers sont décrites dans la page de manuel &man.xdm.1;. La configuration par défaut est une simple fenêtre rectangulaire d'ouverture de session avec le nom de la machine hôte affiché en haut dans une grande police de caractères et avec des invites “Login:” et “Password:” en-dessous. C'est un bon point de départ pour modifier l'apparence et la prise en main des écrans XDM. Xaccess Le protocole utilisé pour se connecter à des écrans contrôlés par XDM est appelé le “X Display Manager Connection Protocol” (XDMCP). Ce fichier est un ensemble de règles pour contrôler les connexions XDMCP à partir de machines distantes. Par défaut, il autorise tous les clients à se connecter, mais cela n'a d'importance que si le fichier xdm-config est modifié pour accepter des connexions distantes. Xresources C'est un fichier de paramètres par défaut pour la sélection du serveur et des écrans d'ouverture de sessions. C'est l'endroit où l'apparence du programme d'ouverture de session peut être modifié. Le format est identique au fichier de paramètres par défaut des applications décrit dans la documentation d'&xfree86;. Xservers C'est une liste de choix des serveurs distants que l'écran de sélection devrait fournir. Xsession C'est la procédure par défaut à exécuter par XDM après qu'un utilisateur ait ouvert une session. Normalement chaque utilisateur disposera d'une procédure de session dans ~/.xsession qui sera utilisée en lieu et place du fichier par défaut. Xsetup_* Cela sera exécuté automatiquement avant d'afficher les interfaces de sélection et d'ouverture de session. Il existe une procédure pour chaque écran utilisé, nommée Xsetup_ suivie par le numéro de l'écran local (par exemple Xsetup_0). Généralement ces procédures exécutent un ou deux programmes en tâche de fond comme xconsole. xdm-config Ce dernier contient les paramètres sous la forme de paramètres par défaut qui sont applicables à chaque écran que l'installation gère. xdm-errors Ce dernier contient les messages de sortie du serveur X qu'XDM essaye d'exécuter. Si un terminal qu'XDM essaye de démarrer se bloque pour quelque raison, c'est le bon endroit pour chercher les messages d'erreur. Ces messages sont également écrits dans le fichier ~/.xsession-errors de l'utilisateur à chaque session. Exécuter un serveur d'affichage en réseau Afin de permettre aux autres clients de se connecter au serveur gérant l'affichage, éditez les règles de contrôle d'accès, et activez l'auditeur de demandes de connexion. Par défaut ces règles sont sur des valeurs conservatrices. Pour faire écouter à XDM les demandes de connexion, tout d'abord commentez une ligne du fichier xdm-config: ! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0 et ensuite relancez XDM. Rappelez vous que les commentaires dans des fichiers de paramètres par défaut d'applications débutent avec un caractère “!”, et non pas par l'habituel “#”. Un contrôle d'accès plus strict peut être désiré. Regardez les lignes d'exemple dans Xaccess, et référez-vous à la page de manuel &man.xdm.1;. Remplacements pour XDM Plusieurs remplacements pour le programme XDM de défaut existent. L'un d'eux, KDM (fourni avec KDE) est décrit plus loin dans son propre chapitre. KDM offre de nombreuses améliorations visuelles, ainsi que la fonction permettant aux utilisateurs de sélectionner leur gestionnaire de fenêtres au moment d'ouvrir la session. Valentino Vaschetto Contribution de Environnements de travail Cette section décrit les différents environnements de travail disponibles pour X sous FreeBSD. Le terme d'“environnement de travail” regroupe tout depuis le simple gestionnaire de fenêtres à la suite complète d'applications de bureau, comme KDE ou GNOME. GNOME A propos de GNOME GNOME GNOME est un environnement de travail convivial qui permet aux utilisateurs d'utiliser et de configurer facilement leur ordinateur. GNOME comprend un panneau - “panel” (pour lancer des applications et afficher des états), un bureau (où les données et les applications peuvent prendre place), un ensemble d'outils standards de bureau et d'applications, et un ensemble de conventions qui rendent aisée la coopération entre application et leur cohérence. Les utilisateurs d'autres systèmes d'exploitation ou environnement devraient se sentir en terrain de connaissance en utilisant le puissant environnement graphique que fournit GNOME. Plus d'information concernant GNOME sous FreeBSD peut être trouvé sur le site du Projet FreeBSD GNOME. Installer GNOME La méthode la plus simple pour installer GNOME est d'utiliser le menu “Desktop Configuration” durant le processus d'installation de FreeBSD comme décrit dans la du Chapitre 2. Il peut également être facilement installé à partir d'un logiciel pré-compilé ou du catalogue des logiciels portés: Pour installer l'ensemble de logiciels pré-compilés GNOME à partir du réseau, tapez simplement: &prompt.root; pkg_add -r gnome2 Pour compiler GNOME à partir des sources, utilisez le logiciel porté: &prompt.root; cd /usr/ports/x11/gnome2 &prompt.root; make install clean Une fois que GNOME est installé, on doit signaler au serveur X d'exécuter GNOME à la place du gestionnaire de fenêtre par défaut. Si un fichier .xinitrc personnalisé est déjà en place, remplacez simplement la ligne qui lance le gestionnaire de fenêtres avec une qui exécute /usr/X11R6/bin/gnome-session à la place. S'il n'y a rien de spécial à faire dans ce fichier de configuration, alors il est suffisant de taper: &prompt.user; echo "/usr/X11R6/bin/gnome-session" > ~/.xinitrc Ensuite, tapez startx, et l'environnement de travail GNOME sera lancé. Si un gestionnaire d'affichage, comme XDM, est utilisé, cela ne fonctionnera pas. A la place, créez un fichier exécutable .xsession contenant la même commande. Pour cela, éditez le fichier et remplacez la commande correspondant au gestionnaire de fenêtres actuel avec /usr/X11R6/bin/gnome-session: &prompt.user; echo "#!/bin/sh" > ~/.xsession &prompt.user; echo "/usr/X11R6/bin/gnome-session" >> ~/.xsession &prompt.user; chmod +x ~/.xsession Une autre option est de configurer le gestionnaire d'affichage pour permettre la sélection du gestionnaire de fenêtres au moment de l'ouverture de session; la section de compléments sur KDE explique comment le faire pour kdm, le gestionnaire d'affichage de KDE. Polices de caractères anticrénelage avec GNOME GNOME polices de caractères anticrénelage X11 supporte l'anticrénelage par l'intermédiaire de son extension “RENDER“. GTK+ 2.0 et suivant (la boîte à outils utilisé par GNOME) peuvent utiliser cette fonctionnalité. La configuration de l'anticrénelage est décrite dans la . Aussi, avec des logiciels à jour, l'anticrénelage est possible dans l'environnement de travail GNOME. Aller dans le menu Applications Desktop Preferences Font , et sélectionnez soit Best shapes, soit Best contrast, ou Subpixel smoothing (LCDs). Pour une application GTK+ qui ne fait pas partie de l'environnement de travail GNOME, fixez la variable d'environement GDK_USE_XFT à 1 avant de lancer le programme. KDE KDE A propos de KDE KDE est un environnement de travail moderne facile d'emploi. Quelques unes des choses qu'apporte KDE aux utilisateurs sont: Un magnifique bureau moderne Une utilisation réseau complètement transparente Un système d'aide intégré utile, pour un accès cohérent à l'aide sur l'utilisation de l'environnement KDE et ses applications Une apparence et une prise en main commune pour toutes les applications KDE Des menus, barres d'outils, combinaisons de touches, couleurs, etc... standardisées Internationalisation: KDE est disponible dans plus de 40 langues Un système centralisé de configuration de l'environnement Un grand nombre d'applications KDE utiles KDE dispose d'une suite bureautique basée sur la technologie “KParts” comprenant un tableur, un logiciel de présentation, un organiseur, un client pour forums de discussions et plus. KDE est fourni également avec un navigateur web appelé Konqueror, qui représente un solide concurrent aux autres navigateurs web sous &unix;. Plus d'information sur KDE peut être trouvé sur le site de KDE. Pour des informations et des ressources spécifiques à l'utilisation de KDE sous FreeBSD, consultez le site de l'équipe FreeBSD-/KDE. Installer KDE Juste comme avec GNOME ou tout autre environnement de travail, la méthode la plus aisée pour installer KDE est d'utiliser le menu “Desktop Configuration” durant le processus d'installation de FreeBSD comme décrit dans la du Chapitre 2. Encore une fois, le logiciel peut être aisément installé à partir des logiciels pré-compilés ou du catalogue des logiciels portés: Pour installer la version pré-compilée de KDE à partir du réseau, tapez simplement: &prompt.root; pkg_add -r kde &man.pkg.add.1; récupérera automatiquement la dernière version de l'application. Pour compiler KDE à partir des sources, utilisez le logiciel porté: &prompt.root; cd /usr/ports/x11/kde3 &prompt.root; make install clean Après que KDE ait été installé, on doit indiquer au serveur X de lancer cette application à la place du gestionnaire de fenêtres par défaut. Ceci est effectué en éditant le fichier .xinitrc: &prompt.user; echo "exec startkde" > ~/.xinitrc Maintenant, quand le système X Window est invoqué avec la commande startx, KDE sera l'environnement de travail utilisé. Si un gestionnaire d'affichage comme XDM est utilisé, la configuration sera légèrement différente. Editez le fichier .xsession à la place. Les instructions concernant kdm seront données plus loin dans ce chapitre. Plus de détails sur KDE Maintenant que KDE est installé sur le système, la plupart des choses peuvent être découvertes à travers les pages d'aide, ou juste en pointant et cliquant sur les différents menus. Les utilisateurs de &windows; ou de &mac; se sentiront presque en terrain de connaissance. La meilleure référence pour KDE est la documentation en ligne. KDE est livré avec son propre navigateur internet Konqueror, et des douzaines d'applications utiles, et une large documentation. Le reste de cette section traite d'éléments techniques qui sont difficiles à apprendre par une exploration au hasard. Le gestionnaire d'affichage de KDE KDE gestionnaire d'affichage L'administrateur d'un système multi-utilisateurs peut désirer avoir un écran graphique d'ouverture de session pour accueillir les utilisateurs. XDM peut être utilisé comme décrit plus tôt. Cependant, KDE inclus une alternative, kdm, qui est conçue pour paraître plus attractive et inclure plus d'options d'ouverture de session. En particulier, les utilisateurs peuvent facilement (par l'intermédiaire d'un menu) sélectionner quel environnement de travail (KDE, GNOME, ou quelque chose d'autre) exécuter après l'ouverture de session. Pour commencer, exécutez le panneau de contrôle de KDE, kcontrol, en tant que root. Il est généralement considéré comme imprudent d'exécuter l'intégralité de l'environnement X avec les privilèges de root. A la place, exécutez le gestionnaire de fenêtres en tant qu'utilisateur ordinaire, ouvrez une fenêtre de terminal (comme xterm ou konsole de KDE), devenez root avec su (l'utilisateur doit être dans le groupe wheel dans le fichier /etc/group pour cela), puis ensuite tapez kcontrol. Cliquez sur l'icone sur la gauche marquée System, puis sur Login manager. Sur la droite il y a diverses options configurables, que le manuel de KDE expliquera plus en détail. Cliquez sur sessions sur la droite. Cliquez New type pour ajouter divers gestionnaires de fenêtres et environnements de travail. Ce sont juste des étiquettes, donc il peuvent afficher KDE et GNOME plutôt que startkde ou gnome-session. Ajoutez une étiquette failsafe. Essayez les autres menus également, ils sont principalement cosmétique et explicites. Quand vous avez terminé, cliquez sur Apply en bas, et quittez le centre de contrôle. Pour être sûr que kdm comprenne ce que les étiquettes (KDE, GNOME etc...) signifient, éditez les fichiers utilisés par XDM. Dans KDE 2.2 ceci a été modifié: kdm utilise désormais ses propres fichiers de configuration. Veuillez consulter la documentation de KDE 2.2 pour plus de détails. Dans une fenêtre de terminal, en tant que root, éditez le fichier /usr/X11R6/lib/X11/xdm/Xsession. Il y a une section au milieu comme celle-ci: case $# in 1) case $1 in failsafe) exec xterm -geometry 80x24-0-0 ;; esac esac Quelques lignes doivent être ajoutées à cette section. En supposant que les étiquettes utilisées étaient “KDE” et “GNOME“, utilisez ce qui suit: case $# in 1) case $1 in kde) exec /usr/local/bin/startkde ;; GNOME) exec /usr/X11R6/bin/gnome-session ;; failsafe) exec xterm -geometry 80x24-0-0 ;; esac esac Pour avoir le fond d'écran de l'environnement KDE durant la procédure de connexion, la ligne suivante doit être ajoutée au fichier /usr/X11R6/lib/X11/xdm/Xsetup_0: /usr/local/bin/kdmdesktop Maintenant, vérifiez que kdm est listé dans /etc/ttys pour être exécuté au prochain démarrage. Pour cela, suivez simplement les instructions de la section précedente sur XDM et remplacez les références au programme /usr/X11R6/bin/xdm par /usr/local/bin/kdm. Polices de caractères anticrénelage KDE polices de caractères anticrénelage X11 supporte l'anticrénelage par l'intermédiaire de son extension “RENDER”, et introduit avec la version 2.3, Qt (le “toolkit” utilisé par KDE) supporte cette extension. La configuration de ceci est décrite dans la sur les polices X11 anticrénelage. Donc avec des logiciels à jour, l'anticrénelage est possible sous un environnement KDE. Rendez vous dans le menu de KDE2, aller dans Preferences Look and Feel Fonts , et cliquez sur la boîte à cocher Use Anti-Aliasing for Fonts and Icons. Pour une application Qt qui ne fait pas partie de KDE, la variable d'environnement QT_XFT doit être fixée à la valeur true avant de lancer le programme. XFce A propos d'XFce XFce est un environnement de travail basé sur le “toolkit” GTK+ utilisé par GNOME, mais est plus léger et est destiné à ceux qui veulent un bureau simple, et efficace qui est néanmoins facile d'utilisation et de configuration. Visuellement, il ressemble énormément à CDE, que l'on trouve sur les systèmes &unix; commerciaux. Quelques unes des caractéristiques d'XFce sont: Un bureau de prise en main aisée et simple Complètement configurable à la souris, avec glisser-déposer, etc... Une barre principale similaire à CDE, avec des menus, des petites applications et des lanceurs d'applications Un gestionnaire de fenêtre intégré, un gestionnaire de fichiers, un gestionnaire du son, un module de compatibilité GNOME, et d'autres choses Personnalisable avec des thèmes (comme il utilise GTK+) Rapide, léger et efficace: idéal pour les machines vieilles/lentes ou avec des limitations en mémoire Plus d'information sur XFce peut être trouvé sur le site d'XFce. Installer XFce Une version pré-compilée d'XFce existe (au moment où ces lignes sont écrites). Pour installer, tapez simplement: &prompt.root; pkg_add -r xfce4 Alternativement, pour compiler à partir des sources, utilisez le catalogue des logiciels portés: &prompt.root; cd /usr/ports/x11-wm/xfce4 &prompt.root; make install clean Maintenant, il faut indiquer au serveur X d'exécuter XFce au prochain démarrage d'X. Tapez ceci: &prompt.user; echo "/usr/X11R6/bin/startxfce4" > ~/.xinitrc Au prochain démarrage d'X, XFce sera l'environnement de travail. Comme précédemment, si un gestionnaire d'affichage comme XDM est utilisé, créez un fichier .xsession, comme décrit dans la section sur GNOME, mais avec la commande /usr/X11R6/bin/startxfce4; ou configurez le gestionnaire d'affichage pour permettre la sélection d'un environnement de travail au moment de la connexion, comme expliqué dans la section sur kdm.