Guide linux des INpactiens - ASCT Groupe Linux
Transcription
Guide linux des INpactiens - ASCT Groupe Linux
Guide linux des INpactiens documents compilés par tuXXX 3 septembre 2005 2 Droits Ces articles ont été publiés sur le forum du site PCINpact 1 . Les droits sur ces textes restent la propriété de leurs auteurs respectifs, ce document n’étant que la transposition et le regroupement des textes parus sur le forum. 1 http://www.pcinpact.com/forum/rubrique_20.htm Table des matières Table des matières 3 I Bases 5 1 [Global] Pourquoi passer au libre ? 1.1 Note préliminaire . . . . . . . . . . . . . . . . . . . . 1.2 Quels sont les avantages d’un système libre ? . . . . . 1.3 Pourquoi passer sur un système libre ? . . . . . . . . . 1.4 Qu’est ce que je peux faire avec Linux ou *BSD ? . . . 1.5 Qu’est ce que les OS libres font mieux que Windows ? 1.6 Qu’est ce que je ne peux pas faire avec Linux/*BSD ? . 1.7 Le FUD habituel . . . . . . . . . . . . . . . . . . . . 1.8 Par quelle distribution commencer ? . . . . . . . . . . 1.9 Les équivalences logicielles . . . . . . . . . . . . . . . 1.10 Pour continuer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7 7 8 9 10 11 11 13 14 14 [Tuto][Débutant] Choisir sa distribution linux 2.1 Introduction . . . . . . . . . . . . . . . . . . . . 2.2 Les distributions live-CD . . . . . . . . . . . . . 2.3 Les distributions pour débutants sous linux . . . . 2.4 Les distributions pour les utilisateurs plus avancés 2.5 Les autres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 15 15 16 17 18 2 II 3 4 . . . . . . . . . . . . . . . Initiation [Tuto][Débutant] Topic "Démarrage" 3.1 Introduction . . . . . . . . . . . . . . . 3.2 Les disques dur . . . . . . . . . . . . . 3.3 Les utilisateurs . . . . . . . . . . . . . 3.4 La console . . . . . . . . . . . . . . . . 3.5 L’utilisation de la touche "tab" . . . . . 3.6 Quelques commandes de base . . . . . 3.7 Commandes de l’administrateur . . . . 3.8 Manipulation de flux . . . . . . . . . . 3.9 Les opérateurs . . . . . . . . . . . . . . 3.10 Les commandes de manipulation de flux 3.11 Partitions . . . . . . . . . . . . . . . . 3.12 Fdisk . . . . . . . . . . . . . . . . . . 3.13 Formatage . . . . . . . . . . . . . . . . 3.14 Utilisation de vi, concepts de base . . . 3.15 Arrrggghhh j’ai un bug ! . . . . . . . . 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 21 21 22 22 22 22 23 23 23 24 24 25 25 25 26 [Tuto][Débutant] Parallèles MS Windows <=> GNU/Linux 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Installation, démarrage quels différences ? . . . . . . . . . . . . . . . . . . . . . 4.3 Utiliser un ordinateur personnel sous linux ça change de Windows ? . . . . . . . 4.4 Oulà, mais où est placé "Mes Documents" ? ? . . . . . . . . . . . . . . . . . . . 4.5 Un ordinateur sous linux ça s’utilise encore avec un écran noir type MS-DOS ? ? . 4.6 Comment que j’fais pour installer un logiciel du coup ? ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 27 27 28 28 29 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 TABLE DES MATIÈRES 4.7 Parallèles avec les commandes MS-DOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 [Tuto][Débutant] L’arborescence des fichiers sous Linux 6 [Tuto][Débutant] fstab ou la gestion des partitions 6.1 Remarques . . . . . . . . . . . . . . . . . . . 6.2 Présentation . . . . . . . . . . . . . . . . . . . 6.3 On mets les mains dans le cambouis ? . . . . . 6.4 Et après, comment ca fonctionne ? . . . . . . . III 7 8 . . . . . . . . . . . . 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Distributions [Tuto][Debutant] Mandriva 7.1 Introduction . . . . . . . . . . . . . . 7.2 Installation de Mandrakelinux 10.1 . . 7.3 Configurer sa connection internet . . . 7.4 Installation des pilotes graphiques 3D 7.5 Ajout de logiciels avec urpmi . . . . . 7.6 La FAQ "Matérielle" . . . . . . . . . 7.7 La FAQ "Logicielle" . . . . . . . . . 33 33 33 34 35 37 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 39 39 39 40 40 43 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 49 50 50 51 [Tuto][Debutant] Fedora 9.1 Introduction . . . . . . . . . . . . . . . . . . . . . 9.2 Prérequis . . . . . . . . . . . . . . . . . . . . . . 9.3 Préparation et Partitionnement . . . . . . . . . . . 9.4 L’installation . . . . . . . . . . . . . . . . . . . . 9.5 Quelques conseils pratiques . . . . . . . . . . . . . 9.6 L’Upgrade et la gestion des paquetages/applications 9.7 L’environnement graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 55 55 56 56 56 57 58 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 59 59 61 62 64 67 69 11 [Tuto][Initié] Topic officiel gentoo 11.1 Qu’est-ce que Gentoo ? . . . . . . . . . . . . . . . 11.2 L’installation des logiciels . . . . . . . . . . . . . 11.3 Le noyau . . . . . . . . . . . . . . . . . . . . . . 11.4 Installation . . . . . . . . . . . . . . . . . . . . . 11.5 Utilisation avancée de portage . . . . . . . . . . . 11.6 Mettre à jour votre distribution ! . . . . . . . . . . 11.7 Le guide des CFLAGS . . . . . . . . . . . . . . . 11.8 Le prelink . . . . . . . . . . . . . . . . . . . . . . 11.9 Installation des drivers nVIDIA . . . . . . . . . . . 11.10Installation des drivers ATI . . . . . . . . . . . . . 11.11Des problèmes pendant l’installation d’un logiciel ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 73 73 74 75 75 77 77 77 78 78 79 9 [Tuto][Debutant] SuSE 8.1 La SuSE . . . . . . . . . . . . . . . . 8.2 Apt4Rpm . . . . . . . . . . . . . . . 8.3 Installer APT4RPM . . . . . . . . . . 8.4 Installer les pilotes pour sa carte vidéo 30 . . . . 10 [Tuto][Initié] Topic officiel debian 10.1 Présentation . . . . . . . . . . . . . . . 10.2 Description de la distribution . . . . . . 10.3 Installation du système . . . . . . . . . 10.4 Gestion des packages . . . . . . . . . . 10.5 Compilation d’un noyau à mode Debian 10.6 Installation des pilotes graphiques . . . 10.7 Réseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TABLE DES MATIÈRES IV 5 Avancé 12 [Tuto][Initié] Noyau Linux 12.1 Introduction . . . . . . . . . 12.2 Pourquoi un noyau ? . . . . 12.3 Installation du noyau . . . . 12.4 Installation d’un patch . . . 12.5 Configuration du noyau . . . 12.6 Un module ? Mais queskecé ? 12.7 Configuration . . . . . . . . 12.8 Sauvegarde . . . . . . . . . 12.9 Compilation . . . . . . . . . 12.10Trucs et astuces . . . . . . . 12.11A quoi sert l’initrd ? . . . . . 81 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 83 83 83 84 84 84 85 88 88 89 89 13 [Tuto][Initié] Configuration de X 13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . 13.2 Configuration automatique . . . . . . . . . . . . . . 13.3 Approfondissements . . . . . . . . . . . . . . . . . 13.4 Fichier de log . . . . . . . . . . . . . . . . . . . . . 13.5 Drivers cartes 3D . . . . . . . . . . . . . . . . . . . 13.6 Configuration facile d’écran . . . . . . . . . . . . . 13.7 Configuration des souris à 5 boutons . . . . . . . . . 13.8 Configuration de plusieurs écrans . . . . . . . . . . . 13.9 Exemple . . . . . . . . . . . . . . . . . . . . . . . . 13.10Activation de l’extension "composite" sous X.org 6.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 91 91 91 95 95 95 95 96 96 97 14 [Tuto][Initié] Bootloaders 14.1 Qu’est-ce qu’un bootloader ? . 14.2 lilo, grub, lequel est le mieux ? 14.3 grub . . . . . . . . . . . . . . 14.4 lilo . . . . . . . . . . . . . . . 14.5 trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 . 99 . 99 . 99 . 101 . 102 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 TABLE DES MATIÈRES Première partie Bases 7 Chapitre 1 [Global] Pourquoi passer au libre ? par Sandeman 1.1 Note préliminaire Cet article est écrit afin de répondre aux questions de base des personnes qui seraient intéressées par la découverte des OS libres (Linux et *BSD, essentiellement). Il présente les intérêts et inconvénients, la démarche. C’est une synthèse de messages postés sur le forum PCiNpact, rédigée par des habitués du forum, que l’on espère habités par l’INpactitude, et qui connaissent également bien l’"autre" monde (celui du propriétaire). A noter également que la philosophie sur libre dépasse celui des OS, et concerne de nombreux logiciels, y compris ceux fonctionnant dans les environnements propriétaires. 1.2 Quels sont les avantages d’un système libre ? Quelques grands classiques nécessitent parfois d’être rappelés : 1.2.1 La GPL (General Public Licence) Une partie des logiciels libres sont protégés par la licence GPL. Ses quatre grands principes sont : – le droit d’utiliser, – le droit de modifier, – le droit de diffuser, – l’accès au code source. Les trois premiers sont un gage de libre accès et de sérénité pour l’utilisateur final, le quatrième un gage de sécurité et de pérénité. 1.2.2 Références la GPL 1 (en version française)2 . La philosophie du projet GNU 3 Un excellent essai en anglais 4 sur le même sujet que ce topic, et sa traduction 1.2.3 Plus concrètement Un logiciel libre, même s’il est supporté par une fondation ou une entreprise, reste la propriété de tous. Ceci protège l’utilisateur final que nous sommes : – l’utilisateur ne devient pas captif d’un format ou d’une application, puisque la façon dont ses données sont traitées est accessible, – Il n’a pas à craindre de décisions unilatérales telles que l’arrêt du support d’un logiciel ou d’une version, ou la disparition pure et simple d’un produit ou d’un éditeur, – l’utilisateur n’a pas non plus à craindre une utilisation cachée de ses données à son insu, 1 http://www.gnu.org/copyleft/gpl.html 2 http://www.april.org/gnu/gpl_french.html 3 http://www.gnu.org/philosophy/philosophy.fr.html 4 http://www.dwheeler.com/oss_fs_why.html 9 10 CHAPITRE 1. [GLOBAL] POURQUOI PASSER AU LIBRE ? – il bénéficie de la réactivité de la communauté qui travaille activement à la qualité des produits : l’exigence de sécurité prime, tant pour la découverte que la résolution de failles de sécurité, le support de nouvelles versions ou architectures, voire de nouvelles technologies et de contraintes techniques. 1.3 1.3.1 Pourquoi passer sur un système libre ? Par curiosité Voir ce qui se fait ailleurs, et comment, est une preuve de curiosité et d’ouverture... Certains OS ou logiciels libres sont tellement décriés ou combattus par certains, qu’il doit bien y avoir une raison : on ne craint pas les faibles... 1.3.2 Par nécessité économique L’achat du matériel est déjà en soit une dépense importante, que dire alors des logiciels si on souhaite rester dans le monde du propriétaire et être en conformité avec les lois. Rien qu’avec un OS commercial et un pack bureautique, on arrive au prix d’une petite config. L’alternative du monde libre est alors un bon moyen d’investir plus dans le matériel (ou dans autre chose que l’informatique ;) ) 1.3.3 Par bonne conscience Principalement pour celui qui trouve plus satisfaisant d’utiliser voire de faire vivre des logiciels libres, plutôt que d’utiliser des versions pirates de logiciels commerciaux. 1.3.4 Par nécessité professionelle Les OS libres sont des dérivés d’UNIX, et UNIX reste une solution majeure dans les environnements professionnels. Débuter sur Linux ou une variante de BSD est un moyen rapide et économique d’apprendre le fonctionnement d’UNIX, avec le soutien de la communauté et la profusion de guides qu’elle a créés. D’autant que ces OS ne sont pas des ersatzs des Unix commerciaux, mais bien des OS à part entière, aussi performants, fiables et même mieux lotis en terme d’offre logicielle. 1.3.5 Pour comprendre Lorsque vous installer un OS libre, vous avez la possibilité de décortiquer plus ou moins profondément son mécanisme de fonctionnement : les noyaux, les services ... Ce n’est certes pas à la portée de tout le monde, ni nécessaire à tout le monde, mais il est parfois satisfaisant intellectuellement de comprendre ce qui se cache dans l’OS et de ne pas utiliser une "boîte noire". Par ailleurs cette connaissance plus ou moins approfondie, mais accessible, permet d’être aidé par la communauté, puis de l’aider : face à un problème il suffit de consulter le fichier de log, se faire aider si on ne le comprend pas, puis d’aider son prochain une fois que l’on a compris le mécanisme. 1.3.6 Pour répondre à un besoin Un PC obsolète peut facilement être recyclé sous Linux, et peut faire office à la fois de : – Firewall (avec un contrôle très précis), – partage de connexion, – proxy (accélération de la navigation et fonctions de filtrage de contenu), – relai de messagerie (afin par exemple d’utiliser d’autres adresses mél que celles de l’opérateur), – client messagerie (avec anti-spam et anti-virus), – serveur universel de fichiers et d’impression, – serveur DHCP et DNS pour le reste du réseau interne (qui peut sans problème être en Windows), – serveur web personnel, – serveur de streaming audio... et bien d’autres fonctions encore... pour un investissement logiciel nul, une grande stabilité et une bonne simplicité d’administration. Ce topic sur la configuration minimale vous permettra d’en savoir plus. 1.3.7 Par sécurité Parce qu’il est parfois frustrant de réinstaller sa machine à cause d’un virus, d’un spyware, d’une baisse de performances inexplicable ... et donc légitime de s’intéresser à un environnement plus robuste. La partie vie privée peut également être une inquiétude. L’abondance des spywares, le flou qui entoure les nouveaux CLUF, l’impossibilité de 1.4. QU’EST CE QUE JE PEUX FAIRE AVEC LINUX OU *BSD ? 11 savoir ce que certains logiciels font transiter comme informations ... peut pousser certains à se tourner vers les logiciels libres. 1.3.8 Pour des raisons philosophiques ou politiques Là, c’est un sujet glissant. Les diverses raisons peuvent être par exemple – Eviter d’encourager une situation monopolistique, – Avoir la sensation d’être utile, en pouvant participer et faire évoluer une technologie, – Faire partie d’une communauté sans frontières, – Rejoindre un certain idéalisme où la qualité prime sur l’argent, – Intégrer le dernier espace vraiment libre d’échange ... Biensur, utiliser Linux n’oblige personne à adhérer de près ou de loin à ces raisons ! 1.4 Qu’est ce que je peux faire avec Linux ou *BSD ? Ici, avec une configuration même modeste il est possible de faire un grand nombre de choses. 1.4.1 Faire des travaux bureautiques, techniques, scientifiques Le monde libre est riche de nombreuses solutions dans tous ces domaines, certaines privilégiant la simplicité, d’autres la complétude. Certaines applications sont même sans équivalent dans le monde propriétaire : – En bureautique : OpenOffice, KOffice, Abiword... – En graphisme : The Gimp, Povray, Blender ... – En environnement technique : Kivio, Dia, Electric, Geda, Gdis, Qcad ... – En envrionnement scientifique : Gnuplot, Maxima, SciLab, Celestia, ... 1.4.2 Développer Le développement est le coeur vivant de la communauté du libre. Il est donc naturel que cette activité soit bien représentée. Les outils de développement s’appuient sur les spécifications des standards, ce qui garantit une bonne portabilité. – Il existe des compilateurs pour à peu près tous les langages, et il faut noter que gcc compile du C, du C++, du Fortran et du Java à lui tout seul ! – Les langages de script se comptent par dizaines : Perl, PHP, Python, Ruby, Pike, Tcl/Tk ... – Les environnements de développement et les IDE, tels que KDevelop, sont également nombreux. – Pour développer des sites, il existe des outils tels que Quanta+, nVU ... – Des outils de profiling et de debugging universels sont également disponibles, – Les outils de documentation abondent (par exemple Doxygen) et permettent de générer des formats standard et portables (man, DVI, LaTeX ...). 1.4.3 Utiliser Internet Le monde du libre offre une grande panoplie de logiciels pour utiliser Internet, qu’il s’agisse de : – naviguer (Mozilla & Firefox, Konqueror, Galeon ...), – consulter sa messagerie (Sylpheed, Kmail, Thunderbird ...), – faire de la messagerie instantanée (Jabber, Kopete, licq, amsn, gnomemeeting ...) – faire du peer-to-peer (mldonkey, azureus, xmule ...) – etc. et ce avec un niveau de sécurité élevé, où vous n’avez pas à craindre les popups, les spywares et les attachements suspects. D’autant que de puissants outils anti-spam (spamassassin) sont également disponibles librement. 1.4.4 Profiter du Multimédia Il y a une grande variété d’outils multimédia disponibles sous Linux & *BSD : – pour lire des CD Audio, DVD (xine, videolan ...) – lire des fichiers audio (xmms, kaffeine ...) – lire des fichiers video (mplayer, xine, xmms, totm, vlc ...) – encoder des fichiers (mencoder, transcode, abcde ...) – faire du montage video (cinelerra...) – regarder et retoucher ses photos numériques (gimp...) – écouter des radios en ligne (streamtuner), etc. 12 CHAPITRE 1. [GLOBAL] POURQUOI PASSER AU LIBRE ? 1.4.5 Jouer Voir le topic Les jeux sous Linux, ainsi que la rubrique "le FUD habituel" ci-dessous. – Quelques grands jeux sont disponibles et tout aussi performants sous Linux : la série des Unreal Tournament, les Quake, Neverwinter Night ... – des jeux natifs tels que TuxRacer, Enemy Territory, Battle At Wesnoth ou Vega Strike et son mod Privateer-Reamke complètent l’offre, – des développements alternatifs de jeux classiques sont disponibles, avec toutes les améliorations que cela implique : FreeCiv, Lincity, Frozen Bubble, Dopewars... – Par ailleurs plusieurs environnements d’émulation sont disponibles (consoles de jeux, bornes d’arcade...) ainsi que DirectX (WineX aka Cedega). – Malheureusement, certains jeux récents refusent obstinément de tourner, c’est un choix regrettable de l’éditeur... 1.4.6 Réparer L’utilisation d’un LiveCD Linux (voir les rubriques concernant les distributions), permet de diagnostiquer ou de réparer une machine dans d’excellentes conditions, sans compromettre l’installation existante, et avec des outils très puissants. Pour réparer des Linux comme des Windows ! 1.4.7 Créer son propre OS Ou du moins sa propre distribution, ce qui est peu moins ambitieux. La flexibilité du système, par rapport à un OS propriétaire monolithique, où des ressources mémoire, disque et CPU sont gaspillées pour des fonctions ou des services qui ne serviront jamais ; permet de construire un OS complètement personnalisé, répondant au mieux à ses besoins propres. À la base même, il est possible - et même recommandé - de configurer son noyau pour n’y intégrer que les éléments dont on a besoin. Certaines distributions savent également adapter les logiciels lors de leur compilation pour coller au plus près des architectures (par exemple la distribution Gentoo). Pour des environnements spécifiques : mini PC, DivX station, OS embarqué ... il n’y a pas de meilleur choix ! 1.4.8 En résumé ? Tout ! Et si ça n’existe pas encore, personne ne vous interdit de le créer ou de demander à ce que ça soit fait ! 1.4.9 Et comment je m’y retrouve ? Vous pouvez consulter ce topic Parallèles MS Windows - GNU/Linux qui devrait vous éclairer. 1.5 1.5.1 Qu’est ce que les OS libres font mieux que Windows ? La sécurité Toujours du fait qu’ils sont dérivés d’UNIX, les OS libres ont une avance considérable sur les solutions Microsoft, qui n’ont pas initialement été pensées dans cette optique - malgré les efforts récents. Les notions fondamentales de droits et de propriétaires permettent de s’assurer qu’une application ou un utilisateur "classique" ne puisse pas interférer avec le fonctionnement du système ; il ne peut que détruire son environnement, s’il le fait exprès. Par ailleurs les mécanismes de sécurité réseau intégrés aux derniers noyaux Linux (iptables et ipchains, resp en noyaux version 2.4 et 2.6) permettent d’atteindre un niveau de sécurité inégalé en terme de fiabilité et de contrôle. Voir le topic Sécuriser son Linux. 1.5.2 L’interface Là où le monde Windows nous a habitué à une interface de plus en plus gourmande, et d’un aspect relativement semblable depuis Windows 95, les OS libres proposent profusion d’interfaces graphiques et de gestionnaires de fenêtres, qui se distinguent par leur aspect, leur complexité et leur consommation en ressources : – light Fluxbox, Openbox, WindowMaker : permettent d’avoir une interface simple et complète pour une consommation de ressources extrèmement faible. – intermédiaires xfce, enlightement : un environnement plus riche, mais performant sur les configurations les plus modestes. – évoluées les deux "rivales" Gnome et KDE sont des environnements extrèmement complets, visuellement très évolués, et très paramétrables. 1.6. QU’EST CE QUE JE NE PEUX PAS FAIRE AVEC LINUX/*BSD ? 1.5.3 13 Les services Comme évoqué précédemment, il est facile de transformer un PC (ou bien d’autres plateformes matérielles, d’ailleurs, même modestes) en serveur aux multiples fonctions, sans avoir d’inquiétude que la stabilité, la fiabilité ou la sécurité. Les outils sont conformes aux standards (RFC, normes ...) ce qui est un gage de compatibilité. Dans le domaine professionel, des environnements BSD ou Linux sont utilisés pour leur fiabilité et leur performances : ils sont cités à de nombreuses reprises dans les premières places du Top500, ou squattent litéralement les Classements d’uptime de NetCraft. 1.6 1.6.1 Qu’est ce que je ne peux pas faire avec Linux/*BSD ? Utiliser certains logiciels propriétaires. Il faut être clair, les éditeurs d’application n’ont pas forcément volonté de porter leurs logiciels sous environnement ouvert. Malgré les environnements d’émulation, et autres, certaines logiciels ne pourront pas tourner correctement... 1.6.2 Jouer à certains jeux Les jeux qui ne s’appuient pas sur des technologies portables et complètement spécifiées (telles que OpenGL ou SDL) sont plus difficiles à faire tourner sous Linux. DirectX en est l’illustration, et malgré les tentatives d’émulations (en particulier WineX), il a fallu par exemple quelques semaines avant de pouvoir faire tourner FarCry sous Linux... 1.6.3 Les BSOD Exemple 5 Sauf avec un certain économiseur d’écran. 1.7 1.7.1 Le FUD habituel Le FUD ? Le FUD (Fear, Uncertainty, Doubt) est une politique agressive utilisée pour ternir l’image des concurrents. Très courant aux Etats-Unis, il consiste à émettre sans l’avouer de fausses informations, et de les faire colporter par le plus grand nombre. Un exemple magistral en suivant ce lien. Linux comme Windows en sont victimes, voici une présentation des principales légendes attribuées à Linux, et une explication plus réaliste. 1.7.2 Linux est compliqué à installer. Quiconque aura essayé d’installer une Mandriva, une Redhat ou une Fedora (voir rubrique "par quelle distribution commencer ?") pourra témoigner du contraire : ces distributions sont même qualifiées par certains de "clicodromes à la Windows", ce qui n’enlève rien à leur valeur, si ce n’est pédagogique puisqu’installer un Linux ou une variante de BSD est le meilleur moyen de comprendre comment il marche. Vous pouvez par exemple consulter cet excellent tutoriel sur l’installation de Mandrake 10.1, et constater par vous même la convivialité et la simplicité de la procédure. 1.7.3 Il n’y a pas de drivers Il faut tourner le problème différemment. Il est vrai que tous les constructeurs ne font pas l’effort de développer les drivers sous Linux. Parceque ça consomme du temps, donc de l’argent, et que s’ils confient ça à des tiers, ceci revient à divulguer des informations importantes concernant leur matériel. Cependant, la communauté est très active, et le matériel le plus répandu, même très récent, est supporté. Il faut donc faire attention à ne pas acheter "n’importe quoi" si on destine sa machine à une utilisation Linux, en espérant qu’ensuite le matériel soit supporté. Mieux vaut partir sur des standards : nVidia, 3Com, Intel, Adaptec, Cisco ... que des configurations "exotiques". Concernant les drivers réseau, a noter l’existence de ndiswrapper qui permet d’utiliser nativement les drivers Windows sous Linux 1.7.4 Il y a des failles de sécurité et des virus sous Linux et *BSD C’est vrai a minima pour les failles, comme dans tout système comportant des milliers (millions) de lignes de code. Cependant : – ce code est accessible à tous et donc scruté par de nombreuses personnes qui peuvent avoir des approches différentes, non dictées par des impératifs de production ou de rentabilité. La réactivité est également bien meilleure. 5 http://www.palindrom.agava.ru/images/intro/bsod.gif 14 CHAPITRE 1. [GLOBAL] POURQUOI PASSER AU LIBRE ? – le modèle technique sous-jacent, basé sur Unix, est beaucoup plus robuste et sécurisé. La sécurité "par défaut" du système est considérable. – les rares failles critiques nécessitaient un accès local sur la machine, leur portée est donc considérablement moins importantes que celles enregistrées dans le monde Windows. 1.7.5 Même, chaque mois il y a plus de failles sous Linux que sous Windows Effectivement certaines revues affichent des tableaux mensuels dans lesquelles les distributions Linux font "jeu égal" avec le monde Microsoft en terme de failles. Ce sont des statistiques en trompe l’oeil, pour la raison suivante : – les failles Windows se limitent à celle concernant l’OS et ses composants : IE, IIS, WMP, OE. – les failles annoncées sous Linux concernent tous les packages de la distribution, c’est-à-dire un périmètre beaucoup plus vaste (par exemple Debian comporte 13000 paquets). – il s’agit souvent de la même faille dans chaque distribution : additionner les failles Linux dans ces tableaux reviendrait à mulitiplier les failles Windows par le nombre de versions de Windows ou du composant impactées. 1.7.6 Moins de failles c’est normal il y a moins de monde à utiliser "tel logiciel libre" Argument récurrent et facilement réfuté par des exemples tels que Apache, Tomcat, PHP, Sendmail et Postfix, Squid, MySQL qui sont des logiciels Open Source très largement utilisés (chacun est leader en terme d’utilisation dans son secteur), et pourtant très rarement victimes de failles. C’est d’autant plus paradoxal que, le code source est disponible et que les détracteurs du monde libre étant nombreux et puissants. 1.7.7 Et puis il y a des gigas d’update tous les mois Sur les distributions conçues pour coller au plus près des développements (Gentoo, Debian Sid), les updates sont effectivement rapides, quelques dizaines ou centaines de Mo par mois tout au plus. Tout dépend en fait du niveau d’innovation recherché. Pour les plus stabilisées (Debian Woody, par exemple), les updates représentent rarement plus de quelques mégas par an ! A la différence d’OS du monde propriétaire, la maintenance des distributions et des noyaux est assurée sur plusieurs générations (le noyau 2.2 continue de vivre ! !). 1.7.8 C’est du nawak faut recompiler son noyau tout le temps Mettre à jour son noyau est le pendant naturel de mettre à jour son OS et ses drivers dans le monde Windows. Une nouvelle version mineure du noyau n’est que la somme des mises à jour à l’instant t du noyau : – correction d’éventuels bugs ou failles – mise à jour éventuelle de drivers existants – ajout de nouveaux drivers – ajout de nouvelles fonctionalités, cosmétiques ou techniques Quelques vérités à rappeler : – Si l’OS fonctionne, ce n’est pas la peine de mettre à jour son noyau, sauf en cas de faille de sécurité. – l’"exercice" de choix des options n’est en général à faire qu’une fois, il est facile ensuite de réutiliser le fichier de configuration précédent. 1.7.9 En tout cas le choix logiciel est plus restreint que sous Windows Les rubriques "Ce que je peux / ne peux pas faire avec un système libre", et "les équivalences logicielles" répondent d’elles même à cette ineptie. Il suffit également d’aller jeter un oeil sur slashdot et freshmeat pour réaliser la vitalité de la communauté. En dernier recours, des solutions d’émulation libres (Wine, QEMU, Bochs) ou commerciales (VMWare, Win4Lin, WineX / Cedega ...) peuvent résoudre le problème. A noter qu’en général, la conversion d’une application du monde Open Source vers Windows est beaucoup plus simple que l’inverse, toujours gràce au respect des standards. 1.7.10 Et puis tout est en ligne de commande Cette affirmation est du passé. Des outils graphiques existent pour remplacer la ligne de commande, pour la grande majorité des opérations systèmes, même complexes (mise à jour du système ou du noyau, configuration de X ...). Pour l’utilisateur standard, il est tout à fait possible de se passer du shell, et même de vi ! Le recours à la ligne de commande est un "travers" des habitués, qui s’apparente à l’utilisation des raccourcis clavier dans un logiciel bureautique : il est souvent plus rapide et plus précis de faire quelque chose en ligne de commande que de naviguer entre les menus et les interfaces. De même que sous Windows il va plus vite de faire un "ren *.jpeg *.jpg" en session DOS que de renommer les fichiers un par un sous l’explorateur, surtout si l’extension est masquée... 1.8. PAR QUELLE DISTRIBUTION COMMENCER ? 1.7.11 15 En plus il faut maîtriser le C++ Pour utiliser un envrionnement libre, c’est rigoureusement inutile, même pour les distributions les plus "complexes". Par contre, savoir programmer est fort utile pour rejoindre, un jour, l’objectif des membres de la communauté du libre : passer le stade du simple utilisateur, pour contribuer, créer, ou enrichir l’existant... 1.7.12 Bon alors il faut maîtriser l’anglais Comme les autres OS, les choses fondamentales sont écrites en anglais. Mais toute la partie utilisateur est traduite dans la plupart des langues disponibles. Quelques subtilités, même : – certaines distributions, telles que Mandrake ou Kaella, sont conçues par des francophones pour des francophones. – les logiciels libres sont écrits par une communauté internationale, donc le niveau d’anglais utilisé reste abordable à tous. – certains environnements tels que KDE permettent d’utiliser plusieurs langues dans le même environnement : une fenêtre en français, une autre en anglais, l’autre en chinois ... de même pour les configuration de claviers – la communauté a adopté les standards (i18n, UTF-8) ce qui gage encore d’une excellente interopérabilité. 1.7.13 C’est mauvais pour l’économie Ah bon ? Quelle économie ? En tout cas les éditeurs (Redhat, Mandrake) et les SSLL (Sociétés de Service en Logiciels Libres), qui sont des entreprises et donc pas des forcément des philantropes, tirent leur épingle du jeu. Il est probable que les grandes multinationales qui investissent dans le libre (IBM, Novell, SAP, Oracle ...) ne le font pas non plus par pure charité. Il faudra également penser à prendre en compte un jour l’énorme gâchis de temps et d’argent dépensés pour essayer de faire communiquer entre eux des formats ou systèmes propriétaires et fermés : les éditeurs refusant de se mettre d’accord, ce sont les entreprises qui paient. 1.7.14 Et il faut tout réapprendre C’est que vous avez mal appris ! 1.8 Par quelle distribution commencer ? C’est souvent la première question que se pose un débutant. Voici un panorama très succint des distributions. A noter que le "classement" n’a rien de figé, on a vu des débutants partir directement en Gentoo et des gourous rester en Fedora... 1.8.1 Qu’est-ce qu’une distribution ? Dans le monde Linux (et c’est transposable aux xBSD ?), une distribution est un ensemble de logiciels ayant comme tronc commun, l’OS. Autour du noyau de l’OS, chaque distribution (et il y en a des centaines, présentées par exemple sur Distrowatch) apporte un ensemble de logiciels, souvent regroupés en "paquets", chacune ayant ses spécificités : taille, complétude des paquets, utilisation générale ou spécifique, mode de licence et de support, gestions des paquets de logiciels ... Découverte Linux propose des solutions dites "LiveCD" qui permettent de découvrir Linux sans rien installer ou configurer : il suffit de booter sur le CD et de laisser faire, en général on arrive à une interface complète et bien configurée en quelques minutes, sans intervention : Knoppix Novices pas de prise de tête à l’installation, une distribution qui marche dans les minutes qui suivent, une interface conviviale : Mandrake, Fedora Core Confirmés une installation plus personalisée est possible SuSe, Slackware, Debian Stable Experts l’installation est principalement manuelle, des risques d’instabilité existent du fait que les versions sont en phase expérimentales, ou avec une population plus faible d’utilisateurs. Debian Unstable, Gentoo, *BSD (par exemple FreeBSD). 16 CHAPITRE 1. [GLOBAL] POURQUOI PASSER AU LIBRE ? Divers Monter un firewall sur une petite machine : FreeSCO, IPCop, Smoothwall Distribution bootable multimédia : MoviX, GeeXBox 1.8.2 En savoir plus ... Pourquoi ne pas jeter un oeil à ce topic appelé "Choisir une distrib sous Linux" 1.9 Les équivalences logicielles Dans la famille "y’a t’il un équivalent de <machin> sous Linux", question récurrente s’il en est, voici quelques éléments de réponse : 1.9.1 Equivalences logicielles Voici quelques topics sur le sujet dans ce forum : – Les appz sous Linux 6 – Logiciels de remplacement Win -> GNU/Linux 7 – La table d’équivalence de Linuxshop 8 en anglais – La page de Framasoft 9 en français – La page extrèmement complète 10 chez om-conseil 1.9.2 Mais encore... "Dites moi ce dont vous avez besoin, je vous dirai comment vous en passer". Il est bien évident qu’il ne faut pas (toujours) espérer trouver un logiciel à l’identique sur une autre plate-forme. Des petites variantes parfois très intéressantes peuvent apparaître. 1.9.3 Rechercher – Les incontournables slashdot et freshmeat déjà cités sont une mine d’informations et de logiciels divers. – Les annuaires de logiciels (du style download.com) référencent les applications Linux. Tucows en a même une version spécifique appelée Linuxberg. – Quelques autres sites tels que Je Suis Libre apporte un complément intéressant pour les francophones 1.10 Pour continuer 1.10.1 Installer et utiliser une distribution voir les topics respectifs : FreeBSD Debian, Gentoo, SuSE, Mandrake 6 http://www.pcinpact.com/forum/index.php?showtopic=23798 7 http://www.pcinpact.com/forum/index.php?showtopic=14938 8 http://linuxshop.ru/linuxbegin/win-lin-soft-en/table.shtml 9 http://www.framasoft.org/ 10 http://www.om-conseil.com/sections.php?op=viewarticle\&artid=42 Chapitre 2 [Tuto][Débutant] Choisir sa distribution linux par BaubLeNabot, mise à jour par tuXXX 2.1 Introduction Tu veux installer Linux sur ta machine (c’est bien ;)), mais tu ne sait pas quelle distribution installer ? Ne t’inquiète pas on pense à toi, lis le topic et fais ton choix ! Il existe beaucoup de distributions linux différentes, cela va des distributions pour les débutants (installation facile, guidée, plein d’outils graphique de configuration) à des distributions pour des utilisateurs avec de meilleures connaissances (installation plus complexe, mais donc plus flexible, des outils en ligne de commande et des fichiers de configuration à éditer à la main pour pouvoir configurer de manière sûre et précise les différents logiciels), tout en passant par des distributions "live-CD" permettant de lancer linux depuis un CD-rom sans avoir besoin de l’installer ou de toucher au système (très pratique pour tester linux ou pour réparer un ordinateur). 2.2 2.2.1 Les distributions live-CD Knoppix Essayez pleinement Linux sans rien installer sur votre Disque Dur ! Basé sur Debian, Knoppix est une distribution Live-CD tout simplement bluffante ! (2go d’applications sur un CD !). Elle est basée sur un bureau KDE. (A noter qu’il est possible d’installer Knoppix sur le disque dur) – Site web 1 – Téléchargement 2 – Site web (fr) 3 – Téléchargement (fr) 4 2.2.2 Kaella Knoppix améliorée et francisée La distribution Kaella (Knoppix Linux Azur) est basée sur la distribution Knoppix : certains logiciels ont été supprimés, d’autres ont été ajoutés, mais surtout elle a été francisée. Ce n’est pas un "fork", car elle est reconstruite à chaque nouvelle version de la Knoppix, pour profiter au maximum des dernières nouveautés. Pour les utilisateurs des modems Speedtouch et Sagem USB , les drivers ont été intégré et la connection se lance très facilement, en rentrant juste son nom d’utilisateur et mdp quand on vous le demande... – Site web (fr) 5 – Téléchargement (fr) 6 1 http://www.knopper.net/knoppix 2 http://www.knopper.net/knoppix-mirrors/ 3 http://www.knoppixfr.org 4 http://www.knoppixfr.org/index.php?page=download 5 http://kaella.linux-azur.org 6 http://kaella.linux-azur.org/index.php#telechargement 17 18 CHAPITRE 2. [TUTO][DÉBUTANT] CHOISIR SA DISTRIBUTION LINUX 2.2.3 Ubuntu La distribution Ubuntu existe aussi en live-CD, elle peut permettre de tester la distribution mais c’est tout de même un live-CD très complet. 2.3 2.3.1 Les distributions pour débutants sous linux Mandriva La distribution du débutant par excellence ! (ex Mandrake Linux) La Mandrake est une distribution Française (soyons patriote :)) qui se veut facile d’accès et qui l’est ;) Elle se destine avant tout aux débutants Linux , mais ne néglige pas pour autant les utilisateurs expérimentés. Elles possèdent des outils très puissant tels que urpmi, livré avec un GUI pour aider les débutants. Elle possède aussi une traduction française complète et claire. L’installation se fait sous une interface graphique claire et précise. Elle est basée sur un bureau KDE. – Site web (fr) 7 – Téléchargement (fr) 8 2.3.2 SuSe Distribution claire et facile d’accès Distribution allemande complète. Elle est destiné au débutant puisque elle possède beaucoup de GUIs, par exemple pour l’installation, la configuration , la gestion des paquetages ... Auparavant dénigrée car elle n’était pas libre, depuis le rachat par Novell YAST est passé en GPL. – Site web 9 – Téléchargement 10 – Site web (fr) 11 – Téléchargement (fr) 12 2.3.3 Ubuntu Une Debian simplifiée :) Cette distribution, financé par un millaidaire sud-africain , a une base Debian , elle intègre donc les mêmes outils, notamment APT avec Synaptic (GUI pour la gestion des paquetages). Elle est grandement simplifié puisqu’elle integre le nouvelle installeur Debian (installation relativement graphique , bref c’est du gateau a installer :D). Elle est basé sur un bureau Gnome. Les developpeurs viennent de Debian et de Gnome, c’est une distrib montante et pleine d’avenir (on espère :)) Il existe aussi une version avec le bureau KDE nommée Kubuntu, ainsi qu’un live-CD. – Site web 13 – Téléchargement 14 – Site web (fr) 15 – Téléchargement (fr) 16 2.3.4 Yoper Yoper pourrait bientot detronner Suse. Elle integre Yast2 (l’outil de config de Suse, open source), est compilée pour i686 (donc avec les optimisations pour les processeurs ’récents’) et utilise le prelink, ce qui en fait une distribution très rapide et apparemment agréable a utiliser :) – Site web 17 – Téléchargement 18 7 http://www.mandrivalinux.com/fr 8 http://www.mandrivalinux.com/fr/ftp.php3 9 http://www.suse.com 10 http://www.novell.com/products/linuxprofessional/downloads/suse_linux/index.html 11 http://www.suse.de/fr 12 http://www.suse.de/fr/private/download/index.html 13 http://www.ubuntulinux.org 14 http://www.ubuntulinux.org/download/ 15 http://www.ubuntu-fr.org 16 http://www.ubuntu-fr.org/telechargement 17 http://yoper.net 18 http://www.yoper.com/download.html 2.4. LES DISTRIBUTIONS POUR LES UTILISATEURS PLUS AVANCÉS 2.3.5 19 Fedora Une distribution particulière et intéressante C’est une distribution sponsorisé et protégé par RedHat. Elle s’adresse a un large public, du debutant aux dévellopeurs/testeurs en passant par les "enthousiastes" et autres Geeks. Elle dispose de tous les outils nécessaires pour le débutant : l’installation, la configuration et la gestion des paquets est faite graphiquement. Seul bémol : la politique au niveau des licences est très stricte, ce qui exclue un nombre certain de paquets multimedia de l’installation de base (manque il est vrai facilement contourné par l’installation de serveurs de mise à jour externe mais qui pourrait ennuyer les plus débutants d’entre-nous) – Site web 19 – Téléchargement 20 2.4 2.4.1 Les distributions pour les utilisateurs plus avancés Debian Stabilité et liberté, mais aussi ancienneté La distribution Debian est plus reservé à des utilisateurs ayant des bases solides sous Linux. Si vous recherchez avant tout la stabilité avec votre PC, Debian est pour vous, a condition de bien maitriser Linux ! Elle est beaucoup utilisée en matière de serveur, Debian est à 100% dans l’esprit Linux : open source et puissance, tout en ayant une des plus grande logithèque ! Cette distribution est une des plus anciennes, et l’esprit "libre" y est omniprésent (aucun paquet sur les serveurs officiels n’a une licence contraire à la philosophie debian) Il existe trois versions de debian : – stable : orientée serveurs : tous les paquets ont été testés et retestés de nombreuses fois et ne souffrent d’aucun bug. – testing : orientée "desktop" : les paquets de la testing sont beaucoup plus à jour que la stable, il est possible qu’il y ai des bugs, mais cela est très rare, ce qui en fait une distribution très agréable pour un usage quotidient. – unstable : cette branche est utilisée uniquement par les développeurs et les testeurs, les paquets sont souvents buggés et une grande connaissance de linux et de la distribution est indispensable pour pouvoir s’en sortir sur le long terme. – Site web 21 – Téléchargement 22 2.4.2 Gentoo Un système rapide et pratique C’est une distribution qui gère l’installation de chaque paquet et de ses dépendances depuis les sources, et non des binaires comme les autres ditributions, tous les programmes sont donc compilés lors de leur installation ! C’est qui permet notamment de les personnaliser, avec des instructions comme "intégrer a KDE". Les paquets sont mis à jour quotidiennement, et certains paquets de "test" sont aussi de la partie. Temps d’installation (beaucoup) plus long, mais plus optimisé pour la machine. Elle permet de vraiment controler sa machine dans les moindres recoins. – Site web 23 – Téléchargement 24 – Téléchargement (fr) 25 – Site web (non-officiel) (fr) 26 2.4.3 Slackware Spécial "barbus" Une des premières distributions Linux , elle est réputé pour sa stabilité. L’installation se fait totalement en mode texte. Elle dispose d’une systeme de paquets moins avancé que Debian ou que Gentoo et se sert de binaires. – Site web 27 – Téléchargement 28 19 http://www.fedora.redhat.com 20 http://www.fedora.redhat.com/download/ 21 http://www.debian.org 22 http://www.debian.org/CD/ 23 http://www.gentoo.org 24 http://www.gentoo.org/main/en/mirrors.xml 25 http://www.gentoo.org/main/fr/mirrors.xml 26 http://www.gentoofr.org 27 http://www.slackware.com/index.php 28 http://www.slackware.com/getslack/ 20 2.5 CHAPITRE 2. [TUTO][DÉBUTANT] CHOISIR SA DISTRIBUTION LINUX Les autres Beaucoup de distributions ne sont pas listées ici (par exemple Mepis, LFS, ArchLinux...), mais il est possible de trouver une liste des distributions sur internet, par exemple sur DistroWatch 29 ou LinuxISO 30 29 http://www.distrowatch.com 30 http://www.linuxiso.org Deuxième partie Initiation 21 Chapitre 3 [Tuto][Débutant] Topic "Démarrage" par tuXXX 3.1 Introduction Ahhh, je me rappelle quand j’ai commencé linux... J’était tout joyeux d’essayer un nouvel OS qui avait l’air d’avoir un bon packet des qualités ... Mais j’était aussi perdu :pleure : Trop habitué à windows, je ne savais plus rien faire ! Puisque le nombre de personnes qui se mettent à linux va toujours en grandissant, et que les mêmes questions se répètent sans cesse sur le forum, je pense qu’il est bon de faire un petit récapitulatif des différentes commandes, de l’utilisation, etc... Tout d’abord, quelques liens : – Guide de Survie du Débutant sous Linux 1 Très très complet ! Parfait pour débuter... Limite ça vaut le coup d’imprimer tout ça pour l’avoir sous la main tout les temps ! – Lea : Linux entre amis, site d’aide Linux francophone 2 Plein de tutoriaux pour linux, il y en a qui font référence, notamment pour la carte TV... – The table of equivalents / replacements / analogs of Windows software in Linux. 3 Quand on ne sais pas quoi utiliser comme logiciel pour remplacer ce qu’on avait sous windows... – Google : <Linux> 4 C’est google, mais avec juste les pages concernant linux ... Je rappelle quand même que la moindre des choses avant de poster sur le forum est de charcher un peut là-dessus ... – Parallèles MS Windows ? GNU/Linux 5 Je vous conseille très vivement de lire ce topic ! 3.2 Les disques dur La gestion des disques dur sous linux est très différente que sous windows, mais suit des règles précises. Tous les disques dur sont situés dans /dev et représentés par des lettres et chiffres : Tout d’abord, des lettre (en général "hd", comme Hard Disk ;), même si ce sont des lecteurs CD/DVD), puis une lettre qui indique le "numéro" du disque : "a", "b", "c", etc... Il y a donc comme cela tous les périphériques standard IDE : – /dev/hda : Master sur IDE0 – /dev/hdb : Slave sur IDE0 – /dev/hdc : Master sur IDE1 – /dev/hdd : Slave sur IDE1 etc... Ensuite, si le disque a des partitions, elles sont rajoutées dans /dev, de la même façon que les disques dur, mais avec des numéros derrière, en commencant par 1 : – /dev/hda1 : première partition principale de hda – /dev/hda2 : deuxième partition principale de hda – /dev/hda5 : première partition étendue de hda etc... Voilà la théorie. Nous en reparlerons plus tard ;) 1 http://www.delafond.org/survielinux/ 2 http://lea-linux.org/ 3 http://linuxshop.ru/linuxbegin/win-lin-soft-en/table.shtml 4 http://www.google.com/linux 23 24 3.3 CHAPITRE 3. [TUTO][DÉBUTANT] TOPIC "DÉMARRAGE" Les utilisateurs Sous les systèmes linux (qui vient du monde unix), la gestion des utilisateurs est très poussée. Il y a tout d’abord des groupes (sound, games, etc...), auquels appartiennent les utilisateurs. Il existe un utilisateur spécial, nommé "root", qui est le "super utilisateur" ayant le contrôle total sur la machine, et qui peut donc faire ce qu’il veut (détruire le système même...), puis les utilisateurs standard qui ont du être créés lors de l’installation de la distribution. Je fais une petite parenthèse ici en disant qu’il ne faut JAMAIS utiliser le systèle en tant que root. Cela peut paraître plus simple au début, mais c’est aussi très dangereux, que ce soit par rapport à nous-même (quand on débute, on ne sais pas forcément ce qu’il ne faut pas faire), ou par rapport aux virus, qui se feraient un plaisir de détruire le système à la moindre occasion. De même, c’est la porte ouverte au piratage, ainsi que l’utilisation des failles de sécurité des logiciels courants, qui ne pourraient autrement que modifier les données de l’utilisateur (et non détruire le système+les données). Donc il ne faut pas se connecter en tant que "root". 3.4 La console Sous linux, la console est très importante. Elle permet d’avoir un compte-rendu détaillé du système à l’aide de quelques commandes, ainsi que de fournir aux programmes des paramètre. Par exemple, démarrer un lecteur multimédia avec un certain fichier vidéo, en plein écran, en utilisant un codec particulier, une certaine langue, etc... Souvent dans les forums, il est dit d’essayer "[une commande]" ... elle est évidemment à taper dans la console, quelque fois en tant que root... Mais là vous me dites que j’ai dit de ne pas utiliser le compte root :keskidit : . Oui, c’est vrai, mais il est possible d’ouvrir temporairement une session root dans une console, le temps d’exécuter la commande, modifier quelques fichiers, etc... Ce compte étant destiné à la configuration, il est très rare d’avoir besoin d’une interface graphique (auquel cas, la console utiliserait l’affichage en cours pour afficher le programme). La commande à utiliser pour se logger en root est "su", cette commande permet de changer d’utilisateur. Normalement, il faut dire quel utilisateur prendre : par exemple "su root" pour se connecter en root, mais "su" tout seul se connecte automatiquement au compte root. Cela permet donc de se connecter en root afin d’avoir accès à des fonctions supplémentaires afin d’administrer le système. Une fois que vous avez fini ce que vous vouliez faire, tapez "logout" ou appuyez simultanément sur Ctrl+D pour vous délogger de cette session. 3.5 L’utilisation de la touche "tab" La touche "tab" permet de compléter ce que vous avez commencé à taper. ->Si c’est le début d’une commande, cela affiche soit la fin si le début est unique à cette fonction, soit ça affiche une liste des fonctions qui correspondent... ->Si c’est un répertoire (par exemple après "cd"), cela complète petit à petit en fonction de ce que vous tapez, et permet donc de ne commettre aucune faute dans l’appel de fonctions, et de gagner un temps énorme. 3.6 Quelques commandes de base Bon, maintenant que vous savez un peu comment ça marche, il est temps de connaître quelques commandes utiles. Je rappelle quand même qu’il faut IMPERATIVEMENT mettre un espace entre la commande et les paramètres, sans quoi linux considère la commande+les paramètre comme une commande et ne la trouve pas (logique) – cd cette commande permet, comme sous windows de changer de répertoire courant. "." est un répertoire spécial qui pointe toujours sur le répertoire en cours ".." pointe toujours sur le répertoire parent – ls équivalent de "dir", mais beaucoup plus puissant (dir est redirigé vers ls sous linux, mais n’as pas toujours les options de couleurs définies par la distribution et il vaut toujours mieux utiliser "ls") quelques options : -l : permet d’avoir le détail de chaque fichier/dossier, les autorisations, la taille, etc... -a : permet de voir les "fichiers et dossiers cachés" : ceux-ci commencent par un . (par exemple .mozilla), et contiennent en général des fichiers de configuration -h : permet d’avoir la taille des fichiers affichée d’une manière compréhensible par les "humains" (c’est pour ça le "h") – man Cette commande permet d’avoir le manuel de n’importe quelle fonction : par exemple "man ls" vous fournira une page avec la descrition de la commande "ls", il est possible de monter et descendre en utilisante "PageUP" et "PageDown", et quitter en appuyant simplement sur "q" (la commande ultime étant "man man" ;)) – ln "ln" permet de créer des liens entre des fichiers. Le plus courant étant le lien symbolique, créé à l’aide le l’option "-s" ("ln -s"), qui agit comme un raccourci : si on supprime le raccourci, le fichier reste là. Si on supprime le fichier, le raccourci ne pointe sur rien. – df "df" permet de voir l’espace libre sur les disques dur à utiliser avec "-h" pour avoir la taille lisible ;) 3.7. COMMANDES DE L’ADMINISTRATEUR 25 – du un peu comme "df" : donne la taille d’un dossier et de tout ceux qu’il contient... 3.7 Commandes de l’administrateur Voici quelques commandes permettant d’administrer son PC, de connaître notamment qu’est-ce qui se passe dans le système. Cela va d’ailleur permettre d’aborder le concept des modules du noyau. Toutes ces commandes ne sont en général accessible que depuis le compte root... – lspci lspci permet de parcourir (comme ls) les ports pci, et ainsi de connaître assez précisément tout ce qu’il y a dans la machine, notamment les noms des différents chips. 3.7.1 Gestion des modules Un module est une sorte de rajout au noyau qui permet de contrôler certains périphériques. L’avantage, c’est qu’il est possible de les charger ou pas en fonction de la configuration. Par exemple, un module pour une carte ethernet 3com pourra n’être charger que si l’on met une telle carte dans l’ordinateur. En général, tous les drivers propriétaires n’existent qu’en module (notamment pour les cartes graphiques), mais aussi quelques cartes raid, etc... – lsmod Permet de connaître quels modules sont lancés, ainsi que les dépendances entre eux. – modprobe modprobe permet de manipuler les modules, et notamment de les charger (et les décharger), mais aussi avoir la liste des modules disponibles pour le noyau en cours : 1 $ modproble -l liste ainsi tous les modules disponibles. 1 $ modprobe [le nom du module] charge le modules voulu : par exemple, "modprobe 8139too" 3.7.2 Fichiers de log – dmesg Permet de voir tout ce qui a été fait au démarrage de linux...très utile pour savoir ce qui s’est passé... – /var/log/messages Ce fichier contient tous les évènements systèmes, que ce soit le login de quelqu’un ou l’insertion d’une clé usb ... 3.8 Manipulation de flux Sous linux, les programmes communiquent avec le système grâce à des "flux"... Il en existe trois principaux : – L’entrée standard : Par défaut, le clavier, numéro associé : 0 – La sortie standard : Par défaut, l’écran, numéro associé : 1 – La sortie erreurs : Par défaut, l’écran aussi, numéro associé : 2 Voilà... cela permet de faire plein de choses comme nous allons le voir. 3.9 Les opérateurs – l’opérateur > Cet opérateur permet de "rediriger" une sortie vers l’endroit de notre choix, généralement un fichier. Par exemple, pour rediriger la sortie de "ls" vers un fichier "liste.txt" : 1 $ ls > liste.txt et dans le fichier, il y aura tout ce qu’il y aurait du y avoir à l’écran ... ...sauf les messages d’erreurs... En effet, implicitement, ">" équivaut à "1>" ... Pour rediriger la sortie erreur, il faut utiliser cette notation avec le bon numéro (le 2) : 1 $ ls 1>liste.txt 2>erreurs.log ...On peut même rediriger la sortie erreur vers la sortie standard pour pouvoir mettre tout ça dans un même fichier : 1 $ ls 1>liste.txt 2>\&1 (ne pas oublier le "&", et le faire dans cet ordre, la sortie 2 et renvoyée vers la sortie 1 qui est le fichier texte, si on inverse, la sortie 2 va être redirigée vers 1 alors que celle-ci sera l’écran, puis la sortie 1 sera redirigée vers le fichier...) 26 CHAPITRE 3. [TUTO][DÉBUTANT] TOPIC "DÉMARRAGE" – l’opérateur » identique à >, mais n’écrase pas le fichier et écrit à la suite ... – l’opérateur | (appelé "pipe") Cet opérateur permet de rediriger la sortie standard de la commande vers l’entrée standard d’une autre commande, afin de les chaîner ... C’est très utile pour manipuler des sorties de fichiers comme on le verra juste après. (Note : on l’obtient avec l’association de toucher "AltGr" et "6" sur les claviers azerty français) Maintenant quelques commandes pour manipuler : 3.10 Les commandes de manipulation de flux – grep grep permet de trier les lignes et de ne sortir que celles qui nous intéressent... Pour chaque ligne à l’entrée standard, il vérifie que le mot (ou quelques lettres) donné en paramètre est dans la ligne... Si c’est le cas, il la met sur la sortie standard, sinon il n’y touche pas. Cela marche évidemment avec le clavier et la sortie écran (il suffit pour cela d’essayer "grep a"... cela n’affichera que les lignes que vous taperez ensuite contenant a (ctrl+d pour arrêter)) Le plus efficace étant quand même pour les commandes : par exemple, pour voir si le driver nvidia est présent dans les modules, il suffit de faire : "modprobe -l | grep nvidia" On voit ici aussi l’utilité du pipe ;) – tail et head Ces deux commandes permettent respectivement d’afficher les dernières et premières lignes l’un fichier ou de l’entrée standard ... Par exemple, "ls -l | tail" montrera la fin de la commande "ls" Il est possible de passer des paramètre, comme par exemple le nombre de lignes à afficher (option "-n") ... mais la page du manuel vous en dira plus ;) – cat cat liste le contenu d’un fichier et le sort sur la sortie standard... Ainsi pour voir les dernières lignes de /var/log/messages contenant le mot usb : "cat /var/log/messages | grep usb | tail" ;) – echo echo permet de sortir du texte sur la sortie standard afin de le manipuler ensuite avec d’autre commandes ou bien de rediriger vers un fichier : "echo "salut" > message.txt" 3.11 Partitions Pour utiliser linux, il est possible de n’utiliser qu’une seule partition. Celle-ci serait la racine "/" de tout le système... Mais pour augmenter les performances, et notamment dans le cas d’une grosse demande de ram, il est conseillé d’utiliser une partition "de swap" qui permet d’étandre virtuellement la ram sur le disque dur. Cette partition doit être en général égale à 2x(la quantité de ram du système), avec un maximum de 512Mo De plus, il est conseillé de créer une partition de boot afin d’éviter tout problème lors du boot (disque trop grand par exemple), le mieux étant d’utiliser 32Mo Au final, pour un système linux il est conseillé d’utiliser : – Une partition de boot (32Mo) – Une partition de swap (2xram -> 512Mo) – Une partition principale (le reste) Sous linux, il existe beaucoup plus de types de partitions que sous windows : principalement ext2, ext3, reiserfs, XFS, JFS... (Il est aussi possible de lire le ntfs, le fat16/32, ainsi que plein d’autres choses...) Après, il faut choisir entre tout cela... – le ext2 est obsolète, notamment à cause de l’absence de journal, et donc un test très long au démarrage lors du "checkdisk"... – le JFS est utilisable seulement pour ceux qui font de la vidéo (et encore...) – le reiserfs est assez rapide, efficace, plus que les ext2 et ext3 pour les petits fichiers et peut-être utilisé sans problèmes depuis le noyau 2.4.18... – le ext3 est la version journalisée du ext2, très fiable et stable, et très performant dans la plupart des cas. Le choix se porte donc naturellement sur le ext3 ou le reiserfs (en général, pour ne pas prendre de risques, le mieux est de prendre le ext3, devenu un standard...) (il vaut tout de même mieux laisser la partition de boot en ext2 pour des raisons de compatibilités) On obtient donc le shéma suivant : – ext2 (32M) Partition de démarrage – swap (512M) Partition de mémoire virtuelle – (Reste du disque) Partition principale Les partitions sont numérotées d’une manière un peu spéciale, en effet, il y a : – 4 partitions prinipales, numérotées de 1 à 4 – plusieurs partitions étendues, numérotées à partir de 5 3.12. FDISK 27 Ne vous étonnez donc pas d’avoir des partitions 1 et 2, puis de passer soudainement à 5 ;) Toutes ces partitions sont donc stockées dans /dev/hd[lettre]X, comme je l’ai décrit plus haut... 3.12 Fdisk Pour les créer, il faut tout d’abord utiliser "fdisk" pour partitionner. Pour afficher la liste des partitions, il faut d’abord entrer "p" (comme "print") Pour supprimer une partition, il suffit d’utiliser "d" (comme "delete") et de choisir le numéro de la partition à supprimer. (voir avec "p") Pour créer une partition, il suffit d’utiliser "n" (comme "new", facile, non ?) Et de rentrer la taille (utiliser la syntaxe "+sizeM" pour mettre en Mo...) Et enfin de changer le type de la partition (la swap) en tapant "t", puis le numéro correspondant au type (swap=82, linux=83) Quand vous manipulez fdisk, les changements ne sont pas activés tant que vous ne le dites pas, ne vous inquétéz donc pas, si vous avez fait une erreur, quittez simplement (avec "q") Une fois que tout vous convient (vérifiez avec "p"), vous pouvez écrire la table des partitions sur le disque avec "w"... Il vous sera sûrement demandé de redémarrer, afin d’actualiser /dev ... 3.13 Formatage Maintenant que vos partitions sont créées, il faut les partitionner ! ! ! Tout d’abord, la partition de boot, en ext2 : 1 $ mke2fs /dev/hdLX ensuite, la partition de swap 1 $ mkswap /dev/hdLY Et enfin la partition principale : ext3 1 $ mke2fs -j /dev/hdLZ ou reiserfs : 1 $ mkreiserfs /dev/hdLZ Voilà, votre système est prêt à être installé ! ! ! Il est tout à fait possible d’utiliser le système de partitionnement et de formatage intégré au menu d’installation de votre distribution, mais le principe de partitionnement reste le même... Pour installer un noyau, il faut avant monter la partition /boot Pour booter, il faut le faire sur la partition /boot 3.14 Utilisation de vi, concepts de base Sous linux, il y a un éditeur de texte que tout le monde connait, qui est présent partout et qu’il faut savoir manier ! Cet éditeur, c’est "vi". (prononcer "vi aïlle", et pas "vi" pour pas passer trop pour un débutant, et éventuellement se la péter devant ses potes qui font du windows :D) L’avantage de cet éditeur, c’est qu’il marche en console, et est donc accessible de partout, que X soit lancé ou pas. De plus, il est très rapide à se lancer et convient parfaitement pour modifier un paramètre dans un fichier de configuration. Enfin, de part son fonctionnement, il n’y a pas besoin d’aller chercher le fichier à ouvrir et de parcourir l’arborescence graphiquement car il suffit d’utiliser la touche "tab" pour compléter facilement et rapidement le chemin et arriver en 2 secondes à ouvrir le fichier. Tout d’abord, il faut ouvrir le fichier à éditer : 1 $ vi chemin/vers/le/fichier/fichier Voilà, le fichier est ouvert. Mais le principe de vi est un peut spécial, et on est très vite affolé à l’idée de ne pas pouvoir quitter l’éditeur. En effet, il n’y a pas de combinaison de touche pour quitter. En fait, il y a 2 modes dans vi, un mode "édition" et un mode "contrôle". Tout d’abord, vous êtes dans ce second mode, où il est possible d’effectuer quelques commandes, les plus basiques commençant par " :" par exemple, pour quitter, il faut taper " :q" Je vais donc faire une liste très rapide des quelques "commandes" à connaître pour ne pas être perdu.. – q : quitter – w : enregistrer – ! : forcer la commande 28 CHAPITRE 3. [TUTO][DÉBUTANT] TOPIC "DÉMARRAGE" Tout combinaison peut-être utilisée (par exemple, " :wq !" sauvegarde et quitte même si le fichier est en lecture seule (en root)) Si vous oubliez " :", et que vous vous trouvez devant d’autres menus, il suffit de faire " :q" encore. Maintenant, pour édite, le mieux est d’insérer du texte. Pour cela, il faut appuyer sur la touche "i" ou bien aussi la touche "[Insert]"... Vous povez ensuite modifier le texte à votre guise. (vous remarquerez l’indication "– INSERT –" en bas... Et quand vous avez fini, appyez sur "[Echap]" pour revenir dans le premier mode... Les possibilitées avec vi (et notamment les différents clones, dont vim) sont énormes et je vous invite à regarder l’aide ou bien sur internet pour en apprendre plus... Vous allez maintenant pouvoir par exemple modifier votre XF68Config tranquillement depuis la console, pour pouvoir directement tester le driver... Et vous remarquerez aussi que l’on en parle souvent dans les forums. 3.15 Arrrggghhh j’ai un bug ! Cela arrive qu’il y ait vraiment un problème, et que votre ordinateur ne réponde plus... Voici quelques conseils qui sauvent : 3.15.1 Control+Alt+Fn Si l’interface graphique (X) ne répond plus, il y a souvent moyen de récupérer une console permettant de redémarrer l’ordinateur sans dommages pour le système. Pour cela, il suffit d’appuyer simultanément sur "Control", "Alt", et une des touches de fonction "F1", "F2", etc... Les touches F1 à F6 sont en général des consoles, et F7 est en général le serveur graphique X lui-même. Donc Control+Alt+F1 pour aller en console, Control+Alt+F7 pour revenir au mode graphique. Une fois en mode console, il y a moyen d’essayer de redémarrer l’interface graphique avec les commandes "init 3", suivie de "init 5", mais aussi de redémarrer l’ordinateur (reboot) ou bien de l’arrêter (halt) 3.15.2 Les touches magiques Si plus rien ne répond plus, et que vous êtes résolu à faire un reset, il reste les touches magiques (Magic SysRq Keys). Elles permettent de contrôler le noyau directement, et permettent en général de synchroniser les disques dur, et donc de ne rien perdre du système. Il faut pour cela appuyer simultanément sur "Alt", sur la touche "Impr Ecran/Syst" et une des touches suivantes : – ’b’ : reboot – ’o’ : arrêt – ’s’ : synchronisation des disques dur – ’u’ : disques dur en lecture seule – ’e’ : envoi d’un SIGTERM à tous les processus (demande d’arrêt des processus) – ’i’ : envoir d’un SIGKILL à tous les processus (les processus sont tués) et plus : voir la doc ( http ://linuxgazette.net/issue81/vikas.html 6 ou le fichier Documentation/sysrq.txt du noyau) Globalement, quand tout va mal, la combinaison de touches optimale est ’s’, ’u’, ’b’ . 3.15.3 Le forum Si vraiment vous avez un problème et que vous bloquez, demandez évidemment sur le forum... Mais avant de poster, il y a plusieurs choses à faire : 1) Chercher sur google (ou google linux, lien dans le premier post) Essayez de na pas vous limiter pas au web français, sinon vous n’aurez pas forcément beaucoup de résultats. Cherchez minimum sur 2 pages, histoire que les autres forumeurs voient que vous avez cherché : ça donne plus envie d’aider quelqu’un si celui-ci à cherché plus de 20 secondes. 2) Regardez les liens importants, en orange, dans la section linux du forum, il y a des chances que la réponse y soit car en général ces howto sont créés pour satisfaire à un "besoin" de savoir, et donc pour éviter de répondre trente fois par jour la même chose... 3) Cherchez aussi sur le forum, les questions qu’on se pose quand on débute sont souvent les mêmes que les autres débutants, donc cette question a pas mal de chance d’avoir déjà été posée. Un petit lien pour aider : Utilisation de la recherche 7 4) Enfin, si vous n’avez vraiment rien trouvé, ou si ce que vous avez trouvé ne marche pas, là vous pouvez créer un nouveau topic décrivant votre problème. Expliquez que vous avez cherché, où vous avez cherché, les manipulations que vous avez fait et qui n’ont pas marché, la distribution utilisée et éventuellement le matériel qui pourrait avoir un lien avec le problème. Et évidemment poster dans un language compréhensible de tous (pas sms ! pas trop de fautes...) Si vous faite toujours comme ça, vous allez : 1) Maitriser de mieux en mieux l’anglais et la recherche google :transpi : 2) Apprendre plein de trucs sur linux dont vous ne supposiez même pas l’existence :ouioui : 3) Ne pas vous faire lyncher parce que vous n’avez pas cherché 4) Ne pas vous faire lyncher parce que vous ne donnez aucun renseignement susceptible de servir aux autres pour vous aider ou parce que vous écrivez en language sms/avec plein de faute. 6 http://linuxgazette.net/issue81/vikas.html 7 http://www.pcinpact.com/forum/index.php?showtopic=42760 Chapitre 4 [Tuto][Débutant] Parallèles MS Windows <=> GNU/Linux par -Aer- 4.1 Introduction Voilà un petit article pour rassembler certaines questions que l’utilisateur (peut) se pose(r) lorsqu’il passe de Windows à Linux. Le but de cet article est de comprendre certaines différences entre ces deux systèmes sans pour autant entrer dans des termes très techniques. Par abus de langage j’utiliserais linux au lieu de GNU/Linux Cet article peut vous intéresser pour plusieurs raisons : – Vous voulez essayer linux, ou vous venez de l’installer... – Vous voulez comprendre la différence entre votre Windows et le Linux de votre frère... – Vous êtes un gourou de linux qui a perdu la mémoire ;) 4.2 Installation, démarrage quels différences ? En supposant que vous avez déjà fait une installation de Windows nous allons faire quelques comparaisons. 4.2.1 Pourquoi c’est si compliqué ? C’est vrai, comparé à une installation de Windows une installation de linux reste plus complexe, mais pas compliqué pour autant. En fait cela permet à l’utilisateur de faire des choix qu’il ne peut pas faire avec Windows. 4.2.2 Déjà il faut partitionner et formater le disque dur, c’est dangereux et j’y comprends rien Formater un disque permet de préparer le stockage des données. Imaginez que vous beurrez un plat avant de faire un gateau. Partitionner c’est découper le disque en plusieurs parties (des partitions) pour installer plus simplement le systeme. Par exemple vous n’allez pas installer windows et linux dans la même partition, est-ce que vous mélangez votre eau et votre vin dans un verre ? Windows s’intalle sur une seule partition, parfois on découpe le disque pour avoir une partition de plus pour ranger ces images, films etc... Linux peut s’intaller sur une seule partition, mais souvent on en fais plusieurs pour accroitre la sécurité et la facilité d’utilisation. Je dis une partition, mais en faite c’est deux. Linux est un des sytemes dérivés d’UNIX. Tous ces sytèmes nécessite l’utilisation d’une partition SWAP. Celle-ci permet de réaliser une extension de votre mémoire RAM. 4.2.3 Pourquoi je peux sélectionner des packetages, lesquels prendre ? Dans certaines distributions des l’installation on propose à l’utilisateur d’installer des packetages. Ce sont des programmes et autres logiciels. L’installation de logiciels est très différente entre Windows et linux. Nous verrons celà plus loin. A la question lesquels choisir, cela dépant de vos goûts et envies/besoins. Il existe énormement de logiciels sous linux. ( plus de 10 000 packetages dans certaines distributions)à vous de tester et de faire vos choix. 29 30 4.2.4 CHAPITRE 4. [TUTO][DÉBUTANT] PARALLÈLES MS WINDOWS <=> GNU/LINUX Un noyau K’escekecet ? que faire ? Le noyau c’est ce qu’il y a au milieu d’un fruit ! (sisi je vous assure :p). Un noyau est le coeur d’un systeme d’exploitation. Chaque systeme d’exploitation a son noyau (WindowsXP, MacOS X, BeOS, Debian, Mandrake etc) Le noyau qui nous interesse ; le noyau linux existe aujourd’hui en deux versions : la 2.4 et la 2.6. Lors de votre installation il se peut que l’on vous demande si vous voulez ajouter des "Modules" au noyau. Pour simplifier un module est équivalent a un driver sous Windows, et le noyau charge certains modules pour faire fonctionner votre ordinateur. 4.2.5 Un lanceur au démarage, pour quoi faire ? Heureusement, mon linux il m’a installé un beau menu qui me demande au démarage de choisir entre Windows ou linux. Mais, si j’installe simplement linux est-ce que je dois utiliser un lanceur ? Oui, sous Windows un chargeur existe aussi, mais on le rencontre moins souvent. Dans les dernières versions du syteme d’exploitation de Microsoft, il se peut que l’on ai le choix au démarage. Pour réutiliser le chargeur de Windows (si vous avez enlevez votre distribution linux, enfin c’est impossible), tapez /fdisk mbr dans un console MS-DOS. 4.2.6 Quand mon pc démarre il affiche plein de lignes je ne comprends rien. En effet, si vous lancez une machine sous linux il y a de grandes chances pour qu’il affiche des lignes plus ou moins incompréhensible. Sous Windows, on ne voit qu’un joli logo et une barre qui se charge. (C’est aussi possible sous linux : cherchez framebuffer, bootsplash, gensplash) Ces lignes se sont l’expression du noyau linux puis votre syteme qui lance les programmes nécessaires a l’utilisation de votre machine. 4.3 Utiliser un ordinateur personnel sous linux ça change de Windows ? Oui et Non ! Super, je suis vraiment avancé :x L’utilisation d’un ordinateur sous linux est similaire à celle sous Windows, on retrouve des menus, des icones, certains logiciels identiques... Mais "contrairement" à Windows vous avez deux casquettes lorsque vous utilisez un systeme de type UNIX, donc Linux : – Une casqette d’administrateur : root – Une autre d’utilisateur : Thomas Dupont Pendant l’installation vous avez spécifié un mot de passe pour une Racine (root) ? Késako ? 4.3.1 L’administrateur : root L’utilisateur root, est l’administrateur de votre ordinateur, il a le pouvoir absolu. Un syteme UNIX part sur le principe que le root sait ce qu’il fait. Et donc vous pouvez TOUT faire en root. Vous pouvez détruire les fichiers vitaux de votre ordinateur si cela vous amuse. Le compte root est donc à utiliser avec précaution. D’autant plus que si une personne mal intentionnée accède à votre compte root, il peut faire ce qu’il veut de votre ordinateur. On n’utilise le root que pour la maintenance du systeme. Je ne m’étalerais pas ici sur le rôle de l’administrateur. Mais comme on ne doit pas l’utiliser pour se servir de l’ordinateur, il faut donc créer un compte d’utilisateur. 4.3.2 L’utilisateur L’utilisateur classique porte le nom que vous avez choisis de lui donner (BobleOufDeLaMortQuiDéchireSousLinux) et un mot de passe (******) . Dans un syteme UNIX, et donc dans linux, les utilisateurs apartiennent à des groupes. Ces groupes permettent à l’utilisateur d’executer des applications. Par exemple si un utilisateur n’appartient pas au groupe "games" il ne peut pas lancer les jeux (Frozen-Bubble !). Cet exemple n’est valable que pour certaines distributions linux. Les groupes varient suivant la ditribution utilisée. Donc en fait si mon utilisateur appartient aux groupes requis et que je n’ai pas tout cassé en faisant joujou avec le root, je peux utiliser mon ordinateur comme sous Windows, super non ? Mais alors quel intéret d’utiliser linux ? Là réponse se trouve surement ici : "Pourquoi et comment passer au libre ?" 4.4 Oulà, mais où est placé "Mes Documents" ? ? Arf, oui en effet, c’est compliqué de comprendre la gestion du disque dur sous linux lorsque l’on vient d’un environment Windows. Sous Windows, j’avais (exemple) : – mon disque dur C : – mon lecteur de diquette A : – mon lecteur de dvd D : – mon graveur E : – ma cle usb F : 4.5. UN ORDINATEUR SOUS LINUX ÇA S’UTILISE ENCORE AVEC UN ÉCRAN NOIR TYPE MS-DOS ? ? 31 Maintenant que j’ai installé mon Pingouin, je n’ai plus rien de tout cela :’( En comparant rapidement : Sous linux la "racine" des fichiers est / équivalant à C : sous Windows. Ensuite Mes lecteurs de CD/DVD/Graveurs se trouvent dans un dossier : /mnt/cdrom = D : (le dossier /cdrom est aussi utilisé sur certaines distributions). Le dossier / contient un dossier mnt qui contient un dossier cdrom où se trouve le contenu de mon dvd. Mais pourquoi ça ? ? Il faut comprendre que lorsque vous voulez lire un cdrom, l’ordinateur doit "l’acrocher" au reste du systeme pour pouvoir y acceder. C’est comme lorsqu’on fait un puzzle, pour pouvoir avancer dans le puzzle, il faut accrocher les pièces. Ici pour pouvoir avancer dans ma cle usb il faut l’acrocher. On utilise le terme "Monter". On Monte un CD, une cle USB, ou même une partition ;) Sous Windows lorsque vous branchez votre clef USB, il la monte automatiquement dans F : ou G : ou encore H : selon vos autres lecteurs... En résumé(exemple) : – disque dur : C : <=> / – lecteur disquette : A : <=> /mnt/floppy – lecteur de dvd : D : <=> /mnt/cdrom1 – graveur de cd : E : <=> /mnt/cdrom2 – clé usb : F : <=> /mnt/cle 4.4.1 Bon d’accord, mais sous Windows mes partitions sont formatées en FAT32 ou NTFS, lequel des deux est le mieux pour linux ? Et bien sous linux on n’utilise pas les mêmes types de partitions que sous Windows, et il en existe beaucoup plus. Aujourd’hui on trouve des noms exotiques tel que : ext2, ext3, reiserfs, xfs, jfs, reiser4... Avec Ext3 plus ou moins comme standard L’avantage de ces types de fichiers est qu’il sont journalisés cela permet de gagner en rapiditée et aussi de ne pas avoir à défragmenter. 4.5 Un ordinateur sous linux ça s’utilise encore avec un écran noir type MSDOS ? ? L’utilisattion "d’écrans noirs" (consoles ou terminaux) n’est pas obligatoire (Ouf :) ). Cela reste très pratique pour certaines taches. Ce qu’il faut bien distinguer c’est que l’interface graphique sous linux est indépendante du reste. Elle se nomme X-Window appellée aussi X (www.x.org 1 ou www.xfree.org 2 ). C’est toujours difficile d’expliquer à un utilisateur de Windows que sous linux on peut utiliser son ordinateur sans avoir recourt à des fenêtres. Et qu’il existes plusieurs gestionnaires de fenêtres. Les plus connus : – KDE 3 – GNOME 4 Le programme permetant de lancer ces gestionnaires de fenêtres et donc les applications graphiques (X-Window) peut évidemment ne pas être installé (par exemple sur des serveurs). 4.6 Comment que j’fais pour installer un logiciel du coup ? ? 4.6.1 Heu j’aimerais bien pouvoir lire la doc en *.zip que m’a envoyé mon cousin, mais je n’arrive pas à installer winzip.exe ? Sous linux, les logiciels ne s’installent pas comme sous Windows. Il ya d’ailleurs plusieurs façon d’installer un logiciel. Lorsque vous décidez d’installer un programme sous Windows vous télécharger le *.exe et vous double-cliquez dessus. Ensuite vous répondez à un tas de questions et vous redémarrez ;). Lorsque vous pouvez enfin réutiliser votre Windows votre logiciel est là. Sous linux c’est un peu différent mais quand même plus simple : La première facon d’installer un logiciel, la plus simple est d’utiliser les paquetages proposés par sa distribution (*.rpm *.deb ...). Ce sont les même packetages que ceux que l’on a choisi pendant l’installation de notre linux. Vous pouvez récuperez ces packetages sur le net ou sur des CD. Selon votre distribution les façons d’installer ces packetages diffèrent. Soit votre distribution fournit un logiciel de gestion des paquetages soit vous utilisez un terminal (le truc noir) et tapez une commande. Par exemple : – Sous Mandrake : 1 urpmi mon_logiciel 1 http://www.x.org 2 http://www.xfree.org 3 http://www.kde.org 4 http://www.gnome.org 32 CHAPITRE 4. [TUTO][DÉBUTANT] PARALLÈLES MS WINDOWS <=> GNU/LINUX – Sous debian : 1 apt-get install mon_logiciel Et voilà, votre logiciel est installé, simple non ? Là seconde façon est d’utiliser les sources du logiciel. C’est à dire les lignes de programmes du logiciel. Il suffit de les télécharger puis de les "compiler". C’est à dire executer un programme qui transforme les sources en exécutable. C’est assez long selon les logiciels à compiler. En fait les packetages sont commes tous logiciels des sources déjà compilés. 4.7 Parallèles avec les commandes MS-DOS Pour ceux qui sont interessés par le côté obscur :) , il serait temps de troquer vos bonnes vielles habitudes de MS-DOS contre celles de Linux : – dir /w <=> ls (dir fonctionne aussi la pluspart du temps) – dir <=> ls -l (ls -a pour voir les fichiers cachés) – copy <=> cp – del <=> rm – move <=> mv – ren <=> mv – xcopy <=> cp -r – cls <=> clear (ou reset) – cd <=> cd (facile, celui-là, non ?) – md, rd <=> mkdir, rmdir – deltree <=> rm -r – commande|more <=> commande|less (more existe sous linux, mais less c’est mieux que more !) – pkzip, pkunzip <=> zip, unzip – type <=> cat – edit : vi Chapitre 5 [Tuto][Débutant] L’arborescence des fichiers sous Linux par -remCertains d’entre vous sont un peu perdus devant tous les fichiers présents sous linux. Je rappelle qu’un répertoire n’est jamais qu’un fichier un peu particulier, donc j’emploierai ici le terme de fichier pour désigner ce que vous appelez classiquement un fichier mais aussi pour désigner un répertoire. Certains, sont ainsi completement largués, d’autres moins, grace à leur expéricences ils savent ou se trouvent certains fichiers ou type de fichiers mais rares sont ceux qui connaissent bien la hierarchie des fichiers sous linux. On pourrait résumer à cela : /bin ou */bin : contient les binaires, c’est à dire les éxécutables. les *.exe pour un habitué de M$. /etc : contient les fichiers de paramétrage des applications, des programmes, mais aussi du systeme. /var/log : contient les fichiers de log /var/cache : contient les fichiers qui ont servi et qui sont conservés au cas ou... /tmp : fichiers temporaires utilisés par vous ou par le systeme. /mnt : vos points de montages pour clefs usb, disques fat/ntfs, cdroms etc... /home : répertoires personnels des utilisateurs. /sbin : executables pour l’administration de la machine, root. /proc : contient des fichiers systeme, sur l’utilisation actuelle de la machine, tres proche du hardware. Référence aussi les procesus actuels. /lib : contient les librairies necessaires aux applis /opt : contient des applications qu’on ne peut pas trop classé, ou qu’on ne voit pas trop ou mettre. /dev : contient les fichiers attachés aux périphériques, disques durs, port agp, carte son etc... /boot : contient le noyau linux et son mappage ( System.map ), éventuellement un initrd /usr : contient le gros du systeme, avec des sources, des executables, des librairies etc... Bon, je vous ai résumé rapidement et assez simple la hierarchie de fichiers sous linux, mais ce qu’il faut savoir, c’est qu’un standard est défini par une organisation, comme d’habitude, et dans notre cas il s’agit de : FHS - FileSystem Hierararchy Standard. si vous voulez consulter la derniere norme ( 2.3 ) concernant l’arborescence des fichiers sous linux, je vous encourage à consulter ce lien 1 , complet, et définissant clairement les FS sous linux. 1 http://www.pathname.com/fhs/pub/fhs-2.3.html 33 34 CHAPITRE 5. [TUTO][DÉBUTANT] L’ARBORESCENCE DES FICHIERS SOUS LINUX Chapitre 6 [Tuto][Débutant] fstab ou la gestion des partitions par -rem- 6.1 Remarques Par abus de langage, lorsque je parlerai de fstab je désignerai le fichier /etc/fstab. 6.2 6.2.1 Présentation Rôle Le rôle du fichier /etc/fstab est d’indiquer au système d’exploitation les systèmes de fichiers que le système peut être amener à manipuler. Bien entendu on peut monter des systèmes de fichiers alors qu’ils ne sont pas définis dans ce fichier, mais dans ce cas seul root sera autorisé à le faire, pour la plupart des configurations standard. C’est d’ailleurs une question de sécurité, et qui fait qu’actuellement beaucoup d’entreprises ont des problèmes internes avec leurs employés qui ramenent les virus (windows) de chez eux sur une clef usb au bureau, involontairement bien sûr dans la majorité des cas. Donc, retenons que cela précise au système les "partitions" ( en fait, ce sont les systèmes de fichiers - "FS" en anglais - présents sur les partitions qui sont montées, mais bon, passons ) qui sont montées par le système, automatique ou non, les options d’accès à ces systèmes de fichiers etc... 6.2.2 Localité exacte du fichier Quelle que soit la distribution utilisée, c’est le noyau linux qui utilise fstab, donc l’emplacement et le nom est commun, tout comme sa syntaxe. Il se peut ceendant qu’il y ait quelques variantes sur certaines ditributions friendly users aux noyaux sur-patchés Ce fichier [critique] est /etc/fstab . 6.2.3 Qui peut accéder à /etc/fstab Dans le sens où c’est un fichier critique du système, permettant notament de modifier l’accès à certaines partitions sécurisées du système ou même des partitions critiques pour le système, seul root peut modifier ce fichier en écriture. En revanche les autres utilisateurs peuvent lire fstab, car : – si un utilisateur ne peut lire fstab, il ne peut rien monter ! – Il ne peut rien modifier et donc si la sécurité est bien faite, cela ne lui apporte rien1 . Retenons donc qu’on y accède sous le compte root principalement, et qu’il ne faut absolument pas changer les droits sur /etc/fstab ou les étendre. 1 Sauf ce qu’il peut pirater avec un live-CD 35 36 CHAPITRE 6. [TUTO][DÉBUTANT] FSTAB OU LA GESTION DES PARTITIONS 6.3 6.3.1 On mets les mains dans le cambouis ? Syntaxe Fstab est un fichier comprennant 6 colonnes, et une ligne par système de fichier que l’on veut gérer, partitions systèmes et swap compris. Chaque colonne est séparée par un blanc ( espace ou tabulation, peut importe ) mais par propreté et convention, on utilise une tabulation pour avoir un alignement propre des colonnes. 6.3.2 Les différents champs Champ 1 : Partition Le premier champ représente la partition sur laquelle le système de fichiers est installé, et que l’on désire monter. Par exemple, si vous avez utilisé la première partition de votre disque dur IDE maitre, cela correspond à /dev/hda. C’est le chemin d’accès, le pointeur ou la référence qui désigne l’endroit physique des données. Pour les utilisateurs un peu plus pointus, on peut gérer NFS ici. La syntaxe devient alors : nom_machine :chemin d’accès ( sephiroth :/dev/hdb8 par exemple ) et le nom de la machine doit evidemment etre résolvable par DNS ( /etc/resolv.conf ) ou directement une @ip. Champ 2 : Point de mointage Ici, on désigne la référence utilisé par le système, les utilisateurs et la plupart des logiciels pour accéder au système de fichier monté. Dans notre exemple précédent, cela correspond à "/". Notons que le point de montage doit exister, sinon on ne pourra pas monter le système de fichier. Attention donc à cette source d’erreur plutôt courante chez les débutants, d’autant plus que les droits appliqués seront ceux du répertoire ( point de montage ) créé justement. Remarque : Le point de montage de swap est... swap. Champ 3 : Type de système de fichier Il faut que le noyau connaisse le type de système de fichier utilisé pour pouvoir le lire bien sur ! Nous sommes gentils, nous allors le préciser, mais nous verrons par la suite qu’on peut le lui faire deviner, ce qui est bien utile pour les médias amovibles. Les types supportés et leur nom sont donnés avec man fstab, mais nous pouvons préciser les plus classiques : ext2, ext3, reiserfs, vfat ( partitions FAT Microsoft ) , ntfs ...sans oublier swap ! Pour le typage automatique, on peut tenter le autofs, mais c’est uniquement intéressant pour les cdrom, clefs usb etc...Dans ce cas, le type est autofs 2 Champ 4 : Options de montage Séparées par des virgules ’,’ nous pouvons ici préciser les options de montage désirées, et cela est loin d’être optionnel ! Cela permet par exemple de gérer qui à le droit de monter les partitions, et la manière de les monter. Nommons les plus courantes : – ro ( read only ) : Cela est indispensable pour les lecteurs ROM ( CD et DVD ), mais on peut aussi l’utiliser si on veut juste laisser une partition en lecture par exemple. – user : On autorise alors les utilisateurs à monter cette partition, sinon, seul root pourra le faire. – noauto : Le noyau ne montera pas ces FS lors du boot, tout simplement parce qu’on en a envie, ou qu’on y est contraints ( les lecteurs cdrom ou réseaux par exemple ). C’est générallement utilisé pour les cdrom/dvdrom avec l’option "ro" et "user". – pri : permet de définir une priorité dans l’utilisation de ces partitions, nous verrons cela un peu plus tard avec la simulation d’un raid 0 software sur la swap ( round robin ). – noatime : Les temps d’accès au système de fichier ne sont pas consignés, cela réduit donc le temps d’accès aux fichiers lus/ecrits. C’est générallement une bonne option pour les partitions système. – notail : augmente les performances sur les paritions de type reiserfs. Utilisant beaucoup reiserfs, je vous la recommende. Notons qu’elle peut parfois etre incompatible avec l’option précédente. – umask : permet de spécifier les droits des utilisateurs sur cette partition. C’est de type umask=022 par exemple, en fait, c’est 777 - umask = droits. Donc 777-022 = 755 = rwxr-x-r-x par exemple, soit tout pour le proprio, lecture et execution pour le groupe et les autres – noexec : empeche l’execution de binaires sur la parition en question, par défaut c’est l’inverse ( exec ) qui est utilisé. Concernant les options spécifiques NFS, cela sort du cadre de ce topic qui s’adresse esentiellement à des utilisateurs débutants. Toutefois, cela est intéressant, et pas forcément évident du fait des différentses versions de NFS utilisées etc... et pourrait sans aucun probleme constituer un tutoriel à part entiere. Notons que plusieurs options sont possibles pour empecher certains utilisations ( comme noexec par exemple ) et vous pourrez les consulter grâce à man mount. 2 Note de tuXXX : je dirais plutôt auto. autofs ressemble plutôt à un utilitaire de montage pour des NFS multiples. 6.4. ET APRÈS, COMMENT CA FONCTIONNE ? 37 Champ 5 : Dump Ce champ peut prendre les valeurs 0 ou 1, et permet de déterminer sur le système de fichier doit être purgé ou non. Générallement, les partitions ont une valeur nulle par défaut ( donc pas de purge ) et à part pour un besoin vraiment particulier, je vous conseille de les laisser ainsi. Champ 6 : Ordre de vérification Lorsque le système reboot violamment, pour une raison X ou Y, il est parfois nécessaire de vérifier l’intégrité des systèmes de fichiers. D’ailleurs, les utilisateurs de système Microsoft connaissent par coeur cette phrase, sur fond bleu générallement.Cela est donc un ordre, avec la nuance que 0 n’est pas le premier systeme de fichier à etre vérifier mais qu’il ne le sera pas du tout. Ce n’est pas forcément judicieux mais si vous etes confiant en votre système de fichier, et que son type est robuste ( reiserFs par exemple ) vous pouvez vous en passez. Et quand ca sera cassé de toutes manieres, vous aurez à lancer manuellement la vérification. 6.4 6.4.1 Et après, comment ca fonctionne ? 3.1 Fonctionnement Eh bien c’est fini, il suffit juste de sauver avec son éditeur préféré, ’ZZ’ pour ceux qui ont bon goût ;) C’est un fichier système, il sera donc lu au reboot, pour les montages automatiques de partitions ou lorsque quelqu’un tapera une commande mount. Voila comment cela se déroule, chronologiquement : 1. Vérification des systèmes de fichiers qui le necessitent, dans l’ordre chronolique 2. Montage des FS selon les options de fstab, pour les systemes de fichiers à monter automatiquement 3. Un utilisateur tape une commande mount, le fichier fstab est lu : – Le système de fichiers à monter n’est pas présent dans fstab, message indiquant que seul root peut monter cela. – Le système de fichiers à monter est présent dans fstab, mais l’option "user" n’est pas précisé, ou "nouser" est précisé : permission non accordée. – Le système de fichiers à monter est présent dans fstab et l’option user est présente : la partition est montée, pour l’utilisateur, dans la limite de ses droits. – Le système de fichiers à monter est déjà monté : abandon. 4. root peut monter un autre type de fichier, avec mount ... meme si un systeme de fichiers n’est pas présent dans fstab. 6.4.2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Un exemple de fichier fstab # /etc/fstab: static file system information. # # <file system> <mount point> <type> /dev/sda1 /boot ext3 /dev/md0 / reiserfs /dev/md2 /data reiserfs sephiroth:/dev/hda11 /divers nfs sephiroth:/dev/hda9 /www nfs /dev/hdc /cdrom iso9660 /dev/hdd /dvd iso9660 /dev/sda6 swap swap /dev/sdb6 swap swap /dev/hdb1 /windows vfat none /proc proc usbdevfs /proc/bus/usb usbdevfs 6.4.3 <options> noatime notail,noatime notail,noatime user,noauto user,noauto ro,user,noauto ro,user,noauto defaults,pri=1 defaults,pri=1 user,noauto defaults defaults <dump> 0 0 0 0 0 0 0 0 0 0 0 0 <pass> 0 0 0 0 0 0 0 0 0 2 0 0 Un exemple de montage manuel mount /cdrom reviendra à monter le système de fichiers /dev/hdc dans le "répertoire" ( fichier serait plus exact mais n’embrouillons pas les débutants ) /cdrom en lecture seule. Lorsque l’on voudra retirer le cd, il faudra au préalable démonter le système de fichiers proprement, avec umount /cdrom . Cela reviendrait à utiliser la commande ( root , pas d’entrée fstab requise ) : 1 $ mount -t iso9660 -o ro /dev/hdc /cdrom Enfin, pour voir la liste de partitions montées : mount 38 6.4.4 CHAPITRE 6. [TUTO][DÉBUTANT] FSTAB OU LA GESTION DES PARTITIONS C’est Noel... swap swap swap ! ! ! Une astuce, pour simuler un raid 0 logiciel sur la swap est de définir plusieurs partitions de swap, sur des disques durs physiques différents. Je rappelle que le raid 0 consiste à répartir l’écriture d’un fichier sur plusieurs disques durs différents, afin de multiplier les vitesses de lecture ou d’écriture, mais cela ne peut se faire sur le swap. Du moins, on ne peut les fusionner en un /dev/xxx, on va donc simuler ce comportement. Il faut bien entendu créer les partitions, avec cfidsk/fdisk dans un premier temps, on les initialise par la suite avec mkswap /dev/xxx et ce pour chaque partition créée. On doit ensuite activer le swap sur ces partitions, avec swapon /dev/xxx pour chaque partition initialisée. Et c’est la qu’intervient fstab, car c’est bien gentil d’avoir plusieurs partitions de swap, mais dans quelle ordre vont elles etre remplies ? Eh bien, il faut leur accorder une priorité équivalente, avec pri=1 dans les options. On peut meme en fait plusieurs, par exemple : J’ai 2 partititons assez petites sur des disques durs rapides, que je mets en priorité 1. Un round robin sera fait sur les deux ( un fichier est découpé en plusieurs et une partie sera placé sur une partition swap, l’autre partie sur l’autre partition puis à nouveau sur la première etc... ). Et je pourrais très bien avoir un disque plus lent, mais tres gros, sur lequel je pourrais définir une grosse partition swap de secours, avec une priorité de 2. Si jamais mes 2 petites partitions de swap sont pleines, on passera alors sur la grosse. Je vous laisse imaginer toutes les combinaisons et stratégies possibes, et pour la beauté de la chose ( simulation de raid logiciel sur le swap ) vous avez le droit de vous dire Putain Linux c’est vraiment puissant ! . Troisième partie Distributions 39 Chapitre 7 [Tuto][Debutant] Mandriva Par -rem- 7.1 Introduction Ne négligez pas la documentation officielle 1 Au menu de ce tuto : intallation de Mandakelinux, installation de la connection internet, intallation des pilotes graphiques propriétaire, installation de logiciels, et une FAQ pour tout le reste. nota bene : Mandrakelinux a changé de nom pour Mandriva. Mandriva 2005 LE est en fait Mandrakelinux 10.2. Donc pas de changement majeurs, le topic est en cours de mise à jours. 7.2 Installation de Mandrakelinux 10.1 Avant d’aller plus loin êtes vous sûr d’avoir lu le tuto pour débuter ?2 Lire l’article de PC INpact 3 Erratum : le lien vers md5summer n’est plus valide, le bon lien est http ://www.md5summer.com/ 4 ;) 7.3 Configurer sa connection internet Il n’est pas matériellement possible de tester tous les appareil permettants de se connecter à Internet. Si vous avez réussi la configuration de votre modem, n’hésitez pas à m’envoyer, par mp ou en postant directement à la fin de ce topic, un petit texte explicitant la marche à suivre. Comme ça grace à vous, de nombreux INpactiens auront une réponse rapide et efficace à leurs problèmes de connection internet sous MandrakeLinux. 7.3.1 Configurer sa LiveBox par Bozzoh J’ai aussi une livebox qui tourne sous Mdk10 en ethernet, et je peux dire que ca marche nickel-chrome ;) Pour la config : mcc puis "réseau & internet" – connection à travers un réseau local LAN – si ta carte réseau est reconnue click sur suivant – configuration manuelle (j’avais des problème de connection et de DNS par DHCP). – Adresse IP 192.168.5.10 si la livebox est une Sagem – Adresse IP 192.168.10.10 si la livebox est une Inventel (à vérifier, perso j’ai une Sagem) – masque de sous-réseau : 255.255.255.0 – passer en mode expert et choisir "dhcp-client" et coche de "affecter le nom...." où je n’ai rien inscrit et suivant – "nom de la machine" : rien inscrire et suivant – "nom de l’hote ZeroConf" : rien inscrire et suivant – redemarrer le réseau – terminé Si le choix est fait de ne pas lancer la connection au boot (ce que je fais toujours) : 1 http://www.mandrakelinux.com/fr/fdoc.php3 2 Topic "Démarrage", nouveau sous linux ? 3 http://www.pcinpact.com/articles/d/47/1.htm 4 http://www.md5summer.com/ 41 42 CHAPITRE 7. [TUTO][DEBUTANT] MANDRIVA – pour la lancer : ifup eth0 – pour la couper : ifdown eth0 – pour relancer le réseau : /etc/rc.d/init.d/network restart (tout ca en root) J’ai eu des problèmes de DNS, il a fallu que je reconfigure manuellement le fichier /etc/resolv.conf, il faut l’éditer de cette manière (en root) : 1 2 3 4 5 nameserver 80.10.246.3 nameserver 80.10.246.130 nameserver 192.168.5.1 # ppp temp entry Et ca devrait être ok. 7.4 Installation des pilotes graphiques 3D Voici deux excellents topics pour les cartes ATI et Nvidia. Merci de faire les retours éventuels uniquement dans les topics dédiés. Bonne lecture ;) 7.4.1 Pilotes ATI 7.4.2 Pilotes Nvidia 7.5 Ajout de logiciels avec urpmi urpmi permet d’installer/désinstaller/mettre à jour de manière excessivement rapide tous les logiciels sur Mandrakelinux. Pour ce faire, il faut definir des média (ou sources) où urpmi ira chercher les informations afin de faire l’installation. Ces sources peuvent être les CD/DVD d’installation (intérêt limité) ou alors des sites Internet. Dans le dernier cas, les sites étant mis à jours régulièrement, vous pourrez en une petite ligne de commande profiter des mises à jour. Toutes les opérations suivantes seront réalisées dans une console en tant que root Ouvrez une console et tapez : 1 2 3 $su password: <----- tapez le password du root # <------- vous etes root ^\_^ 7.5.1 Ajouter/Supprimer des média Ajouter un médium : 1 # urpmi.addmedia <nom> <url> Enlever un médium : 1 # urpmi.removemedia <nom> Si vous ne vous rappelez pas le nom du médium à retirer : 1 # urpmi.removemedia vous donnera la liste de tous les média. "Mais comment je les trouve moi les média ?" 7.5.2 Configurer urpmi en ajoutant des média venant d’Internet Easyurpmi est un site INternet permettant de facillement rajouter des média à urpmi. Le site fournit une liste des média disponible suivant la version de Mandrakelinux et le type d’architecture. Après avoir choisi des miroirs pret de chez vous, Easyurpmi foirnit même les lignes de commandes prètes à etre copiées dans une console. Cela facilite énnormément l’ajout de media sous Mandrakelinux :yes : Avant de commencer, supprimez tous les media déjà configurés. Easyurpmi 5 ou urpmi-addmedia (miroir Easyurpmi) 6 5 http://easyurpmi.zarb.org 6 http://urpmi-addmedia.org 7.5. AJOUT DE LOGICIELS AVEC URPMI 43 Traduction rapide du site pour les non anglophiles – Choisissez votre version et architecture (en général Mandrake 10.1 et i586) Quand c’est fait, cliquez sur "Proceed to next step(2)" – Choisissez un miroir pour chacune des sources que vous voulez ajouter Choisissez des sites près de chez vous.... Quand c’est fait, cliquez sur "Proceed to next step(3)" – Tapez ceci dans une console en tant que root Il ne reste plus qu’à recopier ligne à ligne dans une console (root) Maintenant vous pouvez installer des logiciels avec urpmi ;) . 7.5.3 Ajouter supprimer des programmes Installer un paquetage : 1 # urpmi <nom_du_paquetage> Cella installera le paquetage <nom_du_paquetage> si celui-ci existe, ou le paquetage dont le nom contient la chaîne <nom_du_paquetage> pour trouver le nom du paquetage que vous voullez installer il suffit de le rechercher ;) 1 # urpmf <nom_recherché> Cela recherche <nom_recherché> dans la liste des paquetages disponible Essayez avec firefox, thunderbird ou gimp pour voir si urpmf trouve quelque chose ;) Supprimer un paquetage : 1 # urpme <nom\_du\_paquetage> Cela supprimera le paquetage <nom_du_paquetage>. 7.5.4 Maintenir un système à jour Mettre à jour les paquetages : 1 # urpmi --auto-select Cette commande met à jour automatiquement tous les paquetages qui en ont besoin. 7.5.5 Mettre à jour sa Mandrake/Mandriva vers la dernière version par internet (par tramway) – Sauvegardez vos données personelles (étape indispensable ! ) – Pour les posseceurs de cartes ATI, je vous conseille de télécharger, avant d’effectuer la mise à jour, le driver pour Xfree à partir du site de ATI et de le placer dans votre répertoir perso. – Lancez un terminal – Loguez vous en root (su) – Enlevez les anciennes sources configurées avec Easyurpmi – Configurez les nouvelles sources en choisissant la version souhaitée de Mandriva sur Easyurpmi – Tapez : 1 # urpmi urpmi – Tapez : 1 # urpmi --auto-select – Selon votre connexion, attendez entre quelques minutes (pour les dégroupés) et quelques heures (pour les autres)... que tout se télécharge. – C’est fait ! Si vous rencontrez des problèmes avec les drivers ATI (X ne se lance pas) après avoir installé la mise à jour : – Rendez vous dans le repertoir où vous avez téléchargé le driver. – rpm -Uvh –force fglrx....rpm Le –force est important si vous n’avez pas pris la peine comme moi de désinstaller les anciens drivers ATI configurés pour la version précédente. – Tapez : fglrxconfig – Suivez les insctructions, et ça fonctionne. 44 CHAPITRE 7. [TUTO][DEBUTANT] MANDRIVA 7.5.6 Mettre à jour sa Mandrake/Mandriva en utilisant les CDs (par Scaramouche) Vous pouvez retrouver ce tuto en images sur le forum 7 . Démarrage – Commencez tout d’abord par booter sur le CD 1 d’installation (je n’expliquerai pas comment obtenir ces CDs ni comment les graver et booter dessus ;) ). Vous obtenez alors un écran (en anglais) : 1 2 Press <F1> for more options Press <Enter> to install or upgrade – Pressez donc "Enter" pour "Installer ou mettre à jour" votre Mandriva. Il vous est alors proposé de choisir votre language. – Choisissez donc français (à moins qu’un autre choix vous corresponde mieux) puis cliquez sur "Next". L’ensemble du texte d’installation passe donc en français. On arrive alors à l’écran de l’acceptation de la licence... – Lisez la licence, puis choisissez "J’accepte" et cliquez sur "Suivant" . Arrive alors le moment crucial du choix entre la mise à jour et l’installation pure et simple : 1 2 3 Désirez-vous faire une installatoin ou une mise à jour? * Mettre à jour Mandrakelinux release 10.1 (Official) * Installation – Sélectionnez la mise à jour et cliquez sur "Suivant". L’installeur propose alors le choix du clavier. – Il est ensuite proposé de choisir les médias. Si il vous manque des CDs, décochez-les. Si vous voulez mettre à jour par internet, ne copiez pas sur le disque dur ! Mise à jour – La mise à jour en elle-même va se dérouler maintenant. Il n’y a alors plus qu’à laisser faire et changer de CD quand cela est demandé à deux reprises, en cliquant sur "OK" après chaque changement. 8 – À la fin, le récapitulatif de la configuration apparaît. Vérifiez que votre configuration est bonne et cliquez sur « Suivant ». (C’est sûrement là où j’aurai dû faire attention à ma connexion ethernet). La mise à jour est alors finie. Le reboot – Cliquez sur « redémarrage » après avoir enlevé le CD de votre lecteur. Vous rebootez donc sur lilo comme cela était le cas avant.. seule l’image de fond a changé. – Sélectionnez de booter sous linux puis presser la touche « entré ». En appuyant sur « escape » pendant le démarrage vous pouvez voir où on est l’avancement (rien de nouveau sous le soleil non plus). – L’invite d’ouverture de session est là comme configurée auparavant. – Et après avoir entré le mot de passe KDE s’ouvre normalement. Le mot de la fin N’oubliez pas de bien configurer vos miroir et de mettre à jour votre Mandriva, des corrections étant disponibles. La mise à jour n’est pas bien compliquée et n’est pas très longue. J’espère qu’elle se déroulera aussi bien pour vous afin que vous puissiez profiter des joies des nouvelles versions de Mandriva. Si vous avez une carte graphique ATI, suivez la recommandation de tramway (dans la section précédente). 7.5.7 Pour aller plus loin Oh, ça alors c’est drôle, ils expliquent comment utiliser urpmi dans la documentation officielle. Qui l’eût cru ! Gestion des paquetages par la ligne de commandes (Chapitre 20. Rpmdrake : gestion des paquetages) 9 Autres liens pour apprendre à utiliser urpmi : Introduction à urpmi 10 urpmi/urpme/urpmf et rpmdrake 11 All You Ever Wanted to Know About Urpmi But Never Dared Asking Before 12 Débutant, s’abstenir : HOWTO - Comment utiliser Cooker ? 13 7 http://www.pcinpact.com/forum/sujet_53800.htm 8 Note : Ne vous fiez pas au temps qui est affiché sur mes copies d’écran : la mise à jour en elle-même n’a demandé que 30min contre les 1h45 annoncée. 9 http://doc.mandrakelinux.com/MandrakeLinux/100/fr/Starter.html/ch20s05.html 10 http://lis.snv.jussieu.fr/∼rousse/linux/urpmi.html 11 http://www.linux-wizard.net/howto.php?section=5\&id_article=42#urpmi 12 http://mandrake.vmlinuz.ca/bin/view/Main/UsingUrpmi 13 http://www.linux-wizard.net/howto.php?section=1\&id_article=39 7.6. LA FAQ "MATÉRIELLE" 7.6 7.6.1 45 La FAQ "Matérielle" Pourquoi je ne peux pas installer Mandrakelinux ? La solution proposée, n’est pas une solution ultime qui s’applique dans tous les cas. Cependant elle permet de résoudre près de 95% des problèmes, et comme elle est totallement inoffencive pour vos données, je la donne sans détails techniques du champ d’application. En cas de besoin, une recherche sur googlelinux avec "acpi" comme mots clefs donnera certainement des éléments de réponses. Au tout début de l’installation au moment ou le logo Mandrake apparait, appuyez sur la touche "F1" (Normallemnt c’est écris à l’écran pas possible de se tromper ;) ) il faut taper sur la ligne de commande 1 linux acpi=off noapic nolapic 7.6.2 Pourquoi après installation Mandrakelinux ne démarre pas ? A l’apparition du menu de démarage de LILO (choix du système d’exploitation à démarrer) appuyez sur la touche echap pour accéder à ca ligne de commande et entrez. 1 linux acpi=off Aprés le démarrage, pour rendre la modification permanente, dans le menu "étoile", allez dans système, puis configuration, enfin "configuration de l’ordinateur" Là choisissez "gestionnaire de démarrage", puis DESACTIVEZ ACPI... 7.6.3 Pourquoi mes DNS changent tous seuls ? Par noobietux Pour y remédier facilement il faut éditer le fichier /etc/resolv.conf, donc avec des droits root tapez : 1 kwrite /etc/resolv.conf mettre les bonnes ip, sauvegardez Faire en sorte que le fichier resolv.conf ne soit pas modifiable y compris par le systeme lui même (toujours en root) : 1 # chattr +i /etc/resolv.conf Et voilà le problème est définitivement résolu. Si par la suite vous êtes amené à devoir le modifier à nouveau : 1 # chattr -i /etc/resolv.conf et le tour est joué ;) 7.6.4 Pourquoi ma carte télé ne marche pas ? Par noobietux Si la carte télé ne fonctionne pas, c’est souvent que le tuneur de la carte est pas reconnu. Il va donc falloir le définir à la main. – étape 1 : test dans une console en root, decharger le module bttv 1 # rmmod bttv puis le recharger avec les options désirées 1 # modprobe bttv tuner=*1* card=*2* ou *1* et *2* représentent le code correspondant au tuneur et à la carte. Pour connaitre le code et avoir quelques infos supplémentaires http ://lea-linux.org/hardware/tv.html 14 – étape 2 : rendre les changements permanents ouvir le fichier modprobe.conf 1 #kwrite /etc/modprobe.conf modifiez ou créez la ligne suivante : 1 options bttv tuner=*1* card=*2* le tuner est désormais correctement configuré. 14 http://lea-linux.org/hardware/tv.html 46 CHAPITRE 7. [TUTO][DEBUTANT] MANDRIVA Exemple avec la carte TV "Winfast TV 2000 XP deluxe" ouvir le fichier modprobe.conf 1 # kwrite /etc/modprobe.conf modifiez ou créez la ligne suivante : 1 options bttv radio=0 card=34 tuner=3 gbuffers=4 Si malgré cela les logiciels de visionnage TV (comme TVtime) n’arrive pas à autodecter les chaines il faudra alors, avec des droits roots, taper la commande suivante : 1 # modprobe tda9887 et ensuite avec des droits root toujours : 1 # kwrite /etc/modprobe.preload et insérez : 1 tda9887 en desous de bttv qui devrait dejà s’y trouver. Voilà c’est terminé, normalement tout doit fonctionner, sans que ces manipulations ne soient nécessaires à l’avenir. 7.6.5 Comment j’utilise les touches multimédia de mon clavier ? Par xxxxx Voici un lien très interessant fourni par un membre du forum souhaitant rester dans l’harmonica. Il a en effet peur que participer eu topic Mandrake nuise à son image de debianiste... juste il est Dieu Linux et Modo, mais j’en dirais pas plus.... vous risqueriez de le reconnaitre :p Tuto de shift.free.fr 15 7.7 La FAQ "Logicielle" 7.7.1 Comment installer proprement un RPM téléchargé sans urpmi ? Par noobietux Si un programme n’est pas disponible depuis un mirroir urpmi mais que l’on trouve un rpm kivabien, plutôt que de faire un bête double click dessus pour l’installer, on peut se servir quand même de urpmi pour pas casser la distrib avec 1 # urpmi /chemin/rpmkivabien.rpm 7.7.2 Comment trouver un RPMs non disponibles dans mes media ? Si vous n’avez pas un rpm dans vos média, vous pouvez le chercher sur ce moteur de recherche. RPM Search 16 Attention : utiliser des rpm pour Mandrakelinux ou compatibles. Faites aussi très attention lors de l’utilisation de ces rpm "extérieurs", privilégiez toujours l’utilisation des rpm provenant de vos média et donc directement accessible via urpmi. 7.7.3 Comment avoir la dernière version de Firefox et Thunderbird en francais ? Par noobietux, fester et Scaramouche Firefox Installer firefox 1.0.2 proprement via urpmi : – Mettre un mirroir qui propose un RPM à jour dans la base de donnée urpmi (faire un copier-coller d’un seul bloc dans une console) : 1 # urpmi.addmedia NORLUG-10.1 http://mirror.datapipe.net/norlug/mandrake-10.1/RPMS/ with hdlist.cz 15 http://shift.free.fr/?item=ordi_clavier_logitech 16 http://rpm.pbone.net/ 7.7. LA FAQ "LOGICIELLE" 47 – Installer Firefox : 1 # urpmi mozilla-firefox – Puis 1 # urpmi mozilla-firefox-devel – Télécharger le fichier fr_FR.xpi sur : ftp ://ftp.eu.mozilla.org/pub/mozilla.org/...linux-i686/xpi/ 17 et autoriser bien sûr firefox a l’installer. – Téléchargez l’extension locale_switcher en plus du pack fr_FR.xpi, disponible ici : http ://ftp.mozilla.org/pub/mozilla.org/ext...r0.3-fx+tb.xpi 18 Ainsi après installation du pack français et de locale_switcher, il suffira de lancer Firefox et d’ aller dans : Tools => Languages pour choisir la langue française :yes : Thunderbird Installer Thunderbird 1.0 proprement via urpmi : – Si cela n’a pas été déjà fait , mettre un mirroir qui propose un RPM à jour dans la base de donnée urpmi (faire un copier-coller d’un seul bloc dans une console) : 1 # urpmi.addmedia NORLUG-10.1 http://mirror.datapipe.net/norlug/mandrake-10.1/RPMS/ with hdlist.cz – Installer Thunderbird : 1 # urpmi mozilla- thunderbird – Puis 1 # urpmi mozilla-thunderbird-devel – Télécharger le fichier fr_FR.xpi sur : ftp ://ftp.eu.mozilla.org/pub/mozilla.org/...6-gtk2+xft/xpi/ 19 – Ouvrir Thunderbird, aller dans Tools / Extensions et cliquer sur "Install". Choissisez alors le chemin qui mène à votre fichier fr-FR.xpi et cliquez sur "Open" puis "Install now". Fermez TB. – Télécharger l’extension locale_switcher en plus du pack fr_FR.xpi, disponible ici : http ://extensions.geckozone.org/xpi/tb/Loc...he 1.0-int.xpi 20 21 – Lancer Thunderbird, aller dans Tools / Extensions et cliquer sur "Install". Choissisez alors le chemin qui mène à votre fichier LocaleSwitcher-1.0-int.xpi et cliquez sur "Open" puis "Install now". Fermez TB. – Ouvrir encore Thunderbird et aller dans Tools / Languages pour choisir la langue française. Cliquez sur OK quand il vous dit que ça sera effectif au prochain redémarrage. Fermer TB. Ré-ouvrez Thunderbird et vous voyez qu’il est bien en français :yes : 7.7.4 Comment voir les vidéo dans firefox ? Par noobietux Pour pouvoir bénéficier du streaming vidéo sur internet avec le navigateur Firefox que vous venez d’installer, il va falloir lui ajouter un plugin, issu du logiciel MPlayer. – Dans une console avec des droits root tapez : 1 # urpmi mplayer éventuellement acceptez d’installer les autres paquetages dont il dépend. – Puis installatallez le plugin en lui même : 1 # urpmi mplayerplugin Si tout se passe correctement le fichier mplayerplug-in.so est installé dans le dossier /usr/lib/mozilla/plugins. – Configurez le plugin pour qu’il supporte un grand nombre de formats : 1 kwrite /etc/mplayerplug-in.conf 17 ftp://ftp.eu.mozilla.org/pub/mozilla.org/firefox/releases/1.0/linux-i686/xpi/ 18 http://ftp.mozilla.org/pub/mozilla.org/extensions/locale_switcher/locale_switcher-0.3-fx+tb.xpi 19 ftp://ftp.eu.mozilla.org/pub/mozilla.org/thunderbird/releases/1.0/linux-i686-gtk2+xft/xpi/ 20 http://extensions.geckozone.org/xpi/tb/LocaleSwitcher-1.0-int.xpi 21 j’ai galéré pour en trouver une compatible avec TB 1.0 ... celle-là est (en français et) compatible avec : FF (0.10 - 1.0+) - TB (0.8 - 1.0+) 48 CHAPITRE 7. [TUTO][DEBUTANT] MANDRIVA décommentez (supprimez le caractére "#" devant le mot "enable" pour que l’option soit active) les lignes suivantes pour qu’elles ressemblent à ça : 1 2 3 4 5 6 7 8 9 10 11 # Enable/Disable RealPlayer mime-types (default=0) enable-real=1 # Enable/Disable WindowsMedia mime-types (default=1) enable-wm=1 # Enable/Disable QuickTime mime-types (default=1) enable-qt=1 # Enable/Disable Mpeg mime-types (default=1) enable-mpeg=1 Sauvegardez, fermez le fichier. – Fermez Firefox, relancez le et à vous le streaming sous linux ;) 7.7.5 Comment visualiser les *.pdf dans Firefox ? Par noobietux Vous aimeriez sûrement pouvoir visualiser directement dans votre navigateur préféré les document pdf que l’on peut consulter sur de nombreux sites web. Adobe fourni lui même les RPM necessaires à une telle installation, nous allons néanmoins vous proposer une méthode plus facile et plus propre : – Si vous ne l’avez pas déjà fait, configurez urpmi avec le mirroir NORLUG : 1 # urpmi.addmedia NORLUG-10.1 http://mirror.datapipe.net/norlug/mandrake-10.1/RPMS/ with hdlist.cz – Installez acrobat reader : 1 # urpmi acroread – Installez le plugin pour mozilla (et Firefox) : 1 # urpmi acroread-plugin A ce stade tout devrait être installeé correctement, pour le vérifier, assurez vous de la présence du fichier nppdf.so dans le répertoire /usr/lib/mozilla/plugins. S’il n’y est pas, copiez la ligne suivante dans une console, en root bien sûr : 1 # ln -s /usr/lib/acroread/Browsers/intellinux/nppdf.so /usr/lib/mozilla/plugins – Fermez Firefox, relancez le, et ça devrait fonctionner. Pour le vérifier rendez vous sur cette page : http ://www.copyright.gov/legislation/dmca.pdf 22 7.7.6 Comment lire toutes mes vidéos ? Par noobietux Pour regarder des videos sous linux, plusieurs logiciels existent : kafeine, le lecteur par défaut sous Mandrake, mais aussi mplayer, xine,vlc... Nos allons donc vous présenter l’installation des ces logiciels, vous pourrez comme ca choisir celui que vous préférez ;) Pour la suite il faut que vous ayez configurés les souces d’urpmi. Si vous ne l’avez pas encore fait, ajoutez les sources PLF (Penguin Liberation Front). Aller voir les paragraphes 4.2 et 4.3 pour les détails. Kaffeine Lire des DVD avec Kaffeine, le lecteur vidéo de KDE (fonctionne aussi pour MPlayer et Xine). Note : Kaffeine est déjà installé sur la Mandrake 10.1 et KDE est configuré de base pour lui faire lire les différents formats de vidéo. Prérequis : – avoir configuré urpmi pour un mirroir plf. – si possible avoir installé les pilotes pour sa carte graphique. 22 http://www.copyright.gov/legislation/dmca.pdf 7.7. LA FAQ "LOGICIELLE" 49 Pour pouvoir lire de DVD commerciaux, cryptés par l’algorythme CSS, et utiliser la navigation par click dans les menus, il va falloir ajouter les paquetages nécessaires. Tapez dans une console, en root : 1 urpmi libdvdcss2 libdvdplay0 libdvdread3 libdvdread-utils libdvdnav4 libdvdcontrol9 Maintenant Kaffeine, le lecteur vidéo installé par défaut, devrait pouvoir lire les DVD. Pour le vérifier insérez un DVD dans votrer lecteur, il devrait se lancer automatiquement. Sinon lancez Kaffeine, et cliquez sur "DVD" dans le menu "lecture". Si il vous affiche une erreur du type "pas de plugin trouvé..." tapez : 1 xine --auto-play --auto-scan dvd normalement le DVD se lance, fermez Xine, relancez Kaffeine et ça devrait passer. Pour les divx & co kaffeine les lit de base. Si un format n’est pas lu "xine-win32" +"urpmi –auto-select mettra à jour les win32-codecs plus complets sur le mirroir plf. Pour le real et quicktime je ne me souviens pas si c’est géré ou pas à la base :transpi : Pour vlc il faut en plus installer vlc-plugin-dvdnav (pas testé, mais c’est dans le repository donc ça doit avoir son importance). Mplayer Installation : 1 # urmpi libogg0 libogg0-devel libvorbis0 libvorbis0-devel transcode libdvdcss2 libdvdread2 ogmtools divx4linux libdivx4linux0 xvid libxvidcore3 win32-codecs real-codecs mplayer Utilisation : 1 $ mplayer /dossier/fichier.xyz Xine Instalation : 1 # urpmi xine xine-ui libxine0 xine-plugins xine-oss xine-alsa xine-dvdnav xine\_d4d\_plugins xine-d5d libcss0 libdvdcss2 Utilisation : 1 $ xine /dossier/fichier.xyz Vcl Instalation : 1 # urpmi Utilisation : 1 $ vlc /dossier/fichier.xyz 7.7.7 Pourquoi mes polices ne sont pas comme sous Windows ? Les police Microsoft ne sont pas libres, donc il est assez normal de ne pas les retrouver sous Mandrake. Vous pouvez quand meme les intaller si vous souhaitez les utiliser. 1 urpmi msfonts msfonts-style mswebfonts 7.7.8 Pourquoi les polices moches, laides, baveuses ? Par noobietux 50 CHAPITRE 7. [TUTO][DEBUTANT] MANDRIVA Sous X Plusieurs problèmes peuvent rendre vos polices "baveuses". – La mise à jour automatique par la commande "urpmi –auto-select" si vous avez ajouté le mirroir PLF à urpmi (ce que je conseille vivement par ailleurs). Le mirroir plf propose sa propre version du paquetage "libfreetype" qui peut poser problème. Commencez par désinstaller le paquetage litigieux. Tapez, en root : 1 urpme libfreetype Ensuite modifiez le fichier /etc/urpmi/skip.list pour qu’à l’avenir celuiçi ne s’installe plus lors de mises à jour : 1 kwrite /etc/urpmi/skip.list Ajoutez la ligne suivante : 1 /libfreetype.*plf/ Sauvegardez. Réinstallez le bon paquetage : 1 urpmi libfreetype – L’installation du pilote ATI peut aussi rendre les polices un peu floues dans certaines applications. Modifiez le fichier xorg.conf : 1 kwrite /etc/X11/xorg.conf Commentez (rajoutez le symbole "#" au début ) les lignes commençant par FontPath et rajoutez la ligne suivante (faites un copier-coller) : 1 FontPath "unix/:-1" Au final la portion du fichier concernée doit ressembler à ça : 1 2 3 4 5 6 7 8 9 # # # # # # # # FontPath "/usr/X11R6/lib/X11/fonts/local/" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "unix/:-1" Sauvegardez, les changements ne seront effectifs qu’au prochain redémarrage du serveur X Vous souhaitez utiliser la merveilleuse suite OpenOffice mais les polices vous semble affreuses ? Démmarrez OpenOffice Writer puis allez dans "Fichier">"Autopilote">"Installer des polices en ligne". Ensuite cliquez sur "français">"Démarrer FontOOo">"suivant". Sélectionnez toutes les polices que l’on vous propose (sauf chinese), cliquez sur "suivant">"suivant". Patientez pendant le téléchargement. Fermez FontOOo quand il a terminé. De retour sous OpenOffice writer allez dans "Outils">"OpenOffice.org">"options" Cochez la case "Utiliser la table de remplacement" Dans la boite "police" choisissez "Andale Sans UI", dans la boite "Remplacer par" choisissez "Arial", cliquez sur la case verte à côté. Cochez les cases "Toujours" et "Ecran", cliquez sur "OK" et le tour est joué. :) Maintenant la police des menus devrait être beaucoup plus propre, il en sera de même pour la majorité des fichiers *.doc et *.rtf que vous ouvrierez avec OpenOffice. Chapitre 8 [Tuto][Debutant] SuSE Par X-Guardian 8.1 8.1.1 La SuSE Qu’est ce que la SuSE – La SuSE est une distribution Linux, un peu comme la Mandrake ou la Red Hat. Elle fut et elle est toujous fortement critiqué par le fait qu’elle ne soit pas (son contenu) véritablement sous licence GPL. Même si la tendance actuelle fait qu’elle se rapproche le plus possible d’une distrib libre. (Yast est passé sous licence GPL il y a peu). – Tout comme la Mandrake et la Red Hat, son système de package est lié à RPM. Elle dispose d’outils graphique permettant de la configurer et de la mettre à jour. – le site web : www.suse.com 1 8.1.2 Pourquoi choisir la SuSE – Yast : Yast est le "contrôle Center" de la SuSE. Cet outil est très facile à prendre en main et se révèle très complet pour administrer toute la distribution. – You : "Yast Online Update" est l’utilitaire basé sur Yast pour mettre à jour la distribution via internet et pour vous informer des patchs et autres correctifs de sécurités. – SaX : Sax est l’utilitaire qui génère et configure le fichier XF86config. Il permet donc de régler le clavier, la souris, l’écran et la carte graphique. – C’est une distribution très bien finie qui est très stable et ne comporte pas de bugs apparent. – Enfin, comme la Société SuSE participe à de nombreux projets comme XFree ou ALSA, il arrive qu’elle apporte certaines fonctionnalités qu’on ne retrouve pas toujours dans d’autre distributions. Par exemple, ce fut l’une des premières distributions me permettant d’avoir l’accélération 3D avec ma Radeon 8500 (DRI ?) sans installer les pilotes ATI. – Portables : La SuSE a une très bonne réputation de ce coté. Elle gère très bien l’acpi, et ce, dès le début de l’installation. 8.1.3 Spécificité – C’est une distribution dont on peut presque tout gérer graphiquement via Yast (Sax et You sont incorporé à Yast). – Elle est assez friendly-user comme une Mandrake ou une Red-Hat. L’intégration des logiciels et des thèmes est assez surprenante. Si vous lancez OpenOffice.org par exemple, vous verrez en bas à droite le petit logo SuSE sur la page de chargemment de OOo. Le démarrage de OOo est très court (4s chez moi pour être prêt à taper du texte i et l’interface a été modifié pour la rendre plus jolie. (C’est même plus beau que Office 2000 :p ). – Très complète, facile à installer/configurer. You install les drivers NVidia sur demande. De nouveaux drivers pour le Wifi ont été intégrés il y a peu de temps, et ils s’installent aussi très facillement comme les drivers NVidia par un simple clic. – Conformément à la nome LSB, tous les médias (lecteur CD/DVD/Graveur, clée usb, ... ) sont montés dans "/media" et non dans "/mnt". – Enfin, certains plugg-ins comme le Xvid, ne sont pas livrés en standard même si cette fois ci, xine dispose d’un package spécial pour palier à ce déficit. (Paquetage contenant des codecs libres de droits et de diffusions). 1 http://www.suse.com 51 52 CHAPITRE 8. [TUTO][DEBUTANT] SUSE 8.1.4 La version personnelle en 1 CD Comment l’obtenir ? – Il est possible de telecharger le 1 CD de la version personnel à cette adresse 2 . – Ou le LiveCD 3 . Comment la mettre à jour ? En utilsant apt4rpm. Il permettra ainsi de récupérer la plupart des paquetages contenu dans la version pro, ainsi que de nouveaux logiciels ATTENTION Le plus gros défault de cette version 1 CD, c’est qu’elle ne contient pas les éléments servants à compiler (make, gcc, ...). Mais quel est le problème, me direz vous, pour un utilisateur lambda. Ben tout simplement que la SuSE ne supporte que très peu de modem adsl usb. Il faudra donc recompiler le "driver" du modem afin de pouvoir l’utiliser. 8.2 Apt4Rpm Apt4Rpm vous permettra de mettre facilement votre distrib à jour, ou d’installer quelques fonctionnalités supplémentaires (codecs, lecteurs, ...) 8.2.1 Les pré-requis Commencez tout d’abord pas faire un petit tour sur le site de Apt4Rpm 4 , vous trouverez toute la documentation et des aides sur APT4RPM. Installez avec Yast quelques packages qui ne sont pas dans l’installation standard. – scrollkeeper – libzvt – cvs – docbook4 Récupérez ces 3 paquetages sur cette page 5 – apt – apt-libs – lua Pour la SuSE 9.1, récupérez aussi "lua" , ainsi que sur cette page 6 , popt. Mettez le tout dans un répertoire. 8.3 Installer APT4RPM Logguez vous en tant que Super Administrateur (root) sur une console avec la commande "su" puis tapez dans le repertoire ou vous avez mis les fichiers téléchargés : 1 # rpm -Uvh *.rpm Si vous avez un messages d’erreur, c’est probablement qu’un package autre que ceux cités plus haut, n’est pas installé. Si vous ne trouvez vraiment pas, faites le moi savoir. 8.3.1 Configuration d’APT4RPM Tapez dans une console : 1 wget -O /etc/apt/sources.list "http://ftp.gwdg.de/pub/linux/suse/apt/SuSE/X-i386/examples/sources.list.FTP" 2 http://www.novell.com/products/linuxprofessional/downloads/ftp/personal_iso_int.html 3 http://www.suse.com/us/private/download/ftp/live_eval_int.html 4 http://linux01.gwdg.de/apt4rpm 5 http://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.1-i386/RPMS.suser-rbos/ 6 http://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.1-i386/RPMS.update-prpm/ 8.4. INSTALLER LES PILOTES POUR SA CARTE VIDÉO 53 En remplaçant le X par le numéo de la version ( 9.1, 9.2, ...). Je vous conseille d’enlever "kernel of the day" de cette liste. Il n’est pas conseillé de le mettre, sinon lors d’une upgrade, vous risquez de changer de noyau. Il faudra le reconfigurer alors par la suite. Pour enlevez cette ligne, vous devez être aussi en root. vous pouvez par exemple utiliser "vi" : 1 # vi /etc/apt/sources.list Il vous faudra aussi modifier le fichier "gpg-checker.conf" : 1 # vi /etc/apt/apt.conf.d/gpg-checker.conf Modifiez la ligne "RPM : :GPG-Check true ;" par "RPM : :GPG-Check false ;" et enregistrez. La modification de cette ligne entraine le fait que vous acceptiez le fait d’installer un logiciel qui n’a pas été signé numériquement. Mais nous en avons besoin de cette modif pour installer la plupart des packages fournit par la liste. 8.3.2 Utilisation d’Apt et de Synaptic Voici les principales commandes d’apt : Pour mettre à jour la base de donnée d’apt : 1 # apt-get update Pour mettre à jour les packages installés : 1 # apt-get upgrade Pour installer un package : 1 # apt-get install nom-du-package Pour résoudre un problème de dépendance : 1 # apt-get -f install Pour mettre à jour la distribution vers une plus récente, ou pour des modifications plus profonde (Par exemple, XFree sera remplacé par Xorg) 7 1 # ap-get dist-upgrade Pour rechercher un package, une librairie : 1 # apt-cache search nom-du-package Pour Plus d’info : 1 2 # man apt # man apt-get Essayez un : 1 # apt-get install MPlayer xine-ui Pour avoir de quoi lire quelques DivX ou autres Et : 1 # apt-get upgrade Pour avoir le tout dernier KDE par exemple. Pour ceux dont la ligne de commande rébute, essayez synaptic : 1 # apt-get install synaptic il se trouvera ensuite dans "Bouton Démarrer" -> Système ->Plus de Programmes -> Synaptic 8.4 Installer les pilotes pour sa carte vidéo Je vais détailler ici comment installer les drivers propriétaires pour les cartes ATI et NVidia. L’installation est celle décrite par SuSE, et complétée si nécessaire par mes soins. 7 Note de tuXXX : D’après la doc de apt, dist-upgrade permet juste de mettre en ordre l’installation des paquets pour que les dépendances soient bien satisfaites, donc c’est pour toute modification un peu profonde ;) . 54 CHAPITRE 8. [TUTO][DEBUTANT] SUSE 8.4.1 ATI Récupération des fichiers Commencez par allez chercher les drivers sur le site de SuSE 8 Il s’agit des drivers 3.9.0. Lisez la doc "Readme" sur le site, même si je vais la redétailler ci-dessous. Installation des packages Installez le package fglrx*.rpm en tant que root : 1 # rpm -Uhv fglrx*.rpm Vérifiez que vous avez tous les autres éléments nécessaires pour réaliser une compilation du noyau (même si on en fait pas une réellement) Il vous faut les sources du noyau, make et gcc. Vérifiez avec Yast que tout est installé. Mettez les à jours si vous le désirez (avec YOU ou Apt4Rpm). Allez dans les sources du noyau et faites un cloneconfig : 1 2 3 4 # # # # cd /usr/src/linux rm .config make cloneconfig make prepare-all (pour les noyaux >= 2.6.5-7.75) Installez ensuite le km_fglrx*.rpm : 1 # rpm -Uhv km\_fglrx*.rpm Puis compilez les modules pour le noyau : 1 # cd /usr/src/kernel-modules/fglrx Ceci est hors documentation : Pour les noyaux 2.6.X, allez dans le répertoire /usr/src/kernel-modules/fglrx/2.6.x/, faites un make puis revenez en arrière : 1 2 3 1 2 3 # cd /usr/src/kernel-modules/fglrx/2.6.x/ # make # cd .. # KERNEL\_SOURCE=/usr/src/linux make modules # KERNEL\_SOURCE=/usr/src/linux make install # depmod -a Réglages des drivers Lancez ensuite SaX2 : 1 # sax2 -r -m 0=fglrx -b /usr/X11R6/lib/sax/profile/firegl Mise à part pour l’écran et la résolution graphique, ne touchez pas au pilote vidéo, et n’allez surtout pas enclencher l’accélération 3D (Sinon, il remplace le driver "fglrx" par "radeon"). N’oubliez pas de bien régler la souris et le clavier (en général, un clavier avec 105 touches Intel). Faites un test pour voir si tout va bien. Sinon, recommencez. Pour avoir l’accélération 3D, éditer le fichier /etc/X11/XF86Config et ajoutez le module DRI : dans la section "module", ajoutez : 1 Load "dri" Il suffit de l’écrire de la même façon que pour les autres lignes déjà présentes dans la section "module". Il ne reste plus qu’à rebooter la machine pour que les changements opérés par SaX2 soit appliqués, et surtout pour que le module "fglrx" soit chargés. Vous pourrez ouvrir le panneau de contrôle d’ATI : "ATI Control" se trouvant dans "démarrer" -> Système -> Configuration -> ATI Control Voilà, c’est fini pour les drivers ATI. C’est peut-être long, mais dans la pratique, cela prend entre 5 et 10 minutes avec le redémarrage. 8 ftp://ftp.suse.com/pub/suse/i386/supplementary/X/XFree86/ATI/suse91/fglrx/3.9.0/ 8.4. INSTALLER LES PILOTES POUR SA CARTE VIDÉO 8.4.2 55 Les drivers NVidia Vous avez plusieurs choix pour installer les drivers NVidia. Une simple, et une un peu plus compliqué n Méthode YOU Simple : – Vous lancez YOU – Vous sélectionner le driver NVidia – Vous acceptez la licence – Il s’installe – Vous redémarrez le serveur X, en vous délogguant par exemple. – Vous pouvez jouer n 8.4.3 Méthode Made-In-NVidia – Vous telechargez le derniers drivers sur cette page 9 (Partie "graphics drivers", et "linux ia32", si vous avez un proccesseur x86 32bit (AMD XP, PIV, Celeron, ...) ) – Vous vous connectez en tant que root sur une console, et vous tappez à l’endroit où vous avez téléchargé le driver : 1 # sh NVIDIA-Linux-x86-1.0-XXXX-pkg1.run – Vous suivez les consignes. – de retour sur la ligne de commande, vous lancez Sax2 : 1 # Sax2 -m 0=nvidia – Voilà c’est terminé ;) 9 http://www.nvidia.com/object/linux.html 56 CHAPITRE 8. [TUTO][DEBUTANT] SUSE Chapitre 9 [Tuto][Debutant] Fedora Par sc_net, mise à jour par tuXXX 9.1 Introduction La Fedora, comme quelques autres distributions, s’inscrit dans cette optique qui est de permettre à l’utilisateur de profiter rapidement, et au maximum de ses loisirs numériques. La Fedora apparue récemment, est en fait basé sur la RedHat, la société du même nom ayant décidé de séparer leurs activités ciblant les postes de travail d’une part et serveur d’autres part. Plus exactement, cette nouvelle approche permet à RedHat de se concentrer sur la partie commerciale (tournée vers les entreprises, notamment par rapport au support) tout en continuant à faire profiter de ses évolutions/innovations à la communauté du libre. Excepté quelques notions à connaître avant de se lancer, je pense par exemple à la gestion du partionnement, les débutants sous Linux ne devraient pas être trop pertubés, l’installation étant assez simple et suis une logique assez proche du système windows : on installe, on upgrade et on utilise... C’est ce cheminement que je vais essayer de suivre dans ce topic. N’oubliez pas que l’on n’obtient rien sans effort, il faut passer énormément de temps, faire, refaire et re-refaire encore la même chose pour bien maitriser le sujet ... J’espère que ce topic vous donnera l’envie d’aller plus loin, il y a énormément de choses intérressantes dans le monde Linux, il y a une grande diversité qui peut certe pertuber certain ( le fait qu’il y ait plusieurs applications qui font le même chose) mais avec un peu d’expérience, on s’y retrouve ... mais loin d’être un problème, cette diversitée est plutôt un avantage puisque chacun pourra choisir en fonction de ses goûts. 1 Quelques Liens utilisés ou pour débuter : – le site officiel 2 – le site francais 3 , vous trouverez un forum et énormément d’informations – parce que basé sur la RedHat, il y a des réponses ici 4 aussi 9.2 Prérequis La compatibilité de la Fedora est la même que n’importe quelle distribution linux, mais vous pouvez vous faire une idée des matériels compatibles sur le site de redhat 5 ou sur le wiki de fedora 6 (non maintenu car presque inutile). 9.2.1 Pré-requis Matériel pour un système graphique Il est conseillé d’avoir au minimum le système suivant : – Processeur 400MHz – 192 Mo de RAM – 2 Go de disque dur (5.3 Go pour une installation compète, mais c’est sans compter les données... Un espace de 6 à 10 Go est conseillé) 1 Merci pour son aide à MrTom 2 http://fedora.redhat.com 3 http://fedora-france.org 4 http://www.sysresccd.org/index.fr.php 5 http://hardware.redhat.com/hcl 6 http://fedoraproject.org/wiki/HCL 57 58 CHAPITRE 9. [TUTO][DEBUTANT] FEDORA 9.2.2 Avant d’installer Pensez à noter la configuration de votre carte réseau, une sauvegarde de vos documents les plus importants serait aussi une bonne idée, pas parce que cette installation est dangereuse, mais parce qu’on ne sait jamais ce qui peut se passer (d’ailleurs, même si vous n’installez pas Fedora ça serait une bonne idée ;)) 9.2.3 Obtenir la distribution La distribution est disponible en version 4 CDs ou 1 DVD 7 : Vous pouvez télécharger depuis le site officiel 8 . Choisissez la version à télécharger, puis l’architecture : x86(=i386), x86_64(=amd64) ou ppc, puis "iso" pour avoir accès aux images CDs. Ma version DVD n’est disponible que sur les mirroirs. La liste des miroirs 9 est disponible afin de sélectionner le serveur le plus près de chez vous, mais il est également possible de télécharger en utilisant Bittorrent 10 . Une fois le DVD ou les CDs télécharger, il est conseillé de vérifier qu’il n’y a pas eu d’erreur lors du téléchargement à l’aide d’une somme de contrôle. Fedora utilise l’algorithme MD5 (fedora core 1, 2, 3) ou SHA1. Pour vérifier, il suffit de télécharger l’exécutable approprié : md5sum 11 ou sha1sum 12 . Ensuite, mettre l’exécutable dans le même répertoire que les CDs/le DVD, et lancer depuis une invite de commande dans le bon dossier : 1 > sha1sum.exe *.iso (même opération avec md5sum dans le cas de MD5). Il suffit ensuite de comparer avec le fichier de référence qui se trouve sur le serveur : MD5SUM ou SHA1SUM, si les nombres correspondants aux fichiers sont identiques, tout va bien ! 9.3 Préparation et Partitionnement Le logiciel de partitionnement de Fedora (Disk Druid) ne permet pas de redimensionner les partitions existantes, il va donc falloir le faire avant de commencer l’installation, par exemple avec qtparted, inclus notamment dans SystemRescueCD, de la documentation en français est disponible sur leur site 13 . Vous pouvez laisser l’espace pour Fedora vide, les partitions seront créées lors de l’installation, manuellement ou automatiquement (au choix). 9.4 L’installation Etant donné que l’installation est relativement simple, je ne m’arreterai que sur les quelques points qui peuvent paraitre difficiles. C’est parti ... bootez avec le CD, vous allez arriver sur une une page d’acceuil avec une invite : 1 #boot : Attention : à ce moment là, le clavier est en qwerty, mais vous vous en rendrez compte rapidement... Mais vous pourrez choisir la langue et le clavier pendant l’installation. Commencez par regarder dans les différentes pages d’information avec les touches fonction F1 à F5. Vous verrez que l’on peut spécifier plusieurs options pour l’installation. Les plus intéressantes sont : text si vous rencontrez des problemes d’affichage lors de l’nstallation askmethod permet de choisir plus options pour l’installation, par exemple le média d’installation : cdrom, ftp, ... noprobe indique à l’installateur de ne pas détecter le matériel 9.5 Quelques conseils pratiques – Avec un linux, en tout cas pour les distribs les plus connus, vous disposez par défaut de 7 consoles ( 6 en mode texte, la 7eme graphique) qui peuvent être ouvertes en même temps... Pour switcher de l’un à autre utiliser les touches : <ctrl> + <alt> + <les touches fonction de F1 à F7> NB : la première console graphique est toujours <ctrl> + <alt> + <F7> 7 Vous ne pourrez pas télécharger le version DVD de 4.1 Go depuis un navigateur classique, il vous faudra utiliser un logiciel de téléchargement dédié, wget (http://www.gnu.org/software/wget/wget.html)) par exemple 8 http://download.fedora.redhat.com/pub/fedora/linux/core/ 9 http://fedora.redhat.com/download/mirrors.html 10 http://torrent.dulug.duke.edu/ 11 ftp://ftp.gnupg.org/gcrypt/binary/md5sum-w32.zip, à décompresser pour obtenir md5sum.exe 12 ftp://ftp.gnupg.org/gcrypt/binary/sha1sum.exe 13 http://www.sysresccd.org/manual.fr.php 9.6. L’UPGRADE ET LA GESTION DES PAQUETAGES/APPLICATIONS 59 – Quand vous ouvrez une session, toujours utiliser un compte utilisateur. Vous pouvez toujours vous connecter en root depuis un terminal en utilisant "su -" : pour ouvrir un terminal "Outils de système/Terminal". – Il faut absolument respecter la casse !... par exemple, un fichier toto.txt ne sera pas le même que ToTo.txt ... faites attention. – Pour chaque commande, vous pouvez consulter son manuel avec la commande man. Dans un terminal, tapez "man nom_de_la_commande". Exemple : man rpm pour le manuel concerant RPM. 9.6 L’Upgrade et la gestion des paquetages/applications Maintenant que nous avons notre distrib de fonctionnelle, vous pouvez vous logger avec le compte utilisateur précédemment créé. Le premier reflex est de mettre à jour : – pour l’évolution des logiciels – pour les corrections de bugs – pour les failles de sécurité 9.6.1 Les outils à ne pas utiliser Il s’agit de : – "Red Hat Network" ou RHN, que l’on trouve dans le menu "RedHat/Outils de système" ou sinon il y a une ’îcone à coter de l’horloge. – "Ajouter/Supprimer des applications", que l’on trouve dans le menu "RedHat/paramètre de système" Ces outils ne sont pas très souples, le choix des applications ou des serveurs sont limités ... (en comparaison avec le YAST online de SuSE par exemple). De plus, il semblerait qu’il y ait des soucis de stabilité avec l’assistant Ajout//supprimer des applications ... Il y a heureusement d’autres solutions 9.6.2 Les outils préconisés Commencont par le plus connu : rpm - RedHat Package Manager Il s’agit d’un outils créé par Redhat, dailleurs il en porte le nom, et qui été utilisé dans d’autres distributions comme Mandrake ou Suse. Avant RPM, il fallait disposer des fichiers d’installation, générer un fichier de config et procéder à l’install ( ./configure, make puis make install). Le problème étant que l’on n’avait pas de moyen simple de visualiser les paquetages que l’on a installer, ni surtout de savoir quels sont les fichiers que l’on a généré et où ils ont été copiés. RPM résoud ces problèmes. Un paquet rpm se présente sous la forme : nom_du_paquetage.arch.rpm. "arch" définissant le type de processeur que vous utilisez : i386, i586 ou i686 pour des processeurs x86, par exemple athlon ou pentium, x86_64 pour les athlon64 et autres Pentium 64bits, noarch si commun pour toutes les architectures. Pour installer un paquet, il suffit de taper : 1 $ rpm -ivh nom_du_paquetage.arch.rpm – i = install – v = verbose - renvoi un code d’erreur à la fin – h = affiche la barre de progression pour mettre à jour : 1 $ rpm -Uvh nom_du_paquetage.arch.rpm U = update Pour désinstaller : 1 $ rpm rpm -e nom_du_paquetage Pour lister tous les paquetages installés : 1 $ rpm qa Pour chercher si le paquetage "paquet" est installé : 1 $ rpm qa |grep paquet 60 CHAPITRE 9. [TUTO][DEBUTANT] FEDORA Le problème avec RPM, c’est qu’il traite paquetage par paquetage, et qu’il peut y avoir des problèmes de dépendances ... il est difficile de l’utiliser pour mettre à jour sa Fedora... Mais l’avantage, c’est que lorsqu’on ne dispose pas d’une connexion internet, on peut télécharger les rpm à partir d’un autre PC, puis les copier sur un CD pour les installer. yum - Yellowdog Updater Modified yum est l’outil de gestion des paquetages de Fedora, il permet de gérer les rpm : il recense tous les paquetages disponibles (par internet) et permet de mettre à jour/installer/désinstaller des logiciels facilement, notamment en gérant les dépendances. C’est un outil en ligne de commande, vous pouvez trouver plus d’information sur le site fedorafaq 14 ou fedora-france 15 apt - l’installateur venu de Debian Il s’agit du gestionnaire de paquets de debian. Comme yum, il nécessite d’avoir une connexion internet. Un tuto 16 sur fedora-france permet d’apprendre à l’installer et à s’en servir. 9.7 L’environnement graphique Petite explication du mode graphique : Pour avoir son bureau sous Linux, il faut compter 3 étapes, ou plutôt 3 modules : un serveur X, un gestionnaire de fenêtre et un environnement de bureau. – le serveur X : c’est lui qui "prépare" le matériel (carte mère+carte vidéo) et qui permet d’afficher les fenêtres ... – le gestionnaire de fenêtre : gère le placement des fenêtres et les interactions entre l’utilisateur et les applications, et détermine la fenêtre active et les raccourcis clavier. – l’environnement du bureau : fourni le "design" du bureau, et un ensemble d’outils permettant la gestion de celui-ci et l’utilisation courante ( comme un panneau de contrôle, un gestionnaire de fichier, et quelques applications comme unun éditeur de text, entre autres)... Les gestionnaires de fenêtre et environnement de bureaux sont souvent regroupés dans la même catégorie, puisque leur fonctions sont similaire, la gestion va seulement plus ou moins loin. Les plus connus sont KDE, Gnome, xfce, mais il existe aussi d’autres moins connus, tels que fluxbox, icewm et bien d’autres ! En fait, je vous conseille d’utiliser les environnements de bureau qui sont fourni avec la Fedora (GNOME ou KDE). Il faut déjà avoir un certain niveau pour pouvoir installer/choisir/tester par la suite son gestionnaire de fenêtre et son environnement de bureau. 14 http://www.fedorafaq.org/#installsoftware 15 http://www.fedora-france.org/modules/wfsection/article.php?articleid=121 16 http://www.fedora-france.org/modules/wfsection/article.php?articleid=30 Chapitre 10 [Tuto][Initié] Topic officiel debian Par Sentinel, -rem- 10.1 Présentation Il existe bien des distributions linux aujourd’hui et il est parfois difficile pour l’utilisateur de faire un choix. Tester par soi même est sans doute la meilleure solution, puisque une question de distribution, c’est avant tout une question de goût. Cependant, ce n’est pas toujours evident car il faut du temps pour découvrir une distribution, la comprendre, et lire par conséquent beaucoup de tutoriels, voire de livres. Nous allons tenter de faire un résumé ici de ce qu’est la distribution debian, pourquoi elle représente un choix intéressant mais aussi comment s’en servir, de manière assez basique mais suffisante pour la plupart des utilisateurs. Choisir debian, c’est avant tout choisir une distribution robuste, existante depuis de nombreuses années et surtout fiable. Les maîtres mots de debian sont sure, securise et stable. Ce n’est pas la distribution la plus facile à manipuler, toutefois elle dispose d’outils puissants et des packages configurés par défaut sont mis à disposition par l’equipe debian pour faciliter la tâche des administrateurs nouveaux. Car sous debian, on fait souvent les réglages soit même, c’est ce qui fait la puissance de cette distribution. Nous verrons aussi que debian offre 3 choix possibles de ses distributions, selon la qualité demandée par l’utilisateur. Merci de l’attention que vous portez a cet article et à la distribution debian ! Welcome to the real world ! 10.2 Description de la distribution 10.2.1 Présentation Par -remDebian est une distribution, c’est-à-dire un système d’exploitation composé d’un noyau (souvent linux, mais aussi Hurd ou Mach), et d’un ensemble d’applications et d’utilitaires (projet GNU) compressés sous forme de packages. Ce qui nous interesse plus particulièrment ici, c’est le noyau Linux, et lorsque l’on utilise debian avec un noyau linux on peut alors qualifier debian de "distribution GNU/Linux". Debian est developpée et maintenue uniquement par des bénévoles (environ 9000 personnes à travers le monde). Il n’existe donc pas de version commerciale de debian (pas de packs comme Red hat Pro ou Mandrake, commercialisés avec une assistance par exemple). Debian se décline en 3 versions : stable, testing et unstable. Historiquement, toutes portent des noms de personnages de "Toy Story", et actuellement on a : – stable : sarge – testing : etch – unstable : sid Les deux premières changent de noms lorsqu’une nouvelle version sort (quand elle sera suffisamment robuste, la etch deviendra la nouvelle "stable"). En revanche, la version unstable s’appelle toujours "Sid", car dans "Toy Story", Sid est le gamin des voisins qui casse toujours les jouets (et donc, éventuellement votre machine si vous l’utilisez). La version stable comporte des packages assez anciens par rapport aux distributions courantes, mais ces packets ont été testés pendant un minimum de 6 mois par des spécialistes afin d’en corriger toutes les failles. La "stable" est donc bien plus sécurisée et stable qu’une autre distribution (les "xBSD" n’etant pas des distributions linux), et convient de ce fait parfaitement à une installation sur des serveurs de production. 61 62 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN La testing comporte des packets assez récents mais considérés comme suffisamment stables, datant de 10 jours environ à 6 mois. Cela constitue donc une version intermédiaire, avec des packets plutôt récents donnant ainsi accès à des logiciels en version récente. Enfin, la "Sid" est à réserver aux connaisseurs, car parfois dangereuse (rappelez-vous le gamin des voisins ;). Lorsqu’un développeur soumet un packet, celui-ci est directement mis en "Sid" pour être testé. Les developpeurs debian utilisent généralement cette version, mais il faut être sûr de soi et bien maîtriser Debian/Linux afin de ne pas être perdu si une fonction ne marche momentanément plus. Si vous lisez ce manuel dans le but d’apprendre quelque chose sur debian, vous n’êtes pas le public visé par "Sid". Pour résumer : – stable -> très sûre mais assez ancienne, pour serveur – testing -> bon compromis, packets assez récents, pour station de travail/jeux/bureautique... – unstable -> utilisateurs expérimentés, pour développeurs La distribution debian est donc polyvalente, elle offre plusieurs solutions selon l’utilisation à laquelle on la destine. Notons une variante de Debian, qui est la distribution Knoppix. C’est un live-cd (vous pouvez booter knoppix sur le cd et la ram sans l’installer sur le disque dur, idéal pour se faire une première idée sans danger) qui detecte la plupart de votre matériel et le configure, et propose beaucoup de programmes par defaut... Mais on est alors très loin de la politique debian qui est avant tout l’efficacité, et l’installation uniquement de ce dont on a besoin. Une Knoppix fait 2Go, une debian moins de 500Mo avec un window manager et un noyau recent, et encore beaucoup moins sans mode graphique. 10.2.2 Avantages Par -remAvantages de chaque version Je vais tenter de rester objectif mais les avantages de debian sont nombreux : – Pour une stable, elle est excessivement stable, securisée. – Pour une testing, elle est dans la moyenne au niveau des packets. – Pour une unstable, elle est excessivement récente. Rapidité, légèreté La distribution debian est très rapide et peu gourmande en mémoire car légere. On peut réussir par exemple à faire booter une station de travail sous X (l’interface graphique) en environ 10-12 secondes, pour 25Mo de Ram utilisée. On peut faire booter un serveur complet ( Apache, php, sshd, mysqld etc..) en 15 à 20 secondes avec environ 10Mo de ram utilisée (sans X par contre). Contrairement à beaucoup de distributions dites "conviviales", Debian vise l’efficacité et la rapidité, et sur ce point elle est proche de la Gentoo et de la Slackware. Polyvalence Debian peut s’installer sur 11 architecture différentes, du palm au supercalculateur, en passant par les pc 64 bits, les macs et autres... Cette flexibilité est insurpassée. La merveilleuse gestion des packages Cela sera expliqué en détail plus loin, mais debian gère extrêmement bien les packages, grâce au programme "apt". D’autres distributions telles que Red Hat ont récemment adapté ce système tant il est pratique. Il gère toutes les interdépendances, et vous n’avez jamais de problèmes parce qu’il vous manque tel ou tel paquet. Lorsque vous demandez à installer un logiciel, apt vous informe que celui-ci dépend de tel et tel autre package, et vous installe et configure automatiquement tout le nécessaire. Encore plus fort, une commande suffit pour mettre à jour le système entier (sauf le noyau bien sûr), sans que vous ayez quoi que ce soit à faire. C’est diaboliquement efficace. En effectuant cette opération une fois par semaine ou par mois, on est sûr d’avoir une distribution récente, au goût du jour. 10.2.3 Inconvénients Par -remBien que cela puisse paraître etrange, ce n’est pas si dur que ca de trouver des defauts a la distribution debian. 10.3. INSTALLATION DU SYSTÈME 63 Défauts des versions – La "stable" est souvent dépassee en matière de packets, elle évolue lentement dans ses versions, donc elle est peu utilisable ailleurs que sur un serveur ou une passerelle/routeur. – La "unstable" (sid) est au contraire très loin d’etre dépassée : il n’existe pas de distribtion plus à jour qu’une "Sid", pour la simple raison qu’elle est constituée des packages les plus récemment soumis par les développeurs. Cela peut toutefois présentee un sérieux problème car les fuites de mémoire, failles de sécurité et autres n’ont pas encore été trouvées et corrigées. De plus, il peut y avoir des conflits entre packets. License stricte Debian est très stricte sur sa license, par rapport à certaines autres distribtions. Seuls les logiciels totalement libres sont admis, "totalement libre signifiant" que vous pouvez faire tout ce qui vous passe par la tete avec, et cela ne signifie pas seulement diffuser gratuitement les sources ! Des logiciels bien connus tels que les pilotes nVidia ou les outils Java sont soumis à des licences plus restrictives, et ne sont donc pas fournis dans la distribution (mais évidemment il est toujours possible de les installer par la suite !). Non user-friendly La distribution debian privilégie sans compromis l’efficacité à la facilité d’utilisation. Autant la gestion des packets est aisée, autant d’autres parties sont plus délicates. Il faudra obligatoirement en passer par la ligne de commandes, au moins au début pour installer tout le système, puis le mode graphique, puis... De plus, la politique est de désactiver par défaut les fonctionnalites non-vitales, de manière à laisser l’utilisateur les activer et les configurer par la suite s’il le juge utile. Conclusion Par Sentinel Au final, la Debian est une distribution particulièrement robuste et très "pure", dans le sens où l’utilisateur a le contrôle total du système : aucun "assistant" ne vient modifier les fichiers de configuration dans son dos (c’est d’ailleurs un des aspects qui font qu’il est infiniment plus simple de mettre à jour une Debian qu’une Mandriva par exemple). Ces deux aspects en font donc la distribution idéale pour : – les serveurs – les utilisateurs avertis appréciant totale liberté et le contrôle précis offerts par cette distribution – les fanatiques du 200% libre – mais aussi les esprits curieux qui souhaitent découvrir ou redécouvrir linux en comprenant exactement comment cela fonctionne, sur une distrib’ à la fois puissante et, tout compte fait, pas trop difficile d’accès. Pour finir, il faut rappeler que, quelle que soit la distribution choisie (mandrake, debian, gentoo...), il est possible de faire strictement la même chose : bureautique, internet, développement, jeux... La différence se situe uniquement au niveau de la façon dont le système s’installe, des programmes livrés par défaut avec, et de la façon de configurer le système (avec des assistants sous mandrake, en éditant les fichiers de configuration à la main sous debian). 10.3 Installation du système par Sentinel 10.3.1 Téléchargement des CD Les images ISO des CD sont nommées en fonction de : – la version de Debian qu’elles contiennent (actuellement la dernière est la 3.1, appelée "sarge") – la plate-forme matérielle prise en charge (i386, Alpha, IA64, etc.). Si vous avez un PC, prenez la version i386. Liste des miroirs 1 10.3.2 Guides d’installation – Guide d’installation officiel 2 – Guide d’installation du système (et bien plus) 3 (Par Alexis de Lattre) – Manuel d’installation pas à pas, pour débutants 4 (Par Sentinel) 1 http://www.debian.org/CD/http-ftp/ 2 http://www.debian.org/releases/stable/i386/install.fr.html 3 http://people.via.ecp.fr/∼alexis/formation-linux/formation-linux.html 4 http://www.pcinpact.com/forum/index.php?showtopic=5826 64 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN 10.4 Gestion des packages 10.4.1 apt Apt est un systeme de gestion avancée de packages ( Advanced Packaging Tool ). Il est très puissant et est utilise le système de manipulation de base de gestion des packets debian, à savoir dpkg. On peut diviser apt en 3 grands outils : – apt-cache – apt-get – apt-cdrom apt-cache apt-cache permet d’effectuer des recherches sur des packages, cela est bien pratique lorsque l’on recherche une application répondant à un but bien précis. Par exemple, si on veut rechercher un logiciel pour lire les dvd, on peut essayer apt-cache search dvd. 1 2 3 4 5 6 7 8 9 10 rem@Pai-mei:~$ apt-cache search dvd ... mozilla-plugin-vlc - multimedia plugin for Mozilla based on VLC nautilus-cd-burner - CD Burning front-end for Nautilus ogle - DVD player with support for DVD menus ogle-gui - User interface to ogle (Gtk) ogle-mmx - DVD player with support for DVD menus ogmtools - Tools for manipulating Ogg multimedia streams okle - DVD player for KDE ... On voit que liste est longue, en appliquant un filtre avec grep, on peut visionner les descriptions courtes contenant le mot player, afin d’afficher les lecteurs de dvd ( software bien entendu ; ) : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 rem@Pai-mei:~$ apt-cache search dvd | grep player gxine - the xine video player, GTK user interface libxine-dev - the xine video player library, development packages libxine1 - the xine video/media player library, binary files ogle - DVD player with support for DVD menus ogle-mmx - DVD player with support for DVD menus okle - DVD player for KDE totem - A simple media player for the Gnome desktop (dummy package) totem-gstreamer - A simple media player for the Gnome desktop based on gstreamer totem-xine - A simple media player for the Gnome desktop based on xine vlc - multimedia player for all audio and video formats xine-ui - the xine video player, user interface xmms-xmmplayer - XMMS plugin that uses MPlayer to play video files xmovie - A nice player for uncompressed Quicktime, MPEG streams and more. rem@Pai-mei:~$ Maintenant que l’on en a choisit un, va demander une description plus détaillée grâce apt-cache sho : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 rem@Pai-mei:~$ apt-cache show xine-ui Package: xine-ui Priority: optional Section: graphics Installed-Size: 3080 Maintainer: Siggi Langauf <[email protected]> Architecture: i386 Version: 0.99.1-1 Depends: libc6 (>= 2.3.2.ds1-4), libcurl2 (>= 7.11.1-1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libreadline4 (>= 4.3-1), libsm6 | xlibs (>> 4.1.0), libssl0.9.7, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxine1 (>= 1-rc3a), libxtst6 | xlibs (>> 4.1.0), libxv1, zlib1g (>= 1:1.2.1) Recommends: aalib1 (>= 1.2), slang1 (>> 1.4.4-7.1) Filename: pool/main/x/xine-ui/xine-ui\_0.99.1-1\_i386.deb Size: 1512290 MD5sum: bb0fec067417368dd2bb0e7423f637ea Description: the xine video player, user interface This is an X11 based GUI for the libxine video player library. 10.4. GESTION DES PACKAGES 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 65 It provides xine, a skin based media player that can play all the audio/video formats that libxine supports. Currently, this includes MPEG1/2, some AVI and Quicktime files, some network streaming methods and disc based media (VCD, SVCD, DVD). A more complete list can be found on http://xine.sf.net/. . This package contains an additional front end, aaxine, which runs even on the console. aaxine uses aalib to render ASCII art video, or you can tell it to use a framebuffer device. This is more a proof of concept, but you can use it to watch DVDs on your old vt100 terminal, of course.;-) . Most DVDs on the market today are play-protected by the Content Scrambling System (CSS). Xine does not provide any code to descramble those DVDs, because of legal uncertainties. Have a look at /usr/share/doc/xine-ui/README.Debian for more information! rem@Pai-mei:~$ Voilà en gros la description de xine, ses dépendances etc... Ce qu’il faut retenir : – apt-cache search nom pour une recherche d’une application relative a "nom" – apt-cache show nom montre une description détaillée du package "nom" apt-get apt-get permet de manipuler les packages, i.e. : de les installer ou de les déinstaller. Dans un premier temps, il faut mettre à jour sa liste de package : 1 $ apt-get update Ensuite, on peut installer un package grâce à la commande apt-get install nom du package... Par exemple, pour installer xine-ui, on peut faire : 1 $ apt-get install xine-ui On voit ensuite que apt nous informe des dependances requises et de la taille supplémentaire qui va être occupée sur le disque etc... Maintenant que nous savons installer un packet, nous allons voir comment le désinstaller, cela se fait avec apt-get toujours, mais avec l’option remove : 1 $ apt-get remove <nom\_du\_package> Lorsque l’on veut désinstaller un package et que l’on veut supprimer ses fichiers de configuration avec, il est nécessaire de rajouter l’option –purge : 1 $ apt-get remove --purge <nom\_du\_package> Personnellement, j’ai facilement tendance à utiliser l’option –purge. Pour mettre le système a jour, on peut faire : 1 $ apt-get upgrade Mais cela ne met parfois pas tout le système à jour, lorsque des dépendances nécessitent des mises a jour d’autres dépendances, etc, ce qui peut produire un echec de mise a jour parfois. Pour cascader toutes les dépendances et mettre ainsi le système à jour, nous pouvons utiliser ceci : 1 $ apt-get dist-upgrade Cela effectue une mise à jour complète du système. Par contre, cela a l’inconvenient de télécharger beaucoup de packages, puisque beaucoup seront mis à jour. apt-cdrom Je n’utilise que très rarement cette commande, elle permet d’ajouter a la liste des mirroirs de packages le cdrom contenu dans le lecteur cd, ou de le supprimer : 1 $ apt-cdrom add 66 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN Purge du cache apt Il est de temps en temps nécessaire de purger les .deb qui sont stockés dans /var/cache/apt. Pour cela, 2 commandes : 1 $ apt-get clean Cette commande permet de supprimer tous les packages contenus dans le cache. En cas de reconfiguration d’un logiciel, il faudra re-télécharger des fichiers sur un des mirroirs. Notons que cette commande est à utiliser que lorsque l’on est bien conscient de ce que l’on fait ! 1 $ apt-get autoclean Cette commande ne supprime que les packages ( .deb ) contenus dans le cache et qui ne sont plus installés sur la machine. Cela correspond bien souvent aux anciennes versions qui ont été mises à jour, ou aux versions supprimées. Preferences Un des fichiers de configuration important est /etc/apt/preferences. Ce fichier est utile lorsque l’on prend des packages dans plusieurs mirroirs différents et surtout provenant de versions de debian différentes ( stable, testing, ou unstable ). Cela permet de donner une priorité quand à l’origine des packets. voici un Exemple que l’on peut retrouver sur le guide debian : 1 2 3 4 5 6 7 8 9 10 11 Package: * Pin: release a=stable Pin-Priority: 500 Package: * Pin: release a=testing Pin-Priority: 600 Package: * Pin: release a=unstable Pin-Priority: 50 Ici on voit clairement que la priorité est donnée aux packages testing, légèrement suivi par la stable, et qu’en dernier recours, loin derrière, il y a la unstable ( ! ) ! Mais personnellement, je vous donnerais le conseil suivant : – Soit vous utilisez debian sur un serveur, et dans ce cas, utilisez une stable et unqiuement des packets stable. – Soit vous utilisez debian sur un poste standard, et dans ce cas, utilisez une testing et quasiment que des packets testing. Adresses mirroirs, sources.list C’est dans ce fichier ( /etc/apt/sources.list ) que l’on indique au gestionnaire APT ou aller chercher ses packages. Si vous avez le net, vous pouvez éditer ce fichier et y ajouter des adresses de mirroir de packages debian, mais pas trop, choississez vous un bon mirroir et restez y fidèle. Si vous n’avez pas internet mais que vous avez les cd debian gravés, utilisez apt-cdrom add pour le remplir automatiquement. Voici un exemple de mirroir debian pour une testing : 1 deb http://ftp.fr.debian.org/debian testing main contrib non-free 10.5 Compilation d’un noyau à mode Debian 10.5.1 Noyau telechargé sur www.kernel.org ou patché Debian 10.5.2 Se procurer les sources Noyau linux pur Une adresse, http ://www.kernel.org 5 Vous trouverez dessus tous les noyaux linux, recents, moins recents, de toutes les generations, ainsi que leurs patchs de securite. Personnellement, je telecharge mes noyaux depuis ce site et apres je les recompile. 6 Apres avoir telecharger un noyau linux, de type .tar.bz2, placez le dans /usr/src : 5 http://www.kernel.org 6 J’utilise de moins en moins cette facon car les noyaux patché debian apportent quelques interets supplémenetaires et sont aussi plus faciles a recompiler ( pas de pb de "kernel stamp image" ). 10.5. COMPILATION D’UN NOYAU À MODE DEBIAN 1 2 3 67 $ mv linux-2.<version>.tar.bz2 /usr/src $ cd /usr/src/ $ tar jxf linux-2.<version>.tar.bz2 Notons qu’en general, quitte a recompiler un noyau, autant prendre la derniere version stable disponible. Sur un noyau, les 3 chiffres ont une signification, le premier designe la generation de linux ( 2 ), le second sa version ( 2, 4, ou 6 ) et enfin le dernier son evolution. Le 2.6.6 est en fait la 6e evolution de la version 6 de Linux 2. Eviter les versions avec un chiffre central impaire, ce sont des noyaux instables en developpement pour le futur noyau stable a venir. Ainsi, lorsqu’on commencera a developper un noyau 2.8, bien avant qu’il ne sorte, beaucoup de noyaux 2.7.x seront disponibles, mais pas acheves, ni stables. Pour experts seulement donc. Noyau correspondant a la distribution La plupart des distributions proposent des packages de noyaux linux, ce qui est plus facile pour l’utilisateur lambda a manipuler. Cela permet aussi d’appliquer des patchs ou des parametrages propre a la distribtion. Un package de noyau linux pour debian comporte un noyau qui differera en beaucoup de points par rapport a une version pour Mandrake par exemple, les deux distributions etants differentes. Pour debian, vous devriez donc etre en mesure de trouver un noyau grace a : 1 $ apt-cache search kernel-source Puis d’installer une version qui vous interesse : 1 $ apt-get install <kernel-source-noyau> Personnellement je n’utilise pas cette methode et prefere un noyau linux pur pour parametrer moi meme des le debut ce qui m’interesse. De plus, si je decide d’employer une autre distribution linux, cela ne me changera pas car j’utiliserai toujours un noyau linux pur. Je trouve cela plus propre et plus optimise, mais ce n’est peut etre pas la voie la plus simple. 7 10.5.3 Recompilation du noyau Tout se fait en mode console dans cette partie. Packages necessaires Vous devez avoir les packages suivant installés : – gcc – kernel-package – libncurses5-dev – module-init-tools ( pour 2.6 uniquement ) – binutils – modutils Si vous ne savez pas si ces packages sont installés, taper ceci : 1 2 3 4 5 $ $ $ $ $ which gcc dpkg -l | dpkg -l | dpkg -l | dpkg -l | grep grep grep grep kernel-package libncurses5 binutils module-init-tools (dpkg -l permet de lister tous les packages installés sur debian, et le grep filtre pour retenir que ce qui nous intéresse) 10.5.4 Configuration Creez un lien symbolique vers les entetes du noyau dans l’optique d’installer un driver par la suite : 1 2 $ rm /usr/src/linux $ ln -s /usr/src/linux-2.<version> /usr/src/linux Placez vous dans le repertoire contenant le noyau : 1 $ cd /usr/src/linux 7 J’ai un peu plus tendance a utiliser cette methode sur des postes de travail classiques, et je recommande fortement cette méthode pour tous les non-experts en recompilation de noyau. 68 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN On est maintenant pret a configurer le noyau, vous pourrez vous deplacer avec les fleches haut, bas, valider avec espace ( ou entree ) et alt+tab fonctionne aussi. La plupart du temps, 3 choix sont possibles : built-in, module, ou rien. built-in : pilote integre directement au noyau, necessaire pour les trucs de base, genre le controleur de disque dur ou est installe le systeme... module : integration normale d’un pilote ou d’une fonctionnalite, cela permet par exemple de charger le pilote de la carte son, ou video, clef usb... rien : ben c’est pas charge, on a pas ce peripherique ! Notez que vous devez connaitre parfaitement le type de materiel que vous avez, pour specifier ce que vous avez. Vous pouvez toutefois dans le doute activer le support de plusieurs peripheriques mais il se peut qu’il y ait des conflits et que la compilation du noyau echoue. Lancez l’interface de configuration du noyau en tapant : 1 $ make menuconfig Une fois que vous avez choisit ce qui vous interesse, quittez et sauvez ( echap ). 10.5.5 Compilation Maintenant, nous allons compiler notre noyau : 1 $ make-kpkg --revision=1.0 kernel-image Si vous rencontrez des erreurs au demarrages avec un message parlant de initrd, rebooter sous l’ancien nouyau, placer vous a nouveau dans le repertoire des sources du noyau et ajouter une option supplementaire : 1 $ make-kpkg --initrd --revision=1.0 kernel-image Cela signifie qu’on demande a creer un package debian (.deb ) du noyau (kernel-image), dont la version est 1.0. Normallement, si tout se deroule bien, un package devrait etre cree dans le repertoire parent, ".." . Faites un ls .. pour verifier ! 10.5.6 1 Installation du nouveau noyau dpkg --install ../kernel-image...<version-du-noyau>.deb On vous demande confirmation, confirmer, on vous demande si on modifie l’amorceur ( lilo ou grub ), repondez oui. Rebootez et decouvrez si cela fonctionne ! Il se peut que vous ayez un "kernel panic" lors du premier boot sur le nouveau noyau, reboote et selectionnez "linux old". Vous avez selectionne un mauvais peripherique dans votre configuration du noyau, recommencez donc a l’etape 3.2 a partir de make "menuconfig". 10.5.7 Erreurs possibles – Si gcc et votre systeme est vraiment trop ancien, il se peut que vous n’arriviez pas a recompiler un noyau. – Si vous avez specifie trop de peripheriques ou certains qui sont en conflit, la compilation du noyau du noyau peut echouer. La plupart du temps sur debian ca se produit vers la fin de la compilation, lorsqu’il veut placer l’image temporaire du noyau qu’il a fait dans un repertoire definitif, il n’y arrive pas car l’image est inexsitante, logique, la compilation a echouee. Ca parle de "real stamp image", a confirmer pour le message exact d’erreur. – Kernel panic. Bon la y a plusieurs possibilites, mais en general, c’est que l’amorceur est mal configurer sur le noyau, ou alors vous avez specifie des peripheriques que vous n’avez pas et il cherche a les charger quand meme, cela m’est arrive une fois pour une carte reseau. Je m’etais trompe de modele dans le noyau, ben j’avais un beau kernel panic au boot. En cas de kernel panic, pas de panique ! ;) lire le dernier message affiche juste avant, le probleme vient certainement de la si on a reussi a booter le noyau. Par contre, si on a pas reussi du tout a le booter, regarder de plus pres l’amorceur ( grub ou lilo ). Cela peut etre instructif aussi de consulter le fichier de log systeme, en rebootant sur un ancien noyau bien entendu : 1 $ vi /var/log/syslog pour debian, mais sur les autres distribs il existe aussi , le nom differe un peu parfois. 8 8 /var/log/messages notamment 10.6. INSTALLATION DES PILOTES GRAPHIQUES 10.5.8 69 Remarques sur les noyaux Votre configuration est sauvee dans un fichier nomme .config a la racine des sources du noyau, il peut etre judicieux de copier ce fichier en vu d’une future compil d’un noyau proche. Par exemple, aujourd’hui je suis en 2.6.6, quand le 2.6.7 sortira je recopierai mon .config dans le repertoire du 2.6.7 comme ca la configuration sera en grande partie deja faite ! ;) Les noyaux sont stockes dans "/boot" sous la forme "vmlinuz-<version>". Debian configure lilo pour utiliser des pointeurs a la base du systeme ( "/" ), du style : 1 2 vmlinuz -> /boot/vmlinuz-<version noyau actuel> vmlinuz.old -> /boot/vmlinuz-<version ancien noyau> A chaque fois que vous installez un nouveau noyau, ces pointeurs sont deplaces, le nouveau devient l’ancien, le futur nouveau pointera vers le noyau que vous avez nouvellement installe. 10.6 Installation des pilotes graphiques 10.6.1 cartes ATI Par Sentinel Je vais expliquer dans ce post comment on installe les drivers ATi sur une Debian. Alors... Je vais supposer que vous avez un système fonctionnel, avec le mode graphique qui fonctionne (au moins avec un pilote par défaut genre vesa) et un browser internet à portée de la main. La plupart des manipulations décrites ci-dessous se font dans une console de commandes, donc quand je vous dis "allez dans le répertoire machin", ce n’est pas avec Konqueror, mais bien dans la console, on et d’accord ? Il est également indispensable d’effectuer la majorité de ces actions en tant que super-utilisateur (root), donc autant passer root dès le début, ça ira plus vite : ouvrz une console de commande et tapez "su", puis entrez le mot de passe du super-utilisateur. Maintenant, ne fermez plus cette console, on va s’en servir tout le temps :D Allez c’est parti ! Installation des sources du noyau Premièrement on va déterminer quelle version du noyau est en train de tourner sur votre machine, et installer les sources correspondantes : Pour déterminer la version du noyau : 1 $ uname -r Installation des sources correspondantes : 1 apt-get install kernel-source-XXXXX (par exemple si votre noyau est le 2.4.24 : "apt-get install kernel-source-2.4.24") Détermination de la version de Xfree86 et récupération du bon driver Il faut maintenant connaître la version du serveur X. Pour cela, on va tout simplement demander au gestionnaire de packages : 1 dpkg -l | grep xserver-xfree86 Dans la ligne renvoyée, il devrait y avoir marqué quelque part 4.1, 4.2 ou 4.3. Notez bien ce numéro. Maintenant, direction le site ATi pour récupérer le driver correpondant : http ://www.ati.com 9 En haut de l’écran il y a un bandeau, cliquez sur "Drivers & Software", puis dans les listes déroulantes choisissez "Linux", puis la version de votre carte graphique. On arrive à une page proposant le téléchargement des drivers pour Xfree86 4.1.0, 4.2.0 ou 4.3.0. Téléchargez celui qui correpond à la version déterminée au paragraphe précédent. Conversion et installation du driver Nos amis de chez ATI n’ont visiblement pas pensé à nous autres pauvres utilisateurs de Debian, car leur driver est au format RPM. Bon, pas de problème, on va le convertir dans un format plus sympathique pour notre distro préférée. Pour cela, nous allons utiliser l’utilitaire alien, que nous installons comme ceci : 1 $ apt-get install alien 9 http://www.ati.com 70 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN Allez dans le répertoire contenant le driver en RPM, puis convertissez le RPM : 1 $ alien "nom du package du driver ATi" (par exemple : "alien fglrx-4.1.0-3.7.6.i386.rpm") Cela créera dans le répertoire un package .deb portant presque le même nom, que nous allons installer immédiatement : 1 $ dpkg -i --force-overwrite "nom du package .deb" (par exemple : "dpkg -i –force-overwrite fglrx_4.1.0-3.7.6_i386.deb") Voilà, les sources du driver sont installées ; maintenant il va falloir compiler quelques trucs. Compilation du driver Pas de panique c’est simple : on va rendre deux scripts exécutables, et les lancer. Rien de sorcier. Allez dans /lib/modules/fglrx/build_mod : 1 $ cd /lib/modules/fglrx/build_mod Rendez le script "make.sh" exécutable, puis exécutez-le : 1 2 $ chmod +x ./make.sh $ ./make.sh On descend d’un répertoire, et on fait la même chose : 1 2 3 $ cd .. $ chmod +x ./make_install.sh $ ./make_install Voilà, normalement tout est installé. Il ne reste plus qu’à configurer le driver. Configuration du driver A partir de maintenant, tous les réglages doivent être effectués à l’aide du programme fglrxconfig. Lancez-le : 1 $ fglrxconfig Et répondez aux questions posées, qui sont à peu de chose près les mêmes auxquelles vous avez répondu lors de l’installation du serveur X : configuration du clavier, device de la souris (/dev/psaux pour les souris PS/2), etc. Sachez que les choix par défaut sont généralement très bien, donc si vous bloquez sur une question, appuyez simplement sur Entrée pour utiliser le réglage par défaut. A la fin, autorisez le programme à écrire le fichier XF86Config-4 pour sauvegarder votre config. Pour finir... Il ne reste plus qu’à relancer le mode graphique. Pour cela, déloguez-vous, puis appuyez simultanément sur ControlAlt-Backspace pour tuer le serveur X. Normalement il se relance tout seul et la nouvelle configuration est active :) Sur les Desktops récents (versions récentes de KDE et Gnome), un utilitaire permet de changer directement la résolution, comme sous windows. Sinon, les bonnes vieilles combinaisons Control-Alt-+ et Control-Alt– devraient fonctionner. Voilà, maintenant vous êtes prêts à jouer à Unreal tournament, Neverwinter Night, Quake, Enemy Territory ou Tux racer ! 10.6.2 Cartes nVidia Par -remPrérequis – Le script d’install bien sûr (lien ci-dessus) – Vous devez posséder les sources du noyau courant. De plus, il faut absolument avoir un lien symbolique "/usr/src/linux" qui pointe vers les sources du noyau. Par exemple si les sources du noyau se trouvent dans le répertoire "/usr/src/linux-2.6.6", vous devrez créer un lien grâce à la commande suivante : "ln -s /usr/src/linux-2.6.6 /usr/src/linux". – Le lien symbolique "/usr/bin/gcc" doit pointer vers le compilateur ayant servi à la compilation du noyau courant. Si par exemple votre noyau a été compilé avec gcc 3.2, vous devrez créer ou vérifier la présence d’un lien /usr/bin/gcc qui pointe vers gcc 3.2 : "ln -s /usr/bin/gcc-3.2 /usr/bin/gcc". Normalement, sur une installation fraîche de debian, tout est déjà en place et les versions correspondent. 10.7. RÉSEAU 71 Installation Apres avoir téléchargé le fichier contenant les pilotes Nvidia 10 , lancez-le à l’aide de sh : 1 $ sh <nom du fichier telecharge> Une interface graphique se lance et vous pose un certain nombre de questions : – License : vous devez accepter les termes de la license (differents de la philosophie debian ) pour pouvoir installer ces pilotes nvidia. – packages sur le ftp de nvidia : le script vous informe qu’il n’a pas de package ( version précompilée) des drivers correspondant à votre configuration, et vous demande si vous voulez aller en chercher sur le ftp de Nvidia. Répondez non, on va compiler les drivers (rassurez vous le script le fera tout seul). – Il est possible que le script vous informe que votre version de gcc est peut-être differente de celle utilisée pour compiler le noyau. Il vous proposera alors de stopper l’installation. En général, vous pouvez répondre non, l’installation peut se dérouler correctement. – Normalement, si tout se passe bien, 2 barres de progression défilent. Je n’ai jamais eu le temps de les lire (c’est ca d’avoir une grosse config... ;) mais je suppose que la premiere correspond à la compilation ("make") du pilote et la seconde à son installation ("make install"). Typiquement, si vous n’avez pas un lien "/usr/src/linux" qui pointe vers les sources du noyau, à la fin de la premiere barre de progression, un message vous avertira de ce probleme, en vous signalant que l’installation a echoué (installation failed). Sinon, à la fin de la seconde barre de progression, vous devriez voir apparaître un message vous disant que l’installation s’est bien deroulée (successful). – Pensez enfin à modifier votre fichier de configuration graphique, généralement nommé "/etc/X11/XF86Config-4". 10.7 Réseau Le réseau est un aspect très intéressant de l’informatique, et il est souvent pratique, voire indispensable de faire communiquer des machines entre elles... Nous allons donc voir ici comment configurer ses périphériques réseau sous debian, afin de profiter des capacités réseau de linux. 10.7.1 Configuration de la carte réseau Configuration bas niveau Cette méthode vaut pour le noyau linux, et fonctionne donc avec absolument toutes les distributions utilisant un noyau GNU/Linux. Toutefois, sous debian, la méthode dite de haut niveau est recommandée. On entend par configuration bas niveau du réseau sous linux l’utilisation des commandes de base linux, soit ifconfig et route. Pour commencer, voyons voir ce qu’il y a comme carte réseau connectées sur la machine, grâce à la commande ifconfig : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Pai-mei:/home/rem# ifconfig -a eth0 Link encap:Ethernet HWaddr 00:0E:A6:7E:AE:78 inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2238 errors:0 dropped:0 overruns:0 frame:0 TX packets:2462 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1485688 (1.4 MiB) TX bytes:454884 (444.2 KiB) Interrupt:17 Memory:e4000000-0 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:38 errors:0 dropped:0 overruns:0 frame:0 TX packets:38 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2636 (2.5 KiB) TX bytes:2636 (2.5 KiB) On constate ici qu’il y a 2 interfaces, eth0 et lo. lo est le loopback, c’est une interface virtuelle qui sert lorsque la machine veut se parler à elle même, mais cela depasse le cadre de ce tutoriel, qui se veut simple, laissons donc de cote lo. eth0 représente par contre la carte réseau qui est reliée au réseau, et elle a pour adresse ip 192.168.1.1, ce qui correspond a une adresse d’un réseau privé. On peut noter aussi l’adresse de broadcast, qui est la meme mais terminée par 255 et 10 http://www.nvidia.com/object/unix.html 72 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN le masque qui est 255.255.255.0 . Cela veut dire que cette carte réseau "voit" les machines du réseau ayant une adresse ip commencant par les 3 memes valeurs, cela est du aux 3 "255". On dit que ce réseau est le 192.168.1.0/255.255.255.0 ou encore 192.168.1.0/24 ( car les 24 premiers bits valent 1 ). Par exemple ; une machine du reseau ayant pour adresse 192.168.2.1 ne sera pas visible, sauf avec un masque 16 ( 255.255.0.0) ! Il faut donc choisir un masque adapté à ce que l’on veut faire. Pour définir une adresse ip 192.168.1.1 avec un masque 255.255.255.0sur une interface réesau ( eth0 par exemple ) il suffit de taper : 1 $ ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up On peut ensuite vérifier que cette adresse a bien été prise en compte, en tapant a nouveau ifconfig -a ! On peut désactiver une interface réseau avec ifconfig en rajoutant l’option "down" : 1 ifconfig eth0 down Après avoir configuré l’interface réseau, il restera le routage à faire. Notons toutefois que cette méthode modifie directement la configuration d’une interface, mais qu’il faudra ajouter cette commande sous forme de script à lancer au démarrage pour que ces valeurs soient conservées. Configuration haut niveau Debian met a disposition de l’administrateur système/réseau de la machine une méthode simple et fiable pour configurer les interfaces réseau. Cela se fait dans un fichier, /etc/network/interfaces : 1 2 3 4 5 6 7 8 9 10 11 12 13 rem@Pai-mei:~$ cat /etc/network/interfaces # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface auto lo eth0 iface lo inet loopback # The local network card iface eth0 inet static address 192.168.1.1 netmask 255.255.255.0 gateway 192.168.1.254 On voit ici que l’on a les deux interfaces réseau renseignées, lo et eth0. L’avantage c’est que debian charge automatiquement ces informations au démarrage, sans que vous ayez à modifier la procédure de démarrage avec un script supplémentaire. Pour activer une carte, il faut utiliser la commande "ifup" : 1 $ ifup eth0 Et pour en désactiver une, pour modifier sa configuration par exemple, dans /etc/network/interfaces, il suffit de faire "ifdown" : 1 $ ifdown eth0 10.7.2 Noms réseaux et routage Noms réseaux On retient plus facilement les noms que les suites de chiffres, pour cela, les adresses ip sont converties en nom, c’est ce que l’on fait avec les serveur DNS par exemple. Eh bien, les machines du réseau local peuvent aussi être associées à des noms, c’est le fichier /etc/hosts : 1 2 3 4 5 Pai-mei:/home/rem# cat /etc/hosts 127.0.0.1 Pai-mei localhost 192.168.1.1 Pai-mei 192.168.1.254 sephiroth ... Ainsi, lorsque l’on effectue une requete réseau sur "sephiroth", le nom est directement associé à l’adresse ip correspondante... pratique n’est ce pas ? Pour ce qui est des serveurs DNS justement, c’est dans /etc/nameserver que ca se passe : 10.7. RÉSEAU 1 2 3 73 Pai-mei:/home/rem\# cat /etc/resolv.conf nameserver 213.228.0.23 nameserver 212.27.32.176 Routage Le routage est la base du réseau. C’est lui qui permet d’envoyer les informations au bon endroit, de savoir par quelle périphérique réseau passer pour atteindre une destination. Ainsi, il faut spécifier poru chaque réseau de destination un chemin, une "route" pour y accéder. En général, on asocie une route par interface réseau, et une par défaut. On peut jouer sur les masque pour afficher des routes regroupant un nombre plus ou moins important de destination... Pour consulter la table de routage, "netstat -ar" ou "route" sont équivalents pour l’utilisateur. Exemple de route : 1 2 3 4 5 6 Pai-mei:/home/rem# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 192.168.2.0 * 255.255.255.0 U 0 0 0 eth1 default sephiroth 0.0.0.0 UG 0 0 0 eth0 Ici, on dit en fait que les packets a destination d’une adresse 192.168.1.x passent par l’interface eth0 ; ceux à destination d’une adresse 192.168.2.x passent par eth1, et que toutes les autres destinations seront traitées par par la passerelle par defaut, que l’on atteindra avec eth0. Le nom sephiroth concerne l’adresse ip 192.168.1.254 qui est une passerelle de ce réesau privé. Pour ajouter ou supprimer une route, la commande route est notre amie. exemple, ajouter une route ayant comme propriétés : – réseau 192.168.9.0/24 – passerelle 192.168.9.254 – interface réseau concernée eth3 1 $ route add -net 192.168.9.0 netmask 255.255.255.0 gw 192.168.9.254 dev eth3 Pour la supprimer : 1 $ route del -net 192.168.9.0 dev eth3 10.7.3 Nat et partage de connexion Internet Nat singinife Network Adress Translation. Cela est utilsé en fait lors d’un partage de connexion à internet. comme nous l’avons vu précédemment dans la section routages, certaines adresses ip sont dites publiques et d’autres privées. Les adresses privées ne sont pas routées sur Internet. Pour faire simple, disons que les requetes que vous envoyez sur le web contiennent la commande ou les informations attendues, mais aussi la source, et la destination. En effet, c’est comme la poste, vous lvoulez envoyez un message a quelqu"un, il faut en plus du message l’adresse de la personne a qui vous l’envoyez, et votre adresse pour que la personne puisse vous répondre. On va donc dire, pour faire simple que vous envoyez un paquet dans ce style : 1 2 3 +------------+-----------------+------+---------------| @ip source | @ip destination | .... | données... +------------+-----------------+------+---------------- Lorsque vous envoyez un paquet depuis la machine physiquement connectée a Internet, cela se deroule bien, car l’adresse ip source des paquets emis est l’adresse de la machine sur Internet. Cela se complique un peu, lorsqu’un machine du lan veut faire la meme chose, car l’adresse ip source de la machine du lan est une adresse privée, et au premier routeur rencontré, le paquet sera jeté. Il faut donc pour cela faire une translation d’adresse, c’est a dire la machine par laquelle on accede a Internet va remplacer l’adresse ip de la machine du lan par l’adresse publique, et alors tout sera réglé. Il faudra juste par la suite que la machine partageant la connexion dresse une sorte de tableau de correspondance pour se souvenir qui a emis quoi. Le NAT est donc indispensable pour partager une connexion Internet. Pour l’activer simplement sous linux, il suffit de faire un petit script, nat.sh par exemple, et d’y mettre : 1 2 3 4 5 # Activer le NAT ( dit Masquerading ) iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE # Activer la redirection d’IP echo 1 > /proc/sys/net/ipv4/ip\_forward 74 CHAPITRE 10. [TUTO][INITIÉ] TOPIC OFFICIEL DEBIAN Il faut ensuite insérer le module ip_tables pour pouvoir faire cela, puis lancer le script : 1 2 root@ma-machine# modprobe ip_tables root@ma-machine# sh nat.sh toutefois, je vous conseille plutot de réaliser un vrai firewall a base d’iptables avec des regles un peu plus strictes, car dans cet exemple, toutes les machines du lan peuvent faire ce qu’elles veulent sur internet. 10.7.4 Protocole ssh2/sftp SSH signifie Secure Shell, c’est un outil qui permet de se connecter sur une machine distante, en toute sécurité pour y effectuer des opérations comme si on était derrière le clavier de cette machine distante. C’est très puissant, et contrairement à Telnet, les données sont crptées avec SSL, et cela permet ainsi une grande sécurité. De meme ; l’identification de l’utilisateur est bien plus stricte, et permet de faire des choses bien plus puissantes. Vous l’avez compris, Telnet est obsolète, et cède sa place aujourd’hui à SSH. Ce dernier permet aussi de faire un export de la couche graphique de la machine cible en locale, c’est a dire que vous pouvez lancer par exemple mozilla sur une machine distante, il s’executera et occupera les ressources sur la machine distante, mais le résultat sera affiché en local. En général, ssh est installé par défaut sur une debian, et à l’installation, on pouvait meme choisir de ne tolérer que ssh2, ce qui est une excellente solution niveau sécurité. Personnellement, je le recommande. Si toutefois ssh n’était pas opérationnel, vérifiez s’il n’est pas lancé, tout simplement avec /etc/init.d/sshd start. Si vous ne possedez pas de fichier /etc/init.d/sshd, il vous faudra l’installer. Dans ce cas, apt-cache search ssh et ensuite apt-get install devraient pouvoir vous aider. Pour la configuration et les commandes de base, je vous conseillerais 2 liens, tres utiles, autant les citer plutot que de les réécrire betement : – Tutoriel simple Léa 11 – Man page ( ici en jolie version html) 12 Notons juste la commande de base pour se connecter en ssh : 1 $ ssh <user>@<machine_cible> Enfin, avec SSH2, sftp est fourni. Pour utilister sftp, c’est plutot simple, cela est comparable à un ftp mais autorisant les connexions cryptées, donc sécurisées. Les commandes sont sensiblement les meme que ftp, et la syntaxe pour se logguer est la suivante : 1 $ sftp <user>@<machine\_cible> Notons que le user est un nom d’utilisateur de la machine_cible, et il aura les droits sur cette machine qu’il a en local, cela lui permet le transfert de fichier. Contrairement a ftp, sftp requiert donc que les clients aient un compte en local, toutefois, ce compte se restreindre aux simples droits de transferts et de sftp. 11 http://lea-linux.org/reseau/ssh.html 12 http://www.die.net/doc/linux/man/man1/ssh.1.html Chapitre 11 [Tuto][Initié] Topic officiel gentoo Par tuXXX 11.1 Qu’est-ce que Gentoo ? Mhhhh.... par ou commencer ... Ah, oui ! Gentoo tout d’abord est le nom d’un petit pingouin rapide ... Et ce nom n’a pas été choisi par hasard, comme vous le verrez par le suite ;-) Comme toute distribution, il y a une "philosophie". Ici, le principe est de TOUT recompiler ! Pas seulement le noyau, mais aussi tous les programmes . Vous allez me dire "Mais pourquoi recompiler ? En plus, c’est long ! !". Les avantages sont multiple : Tout d’abord, ça permet d’optimiser les programmes tournant sur le système afin qu’il correspondent le plus possible à la configuration, et notamment pour le processeur. Et ensuite, cela permet d’avoir constamment les dernières versions de tous les logiciels, puisque la première chose que font les développeurs est de patcher les sources. Mon but est pour l’instant de faire découvrir cette distribution à ceux qui veulent en savoir un peu plus ... mais aussi de guider les débutants afin de pouvoir rapidement maitriser les différents outils mis à leur disposition . 11.1.1 – – – – – Indispensable ! ! ! Le site officiel 1 : bourré d’infos, de tutos, etc ... allez-y absolument si vous êtes intéressés ... La doc en français 2 La doc en anglais 3 (y’a pas toujours tout de traduit en français) Le forum 4 : plein de choses, y’a même une partie "French" Localisation de Gentoo en français 5 : tout pour mettre en français votre gentoo ! 11.2 L’installation des logiciels Gentoo utilise son propre système pour installer/désinstaller des logiciels : il s’agit de portage Il permet d’automatiquement télécharger les sources du programme, de les décompresser, de faire toutes les manips pour l’installer dans un environnement protégé : l’installation ne touche pas au système, puis copie les fichiers utiles dans les dossiers "qui vont bien" et fait ensuite le ménage (suppressions de toutes les sources et fichiers générés pendant la compilation notamment)... Il gère évidemment les dépendances, la gestion stable/instable très poussée, les différentes options des logiciels, et quelques autres trucs sympa :) 11.2.1 les "USE flags" Ces flags sont utilisés pour définir les différentes options des logiciels : par exemple le support de X, ou bien du son alsa, etc... en fonction du logiciel... Il existe également les flags "mmx, 3dnow, sse", etc... Ce paramètre est à modifier dans le fichier /etc/make.conf, vous trouverez plus d’info sur le site officiel 6 1 http://www.gentoo.org 2 http://www.gentoo.org/doc/fr/index.xml 3 http://www.gentoo.org/doc/en/index.xml 4 http://forums.gentoo.org/ 5 http://forums.gentoo.org/viewtopic.php?t=118061 6 http://www.gentoo.org/doc/fr/handbook/handbook-x86.xml?part=2\&chap=2 75 76 CHAPITRE 11. [TUTO][INITIÉ] TOPIC OFFICIEL GENTOO 11.2.2 Comment installer réellement un logiciel ? Pour cela, il faut utiliser la commande "emerge", suivie du nom du logiciel à installer, par exemple, pour installer xchat : 1 $ emerge xchat ...par contre, en faisant ça, vous ne savez pas tout ce que vous allez installer comme dépendances ! Il est donc conseillé d’utiliser l’option "–pretend" (ou -p) afin de voir la liste des logiciels qui vont être installés en même temps ... et je vous consille aussi d’utiliser l’option "–verbose" (-v) afin de voir les options qui sont activées (dans la variable "USE") afin de pouvoir en enlever si ils vous obligent à installer un logiciel que vous ne voulez pas ... au final, vous devriez faire 1 $ emerge -pv xchat Pour ensuite installer réellement ... avec 1 $ emerge xchat ou : 1 $ emerge -av xchat ...rendez-vous un peu plus loin pour plus de précisions... 11.3 Le noyau Le noyau aussi est évidemment compilé... Vous pouvez évidemment tout faire à la main, mais il existe même pour cela un logiciel spécial qui aide à la compilation et à l’installation : genkernel Même si dans le manuel ils conseillent de faire à la main, je pense qu’il est préférable d’utiliser genkernel, cela permet notamment de ne s’occuper que de la configuration. Il y a plusieurs noyaux disponibles, en général ce sont des patches qui sont appliqués au noyau officiel afin d’améliorer certaines choses ou d’ajouter des possibilités (reiserfs 4 par exemple). Voici quelques exemples dans une liste non-exhaustive : – vanilla-sources : sources officielles (noyau 2.6) – gentoo-sources : noyaux patché afin d’améliorer notamment la rapidité du noyau – hardened-sources : noyaux patché pour un usage serveur (au niveau de la sécurité et de la stabilité notamment) ...pour une liste plus complète et détaillée je vous conseille d’aller voir sur le site officiel, encore une fois 7 Tous ces noyaux sont facilement compilés et installés grâce à genkernel : il suffit d’installer les sources du noyau : 1 $ emerge gentoo-dev-sources (pour télécharger et décompresser les sources ...) puis éventuellement : 1 $ rm -f /usr/src/linux \&\& ln -s /usr/src/linux-x.y.z /usr/src/linux 1 $ emerge genkernel (pour avoir genkernel) ...et enfin 1 $ genkernel --menuconfig all L’option "–menuconfig" permet de configurer votre noyau ("make menuconfig"). Elle est indispensable ! ...qui va : – mettre quelques options indispensables – lancer le "make menuconfig" – compiler le noyau – compiler les modules – installer les modules – créer l’initrd – copier le noyau et l’initrd dans /boot 15 minutes plus tard (ça dépend bien sur de votre processeur) vous vous retrouvez donc avec un noyau dans /boot (/boot/kernel-[version]), mais aussi d’un initrd (/boot/initrd-[version]) et évidemment des modules (dans /lib/modules/[version]) ... Il ne vous reste plus qu’à configurer grub ou lilo, et c’est bon ! ! ! 7 http://www.gentoo.org/doc/fr/gentoo-kernel.xml 11.4. INSTALLATION 11.3.1 77 hotplug/coldplug J’en profite brièvement pour parler de hotplug et coldplug, qui sont indispensable ! ! ! Coldplug permet de détecter automatiquement le matériel au démarrage (cartes réseau, etc...) et de charger les modules correspondant (entre autres). Cela permet le remplacement ou l’installation sans problème d’à peu près n’importe quel matériel très facilement. Il est couplé avec "hotplug" qui permet de détecter le matérial lors des branchements à chaud (clé usb par exemple). 1 2 3 $ emerge hotplug coldplug $ rc-update add coldplug boot $ rc-update add hotplug default 11.4 Installation Je ne vais pas trop m’attarder sur l’installation en elle-même, qui est très bien expliquée sur le site officiel, et même en français : Documantation Gentoo Linux 8 Version imprimable 9 11.4.1 Les "stages" Pour installer gentoo, on a le choix entre stage 1,2 ou 3 ... – stage1 : compilation et installation de TOUS les programmes, notamment gcc et glibc ... cela permet une configuration totale de tous les paramètes et une très bonne optimisation du système. – stage2 : gcc et glibc sont déjà compilés, il est alors moins facile de reconfigurer ceux-ci ... il reste à compiler tous les utilitaires de base : ls, cp, mount, etc ... – stage3 : toute la base du système est déjà compilée, c’est donc très rapide à installer, mais cela implique une beaucoup moins bonne configuration des optimisations ... mais les stage3 sont compilés pour une architechture spécifique (athlonxp, pentium4 ...) et les optimisations sont donc normalement déjà mises de sorte que vous n’ayez plus rien à faire... Le "stage2" n’est plus utilisé car il ne prends pas beacoup plus de temps que le "stage1" tout en empêchant pas mal de choses ... Il reste donc le choix entre "stage1" et "stage3", l’un pour une configuration optimale du système, l’autre pour avoir un apercu de la distribution ... Je voudrais quand même signaler qu’il est possible d’installer gentoo depuis n’import quel linux, que ce soit d’une autre distribution que d’un live CD, knoppix par exemple ... Il y a pour cela un howto : ICI 10 , regardez à la section 3 ... Cela permet de na pas rester en console pendant les heures que peuvent durer une installation "stage1" 11.5 Utilisation avancée de portage Portage est capable de plein de choses en plus que l’installation/désinstallation basique des logiciels ... Dans sa dernière version, il a inauguré quelques mécanismaes bien sympatiques : Il est maintenant possible de gérer les "USE flags" logiciel par logiciel, ainsi que les logiciels stable/instable, etc... Tous ceci se trouve dans /etc/portage/package.[use, keywords, unmask] Par exemple, si vous essayer d’installer un logiciel quelconque (disons mozilla...) mais que la compilation se passe mal (ne marche pas, quoi), ou bien que le logiciel bugge, ou bien tout simplement que vous savez que une nouvelle version est sortie et quelle est merveilleuse ... Vous regardez la version que vous vouliez installer ... 1 2 $ emerge -p mozilla net-www/mozilla-1.6-r1 et vous demandez à portage d’installer uns version plus récente 1 $ emerge -p \>mozilla-1.6-r1 ( > désigne en fait le signe ">", mais puisqu’il est utilisé sous linux, il faut dire que c’est vraiment un signe supérieur et pas une redirection) ...puisque auparavant il voulait déjà installer le dernière version stable, vous souhaitez dons une version instable, que l’on désigne par l’apellation "tildarch" (" x86", " arm", etc...) normalement, vous devriez avoir un truc du genre 1 2 3 !!! all ebuilds that could satisfy ">mozilla-1.6-r1" have been masked. !!! possible candidates are: - net-www/mozilla-1.7\_rc1 (masked by: package.mask, ~keyword)... 8 http://www.gentoo.org/doc/fr/handbook/handbook-x86.xml?part=1 9 http://www.gentoo.org/doc/fr/handbook/handbook-x86.xml?style=printable\&full=1 10 http://www.gentoo.org/doc/en/altinstall.xml 78 CHAPITRE 11. [TUTO][INITIÉ] TOPIC OFFICIEL GENTOO ... il faut donc passer ce logiciel en instable (" keyword") ... et puisque vous êtes sur x86, ce sera " x86" ! Il faut donc rajouter mozilla à la liste dans /etc/portage/package.keywords, en utilisant son nom complet et ajouter derrière le keyword voulu : 1 $ echo "net-www/mozilla ~x86" >> /etc/portage/package.keywords (vous pouvez bien sur le faire avec vi si vous préférez ...) ...vous vous aprecevez alors que c’est maintenant un masque qu’il y a dessus : 1 2 3 !!! all ebuilds that could satisfy ">mozilla-1.6-r1" have been masked. !!! possible candidates are: - net-www/mozilla-1.7\_rc1 (masked by: package.mask)... donc ... 1 $ echo "net-www/mozilla" >> /etc/portage/package.unmask (attention, ceci n’est à faire que à vos risques et périls, car un mask n’est pas posé n’importe comment, il y a toujours une bonne raison... en général, cela veut dire que cette version du logiciel est encore moins stable que tildarch ! !, en tout cas n’a pas été testée/est en développement ...) Il vous est normalement possible maintenant d’installer ce logiciel ... L’exemple de mozilla est ici extrème, car il est très rare qu’un logiciel soit ainsi masqué ... en général, passer le logiciel en tildarch suffit ... Il existe la même chose pour les "USE flags" : si, par exemple, vous souhaitez enlever le support pour X dans mplayer (mais seulement dans mplayer...) il suffit de faire : 1 $ echo "media-video/mplayer -X" >> /etc/portage/package.use 11.5.1 Si vous voulez libérer de la place... – /usr/portage/distfiles portage télécharge toutes les sources compressées dans /usr/portage/distfiles (si vous n’avez pas reconfiguré cela dans le make.conf) ... Il peut donc contenir des Go de données... Donc si vous voulez gagner de la place, vous pouvez les enlever. Par exemple, il contient peut-être les sources complète du noyau 2.6.4 ET 2.6.6 (linux-2.6.4.tar.bz2 et linux2.6.6.tar.bz2) ... si vous ne voulez plus installer que des noyaux > 2.6.6, vous pouvez enlever l’autre ... et gagner quelques centaines de Mo ! – emerge –clean et emerge –prune Il est possible d’utiliser emerge avec une de ces options pour éliminer les logiciels inutile de votre système... (man emerge pour plus d’infos ;) ) à utiliser avec –pretend ou –ask pour éviter des ravages ! 11.5.2 Quelques précisions il est aussi possible de modifier les keywords pour une version précise d’un package : 1 $ echo "=nvidia-kernel-1.0.6106 ~x86">>/etc/portage/package.keywords ...Mais au fait, tous ces manipulations avec les "»" sont bien dangereuses ! ! ! Si on oublie et que l’on tape ">" à la place, tout le fichier va être effacé et remplacé par un nouveau...Ce qui peut être très embêtant si il y a plein de choses dedans... Mais il y a une solution ! ! ! (tiré de la Gentoo Weekly Newsletter) : Il suffit d’ajouter "set -o noclobber" au fichier de de démarrage du shell (.bashrc pour bash...) Et vu que ces modifications ne sont faites qu’en root, c’est surtout en root qu’il faut le mettre ... Donc rajouter "set -o noclobber" à "/root/.bashrc" ... Cela permet d’empêcher un écrasement du fichier à l’aide de ">" : 1 2 $ echo "=nvidia-kernel-1.0.6106 ~x86" > package.keywords bash: package.keywords: cannot overwrite existing file ...mais il est toujours possible de forcer en utilisant ">|" ! ! ! 1 $ echo "=nvidia-kernel-1.0.6106 ~x86" >| package.keywords 11.6. METTRE À JOUR VOTRE DISTRIBUTION ! 11.6 79 Mettre à jour votre distribution ! Gentoo n’est pas une distribution "versionnée", elle évolue continuellement au fil du temps. Mais pour faire cela, il faut mettre à jour l’arbre de portage, celui-ci contenant la totalité des applications installables, ainsi que leurs versions... Pour garder votre système à jour, il faut exécuter la commande suivante : 1 $ emerge --sync Ensuite, il y a plusieurs moyens pour mettre à jour le système, notamment d’utiliser les mots-clé "world" et "system" : 1 $ emerge world (à tester avant avec "-pv" ...) Il y a ensuite des possibilités en utilisant les différentes options de emerge...mais le principe est là ;) Pour faire une mise à jour en profondeur, le mieux est d’utiliser "emerge -pvuD world". Si cela est fait régulièrement, la quantité de logiciels à installer est minime (et donc rapide ;)) 11.7 Le guide des CFLAGS Dans votre fichier /etc/make.conf, vous avez une option CFLAGS=... Ce paramètre permet de compiler les programmes pour votre processeur, normalement, il vaut mieux le faire au début d’une install "stage1" mais on peut modifier ce paramètre n’importa quand ... Il n’agira par contre que pour les programmes qui seront compilés par la suite... – -mcpu=***/-mtune=*** : permet d’optimiser pour un processeur tout en maintenant la compatibilité 686 (ou 486 en fonction de CHOST ...) (-mcpu : gcc <3.4, -mtune : gcc >=3.4) – -march=*** : permet d’optimiser pour un processeur au détriment de la compatibilité avec une autre architecture de processeur ... athlonXP : -march/cpu/tune = athlon-xp pentium4 : -march/cpu/tune = pentium4 Quelques exemples de CFLAGS 11 Implication des flags -march et -O 12 –> En annexe : gcc flags – -Ox : permet entre autre de "dérouler" plus ou moins les boucles afin d’économiser des tests, l’inconvénient étant d’augmenter le temps de chargement du programme et de ne pas le faire tenir en cache CPU, mais ça agit aussi sur d’autres paramètes... (par exemple un for(i=0 ;i<10 ;i++)instruction sera décomposé en 10 lignes et économisera 10 tests ...) -O : pas d’optimisations -O1 : quasiment aucune optimisations, à n’utiliser qu’en cas de problèmes visiblement dus à la compilation -O2 : pas mal d’options activés, mais le code sortant reste quand même assez petit -O3 : développe juste plus les boucle, ce qui augmente trop la taille des exécutables à mon goût -OX, X>3 : équivalent à -O3 sur gcc ... Je vous conseille personnellement d’utiliser -O2 ... mais rien ne vous empêche de tester tout ça vous-même ... – -pipe : permet d’utiliser le "pipe" UNIX pour passer les fichiers dans gcc (cc, ld, etc...) sans passer par le disque dur ... économise beacoup de temps, à mettre ABSOLUMENT ! Je ne saurais vous conseiller de rester calme sur le paramètre CFLAG ... pas comme ICI 13 (AthlonXP 2000+ :reflechis : ) 11.8 Le prelink Le prelink permet de stocker dans les exécutables les adresses des différentes librairies que ce programme utilise ... Cela peut permettre des gains de 50% sur certaines grosses applications ... Il faut pour cela utiliser le programme "prelink" : 1 $ emerge prelink ensuite, éditer le fichier "/etc/prelink.conf" pour exclure le répertoire /opt qui contient des programmes qui ne doivent pas être prélinkés : [QUOTE=/etc/prelink.conf]PRELINK_PATH_MASK="/opt"[/QUOTE] ...ensuite, il suffit d’exécuter : 1 $ prelink -afmR – -a : Tous les binaires sont passés à prelink – -f : Oblige prelink à traiter les binaires déjà traités. (si les librairies ont changé) 11 http://www.freehackers.org/gentoo/gccflags/flag_gcc3.html 12 http://www.freehackers.org/gentoo/gccflags/faq.html 13 http://www.freehackers.org/gentoo/gccflags/flag_gcc3opt.html 80 CHAPITRE 11. [TUTO][INITIÉ] TOPIC OFFICIEL GENTOO – -m : Conserve l’espace de mémoire virtuelle, nécessaire si vous avez beaucoup de bibliothèques qui ont besoin d’être traitées. – -R : Rend aléatoire (« random ») l’ordre d’adressage, ceci afin d’améliorer la sécurité contre les dépassements de capacité (« buffer overflows »). Opération à faire de temps en temps. Par exemple l’exécuter dans cron, une fois par semaine : 1 1 $ crontab -e * * 0 * * prelink -afmR Le prelink permet aussi d’accélérer le démarrage de kde en évitant à celui-ci de démarrer "kdeinit". Pour cela, il suffit juste d’éditer le fichier /etc/env.d/99kde-env et de mettre KDE_IS_PRELINKED="true" une fois le prelink fini. Source : la doc de gentoo (oui, encore) 14 ... si vous avez des problèmes, référez-y vous ... 11.9 Installation des drivers nVIDIA à faire en root...évidemment ;) Tout d’abord, il faut accepter le x86 de la dernère version des packetages... 1 2 3 $ echo "media-video/nvidia-kernel ~x86">>/etc/portage/package.keywords $ echo "media-video/nvidia-glx ~x86">>/etc/portage/package.keywords $ echo "media-video/nvidia-settings ~x86">>/etc/portage/package.keywords ça va installer le module pour le noyau courant, donc il faut veiller à ce que le lien symbolique soit bon : 1 2 $ rm /usr/src/linux $ ln -s /usr/src/linux-‘uname -r‘ /usr/src/linux ->ensuite, on vérifie (versions qui vont être installées notamment) puis on installe : 1 2 $ emerge -p nvidia-kernel nvidia-glx nvidia-settings $ emerge nvidia-kernel nvidia-glx nvidia-settings (éventuellement exécuter "opengl-update nvidia" comme ils le disent, bien qu’il soit exécuté automatiquement) puis on met au démarrage le chargement du module ( dans /etc/modules.autoload.d/kernel-2.6... rajouter "nvidia" ) et on le charge pour l’utiliser tout de suite : 1 $ modprobe nvidia Puis modification du fichier de config : ouvrez /etc/X11/XF86Config(-4) et changez "nv" en "nvidia" (si vous êtes sous X.org, modifiez le xorg.conf à la place ;)) Et enfin on peut relancer X et voir si ça marche (mais si, ça va marcher :D) : 1 $ /etc/init.d/xdm restart voilà, à vous les joies de Quake3, UT2004 ... Et comme je disais, il y a maintenant "nvidia-settings" qui permet de modifier des paramètres (anti-aliasings, aniso, etc...) et même de voir la température du GPU ! 11.10 Installation des drivers ATI Bon, je suis "obligé" de parler des drivers ATI :D De la même façon que les drivers nvidia, il vaut mieux démasquer les dernières versions afin d’éviter les problèmes... attention cependant, il est possible qu’ils soient en "-*" au lieu de " x86" Comme pour les drivers nvidia, il faut bien faire attention au lien symbolique /usr/src/linux Installer les drivers... 1 2 $ emerge ati-drivers $ opengl-update ati ici, le "opengl-update ati" est opbligatoire car il n’est pas exécuté automatiquement ! Exécuter la configuration (qui au passage va remplacer le fichier de config du serveur X) 1 $ fglrx-config 14 http://www.gentoo.org/doc/fr/prelink-howto.xml 11.11. DES PROBLÈMES PENDANT L’INSTALLATION D’UN LOGICIEL ? 81 Et comme dit Sandeman "pis voilà :)" (c’est à dire "charger le module et relancer X, éventuellement mettre le module en autoload... voir dans la partie nvidia) Options du noyau et fglrx(source : Terminou) Voici les options qui doivent être activées dans le noyau pour que les driver ATI marchent : Loadable module support -> Enable loadable module support : ENABLED Loadable module support -> Module unloading : ENABLED Loadable module support -> Automatic kernel module loading : ENABLED Processor type and features -> MTRR (Memory Type Range Register) support : ENABLED Character Devices -> /dev/agpgart (AGP Support) : ENABLED OR MODULE Character Devices -> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) : DISABLED Activez aussi le support du chip AGP de votre carte mère, par exemple pour les nForce2 : "NVIDIA nForce/nForce2 chipset support" Pour les AMD64 : il est possible d’utiliser les drivers en 32 bits : activer en plus "AMD Opteron/Athlon64 on-CPU GART" fglrx : à la question "Do you want to use the external AGP GART module (y/n) ? [n]" la réponse varie... si vous avez compilé l’agpgart en module, vous pouvez essayer les 2 ("n" sélectionne le driver "ati", "y" sélectionne le driver agp du noyau (qu’il faut charger évidemment : pour les 2.6, il faut charger "agpgart" et le module spécifique à la CM : par exemple "nvidia_agp") 11.11 Des problèmes pendant l’installation d’un logiciel ? (spéciale dédicace à Sandeman...) Quelques fois, un package ne veut pas s’installer... Dans ce cas, il y a plusieurs manières de résoudre le problème. La première manière est d’essayer une autre version (plus récente (tildarch), plus ancienne)... Cela ne marche pas toujours, mais ne demande pas beaucoup d’effort ;) Ensuite, il faut regarder les messages d’erreur, ce qui se passe, et réagir en conséquence... – Si le fichier ne veut pas se télécharger, il suffit d’aller chercher sur internet et de le mettre dans le répertoire /usr/portage/distfiles, et éventuellement refaire le "digest" si le fichier n’est pas identique à celui indiqué dans portage. Pour cela, il suffit de faire 1 $ ebuild /usr/portage/[category]/[package]/[package]-[version].ebuild digest Cela permet de recréer le fichier "digest" qui stocke les MD5 des sources... – Si le programme compile mal, il faut le faire à la main : Tout d’abord, commencer à emerger normalement, mais en utilisant USE="keeptemp keepwork", ce qui permet de ne pas effacer les fichiers temporaire si la compilation échoue. Ensuite, aller dans le répertoire où a été décompressé la source (et les patches ont été mis) : 1 2 $ USE="keeptemp keepwork" emerge [category]/[package]-[version] $ cd /usr/tmp/portage/[package]/work – Ensuite, corriger le problème (problème dans le configure, un #ifdef mal positionné, etc...) Relancer la compilation avec "make" Puis enfin installer, non pas avec make install, mais avec "ebuild", et ensuite effacer les fichiers temporaires : 1 2 $ ebuild /usr/portage/[category]/[package]/[package]-[version].ebuild install $ ebuild /usr/portage/[category]/[package]/[package]-[version].ebuild clean – Cela permet de trouver les bugs, et il est possible ensuite si ça marche de poster la solution sur http ://bugs.gentoo.org 15 15 http://bugs.gentoo.org 82 CHAPITRE 11. [TUTO][INITIÉ] TOPIC OFFICIEL GENTOO Quatrième partie Avancé 83 Chapitre 12 [Tuto][Initié] Noyau Linux Par tuXXX 12.1 Introduction Il est souvent question de recompiler le noyau sous linux, de manière à en avoir un qui corresponde le plus près possible au système, que ce soit pour les périphériques que pour le processeur et la mémoire. Je vais donc essayer de rendre cette opération la plus simple possible, tout en essayant de ne pas être redondant avec les autres topic dédiés concernant une distribution précise. Mon but ici est notamment de donner des explications par rapport aux différentes options des noyaux, et je supposerait que tous les outils nécessaires pour compiler sont là (make, gcc, ncurses, etc...). Je supposerait également que le noyau choisi est un 2.6, les noyaux 2.4 n’étant plus à jour (même si malheureusement certains drivers ne sont compatibles uniquement pour ces versions) 12.2 Pourquoi un noyau ? Tout d’abord, à quoi il sert ? Le noyau permet la gestion de la mémoire et des processus, ainsi que la communication entre le système et les périphériques. Il peut y avoir plusieurs raisons pour vouloir changer de noyau, mais la plus courante est pour mettre à jour les drivers. 12.3 Installation du noyau Je vais ici expliquer comment installer les sources d’un noyau correctement, ainsi que le patcher. Si vous utilisez les "kernel-source" de votre distribution, vous pouvez passer cette partie ;) Tout d’abord, télécharger le noyau sur http ://www.kernel.org 1 , il vaut mieux en général prendre celui qu’ils appellent "latest stable version". Une fois que ceci est fait, il faut décompresser ce fichier (qui est au format .tar.bz2) dans le répertoire /usr/src 1 2 $ cd /usr/src $ tar -xvjf linux-2.6.X.tar.bz2 Maintenant que le noyau est décompressé, il va falloir faire un lien symbolique vers lui à /usr/src/linux : 1 $ ln -s linux-2.6.X linux (si "linux" existe déjà, le supprimer avec "rm linux") Et vous pouvez vérifier : 1 2 $ ls -l /usr/src/linux /usr/src/linux -> /usr/src/linux-2.6.X maintenant, il suffit d’aller dans ce répertoire pour être prêt pour les étapes suivante ;) 1 http://www.kernel.org 85 86 CHAPITRE 12. [TUTO][INITIÉ] NOYAU LINUX 12.4 Installation d’un patch Il existe des patches de noyau, qui modifient certains fichiers afin d’optimiser certaines partie du code. Par exemple, le patch "mm" d’Andrew Morton, disponible sur kernel.org, incluant par exemple il y a peu un patch pour les P4 "HT" (entre beaucoup d’autres ! ! ! Il suffit de regarder le "Changelog" pour voir la quantité de modifications) Une fois le patch téléchargé et décompressé ("bunzip2 2.6.X-mmY.bz2" par exemple), il faut patcher le noyau avec la commande suivante : 1 $ patch -p1 < 2.6.X-mmY Voilà ! le noyau est patché et prêt à être compilé ! 12.5 Configuration du noyau Il y a plusieurs manières de configurer un noyau, mais la plus intéressante est le "make menuconfig", c’est donc cela que bous allons faire ;) Mais avant, il faut s’assurer que plus rien ne reste des configurations précédentes, de même que les modules qui pourraient rester... 1 2 $ make clean $ make mrproper C’est bon, vous pouvez maintenant faire le fameux "make menuconfig" (c’est ici qu’il faut avoir toutes les librairies, notamment ncurses.), il existe aussi "make config", que je déconseille fortement (de toute façon, vous abandonneriez avant la 100eme question ;) ) et "make xconfig", qui est plus abordable, mais mois pratique à mon goût. 1 $ make menuconfig Vous vous retrouvez donc devant une jolie interface (c’est pas mal, quand même...) Donc on se déplace avec les flêches directionnelles, on choisit <Select> <Exit> ou <Help> et on utiliser la touche "Entrée". Pour mettre une fonction en module, il faut appuyer sur la touche "M" (comme module, tient ;) ) Pour intégrer une fonction au noyau, il faut appuyer sur "Y" Et pour enlever totalement cette fonctionnalité, appyer sur "N" Il est aussi possible d’appuyer sur " ?" pour avoir l’aide au lieu de sélectionner <Help> 12.5.1 Garder l’ancienne configuration Il est aussi possible de garder l’ancienne configuration. Pour cela, il faut d’abord vérifier que cette configuration est dans le noyau : 1 $ ls /proc/config.gz Si le fichier existe, c’est bon ! Après le traditionnel "make clean && make mrproper", il suffit maintenant de décompresser ce fichier pour obtenir le fichier .config : 1 $ gunzip -c /proc/config.gz > .config (Note : certaines distributions incluent le fichier de configuration du noyau dans /boot/config-xxx) Puis de mettre à jour : 1 make oldconfig 12.6 Un module ? Mais queskecé ? Un module permet de rendre le systèle linux plus modulaire, et peut être chargé (quasiment) à n’importe quel moment. Il s’agit d’un fichier binaire qui communique avec le noyau. Cela permet d’alléger la taille du noyau, mais aussi de pouvoir ajouter plus tard des modules (par exemple pour des drivers vidéo) Les modules sont uniques à un noyau, et sont d’ailleur stockés dans /lib/modules/<numéro du noyau> C’est donc le cas pour les drivers vidéos, et les drivers propriétaires qu’il faudra recompiler à chaque fois. 12.7. CONFIGURATION 12.7 Configuration 12.7.1 Part I : General setup 87 Code maturity level options 1 2 3 [*] Prompt for development and/or incomplete code/drivers [*] Select only drivers expected to compile cleanly [*] Select only drivers that don’t need compile-time external firmwware Ici, il faut tout laisser : Cela permet d’avoir accès aux drivers en développement (1), ne montrer que ceux qui compilent bien(2), et cacher ceux qui nécessitent un firmware spécifique(3) (ouais, enfin vous savez lire l’anglais ;) ) General setup 1 2 3 4 5 6 7 8 9 10 11 Support for paging of anonymous memory (swap) [*] System V IPC [*] POSIX Message Queues [ ] BSD Process Accounting [*] Sysctl support [*] Auditing support [*] Enable system-call auditing support [*] Support for hot-pluggable devices [*] Kernel .config support [*] Enable access to .config through /proc/config.gz [ ] Configure standard kernel features (for small systems) ---> 1) Support pour la SWAP :D 5) Pour activer certains contrôles du noyau "on the fly" (file :Documentation/sysctl/) 9 et 10) permet d’avoir le .config du noyau dans /proc... très très utile ! 11) On va pas toucher à ça, on veut pas faire un noyau pour système embarqué... Loadable module support 1 2 3 4 5 [*] [*] [ ] [*] [*] Enable loadable module support Module unloading Forced module unloading Module versioning support Automatic kernel module loading 1) Active le support des modules :D 2) pouvoir enlever des modules (rmmod) 3) forcer à décharger les modules avec rmmod -f ...pas recommandé 4) ça peut être utile... donc tant qu’à faire... 5) utile pour charger automatiquement les dépendances des modules, obligatoire pour hotplug entre autres 12.7.2 Part II : Processor & System Processor type and features 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Subarchitecture Type (PC-compatible) ---> Processor family (Athlon/Duron/K7) ---> [ ] Generic x86 support [*] HPET Timer Support [*] Symmetric multi-processing support (2) Maximum number of CPUs (2-255) [ ] SMT (Hyperthreading) scheduler support [*] Preemptible Kernel [*] Machine Check Exception <*> Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4 [ ] check for P4 thermal throttling interrupt. < > Toshiba Laptop support < > Dell laptop support < > /dev/cpu/microcode - Intel IA32 CPU microcode support < > /dev/cpu/*/msr - Model-specific register support < > /dev/cpu/*/cpuid - CPU information support Firmware Drivers ---> 88 18 19 20 21 22 23 24 CHAPITRE 12. [TUTO][INITIÉ] NOYAU LINUX High Memory Support (off) ---> [ ] Math emulation [*] MTRR (Memory Type Range Register) support [ ] Boot from EFI support [*] Enable kernel irq balancing [ ] Use register arguments Performance-monitoring counters support ---> 2) Changer en fonction du processeur 3) Seulement pour que les distribs soient largement compatibles 4) Pour activer le timer inclu dans le noyau... 5) Activer le support de plusieurs processeurs 6) Nombre précis de processeurs (chacun en plus du premier ajoute 8Ko au noyau inutilement) 8) A activer ([http ://kerneltrap.org/node/view/3043] ICI pour un petit topo ;) ) 18) Activer si plus de 1Go de ram, sinon off pour performances 20) Accélère les bus PCI et AGP, obligatoire pour les cartes ATI ! 23) Peut permettre éventuellement des meilleures performances, auparavant incompatible avec les drivers vidéos ATI et nVIDIA, les drivers nVIDIA (>6106) supportent maintenant cette fonction, mais je ne sais pas pour les ATI Power management options (ACPI, APM) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [*] Power Management support [ ] Software Suspend [ ] Suspend-to-Disk Support ACPI (Advanced Configuration and Power Interface) Support ---> | [*] ACPI Support | [*] Sleep States | <*> AC Adapter | <*> Battery | <*> Button | <*> Fan | <*> Processor | <*> Thermal Zone | < > ASUS/Medion Laptop Extras | < > Toshiba Laptop Extras | [ ] Debug Statements | [ ] Power Management Timer Support APM (Advanced Power Management) BIOS Support ---> CPU Frequency scaling ---> 1) Active la gestion de l’énergie ... Indispensable 2) et 3) permet d’activer une sorte de "veille prolongée", activez si vous pensez l’utiliser. 4) support de l’ACPI 17) support de l’APM, seulement si l’ACPI ne marche pas/fait planter l’ordinateur 18) seulement pour les portables Bus options (PCI, PCMCIA, EISA, MCA, ISA) 1 2 3 4 5 6 7 8 9 10 [*] PCI support PCI access mode (Any) ---> [ ] Vector-based interrupt indexing (MSI) [ ] Legacy /proc/pci interface [*] PCI device name database [ ] ISA support [ ] MCA support < > NatSemi SCx200 support PCMCIA/CardBus support ---> PCI Hotplug Support ---> 1) Permet d’activer le support pour les ports PCI (utile, non ?) 2) Choix du mode "Any" devrait convenir pour 99.99% des cas ;) 3) Moyennement utile 4) Anciennement utilisé pour voir les périphériques PCI, délaissé au profit de "lspci" 6) Pour les ports ISA => désactivé ;) 9) Si portable avec PCMCIA 10) Support du "PCI hotplug" de certaine CM, à ne pas confondre avec le système "Hotplug" qui permet de détecter les périphériques et de charger les modules correspondant. A désactiver. 12.7.3 Part III : File format, system et devices Executable file formats 12.7. CONFIGURATION 1 2 3 89 [*] Kernel support for ELF binaries <*> Kernel support for a.out and ECOFF binaries <*> Kernel support for MISC binaries Tout laisser pour un maximum de compatibilité. Device Drivers Bon là je ne détaillerais pas tout... à vous de chercher et d’agir en fonction du matériel. Si vous avez un doute, mettez en module, ça ne peut pas faire de mal ;) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Generic Driver Options ---> Memory Technology Devices (MTD) ---> Parallel port support ---> Plug and Play support ---> Block devices ---> ATA/ATAPI/MFM/RLL support ---> SCSI device support ---> Multi-device support (RAID and LVM) ---> Fusion MPT device support ---> IEEE 1394 (FireWire) support ---> I2O device support ---> Networking support ---> ISDN subsystem ---> Telephony Support ---> Input device support ---> Character devices ---> I2C support ---> Misc devices ---> Multimedia devices ---> Graphics support ---> Sound ---> USB support ---> 3) Port parallèle ;) ça peut être utile, mais à vous de voir... 5) Activer "Loopback device support ! ! ! (pour pouvoir monter les images CD .iso directement) 6) Activez en fonction de votre matériel... 8) Pour faire du raid software 12) Activez le driver correspondant à votre carte réseau. (le driver pour les cartes mères nVIDIA se trouve là : "Ethernet (10 or 100Mbit)">"Reverse Engineered nForce Ethernet support", appelé "forcedeth", activer les RealTek 8139 est généralement une bonne idée, au moins en module ! 16) Pour modifier l’"agpgart" ... Possibilité de le désactiver pour laisser le driver de la carte 3D le faire tout seul... Le mettre dans un premier temps, histoire d’avoir un noyau qui marche ;) 17) à activer pour les cartes TV (notamment bt848) : "I2C Support"+"Bit Banging interfaces". Aussi utile pour les senseurs de la carte mère (température) pour lm_sensors. (mettre tous les Hardware Sensors en module ;) ) 19) Activer pour avoir le support des cartes TV (en général 848 ou 878, regardez le "lspci") (il vaut mieux mettre en module pour pouvoir passer des paramètres) 20) Activer le framebuffer peut produire des effets négatif sur la stabilité ensuite, en plus c’est à peut près inutile en général. 21) Activer alsa absolument ! Et ne pas oublier tous les "OSS ... API" (compatibilité oss). Et configurer pour la carte son (dans PCI devices) 22) Activer surtout ehci et ohci, uhci éventuellement (si carte Intel ou Via) (enfin au moins tout en modules). Activer aussi "USB Mass Storage support" pour avoir le support des clé USB (mettre en dur pour ne pas à avoir à charger le module !) ainsi que "USB Human Interface Device (full HID) support" pour les souris/claviers USB File systems Mettre le maximum de systèmes de fichiers en dur afin de pouvoir booter n’importe où... (Ext2, Ext3, Reiserfs, JFS, XFS), ainsi que le NTFS éventuellement (pas en écriture ! voire aide). Activer aussi "SMB file system support" dans "Network File Systems" Activer également "NLS ISO 8859-15 (Latin 9 ; Western European Languages with Euro)" sous "Native Language Support" afin de pouvoir accéder tranquillement aux données des disques ntfs et fat de windows. 12.7.4 Part IV : Kernel Hacking & Others Profiling support Moyennement utile, "If unsure say N" :D 90 CHAPITRE 12. [TUTO][INITIÉ] NOYAU LINUX Kernel hacking 1 2 3 4 5 6 7 8 9 10 11 12 [*] Kernel debugging [ ] Check for stack overflows [ ] Stack utilization instrumentation [ ] Debug memory allocations [*] Magic SysRq key [ ] Spinlock debugging [ ] Page alloc debugging [ ] Compile the kernel with debug info [ ] Kernel lock metering [*] Sleep-inside-spinlock checking [ ] Compile the kernel with frame pointers [*] Use 4Kb for kernel stacks instead of 8Kb[/font][/QUOTE] 5) Permet d’activer les combinaisons de touches "Alt"+"Sys"+[lettre] ... afin de ne pas faire de reset trop violent. 12) Permet d’utiliser des piles de 4K au lieu de 8 afin de faire tourner plus de threads et de réduire la "pression" de l’interface graphique sur le système. Vous pouvez activer sans problème si vous avez une carte nVIDIA (et les drivers >6106), je ne sais pas pour ATI mais il semble que ce soit bon (à tester quand même sans avant ;) ) Security options Pour rendre encore plus sécurisé linux... A priori c’est inutile sauf si vous savez ce que vous faîtes... Cryptographic options Pour crypter un système de fichiers... à vous de voir mais à piori c’est moyennement utile... Library routines Activer CRC32c pour permettre le chargement de certains modules... 12.8 Sauvegarde Une fois que tout est bien configuré, je vous consille de faire "Save Configuration to an Alternate File" pour être sûr (et puis, pour pouvoir recharger après un "make clean mrproper") Personnellement, je sauvegarde avec le noyau en 0.config (puis 1.config pour le suivant, etc...) (Je vous conseille aussi d’utiliser les touches numériques au-dessus des lettres, et non le pavé numérique, je me suis déjà fait avoir : ça a quitté le make menuconfig quand je tapais des chiffres et tout ça sans sauvegarder, bien sûr ;) ) Ensuite, il suffit de quitter en disant de sauvegarder la configuration. 12.9 Compilation Comme il est écrit dans le README... la méthode pour compiler le noyau est la suivante : 1 2 3 4 $ $ ($ $ make make modules_install mount /boot) cp ../linux/arch/i386/boot/bzImage /boot/kernel-2.6.X /! Je vous conseille de ne jamais écraser l’ancien noyau... Copiez donc avec un nouveau nom dans le répertoire /boot, ceci afin de pouvoir toujours booter sur l’ancien noyau / ! Puis configurer : – lilo : modifier /etc/lilo.conf et lancer "lilo" – grub : modifier /boot/grub/grub.conf ou /boot/grub/menu.lst /! De même, créez une nouvelle entrée dans le bootloader, afin de pouvoir choisir entre l’ancien et le nouveau... Comme cela, si le noyau ne boote pas, il reste toujours l’ancien ! / ! Rebootez, et c’est bon ! ! ! 12.10. TRUCS ET ASTUCES 12.10 91 Trucs et astuces – Modifier le nom du noyau Il est parfois utile de modifier le nom du noyau (par exemple pour fair plusieurs version...Il vaut mieux séparer les modules, et donc avoir des noms différents) Pour les anciens noyaux, il faut pour cela modifier le Makefile et changer le paramètre EXTRAVERSION. Cette chaîne de caractère sera ajoutée au numéro du noyau, que ce soit pour le "uname" ou pour le répertoire où sont stockés les modules. Pour les noyaux plus récents, il y a une options de configuration Cela est à faire avant la compilation. – Utiliser les "Magic SysKeys" Quand tout à l’ai planté, au lieu de rebooter sauvagement le PC, il est possible d’utiliser les "Magic SysKeys". Cela consiste à appuyer simultanément sur "Alt", "Sys" (Impr.écran) et une touche du clavier. Alt+Sys+S : resynchronise les systèmes de fichiers montés afin de vider notamment les caches Alt+Sys+U : remonte les systèmes de fichiers en écriture seulement Alt+Sys+B : reboote l’ordinateur Il faut faire ces 3 commandes l’une après l’autre, dans un interval d’au moins 1 seconde (le temps que ça agisse)... Si l’ordinateur redémarre après avoir appuyé sur "B", il n’y aura pas de problèmes sur les systèmes de fichiers...Sinon il faudra faire un restet brutal. – Quelques optimisations – Mettre de préférence le périphérique PCI correspondant à votre carte son (alsa) en "dur", cela permet au noyau de détecter automatiquement et de ne pas avoir à charger tous les modules... – Pour ceux qui ont des cartes graphiques nvidia, désactivez totalement le support de l’agp, cela afin d’activer celui des drivers nvidia qui est plus efficace... 12.11 A quoi sert l’initrd ? L’initrd est une une sorte d’image disque qui contient principalement un exécutable ("linuxrc") et qui permet de faire certaines choses entre le chargement du noyau et l’init du système... Par exemple : – détecter les périphériques de boot et charger les modules correspondants (contrôleurs SATA/SCSI/USB/...) – détecter le type de la partiton et cherger les modules correspondants (reiserfs, xfs, jfs...) – booter en réseau avec un menu – permettre d’avoir une ligne de commande simplifiée en cas de problème, etc... Cependant, en général, tout ce que le noyau a besoin pour booter (contrôleur et système de fichiers) est mis "en dur" dans le noyau, et cet initrd est alors tout simplement inutile... Si c’est votre cas, vous pouvez tout simplement vous en passer. 92 CHAPITRE 12. [TUTO][INITIÉ] NOYAU LINUX Chapitre 13 [Tuto][Initié] Configuration de X Par tuXXX 13.1 Introduction X est très important car il sert à afficher des graphismes à l’écran, sa configuration est donc primordiale pour une utilisation agréable de linux. Il est aussi intéressant de connaître le fonctionnement global et de pouvoir comprendre un peu le fichier de log. 13.2 Configuration automatique Il existe plusieurs programmes de configuration du serveur X. Tout d’abord, les programmes livrés avec X : "xf86cfg", "xf86config/xorgconfig" et "X -configure". – xf86cfg tente de lancer un serveur X basique et permet une configuration graphique, je le trouve cependant moins pratique que xf86config – xf86config/xorgconfig est un programme en mode texte qui pose quelques questions sur la configuration du matériel et crée un fichier de configuration, c’est très pratique afin d’avoir rapidement une configuration qui marche et pouvoir lancer X (pour aller chercher de l’aide sur internet ou sur un chat ;)) – X -configure permet lui-aussi de configurer en mode texte, mais est un peu plus compliqué que xf86config (commun à Xfree et X.org) Il y a ensuite les outils propres à la distribution. Mandrake permet de configurer graphiquement via le panneau de configuration, mais cela existe aussi sous SuSE (sax), et beaucoup d’autre distributions. Je rapelle toutefois la commande pour debian, car celle-ci n’est pas des plus évidente : "dpkg-reconfigure xserver-xfree86" (et X.org ? si quelqu’un sait, MP...). 13.3 Approfondissements Nous allons maintenant étudier plus en détail le fichier de configuration, qu’il est possible de modifier à la main pour faire correspondre le plus possible au matériel. Tous d’abord, où est-t’il ?. Le fichier de configuration de X se trouve dans /etc/X11/, et il se nomme XF86Config-4 (X.org, Xfree 4), XF86Config (X.org, Xfree4, Xfree), xorg.conf (X.org). XFree86, en version 4, regarde d’abord le fichier XF86Config-4, c’est donc en général celui-ci qu’il faut modifier. X.org, quand à lui (la version de X qui est utilisée de plus en plus à la place de XFree86 4.4 pour cause de licence) utilise le fichier xorg.conf en premier (mais il regarde ensuite XF86Config-4 et XF86Config), la syntaxe est le même. Ce fichier de configuration est divisé en plusieurs parties appelées "Section", et s’écrit donc comme cela : 1 2 3 Section "xxx" [...] EndSection 13.3.1 Section "Device" : carte graphique Cette section permet de configurer la carte graphique et de configurer aussi quelques options. 1 Identifier "Generic VGA" 93 94 CHAPITRE 13. [TUTO][INITIÉ] CONFIGURATION DE X Ceci permet de donner un nom à la carte graphique, qui sera utilisée plus tard. C’est seulement une chaîne de caractère et tout est possible, bien qu’il soit évidemment préférable de mettre le nome de la carte graphique. 1 Driver "vga" Cela configure le driver utilisé par X pour afficher quelque chose sur cette carte graphique. Les drivers "vga" et "vesa" sont sensés marcher tout le temps quelque qoit la carte graphique, mais il y a ensuite des drivers spécifiques. Une liste est accessible 1 , bien que celle-ci concerne XFree86-4.4, elle est globalement d’actualité pour XFree-4.3 et X.org 1 VideoRam 256 Certaines options peuvent être passées au driver, pour les forcer lors de la configuration automatique. 1 BusID "PCI:0:10:0" Cela permet d’identifier une carte par son emplacement sur le bus PCI, cela permet de différencier les cartes si il y en a plusieur. Ce BusID peut être récupéré grâce à la commande "lspci". 1 Option "hw cursor" "off" Il y a ici encore quelques options qui peuvent être passées ici. 13.3.2 Section "Monitor" : configuration de l’écran Cette section permet de configurer l’écran. 1 Identifier "Generic Monitor" Ici encore, il faut identifier l’écran par un nom... 1 2 3 4 HorizSync HorizSync HorizSync HorizSync 31.5 \# configuration typique pour un écran à fréquence fixe 30-64 \# plage de fréquences 31.5, 35.2 \# plusieurs fréquences fixes 15-25, 30-50 \# plusieurs plages de fréquences HorizSync permet de configurer la fréquence horizontale de votre écran. Il faut pour cela se référer au manuel de votre écran afin de mettre les fréquences adaptées. Attention ! Une mauvaise configuration ici peut endommager votre écran (bien qu’aujourd’hui tous les écrans disposent d’une protection)...vous serez prévenu ! 1 2 3 4 VertRefresh VertRefresh VertRefresh VertRefresh 60 50-100 60, 65 40-50, 80-100 VertRefresh est identique à HorizSync, mais en verticale. Comme pour HorizSync, se référer au manuel de l’écran. 1 ModeLine "640x480" 25.175 640 664 760 800 480 491 493 525 Modeline permet de configurer les différentes résolutions et fréquences de rafraichissement associées. Puisque cela est difficile à calculer soi-même, il existe des façons de calculer cela automatiquement, comme par exemple ici 2 . 1 Option "dpms" Cela permet (si l’écran le supporte) de mettre celui-ci en veille au bout d’un certain temps (et pas simplement un écran noir). 13.3.3 Section "Screen" : gestion des couleurs/résolutions à utiliser Ceci permet de configurer notamment les résolutions à utiliser et le nombre de couleurs. 1 Identifier "Screen 1" Ceci permet encore une fois de nommer cette configuration d’écran 1 Device "Generic VGA" 1 http://www.xfree86.org/current/RELNOTES3.html][ici 2 http://www.hut.fi/Misc/Electronics/faq/vga2rgb/calc.html 13.3. APPROFONDISSEMENTS 95 Ici, on met le nom de la carte graphique à utiliser (renseignée dans la section "Device") 1 Monitor "Generic Monitor" De même pour l’écran 1 DefaultDepth 8 On choisit la profondeur de couleurs à utiliser : 1, 2, 4, 8, 16, 24 ou 32 (en général, 24=32 ensuite dans les drivers) 1 2 3 4 SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubsection Dans cette sous section, on définit le nombre de couleurs supportées et les modes à utiliser (définis par modeline auparavant). Il y a en général plusieurs sous-sections (avec plusieurs nombre de couleurs) 1 2 3 4 5 SubSection "Display" Depth 8 Modes "640x480" Virtual 800 600 EndSubsection Il est aussi possible d’avoir un écran "virtuel", ici, par exemple, l’écran sera en 680x480, mais s’affichera en 800x600 (le bureau dépassera de l’écran et il faudra utiliser la souris pour le parcourir) 13.3.4 Section "Module" : modules de X Ici sont chargés les modules de X. 1 2 Load "dbe" Load "glx" J’ai trouvé une explication de certains de ceux-ci ici 3 . En général, il faut au moins que glx et extmod y soient pour pouvoir jouer ;) 13.3.5 Section "InputDevice" : clavier et souris Cette partie est très importante puisqu’elle permet de configurer tous les périphériques d’entrée... En général, il faut au moins une section pour le clavier et une pour la souris. –> Le clavier 1 Identifier "Keyboard1" Encore une fois, le nom qu’aura le périphérique. 1 Driver "keyboard" Le driver à utiliser : ici c’est un clavier, mais une liste en disponible ici 4 (encore XFree86-4.4, mais ça devrait être à peu près pareil avec Xfree86-4.3 et X.org...), il existe aussi par exemple le driver "synaptic" pour les touchpads... 1 Option "XkbRules" "xorg" Cela permet de bien gérer le clavier quand on a X.org 1 Option "XkbModel" "pc105" Choix du modèle de clavier...en général, pc105 pour les claviers à touchers windows standards... 1 Option "XkbLayout" "fr" Choix du type de clavier : "fr" pour clavier azerty français... –> La souris 3 http://lists.debian.org/debian-user/2003/06/msg02770.html 4 http://www.xfree86.org/current/RELNOTES3.html 96 1 2 CHAPITRE 13. [TUTO][INITIÉ] CONFIGURATION DE X Identifier "Mouse1" Driver "mouse" ...no comment :D 1 2 3 4 Option Option Option Option "Protocol" "Protocol" "Protocol" "Protocol" "Auto" "PS/2" "IMPS/2" "ExplorerPS/2" Permet de choisir le protocole à utiliser...Auto tente de trouver automatiquement si la souris est Plug ’n Play, PS/2 est le protocole standard pour les souris 3 boutons (aussi pour les souris USB...), et "IMPS/2" et "ExplorerPS/2" pour les souris plus complexes... 1 Option "Device" "/dev/mouse" Cela permet de connaître le périphérique de la souris... normalement /dev/psaux /dev/mouse pour les souris PS/2 et /dev/input/mice pour les souris USB... Normalement, si on fait "cat /dev/...", cela doit afficher des choses à l’écran quand on bouge la souris... 13.3.6 Section "Files" : polices de caractères 1 RgbPath "/usr/X11R6/lib/X11/rgb" C’est le nom du fichier de configuration des couleurs (sans l’extension .txt). Dans ce fichier est stocké la correspondance entre un nom de couleur (par exemple "DarkGoldenrod2", et les composantes rgb : 238 173 14). Normalement, il n’y a pas besoin d’y toucher... 1 2 3 4 5 FontPath FontPath [...] FontPath FontPath "/usr/X11R6/lib/X11/fonts/local/" "/usr/X11R6/lib/X11/fonts/misc/" "/usr/X11R6/lib/X11/fonts/75dpi/" "/usr/X11R6/lib/X11/fonts/100dpi/" Tout plein de polices de caractères... – –> Section "ServerFlags" : options de X Il y a ici plein de configuration pour le serveur X, par exemple : 1 2 3 4 5 Option "blank time" "10" \# temps avant que l’écran devienne noir : 10 minutes Option "standby time" "20" \# dpms : standby time Option "suspend time" "30" \# dpms : suspend time Option "off time" "60" \# dpms : off time 13.3.7 Section "ServerLayout" : sélection des claviers/souris/écrans Cette section regroupe toutes les autres afin de dire quoi utiliser... 1 Identifier "Main Layout" ...encore l’identifiant...utilisé avec l’option "-layout" de X au démarrage...si il y en a plusieurs et qu’on ne veut pas le premier... 1 Screen "Screen 1" Définit le "Screen" à utiliser... 1 InputDevice "Mouse1" "CorePointer" Définit la souris à utiliser... 1 InputDevice "Keyboard1" "CoreKeyboard" Définit le clavier à utiliser... 13.4. FICHIER DE LOG 13.4 97 Fichier de log X écrit toujours un fichier de log. Celui-ci se situe dans /var/log/ Le nom de ce fichier dépend du numéro du display utilisé, mais en général, c’est XFree86.0.log pour XFree86, et XOrg.0.log pour X.org... Début des lignes : (**) : Ceci signifie une lecture du fichier de log (==) : Configuration par défaut (++) : Configuration depuis la ligne de commande (–) : Détecté automatiquement ( ! !) : Avertissement (II) : "International" (WW) : Warning (EE) : Erreur ! (NI) : Non Implémenté ( ? ?) : Inconnu L’examen de ce fichier est indispensavle si X marche mal ou pas du tout, mais peut être intéressant même si tout marche (à priori ;)) bien... 13.5 Drivers cartes 3D Le driver pour les cartes 3D est spécifié dans la section "Device" (si vous avez bien suivi). Mais encore faut-il que le module soit chargé... Il peut souvent prendre des options spécifiques, comme l’anti-aliasing, ou autres options...Mais il faut pour cela regarder dans la documentation. (en général, dans "/usr/share/doc/[nom du fabricant]"...) Pour les cartes ATI : rajouter ceci à la fin du fichier afin de permettre à tout le monde d’avoir accès au "dri" (se configure comme un fichier ;)) 1 2 3 Section "dri" Mode 0666 EndSection 13.6 Configuration facile d’écran Il y a une manière très imple de configurer l’écran sans mettre tous les modes à l’aide de "ModeLine". Il faut pour cela évidemment que votre écran soit "Plug ’n Play". Pour cela, il suffit de mettre seulement l’Identifier dans la section monitor (et éventuellement les options comme "dpms"). Puis de mettre : 1 Load "ddc" Dans la section "Module" 13.7 Configuration des souris à 5 boutons Faire marcher les "Thumb Buttons" (boutons sous le pouce) des souris n’est pas toujours évident, je vais ici expliquer la marche à suivre pour ma MX700, mais cela devrait marcher pour un grand nombre d’autres souris. (c’est confirmé pour les souris Microsoft Explorer v3.0... merci 16ar !) Le bout va être donc de pouvoir utiliser ces boutons pour faire "Précédent" et "Suivant" dans Mozilla... Pour tester, il est possible d’utiliser "xev" (X events), afin de voir ce qui se passe. Tout d’abord, il faut configurer la souris avec le protocole "ExplorerPS/2", le seul qui permet de gérer 5 boutons plus la molette... Il faut aussi éviter ABSOLUMENT de mettre «Option "ZAxisMapping" "4 5"» comme c’est normalement le cas, car cela désactive automatiquement les boutons 6 et 7... Il faut donc utiliser les boutons 6 et 7 et utiliser ensuite "xmodmap" pour inverser les boutons 4 5 et 6 7 Voici donc la configuration de la souris : 1 2 3 4 5 6 7 8 Section "InputDevice" Identifier "MX700" Driver "mouse" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" Option "Buttons" "7" Option "ZAxisMapping" "6 7" EndSection Si vois lancer X comme cela, la molette devrait être sur les boutons 4 et 5, et les boutons du pouce 6 et 7 (à vérifier avec xev ;)) Mais cela implique que tous les ascenseurs montent et descendent avec les boutons sous le pouce...Donc pour inverser cela, il suffit de lancer : 1 $ xmodmap -e "pointer = 1 2 3 6 7 4 5" Et voilà ! Il ne reste plus qu’à mettre celà au démarrage de X, et ce sera parfait : (/usr/X11R6/lib/X11/xinit/.Xmodmap) 98 1 1 CHAPITRE 13. [TUTO][INITIÉ] CONFIGURATION DE X pointer = 1 2 3 6 7 4 5 $ ln -s /usr/X11R6/lib/X11/xinit/.Xmodmap /etc/X11/Xmodmap 13.8 Configuration de plusieurs écrans (Par Sandeman) Il y a quatre modes de fonctionnement : - en mirroir (les 2 écrans identiques) : super :( - en wide screen (le même desktop étiré sur 2 écrans, effectivement c’est Xinerama. A définir dans les options du layout dans XF86-config. Mieux vaut adopter le même résoluition verticale ... - en dual desktop : 2 desktops différents (y compris en terme de résolution, de langue, de décoration ...), suffit de ne pas mettre Xinerama dans les options. - en borgne (c’est le nom qui me vient à l’esprit) : un écran actif avec Ctrl+Alt+F7, un autre avec Ctrl+Alt+F8 : le dualscreen du pauvre ou du noob, qui lance 2 serveurs X :) Et pis ça marche soit avec la même carte graphique (exemple : la 9800 Pro de ma station, ou la Radeon Mobility M9 du portable), soit avec 2 cartes graphiques (par exemple j’ai lgtps tourné avec une Rage 128 AGP + une S3 Trio 64 PCI). Ainsi qu’avec une GeForce3 (pour pas faire de jaloux) Si c’est la même carte : 1 2 3 4 5 Section "Device" Identifier "Card0" .../... Screen 0 EndSection à l’identique 1 2 3 4 5 Section "Device" Identifier "Card1" .../... Screen 1 EndSection Si c’est deux cartes différentes, mettre les SEctions "Devices" classiques. Le DRI risque par contre de ne pas marcher ... Définir les Screen correspondant Dans 1 2 3 4 5 Section "ServerLayout" Screen 0 0 "Screen0" 0 0 Screen 1 1 "Screen1" LeftOf "Screen0" \#ou RightOf Option "Xinerama" "on" \# ou rien EndSection En Xinerama certaines applis déconnent si elles ne sont pas sur le Screen 0, je nommerai par exemple Xine et Mplayer ... ainsi que Cedega (ex Winex) Voir aussi le topic suivant : http ://www.pcinpact.com/forum/index.php ?showtopic=7701 5 13.9 Exemple Puisque je pense qu’un exemple pourrait aider pas mal de monde, je donne ici mon fichier de configuration personnel... Voici tout d’abord ma configuration : Ecran LCD 1280x1024 (NEC LCD 1701BK) Carte graphique nvidia (GeForce3) Souris logitech MX700, raccordée en USB Clavier logitech cordless desktop MX 1 2 3 4 5 6 7 8 Section "ServerLayout" Identifier "Layout" Screen "mainScreen" InputDevice "CordlessMX" "CoreKeyboard" InputDevice "MX700" "CorePointer" EndSection Section "Files" 5 http://www.pcinpact.com/forum/index.php?showtopic=7701 13.10. ACTIVATION DE L’EXTENSION "COMPOSITE" SOUS X.ORG 6.8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 99 RgbPath "/usr/X11R6/lib/X11/rgb" ModulePath "/usr/X11R6/lib/modules" FontPath "/usr/X11R6/lib/X11/fonts/misc" FontPath "/usr/X11R6/lib/X11/fonts/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/X11R6/lib/X11/fonts/Speedo" EndSection Section "Module" Load "ddc" \# détecte automatiquement les paramètres du moniteur (fréquences) Load "glx" Load "extmod" EndSection Section "InputDevice" Identifier "CordlessMX" Driver "keyboard" Option "CoreKeyboard" Option "XkbModel" "pc105" Option "XkbLayout" "fr" EndSection Section "InputDevice" Identifier "MX700" Driver "mouse" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" Option "Buttons" "7" Option "ZAxisMapping" "6 7" EndSection Section "Monitor" Identifier "NecLCD1701BK" Option "DPMS" "true" \# met en veille (blank puis veille) automatiquement EndSection Section "Device" Identifier "GeForce3" Driver "nvidia" Option "NvAGP" "1" \# utilise le support du driver nvidia si possible EndSection Section "Screen" Identifier "mainScreen" Device "GeForce3" Monitor "NecLCD1701BK" DefaultColorDepth 24 SubSection "Display" Depth 16 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection 13.10 Activation de l’extension "composite" sous X.org 6.8 Tout d’abord, j’explique ce que c’est réellement cette extension : cela permet au serveur X de dessiner des fenêtres sans les afficher à l’écran (dans un buffer) et donc de pouvoir appliquer des effets dessus. Les premières application ont été les ombrages et la transparence. 100 CHAPITRE 13. [TUTO][INITIÉ] CONFIGURATION DE X Ce qui suit sera donc des explications pour X.org en version 6.8-rc2 (6.7.99.902), mais cela devrait être valable pour les release candidate suivantes, mais aussi la version finale. Tout d’abord, il faut avoir évidemment X.org en version 6.8 (rc ou plus...). Regardez dans les packages de votre distribution, ou dans le CVS de freedesktop.org. (la méthode du cvs est indiquée dans la source, bien que cela soit déconseillé) Une fois cela installé, et X configuré (il doit évidemment démarrer ;)), il faut dire au serveur X de charger l’extension "composite" : 1 2 3 Section "Extensions" Option "Composite" "Enable" EndSection Testez encore votre serveur X pour voir si il démarre toujours... Ensuite, nous allons avoir besoin de xcompmgr (X composite manager), qui va permettre d’activer réellement les effets graphiques. L’installation est identique à celle de X.org : packages de la distribution ou bien cvs... Il faut ensuite tout simplement le lencer avec cette commande : 1 $ xcompmgr -c Cela devrait modifier l’écran et afficher des ombres sous toutes les fenêtre ! Voilà, c’est gagné ! :iloveyou : En fait, pas tout à fait... Il y a encore un autre programme qui permet de modifier la transparence des fenêtres : transset. Pour l’utiliser, il suffit de faire : 1 $ transset <opacité> avec opacité compris entre 1.0 (opacité totale) à 0.0 (transparence totale). La dernière chose est la performance. Peronellement, une fois composite activé, le serveur X était devenu inutilisable. Avec les cartes nvidia, il est donc possible d’activer l’accélération de rendu : 1 2 Driver "nvidia" Option "RenderAccel" "true" Chapitre 14 [Tuto][Initié] Bootloaders Par tuXXX 14.1 Qu’est-ce qu’un bootloader ? Un bootloader est un exécutable qui se trouve sur les premiers secteurs du disque dur et qui permet de choisir un système sur lequel booter. Pour linux, cela permet aussi de spécifier le noyau à utiliser et les différents paramètres à utiliser. 14.2 lilo, grub, lequel est le mieux ? lilo et grub permettent tous les deux à peut près la même chose... pour une utilisation courante, il ne va pas y avoir de grande différence. Mais dès que l’on commence à "bidouiller", lilo sera vite embètant... En effet, tout d’abord, après chaque modification du fichier de configuration, il va falloir lancer "lilo" dans la console afin d’appliquer les modifications. C’est aussi vrai dès qu’un fichier est modifié (noyau remplacé, par exemple). Au contraire de grub, lilo ne sais pas lire les partitions (ext2/3+reiserfs au moins pour grub), il stocke tout simplement l’adresse et la taille du noyau à charger sans se poser de question (ce qui peut même poser des problèmes dans certains cas) Enfin, lilo ne dispose pas de console de récupération, ce qui peut se révéler très ennuyeux dans certains cas. (exemple : passage d’un écran 1280x1024 à un 800x600 alors que vga=794 est dans les options de démarrage...il faudra alors trouver un live-CD et faire un "chroot" avec lilo, alors que cela est très simple sous grub) Il est vrai que lilo permet à priori quelquefois des choses que grub ne fait pas, mais cela est très rare. Ceci étant dit, comme le système est GNU/Linux, chacun peut choisir ce qui lui plaît le plus... 14.3 grub 14.3.1 installation Il y a deux méthodes pour installer grub : soit en utilisant la commande grub-install 1 $ grub-install --root-directory=/boot /dev/hdX (avec /dev/hdX votre partition /boot) soit en utilisant le shell grub : 1 2 3 4 $ grub grub> root (hdX,Y) grub> setup (hdX) grub> quit avec (hdX,Y) la partition /boot et (hdX) le disque. 14.3.2 les bases Le fichier de configuration de grub est /boot/grub/grub.conf (pour des raisons de compatibilités, un lien symbolique est créé vers /boot/grub/menu.lst) Il y a une bonne raison pour laquelle ce fichier se trouve dans /boot : c’est que en général, /boot est un répertoire qui sera accessible à grub, donc celui-ci pourra y accéder. Si il ne trouve pas de fichier de configuration, grub fonctionne toujours ! Mais en mode console. 101 102 CHAPITRE 14. [TUTO][INITIÉ] BOOTLOADERS Je vais parler du monde console, qui est très pratique en cas de problème, que le fichier de configration soit inaccessible ou non. Pour accéder à ce mode, il suffit de presser "c" au menu de choix. On se retrouve alors avec un "shell" grub : "grub>" Il est possible d’utiliser de nombreuses commandes, notamment pour pouvoir booter. La syntaxe est exactement celle du fichier de configuration...et il reste toujours la commande "help" et "help <commande>" Il y a également la completion automatique, qui s’avère aussi pratique que sous bash, et permet aussi de compléter les disques... avec affichage des types de partition : voici un exemple de démarrage en mode "grub shell" (<TAB> représente l’appui sur la touche "tab") 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 grub> root (hd<TAB> Possible disks are: hd0 hd1 hd2 grub> root (hd1,<TAB> Possible partitions are: Partition num: 0, Filesystem Partition num: 1, Filesystem Partition num: 2, Filesystem Partition num: 4, Filesystem Partition num: 5, Filesystem Partition num: 6, Filesystem type type type type type type is fat, partition type 0xb is ext2fs, partition type 0x83 unknown, partition type 0x83 unknown, partition type 0x82 is ext2fs, partition type 0x83 is fat, partition type 0xb grub> root (hd1,1) Filesystem type is ext2fs, partition type 0x83 grub> kernel /boot/<TAB> Possible files are: initrd-2.6.8-ck4 kernel-2.6.8-ck4 grub grub> kernel /boot/ker<TAB> -> grub> kernel /boot/kernel-2.6.8-ck4 grub> kernel /boot/kernel-2.6.8-ck4 root=/dev/sda3 vga=794 [Linux-bzImage, setup=0x1200, size=0x286b59] grub> boot Il y a ensuite la fonction "édition", qui est utile, par exemple si le disque a changé de place (passage de /dev/hda à /dev/hdc par exemple) ou bien si les options doivent être changées (changement vers un écran plus petit par exemple) Il suffit de sélectionner l’entrée à modifier, puis d’appuyer sur "e". Il y a ensuite la liste des options du fichier de configuration qui s’affiche... On sélectionne par exemple la ligne "kernel" pour la modifier... puis on appuie sur "entrée" pour valider et enfin "b" pour booter... 14.3.3 configuration standard comme je le disait, le fichier de configuration de grub est /boot/grub/grub.conf, et voici un extrait d’un fichier standard : (/boot/grub/grub.conf) 1 2 3 4 5 timeout 10 title linux root (hd0,1) kernel /boot/kernel-2.6.8 root=/dev/hda1 vga=794 -la première ligne : "timeout 10" donne le temps en secondes pendant lequel grub va ettendre avant de démarrer le premier choix (on peut spécifier un choix par défaut avec "default" suivi du numéro de l’entrée : "default 1") -ensuite, il y a le titre du choix... il vaut mieux éviter de mettre des caractères farfelus, et si il y en a, mettre des guillemets (par exemple, je crois que les . ne passent pas sans guillemets) -la commande "root" permet de choisir la partition qui sera utilisée, non pas comme "root" pour linux, mais pour grub, afin de choisir ensuite le noyau. Cette commande est facultative, en effet, il est possible de spécifier la partition avec la commande "kernel", mais cette manière de faire est, je pense, plus simple pour rajouter des choses ensuite, ou pour modifier le fichier de conf. -la commande "kernel" permet de choisir le noyau à utiliser, si l’on a exécuté "root" avant, on peut directement taper le chemin du noyau ("kernel /boot/kernel..."), sinon, il faut spécifier la partition à utiliser ("kernel (hd0,1)/boot/kernel...") Les options du noyau sont mises sur la ligne "kernel", comme l’option "root" qui va dire au noyau quelle partition utiliser pour démarrer, ou bien "vga" et bien d’autres... 14.4. LILO 14.3.4 103 utiliser un initrd Vous savez sûrement après avoir lu le "topic noyau" à quoi sert un initrd, donc si vous en avez l’utilité, voici comment l’utiliser (avec en plus le vga pour changer la résolution) : (/boot/grub/grub.conf) 1 2 3 4 5 6 7 timeout 10 title gentoo268-ck4 root (hd0,1) kernel /boot/kernel-2.6.8 root=/dev/ram real\_root=/dev/hda1 init=/linuxrc vga=794 initrd /boot/initrd-2.6.8 [...] le ligne "initrd" permet de choisir l’initrd à utiliser, et s’utilise comme "kernel"... les options du noyau sont à modifier pour utiliser l’inird... ces paramètres peuvent dépendre de l’initrd mais devraient être ceux-ci. 14.3.5 booter windows si windows est sur le même disque que grub, c’est tout simple : (/boot/grub/grub.conf) 1 2 3 4 5 [...] title Windows rootnoverify (hd0,1) makeactive chainloader +1 c’est la ligne "rootnoverify" qui choisit où se trouve windows (ou n’importe quel OS avec bootloader intégré et type de partition inconnue), il faut bien sûr modifier pour que cela corresponde à votre système ;) Maintenant, si windows ne se trouve pas sur la partition où est grub, il va falloir "ruser" En effet, windows demande d’être sur le disque de boot, sinon il refuse de démarrer. (/boot/grub/grub.conf) 1 2 3 4 5 6 7 [...] title Windows map (hd0) (hd1) map (hd1) (hd0) rootnoverify (hd1,0) makeactive chainloader +1 14.3.6 mettre une image de fond pour mettre une image de fond, il faut rajouter une ligne au fichier de config : [QUOTE=/boot/grub/grub.conf] splashimage=(hd0,0)/grub/splash.xpm.gz[/QUOTE] (modifier en fonction de la partition ...) Même si cela n’est pas une obligation, il est préférable de mettre l’image sur /boot L’image est au format "xpm" (reconnu par The Gimp notamment) d’une taille de 640x480, 16 couleurs, compressée avec gzip. 14.4 lilo 14.4.1 installation Pour installer lilo, il faut juste remplir le fichier de config et exécuter la commande "lilo" ou "/sbin/lilo". Néammoins, il est possible de le désinstaller en exécutant "lilo -U" 14.4.2 les bases Le fichier de configuration de lilo est /etc/lilo.conf A chaque modification du fichier de conf ou de n’importe quel fichier associé (noyaux, initrd, images), il faut réexécuter "lilo". lilo possède lui aussi une manière de passer au noyau des option : il y a pour cela une invite "boot" en bas de l’écran quand lilo démarre. il faut mettre le nom qui apparait dans la liste, suivi des options. 104 CHAPITRE 14. [TUTO][INITIÉ] BOOTLOADERS 14.4.3 configuration standard Voici donc un fichier de configuration simple : (/etc/lilo.conf) 1 2 3 4 5 6 7 8 9 boot=/dev/hda timeout=100 prompt image=/boot/kernel-2.6.8 label=linux root=/dev/hda2 read-only la ligne "boot" représente où lilo sera installé "timeout" donne le temps avant de choisir l’entrée par défaut (en dixièmes de secondes) (il faut marqer "default=" pour choisir l’entrée par défaut) "prompt" signifie que la liste des noyaux sera affichée (pour pouvoir choisir ensuite, "image" désigne le noyau à utiliser "label" désigne le nom qu’aura le noyau "root=" désigne la partition qu’utilisera le noyau pour booter (une fois le fichier de configuration modifier, pensez à relancer "lilo") 14.4.4 utiliser un initrd Voici un fichier de configuration avec un initrd (avec l’option vga) : (/etc/lilo.conf) 1 2 3 4 5 6 7 8 9 10 11 12 boot=/dev/hda prompt vga=794 image=/boot/kernel-2.6.8 label=linux root=/dev/ram0 append="init=/linuxrc ramdisk=8192 real\_root=/dev/hda3" initrd=/boot/initrd-2.6.8 read-only 14.4.5 booter windows pour booter windows, il faut rajouter une ligne dans le lilo.conf : (/etc/lilo.conf) 1 2 other=/dev/hda2 label=windows 14.4.6 mettre une image de fond L’image doit être en 640x480, sous Gimp, mettre Image->Mode->Indexed, 16 Couleurs. et rajouter "bitmap=<IMAGE>" avec <IMAGE> le chemin complet dans le fichier de conf 14.5 trucs et astuces – Déjà, essyez de ne jamais supprimer une entrée qui marche du bootloader (à moins d’en avoir plusieurs), cela vous permettra de toujours démarrer votre système. – Les différents modes "vga" : – 640x480x8 : 769 (0x301) – 800x600x8 : 771 (0x303) – 1024x768x8 : 773 (0x305) – 1280x1024x8 : 775 (0x307) – 640x480x16 : 785 (0x311) – 800x600x16 : 788 (0x314) – 1024x768x16 : 791 (0x317) – 1280x1024x16 : 794 (0x31A) – 640x480x32 : 786 (0x312) 14.5. TRUCS ET ASTUCES – 800x600x32 : 789 (0x315) – 1024x768x32 : 792 (0x318) – 1280x1024x32 : 795 (0x31B) 105