Document
écrit par G.DELAFOND (gerard
at delafond.org).
Logo d'André Pascual (http://www.linuxgraphic.org)
Version du 02/10/2002 (page garantie sans image .gif)
Ce texte est une sorte de faq (frequently asked questions), qui s'adresse aux débutants qui ont réussi à installer GNU/LINUX, ce fantastique OS libre et gratuit, et qui ne savent pas comment s'y prendre ensuite (on pourrait appeler cela la post-installation). Il s'agit essentiellement de « recettes » pour se dépatouiller dans les situations les plus fréquentes sans passer des nuits entières à potasser des docs incompréhensibles, de préférence en anglais.
Toutes les informations sont données sous toutes réserves : une erreur, une faute de frappe, ou un cas particulier peuvent avoir été oubliés et avoir des conséquences fâcheuses. Toutes les opérations que vous ferez sur votre machine sont sous votre entière responsabilité.
Il devient suffisamment complet pour servir de base à des formations de niveau débutant et moyen, comme j'ai déjà eu l'occasion d'en faire (me contacter en cas de besoin).
Il est le produit au départ d'une seule personne, mais devient au cours des contributions des Linuxiens (entre autres, J-P.R, Charles Vidal, Amaury, David Trystram, Jean-Bernard JACQUET, Etienne Herlent, Pierre Couvy, Frédéric Delanoy, Thibaut Cousin...) un travail collectif. Qu'ils en soient ici remerciés. Procurez-vous les mises à jour sur http://www.delafond.org/survielinux.
La partie matérielle ne concerne que la plate-forme Intel 386, un peu MacIntosh, Sparc et Alpha. Je n'ai pas de machine pour l'élargir à d'autres configurations. Si vous avez une machine disponible quelque temps (un AS 390 par exemple ;-))
Vous pouvez le redistribuer librement sous forme électronique, ou mieux, faire des liens du fait de sa grande évolutivité. Si vous voulez le distribuer sous forme papier, veuillez me contacter. Je crois que des traductions sont en cours.
Des versions pdf et postscript compilées par Claude Mahé sont disponibles sur
http://www.uppp.free.fr/survie.pdf et .ps ainsi qu'une version .pdf sur
ftp://ftp.linux-france.org/pub/article/cesar/Survie_Linux.pdf.gz par Cesar Alexanian.
Une version Mobipocket (Psion, Palm et WinCE) mise en forme par Nicolas Robaux se trouve sur
http://www.robaux.com/ebooksurvie.htm
Il est rédigé par un non-informaticien, et il ne prétend pas résoudre toutes les questions. Il existe de très bons livres pour ça. Prenez-en un très gros. 1 000 pages semble un minimum pour pouvoir aborder correctement tous les sujets (« le système Linux » des éditions O'Reilly a une excellente réputation).
Si vous êtes Parisien, je peux vous prêter des livres (près de 100 titres). Voyez la page http://www.delafond.org/librerie.
Il s'agit d'une TRÈS LONGUE et unique page HTML sans image. Ce format est voulu : facile et rapide à télécharger, lisible avec tout navigateur y compris en mode texte, facile à imprimer (les URL sont lisibles en clair afin d'être utilisables en format papier).
Pour chercher un renseignement, vous pouvez soit utiliser l'index, soit utiliser simplement la fonction Chercher de votre navigateur.
Avant de poster une question dans un newsgroup, assurez-vous qu'elle n'est pas posée régulièrement en consultant les archives (http://groups.google.com/), et lisez les how-to (http://www.linux-center.org/fr/informations/doc-french/index.html), le guide du rootard http://www.freenix.org/unix/linux/Guide et les faq disponibles avec la plupart des distributions (les répertoires /usr/share/doc et /usr/lib/X11/doc sont souvent pleins de bonnes choses). Pour les renseignements « système », vous avez un répertoire Documentation dans les sources du kernel (/usr/src/linux/Documentation/). Beaucoup de bonnes choses sur la faq de fcolc (fr.comp.os.linux.configuration) : http://www.linux-france.org/article/fcol-faq/. Un site d'explications assez clair : www.funix.org.
Un bon site portail pour les docs en français : http://linuxdoc.free.fr.
Pour les Macs : http://www.linux-france.org/article/materiel/mac et http://perso.easynet.fr/~eherlent/linuxmac_FAQ.html
N'oubliez pas non plus les deux commandes de base man et info. Il suffit de taper « info commande_inconnue ». L'utilisation d'info est un peu complexe au début. Quelques astuces : faire défiler la page : <Espace>. Page suivante : « n » (next). Page précédente : « p » Ouvrir un chapitre : « m <Entrée> ». Quitter le mini-buffer en bas de la page : <Ctrl-g>.
Pour plus de détails : « man man » et « info info ».
Astuce : lorsque vous êtes dans man, tapez « h », vous aurez l'aide de less, qui est le programme qui affiche par défaut vos pages man. Vous saurez ainsi comment chercher un mot, vous déplacer, etc. Pour imprimer un man, « man date | lpr » imprime le man de date.
Autre astuce : dans kde2, vous tapez « #commande_inconnue » dans la barre d'URL de Konqueror, et vous aurez le man dans la fenêtre de navigation, avec de la couleur et des hyperliens. Tapez « info:/commande_incompréhensible » dans la barre d'URL et vous aurez la page d'info en html.
Vérifiez que vous disposez de la toute dernière version de Linux, les différents problèmes étant réglés au fur et à mesure des nouvelles versions (Actuellement RedHat 8.0 et Mandrake 9.0, Suse 8.1, Slackware 8.1, Debian 3.0, Caldera 3.1 avec Xfree 3.3.6 -ou 4.2, et le kernel 2.0.39, 2.2.22 ou 2.4.19). Ne confondez pas la version de Linux (le kernel, ou noyau) et celle de la distribution (les numéros de distributions cités ici correspondent à des contenus en programmes voisins).
Vous trouverez ci-dessous des renseignements sur :
Choix d'une distribution, Commencer l'installation, Le disque dur et les partitions, Le choix des paquetages, Le mode graphique, Le boot
Login, mail, messages système, démarrer Windows ou Linux, la mémoire vive, faire une disquette de boot, trouver les commandes, astuces bash, les utilisateurs, mot de passe, les groupes, les droits, les consoles, faire fonctionner les commandes, les répertoires, éditer les fichiers, trouver une chaîne, voir Linux depuis Windows ou MacOS
Démarrage, ligne de commande, mot de passe, espace de travail, souris, clavier, fichiers, droits, système, extinction
Généralités, Cd-rom, disque dur, disquette, démountage, SCSI, modem, ADSL, Numeris, câble, son, Cd-audio, vinyl, Imprimante, souris, zip, ls 120, MO-Drive, disquettes flash, télé, joystick, Psion et PDA, Scanner, USB, Clavier, Partition Windows, DVD, graveur, automontage, portable, fax, Minitel, Wacom, appareil photo, webcam
Généralités, modem, Infra-rouge, Le PCMCIA, L'économie d'énergie, Internet par téléphone portable
Débloquer, espace libre, Faire de la place, les quotas, changer la priorité, libérer de la RAM, mettre à l'heure, se déloguer sans arrêter un programme, paramétrer le démarrage, lancer un service, version, récupérer un fichier effacé, réparer les partitions, défragmenter, redimensionner, polices françaises, linuxconf, webmin
Lancer X, lancer X automatiquement, les Window managers, les X terms, les résolutions, les couleurs, régler le centrage, les polices, les ascenseurs X, changer de console graphique, lancer un programme en tant qu'invité, quitter X, la 3D, le double écran, la sortie Télé, le DivX .
La carte réseau, L'adresse IP, Les routes, Telnet et ssh, Exporter l'affichage, Session X distante, le null modem, la passerelle réseau, ip-aliasing, nfs, serveur ftp, imprimer, Samba, MacIntosh, ipchains, NIS, Minitel, Fax, Transmettre du texte, Transmettre du son, Scanner en réseau, Apache, serveur de mails, Réseau à distance, VNC, Internet, Naviguer, Client ftp, Mail par telnet, ICQ
La sécurité, GnuPG, J'ai perdu mon mot de passe
Installer un programme, Les programmes à problème, Ça ne marche pas, Dosemu, Wine, Word et Excel, Mac-on-Linux, Cygwin
Améliorer un programme, Traduire
Les images iso à télécharger et des commentaires sur chacune d'elles sur http://www.linuxiso.org
Tout dépend de votre matériel et de ce que vous voulez faire. Les distributions généralistes se présentent généralement sous la forme d'un (ou plusieurs) cd-rom. Elles contiennent énormément de programmes préconfigurés et sont munies d'un système d'installation souvent perfectionné, intégrant un partitionneur de disque dur. Si vous avec un PC moderne de type Pentium (et clones) avec cd-rom, la plupart des grandes distributions conviendront (RedHat, Suse -non téléchargeable car non GPL-, Mandrake, Debian, Slackware,...).
Si vous avez un PC plus ancien (486), faites attention à ne pas prendre une distribution compilée spécialement pour Pentium (Suse, Mandrake). Prenez plutôt une Debian ou une Slackware. Vous pouvez aussi télécharger une distribution de Mandrake compilée spécialement pour 486.
Si vous avez un Mac, voyez du côté de linuxppc ou Suse, voire Debian ou Gentoo. Les dernières versions seraient assez faciles à installer.
Si vous avez un Alpha, vous avez Red Hat, Debian ou Suse et sur Sparc, vous avez Red Hat ou Debian.
Si vous n'avez pas de lecteur de cd-rom, vous pouvez en emprunter un le temps de l'installation, ou bien faire une installation par réseau (le réseau peut être de type Ethernet ou un simple câble Null-modem série ou Null-printer parallèle (câble pour transferts de fichiers). Dans ce cas, vous devez aussi avoir sous la main une machine Linux contenant un cdrom d'installation et vous y donnant accès par nfs. Vous pouvez aussi installer par ftp dans certains cas. Excellente liaison indispensable !!
Autre possibilité : certaines distributions comme Slackware ou Debian sont prévues pour être tronçonnées en disquettes, et un PC sous DOS pourra facilement générer les (nombreuses !) disquettes nécessaires à l'installation.
Le choix peut aussi porter sur le support où vous comptez réaliser l'installation. Par exemple, certaines distributions acceptent de s'installer sur une partition DOS/Windows (système UMSDOS). C'est moins bien, mais c'est plus simple. Certaines sont même faites pour cela : winLinux, DosLinux. Il existe aussi une distribution faite pour s'installer sur une disquette zip (Zipslack). C'est commode, mais avec 100 Mo, on ne fait plus grand-chose de nos jours.
Le choix peut aussi porter sur la place dont vous disposez. Les Suse Mandrake RedHat et apparentées sont de vrais mastodontes. Généralement, l'installation est tout simplement impossible en dessous de 200 ou 300 Mo (mode minimal en 65 Mo pour Mdk). Rabattez-vous sur les distributions plus modulaires : Slackware ou Debian (qui permettent de descendre jusqu'à 20 à 40 Mo). Le même problème se pose si votre RAM est trop exiguë (Les dernières Slack ne s'installent pas avec 8 Mo de RAM, et la plupart des grosses distributions peinent avec 16 Mo. Mandrake a besoin de 48 Mo, sauf si vous faites une installation minimale, c'est-à-dire en désélectionnant tous les packages, que vous pourrez installer plus tard).
Le choix peut aussi être de...ne pas installer Linux sur un disque. Certaines distributions s'exécutent directement depuis le support d'installation en mémoire vive (dans un ramdisk). C'est le cas essentiellement des micro-distributions (microlinux, tomsrtbt à http://www.toms.net/rb/, linuxrouteur à http://www.linuxrouter.org, de mininux qui supporte le système Reiserfs http://mininux.free.fr) ou de Demolinux (un cdrom entier à votre disposition en quelques minutes), ou encore mieux : Knoppix (2 Go de programmes préinstallés sur le cdrom et un boot éclair) http://www.knopper.net/knoppix/index-en.html.
Parmi les distributions à la mode, citons Gentoo (http://www.gentoo.org), très originale au niveau de son système d'installation nommé Portage. Sur cette distribution, vous installez à partir des sources mais l'intérêt par rapport aux autres distributions, c'est que l'étape de configuration de la compilation est automatisée par rapport à votre système, ce qui fait que vous obtenez un système totalement cohérent et adapté à vos besoins.
Pour les puristes absolus, LFS (Linux From Scratch : http://www.linuxfromscratch.org) est un mode d'emploi plus qu'une distribution : c'est vous qui faites votre distribution vous-même. Inutile de dire que la Mailing-list chauffe pas mal...
Enfin, il est possible d'installer Linux sous Windows. La merveille qui fait cela s'appelle Cygwin (http://www.cygwin.com/). Il s'agit d'une distribution fonctionnant en émulation sous Windows. Elle est assez complète : utilitaires, shell, Xfree, compilateurs, débogueurs et bibliothèques de développement (700 Mo en tout).
Commencez à faire un tour dans le BIOS du PC (touche <Suppr> ou <F2> ou autre chose pendant le début du démarrage selon votre PC)
Si vous ne savez vraiment pas comment faire, essayez de démarrer en ayant débranché le disque dur. Désactivez la protection anti-virus, sinon vous risqueriez de ne pas pouvoir écrire votre système de boot. Ensuite, choisissez la manière dont votre ordinateur doit démarrer pour l'installation (disquette ou cdrom, option possible à partir des Pentium 150)
Rappelons que le BIOS des PC est un petit programme incorporé à la carte-mère, dont le rôle est de gérer le matériel et le démarrage : nombre, emplacement et type des disques, IRQ, mémoire vive, disque à démarrer...
Il y a plusieurs manières de démarrer l'installation.
-À partir d'une disquette de boot. Celle-ci est peut-être fournie avec la distribution ou bien à faire soi-même. Lisez les instructions écrites sur le cdrom. Sur certaines distributions, il en faudra deux. Pour générer la disquette sous DOS, il faudra utiliser le programme rawrite, ou bien dd sous Linux. (« dd if=fichier_image of=/dev/fd0 bs=512 »)
Pour info, ces programmes sont capables de copier une « image » de disquette présente sur un disque à l'identique sur une disquette.
Si vous n'avez pas de cdrom sur la machine, c'est la seule méthode envisageable.
Bootez ensuite sur la disquette et suivez les instructions.
-À partir du cdrom. La plupart des distributions sont sur un cdrom bootable. Si votre PC accepte de booter sur cdrom, vous insérez le cdrom et vous démarrez. Enfantin.
-À partir de DOS/Windows. La plupart des distributions ont un programme DOS capable de démarrer l'installation. Sous RedHat, c'est autoboot.bat dans \dosutils. Sur Mdk 8.0 et plus, ne cherchez pas, il n'y en a plus.
Pour l'installation (et surtout le boot à partir de disquette) il faut créer deux disquettes de démarrage pour une RedHat 6.0 et une seule pour une RedHat 6.2. L'une d'elle est le boot disk et l'autre le root disk. La procédure de création des disquettes est la même que pour l'installation sur un PC. On peut utiliser rawrite. Les deux images boot et root doivent se trouver dans le répertoire images.
Lors du premier démarrage, insérer la disquette boot et, après les tests de la machine, interrompre le boot par STOP-A. Attention si on a un clavier Qwerty, il faut taper STOP-Q. Pour la station alpha un bon vieux CTRL-C fera l'affaire.
Ensuite taper n et se laisser guider par les menus. Normalement pour booter sur la disquette vous devrez taper une commande comme : « boot floppy ».
Il suffir de taper : « boot floppy ». Sinon la commande « help » vous donne toute l'aide nécessaire.
La station va redémarrer et booter sur la disquette, elle va charger le noyau et va ensuite vous demander la disquette root. Insérez-la et appuyez sur <Enter>. Normalement votre Linux est démarré et il ne vous reste plus qu'à l'installer. La suite de l'installation est la même que pour un PC.
Si votre ancien OS boote malgré tout, il faut interrompre le boot n tapant lors du démarrage <STOP-A>. Attention, si on a un clavier Qwerty, il faut taper STOP-Q. Ensuite se laisser guider par les menus. (n pour le nouveau menu).
Ensuite, pour booter la machine, il faut taper une des commandes suivantes :
boot /sbus/esp/sd4,0
boot /sbus/esp/sd1,0
On me signale que sur Sparc 5, ça boote très bien à partir du CDROM (id=6). À la mise sous tension : STOP+A (même avec un clavier US). Ensuite : boot cdrom et installation standard. Attention ! par défaut il n'utilise qu'un DD il faut prendre installation personnalisée pour pouvoir utiliser les 2 DD. (d'après Claude Hiebel)
Comme pour les Sun j'ai réalisé l'installation à partir du net avec une connexion FTP à partie des deux disquettes de boot et root (faites à partir de rawrite). Ensuite il suffit de démarrer la station avec la disquette boot dans le lecteur. Après ses premiers tests vous avez l'invite > > > et vous allez indiquer que vous voulez booter sur la disquette par la commande « b dva0 ». Si vous désirez plus d'informations, faites « help boot ». Ensuite il y a un accès sur la disquette, il s'agit du chargeur aboot qui démarre. Ce dernier vous rend la main par aboot> et la vous répondez <0> (ceci est la configuration qui charge le noyau de la disquette).
Lors du partitionnement du disque de boot, il faut faire attention, si vous choisissez d'installer aboot, de commencer la première partition au cylindre 2. En effet aboot s'installe sur le premier cylindre.
Aboot charge alors le noyau, et cela peut être très long (on peut même penser que c'est planté : 25min) puis le noyau se charge. Une nouvelle invite vous propose de remplacer la disquette boot par la disquette root ce que vous vous empressez de faire. Le noyau finit de booter et vous arrivez sur la page d'accueil d'installation de la distribution. Il ne vous reste plus qu'à faire l'installation comme avec un PC.
Si vous êtes moins chanceux et que vous installez à partir du CD-Rom (dkaxxx ou xxx vaut 400 500 suivant l'ID SCSI du CD-Rom) il vous faudra entrer la ligne de commande suivante :
> > >boot dkaxxx -fi /kernels/generic.gz -fl root=/dev/scd0, bootdevice=/dev/sr0
Probablement le problème le plus complexe. Tout d'abord, remettons les pendules à l'heure. Sous Windows, c'est plus simple...parce qu'on l'installe sur un disque vierge. Partitionner un disque dur « à chaud », c'est-à-dire sans détruire les données qui s'y trouvent est une opération délicate, et s'arranger pour installer un deuxième système et une méthode de démarrage permettant de choisir le système à démarrer est un autre défi (que Linux relève avec panache).
Rappelons qu'une partition est une zone du disque physiquement distincte des autres (contrairement aux répertoires qui sont des entités logiques, mais n'ont pas d'existence physique). Chaque partition porte un système de fichiers, qui permet d'écrire des données faciles à retrouver (ex : vfat pour Windows, ext2 pour Linux, etc.).
Les partitions du disque des PC
Les disques durs des PC peuvent supporter 4 partitions par disque, pas une de plus. Ces partitions peuvent s'appeler primaires ou étendues. Les partitions primaires sont indivisibles. La (seule possible) partition étendue peut être divisée en partitions logiques. Cette astuce permet de dépasser les 4 partitions autorisées.
Numérotation des partitions
Si votre disque dur est de type IDE, son nom commencera par hd. Le premier de la première nappe est hda, le deuxième hdb, le premier disque de la deuxième nappe hdc et le deuxième de la deuxième nappe hdd. Si vous avez des disques UDMA66 avec la nappe qui va bien, ça commence à hde. Dans l'état actuel des choses, il vaut mieux installer ces disques en IDE simple, c'est-à-dire avec une nappe ordinaire (numérotation IDE normale). Si votre disque est SCSI, il s'appelle sd???. Le premier est sda, le deuxième sdb, etc.
Si votre disque est partitionné, son nom ne change pas, pas plus que celui des suivants, mais on rajoute un numéro : sda1, hdb4, etc. La numérotation des partitions logiques commence à 5.
Comment partitionner ?
Si votre disque dur est vierge et que vous voulez Linux tout seul, vous pouvez lancer l'installation directement. S'il est vierge et que vous voulez Windows, commencez par partitionner avec fdisk sous DOS ou avec un microlinux (tomsrtbt), puis installez Windows sur la première partition, puis installez Linux.
Si votre disque dur contient déjà Windows, commencez par défragmenter Windows, ce qui aura pour effet de rassembler au début du disque tout Windows et libérera de la place pour partitionner, sauvegardez toutes vos données, puis tentez un partitionnement (fips sous DOS, ou Partition Magic). Vous pouvez sauter cette étape si votre distribution possède un partitionneur non destructeur intégré au processus d'installation.
Quelles partitions ?
Le minimum pour Linux est...1 partition. En fait, on en utilise souvent davantage.
La swap
Presque toutes les distributions vous obligent à utiliser une partition de swap (=fichier d'échange = mémoire virtuelle). Cette partition servira à écrire lorsque la mémoire vive déborde. Dans le temps, on disait que le swap devait faire le double de la taille de la RAM. Maintenant que le kernel a changé et que les RAM sont énormes ainsi que les disques durs, une fois la RAM est généralement suffisant. Idéalement placée vers le début du disque (plus rapide). hda5 est généralement un bon choix.
/
Ici se trouve la partition racine du système. Obligatoire. Plus ou moins grande selon ce que vous mettrez dessus. Sachez que la saturation de cette partition est dangereuse pour le système. Donc éviter tout ce qui peut grandir. Tous les répertoires ci-dessous se placeront ici si vous ne leur spécifiez pas de partition spécifique.
/boot
Il peut être bon que le système de démarrage soit sur une partition à part. Une bonne raison est l'utilisation d'un système de fichiers Reiserfs, qui n'est pas supporté par certains systèmes de boot. Donc un /boot en ext2, de très petite taille (8 Mo). Idéalement en début de disque (hda1). Cela rend possible le boot dans certains cas (gros disques mal gérés par les BIOS).
/home
Ici seront vos données. L'intérêt de les séparer physiquement est de pouvoir par exemple réinstaller Linux sans toucher à vos données. Donnez la taille que vous voulez. Le format peut être ext2 ou reiserfs (si votre noyau le supporte).
/usr
Ici seront installés les programmes. Cette partition doit être de grande taille (au moins 1 Go, 5 ou 6 avec les disques modernes et les distributions énormes actuelles). Vous pouvez ne pas créer de /usr. Simplement, votre / sera plus grande. Et attention à ne pas installer trop de programmes qui satureraient alors /. Format ext2, ext3 ou reiserfs. (Cette partition est facultative)
/var
Sans doute une partition très utile. Votre système écrit régulièrement ici des données. Comme la partition racine (/) ne doit jamais saturer, il est prudent que les données changeantes soient sur une partition à part. Une centaine de Mo convient très bien. Beaucoup plus si vous voulez être un serveur apache. Format ext2, ext3 ou reiserfs. (Cette partition est facultative)
/root
Pour la même raison que /home, puisque /root est le /home du chef. Format ext2 ou reiserfs. (Cette partition est facultative)
En résumé, sachez que tous les répertoires qui n'ont pas une partition spécifique seront automatiquement installés dans la partition /.
Le système d'installation va ensuite vous proposer une incroyable quantité de logiciels à installer, généralement groupés par genre.
Si vous choisissez tout, l'installation pourrait prendre pas mal de temps (genre 1 ou 2 heures) et occuper 3 ou 4 Go de disque.
Si vous choisissez peu de choses, vous risquez d'être gêné aux entournures. Essayez de lire l'aide qui accompagne les paquetages. Une idée quand même : si vous comptez installer des logiciels distribués sous formes de source, vous devez avoir tous les outils de développement (langages de bibliothèques), dont le nom finit souvent pas dev ou devel. Ça occupe un gros volume, mais c'est assez fastidieux si vous voulez les installer ensuite à la main. Les autres programmes sont assez faciles à rajouter ultérieurement.
Une astuce : vous pouvez installer un minimum de choses afin de faire une première installation rapide. Regardez à la fin si tout marche comme vous voulez, et recommencez l'installation, cette fois complète. Vous n'aurez pas besoin de refaire l'opération délicate du partitionnement, puisqu'elle est déjà faite.
Votre logiciel d'installation devrait vous paramétrer plus ou moins automatiquement le mode graphique. Il se peut qu'il échoue. Dans ce cas, vous devriez avoir au moins un mode graphique qui fonctionne : le mode VGA 16 (640 x 480 en 16 couleurs). Ça vous donnera le temps pour installer mieux ensuite. Si le mode graphique passe bien les tests, vous devriez pouvoir accepter que le mode graphique démarre automatiquement au boot. Si lors du premier reboot, vous tombez sur quelque chose d'inutilisable (clignotements horribles, etc.), rebootez et signalez au gestionnaire de boot que vous voulez démarrer dans un niveau inférieur (tapez « linux 3 » à l'invite de LILO ou tapez « e » à l'invite de GRUB (reconnaissable à l'inscription « stage1 stage2 » ),et ajoutez « 3 » en fin de ligne. Sur certaines distributions (Debian) mettez plutôt « S ». Vous arriverez en mode texte et aurez tout le temps pour faire un paramétrage manuel avec « xf86config » ou autre.
Vers la fin de l'installation, le programme d'installation vous demandera où vous voulez installer le système de démarrage et peut-être quel programme de démarrage vous voulez utiliser.
L'emplacement du système de boot
Votre premier disque dur possède un secteur de boot, qui est automatiquement lu par le BIOS lors du démarrage (master boot record = mbr). C'est généralement ici que vous allez installer le programme de démarrage. Si vous avez plusieurs OS à démarrer, c'est à ce moment que vous devez les déclarer. Généralement, le programme d'installation les trouvera sans votre aide. Le disque dur possède également un secteur de boot par partition. Vous pouvez installer ici votre système de démarrage, mais sachez que vous aurez de toutes façons besoin d'un système de boot sur le mbr qui saura chercher ici le démarrage de Linux.
Si vous avez des disques SCSI et IDE dans la même machine, c'est toujours le mbr du premier disque IDE qui sera lu. Donc, pas d'installation sur le mbr du SCSI. De plus, Linux ne sait démarrer que sur les deux premiers disques. Or les disques IDE sont comptés en premier. Donc pas de Linux sur un disque SCSI si vous avez 2 disques IDE. Donc, généralement, acceptez le mbr. Sachez aussi que le processus d'installation de Windows efface le mbr, ce qui oblige dans une machine multi-boot, soit à installer Windows en premier, soit si l'on installe Linux en premier à avoir une disquette de boot sous la main pour pouvoir relancer Linux ultérieurement et reconstituer un secteur de démarrage en multi-boot.
Enfin, le commande magique pour restaurer un mbr défaillant (ou pour revenir à un DOS sans Linux) : « fdisk /mbr » sous DOS.
Le choix du logiciel de démarrage
Les distributions en proposent souvent plusieurs.
Lilo
C'est le système historique. Il a besoin de connaître l'emplacement physique des fichiers de démarrage (noyau). Souvent un bon choix, mais refuse de booter certaines machines.
Grub
Beaucoup plus puissant. Il est capable de monter les systèmes de fichiers et de chercher les fichiers à démarrer tout seul.
Loadlin
C'est un logiciel DOS qui sait booter Linux à partir de DOS/Windows. Pratique si vous utilisez surtout Windows ou si vous ne voulez pas toucher à votre mbr.
Les autres
Rarement proposés lors de l'installation. Citons chos ou Xosl (démarreur graphique s'installant sous DOS).
Ceci n'est qu'un petit survol de l'installation de Linux, simplement destiné à aborder l'installation avec les notions de base et à vous faire éviter quelques pièges. Il y a souvent des surprises, pas toujours faciles à démêler, même pour un vieux routier. Lisez bien les explications qui accompagnent votre distribution. Ne vous découragez pas, le jeu en vaut la chandelle. Et dès que ça bootera proprement, passez à la suite...
Plusieurs cas sont possibles selon votre distribution et les options d'installation que vous avez choisies.
Normalement, après une installation réussie, Linux tourne, mais sans utilisateur défini. Vous devez voir une invitation à taper votre identifiant (login). L'utilisateur principal s'appelle root (racine) (Ne pas confondre avec le répertoire racine, à l'origine de toute l'arborescence des fichiers !) Tapez « root », puis validez. Ensuite, on vous demande un mot de passe (password). Inventez-en un (si ce n'est déjà fait lors de l'installation), tapez-le une fois, puis confirmez.
À ce moment, vous êtes logé en tant que root. Vous êtes sur une console, dans un shell, c'est-à-dire un interpréteur de commandes (la tendance des distributions modernes est de démarrer directement le mode graphique). Vous devez voir une invite se terminant par # (spécifique du superutilisateur). Cette invite est souvent représentée par « % » dans les docs. Il est bien évident qu'il ne faut pas reproduire ce signe lorsque vous tapez une commande.
Quelques exemples de commandes :
« date » (ne pas taper les guillemets !)
« factor 12 » factorise 12
« cal », « cal 12 1999 » ou « cal 2000 » : et voilà des calendriers !!
« echo 2+3|bc » doit vous renvoyer « 5 ». Pas besoin de calculette. Marche aussi comme ceci : « echo $((2+3)) ».
Dans ce cas, vous avez un écran graphique qui vous demande qui vous êtes et votre mot de passe. Une fois validé, vous arrivez sous un Linux graphique. C'est plus long, mais c'est plus joli. Lorsque vous voudrez taper des commandes, vous pourrez soit lancer un xterm, c'est-à-dire une boîte permettant aussi bien la saisie de commandes que l'affichage du résultat (les menus de base de votre environnement graphique doivent vous mettre quelque part à disposition un moyen d'en lancer un facilement), soit basculer sur une console texte.
Dans ce cas, vous n'avez absolument rien à faire, le système tape les mots de passe à votre place pour l'utilisateur par défaut. Vous arrivez directement en mode de travail. Il va sans dire que ce mode de démarrage ne doit être employé que si la machine n'est pas accessible à des personnes indésirables.
Généralement, vous trouverez le message « you have new mail » dès votre connexion. Pour voir votre courrier, tapez tout simplement : « mail ».
Vous verrez une liste de messages. Pour en lire un, tapez son numéro, puis <Entrée>. Pour le détruire : « delete le _numéro ». Quitter : « q ».
Plus de détails : « man mail ».
Ces messages sont dans le fichier /var/spool/mail/news. Par la suite, vous pourrez faire pointer votre client mail graphique sur ce répertoire pour les lire plus confortablement.
« dmesg ». Ça défile encore trop vite ! J'ai raté le début !
Pas de panique : « dmesg|less », puis les flèches haut et bas. « q » pour quitter. Vous venez de faire une commande très puissante : un tube (pipe). La redirection du résultat de dmesg vers le programme d'affichage less.
Plus simple : essayez la combinaison <Maj-Haut de Page >. Vous devriez vous retrouver dans le texte au dessus de la ligne de commande (la simple flèche haut vous aurait rappelé les dernières commandes).
Vous pourrez lire plein d'informations sur la version du noyau, les disques, les ports série ou le driver de carte son...
D'autres infos hyper-intéressantes : lisez donc /var/log/messages. Pour ne voir que la fin (ce qui vous intéresse) : « tail /var/log/messages ». Encore mieux : voir les messages système en temps réel : « tail f /var/log/messages » (<Ctrl-c> pour quitter). Cette commande est hyper-intéressante lorsque vous êtes confronté à un problème inexplicable : path erroné...
D'une manière générale, il y a beaucoup d'informations intéressantes dans /var/log.
Attention !
Pendant le boot, vous verrez parfois le message indiquant que le disque a été mounté un nombre maximal de fois et que la vérification est forcée (« disk has reached maximal count - check forced »). La machine s'arrête alors un certain temps. N'éteignez surtout pas. Attendez simplement que la vérification du disque soit terminée. Cette vérification se fait automatiquement tous les X démarrages. L'intervalle peut être changé avec tune2fs.
Linux étant bien élevé, il permet le démarrage des autres OS, mais comme sa bonne éducation a des limites, il se paramètre comme OS par défaut pendant l'installation.
Si vous utilisez lilo, vous devez voir au démarrage s'inscrire sur l'écran « LILO boot: ». À ce moment, appuyez vite sur <Tab> (anciennes versions de lilo) ou choisissez dans le menu le bon système (nouvelle version). S'il s'inscrit « dos » ou « windows », ou quelque chose comme ça, c'est que lilo connaît votre partition DOS, et en tapant « dos » à l'invite, dos/windows démarrera.
Si l'installation automatique de lilo n'a installé que Linux, éditez le fichier /etc/lilo.conf.
Vous devriez y trouver quelque chose comme ceci :
boot=/dev/hda map=/boot/map install=/boot/boot.b vga=normal default=linux # à changer si vous voulez Windows par défaut keytable=/boot/fr-latin1.klt # vous permet de taper avec le bon clavier déjà installé. prompt timeout=50 #temporisation avant le démarrage automatique message=/boot/message # message intéressant à afficher other=/dev/hda1 #la partition win. label=windows # c'est le nom qui apparaît pour booter Windows. Ça pourrait être n'importe quoi d'autre. table=/dev/hda image=/boot/vmlinuz label=linux # c'est le nom qui apparaît pour booter Linux. root=/dev/hda3 # la partition Linux. initrd=/boot/initrd.img append="" #options possibles read-only |
Rajoutez les lignes nécessaires, enregistrez, puis
tapez « lilo » pour que les modifications
soient prises en compte.
(pour en savoir plus : « man lilo »).
Astuce : pour redémarrer automatiquement en mode Windows depuis Linux avec lilo, tapez « lilo R windows;reboot », en supposant que « windows » est bien le nom que vous avez donné comme nom de démarrage de Windows.
Autre astuce : si votre système ne boote plus (ou Windows a effacé Lilo en se réinstallant), démarrez à partir d'une disquette ou d'un cdrom, montez votre partition racine dans un répertoire quelconque du système provisoire, réparez votre /etc/lilo.conf si nécessaire, puis tapez « lilo -r le_répertoire_quelconque ».
Si vous voulez être moderne, lilo a un successeur en la personne de chos. 1 avantage : il est plus joli. Il se configure à la main (dans /etc/chos.conf) ou avec vchos. Attention à avoir une disquette de boot sous la main ; parce que chez moi, ça fait un joli kernel panic sur une machine.
Un autre boot loader sympa : xosl (http://www.xosl.org). S'installe sous DOS (une disquette freedos peut faire l'affaire).
Dernière nouvelle ! Les dernières versions de lilo ont maintenant un menu graphique (présent sur Mandrake 7.2). Contrepartie : la touche <Tab> ne fait plus rien. Du fait de la facilité d'édition à la volée de la ligne de commande et de sa compatibilité avec la nomenclature des disques avec celle de Linux, c'est notre meilleur choix. Autre nouveauté : lilo sait maintenant gérer le système Reiserfs.
Si vous voulez être puriste, utilisez GRUB, le boot loader 100 % GNU (installé par défaut depuis Mandrake 7.1). La sélection se fait comme pour chos dans un menu en utilisant les flèches du clavier.
GRUB s'utilise assez différemment de Lilo.
La nomenclature des disques obéit à des règles différentes : premier disque (IDE ou SCSI, peu importe) : hd0, première partition : hd0,0.
Vous devez d'abord taper « grub ». Puis, à l'invite, tapez « find /boot/grub/stage1 ». Cela vous donne un résultat du genre « hd0,0 ». Notez-le bien, puis tapez « root (hd0,0) », puis « setup (hd0) » pour une installation sur le mbr du premier disque ou « setup (hdx,y) », avec x comme numéro de disque et y comme numéro de partition. Quittez par « quit ».
Si les réglages par défaut ne vous conviennent pas, éditez le fichier /boot/grub/menu.lst.
Il doit ressembler à quelque chose comme ça :
timeout 5 # le délai avant que ça ne démarre tout seul color black/cyan yellow/cyan # les couleurs. i18n (hd0,4)/boot/grub/messages # le fichier où se trouvent les messages dans votre langue. keytable (hd0,4)/boot/fr-latin1.klt # la langue du clavier default 0 # le système lancé par défaut à l'issue du timeout, ici le premier de la liste title linux_2218 # le libellé de menu à choisir kernel (hd0,4)/boot/vmlinuz-2.2.18 root=/dev/hda5 3 vga=0x318 # le « 3 » force le démarrage en init 3 et le « 0x318 » concerne le mode d'affichage, ici 1024x768 en 24 bits. On aurait pu mettre « ask », auquel cas vous auriez tapé « 0318 » quand on vous le demande. title windows #le menu pour démarrer Windows. root (hd0,0) makeactive chainloader +1 |
Astuce : contrairement à LILO, vous n'avez pas besoin de refaire la procédure d'installation de Grub si vous modifiez un simple réglage dans menu.lst. En effet, contrairement à LILO qui est obligé de connaître l'adresse physique sur le disque, GRUB est capable de monter le file system et il se contente de l'adresse logique (nom du fichier).
Autre astuce : si vous voulez ajouter un paramètre pendant le boot, tapez sur la touche « e ».
Cas de loadlin : comme loadlin est un utilitaire qui vous permet de lancer Linux à partir de DOS, il est bien évident que le boot de Windows n'est pas changé.
En revanche, vous pouvez démarrer Linux avec Loadlin sans lancer totalement Windows (gain de temps). Pour ceci, il vous faut faire un menu de démarrage.
Contenu de config.sys (d'après Jean-Pierre Vidal)
DEVICE=C:\WINDOWS\HIMEM.SYS DEVICE=C:\WINDOWS\EMM386.EXE [menu] menuitem=WIN,Windows menuitem=LINUX,Linux menudefault=LINUX [WIN] device=C:\WINDOWS\COMMAND\display.sys con=(ega,,1) Country=033,850,C:\WINDOWS\COMMAND\country.sys shell=C:\COMMAND.COM C:\ /E:4096 /p lastdrive=z [LINUX] shell=c:\loadlin\loadlin.exe c:\loadlin\vmlinuz root=/dev/hda3 mem=128M [common] |
...et j'en ai davantage !
Cela se détecte par la commande « free ».
Si votre mémoire reste limitée à 64 Mo, vous devez lancer Linux à partir de Lilo en tapant « linux mem=128M ». Pour automatiser la chose, éditez le /etc/lilo.conf et rajoutez, dans la section qui lance Linux, la ligne :
append= "mem=128M" |
Enregistrez et tapez « lilo ».
Si vous utilisez Loadlin, voyez à la rubrique consacrée à Loadlin.
Important : ne mettez pas cette ligne n'importe où. Cherchez à comprendre la logique du fichier de configuration. « append » veut dire « ajouter à la fin ». Cette commande doit donc être dans le paragraphe qui va bien et après la commande qui lance Linux.
Astuce : pour savoir ce que le gestionnaire de boot a vraiment rajouté comme option, lisez donc le fichier /proc/cmdline.
Autre piège : les PC dont le BIOS permet le trou de mémoire entre 15 et 16 Mo (pour certaines vieilles cartes graphiques ISA ou VESA). Si vous activez cette fonction, Linux ne trouvera que 15 Mo. Merci à Jean-Bernard Jacquet.
Encore un piège : alors que Windows peut s'accommoder d'un mélange de type de RAM (EDO, etc.), Linux peut ne pas l'accepter.
Astuce : ne paniquez pas si free vous montre une toute petite quantité de mémoire libre. En fait, il garde un maximum d'infos dans des caches et ne libère cette mémoire que lorsqu'il y en a vraiment besoin (ligne buffers/cache). Plus de détails avec « cat /proc/meminfo ».
Essayez « mkbootdisk ». Si ce programme est présent sur votre machine, vous êtes sauvé. (en fait : « mkbootdisk --device /dev/fd0 2.2.18 » si votre lecteur de disquettes est le premier et que vous avez une copie du noyau en /boot/vmlinuz-2.2.18)
Au prochain boot, introduisez la disquette avant de démarrer (à condition que votre BIOS soit bien réglé pour le boot sur disquette), et à l'invite de LILO, tapez « rescue » pour démarrer sur la disquette, ou « linux » pour démarrer sur le disque dur (tout ceci concerne RedHat).
Pour faire une copie binaire exacte (génération de disquette d'installation) : « dd if=fichier_sur le disque_dur of=/dev/fd0 » (if=input file, of=output file).
Je crois que la disquette de boot ne fonctionne pas si vous avez un disque UDMA 66.
Sur Mandrake, votre cdrom d'installation peut très bien servir de disquette de boot.
Les principales commandes sont dans /bin, /sbin (les commandes du chef), /usr/bin, /usr/sbin, /usr/X11R6/bin et /usr/local/bin. Allez donc voir les noms des fichiers qui y sont présents (« ls /bin »). Si vous aimez l'aventure, tapez un nom qui sonne bien. Si ça ne donne rien, tentez « man macommande » (ou « info macommande »). Ça peut vous donner plein de renseignements.
Mieux : tapez une lettre au hasard, puis 1 ou 2 fois sur <Tab> (selon version de BASH). Vous verrez apparaître toutes les commandes commençant par cette lettre. Encore mieux : tapez directement <Tab>. Vous verrez apparaître le nombre de commandes disponibles (souvent plus de 1 000). Acceptez de toutes les voir (« y »), et bon courage ! Ceci n'est pas valable dans tous les shells. Connaître votre shell : « echo $SHELL ».
Pour lancer une commande, mieux vaut la faire suivre de & si son action doit être permanente. Cela permet de la lancer en tâche de fond et de ne pas mobiliser une console (« updatedb & »). Attention ! La fermeture de la console fermera la programme. L'espace avant le & est facultatif. Il est déconseillé d'utiliser le & si cette commande renvoie des messages à la console. Cela risque de perturber votre travail ultérieur.
Si vous voulez récupérer l'usage d'une console occupée par un programme, tapez <Ctrl-z>, puis « bg » (background). Votre programme retournera à l'arrière-plan, d'où il n'aurait jamais dû partir. Pour le ramener en avant-plan : « fg ».
Sinon, les principales commandes (il y en a entre 1 000 et 2 000 sur un Linux moyen) sont « ls » (liste des fichiers=dir sous DOS), « cd » (change directory), « cp » (copie un fichier), « mkdir » (make directory), « rm » =remove (« rm -rf monrépertoire » efface un répertoire plein), « rmdir » (enlève un répertoire vide), « mv » =move, déplace ou renomme (« mv ancienfichier nouveaufichier »), « vi » (édite ou crée un fichier texte), « find », « whereis » ou « locate » (recherche de fichier), « grep » (recherche de chaîne dans les fichiers), « chown » (changement de propriétaire), « chmod » (changement des autorisations à un fichier), « tar » pour (dés)archiver, « gzip » pour (dé)zipper, « bzip2 » quand c'est zippé en bz2, « ln -s » crée un lien symbolique (« ln -s fichiercible lien »), « cat », qui envoie quelque chose vers quelque part (l'écran par défaut), et bien sûr « man » (manuel) et « info ».
Ces commandes de base sont en fait intégrées dans le BASH. Vous ne les trouverez pas dans les répertoires de binaires. Pour en connaître la liste, faites « man bash » et lisez le premier paragraphe. Les explications sont plus bas dans la page.
Pour man, tapez « man lacommandequejeveuxconnaître ». Si vous ne connaissez pas le nom de la commande qui fait ce que vous voulez, tapez « makewhatis » (une fois pour toutes), puis « man -k lemotcléquejecherche ». Un petit problème : les pages de man sont regroupées en plusieurs répertoires numérotés, pouvant contenir des mans de nom identique, mais de contenu différent. Par exemple, si vous voulez le man mtools.5, la commande « man mtools » affichera le man mtools.1. Dans ce cas, faites « man 5 mtools ».
Dans KDE2, tapez en URL de Konqueror « #lacommande ». La page man s'affichera dans Konqueror avec des liens hypertexte. Pour les pages info, faites « info:/la_commande » dans la barre d'URL de Konqueror. On n'arrête pas le progrès.
Makewhatis cherche à travailler avec /usr/man au lieu de /usr/share/man et donc ne fonctionne pas (réparé dans 8.0 - vous voyez que ça sert, les rapports de bugs).
Solution : éditer à la main /usr/sbin/makewhatis (c'est un simple script shell) et remplacer le « DEFMANPATH= » par la bonne valeur
La commande « locate » (recherche de fichiers) est un peu particulière : elle s'appuie sur une base de données remise à jour la nuit (!) grâce au système anacron. Si vous voulez forcer la mise à jour : « updatedb » (script basé sur « find »). Les recherches sont ensuite beaucoup plus rapides et faciles (pas besoin de caractères joker). Cette base de données est en fait le fichier /var/lib/slocate/slocate.db (normal qu'il soit dans /var, c'est un fichier variable). Si vous n'avez pas ces programmes, installez slocate.
À l'inverse, si vous voulez connaître l'emplacement exact d'une commande : « type la_commande ».
En mode Emacs (vérifiez par « set -o »).
<Tab> : complète la commande
<CTRL-U> : efface tout ce qui est a gauche du curseur
<CTRL-A> : début de ligne.
<CTRL-E> : fin de ligne (merci à T. Stoehr)
<CTRL-W> : efface le mot à gauche du curseur
<Esc B> ou <Alt-B> : recule d'un mot
En mode vi (« set -o vi ») : utilisez les commandes de vi pour activer un mode commande ou un mode insertion.
Autres astuces: « man bash ».
Une autre bonne lecture : Bash-Prog-Intro-HOWTO.html.
Linux est multi-utilisateurs. Même si vous êtes seul, il est indispensable de créer au moins un compte utilisateur. La raison en est simple : le chef (root) peut tout faire, y compris planter la machine (par exemple en dézippant un fichier dans un disque plein) ou tout effacer (« rm /* » au lieu de « rm * »). Les puristes vous diront même qu'il est déconseillé de lancer X sous root (car X accède au matériel, et a le pouvoir de tout bloquer, ce qu'il ne se gène pas pour faire).
Vous verrez que pour effectuer les commandes, il est facile de lancer le compte root sans avoir besoin de quitter votre compte utilisateur.
« adduser duduche ». Cette commande crée en même temps un répertoire /home/duduche (noté ~/ dans les docs), dans lequel Duduche aura ses fichiers. Les autres (les membres du groupe, ou tous les autres) ne pourront pas les lire ou les modifier, sauf s'il leur en donne le droit. En fait, « adduser » est un script qui appelle « useradd » et crée en plus le home du nouvel utilisateur.
Le /home/duduche contiendra à sa création un certain nombre de fichiers cachés (commençant par « . »), qui pourront être édités selon les besoins. Ces fichiers sont des copies de ceux contenus dans /etc/skel. Si vous voulez faire des modifications qui concerneront tous les nouveaux utilisateurs (wm par défaut, alias, path...), éditez plutôt ces fichiers (en tant que root).
Les utilisateurs sont enregistrés dans /etc/passwd.
Sans autre précision, ils appartiennent au groupe par défaut, appelé « users ». (Il y a 3 niveaux de droits : lire, écrire et exécuter, pour trois niveaux d'utilisateurs : moi, le groupe, et tous, soit 27 combinaisons possibles pour un fichier).
Si votre commande « adduser » (ou « useradd ») ne fonctionne plus, vérifiez s'il n'existe pas un /etc/pwd.lock, et détruisez-le (« rm /etc/pwd.lock »).
Retirer un utilisateur et tous ses documents : « userdel -r duduche ».
Quels sont les utilisateurs actuellement connectés ? « who ». Qui suis-je ? « whoami ».
« logout » ou <Ctrl-d> quitte votre compte actuel. Sinon, lancez un deuxième terminal par <Alt-F2>, et répondez à la demande de login. Vous pourrez rebasculer sur la première console par <Alt-F1>.
Pour passer provisoirement en mode super-utilisateur sur la même console : « su » (=switch user). Pour passer provisoirement sur un autre compte non root : « su autreutilisateur ». Cette possibilité est très intéressante : vous lancez un utilisateur normal pour votre travail ordinaire, et, si vous avez besoin de faire un réglage : « su ». Si vous voulez aller directement dans le répertoire du chef avec les variables du chef en devenant le chef, « su - ». Si vous voulez devenir un utilisateur ordinaire : « su - bebert ». Si vous oubliez le « - », le système refusera de changer d'utilisateur au motif que vous êtes dans le répertoire du chef.
Attention ! Si vous êtes passé de duduche à Bebert par « su - Bebert », ne repassez pas à duduche par « su », mais par « logout » (=<Ctrl-d>) ou « exit ».
Astuce ! Si vous voulez simplement lancer un programme sous le compte root : « su -c le_programme ». Répondez au mot de passe demandé, et c'est tout.
« passwd duduche » sous root ou « passwd » tout court sous le compte de duduche.
Créer un groupe : « groupadd le_nouveau_groupe ». Ce nouveau groupe est maintenant enregistré dans /etc/group.
Ajouter l'utilisateur bebert au groupe nouveau_groupe : « gpasswd -a bebert nouveau_groupe »
Identifier les groupes auxquels appartient l'utilisateur : « groups bebert »
Changer un fichier de groupe : « chgrp groupe-cible fichier ». Ce n'est possible que si le propriétaire qui lance la commande appartient aux 2 groupes (source et cible).
Si vous faites un « ls -l » sur un fichier quelconque, vous verrez des détails insoupçonnés sur votre fichier :
-rw-r--r-- 1 bebert users 231473 nov 2 1998 snapshot02.gif
le premier tiret signifie qu'il s'agit d'un fichier simple (remplacé par d pour un répertoire et l pour un lien).
Viennent ensuite 3 groupes de rwx (r=read, w=write, x=execute). Le premier concerne le propriétaire (u=utilisateur), de deuxième concerne le groupe et le troisième le reste du monde. Le cas classique est le fichier sur lequel l'utilisateur a tous les droits, le groupe seulement la lecture et le reste du monde rien du tout. Cela donne « rwxr-x--x ».
Pour tout compliquer, il existe un équivalent chiffré :
Le premier groupe de lettres rwx correspond aux centaines, le deuxième aux dizaines et le dernier aux unités.
Dans ce système, r vaut 4, w vaut 2 et x vaut 1. Dans notre exemple, rwxr-x--- vaut 750.
Si vous voulez attribuer vous-même des propriétés, faites « chmod 777 le_fichier_que_je donne_a_tout_le_monde ».
Pour compliquer encore plus, il existe des bits qui donnent des caractères particuliers aux fichiers :
Le setuid, qui donne les droits du propriétaire à un autre utilisateur.
Exemple : faites « ls -l /usr/bin/passwd ». Le résultat donne :
-r-s--x--x 1 root root 22656 oct 24 1999 /usr/bin/passwd
Vous constatez un « s » dans les droits utilisateurs. Cela signifie qu'un utilisateur quelconque peut utiliser ce programme et obtenir le même résultat que s'il était root, c'est-à-dire écrire dans le fichier /etc/passwd, réservé au root. Les changements peuvent se faire par « chmod +s », ou « chmod g-s », ou toute commande adaptée à vos besoins. Attention ! Un fichier setuid root est un gros trou potentiel de sécurité.
Enfin, le sticky-bit (t) permet d'empêcher l'effacement d'un fichier, même situé dans un répertoire ouvert à tous.
Pour information, ces bits supplémentaires (s et t) sont enregistrés dans un quatrième chiffre placé avant les trois chiffres simples des droits. Sa valeur habituelle est de 0, ce qui fait qu'on peut le sous entendre. Exercice : essayez « chmod 7777 fichier_test », puis « ls -l ».
Pour les répertoires, le droit x ne vaut pas pour l'exécution (avez-vous déjà essayé d'exécuter un répertoire ?), mais pour le droit de passage.
Attention ! Vous pourrez effacer fichier ne vous appartenant pas dans un répertoire où vous avez le droit d'écriture, mais pas le lire.
Plus de détails : « man chmod ».
En mode console, tapez <Alt-F2>, et, miracle, vous voyez une nouvelle console apparaître. Vous pourrez y lancer le même compte, ou celui d'un autre utilisateur. Ça marche généralement jusqu'à F6.
Pour revenir sur votre premier compte, tapez <Alt-F1>. Vous venez de réaliser une chose impossible sur les OS grand public habituels : lancer plusieurs utilisateurs simultanément. Vous voyez que ça valait le coup d'installer Linux !
Pour info, maintenant que vous êtes un simple utilisateur, votre invite se termine par $.
Attention aux majuscules et aux minuscules, aux espaces, aux tirets et aux points (Syntaxe habituelle : « commande espace tiret option espace fichier_source espace fichier_cible »).
Une commande qui fonctionne ne renvoie souvent rien. Vous n'aurez un message au prompt que si la commande échoue.
Sinon, la commande n'existe peut-être pas, ou alors elle n'est pas dans le chemin de recherche (le PATH). Cherchez-la déjà par un « find / -name macommande » (vous avez droit aux jokers : « * » remplace tout plein de caractères, « ? » en remplace un et un seul). Si elle existe, mais pas au bon endroit, tapez-la avec son chemin entier : « /usr/local/bin/macommande » par exemple, ou bien « cd /lerepertoireoùestmacommande », puis « ./macommande » (contrairement à DOS, le répertoire courant n'est pas dans le path, il faut taper « ./ » pour exécuter une commande située dans le répertoire courant). Sinon, enrichissez le path (dans /etc/profile).
Pour voir le PATH : « echo $PATH ».
Pour enrichir le path : « PATH=nouveaupath:$PATH ». N'oubliez pas « : $PATH » sinon le path que vous vouliez rajouter remplace l'ancien et toutes vos commandes deviendront inopérantes. Pour l'enrichir définitivement, éditez le fichier /etc/profile.
Autre possibilité, le fichier existe, mais n'est pas exécutable. Faire « chmod +x monfichier ». Ou bien, il ne vous appartient pas. Demandez un chown ou un chmod au root.
Encore plus fort (il faut reconnaître que Linux n'a pas son pareil pour nous compliquer la vie) : si la commande se situe sur un disque mounté sans les droits d'exécution (ce qui est la valeur par défaut), ça ne marche pas. Éditez le fichier /etc/fstab et rajoutez-y « exec » sur la ligne du disque. Pour vérifier les droits d'un disque mounté, tapez « mount ». S'il est mounté avec le valeur « default », la commande devrait vous renvoyer « noexec ».
De plus en plus fort : si le cdrom est gravé en Rockridge, seul le root peut y accéder, sauf si... vous rajoutez « norock » au /etc/fstab (vous n'aviez pas deviné tout seul ??).
Si le /etc/fstab vous rebute, vous pourrez vous rabattre sur un programme graphique comme kfstab, bientôt en standard.
Vous pouvez récupérer les commandes précédentes par la flèche <Haut>. C'est quand même plus facile que de tout retaper ! Les 500 dernières commandes sont dans ~/.bash_history. Astuce : pour ne pas farfouiller 1/4 d'heure dans les dernières commandes, tapez « !debutdelacommande » (ex : « !mou »). Cela vous tapera automatiquement la commande complète telle que vous l'avez tapée la dernière fois (ex : « mount -t iso9660... »).
Encore plus fort : la recherche incrémentale inverse : Tapez « Ctrl-r ». Un prompt spécial apparaît. Ensuite, saisissez un morceau de la commande souhaitée. Dès la première lettre saisie, le shell fait automatiquement la recherche dans l'historique et vous propose en temps réel la dernière commande complète comportant cette lettre. Complétez avec d'autres lettres si nécessaire.
Autre possibilité : la commande « history » affiche l'historique des commandes. Un tube, et vous atteignez facilement la commande recherchée : « history|grep un_morceau_de_l_ancienne_commande ». Une variante de history : « fc -l -10 » affiche les 10 dernières commandes (« man bash »).
Plus vicieux : si vous tentez d'effacer un fichier qui commence par « - », son nom sera considéré comme une option. Vous pouvez faire « rm -- -lenomdufichier » ou « rm ./-lenomdufichier ».
Faites « ls », et vous avez la liste des fichiers et répertoires du répertoire courant (dans notre exemple, « ls » dans /home donne duduche/). Pour savoir quel est le répertoire courant : « pwd ».
Pour voir les fichiers cachés : « ls -a ». (ils commencent par un point).
Pour avoir des détails : « ls -l » vous donne le type de fichier, le propriétaire, les droits, et, si c'est un lien, la cible. Astuce : « ls -l monfichier » donne les caractéristiques d'un seul fichier.
Vous voulez différencier les différentes sortes de fichiers ? « ls --color ». Vous voulez que, durant cette session, votre « ls » soit toujours en couleurs ? « alias ls='ls --color' ». Attention aux quotes (apostrophes bizarres qui s'obtiennent par <AltGr-7> sur un clavier Français). Vous voulez que votre alias soit activé pour toutes les sessions ? Insérez-le dans /etc/bashrc.
Votre écran n'est pas assez grand pour voir tous les noms ? Faites un tube : « ls|less » ou « ls|more ».
Pour changer de répertoire : « cd duduche » vous amène dans le répertoire duduche, lui-même situé dans le répertoire courant (ici, home). Sinon, tapez le chemin complet : « cd /home/duduche ».
Pour remonter d'un niveau : « cd .. »(ne pas oublier l'espace). Plus simple : « s » pour supérieur comme alias sur certaines distributions (Mandrake).
Pour retourner chez soi (home) : « cd » tout court.
Pour aller au répertoire précédent : « cd - ». Idéal pour faire des allers-retours entre deux répertoires.
Copier un fichier : « cp fichiersource fichiercible » fait une copie du fichier fichiersource au fichier fichiercible. « mv fichiersource fichiercible » remplace fichiersource par fichiercible (permet les changements de nom ou d'emplacement).
Changer la date d'un fichier : « touch -m 05041020 fichier_a_changer_de_date » attribue le 4 Mai à 10 h 20 à votre fichier.
C'est un gros problème lorsque l'on débute sous Linux : les arborescences varient d'une distribution à l'autre. Si vous disposez d'un bouquin sur Slackware et d'une Redhat sur votre micro, il faudra « traduire » les chemins (la commande « find » sera utile !!).
Grossièrement :
-/bin et /sbin : programmes exécutables de base (sbin=programmes du chef).
-/dev : les périphériques. Un certain nombre de ces fichiers sont des liens symboliques vers les vrais fichiers utilisés par le système : /dev/mouse > /dev/ttyS0 (souris com1) ou /dev/psaux (souris ps2), /dev/cdrom >/dev/hdb (cdrom IDE), /dev/modem > /dev/ttySX... Cela permet aux applications de ne pas se préoccuper du système : les appels aux périphériques sont redirigés aux bons endroits. Dans le kernel 2.4, seuls les périphériques effectivement présents sur le système sont listés ici.
Si vous avez besoin de créer un descripteur : commande « mknod » (maniement compliqué, et rarement utile pour une utilisation de base).
Un exemple : « mknod /dev/null c 1 3 » (c=character, 1=majeur, 3=mineur). La liste des numéros majeurs et mineurs se trouve dans /usr/src/linux/Documentation/devices.txt.
Normalement, les kernels de la série 2.4 peuvent créer lors du besoin les descripteurs de périphériques s'ils utilisent devfs.
-/usr : les exécutables ordinaires (/usr/X11R6/bin), les sources (/usr/src) et leurs librairies (/usr/lib)
-/var : des fichiers de taille variable. On y trouve souvent des paramétrages et des librairies de programmes.
-/etc : les paramétrages : fstab pour les systèmes de fichiers, inittab pour le script de démarrage (runlevel=5 pour le démarrage en mode graphique), dosemu.conf, wine.conf, lilo.conf (pour paramètrer le mode de démarrage de LILO : délai, nom du noyau à lancer par défaut en premier...), /etc/rc.d/rc.local pour les programmes à lancer automatiquement au démarrage, /etc/rc.d/rc.serial pour les paramétrages du port série...NB : les distributions non basées sur Red Hat sautent le répertoire rc.d.
-/lib : les bibliothèques (librairies) utilisées par les programmes.
-/proc : vous n'avez rien à y faire. Permet entre autres de connaître les ressources utilisées par les différents périphériques (mémoire, irq, DMA)
-/boot : dans Redhat : le noyau (directement dans la racine sous Slackware). Il s'appelle vmlinuz (noyau compacté) ou kernel-2.x.xx. ou n'importe comment d'autre, pourvu que ça corresponde au paramétrages du système de boot (lilo ou chos).. Si vous bootez par loadlin (depuis dos), ne cherchez pas le noyau ici, il est sur la partition DOS.
-/root : le home du super-utilisateur
-/home/xxx : les répertoires personnels des utilisateurs.
-/mnt : les disques que vous voulez rattacher à votre arborescence : /mnt/cdrom, /mnt/floppy... Notez que, si ça vous chante, vous pouvez les mounter n'importe où ailleurs et sous n'importe quel nom (ce que font certaines distributions : /cdrom et /floppy).
Attention, il y a des pièges ! Tout plein de répertoires portent le même nom, mais avec un chemin différent (bin, lib, etc et d'autres). Lorsque vous repérez un fichier important, notez-en le chemin par écrit (du moins au début).
(Note : ces explications sur VI sont destinées aux systèmes disposant de très peu de fonctions en état de marche. D'autres programmes plus faciles d'abord sont cités à la fin de ce paragraphe.)
Pas de problème : « vi /etc/monfichierquejeveuxmodifier » (prononcez « vi-aïe »).
Si le nom existe, vous trouverez un texte plein d'explications, précédées par des # (non exécutées). Sinon, vous trouverez un fichier vide, que vous venez de créer.
Pour être sûr de bien taper les noms de fichiers, laissez le shell faire ! Tapez « vi /etc/monf <tab> ». Si le fichier est le seul à commencer comme ça, le nom va se compléter tout seul. S'il y en a plusieurs, ajoutez une lettre, et actionnez à nouveau <Tab>. Magique, non ? Ça marche aussi pour les commandes (ça s'appelle l'auto-complètement).
Encore plus simple : si vous avez surligné le nom du fichier trouvé par un « locate » ou un « ls », un simple clic sur le bouton central de la souris (ou les boutons D et G si vous avez accepté cette émulation pour une souris 2 boutons) fait un superbe « coller ».
Pour toute modification, commentez la ligne à modifier (« # »), puis recopiez-la avec vos paramètres. Vous pourrez plus facilement revenir à la version précédente si ça ne marche pas. Autre méthode, les copies de secours des fichiers, souvent automatiques (terminaison ~)
Vi vous fait peur ? C'est vrai qu'il est plutôt moche, mais il marche très bien, même quand rien ne marche. La plupart du temps, vous pouvez vous en sortir avec 4 commandes seulement :
Pour écrire : <Esc> puis « i » (=mode insertion). Dans certaines versions, la touche <inser> marche pareil. Pour effacer : <Esc> puis « x » (ou la touche <Eff> en mode insertion, parfois). Pour quitter sans sauver : « <Esc>: q! ». Pour quitter en sauvant : « <Esc>: wq! ».Attention, ces commandes se tapent l'une à la suite de l'autre.
Si vous avez accroché à ces commandes, en voici quelques autres :
Copier / coller une ligne : <Esc> puis <Maj-y> puis <p>. Le <Maj>, ou le redoublement de la lettre s'applique à la ligne entière.
Effacer une ligne :<Esc> puis « dd ».
Aller en fin de ligne : « $ ». Début de ligne : « 0 »(zéro).
Astuce : ne retapez pas <Esc> à chaque fois. Il suffit que vous soyez en mode commande pour enchaîner toutes ces commandes.
Chercher un mot : « /lemotquejecherche ». Occurrence suivante : « n ». Pareil avec less ou man. Vous avez un historique des recherches avec la flèche <Haut>.
Plus de détails : http://echo-linux.alienor.fr/articles/vi/vi.html.
Tous les détails sur VI en tapant <F1>.
Toujours pas convaincu ? Alors lancez Midnight Commander (« mc »), il contient un éditeur de fichiers compréhensible. MC fonctionne aussi bien en mode console et est présent sur à peu près toutes les distributions. De plus, il sait travailler avec les fichiers zip, tar, gz, rpm et même HTML.
Sinon, essayez emacs, puis sous X, kedit, gnotepad et plein d'autres.
Encore plus simple :
« echo lacommandequejerajoute >> lefichierquejerenseigne »
ou encore
« cat > fichier » (mode écrasement)
« cat >> fichier » (mode concaténation)
=> permet de taper plusieurs lignes (1 ligne à la fois)
terminer l'édition avec un C-d
« find repertoire_ou_je_cherche -name '*'|xargs grep la_chaine_que_je_cherche »
Autre méthode :
« find . type f exec grep toto {} \; print >resultat.txt ». Dans cet exemple, on cherche la chaîne toto dans le répertoire courant (le point).
Pour les PC, il ne faut plus utiliser fsdext2, mais explore2fs, programme composé d'un seul fichier pour win 9x ou NT, et qui se lance sans aucun paramétrage et qui n'interfère pas avec votre autre système. Ensuite, vous pouvez voir (et éventuellement écrire) vos fichiers texte avec notepad ou wordpad (mieux), vos fichiers gif ou jpg ou parcourir les arborescences.
Pour les Mac, deux solutions s'offrent à vous. (Merci à Etienne Herlent pour tout ce qui concerne le Mac)
La première et la plus ancienne est d'utiliser LinuxDisks. LinuxDisks permet l'accès en lecture et écriture aux partitions ext2fs depuis MacOS. ATTENTION : il existe 2 versions de LinuxDisks :
- LinuxDisks.10d6 (http://www.linux-france.org/article/materiel/mac/tc/LinuxDisks.1.0d6.sit)
- LinuxDisks.10d7 (http://www.linux-france.org/article/materiel/mac/tc/LinuxDisks.1.0d7.sit).
La version 10d6 n'est utilisable qu'avec les distributions de Linux antérieures à la mi-1998 où le système de ficher était en big endian (MkLinux DR2, par exemple).
La version 10d7 n'est utilisable qu'avec les distributions récentes (postérieures à mi-1998, comme MkLinux DR3, Linux PPC R4 et suivantes, ext2fs en little endian).
Ne vous trompez pas de version au risque de perdre totalement le contenu de vos disques Linux.
La deuxième solution est d'utiliser MountX. À la différence de LinuxDisks, MountX ne permet que l'accès en lecture et uniquement sur les systèmes de fichier en little endian. MountX est disponible à http://calvaweb.calvacom.fr/bh40.
Admettons que vous n'êtes pas la personne qui a installé Linux sur la machine et que vous ne connaissez pas le mot de passe de root.
Admettons par ailleurs que vous avez déjà quelques notions d'informatique, par exemple issues du monde Windows.
Admettons enfin que votre administrateur vous ait fait une configuration aux petits oignons où tout fonctionne correctement et où les droits ont été bien attribués.
Eh bien, votre situation est plutôt bonne, j'ajouterais excellente
Lorsque vous démarrez la machine, vous pouvez selon les cas arriver :
-sur une horrible ligne de commande marquée login. Tapez l'identifiant que l'administrateur vous a donné suivi de <Entrée>, puis le mot de passe suivi de <Entrée>. Si vous voulez le mode graphique, tapez « startx ».
-Sur un écran graphique où l'on vous demande votre identité et votre mot de passe. Même motif, même punition, mais sans Startx.
-Directement sur votre compte utilisateur et en mode graphique (système autologin). Vous n'aurez même pas de mot de passe à taper.
Si vous avez besoin de taper une commande (par exemple pour lancer un programme), vous avez plusieurs possibilités :
-passer sur une console de texte en faisant <Ctrl-Alt-F1>
-lancer un xterm (cherchez dans les menus) pour faire apparaître une console texte dans votre environnement graphique
-utiliser les astuces de votre environnement graphique (menu Exécuter, combinaison <Alt-F2>...)
Vous n'aurez généralement pas besoin de taper des commandes en entier (voir les astuces bash). Voyez aussi la rubrique sur les commandes.
Tapez « passwd <Entrée> », puis votre nouveau mot de passe (sachez que l'administrateur root pourra toujours aller chez vous).
Vous devriez avoir plusieurs écrans graphiques virtuels et plusieurs consoles de texte. Vous devriez également pouvoir travailler sur votre compte en utilisant n'importe quel autre ordinateur par des astuces d'exportation d'affichage. Vous pouvez changer la résolution en faisant <Ctrl-Alt-+> (le + du pavé numérique).
Si vous connaissez l'usage de la souris dans un autre environnement, vous ne serez pas dépaysé. La grosse différence vient du bouton central, standard sous Unix, et qui rend bien des services :
-Le copier-coller : vous surlignez en balayant une zone de texte bouton gauche enfoncé, et vous collez en cliquant du bouton central. TRÈS pratique.
-Les actions spécifiques ou les menus contextuels spéciaux : cliquez du bouton central sur la case d'agrandissement d'un programme sous KDE, cliquez du bouton central sur le bureau, sur un dossier dans Konqueror, bref, plein de fonctions en plus.
Il y a également des combinaisons Alt-bouton[gauche, central, droit].
Si vous n'avez pas de bouton central, vous devriez pouvoir l'émuler en cliquant simultanément sur les boutons gauche et droit. Si votre souris a une mollette, celle-ci devrait fonctionner dans à peu près tous les programmes et tenir lieu de bouton central en la cliquant.
Il fonctionne à peu près comme sur les autres systèmes. Il y a des différences au niveau de la gestion du VerrMaj, qui ne s'arrête que si l'on appuie une deuxième fois dessus, et qui ne s'applique généralement pas aux chiffres et à la ponctuation. En revanche, la combinaison <VerrMaj-Lettre_accentuée> donne une lettre accentuée majuscule. Vous aurez aussi des résultats intéressants avec la combinaison <AltGr-lettre_ordinaire>.
Vous devriez trouver facilement des programmes dans les menus du gestionnaire de bureau. Rien de différent des systèmes habituels. Si le programme dont vous avez besoin n'est pas installé et que vous n'avez pas l'administrateur sous la main, vous pouvez l'installer à partir des sources dans votre répertoire perso (il faudra simplement ajouter des « --prefix=/home/chez_moi » quand vous lancez le « ./configure »).
Comme sur tout système informatique, les données sont situées dans des dossiers et répertoires sous la forme de fichiers. Ces fichiers peuvent porter toutes sortes de noms, mais évitez les espaces, tirets, points d'interrogation, étoiles, etc. Bref, surtout des caractères normaux. Sachez aussi que les caractères majuscules sont différents des minuscules pour le système.
Grossièrement, vous pourrez lire ce qui se trouve sur le système, mais pas faire de modification. En revanche, vous ne pourrez pas lire ce qui se trouve chez les autres. Détails ici.
Sachez également que tous vos paramètres sont personnels. Vous pourrez changer les fonds d'écran, l'aspect des bordures de fenêtres, etc., cela ne gênera aucunement un autre utilisateur de la même machine qui l'utilise sous un autre compte. De plus, tous vos signets Internet, toutes vos adresses E-mail seront quelque part dans /home/chez_vous. Donc, un seul dossier à sauvegarder.
L'administrateur devrait s'être arrangé pour que vous puissiez lire un cd-rom ou imprimer, aller sur Internet...ou non ! L'idéal si vous n'êtes pas un spécialiste est que le montage des disquettes et cdroms se fasse par automontage. Sachez simplement que les disques n'apparaissent pas en tant que tels, mais comme des dossiers accrochés à l'arborescence principale, généralement dans /mnt.
Vous ne devez JAMAIS éteindre l'ordinateur directement. Utilisez les menus pour quitter le système proprement.
L'installation de périphériques sous Linux est un vrai problème.
Dans les bons cas (matériel courant et pas trop récent, distribution récente et auto-configurable), il n'y a rien à faire, ça marche tout seul.
Dans les cas un peu moins bons, le pilote du périphérique existe, mais il faut le trouver, par exemple sur le net. Il suffit généralement de suivre les indications du ReadMe ou du INSTALL pour y arriver. Le problème est souvent d'identifier quel est le VRAI nom de votre périphérique. Pour cela, plusieurs solutions selon les cas :
-cat /proc/scsi/scsi
-cat /proc/bus/usb/devices
-lspci -v
Ces commandes vous réserveront souvent des surprises concernant le vrai fabricant de votre matériel que vous croyiez être de grande marque.
-Dernier recours : le démontage. Vous démontez les capots, et vous cherchez à lire ce qui est écrit sur les puces ou les cartes.
Dans les très mauvais cas, il n'existe aucun pilote. À moins de l'écrire vous-même (désassemblage du pilote Windows, etc.), il vous reste la chance que votre périphérique soit proche d'un périphérique existant (même marque de composant, etc.). Dans ce cas, contactez l'auteur de ce pilote, expliquez-lui votre cas, et il est très possible qu'après changement de quelques paramètres, votre matériel fonctionne très honorablement. Les autres utilisateurs en seront ravis.
Et pourtant, il fonctionne, puisqu'il m'a servi à installer Linux.
Normal. Il n'est pas mounté (=Attaché, pour parler français). Vous pouvez le vérifier en tapant « mount » qui vous donne la liste des disques mountés.
Il faut créer un répertoire, dans lequel apparaîtra le cdrom lorsqu'il sera mounté. La plupart des distributions créent un répertoire /mnt/cdrom ou /cdrom. S'il y en a un, utilisez-le.
Au prompt, tapez :
« mount -t iso9660 /dev/cdrom /mnt/cdrom » (ou bien « /cdrom » selon le répertoire que vous aurez créé).
Si vous n'obtenez pas de message d'erreur, faites « cd /mnt/cdrom », puis « ls » ou « ls /mnt/cdrom », et vous devriez voir le contenu du cdrom.
Pour éjecter le cdrom, sortez du répertoire de montage, quittez toutes les applications lancées depuis ce répertoire, puis faites « umount /mnt/cdrom », puis appuyez sur le bouton d'éjection du CDROM (ou tapez « eject »).
Astuce : « umount /mnt/cdrom && eject ». Le && vérifie la réussite de la première commande. Une astuce à réutiliser dans d'autres circonstances.
Si ça ne marche pas, il faut vérifier l'existence de « /dev/cdrom » (« ls -l /dev/cdrom »), qui n'est rien d'autre qu'un pointeur vers /dev/mondisque (par exemple /dev/hdb pour un cdrom monté en 2° sur la première nappe ide (généralement D sous dos), ou /dev/scd1 : 2° scsi)
Une fois que tout ça marche, faites « vi /etc/fstab ».
Vous devez voir une ligne qui concerne votre cdrom, du genre :
/dev/cdrom /mnt/cdrom iso9660 noauto,ro,user 0 0 |
Le iso9660 est le système de fichiers standard des cdrom. « noauto » signifie que le cdrom ne sera pas mounté automatiquement au démarrage de Linux, « ro » signifie « lecture seule » (read only). Pensez à y rajouter « exec » si vous voulez que l'on puisse exécuter les programmes directement.
Si vous n'avez pas de /dev/cdrom, il est bon d'en créer un par « ln -s /dev/lebondisque /dev/cdrom ».
Si vous avez un /dev/cdrom, mais qu'il pointe sur un mauvais disque, détruisez le sans pitié (« rm /dev/cdrom »), puis recréez-en un bon (commande précédente).
Une fois le fstab correctement renseigné (sans avoir besoin de rebouter), il suffira de taper « mount /mnt/cdrom », et le tour sera joué.
Si vous êtes malin, créez un petit fichier de texte (disons « mountcdrom ») contenant :
#!/bin/bash #cette ligne renseigne le système sur votre interpréteur de commandes mount /mnt/cdrom |
Rendez-le exécutable (« chmod +x mountcdrom »). Une fois sous X, un clic sur ce fichier ou son raccourci mountera le cdrom. KDE et Gnome font ça en mode graphique. Ce truc peut être appliqué à n'importe quelle autre commande. Il s'agit d'un script shell.
Sous Redhat en mode graphique, le control-panel peut écrire le /etc/fstab à votre place et faire les mountages (méfiez-vous de la commande « format », qui formate, donc efface les disques sans prévenir !!). Kfstab le fait très bien aussi.
Attention ! Le mountage n'est possible que si vous ne vous trouvez pas dans le répertoire où vous voulez mounter (« device is busy »). Il peut exister des fichiers dans le répertoire de mountage, mais ils seront inaccessibles tant que le disque est mounté.
L'état de mountage des disques est enregistré dans /etc/mtab. Vous n'avez pas à y toucher.
Pour que les utilisateurs ordinaires puissent mounter le cdrom, vous devez rajouter « users » (le nom du groupe par défaut) et « unhide » à la ligne « cdrom » du « fstab ».
Ça donne :
/dev/cdrom /mnt/cdrom iso9660 noauto,ro,users,unhide |
Tant que vous y êtes, « exec » et « norock » peuvent servir.
Encore un piège : si vous avez mal booté (en général par loadlin à partir de win95), votre cdrom peut ne pas être détecté par le BIOS (voir dmesg). Dans ce cas, relancez loadlin à partir de dos, ou boutez à partir de LILO.
Dernier piège : le mountage n'est possible que si le système de fichiers utilisé (iso9660) est connu du noyau. Si le message d'erreur indique « file system non supported by kernel », recompilez ou lancez le module (« modprobe isofs ») !
Des informations intéressantes en faisant « cat /proc/ide/hda/settings » (disques IDE).
Ces disques sont gérés automatiquement dès l'installation par la plupart des distribs récentes.
Votre disque apparaîtra comme hde (Les 4 premières lettres sont réservées aux 4 premiers connecteurs IDE)
Pour faire marcher un disque dur ata100 il faut que le noyau supporte le chipset pci ata100 de la carte mère.
« make menuconfig »
IDE, ATA and ATAPI block device > Generic PCI IDE bus master support > « sélectionner le chipset de la carte-mère »
Par exemple :
HPTblabla pour les cartes meres ABIT KT7-raid
VIA82CXXX pour les cartes-mères ASUS A7V et A7V133
Certaines distributions reconnaissent le ata100 dès l'installation : Redhat 7.1, Slackware-current (avec la disquette boot ata100 ou emuscsi), Mandrake 8.0, en fait, toutes les distribs qui ont le noyau 2.4.x ou un ancien noyau patché.
La plupart des distribs règlent l'accès disque dur sur 16 bits pour les disques IDE.
Vous pouvez vérifier avec la commande : « hdparm -c /dev/hda »
Le débit obtenu peut être vérifié par : « hdparm -t /dev/hda »
Vous forcez l'accès 32 bits par : « hdparm -c 1 -d 1 /dev/hda » (manoeuvre inverse : mettre 0 au lieu de 1). Si ça ne marche pas, c'est que vous n'avez pas le support PCI bus-master DMA compilé dans le kernel.
Vérifiez le nouveau débit. Chez moi, je passe de 3.29 MB/sec à 12.55 MB/sec. Ça vaut le coup, et ce n'est pas cher.
Tant que vous y êtes, mettez carrément
hdparm -X66 -c1 -d1 -m16 -k1 /dev/hda |
dans un fichier de démarrage, comme /etc/rc.d/rc.local.
Attention ! Ces manipulations sont dangereuses, particulièrement le mode DMA. Elles peuvent sur certaines machines ralentir les accès, ou totalement corrompre le disque ou la table de partitions, essentiellement avec un ancien chipset buggué. Vérifiez si vous n'avez pas un VIA VP2 en faisant « lspci -v ». Faire une sauvegarde générale avant !! Et lisez attentivement « man hdparm ».
Astuce : ça marche aussi sur les Mac.
Astuce pour récupérer un disque mal formaté :
Bootez sous Demolinux, tomsrtbt ou équivalent et tapez « dd if=/dev/zero of=/dev/hda ». Il sera tout beau tout neuf, prêt pour une nouvelle installation.
Les commandes sont mkswap et swapon. Plus de détails : notre copain man.
Astuce : si vous avez 2 disques, mettez le swap sur l'autre disque. Vous accélérerez nettement le système (un disque lit pendant que l'autre écrit).
Autre astuce : vous pouvez utiliser un fichier de swap :
Fabriquez-le avec la commande « dd if=/dev/zero of=/fichier_swap bs=1024 count=65536 » (pour un fichier de 64 Mo dans cet exemple). Formatez-le : « mkswap /fichier_swap ». Montez-le : « swapon /fichier_swap ». Vous pouvez aussi rajouter une ligne dans le /etc/fstab pour que son utilisation soit automatique. Vérifiez par « free » ou « swapon -s ».
Pareil que le cdrom. La différence est le nom (fd0), et le type de fichier : vfat pour le format win95, ext2 pour le format Linux, hfs pour les Mac (ex : « mount -t vfat /dev/fd0 /mnt/floppy »).
Astuce : mettez « auto » dans votre fstab pour monter la disquette quel que soit son formatage.
Pour formater une disquette : « mkdosfs /dev/fd0 » pour DOS ou « mke2fs » pour Linux. Sinon, les outils en mode graphique de X.
Pour DOS, vous pouvez aussi installer les mtools, et taper les commandes standards de DOS en rajoutant « m » devant (« mcopy », « mformat a: »...)
Pour copier un fichier vers la disquette : « cat monfichier >/dev/fd0 » (le signe « > » fait une redirection).
Le fichier est plus gros que la disquette ? Ce n'est pas grave ! Faites « tar cvMf /dev/fd0 mongrosfichier » (rajoutez « z » si vous voulez la compression en plus ; le M signifie multi et l'ordre des lettres n'a pas d'importance). Suivez les instructions. (La disquette ne doit pas être mountée et n'a pas besoin d'être formatée). Ne vous affolez pas si, ensuite, vous ne pouvez pas mounter ces disquettes.
Pour restaurer les données : placez-vous dans le répertoire de destination (« cd le_rep »), et lancez « tar xvMf /dev/fd0 » avec la disquette n°1 dans le lecteur. Rajoutez « z » pour dézipper le cas échéant, ou « y » pour du bz2. Suivez ensuite les instructions.
Autre possibilité : la commande split pour couper un fichier en rondelles : « split -b 1400k fichier_a_couper nom_final ».
Pour restaurer : « cat nom_finala > fichier_a_couper », puis « cat nom_finalb >> fichier_a_couper ».
ATTENTION ! Sur les PC, il faut umounter la disquette avant de l'éjecter si elle était mountée (sauf en cas d'utilisation d'un système d'automontage)!!
Astuce ! pour formater bas niveau une disquette : « fdformat /dev/fd0H1440 ». Faites ensuite un formatage haut niveau normal.
Re-astuce ! pour formater des disquettes à plus de 1,44Mo :
« mknod /dev/fd0H1600 b 2 125 »
« mknod /dev/fd0H1680 b 2 44 »
« mknod /dev/fd0H1722 b 2 60 »
puis « fdformat /dev/fd0H1680 » par exemple.
Formatez haut niveau ensuite.
(astuce glanée sur fr.comp.os.linux.configuration) Attention ! maintenant, c'est fd0u.
Quittez les programmes que vous avez lancés en étant placé dans le répertoire de mountage. Placez-vous plus haut dans l'arborescence (cd ..).
Vous avez peut-être lancé un programme ou X en étant placé dans le répertoire de mountage. Dans ce cas, quittez le programme ou X, quittez le répertoire et vous pouvez umounter.
Pour savoir qui se sert de votre cd rom :
« fuser -vm /mnt/cdrom/ »
Pour savoir quel est le processus qui l'utilise : « lsof ».
Pour le démonter en force :
« fuser -kvm /mnt/cdrom/ » (tue les process qui accèdent au répertoire).
Si un autre ordinateur a mounté votre disque par NFS, il faudra d'abord qu'il le démonte, puis le démonter en local par « umount -avt nonfs /mnt/cdrom ». Autre possibilité (moins élégante) : arrêter NFS.
Autre possibilité : une opération est en suspens (par exemple une écriture sur la disquette, faite provisoirement dans un cache), et le seul fait de fermer un xterm ou un file manager (par exemple kfm) ne réalise pas l'écriture. Il faut alors revenir dans le répertoire monté, et en sortir proprement pour obliger l'opération à se terminer. Vous pouvez également forcer les écritures en suspens sur le disque avec la commande « sync ».
Encore une possibilité : si votre cdrom est monté automatiquement au démarrage et qu'il est présent dans le tiroir pendant le démarrage, vous ne pourrez pas le démonter (ce qui peut être un avantage si vous ne voulez pas qu'on vous le vole). Pour éviter cet ennui dont l'origine est difficile à déterminer, rajoutez « noauto » dans le /etc/fstab ou bien démarrez sans cdrom dans le tiroir.
Pour gagner du temps, tout ce qui le veut bien peut être démounté d'un seul coup en tapant simplement « umount -a ».
Pour démonter et éjecter en une seule opération : « eject » (si le démontage est possible).
Le SCSI est plus souvent présent dans nos PC qu'on ne le croit. Bien sûr, il y a la classique carte SCSI, qui supporte toutes sortes de périphériques : disque dur, graveur, scanner, etc. Mais il y a aussi tous les SCSI cachés : zip parallèle, disquettes flash, scanners parallèles, scanners USB, etc. Donc, même si votre PC est « tout IDE » vous ferez rarement l'économie d'un module SCSI dans votre noyau.
Une des principales avec le SCSI concerne la numérotation des périphériques. Les périphériques étant numérotés dans l'ordre où ils sont trouvés au démarrage, cette numérotation est difficile à prévoir. Il faudra souvent faire des essais. Encore plus gênant, si vous avez des périphériques amovibles, leur présence/absence au démarrage modifiera le numéro des périphériques suivants. Ennuyeux si vous avez précisé un nom de device dans votre /etc/fstab par exemple (ce problème est exactement le même sur les autres O.S.).
Vous pouvez lister les périphériques SCSI disponibles avec la commande magique « cat /proc/scsi/scsi ».
Certaines cartes ont besoin d'initialisation au démarrage. Voici la méthode utilisée par Michaël pour sa Tekram DC395 :
1) Dans /etc/modules.conf ajouter :
alias scsi_hostadapter dc395x_trm options dc395x_trm dc395x_trm=7,5,1,32 |
2) Créer une nouvelle image.
Se placer dans le répertoire /boot/ puis taper :
« mkinitrd initrd-tekram.img numero.de.version.du-noyau » (ex. 2.4.18-6mdk)
3) Ajouter une entrée dans LILO, qui pointe sur la nouvelle image. Dans /etc/lilo.conf ajouter :
image=/boot/vmlinuz label=Linux-Tekram root=/dev/hdb1 initrd=/boot/initrd-tekram.img read-only |
4) Mettre à jour LILO sur le secteur de boot. À la ligne de commande, taper « /sbin/lilo »
Sous X, dans la distribution Redhat, le modemtool lancé par le control-panel fait ce réglage très facilement.
Sinon, si c'est un modèle reconnu, vérifiez qu'il existe un fichier « /dev/modem » pointant sur « /dev/ttySx », où x vaut entre 0 et 3 (0 pour com1, 3 pour com4). « ls -l /dev/modem » devrait vous renseigner. S'il pointe vers un mauvais port série, détruisez-le (« rm /dev/modem »), et recréez-en un par « ln -s /dev/ttyS1 /dev/modem » par exemple. /dev/ttySx remplace maintenant /dev/cuax. Sur les noyaux 2.4, les ports série s'appellent /dev/tts. On n'arrête pas le progrès !
Si votre port série a un irq atypique (c'est souvent le cas pour les ttyS2 et les ttyS3), vérifiez que l'irq est bien affecté : « setserial /dev/ttySx ». Si l'irq ne correspond pas, faites « setserial /dev/ttySx IRQ y ». Si tout marche ensuite, recopiez cette ligne dans /etc/rc.d/rc.serial (les fichiers rc sont généralement des fichiers de paramétrages). Elle se lancera toute seule au prochain démarrage.
Pour lister les IRQ utilisées : « cat /proc/interrupts » (« cat » utilisé sans « > » dirige ses résultats vers la sortie standard, c'est-à-dire l'écran).
Si vous avez un « winmodem », sorte d'émulation Windows de modem, il existe des pilotes pour certaines marques, que vous pourrez trouver sur http://www.linmodems.org. Si vous ne trouvez pas votre bonheur, achetez un vrai modem.
Les chips Lucent ont un pilote spécial qui marche bien.
Les Kortex à base de PCTel aussi http://www.medres.ch/~jstifter/pctel/.
Les Olitec PCI ont un pilote précompilé pour certaines versions du noyau, ce qui fait qu'il ne vous servira sans doutes jamais à rien. Un superbe travail inutile.
Les winmodems à base de chipset Rockwell/Conexant HSF dont le Olitec, ont un pilote compilable (non libre) ici : http://www.mbsi.ca/hsflinux/. Le paramétrage se fait par « hsfconfig ».
Les Winmodems HCF ont maintenant un pilote ici : http://www.mbsi.ca/hcflinux/.
Pour les fonctions spéciales (module autonome...), on commence à trouver des pilotes pour les US Robotics et Olitec (http://www.olitec.com et http://golix.free.fr). Pour les Self Memory, vous pouvez utiliser le programme kolitec (http://perso.wanadoo.fr/australia99/kolitec).
Pour les modems USB, créer un lien par « ln -s /dev/usb/ttyACM0 /dev/modem », puis « modprobe acm ».
Il est possible d'utiliser un modem ADSL : voir là : http://infolibre.free.fr/adsl/adsl.html.
Les boitiers ADSL installés par France Telecom marchent sous Linux... La connexion s'effectue grâce au un client VPN,compatible avec les réseaux virtuels 95. Sous Linux le module pptp (remplacé maintenant par pppoe) se charge de ces connexions.
Je vous conseille une authentification CHAP, qui vous permettra d'accélérer les négociations PPP - Wanadoo s'attend à une authentification CHAP. (Infos piquées à Tranx Nouvel).
L'ADSL s'installe sur une carte réseau. Le programme pptp lance une connexion ppp, que vous pourrez voir par « ifconfig » (support ppp obligatoire dans le noyau). L'ADSL How-to est assez clair et complet.
Le modem Speedtouch USB Alcatel a un pilote ici : http://www.alcatel.com/consumer/dsl/tgz.htm. Les informations pour l'installer sont là : http://linux-usb.sourceforge.net/SpeedTouch/.
Un autre driver, developpé initialement par Benoit Papillault (et depuis rejoint par d'autres) est disponible ici : http://benoit.papillault.free.fr/speedtouch/user.html.
Celui ci, qui présente l'intérêt d'être sous licence GPL, fonctionne vraiment très bien, à partir du noyau 2.2.17 - et sans avoir à recompiler.
On m'a aussi donné des infos sur les modems ADSL 3com. Il faut renoncer à l'USB et les faire fonctionner en Ethernet.
Pour Macintosh, rendez-vous sur le site http://guillaume.rince.free.fr/informatique/adsl/adsl.html
Bien entendu, vous pouvez aussi bénéficier de Numéris sous Linux.
Vous devriez vous en sortir avec kisdn.
Vos paramètres se trouveront dans /etc/isdn. La plupart des cartes sont supportées.
Les meilleures informations sont à http://www.linux-france.org/article/connex/ISDN
Pour vous raccorder à NOOS et cie
La connexion par câble se fait par une carte ethernet munie d'une prise RJ45. Le « Modem-câble » auquel la carte réseau est raccordée est en fait un serveur DHCP.
Tout ce que vous avez à faire est de paramétrer votre carte réseau pour être client DHCP (avec linuxconf par exemple). Redémarrez le réseau par « /etc/rc.d/init.d/network restart ». Un « ifconfig » devrait vous montrer l'interface eth0 et son adresse IP.
Ensuite, configurez les serveurs DNS pour éviter de taper les IP. Écrivez quelque chose comme ça dans votre /etc/resolv.conf :
domain cybercable.fr nameserver 212.198.0.66 nameserver 212.198.0.67 search cybercable.fr |
Ensuite, les serveurs de mails entrants et sortants, serveurs de news en fonction des paramètres fournis par votre fournisseur d'accès au câble.
On me signale que Wanadoo câble ne nécessite que l'activation d'un client DHCP pump (en standard sous Debian). Tout est ensuite automatique.
La connexion câble peut très bien être partagée avec un réseau local par ipchains.
Cherchez un fichier son (« find / -name *.au » (ou .wav)). Placez-vous dans son répertoire (« cd »), puis tapez « cat fichierson.au >/dev/audio ». Autre possibilité : cherchez un fichier .wav et tapez « play monson.wav ». Il sort un son ? Bravo !
Il ne se passe rien ? Tant pis ! tapez « sndconfig » (RedHat), et suivez la procédure. Ça marche ? génial ! Toujours pas ? Il va falloir compiler le noyau. Trouvez une bonne doc (kernel how-to). Attention ! La commande « sndconfig » ne marche que si votre carte son est compilée en module. Si vous la mettez directement dans le kernel, il faudra lui passer les IRQ (vous savez, le plug and play...) au boot. De plus, il faudra supprimer les références au son dans /etc/modules.conf.
Astuce ! Avant de lancer sndconfig, activez tous les périphériques que vous possédez : carte réseau, zip, modem, souris ..., de manière à ce que leur IRQ soit connue du système comme utilisée (vérifiez par « cat /proc/interrupts »). De cette manière, sndconfig attribuera une IRQ vraiment libre à votre carte son et vous ne risquez pas un conflit au prochain démarrage.
Si le son est faible, augmentez-le avec xmixer.
Si la carte son est en module, le fichier /etc/modules.conf devrait contenir quelque chose comme ça :
alias sound sb pre-install sound insmod sound dmabuf=1 alias midi opl3 options opl3 io=0x388 options sb io=0x240 irq=5 dma=3 dma16=7 mpu_io=0x300 |
Pour ces cartes à base de i810 :
alias sound-slot-1 i810_audio
Une bonne raison pour que ça ne marche pas : le /etc/modules.conf peut contenir « alias char-major-14 off ». Remplacer off par sound.
Enlevez les # sur les lignes qui vous correspondent. Puis « modprobe sound ».
Si le pilote standard (OSS) ne vous plaît pas, essayez alsa. Il est nécessaire pour certains programmes, et, de plus, supporte le « full duplex » (son dans les 2 sens).
Procurez-vous la dernière version (0.9rc actuellement) d'alsa à ftp://ftp.alsa-project.org/pub/driver/, normalement présente dans votre noyau.
Commencez par désactiver le module son s'il était installé (vérifiez par « lsmod », puis retirez-le par « modprobe -r le_module_de_son ». Sachez que le support son doit être activé dans le noyau, mais pas en module.
Mettez quelque part (/tmp ou /usr/src par exemple) les 3 fichiers archives (alsa-driver, alsa-lib et alsa-utils). Dézippez-les et placez-vous dans le répertoire alsa-driver. Faites le cérémonial classique : « ./configure && make && make install ». À ce moment, vous devriez avoir tout un tas de snd-xxx dans votre /lib/modules/2.???/misc/. Faites de même avec alsa-lib et alsa-utils.
Placez-vous dans alsa-driver, et tapez « ./snddevices » pour installer les /dev/xxx.
Faites ensuite « modprobe snd-card-ens1371 » (remplacez bien sûr la fin par votre modèle de carte son). Confirmez que tout va bien par « lsmod ». Réglez le son par « alsamixer ». N'oubliez pas de supprimer tous les « m » en haut de colonne en tapant sur « m » (m signifie muet). Complétez par « modprobe snd-pcm-oss » pour obtenir une compatibilité avec tous les programmes qui réclament OSS. Vous pouvez maintenant effacer les fichiers et répertoires qui vous ont servi à faire l'installation.
Modifiez la ligne du /etc/modules.conf, par exemple en la remplaçant par
alias sound snd-card-ens1371 |
Vous pouvez aussi demander à « alsaconf » de faire tout ça à votre place.
Attention ! Avant de conclure que ça ne marche pas, pensez à mettre le volume, et annuler le mute ! (amixer ou alsamixer).
Pour mémoriser les réglages d'alsa :
« alsactl store card1 » pour stocker les réglages dans /etc/asound.conf
puis les rappeler a chaque démarrage par
« alsactl restore card1 » (card1 pour la carte son numéro 1) - Merci à Michel Primout pour l'info.
Autre possibilité : le programme amixer, qui paramètre tous les réglages en ligne de commande (syntaxe « amixer set nom_du_groupe niveau »), où les valeurs de niveau sont entre 0 et 255, et « amixer groups » pour voir les noms de groupes disponibles. Plus de détails : « man amixer ». Il vous suffit de recopier la ligne qui va bien dans le fichier rc.locale pour que vos réglages soient restitués à chaque démarrage. (d'après Yves Schmitt).
Chez moi, cette manip a transformé ma SB 64 asthmatique en vraie carte son :-). Problème : alsamixer oublie les réglages d'une session à l'autre. Utilisez plutôt kmix (KDE). Merci à Thibaut COUSIN pour ces précisions.
Problème avec KDE : la gestion du son est réservée à arts, qui en monopolisant la carte son, empêche certains programmes qui ont besoin d'un accès direct au matériel de fonctionner. Dans ce cas, vous devrez lancer votre programme en faisant précéder son nom de « artsdsp ».
Énormément d'explications sur le son (en anglais) ici : http://www.linuxsound.at.
Ça ne marche toujours pas ? Changez de carte son...
Beaucoup de programmes disponibles sur Internet. Grecord (de Gnome) est très simple et souvent préinstallé (basé sur sox).
Pour le mixage et l'édition : Audacity (http://audacity.sourceforge.net/).
Placez un CD dans le lecteur. Lancez un programme de lecture de CD (kscd, xplaycd, cdp...). Vérifiez qu'il pointe vers le bon disque (/dev/hdb p.ex). Il ne faut pas mounter le cdrom. Si ça ne marche pas, lisez les messages d'erreur (vous obtiendrez plus de messages exploitables si vous lancez le programme à partir d'un Xterm). À noter que tous les lecteurs de cd audio utilisent le système CDDB, ce qui vous permet de bénéficier de l'affichage des titres si vous êtes raccordé à Internet. Si les titres de votre disque sont inconnus, vous pouvez toujours les rajouter pour en faire profiter les autres.
Dernière minute ! CDDB refuse les connexions des lecteurs de CD non homologués. Ils conservent donc tout votre travail sans retour. Du fait de ce scandale, il faut boycotter CDDB.
Sachez aussi que pour les CD audio, la carte son n'a pas besoin d'être configurée si vous avez un lecteur qui intègre le décodeur CD-audio (le cas de la plupart des lecteurs de pc de bureau).
Si vous n'avez pas de câble audio, vous pouvez lire vos cd audio avec xmms en le faisant pointer sur le vrai device, /dev/hdc par exemple et pas /dev/cdrom.
(Rubrique écrite par D.Trystram)
Un site de référence pour tout ce qui concerne le son sous Linux est http://www.linuxsound.at.
Pour numériser le son (et donc de la musique) sous Linux, le logiciel à utiliser est gramofile http://panic.et.tudelft.nl/~costar/gramofile. Il est nécessaire de se procurer un câble pour relier votre chaine stéréo à votre carte son (2 fils pour droit et gauche avec prise jack à la sortie de l'amplificateur [rec mais d'autres possibilités sont probablement utilisables, éviter toutefois les sorties frontales de l'amplificateur en général réservées aux casques] se terminant en 1 prise jack à connecter sur votre carte son).
Régler le niveau d'entrée avec xmixer (igain ainsi que les autres boutons de réglage de volumes) en s'aidant du vu-mètre d'enregistrement de gramofile (et en enregistrant vers un fichier ou /dev/null dans un premier temps). Tester donc. Les deux temps suivant consistent à découper le fichier (au format wav) d'une face en autant de fichier que de morceau, puis de filtrer (là encore faire des essais pour obtenir le résultat optimal). Enfin éventuellement vous pouvez les transformer en fichiers moins volumineux tel du mp3 (utiliser alors par exemple bladeenc http://bladeenc.mp3.no/ ). Attention ! Comme toujours, ces copies ne sont autorisées qu'à titre personnel pour des sauvegardes. Sox permet aussi bon nombre de conversions par ailleurs.
Attention ! Gérer le son nécessite d'avoir pas mal d'espace disque. Le fichier wav d'une face de disque (33 tours) occupe environ 220 à 250 Mo, autant alors pour les fichiers fils découpés et filtrés ; les fichiers mp3 faisant alors 10 à 15 % de cette taille, soit 4 à 6 Mo pour un morceau de 3-4 minutes.
D'abord la connexion. Sous Linux, les ports parallèles s'appellent lp0, lp1... Depuis les noyaux 2.2, les numéros de lp ne dépendent plus de l'adresse, mais simplement de l'ordre dans lequel ils sont trouvés. Si vous n'en avez qu'un, il s'agira toujours de lp0.
Sur Redhat, lancez le printtool, disponible dans le control-panel. Si votre imprimante est listée, vous êtes sauvé ! Si c'est une win-imprimante, vous êtes foutu ! Autrement, vous devriez pouvoir au moins imprimer en mode texte en choisissant une imprimante dans la liste, par exemple en faisant « cat /etc/printcap >dev/lp0 ». Sur Corel et Suse, les utilitaires sont faciles à trouver et à utiliser.
La plupart des imprimantes ne reconnaissent pas le retour chariot comme une fin de ligne (phénomène des marches d'escalier) ni la fin de page. Le printtool y remédiera.
D'une manière générale, sachez que c'est le fichier /etc/printcap qui enregistre les paramètres. Lisez un bon « Howto ».
Voici un exemple commenté :
##PRINTTOOL3## LOCAL bjc600 360x360 a4 {} BJC600 1 1 #ici est la résolution et la correction des marches d'escalier (pas de correction = 8 au lieu du deuxième 1) et le signal de fin de page (pas de signal « {} » au lieu du deuxième 1) bjc4300|lp:\ #le nom de votre imprimante. Tous les noms séparés par des | sont équivalents. « lp » est l'imprimante par défaut. :sd=/var/spool/lpd/lp:\ #ici le répertoire de spool (file d'attente) :mx#0:\ #ici la taille limite de fichier imprimable. 0=pas de limite. :sh:\ #attention ! rien après les « \ », même pas d'espace !! :lp=/dev/lp0:\ #ici votre port parallèle :if=/usr/local/bin/bj200-filter: |
Vous constatez que le printcap fait appel à un filtre, bj200-filter, qui travaille avec magicfilter (il y a aussi apsfilter et d'autres). Ce filtre est un fichier capable de traduire les fichiers (jpg, ps,...) en langage imprimante, souvent en faisant appel à des ressources extérieures.
Voilà une partie du contenu du filtre bj200-filter :
#! /usr/local/bin/magicfilter # PostScript 0%!filter/usr/bin/gs -q -dSAFER -dNOPAUSE -r360 -sDEVICE=bjc600 -sOutputFile=- - |
Vous constatez que dans ce cas, il identifie un fichier comme PostScript quand il commence par « %! », qu'il invoque gs pour le traiter, avec comme type de device bjc600 (filtre commun à plusieurs modèles). Vous pouvez connaître tous les noms de filtres en tapant « gs -h ». Pour savoir lequel est bon pour vous, lisez la doc de GhostScript.
# TeX DVI0 \367\002 reject Cannot print DVI files on this printer. # compress'd data 0 \037\235 pipe /bin/gzip -cdq |
Un autre exemple de solution à un problème
Après avoir installé Corel Linux, j'ai rencontré le problème suivant lors de l'installation de mon imprimante Stylus Color (640) :
chaque impression commençait par : « No filename for parameters given. Assume stcany ».
Le problème a été résolu en éditant le fichier etc/printfilters/ps-to-printer.fpi
puis en inhibant la commande « echo » que ce fichier contenait ligne 73
(en ajoutant un # au début de cette ligne) et en enregistrant ce fichier ainsi modifié.
Cette solution à un problème concret (de Francis Lenne) ne vous concerne peut-être pas, mais elle a le mérite de montrer comment et où il faut creuser. L'avantage d'un système où tous les paramètres sont en mode texte permet à un individu pourvu d'un peu de jugeote et d'un bon éditeur de texte de corriger les erreurs des automates.
Lancer une impression : « lpr -Pbjc4300 fichier.ps ». Dans ce cas, votre imprimante s'appelle bjc4300 dans le /etc/printcap. Notez le P collé au nom de l'imprimante. L'imprimante lp est prise par défaut. Il suffit donc le plus souvent de faire « lpr fichier.ps ».
Pour savoir ce qui se passe au niveau des impressions : « lpq »
Pour lancer le support port parallèle : « modprobe lp ».
Pour activer le serveur d'impression : « lpc up lp » s'il n'a pas été lancé au démarrage.
Pour supprimer les impressions en attente : « lprm -a » (a pour all)
Arrêter une impression : « lpc -clean all ».
Démarrer le serveur d'impression à chaud : « /etc/rc.d/init.d/lpd start » (Redhat). Marche aussi avec restart, status ou stop. Ce système peut être employé pour démarrer ou arrêter n'importe quel service à chaud. Certains reboutent pour faire ce genre de choses...
Si le port parallèle ne veut pas fonctionner, vérifiez que le /etc/modules.conf contient bien « alias parport_lowlevel parport_pc ».
Pour imprimer ce superbe document que vous venez de faire avec Star office ou WordPerfect, allez à la section des programmes à problèmes.
Certaines distributions remplacent le classique système d'impression BSD par CUPS (Common Unix Printing System). Eh bien, ça a l'air de fonctionner, puisque CUPS sur Mandrake 7.2 a été la première distrib Mandrake à installer correctement ma Canon BJ 4300 sans aucune bidouille. Astuce pour Staroffice à la rubrique Staroffice.
Pour la configuration « à la main », lancez le service cups (« service cups start ») et saisissez dans un navigateur « http://127.0.0.1:631 » (nécessite l'activation de la boucle locale lo).
Pour les imprimantes HP, il y a un pilote disponible à http://hpinkjet.sourceforge.net.
Si la souris (roulette ou non) se fige au lancement de X, vérifiez déjà qu'elle fonctionne en mode « console », tout simplement en la remuant. Si oui, vérifiez vers quoi pointe /dev/mouse (« ls -l /dev/mouse »). Vous devriez trouver dans XF86Config le même « device ». Sinon, changez-le !
Pour lancer correctement gpm, identifiez la bonne commande en faisant « gpm -t ». Vous y trouverez votre type de souris. Lancez alors « gpm -t imps2 » par exemple, selon votre modèle.
Il existe aussi des conflits entre gpm (le gestionnaire de souris en mode console) et X.
Dans ce cas, désactivez-le en faisant « gpm -k » avant de lancer X. Sous Slackware, il y a un bug dans certaines livraisons : dans rc.local, on doit enlever le -R dans la ligne gpm -m /dev/mouse -t PS2.
Dans certains cas de figure, la souris se bloque en haut de l'écran au lancement de X. Ceci peut se résoudre en lançant « startx -kb », ou en décommentant XkbDisable dans le XF86Config. Dans ce cas, vous aurez sans doutes des problèmes avec le clavier sous X.
On ne doit plus utiliser le programme imwheel, astuce permettant d'émuler les flèches haut/bas avec la roulette, car la fonction roulette est gérée directement par les programmes modernes.
Sous emacs (mode X uniquement), insérer un
mouse-wheel-mode 1 |
dans le fichier ~/.emacs et relancer emacs (ou le charger avec load-file)
Recopiez ces lignes au lieu des précédentes
Option "Device" "/dev/mouse" Option "Protocol" "Auto" Option "Buttons" "N" Option "ZAxisMapping" "N1 N2" |
Si vous démarrez X automatiquement, rajoutez « imwheel -k » dans /etc/X11/xdm/XSession. Le « -k » vérifie qu'une autre instance d'imwheel n'est pas active et la tue avant de relancer imwheel.
Cas des souris Logitech à logo noir : la roulette a besoin du programme Enable_Logitech_Wheel (à lancer dans xinit). Ensuite, ça marche comme une Mouseman. (merci à Jean-Noël Avila).
Exemple de la souris « Cordless Wheel Mouse » à roulette (merci à Claude Mahé) :
Section "InputDevice" Driver "mouse" Identifier "Mouse[1]" Option "BaudRate" "1200" Option "Device" "/dev/psaux" Option "Name" "CORDLESS WHEEL MOUSE" Option "Protocol" "imps/2" Option "Vendor" "LOGITECH" Option "Buttons" "5" Option "ZAxisMapping" "4 5" EndSection |
Astuce !! Si vous n'avez pas de souris ou pour toute autre raison, vous pouvez l'émuler sous X en tapant <Ctrl-Maj-VerrNum>. Ensuite, utilisez le pavé numérique pour déplacer le pointeur. Même commande pour annuler.
Problème de la souris invisible mais active (avec les cartes S3) : sw_cursor.
Dernière minute ! Il vaut mieux ne plus installer Imwheel, qui n'est qu'un pis-aller (il ne fait qu'intercepter les ascenseurs destinés aux flèches du clavier pour les rediriger vers la souris). Ce logiciel peut gêner les programmes qui gèrent nativement la souris roulette (la plupart des versions récentes). Dans ce cas, vous n'avez besoin que de ZAxisMapping.
Les périphériques de sauvegarde sont généralement supportés. Le Zip Iomega entre autres. Vous devez faire un « modprobe ppa » pour activer le module et renseigner le /etc/fstab, avec une ligne comme : « /dev/hdc /mnt/zip vfat noauto,users,defaults 0 0 » (si le zip est en 1er sur la deuxième nappe ide=« hdc ». Sinon, remplacez hdc par la bonne valeur, et si vous voulez que le groupe « users » puisse faire ce mountage). L'insertion du module se fera automatiquement si vous rajoutez dans votre /etc/modules.conf la ligne :
alias block-major-8 ppa |
(Vous déterminerez ce nombre en faisant un « ls -l /dev/sda4 », astuce de Christophe Demko). Pour les curieux, sachez que les descripteurs de périphériques sont de type bloc (disques, file systems) ou char (cartes son, TV...)
Ensuite, un « mount /mnt/zip » vous donnera accès au zip en lecture et écriture (si vous voulez l'exécution, rajoutez « exec », comme pour les cdrom).
Pour le zip parallèle, le noyau doit supporter le scsi (car ce zip fonctionne comme du scsi), le port parallèle et imm ou ppa. Sur les 2.2, l'imprimante peut fonctionner en même temps que le zip à condition que le module ppa ait été lancé avant le module imprimante. Faites « rmmod lp », puis « mount -t vfat /dev/sda4 /mnt/zip » après avoir créé un répertoire zip (« mkdir /mnt/zip »), puis à nouveau « modprobe lp ».
Il faut rajouter dans /etc/modules.conf :
alias parport_lowlevel parport_pc options parport_pc io=0x378,0x278 irq=7,auto « #L'IRQ est obligatoire pour le zip. |
Les nouveaux modèles de zip parallèle (depuis mi-98) utilisent imm au lieu de ppa.
Si votre zip est formaté en ext2, utilisez « sda1 » au lieu de « sda4 » (Windows commence ses formatages par la fin !).
Si après acceptation de « modprobe ppa » et détection du disque, le mountage est impossible, il s'agit sans doute d'un mauvais formatage, par exemple dû à l'outil standard de Windows. Reformatez-le avec l'outil Iomega sous Windows.
Autre possibilité : si vous avez une carte SCSI, tous les disques raccordés à cette carte seront numérotés avant le zip parallèle. Par exemple, si vous avez un disque dur SCSI, votre Zip s'appellera /dev/sdb4.
Pour savoir la liste des modules chargés : « lsmod ».
Quand votre zip parallèle fonctionnera correctement, vous pouvez toujours installer gtkzip, superbe petit programme qui fait plein d'opérations en mode graphique. Encore mieux : lomega (avec un « l », pas un « i »).
Si ça ne veut pas marcher malgré tout, il doit s'agir d'un problème de port parallèle, car ceux-ci ne sont pas semblables sur toutes les machines. Voir le zip-how-to.
Emmanuel Gaillard de l'ABUL nous donne la solution :
Celui-ci fonctionne sur Mandrake 7.0.2 mais pas avec Red-Hat 6.1. Il est utilisé comme un disque amovible vu qu'il est sur un port IDE.
Il est possible de booter dessus si le BIOS le reconnaît, mais une fois sous Linux on ne peut pas à ma connaissance s'en servir.
Je n'ai pas eu l'occasion d'essayer avec d'autres distribs.
Ex sous Mandrake 7.0.2 :
Créer un dossier /mnt/ls
Si le lecteur est en esclave sur le premier contrôleur ide, ajouter cette ligne dans /etc/fstab :
/dev/hdb /mnt/ls auto sync,user,noauto,nosuid,nodev,unhide 0 0 |
Ensuite pour monter le lecteur, insérer indifféremment une disquette standard ou 120Mo et taper : « mount /mnt/ls »
Il s'agit d'une sorte de disquette japonaise de 640 Mo branchée sur PCMCIA. Ne me demandez aucun détail, la spécialiste du bidule est Emmanuelle.
-le driver s'appelle nsp_cs et a été fait par un japonais. On le trouve sur http://www.netlab.is.tsukuba.ac.jp/~yokota/izumi/ninja/
-il suffit ensuite de modifier la Makefile selon les instructions données (pour moi un noyau 2.2 et le chemin de mon répertoire pcmcia-<numero>) et de compiler. J'ai eu énormément de messages d'insultes mais il a compilé quand même.
-enfin, j'ai mis le nsp_cs.o ainsi compilé dans /lib/modules/<monnoyau>/pcmcia/ et modifié /etc/pcmcia/config en ajoutant les lignes données pour reconnaître la carte SCSI.
Le MO drive s'installe chez moi sur /dev/sda en type vfat, et ensuite je peux copier des fichiers dessus ou les lire comme n'importe quel répertoire.
Mon seul souci demeure une litanie de messages d'insultes au boot. Bien que je l'aie déclaré comme noauto dans /etc/fstab, il le charge quand même au démarrage. Si je ne mets pas de disque dedans, il se plaint d'une I/O erreur et de ne pouvoir lire la partition table (forcement), mais j'arrive ensuite à monter le mo drive sans trop d'erreurs. Par contre, si j'en mets un il plante lors du boot.
Même chose quand j'essaie de redémarrer ma carte PCMCIA par « /etc/rc.d/init.d/pcmcia restart », j'obtiens un plantage généralisé.
Si vous avez un appareil utilisant des disquettes flash (Smart Media, Compact flash, etc.), vous voudrez peut-être les lire directement sur un adaptateur.
Certains de ces adaptateurs (le plus souvent usb) sont supportés par Linux.
Ce sont souvent des adaptateurs multiformats scsi, ce qui fait que pour les faire fonctionner, vous aurez besoin que votre système supporte le SCSI, l'USB-storage et le support de disques SCSI multiples (rarement compilé dans les noyaux standards).
Le modèle bi-format PQI (composant Carry) a un pilote ici : http://www.dauskardt.de/carry.html. Installation difficile (patch du noyau et utilisation de dll Windows.
Ensuite, le montage se fait très classiquement.
Le pilote bttv disponible dans les kernels actuels supporte la plupart des cartes, et en SECAM, s'il vous plaît !! Lancez un programme comme xawtv http://www.strusel007.de/linux/xawtv/ (version 3.60) ou kwintv http://www.staikos.on.ca/~staikos/kwintv/ (version 0.8.11).
Votre fichier /etc/modules.conf devrait contenir quelque chose comme ça :
alias char-major-81 bttv pre-install bttv modprobe -k msp3400; modprobe -k tuner options bttv radio=0 card=2 #vidmem=0xff0 options tuner type=3 debug=4 options msp3400 debug=2 |
Pour être sûr d'avoir le SECAM, vous pouvez mettre dans rc.local :
rmmod bttv rmmod tuner insmod tuner type=3 insmod bttv |
Si vous voulez le plein écran, il vous faut la résolution 768x576.
Si vous aimez décoder, voyez du côté de Xawdecode.
Si votre carte TV est USB, je crois qu'il n'y a rien pour le moment.
Autrement dit, comment installer mon joystick ?
Le descripteur de périphérique s'appelle /dev/js0. Si vous n'avez pas ce fichier, tapez « /dev/MAKEDEV js ». Déchargez le module son s'il était chargé. Rechargez-le avec l'adresse du joystick : « insmod es1371 joystick=0x200 » par exemple. Puis « insmod joystick », puis « insmod joy-sidewinder » (selon votre modèle).
Pour ne pas retaper tout ça à chaque fois, rajoutez l'option dans votre /etc/modules.conf :
option sound joystick=0x200 |
(à vérifier) + les alias qui vont bien (je n'ai pas de joystick pour tester).
Les conseils sur les « bâtons de joie » sont à : http://www.linuxgames.com/joystick.
L'installation complète -en anglais- sur http://www.freelink.cx/joystick.html.
Plein d'infos également dans /usr/src/linux/Documentation/input/joystick.txt. Vous y apprendrez le nom de votre pilote de joystick et celui du support de port jeu de votre carte son.
En général, vous devez faire :
modprobe joydev ;
modprobe ns558 (sauf si vous avez une SB 64 ou 128 ou une cs461x, qui gèrent elles-mêmes le port jeu) ;
modprobe analog (pour tous les joysticks analogiques dont le MS Sidewinder standard) ;
modprobe sidewinder (pour les autres MS), modprobe adi pour les Logitech wingman (voyez les autres dans la documentation du noyau citée ci-dessus).
Pour XFree, vous devriez charger un module nommé xf86Jstk.o, mais ce module semble avoir disparu dans XFree 4.x. Explications souhaitées...
Installez p3nfs, et ça devrait pouvoir échanger des données. Le Palm pilot a aussi des utilitaires de transfert. Plus de renseignements sur http://www.delafond.org/psilin, où vous trouverez PsiLin, une interface graphique en GTK pour faire marcher tout ça en quelques clics de souris.
Vous y trouverez de quoi convertir les formats de fichiers (psionio, lpic2ps) ou sauvegarder votre Psion.
A noter que le Psion (3 ou 5) devient grâce à p3nfs un très bon terminal de votre console Linux.
Vous pouvez également échanger des fichiers entre Psion Series 3 et Linux avec comms côté Psion et minicom côté Linux.
Pour le Palm, il existe de nombreux softs de connexion. Si vous voulez une synchro avec StarOffice, faites comme suit :
1.Il faut d'abord installer (si ce n'est pas déjà fait) l'option complète de StarSchedule par le truchement de StarOffice Setup.
2.Une fois installé, il faut se rendre par l'explorer dans « StarSchedule », « source de données » et juste dessous il y a une position. À partir de cette position que j'ai renommé « Base de données » j'ai pu créer un utilisateur ( menu contextuel, « nouvel utilisateur »).
3.Il faut donner un nom de nouvel utilisateur, j'ai donné le même nom d'utilisateur qu'il y a dans mon Palm.
4.Une fois cet utilisateur créé, il faut maintenant s'occuper de la synchronisation. Pour ce faire j'ai utilisé le logiciel fourni par Palm Pilot (Hotsync 2.0). Lors de l'installation de SO, une position « StarSync » vient se rajouter à l'endroit suivant : 1 clic sur la petite icône Hotsync qui se situe en bas à droite de l'écran, un menu s'ouvre, aller sur « personnaliser », puis une boîte de dialogue s'ouvre. A cet endroit on trouve les différentes opérations que fait le Palm pour synchroniser avec son logiciel. J'ai gelé toute les position à l'exception de « StarSync », « installation » et « système »
5.Il faut maintenant s'occuper du Palm lui même, en effet, dans le dossier Office51/ il y a un sous-dossier palmpilot et dans ce dossier il y a un fichier qu'il faut installer sur son Palm Pilot « starsync.prc ». Pour cette installation, Palm Pilot propose un petit logiciel permettant ce genre de manipulation.
6.Ça y est ! Tous les ingrédients sont prêts pour la 1ère synchronisation.
7.Toutes les données de mon Palm ont été récupérées, mon agenda, mes tâches, mon carnet d'adresses.
Merci à Éric BARONNET pour ces explications palmistes.
Pour faire fonctionner son Zaurus avec linux on commencera par faire fonctionner tcp-ip sur usb :
http://www.zauruszone.com/howtos/linux_ethernet-over-usb-howto.shtml
Puis on installera le logiciel de synchronisation :
http://www.zauruszone.com/howtos/qtopia_desktop_howto.shtml
Dans ce dernier lien, les explications concernant les librairies partagées sont un peu trompeuses - ce qui est mentionné pour KDE3 et gnome vaut aussi pour le shell.
Une défaillance inexplicable de la liaison peut être corrigée en rebootant le Zaurus.
(Merci à François Morvillier pour les infos)
Installez Sane ( http://www.mostang.com/sane). Sane est un programme en deux parties : un backend serveur, qui pilote le scanner, et un frontend client, ou interface utilisateur (comme xsane sur http://www.wolfsburg.de/~rauch/sane/sane-xsane.html). Ainsi, même si vous avez plusieurs scanners différents, vous utiliserez toujours la même interface, disponible en mode texte et en mode graphique, et acceptant le mode réseau.
Installez une vraie carte SCSI si vous ne disposez pas d'une des rares cartes propriétaires reconnues (UMAX, AGFA).
« insmod g_NCR5380 ncr_irq=255 ncr_addr=0x280 » (par exemple pour UMAX) ou « #insmod aha152x aha152x=0x140,10,7,1 » (pour Adaptec). Vérifiez le bon fonctionnement par « cat /proc/scsi/scsi ».
Un certain Michaël me signale que les cartes SCSI TEKRAM DC315U ont besoin d'être initialisées avec certains paramètres : « modprobe dc395x_trm dc395x_trm=7,5,1,32 » du fait que le module ne fonctionne pas pour toutes les fréquences (http://www.garloff.de/kurt/linux/dc395/).
« (sane-)find-scanner » > (sane-)find-scanner: found scanner « UMAX Astra 1220S V1.3 » at device /dev/sg1 #(cette commande ne marche que pour les scanners SCSI et apparentés).
« ln -s /dev/sgx /dev/scanner » #(remplacer x par 1 si c'est votre cas)
« chmod 777 /dev/sgx »
« chown root.users /dev/sgx »
« xscanimage »
Attention ! Si vous avez une carte SCSI d'une génération différente du scanner (par exemple SCSI2 pour le scan, SCSI3 pour la carte), il y a incompatibilité matérielle, et toute tentative de (sane-)find-scanner risque de tout bloquer.
Astuce ! Pour forcer la détection d'un scanner SCSI non allumé lors du boot, « echo "scsi add-single-device 2 0 5 0" > /proc/scsi/scsi », avec dans ce cas 2=le bus SCSI et 5=l'identifiant du scanner sur la chaîne SCSI.
Un exemple de scanner récalcitrant (d'après Christophe Tronche)
J'ai un SnapScan 1236S et une adaptec 2940. Ça marche avec Sane... une fois qu'on a commenté les trois lignes de code qui lancent l'auto-test du scanner et dont l'effet net est de planter le driver SCSI (je crois qu'il y a le même problème avec la version non-SCSI).
Deux bonnes pages en anglais : http://michaelo.free.fr/linux/usbscanner.php3 et http://www.buzzard.org.uk/jonathan/scanners-usb.html.
Qui dit scanner USB sous Linux dit Epson. Si vous voulez tenter votre chance avec autre chose, voyez ci-dessous ce qui vous attend.
Vérifiez que l'USB fonctionne. Si ce n'est pas le cas, recompilez un kernel récent, à partir de 2.2.18 ou patché (modules usb et usb scanner). La commande « mount » doit vous montrer l'usbfs (à condition que l'USB device file system de la section USB du kernel soit compilée).
Identifiez l'ID du vendor et du model en faisant « cat /proc/bus/usb/devices ».
Éditez votre /etc/modules.conf en y ajoutant les lignes suivantes (facultatif) :
options scanner vendor=0x04b8 product=0x0104 |
(mettez les chiffres que la commande précédente vous a montrés).
Éditez le /(/usr)/etc/sane.d/<vendor>.conf, en commentant les lignes inutiles et en écrivant
usb /dev/usb/scanner0 |
Donnez les permissions aux utilisateurs : « chmod a+rw /dev/usb/scanner0 »
Puis « insmod scanner ». Testez par « scanimage --list-devices ».
Si cette commande reste bloquée indéfiniment ou plante tout, faites « export SANE_DEBUG_DLL=128 » et relancez-la. Repérez les backends qui bloquent et effacez-les sans pitié (dans /usr/lib/sane). De toutes façons, ils ne vous servent à rien.
Ce scanner fonctionne correctement depuis...le 8 avril 2002 (version CVS). Voyez la page http://httpd.chello.nl/~j.schoone/scanning.html. Le support officiel sera sans doutes dans sane 1.0.8.
Utilisez un kernel à partir du 2.4.12. Compilez le module pour hp53xx (nécessite le support SCSI dans le noyau).
La Mandrake 8.2 a un noyau qui convient sans modification. En revanche, il faut désinstaller le sane d'origine et recompiler vous-même la version CVS ou stable > 1.0.7.
Vérifiez son bon fonctionnement par « cat /proc/scsi/scsi » qui doit vous montrer le scanner.
Tapez ensuite « sane-find-scanner ». Vous devriez voir le nom de votre scanner apparaître.
Éditez votre (/usr/local)/etc/sane.d/avision.conf pour y mettre :
scsi hp usb dev/scanner option connect-device |
Ensuite, utilisez normalement les programmes comme scanimage (« scanimage --list-devices » pour vérifier si tout marche), « scanimage>fichier_image.pnm » ou xsane pour faire de l'acquisition. L'interface graphique la plus jolie pour le moment : kooka (KDE).
Attention ! Ne tentez jamais de désinsérer le module hpusbscsi : plantage net. Le mode de prévisualisation bloque tout aussi. Les joies des drivers Beta !
Dans la série « rien n'est simple », il existe deux sortes de scanners parallèles : ceux qui utilisent un protocole propriétaire et les SCSI déguisés.
Pour les deuxièmes, vous aurez besoin du module ppscsi.
« cd ~/.gimp-1.2/plug-ins »
« ln -s /usr/(X11R6/)bin/xscanimage xscanimage »
Menu Fichier > Acquisition
Astuce ! Si votre scanner est trouvé par sane-find-sanner (scanners à composants SCSI seulement), mais pas par scanimage -L, c'est un problème de (/usr(/local))/etc/sane.d/<vendor>.conf. Soit le fichier n'existe pas, soit il est mal renseigné, soit il n'est pas à l'endroit escompté et il se peut que vous escrimiez à modifier un fichier qui n'est pas lu. Tout scanner fonctionnant sous sane a BESOIN d'un fichier dans sane.d.
Astuce ! Pour accélérer le démarrage de sane, supprimez toutes les entrées inutiles dans votre (/usr(/local))/etc/sane.d. Ne gardez que votre descripteur de scanner et dll.conf.
Pour l'OCR (reconnaissance optique des caractères), il n'y a malheureusement pas grand-chose pour le moment, en dehors d'un produit commercial à 1 495 $ (période d'essai gratuite) nommé OCRShop (société Vividata). Ce produit est assez limité : sortie texte brut seulement, pas d'utilisation du pilote SANE, ce qui restreint les scanners reconnus, enregistrement fastidieux, etc.
J'ai aussi trouvé en surfant un certain OCRchie, à http://http.cs.berkeley.edu/~fateman/kathey/ocrchie.html. Ce produit serait capable de lire des fichiers .tiff.
Il y a aussi gocr, qui a encore des progrès à faire, et l'interface graphique KDE kooka, qui gère sane et gocr (lit le .pnm, le .pgm, le .pbm, le .ppm et le .pcx).
Le plus abouti dans le libre semble être ClaraOCR (http://www.claraocr.org/), en version 0.9.8 (lit le .pbm).
Gocr peut être piloté par xsane ou kooka.
Eh oui, depuis le kernel 2.2.18, l'USB fait partie des connecteurs officiellement supportés.
Le site incontournable pour le support des périphériques USB : http://www.linux-usb.org/.
Une fois de plus, rien d'évident :
-Pour déterminer votre chipset USB et ainsi savoir le bon module à compiler: « lspci -v »
-Démarrer l'USB : la traditionnelle « /etc/(rc.d/)init.d/usb start »
-Il faut savoir que la compilation du kernel peut autoriser ou non à brancher les périphériques à chaud (General Setup > Support for hot-pluggable devices).
-Si votre BIOS vous donne le choix entre MPS 1.1 et 1.4, choisissez 1.1
Les HUBS USB sont en général supportés, mais il peut y avoir des surprises. J'ai un TRUST qui fonctionne très bien avec la webcam, mais pas avec le scanner.
Enfin, l'USB 2 commence à être supporté avec le kernel 2.4.19.
Le problème du verrouillage numérique : le Num Lock n'est en général pas lancé au démarrage (il pose d'ailleurs souvent des problèmes avec X-window, spécialement avec Motif : empêche le changement de fenêtre avec fvwm).
Le problème du clavier anglais : Normalement, l'installation de Linux vous demande la langue et le clavier à installer. Vous devriez donc avoir un clavier Français. Sinon, éditez /etc/sysconfig/keyboard :
KEYTABLE="fr-latin1" |
Certaines touches font n'importe quoi : c'est souvent le cas des touches <home> et <Suppr> (qui fait comme <Eff>).
Dans ce cas, insérez ce petit script dans ~/.inputrc
set metaflag on set convert-meta off set output-meta on "\e[1~":beginning-of-line "\e[3~":delete-char "\e[4~":end-of-line |
Astuce : pour connaître les codes des touches dont vous avez besoin, toujours notre ami « cat » dans un xterm, puis tapez sur les touches dont vous voulez le code.
Dans /etc/rc.d/rc.local ajouter : (Redhat)
for tty in dev/tty[1-6] do setleds -D +num < $tty > /dev/null done |
Attention ! Ne faites surtout pas ça sur un portable ! Vous auriez des problèmes du fait que le pavé numérique utilise les touches alphabétiques.
Pareil sous X :
dans /usr/X11R6/lib/X11/xkb/types/basic
intervertir les expressions « level1 » et « level2 » de la section KEYPAD. Vous devriez avoir un verrouillage numérique activé, bien que la diode soit éteinte. (Merci à Thierry Marchand)
type "KEYPAD" { modifiers = Shift+NumLock; map[None] = Level2; map[Shift] = Level2; map[NumLock] = Level1; map[Shift+NumLock] = Level1; level_name[Level1] = "Base"; level_name[Level2] = "Number"; |
Le Verr num sera bien activé, mais la diode pas allumée.
Une meilleure solution est d'installer numlockx (http://dforce.sh.cvut.cz/~seli/en/numlockx/) et de le lancer avec une ligne dans Xsetup_0 (astuce de Michel Clivet).
Si vous avez lancé X avec l'option -kb (XkbDisable), vous devez décommenter « RightAlt ModeShift » dans le XF86Config (sinon, le modificateur ne modifie rien).
La touche #@ ne fonctionne pas.
La combinaison <Maj- ^> (touche tréma) fait « | »
La combinaison <Maj-°> fait « ~ »
La combinaison <Maj-£> fait « # »
Je n'ai pas trouvé pour le « @ »
La touche effacement efface à gauche en combinaison avec <Maj>, sinon, elle efface à droite.
Histoire vécue sur Mandrake 7.2, où setxkbmap refusait de fonctionner. En fait, xkbcomp essayait d'écrire dans /usr/X11R6/lib/xkb/compiled, qui est un lien vers /var/state/xkb...qui n'existe pas.
Solution : créer un répertoire /var/state/xkb.
Si vous n'avez changé aucun réglage, vérifiez que setxkbmap se lance bien. S'il refuse, il peut s'agir d'une partition /var (ou racine si /var n'a pas sa propre partition) pleine. Faites de la place. Dans ce cas, vous ne pouvez pas afficher non plus vos pages de man.
X n'utilise pas une table de caractères statique, mais dynamique. C'est-à-dire que la table de clavier est générée au démarrage à partir d'un source. Le programme qui lance la compilation est setxkbmap et le compilateur est xkbcomp.
Astuce !! Pour obtenir des majuscules accentuées sous X : <CapsLock-Lettre_accentuée> (Ex : <CapsLock-é> donne É).
Autre astuce : Les touches drapeau des claviers Windows permettent le basculement de console.
Encore une astuce (de T.S et S. Blondeel):
pour changer le clavier azerty en qwerty et inversement : sous X dans une console ou xterm : tapez « setxkbmap us » (ou fr)
en mode texte sans X : tapez « loadkeys us » (ou fr)
Et une astuce de plus ! (de Bernard Delechamp)
Appuyez sur <AltGr-Touche> pour avoir des caractères spéciaux :
² & a A z r o O p P s d D x c C <---touche utilisée
¬ ¹ æ Æ « ¶ ø Ø þ Þ ß ð Ð » ¢ © <--- caractère obtenu
En prime, vous pourrez même avoir l'Euro (<AltGr-e>). Attention ! Ces touches ne fonctionnent que si vous avez la page de code 8859-1. Si vous passez à la 8859-15 (Unicode), il se peut que ça ne fonctionne plus.
Dernières astuces : Taper des accents avec un clavier sans accents dans Emacs : <Meta-x> « iso-accents-mode » Puis <apostrophe + e>, etc. (Merci à David Faure). Vous obtenez le même résultat avec n'importe quelle appli si vous chargez le clavier international dans XF86Config : « us-intl » au lieu de votre descripteur habituel (merci à Marc Falesse)
Pour les « touches Internet » de certains claviers :
Utiliser XFree 4.1.
Pareil que pour les cd rom : voir /etc/fstab. Normalement, l'installation de Linux crée la ligne nécessaire, avec le descripteur de périphérique (ex : /dev/hda1 pour la première partition du premier disque IDE, /dev/sda pour le premier disque SCSI...) et le point de mountage (souvent /mnt/dosc). De plus, il fait le mountage automatiquement. Si c'est votre cas : « cd /mnt/dosc » puis « ls ».
Sinon, « mount -t vfat /dev/hda1 /mnt/dosc », puis, après vérification que ça marche, rajouter la ligne « /dev/hda1 /mnt/dosc vfat 0 0 0 » dans /etc/fstab. Un simple « mount /mnt/dosc » suffira ensuite. Pour les disques NT : « ntfs » au lieu de « vfat ».
Si les noms longs de win 95 ne sont pas reconnus, vous devez avoir mounté votre disque en msdos. Remplacez alors msdos par vfat sur la ligne de commande ou dans le /etc/fstab.
Si les pseudo noms longs de win 95 ne passent pas lors d'une commande à cause de caractères interdits (espace), encadrez le nom du fichier de guillemets ou faites précéder les espaces d'une backslash (\).
Pour écrire sur la partition vfat depuis un compte user non root, il faut rajouter comme option « umask=0 »
Exemple de /etc/fstab :
/dev/hda1 /mnt/dosc vfat noauto,rw,user,umask=0 0 0 |
Pour restaurer une partition Windows crashée :
Mountez votre partition Windows qui marche (dans la mesure du possible).
Tapez : « cd /mnt/dosc », puis « tar cf - *|gzip -v9 > /windows.tgz »
Si votre disque Linux est assez gros, vous avez maintenant une image compactée du disque Windows à la racine de Linux.
Pour restaurer votre Windows tout planté :
« mkdosfs /dev/la_partition_windows » (Attention, cela efface tout !!). Remountez-la.
Copiez-y la sauvegarde : « cp /windows.tgz /mnt/dosc ».
Dézippez l'image : « gzip -dc windows|tar xvf - »
L'installation d'un DVD est identique à celle d'un CD ROM.
Le seul problème provient des DVD video, à cause d'algorithmes de cryptage, secrets jusqu'à un passé récent.
Si vous avez une grosse bécane (genre Bi Pentium avec énorme RAM et gros disque dur), il est possible, en patchant le kernel, de décoder les DVD Video d'une manière logicielle.
Le programme Xine (http://xine.sourceforge.net) lit les vidéos non cryptées directement, et les vidéos cryptées avec le module css. Il peut en outre faire de la décompression matérielle sur de nombreuses cartes récentes. L'utilisaiton de xine est très simple. J'ai n'ai pas pu obtenir de résultat (plantage) de Kxine.
J'ai aussi eu de bons résultats avec mplayer. Le lancement en ligne de commande des plus compliqué. Sous KDE, je fais « mplayer alang fr ao sdl dvd 1 » (sdl pour avoir accès au mixer KDE, sinon, pas de son). Si vous ou votre distributeur n'a pas oublié l'interface graphique dans la compilation, vous pouvez lancer « gmplayer » pour avoir le mode graphique.
Ou plus simplement, je mets dans le ~/.mplayer/config les lignes
alang=fr ao=sdl |
Pour la petite histoire, mplayer, ou plus exactement son copain mencoder, sait très bien transformer n'importe quelle source video en DivX.
Tous les renseignements à http://linuxvideo.org
et sur http://www.thedukeofurl.org/reviews/misc/dvdlinux/printable.shtml.
Les principales cartes de décompression seraient supportées par leurs fabricants (drx2) ou par la communauté (Hollywood et drx3). (Les PC puissants modernes se passent très bien de ce genre de carte.)
Des informations sur http://opensource.creative.com
Passons sur l'installation du graveur, qui se fait exactement comme un cdrom normal. Seul problème : le support de cdrom au niveau du noyau doit être en module sous peine de ne pas pouvoir graver.
Autre curiosité : les graveurs IDE sont reconnus comme des SCSI. Ne soyez donc pas surpris s'ils s'appellent /dev/scd0 et équivalents. Pour qu'ils soient reconnus, ajoutez à la ligne de démarrage de Linux (par ex. dans lilo.conf avec « append= ») la commande « hdc=ide-scsi » (adaptez selon votre emplacement du disque sur la nappe).
Pour vérifier la bonne détection de votre graveur : « cdrecord -scanbus ».
Vous avez une excellente page sur les graveurs IDE à http://www.sjgross.org/index.php3?path=linux/ide-scsi&file=index.php3.
Ensuite, l'interface graphique xcdroast, gcombust (paraît-il le meilleur) ou gnome-toaster (le plus simple) permettent de faire une gravure en quelques clics de souris.
Vous avez aussi grip pour extraire des pistes de cd audio pour en faire du wav ou du mp3.
Les programmes en ligne de commande sont :
mkisofs pour créer les images iso
Ex : « mkisofs -P « moi » -p « moi » -J -o image.iso /grav »
Ici, -P est le nom de l'éditeur, -p le nom du préparateur, -J crée des extensions Joliet (format Windows) et /grav, la partition où vous stockerez cette image (détails : « man mkisofs »).
cdrecord pour graver (option -dao pour éviter les 2 secondes de blanc entre les pistes).
-pour copier a la volée :
dd if=/dev/cdrom bs=2048|cdrecord -v dev=0,3,0 speed=2 (non testé)
Enfin, le must : K3b, le graveur polyvalent pour KDE fait tout : transcodages, gravure audio, bref, le bonheur.
Lire une image iso comme si c'était un vrai cd rom : « mount mon_image.iso t iso9660 /mnt/cdrom o ro loop /dev/loop0 » (nécessite le support Loopback Device Support dans le kernel ou en module)
Toutes les infos sur la gravure sur http://linuxfr.org/view_attach.php3?id=81
Si vous ne voulez pas passer tout votre temps à taper des « mount... », vous pouvez utiliser l'automonteur autofs. Ceci, d'autant plus que certaines distributions récentes l'installent par défaut (Corel, Mandrake 7.0...).
Plus sérieusement, l'astuce de l'automonteur est d'éviter que des utilisateurs ordinaires n'aient accès au montage, ce qui pose des problèmes de sécurité, mais simplement à un serveur qui, lui, fait le montage.
L'automonteur doit être compilé en module du noyau avant tout (« Kernel automounter support »). Vous pouvez vérifier si c'est déjà fait si vous avez quelque chose comme ça : /lib/modules/2.2.15-15mdk/fs/autofs.o.
Sur Mandrake 7.0 et + (système supermount), les montages se font dans /mnt, le fichier /etc/auto.master fait appel à /etc/auto.misc. Celui-ci doit contenir une ligne comme :
cdrom -fstype=iso9660,ro :/dev/cdrom |
pour le montage du cdrom.
Le /etc/fstab doit contenir des lignes comme ceci :
/mnt/cdrom /mnt/cdrom supermount fs=iso9660,dev=/dev/cdrom 0 0 |
Le lancement se fait par « /etc/rc.d/init.d/autofs start »
Un automonteur correctement configuré revient à ce qu'il suffit de taper « cd /mnt/cdrom » pour se retrouver dans le répertoire du cdrom monté automatiquement.
Le démontage se fait automatiquement après un laps de temps paramètrable dans /etc/auto.master.
Le système fonctionne également pour les montages par réseau nfs.
Sous KDE 2.x, nous trouvons kdeprintfax, qui peut être soit lancé isolément, soit appelé à partir du gestionnaire d'impressions de koffice, par exemple. Vous aurez simplement besoin d'avoir efax installé et de faire « chmod +s /usr/bin/efax » si vous voulez faxer en tant que non-root.
Prenons l'exemple le plus standard en mode ligne de commande : sendfax / viewfax (il y a aussi hylafax, fax2send et efax).
Dans tous les cas, lancer « mgetty /dev/ttyS0 » (si votre modem est en com1)
Des détails sur Hylafax sur la page de Maurice Libes à http://www.com.univ-mrs.fr/ssc/info/hylafax/
Le premier problème est d'obtenir un fichier .g3, la norme des fax. Pour cela, plusieurs solutions :
-pbm2g3
-digifax
-faxspool. Cette dernière, non contente de convertir le document, le met en file d'attente (sinon, utiliser faxqueue)
syntaxe : « faxspool 0123456789 le-document-que-je-veux envoyer-par-fax » (utilise ghostscript)
Pour faire partir les fax en file : « faxrunq » (utilise sendfax).
Sinon : « /usr/sbin/sendfax -v 0123456789 f1.g3 » vous permet de choisir le fax à envoyer (ici, f1.g3).
Pour bien faire, mettez votre numéro dans /etc/mgetty+sendfax/mgetty.config et /etc/mgetty+sendfax/sendfax.config (ainsi que le port série du modem).
Les fax sortants sont dans /var/spool/fax/outgoing
Lancer mgetty si ce n'est déjà fait. Faire attention à ne pas activer les diverses options qui empêchent la réception de fax ou le décrochage.
Le modem doit décrocher tout seul après X sonneries (paramètrable)
Pour voir les fax : « viewfax /var/spool/fax/incoming/le_fax_que_j_ai_reçu » (clic droit ou gauche pour agrandir, bouton central pour se déplacer).
Pour que mgetty tourne toujours après avoir reçu un fax, mettez dans le /etc/inittab une ligne comme :
S0:2345:respawn:/sbin/mgetty ttyS0 |
Le S0 représente le port série, 2345 les runlevels où mgetty est censé fonctionner en tâche de fond.
J' utilise kvoice 0.3.1 sous Mdk 7.2 (après l'avoir utilisé sous 7.0). Il est disponible en rpm sur chacune.
L'utilisation est d'une facilité déconcertante car très intuitive.
Sous root, pour envoyer un fax : Fax / New fax et deux possibilités :
soit taper un texte directement dans la fenêtre, inscrire un numéro de destinataire dans To et clic sur enveloppe.
soit choisir un document existant par / File / add file / le_document_a_faxer puis le numéro du destinataire dans To puis clic sur l'icône enveloppe.
Il y a des paramétrages dans Options (dont modem et fax) mais je n'utilise pas les autres possibilités de kvoice sur mon USR 56Kpro
Je ne faxe que des documents texte et n'ai pas essayé les autres.
Pour ne pas être obligé de me loguer en root à chaque utilisation, j'ai installé sudo (RPM de Mdk 7.2). Son paramétrage se fait sous root par visudo
en ajoutant
#Cmnd alias specification
Cmnd_Alias KVOICE=/usr/bin/kvoice
#User privilege specification
mon_login ALL=NOPASSWD:KVOICE
La commande étant, sous user, sudo kvoice, il suffit de faire un petit script
"kvoicesudo"
#!/bin/sh
sudo kvoice
placé dans /home/user/bin et ensuite facilement sur le bureau avec une icône.
Installez le paquetage efax.
Pour recevoir : « fax receive ».
Pour envoyer : « fax send numero_du_correspondant fichier_postscript ».
Le gros avantage, c'est que efax a une interface graphique fax4CUPS, disponible à http://gongolo.usr.dsi.unimi.it/~vigna/fax4CUPS/. Ce programme vous permet d'installer une imprimante virtuelle (nécessite d'avoir cups installé) utilisable par les programmes, et qui renvoie les fichiers postscript sortant de cups à efax. Élémentaire.
Grâce à Pierre Ficheux, Linux possède un émulateur de Minitel fonctionnant aussi bien en monoposte qu'en réseau disponible à http://www.com1.fr/~pficheux/xtel/ .
L'installation par rpm est évidente, sauf pour le cas où vous utilisez une Suse (le rpm qu'on trouve habituellement est pour RedHat, mais fonctionne très bien sous Mandrake, y compris dans sa version Motif, plus jolie).
Dans le cas de la Suse, créez avant installation du rpm un fichier bidon /etc/X11/XF86Config (sur Suse, XF86Config est directement dans /etc).
Installez le rpm, puis allez voir ce qui est écrit dans le XF86Config bidon. Collez la ligne qui s'y trouve dans votre vrai XF86Config, relancez X et ça devrait marcher. (astuce dérivée d'un message de Christophe Dioux).
Si vous aviez oublié de brancher le Modem, vous pouvez toujours relancer la détection en faisant « make_xtel_lignes ».
Une excellente page sur Xtel à http://www.funix.org/fr/linux/main-linux.php3?ref=xtel&page=menu. Lecture indispensable si votre système utilise xinetd au lieu de inetd (systèmes récents).
Vous devriez trouver un pilote pour les tablettes Wacom à http://lepied.com/xfree86/. Ce pilote s'appelle Xinput, et se place dans /usr/X11R6/lib/modules. Ensuite, modifiez votre xf86config selon les instructions fournies sur le site.
Il faut dans un premier temps se procurer gphoto, projet sous licence gnu gpl : <http://www.gphoto.org/>, vérifier sur le site que votre appareil est supporté (beaucoup le sont, et les grandes marques en particulier). Ce logiciel permet à la fois d'importer les images sur votre disque dur, et de les manipuler, pour une sortie avec mise en page html par exemple. Pour pouvoir le compiler il est nécessaire d'avoir d'autres logiciels en général déjà installé avec les distributions récentes (GNU sed, Gtk (1.2 and up), Imlib (1.4 and up), ImageMagick (4.1 and up), libjpeg / libpng / libgif / libtiff / libz).
Les appareils photos sont en général connectables sur votre PC via un port série (je n'ai pas l'expérience avec l'usb). Lors de la première utilisation, choisir le port série (/dev/ttyS1 chez moi) auquel l'appareil est connecté, et le modèle dont vous disposez. Vous sauvegardez la configuration pour les utilisations suivantes. L'utilisation du logiciel est conviviale et intuitive via une interface graphique.
D'autres modèles (Olympus, par exemple), utilisent une mémoire compact flash. Si vous avez un lecteur de disquettes flash pcmcia sur votre portable ou usb, vous devriez pouvoir les lire comme un disque.
Certains autres modèles (Minolta Dimage 5 et 7 par exemple) se comportent comme un simple disque SCSI sur USB. Ils se montent comme n'importe quel disque si les bons modules sont installés (usb-storage et scsi). Des détails ici : http://linuxfocus.unixtech.be/Francais/May2002/article240.shtml.
Dernière nouvelle : gphoto, système monobloc est maintenant scindé en un pilote et des interfaces variées. Il s'appelle maintenant gphoto2.
Une fois installé, lancez « gphoto2 --auto-detect », seulement si vous avez l'usb. Sinon, déterminez le type de pilote à utiliser avec « gphoto2 --list-cameras ». Ensuite, établissez les paramètres avec « gphoto2 --port serial:/dev/ttyS0 --camera "Olympus C-2020Z" » (par exemple). Par la suite, ces paramètres seront enregistrés dans ~/gphoto/settings. Vous pourrez récupérer --ou uploader-- vos photos en ligne de commande ou avec une interface graphique comme gtkam ou...Konqueror (dès que Kamera saura utiliser une version récente de gphoto2).
Si vous ne trouvez pas votre bonheur avec gphoto, tentez photopc (http://photopc.sourceforge.net/).
Pour faire un diaporama avec vos photos situées dans un répertoire de votre PC, utilisez gqview.
Les webcam Philips USB peuvent se raccorder, moyennant des manips un peu compliquées (modules usb-pwc).
Voir http://www.smcc.demon.nl/webcam/
Il y a également une très bonne page sur http://lea-linux.org/hardware/webcam.php3. Vous pouvez installer des webcams USB ou parallèles.
Une page sur les webcams Logitech : http://digilander.iol.it/demarchidaniele/quickcam-vc.html.
Une page sur les webcams à base de spcaxxx :http://spca50x.sourceforge.net/
J'ai installé très facilement une Logitech quickcam express USB en allant sur http://qce-ga.sourceforge.net/. Ensuite, « make », puis « ./quickcam.sh ». Insertion du module par « insmod mod-quickam ».
Pour automatiser la chose, j'ai mis dans le /etc/modules.conf les lignes
post-install usb-uhci modprobe videodev post-install videodev modprobe mod_quickcam
|
Les caméras supportées par le module cpia sont là : http://webcam.sourceforge.net et celles supportées par le module ov511 sont ici : http://alpha.dyndns.org/ov511/cameras.html.
Les programmes d'affichage sont par exemple Xawtv, vic, ou apache pour s'afficher sur le Net (tous les détails sur Lea-linux).
http://www.cs.utexas.edu/users/kharker/linux-laptop/ ou http://infonomade.linuxfr.org/portables/portablefr.html
Quelques indications quand même :
Lorsqu'il est intégré, il est du type Winmodem. Ne pleurez pas, c'est souvent un Lucent, pour qui il existe un pilote sur http://www.physcip.uni-stuttgart.de/heby/ltmodem/index.html. Depuis peu, on trouve une forme compilable du module ltmodem, valable pour les noyaux 2.2 et 2.4. L'installation est très facile : il faut avoir les source du noyau installées, faire un « make xconfig » en activant le support ppp, puis « make dep ». Ensuite, il suffira de dézipper l'archive ltmodem-6.00a (ne pas dézipper l'archive interne) et de taper dans l'archive « ./build_module » (environnement de compilation nécessaire). Ensuite, « ./ltinst2 », puis « ./autoload » , « modprobe lt_modem » suffira à démarrer la chose.
Si tout ceci marche bien, vous devriez avoir
alias char-major-62 lt_serial alias /dev/tts/LT0 lt-serial |
dans /etc/modules.conf.
Le descripteur de périphérique se nomme /dev/ttyLT0.
(Le Minitel Xtel fonctionne très facilement. Il suffit de sauter la détection des modems lors de l'installation.)
La documentation contenue dans l'archive est très claire (ne lire que les 10 dernières lignes). En cas de recompilation du noyau, faire simplement « ./ltinst » dans le répertoire des sources de ltmodem.
Attention ! Ces manips ne fonctionneront pas si le kernel n'est pas compilé avec l'option qui autorise les modules d'autres versions.
Autre pilote pour Lucent : http://www.lectron.com.tw/DOWNLOAD/PCI MODEM.htm.
Il s'agit d'un port série. Il faut commencer par l'activer dans le BIOS.
(Compléter)
Le PCMCIA ne fait pas partie des kernels 2.2 (il n'apparaît que dans les 2.4). Il vous faut donc installer le paquetage pcmcia-cs. Vous aurez alors un répertoire pcmcia/ dans /lib/modules. (Merci à Alain Labarthe pour le plus gros de cette rubrique).
Vous pouvez l'activer avec la commande magique « /etc/rc.d/init.d/pcmcia start » (pas de « rc.d » sur Debian).
Ensuite, lorsque vous insérez une carte, elle est automatiquement détectée et le module automatiquement inséré. Plus simple, tu meurs.
Vous devriez avoir un paquetage installé du genre kernel-pcmcia.xxx. Les modules ne sont pas dans /lib/modules/..../net/, mais dans /lib/modules/..../pcmcia/.
Comme d'habitude, les options sont dans /etc. Plus précisément /etc/pcmcia/config et config.opts.
Le fichier /etc/sysconfig/pcmcia (RedHat) ou /etc/pcmcia.conf (Debian) doit comporter les lignes « PCMCIA=yes » et « PCIC=i82365 » (dans le cas d'un PCMCIA Intel).
Pour connaître les cartes insérées, tapez « cardctl ident ». D'une manière générale, lisez absolument « man cardctl ».
Une carte bien configurée doit faire 2 bips clairs à son initialisation. Si la carte fait un bip clair et un grave, c'est souvent un problème d'IRQ (« cardctl config » et « cat /proc/interrupts »).
Astuce : pour démarrer le réseau, oubliez les commandes « /etc/.../network start », mais démarrez simplement le service pcmcia. C'est lui qui lancera le réseau. Sinon, ça risque de ne pas fonctionner.
Vous avez les programmes cardmgr (c'est lui qui contrôle les insertions/désinsertions de cartes) et cardctl. Un port PCMCIA actif doit mettre un driver dans /proc/devices.
Problème avec le mode suspend : si le mode suspend est activé automatiquement ou manuellement (« cardctl suspend 0 » par exemple pour le socket 0), réactivez la carte avec « cardctl resume 0 ». Relancez ensuite le pcmcia (...restart).
souvent cause de problème. Le mode suspend a tendance à tout bloquer. Il vaut mieux le désactiver dans le BIOS, et laisser simplement l'extinction de l'écran à la fermeture du couvercle. Les Toshiba ont une option spéciale de compilation du kernel.
Pour savoir où vous en êtes de votre batterie : « apm » (lit /proc/apm). Lisez absolument « man apm ».
Si votre portable est bien luné, « apm s » devrait le mettre en veille. Le redémarrage peut être moins évident. À essayer. J'ai eu de bons résultats en lançant cette commande à partir d'une console texte, mais des blocages à partir du mode graphique. Curieusement, la même machine accepte bien le mode suspend à partir de X si X est en mode frame-buffer.
Si vous voulez revenir sous X, éditez le fichier /etc/sysconfig/apmd et mettez-y
CHANGEVT="7" si votre console graphique est en <Alt-F7>.
Pour la carte réseau PCMCIA, mettez dans le même fichier :
NET_RESTART="no", sinon vous devrez relancer le PCMCIA à la main.
Encore une astuce (de Damien Boureille) pour éviter les blocages liés à X lors de la mise en veille : mettre dans le même fichier LOCK_X="yes".
Elle est en général facilement installée.
Une astuce avec les NeoMagic : sous peine de gels du serveur X, il vaut mieux insérer une ligne comme suit dans le XF86Config :
Section "Device"
Identifier "Neomagic"
Driver "neomagic"
Option "ShadowFB" #Cette ligne est la ligne importante
1 ordinateur portable + 1 téléphone portable = Internet de n'importe où (enfin, presque !)
Achetez un téléphone intégrant un modem + un câble spécifique ou l'infrarouge ou un téléphone avec connectique + un modem spécial (ex carte PCMCIA Xircom multiports).
Vous devez aussi avoir un abonnement spécial data (rien à voir avec le WAP).
Ensuite, la configuration est identique à celle d'un modem normal. Simplement, vous serez limité à 9 600 bps éliminez les mails trop gros par exemple en webmail ou avec un Kmail récent.
Pour télécharger des musiques + logos ou lire l'agenda du téléphone par infra-rouge ou port série, utilisez gnokii pour les téléphones Nokia.
Changez de console <AltF2> ou <CtrlAltF2>. Tapez « ps aux » : cela vous indique les tâches actives. Repérez par son numéro (PID) le programme (processus) qui bloque. Faites « kill numéro ». Refaites « ps » et vérifiez qu'il a bien disparu. Si ce n'est pas le cas, tentez « kill 9 numéro ». Ça devrait marcher. Si vous obtenez un processus zombie, essayer de killer les processus encore actifs, en rapport avec ce programme. Ou bien « killall nom_du_programme_bloqué ».
Quitter un programme <Ctrlc>. Fonctionne aussi pendant le processus de boot. Permet parfois de terminer un boot mal engagé, quitte à corriger l'erreur par la suite.
Si vous aviez tapé par inadvertance sur <CtrlS>, vous pouvez débloquer par <Ctrlq>.
Normalement, le noyau ne devrait pas être bloqué. Vous devriez encore pouvoir y accéder à partir d'une autre console sauf gros conflit matériel (conflit d'IRQ). Si vous ne disposez pas d'un réseau, attendez un bon bout de temps. Il se peut que ça se débloque tout seul. Si vous êtes vraiment obligé de faire un Reset, le redémarrage pourrait être difficile. Vous serez peut être obligé de faire un « fsck -A », mais normalement, il se fera tout seul. Si le fsck -A vous jette, faites-le en manuel : « fsck -r ». Répondez « y » partout.
Si votre micro est seulement très ralenti, tapez « top ». Vous verrez peut-être un process occuper tout le processeur à la suite d'une erreur de programmation ou une mauvaise utilisation. Faites un kill et on n'en parle plus (ou tapez « k 1234 » dans top pour arrêter le processus 1234.
À noter que pour tuer une tâche en mode graphique, xkill est particulièrement commode (il suffit de cliquer sur la fenêtre bloquée). Encore plus rapide dans KDE : <CtrlAltEsc>, puis cliquer sur le programme bloqué.
Plus moderne : gkill vous affiche toutes les tâches qui tournent et vous arrête celle que vous voulez, graphiquement.
Tapez « df » (disk free). Kdfree = pareil, mais en plus beau.
Un piège ! Il est tout à fait possible qu'un disque disposant de place libre ne veuille plus écrire. La raison ? La table des inodes (les descripteurs de fichiers) est pleine. Pour le savoir : « df -i».
Pour l'occupation des répertoires : « du ». Kdu vous répertorie tout le disque ou tout un répertoire.
Comment lire la taille d'un dossier avec du en obtenant seulement le résultat global ?
Taper : « du h maxdepth=0 /home » (par exemple) ou « du s ».
(Merci à Alain AUBERT et à Damien CHRISMENT).
Une fois de plus, ce genre de manip sera plus facile avec un système qui gère des packages (Redhat, Debian), de préférence en mode graphique (kpackage est le champion). Désinstallez en priorité les plus gros packages.
-Si vous n'installez que du compilé, supprimez les librairies de développement (pour les trouver : « rpm qa|grep devel »)
-Supprimez les shells et file managers que vous n'utilisez pas (« rpm qa|grep sh » et « rpm qa|grep fm »), ainsi que Midnight Commander (mc) si vous utilisez des outils plus modernes. En général, vous n'utilisez que bash.(pour le savoir : « echo $SHELL »). Idem pour les Xterm, un seul suffit. Attention cependant : certains shells sont indispensables à certains programmes.
-Supprimez les window managers que vous n'utilisez pas (« rpm qa|grep wm » pour les trouver). Un seul suffit. Certains wm tels Afterstep n'apparaîtront pas avec la commande précédente. À vous d'adapter.
-Supprimez tous les programmes qui vous ont servi à faire des paramétrages (XF86Setup, XF86Vga16 si vous êtes en SVGA, xf86config, SuperProbe, Xconfigurator, mouseconfig, sndconfig etc...) ou qui ne servent plus (mkbootdisk si votre disquette de boot est faite...)
-Supprimez les programmes qui font double emploi (Xpaint et xv si vous avez Gimp, lynx si vous naviguez avec Netscape ou konqueror, Acrobat Reader si vous avez kde ou Staroffice ou ghostscript...). À noter que les systèmes modernes complets (Gnome, kde) installent des versions de beaucoup de programmes standards de X window (kmines et gnomine en plus de xdemineur...). Les vga games et les bsd games sont carrément nuls, sauf exception. Le navigateur Arena est plutôt obsolète.
-Supprimez les programmes pas franchement utiles : xbanner, xpinguin, xeyes, xfishtank, xsnow, xdaliclock... Certains autres sont utiles, mais pas pour tout le monde (ex : gnuplot, traceur de courbes mathématiques)
-Supprimez les dictionnaires étrangers de Ispell (dans /usr/lib/ispell) si vous n'en avez pas l'usage (gain : 1Mo par langue). Supprimez aussi les dossiers de langues étrangères de KDE et du système (/usr/share/doc et /usr/share/locale P.ex), ainsi que les documentations en langues étrangères (pages de man, entre autres dans /usr/(share)/man/...).
-Supprimez un max d'économiseurs d'écran et de fonds d'écran (à la main en général, car tous sont dans un même package)
-Supprimez les systèmes de démarrage graphique automatique (xdm, kdm) si vous préférez taper « startx » ou travailler en mode texte.
-Si vous ne comptez pas recompiler le noyau ou d'autres programmes, supprimez le source (dans /usr/src/linux). 70 Mo gagnés. Attention, ça peut vous empêcher de compiler certains programmes. Pensez aussi à virer les vieux noyaux qui ne vous servent plus (dans /boot), ainsi que les modules qui vont avec (dans /lib/modules). Sinon, rezippez-le (« tar cvyf linux-2.4.18 linux »).
-La documentation (how-to French = 39 Mo !). Supprimez au moins les packages ou les répertoires dans /usr/doc qui ne vous correspondent pas (pcmcia pour un poste fixe...), supprimez /usr/lib/X11/doc une fois que votre serveur X fonctionne correctement.
-Supprimez les instructions de débuggage (« strip nom_de_l_executable »)
-Sur Mdk 7.x, surveillez vos /var/log/mail/ et /var/log/news/, qui ont tendance à enfler démesurément à la suite d'un bug dans /etc/logrotate.d/syslog.
-Supprimez les fichiers core (images mémoire pouvant être utilisées pour le débuggage). Pour les supprimer tous d'un coup : « find / -name core exec rm f "{}" ';' ». Pour éviter que ces fichiers ne se créent : ajoutez « ulimit Sc 0 » à votre /etc/profile.
-Regardez si le fichier /var/log/messages (les messages systèmes) n'enfle pas outre mesure. Si oui (« ls l »), effacez. Ce genre de considération fait conseiller à certains de faire une partition séparée pour /var, afin d'éviter de bloquer le système avec un répertoire /var qui emplit toute la partition de travail.
-Ne supprimez surtout pas les librairies ordinaires, le langage tcl/tk (utilisé par beaucoup de petits utilitaires), les outils de zippage-dézippage, un window manager,un shell, un File Manager, votre serveur graphique avec ses fontes, LILO, votre noyau de démarrage (sachez que si vous démarrez à partir de DOS avec loadlin, le noyau présent sur la partition Linux ne vous sert à rien ! 500 ko de gagnés !).
L'administrateur peut décider de la taille maximale de disque attribuée à un utilisateur. Pour cela :
-mettre dans /etc/fstab l'option usrquota (et/ou grpquota) sur la ligne de chaque partition qui supportera des quotas. Mettez à jour la nouvelle option de montage par « mount o remount le_repertoire » ;
-activez les quotas par « quotacheck -u /home ». Ceci crée un fichier aquota.user dans la racine du système de fichiers concerné, ici /home ;
-donnez des droits utilisateurs par « edquota u Jules_Cesar ». Cela vous ouvre un éditeur vi avec des valeurs par défaut facilement compréhensibles, dans lequel il ne vous reste qu'à remplacer ces valeurs par celles que vous souhaitez ;
-activez les quotas par « quotaon -a ».
Attention ! Le système de quotas étant basé sur le comptage des inodes du système ext2, il ne fonctionne pas sur un système différent comme Reiserfs. Il y a une version spécifique de quota pour Reiserfs, mais encore en stade Beta.
Imaginez que le plus gros de vos ressources soient occupées par une compilation ou une recherche, gênant votre travail. Vous pouvez changer sa priorité d'exécution en la lançant avec « nice ». Exemple : « nice -15 find / -name toto & ».
Pour accélérer : « nice --15 find / -name toto & ». Vous avez droit à des chiffres entre 19 et -19, sans oublier le signe « - » devant.
Si la tâche est déjà lancée, essayez « renice ». Exemple : « renice -15 1190 ». Ici, 1190 est le numéro de processus, identifié en faisant « ps ».
Top vous permet aussi de changer la priorité des processus (commande « r »). Des programmes d'administration graphique comme Webmin permettent aussi de faire ceci.
Cela fait partie de la différence entre l'informatique domestique et le monde des grands systèmes, au même titre que le multi-utilisateurs.
Pour ne pas monopoliser une console, voire le PC à la mode « zindozs » (en cas de grosses compil par exemple), il y a mieux que le traditionnel « bg, renice » : le batch.
Le batch va vous permettre de lancer un travail souvent long ou d'une importance mineure. C'est encore le travail dont le résultat ne vous intéresse pas dans l'instant mais vous voudrez le retrouver, classer. Tapez « batch ». Si la commande n'existe pas : « at -qe -m now », saisissez votre commande, puis <Ctrl-d>. La commande va être lancée par le démon atd. Vous pouvez donc vous délogger sans tuer la tâche, ce n'est pas le cas de « bg » ou « ma-commande& », c'est un pas de plus vers la sécurité (avouez : combien compilent leur noyau dans une console sous le compte root ET ne restent pas devant leur écran !? ;o). Plus important encore le travail batch ne consomme que les restes des ressources laissés par les autres taches (nice élevé) : la machine reste à votre service. Le fin du fin : le travail terminé, un mail contenant les résultats (stdout) de la commande viendra vous en avertir (configurez une boîte recevant le mail local avec kmail, ou « mail »). Enfin vous n'aurez plus d'excuse de ne pas utiliser « su » plutôt que le compte root : les mails sont envoyés à votre profil même si la commande « batch » ou « at » sont lancées sous root depuis un xterm en passant par su. En résumé : simple, efficace, avantageux et élégant !!! plus d'info avec « man batch » ou « man at » ; Voici un exemple de commande batch (modifiée de la Mandrake 7.2) le « -m » sert à renvoyer un message même si il n'y a pas de résultat :
#! /bin/sh prefix=/usr exec_prefix=/usr exec /usr/bin/at -qe -m now "$@" |
Vous trouvez que le système est un peu gourmand en mémoire ?
Posez-vous des questions sur les services (daemons) lancés. Faites un « ps aux », et regardez ce qui est lancé. Il y a peut-être des services que vous n'utilisez pas.
Les plus courants :
httpd : le serveur Apache. Sert des pages web. Rarement utile sur une machine cliente
mysql : la base de données mysql
nfsd : le partage de disques en réseau
smbd : les services d'échanges avec Windows en réseau
postfix : le serveur de mails
postmaster : la base de données postgresql
portmap : le service qui accepte les connexions distantes (sert à nfs, telnet...)
inetd : le service qui détecte si un client a besoin d'un service (xtel, talk, ftp, telnet, finger...)
lpd ou cupsd : le service d'impressions. Avez-vous une imprimante ?
crond : le service qui effectue les tâches à intervalles programmés
ssfd : pour les réseaux sécurisés (si vous êtes serveur seulement)
Pour arrêter un service : « /etc/(rc.d/)init.d/service_a_arreter stop ».
Vous verrez aussi en faisant « ps aux » un certain nombre de mingetty. Il s'agit des consoles F1 à F6. Si vous n'avez pas besoin de tout ça, (une seule suffit, et encore...), éditez le /etc/inittab, et commentez les lignes comme 2:2345:respawn:/sbin/mingetty tty2 (laissez-en quand-même une, sauf si vous êtes toujours en mode graphique). Autre possibilité : ne commentez pas les lignes, mais enlevez seulement les chiffres des runlevels graphiques. De cette manière, vous aurez 6 shells lorsque vous n'utilisez pas le mode graphique, et moins lorsque vous avez X, gourmand en ressources.
200 ko de gagnés à chaque fois. Prendre cette modification en compte à chaud : « init q ».
Autre gain de place en RAM : en lisant le résultat de « ps ax », vous verrez peut-être des lignes du genre
sh /usr/sbin/quelque_chose |
Ces lignes signifient que le programme quelque_chose a été lancé lors du démarrage par un shell et que ce shell n'a pas été quitté. Trouvez dans les fichiers d'initialisiation (quelque part dans /etc) ce qui lance ce service et rajoutez « exec » devant. Le shell sera quitté lors du lancement du programme. Qui a dit que les scripts fournis avec les distributions étaient écrits avec les pieds ? Chaque shell inutile en moins = quelques centaines de ko disponibles en plus.
Diminuer les animations et gadgets sur KDE (>= 2.2) : lancez « kpersonalizer ».
Les utilitaires graphiques disponibles sur vos systèmes ne changent en réalité pas l'heure du BIOS, mais seulement l'horloge système UNIX. Pour la mise à l'heure « en dur », faites « hwclock --set --date="12/31/2001 14:20:00". Pour vérifier le résultat : « hwclock --show ». Pour syncroniser l'horloge système avec celle du BIOS : « hwclock --hctosys ».
Utiliser Internet pour mettre la pendule à l'heure : « rdate -s 128.115.14.97 » (sous root).
Imaginons que vous vouliez qu'un travail finisse (une compilation, par exemple), et que vous vouliez laisser votre machine à quelqu'un d'autre.
Tapez « nohup la_commande » tout simplement. Même après que vous êtes délogué, le programme tourne toujours.
Linux démarre selon un niveau d'exécution défini dans le /etc/inittab (par ex level 5 pour X sous Redhat). Un certain nombre de services sont lancés automatiquement. Il se peut que certains d'entre eux ne vous servent pas. Vous pouvez supprimer selon votre cas de figure :
-lpd si vous n'avez pas d'imprimante
-crond et atd si vous n'utilisez pas la gestion de tâches programmable
-gpm, le gestionnaire de souris en mode texte,
-Sendmail si vous n'envoyez pas de courrier par cette méthode
-Postgres si vous n'utilisez pas cette base de données...
Pour cela, vous pouvez lancer le setup de Redhat, ou un éditeur de Système V (ksysv ou tksysv)
Un certain nombre de services (ou daemons) tournent en tâche de fond, attendant un ordre.
Généralement, ces services sont lancés par des fichiers situés dans /etc/(rc.d)/init.d/ (selon les distributions).
Ils se démarrent (sous root) à la main soit en tapant « /etc/rc.d/init.d/nom_du_service start », soit tout simplement « service nom_du_service start » (« restart » pour redémarrer).
Pour les interroger, remplacez « start » par « status », et pour les arrêter, utilisez plutôt « stop ».
Pour le démarrage automatique, cela dépend des distributions. Sur Red Hat et dérivées, vous mettez le nom du service dans /etc/rcx.d/, précédé de symboles.
Exemple de contenu de rc5.d :
S71sound@
S85gpm@
S85httpd@
Ce dossier sera traité par ordre alphabétique. Le S (start)signifie que dans le runlevel 5, ces 3 services démarreront (K pour kill).
Le chiffre est arbitraire. Plus il est grand, plus se service aura une chance de démarrer après les autres. Dans notre exemple, deux services portent le numéro 85, mais cela n'a pas d'importance car leur nom est forcément différent, et comme « g » précède « h », le système démarrera gpm avant httpd, ce qui dans ce cas n'a aucune importance.
A l'invite, tapez « uname -a ». Lorsque vous demandez de l'aide, donnez toujours les renseignements sur votre distribution (Ex : Redhat 7.3), le noyau (ex : 2.4.18), et le serveur X (4.2).
Ne polluez pas les newsgroups si vous avez une version antédiluvienne (celle que je viens de citer, dans 3 mois !). Une version hyper à jour est indispensable, surtout pour une machine neuve.
C'est très difficile sous Unix en général.
http://www.freenix.fr/unix/linux/HOWTO/mini/Ext2fs-Undeletion-10.html
Il existe un utilitaire du nom de recover (et son interface gtkrecover) qui vous permet de récupérer des fichiers effacés assez facilement.
La méthode la plus simple et la plus répandue : Midnight Commander (mc) dispose d'un mode de récupération (<F9> Commande - récupération de fichiers). Problème : ne marche que sur ext2.
Il peut arriver qu'une installation difficile fasse sauter la table des partitions. Une seule solution (plutôt que de tout réinstaller) : « gpart ».
La manière dont Linux écrit sur son système de fichiers est assez propre, et la machine ne subit pas une fragmentation des fichiers notable dans la plupart des cas. Si vous tenez absolument à défragmenter, vous pourrez trouver un programme du nom de e2defrag.
Plus intéressant : pour redimensionner une partition ext2, vous pourrez vous procurer ext2resize. Malheureusement, c'est en mode texte seulement. DiskDrake (de Mandrake) est très intuitif, en mode graphique. Sinon, Gnuparted. Attention aux pertes de données !!
Si votre console affiche des signes bizarres au lieu des caractères accentués, faites « consolechars -f lat1-16 ».
Il s'agit là d'un outil graphique pour faire la plupart des réglages mentionnés dans ce guide de survie. Il ne se contente pas de faire les réglages, il les optimise et relance les parties du système si besoin. Idéal pour configurer le réseau, les utilisateurs, les disques, le démarrage, l'heure, etc. Se lance tout bêtement par la commande « linuxconf ».
À mon avis, encore mieux que Linuxconf. Vous avez une cinquantaine de fonctions (partages Samba, gestion des services apache, ftp, telnet, etc., réglages de cron, les processus actifs...). Tous ces réglages sont accessibles à partir d'un navigateur web, local ou distant.
Le fonctionnement est très simple : la machine à paramétrer doit avoir un webmin qui tourne (se lance par « /etc/rc.d/init.d/webmin start »), de préférence lancé automatiquement au démarrage. La machine qui veut accéder aux réglages doit lancer dans un navigateur la commande : « http://adresse_ip:10000/ ».
Attention ! Si vous avez perl-ssl sur votre machine, webmin démarrera automatiquement en mode sécurisé et vous ne pourrez y accéder que par « https://adresse_ip:10000/ ». Encore faut-il que votre navigateur supporte https.
« startx ».
Si ça ne fait rien du tout, vous avez oublié d'installer X ! Recommencez l'installation en « mise à jour ».
Si ça commence, puis que ça plante, ça se complique.
Selon votre distribution, tapez « xf86config », « Xconfigurator », « configX », « xf86setup », »yast » (suse), « xf86cfg » (XFree 4.02)
Mon faible va à Xconfigurator, livré avec Redhat, qui détecte la carte graphique et la souris.
Si ça coince, il va falloir éditer le fichier /etc/X11/XF86Config (ou pas « /X11/ ») à la main. Une bonne doc, et bon courage ! Lisez « man XF86Config » et le man de votre serveur X. Par exemple, il peut falloir rajouter des options comme « linear » ou « noaccel », voire limiter la mémoire à 14 ou 16 Mo de RAM (cartes ISA ou VESA).
Si vous devez VRAIMENT fabriquer vos modelines, plutôt que de vous lancer dans des formules incompréhensibles, tentez plutôt le calcul automatique sur la page http://www.inria.fr/cgi-bin/nph-colas-modelines-fr. Si vous êtes puriste, vous êtes même invité à le faire à titre systématique pour toutes vos résolutions. Idéal pour afficher la télé en plein écran.
Autres sources de problèmes : X n'existe pas. Créez-le par « cd /usr/X11R6/bin », puis « ln -s monserveurX X » (crée un lien symbolique de X vers monserveurX). Le serveur en question s'appelle quelque chose comme XF86_SVGA, dans le même répertoire.
Autre cas, X existe, mais pointe vers un mauvais serveur X (se détecte par « ls -l /usr/X11R6/bin/X ») :
« rm /usr/X11R6/bin/X », puis « ln -s monserveurX X » dans /usr/X11R6/bin/.
De nombreuses cartes récentes ont un serveur X spécifique
(XBF pour les Intel 740...) et un mode d'emploi spécifique.
Liste
des cartes compatibles à http://www.xfree86.org/cardlist.html.
Encore un problème : dans certaines distributions, si vous utilisez Xfree 4.0, le fichier de configuration s'appelle /etc/X11/XF86Config-4. Inutile de vous acharner sur le fichier XF86Config, qui n'est pas lu. Pour le savoir, examinez le fichier /var/log/XFree86.0.log si vous en avez un.
Pour installer XFree86 4.x, téléchargez tous les binaires, puis lancez en ayant quitté X la commande « sh Xinstall.sh ». À la fin de l'installation, vous pourrez configurer avec xf86cfg (mode graphique) ou xf86config (mode texte).
Attention, gros piège si vous mettez à jour Xfree sur RedHat!!
Sur RedHat, le fichier xfs (serveur de fontes) est spécial et ne correspond pas à XFree standard. Si par malheur vous installez les binaires de XFree sans sauvegarder xfs de Redhat et que vous reboutez, le démarrage est impossible !!! (Aventure vécue sur une 6.0, pas de problème avec une Mandrake 7.0 et Xfree 4.0).
Sur Red Hat/Mandrake, éditez le /etc/inittab, puis remplacez « id:3:initdefault » par « 5 ». Sur Suse, remplacez 2 par 3. Sur Corel, remplacez 1 par 2. Sur Slackware, remplacez 3 par 4.
[ Sur Debian, le niveau de démarrage est 2. Le gestionnaire de démarrage graphique est lancé en créant un lien symbolique : « cd /etc/rc2.d » puis « ln -s ../init.d/kdm S99kdm » par exemple si ce lien n'existe pas déjà.]
Voilà comment les auteurs de distributions compliquent la vie des Linuxiens et des rédacteurs de documentation. Ceci vous lance par défaut xdm (vérifiez qu'une ligne à la fin du fichier lance xdm), ou, mieux, kdm si vous renseignez correctement la ligne qui est lancée par le level 5. Pour le window manager par défaut, il faut créer un fichier $HOME/.xsession (inutile pour kdm), et le rendre exécutable (« chmod +x »). Placez-y le nom de votre WM préféré.
Pour choisir le gestionnaire de démarrage graphique, la solution ne se trouve plus dans le /etc/inittab,qui doit finir par
x:5:respawn:/etc/X11/prefdm -nodaemon |
mais dans /etc/X11/prefdm qui lance xdm, gdm ou kdm au choix. Vous y trouverez aussi le PATH.
Ensuite, dans le centre de configuration kde, applications, configuration du bureau, sessions, rajoutez les noms des wm que vous voulez choisir au démarrage (exemple « window maker »). Pensez aussi à changer la langue de kdm.
Comme toujours, Gnome a son équivalent., le Xsession doit être configuré comme pour kdm, et il faudra créer des fichiers spéciaux pour chaque WM dans /usr/bin/gdm en suivant le modèle de ceux qui y sont déjà.
Si le redémarrage plante, vous pouvez essayer à LILO : « linux single ». Cela empêchera le démarrage automatique de X et vous permettra d'intervenir, par exemple pour remettre l'initdefault à 3.
Pour éviter cet ennui, il vaut mieux tester d'abord en tapant « init 5 » à l'invite. Si un incident se produit, retapez « init 3 ». Une fois que tout marche seulement, passez l'initdefaut à 5 et relancez. (Adaptez les chiffres à votre distribution, comme expliqué plus haut).
Dans le cas de kdm sous Red Hat, vous constaterez que le fond d'écran choisi par défaut n'apparaît pas, mais seulement le logo de Redhat, nommé xbanner.
Le fichier /etc/X11/xdm/Xsetup_0 n'est plus utilisé.
Astuce : Pour démarrer au choix en mode texte ou graphique, au lieu de taper « linux » au prompt de lilo, tapez « linux 3 » (ou 5, ou ce que vous voulez).
Re-astuce : pour démarrer en choisissant le niveau de démarrage dès le début, éditez votre lilo.conf, repérez la section qui démarre linux, copiez-la plus loin, changez le libellé de démarrage (ex : linux en linuxtexte) et rajoutez « append="3" » dans la section. Activez les nouveaux réglages en tapant « lilo ». La même méthode marche bien sûr pour les autres gestionnaires de démarrage.
Après, vous pouvez commencer à jouer : gimp pour la retouche photo, Netscape, profiter du multi bureaux...
Vous pouvez oublier toutes les commandes qui précèdent. Il existe des équivalents graphiques, mais qui ne gèrent pas les opérations complexes. Dommage...
Vous constaterez vite qu'il existe de nombreux window managers : kwin pour KDE, le plus abouti (évitez si vous n'avez pas 64 Mo de RAM), afterstep (le plus classe), fvwm95, mlvwm (imitation mac), window maker, Enlightenment, le plus gourmand en couleurs et le plus psychedelique...
À noter que Gnome n'est pas un WM mais s'appuie sur un WM, de préférence Gnome-compliant (Window maker ou Enlightenment).
Chaque utilisateur peut choisir un WM différent des autres et avoir ses propres paramétrages.
Il est probable que votre WM vous propose des menus avec tout plein de programmes. C'est en général un paramétrage par défaut. Il est possible qu'un certain nombre d'entre eux ne répondent pas. Il ne vous reste qu'à les installer. À l'inverse, il est possible qu'un certain nombre de programmes soient installés, mais n'apparaissent pas dans les menus. Allez donc faire un tour dans /usr/X11R6/bin ou /usr/local/bin. Pour les rajouter aux menus, consultez la doc de votre WM. Comme d'habitude, c'est KDE qui s'en sort le mieux.
Pas de problème : c'est maintenant un xterm.
Vous pouvez en lancer plein en même temps, et même avec des utilisateurs différents (commande « su - »)..
Astuce : sous KDE, en faisant glisser un fichier vers un xterm, vous pouvez y coller directement son nom ou vous placer dans son répertoire.
Si X est configuré en 640x480 en couleurs 8 bits, c'est très insuffisant. Pour travailler correctement, 16 bits et 800X600 sont un strict minimum (1Mo de mémoire sur la carte), 1024X768 sont encore mieux (2Mo de mémoire video). 800X600 est le paramétrage minimum pour KDE.
Essayez <Ctrl-alt-+> (le plus du pavé numérique). Si l'image change de taille, c'est gagné ! Sinon, relancez Xconfigurator(Red Hat), YAST (Suse), ou ce que vous voulez d'autre, et répondez aux questions sur la résolution. En dernier ressort, éditez /etc/X11/XF86Config (certaines distributions ont le XF86Config directement dans /etc) à la main.
Pour que l'écran démarre directement dans la bonne résolution, repérez d'abord le paragraphe consacré à votre serveur X, et dans celui-ci la ligne du XF86Config, section screen, subsection display où l'on peut lire :
640x480 800x600 1024x768 (par exemple), et inversez l'ordre pour mettre en premier votre résolution préférée (dans votre nombre de couleurs).
Si vous ne voulez pas d'écran virtuel plus grand que votre plus grande résolution, commentez (« # ») la ligne « virtual... ».
Attention ! Ne vous trompez pas de section. Inutile de trafiquer la section sur l'affichage monochrome si vous êtes en SVGA. Sur Xfree 4.0, il n'y a plus qu'une seule section.
plusieurs possibilités :
-« startx -- -bpp 16 ». Ça marche, mais c'est pénible (À noter que le « -- » signifie la fin des options).
DefaultColorDepth 16 |
dans le XF86Config (section screen, dans la rubrique correspondant à vote serveur X, avant « subsection display »).
Attention ! Dans Xfree 4.0, il faut mettre
DefaultDepth 16 |
Lancez « xvidtune » à partir d'un xterm. Notez les valeurs qu'il vous donne (commande « show »). Ouvrez le /etc/X11/XF86Config. Vous devez trouver une ligne de Modeline où toutes ces valeurs apparaissent. Marquez-la d'un commentaire. Agissez sur les réglages de xvidtune. Lorsque le centrage vous convient, remplacez les anciennes valeurs du XF86Config par les nouvelles que vous donne xvidtune. Faites pareil pour toutes les résolutions. Kvidtune est encore plus beau !
Attention ! Sur Xfree 4.0x, les Modelines de XF86Config sont facultatifs. Il autodétecte les résolutions du moniteur. Si vous y tenez vraiment, vous pouvez mettre des modelines identiques au même endroit qu'auparavant.
Vous pouvez utiliser des polices TrueType de Windows.
Pour cela, installez le serveur de fontes xfstt. Le rpm devrait tout installer facilement. Entre autres, il rajoute une ligne
FontPath "inet/127.0.0.1:7101" |
dans XF86Config, ainsi qu'un service xfstt dans /etc/rc.d/init.d/
Copiez vos fontes .ttf dans /usr/share/fonts/truetype. (ou créez un lien symbolique de même nom vers le répertoire de fontes sur votre éventuelle partition Windows).
Vous allez dire que les ascenseurs, vous connaissez. Eh bien, ce n'est pas si sûr.
Les anciens programmes X (xfm, xpaint...), reconnaissables à leur graphisme 2D assez moche, utilisent des ascenseurs différents de la norme habituelle :
|
Descendre |
Monter |
---|---|---|
Lentement |
Bouton gauche, en haut |
Bouton droit, en haut |
Vite |
Bouton gauche, en bas |
Bouton droit, en bas |
Tirer l'ascenseur manuellement : bouton central |
Vous pouvez tester ceci avec xpaint, menu aide.
<Ctrl-Alt-F2>. Pour revenir sur la console graphique : <Ctrl-Alt-F7> (si vous avez bien 6 consoles texte. Sinon, adaptez). Pour lancer une deuxième console en mode graphique : « startx -- :1 ».
La deuxième console graphique est maintenant F8.
Si vous avez déjà utilisé la commande « su », vous constaterez que l'utilisateur invité peut lancer des programmes dans la console, mais pas de programme graphique.
La solution : l'hôte doit lancer la commande « xhost + »
L'invité tape « export DISPLAY=:0.0 » (Le premier 0 désigne la première console graphique, le deuxième 0 est facultatif, il désigne le numéro d'écran, généralement un seul).
Il peut alors lancer n'importe quel programme graphique comme s'il était chez lui.
ATTENTION : cette commande permet à n'importe qui d'afficher un programme sur votre écran, y compris par le réseau ! refaites vite « xhost - » pour être tranquille. Sinon, lancez xhost par « xhost + machine_autorisee » (tous les utilisateurs de cette machine -et même peut-être d'autres- deviennent autorisés).
Si votre machine est reliée à l'Internet ou un autre réseau non sûr, vous devriez plutôt une méthode basée sur xauth et des cookies (détails dans le how-to Remote-X-apps).
Astuces : Voir la valeur d'une variable : « echo $DISPLAY », ou « echo $LANG », ou ce que vous voulez d'autre. Voir toutes les variables : « env ».
Autre possibilité : lancer un seul programme sur l'autre affichage : « emacs -display :0 ». Si vous trouvez que c'est trop lent, utilisez lbxproxy.
Exemple : « lbxproxy 192.168.0.1:0 », puis « emacs -display :63 ». Pour vérifier si le serveur X accepte de se faire traiter de la sorte : « xdpyinfo » (doit supporter LBX).
<Ctrl-Alt-Eff> ou les menus du window manager (l'idéal). Pour quitter Linux complètement, il ne faut jamais éteindre sauvagement. Si vous êtes tout seul (pas de réseau) : « halt », « reboot » ou « shutdown -h now » avec les bonnes options de délai (« man shutdown ») dans un x-term.
Autre possibilité : <Ctrl-Alt-Suppr> (depuis une console texte), puis éteindre la machine avant le redémarrage.
Si vous êtes en mode graphique automatiquement (kdm), en quittant, vous vous retrouvez à nouveau en console de login. Choisissez le menu « arrêter ».
Si vous êtes en mode graphique avec xdm, la solution est de changer de runlevel : « init 0 » pour arrêter ou « init 6 » pour rebooter.
Attention ! si vous utilisez le login manager de KDE 1, ne choisissez pas root ou console seulement si vous voulez pouvoir arrêter la machine depuis un compte utilisateur en mode graphique, sinon risque de blocage.(merci à Michel STEPAN)
Les principales marques (NVidia, Matrox, 3DFX...) mettent à disposition des pilotes 3D.
Pour ma Nvidia Riva128, j'ai tout simplement dézippé le nvidia-X-GLX..., quitté X, puis tapé à partir du répertoire d'installation la commande « ./riva_install ». Ensuite, à vous Quake !! (procédure valable pour Xfree 3.x).
La nouvelle version du driver Nvidia pour Xfree 4 est assez ardue à installer. Les explications ici :
http://www.lea-linux.org/hardware/nvidia.php3
En gros, il faut
-Compiler un kernel avec le support AGP. Insérer le module (« modprobe agpgart »).
-récupérer les fichiers NVIDIA_kernel-1.0-2880.tar.gz et NVIDIA_GLX-1.0-2880.tar.gz
-les dézipper quelque part
-taper « make install» dans nvidia_kernel et dans nvidia_glx
-remplacer Driver "nv" par Driver "nvidia" dans XF86Config.
-et insérer la ligne ci-dessous.
Load "glx" |
Dans la section Module de votre XF86Config.(pas de "dri")
Sur mon portable avec une ATI rage LT Pro (mach 64), l'accélération est très correcte sous XFree 3.3.x...à condition d'être activée. Vous feriez bien entre autres de décommenter la ligne
Load "glx" |
dans votre XF86Config.
Attention ! Pour XFree 4.x (pour les cartes qui sont supportées sauf les Nvidia), il faut ajouter
Load "dri" |
À condition, bien sûr d'avoir installé DRI, disponible sur http://dri.sourceforge.net/doc.phtml.
Dans l'état actuel des choses, les portages GLX vers DRI n'ont pas encore été tous faits et sont assez difficiles et longs à faire. Comme le portage de UTAH-GLX sur XFree 4 a commencé, il est probable que de nombreuses cartes seront supportées sous XFree 4 en UTAH-GLX avant DRI.
Il y a une superbe documentation à http://www.linux-france.org/article/3d/ (par Serge ROSSI).
Pour les cartes ATI, il existe un autre pilote accéléré, mais seulement en 2D : GATOS (http://gatos.sourceforge.net/). Il fonctionne avec Xfree 4.x et supporte plus de cartes que DRI. Il supporte aussi la sortie TV. En revanche, DRI supporte certaines carte avec l'accélération seulement en 3D (y compris les Mach 64). Sachant que les deux pilotes sont incompatibles, vivement une fusion des pilotes !
Quelques infos :
D'une manière générale, vous devez installer Mesa (le support GLX) pour XFree 3.x. Pour XFree 4.x, Mesa est inclus.
Le système GLX est une encapsulation d'OpenGL pour Xfree. Donc, il supporte la 3D en réseau. Pour aller plus vite, DRI (http://dri.sourceforge.net) permet d'accéder directement au matériel sans passer par X, et UTAH-GLX (http://utah-glx.sourceforge.net/)permet aussi le rendu direct, mais pour une seule application à la fois.
Des détails sur http://www.linux-france.org/article/3d/securite.html.
Vous pouvez tester par « glinfo » et « glxinfo ».
Si vous avez le paquetage Mesa-demo , vous pouvez lancer les démos (je vous recommande « reflex »)
Vous pourrez en profiter ensuite avec tuxracer, tuxkart, chromium, gltron et bien d'autres...
Avec XFree 4.0, vous pouvez avoir 2 cartes graphiques et donc 2 affichages.
-Utilisez une AGP et une PCI et dites à votre BIOS laquelle doit démarrer par défaut. Démarrez la machine en mode console texte : seul le premier écran affichera quelque chose.
-Tapez XFree86 -configure, ce qui générera un fichier /root/XF86Config.new. Commentez-y les lignes qui parlent de glx et dri.
-Tapez « XFree -xf86config /root/XF86Config.new ». Ceci devrait démarrer X normalement sur le premier écran et une simple mire X sur le deuxième. Si ça ne marche pas, vous avez une chance en inversant l'ordre de démarrage dans le BIOS.
-Modifiez le XF86Config pour mettre votre clavier en français, les bonnes résolutions et le niveau de couleurs de votre choix, qui doit être le même pour les deux cartes. Indiquez également la position respective des moniteurs en début de fichier :
Screen "Screen0" Screen "Screen1 RightOf Screen0" |
-Copiez ce fichier à la place de votre ancien XF86Config.
-Démarrez avec « startx - +xinerama »
Pour les Matrox Dual Head, il y a un pilote et un configurateur graphique ici : http://www.matrox.com/mga/support/drivers/files/linux_07.cfm.
De plus en plus de cartes graphiques ont une sortie Télé. Malheureusement, la plupart du temps, cette sortie n'est pas supportée par les pilotes sous X. Nvidia fait exception à la règle, puisque, depuis la version 1.0-1251, le pilote supporte la sortie TV de toutes les cartes. Il y a une documentation sur le sujet dans .../NVIDIA_GLX-1.0-xxx/usr/share/doc/. Seules les cartes à base de Geforce 2 MX permettent d'avoir la fonction TwinView (double écran identique ou complémentaire). Vous devez bien sûr commencer par configurer correctement le pilote Nvidia.
Un exemple de fichier de configuration (de Xfree)
(Fin de la Section Screen) Option "TwinView" Option "SecondMonitorHorizSync" "30-50" Option "SecondMonitorVertRefresh" "60" Option "Metamodes" "800x600,800x600;640x480,640x480" Option "TwinViewOrientation" "Clone" |
Pour les cartes Matrox G400 et G450, il y a un pilote spécial ici : http://www.matrox.com/mga/support/drivers/files/linux_07.cfm.
Pour les cartes ATI, installez XFree 4.x + GATOS (http://gatos.sourceforge.net/). Le support TV s'active simplement en basculant de console (Ctrl-Alt-F?).
Pour les ATI Mach 64, vous aurez besoin d'une version patchée de GATOS, que vous trouverez ici : http://www.retinalburn.net/linux/tvout.html.
Vous voulez voir Loana s'agiter ? No problem.
Allez sur http://www.divx.euro.ru/download.htm pour récupérer le binaire de divx, que vous dézipperez dans /usr/lib/win32,(unzip -d /usr/lib/win32 binaries-010122.zip), puis compilez et installez classiquement avifile. Vous pourrez alors lancer « aviplay » pour vos fichiers .avi.
Autre possibilité : X Movie Player, téléchargeable sur http://xmps.sourceforge.net/pres.php3, ou tout simplement DivXPlayer, le lecteur officiel (en phase alpha, mais ça marche).
Vous avez cinelerra (http://heroinewarrior.com/cinelerra.php3), héritier de Broadcast 2000. L'installation du binaire nécessite des précautions (version Beta1) : rpm -i --nodeps --force programme.rpm.
Ensuite, « ln -s /usr/lib/libstdc++.so.4 /usr/lib/libstdc++.so.3 »
Ce programme semble ne pas marcher sur les distributions qui utilisent la libpng3 (Mdk 8.2 par ex.), car il nécessite la libpng2, incompatible :-(
Il est également très consommateur de ressources.
L'alternative est filmgimp (http://filmgimp.sourceforge.net/), très utilisé dans les milieux professionnels.
Tous les détails et le reste sur http://www.linuxenrezo.org
Procurez-vous une carte Ethernet compatible Linux (liste à http://www.scyld.com/network/) et installez-la (essentiellement vérifiez la présence d'un module adapté dans /lib/modules/2.x.xx), sinon compilez. Rajoutez les bons paramètres dans /etc/modules.conf. Activez-la par « modprobe votre_module ». Vous pouvez voir le module chargé en faisant « lsmod ». Pour ne plus avoir à taper cette commande, insérez dans le /etc/modules.conf des lignes comme :
alias 3c509 eth0 options eth0 irq=10 |
Si votre carte réseau utilise une IRQ qui ne vous convient pas, il est souvent possible de la changer avec une disquette de paramétrage sous DOS (même sur une autre machine, ces réglages étant permanents). Même problème pour choisir entre le coaxial BNC et le RJ45 sur les cartes de type Combo. Les paramètres sont enregistrés directement sur la carte et sont actifs dès l'allumage de la machine. Il faut simplement éteindre et ré-allumer l'ordinateur pour que la carte mère en tienne compte la première fois.
Si votre carte est une PCMCIA sur un portable, voyez la section consacrée aux portables.
Si votre carte réseau est USB (kawasaki), mettez :
alias eth0 kaweth |
Voir http://drivers.rd.ilan.net/kaweth/
Enfin vous avez des utilitaires de diagnostic et de paramétrage de la carte réseau ici : http://www.scyld.com/diag/index.html. Entre autres, l'utilitaire mii-diag.
Vous devez choisir une adresse IP, dont la forme est « X.X.X.X », nombre dont les X ont une valeur comprise entre 0 et 255. Pour un réseau privé, un bon commencement est « 192.168.X.X »., avec un netmask de 255.255.255.0 (Réseau de classe C). Ainsi, 192.168.X est le numéro du réseau, et le dernier X le numéro de machine. Le troisième chiffre vous servira à différencier vos différents réseaux et le quatrième à différencier les différents postes d'un réseau (n'utilisez pas le zéro). Vous avez donc droit à 255 réseaux de 254 postes chacun.
Quand tout ceci est fait, tapez « ifconfig eth0 192.168.0.1 ». Dans ce cas, vous attribuez l'adresse 192.168.0.1. à votre première carte ethernet : eth0 (eth1 pour la deuxième, etc). Vous avez créé un réseau reliant directement les cartes d'adresse 192.168.0.x. et de même netmask. Vérifiez que tout va bien en tapant « ifconfig ». Vous devez voir apparaître un paragraphe montrant tout ce que vous avez fait.
Pour voir si tout va bien, pinguez votre carte : « ping 192.168.0.1 » (<Ctrl-c> pour arrêter). Si vous n'avez pas de réponse, retournez à la case départ.
Admettons que vous ne vouliez pas donner une IP fixe aux machines (par exemple pour passer moins de temps à faire les paramétrages).
Vous aurez besoin qu'un serveur DHCP tourne quelque part sur le réseau et réponde à vos requêtes en vous attribuant une adresse IP. Votre machine n'aura besoin que d'un nom.
Vous êtes peut-être déjà un client DHCP sans le savoir. Par exemple si votre fournisseur d'accès Internet ne vous donne pas d'IP fixe, ou si vous utilisez le câble (la connexion au modem-câble se fait en DHCP).
Ce paramétrage est très facile si vous utilisez linuxconf ou control-panel de RedHat, voire Webmin. Vous précisez simplement votre interface ethernet (le plus souvent eth0). Il s'agit simplement de supprimer les lignes donnant l'IP fixe dans /etc/resolv.conf et de laisser search.
Vous aurez besoin des paquetages dhcp-client et dhcpcd.
Votre fichier /etc/sysconfig/network-scripts/ifcfg-eth0 doit contenir à peu près ça :
DEVICE="eth0" IPADDR="" # Évidemment, on utilise DHCP NETMASK="255.255.255.0" ONBOOT="yes" BOOTPROTO="dhcp" # Puisqu'on vous dit qu'on est en DHCP ! |
Le service se lance par « /etc/rc.d/init.d/dhcpd start ».
Compléter...
Vérifiez le branchement, vérifiez que le correspondant est bien sur le même numéro de réseau 192.168.0 (par ex 192.168.0.2), et tentez un « ping 192.168.0.2 ». Si ça répond, la connexion est établie. Quittez par <Ctrl-C>. Sinon, recommencez au début.
Dans ce cas (un seul numéro de réseau), il n'y a pas
de route à définir. Voir les routes :
« route ».
Une cause qui fait que le ping
répond en local, mais pas en distant est une mauvaise
configuration d'IRQ.
Autre possibilité, si vous utilisez du coaxial : votre câble est interrompu quelque part ou n'a pas de bouchon à ses 2 extrémités (ce type de câble ne doit jamais être branché directement sur la carte réseau, mais par l'intermédiaire d'un T). Si vous utilisez du RJ45 sans HUB, il vous faut un câble spécial (croisé).
Normalement, vos utilitaires de configuration devraient avoir généré des fichiers de ce genre :
Exemple de /etc/sysconfig/network :
NETWORKING=yes GATEWAYDEV=eth0 # la carte par où vous allez chercher des ressources sur le réseau FORWARD_IPV4=no # yes si vous voulez partager votre connexion internet DOMAINNAME=mon_domaine HOSTNAME=ma_machine.mon_domaine GATEWAY=192.168.0.1 # l'adresse de la machine qui vous donne accès à un autre réseau |
Sur Debian, ces paramètres sont dans /etc/network/interfaces.
Exemple de /etc/sysconfig/network-scripts/ifcfg-eth0 :
DEVICE="eth0" # votre carte réseau IPADDR="192.168.0.4" # votre adresse IP NETMASK="255.255.255.0" NETWORK="192.168.0.0" # le masque de sous-réseau ONBOOT="yes" |
Il faut enregistrer les adresses IP, netmask (les paramètres précédents) dans des fichiers. (/etc/sysconfig/network et /etc/sysconfig/network-scripts/ifcfg-eth0 pour RedHat), ou en utilisant « netcfg » sur RedHat.
Lancez le réseau par « /etc/rc.d/init.d/network start » (ou « restart » si vous essayez de nouveaux paramètres). C'est tout de même plus rapide que de rebouter, non ?
Il est possible de trouver une adresse IP en tapant un nom ordinaire.
Pour cela, vous pouvez :
* soit configurer /etc/hosts
(qui vous sert de serveurs de noms juste pour la machine sur laquelle
il se trouve) et y mettre quelque chose comme :
127.0.0.1 localhost localhost.localdomain 192.168.0.2 D386 cecile cecile.lourmel.fr 192.168.0.1 dx2_50.lourmel dx2_50 toto |
* soit être client d'un vrai serveur DNS :
Éditez
le fichier /etc/resolv.conf, et mettez-y :
search lourmel club-internet.fr nameserver 192.168.0.1 # votre serveur de noms local (s'il est installé) nameserver 192.117.200.10 #l'IP du DNS de club-internet nameserver 192.117.200.15 |
*Pour installer le serveur DNS :
Installez le paquetage bind.
Créez un répertoire /var/named
Configurez le fichier /etc/named.conf :
(...)
Démarrez-le : « /etc/rc.d/init.d/named start »
Attention ! Un DNS non démarré, mais joignable, va ralentir toutes les demandes utilisant des noms de machines.
De cette manière, que vous tapiez « toto » ou « dx2_50.lourmel » ou « dx2_50 », vous arrivez au 192.168.0.1.
Nous allons maintenant tenter une prise de contrôle à distance de l'autre machine. Faites « telnet 194.168.0.2 ». Loguez-vous alors comme un simple utilisateur. Si vous voulez être le root de la machine distante, vous ne pourrez le faire que dans un deuxième temps (« su - »). Faites une commande quelconque (« ls »...). vous verrez le résultat s'afficher sur la console où vous êtes physiquement. C'est très pratique, car à partir de maintenant, vous pouvez changer tous les paramètres de la deuxième console sans quitter la première.
Pour autoriser les invités telnet sur votre machine, rajoutez leur nom ou leur IP dans /etc/hosts.allow (« in.telnetd : 192.168.0.2 » par exemple). Le fichier hosts.allow est prioritaire sur hosts.deny.
Attention ! Certaines distributions n'installent pas le serveur Telnet par défaut. À vous de le rajouter.
Vérifiez également que le service inet est actif (« ps aux|grep inet » doit renvoyer « root 11646 0.0 0.8 1104 528 ? S 10:19 0:00 inetd »). S'il ne l'est pas, lancez-le par « /etc/rc.d/init.d/inet start », ou utilisez tksysv (utilitaire RedHat) pour le faire démarrer automatiquement.
Vérifiez également que le fichier /etc/inetd.conf contient la ligne « telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd ». Cette ligne fait obligatoirement référence à une ligne dans /etc/services, comme : « telnet 23/tcp ».
Pour mémoire, le service inet est un service qui tourne en tache de fond, et qui guette les requêtes sur des canaux (ici le port 23) et active les services demandés.
Mieux que telnet, qui échange les mots de passe en clair sur le réseau, ssh établit un canal crypté pour sécuriser l'échange de mots de passe.
La syntaxe : « ssh -l compte_distant ip_distante ». Ensuite, répondez aux demandes de mots de passe.
Bien sûr, sshd doit être installé sur le serveur et actif (« service sshd start »).
Pour lancer un programme qui va s'afficher sur un autre écran
: Autorisez sur la machine d'affichage (192.168.0.1) les
étrangers à utiliser votre écran (« xhost + »,
à lancer après le lancement de X). Sur la machine où
le programme tourne sans s'afficher, tapez
« export DISPLAY=192.168.0.1:0.0 ». Quand
vous lancerez le programme depuis la même xterm sur la machine
192.168.0.2, il s'affichera sur la machine 192.168.0.1.
Pour
récupérer l'affichage en local, vous devrez faire
« export DISPLAY=:0.0 ». Pour lancer un
seul programme à distance : « prog_a_lancer -display
192.168.0.1:0 » devrait suffire, mais pas toujours.
Pour interdire à nouveau l'envahissement de votre écran, « xhost - ».
Pour éviter que n'importe qui ne vienne envahir votre écran, il est prudent de spécifier les hôtes autorisés (« xhost + client_autorisé »).
Il est possible d'utiliser xdm (ou équivalent) pour se connecter graphiquement sur une machine distante (connexions XDMCP).
Sur la machine serveur, xdm doit tourner. Vous devez avoir autorisé l'accès aux autres machines dans le Xaccess (par exemple en décommentant l'étoile). Si votre machine utilise kdm, vous devez avoir dans le ??/kdmrc contient
[Xdmcp] Enable=true.
Si vous avez gdm, il n'y a(vait ?) pas de gestion de session distante.
Sur la machine cliente, vous tapez (sous root en mode console) « X -query 192.168.0.1 » (adaptez l'IP à votre cas, ou tapez un nom de machine déclaré dans /etc/hosts ou fourni par un DNS), et le gestionnaire de connexion graphique du serveur s'affiche. Choisissez un nom d'utilisateur et tapez le mot de passe. Et hop, vous travaillez graphiquement à distance.
Autre possibilité : vous tapez : « startx -- -query 192.168.0.1 ». Dans ce cas, la machine cliente a tendance à lancer plein de choses qui risquent d'entrer en conflit avec celles lancées sur le serveur. Pensez donc à annuler tout ce qui fait double emploi, comme le démarrage du window manager sur la machine cliente.
Possibilité également « startx -- -indirect 192.168.0.1 », qui doit vous afficher une liste de machines-serveurs complaisantes si vous avez correctement renseigné le Xaccess.
Encore plus fort : il est possible de faire la même chose en mode graphique (pas de ligne de commande à taper). Pour cela :
Sur le serveur : modifiez le fichier /usr/lib/X11/xdm/Xservers, et rajoutez après la ligne :0 local /usr/X11R6/bin/X la ligne « 192.168.0.2:0 foreign ».
Sur le client : éditez le fichier qui lance xdm (ou équivalent). Il peut s'agir d'un fichier rc.local ou du fichier prefdm.
Rajoutez après la ligne /usr/bin/X11/xdm ou exec $preferred $*(Makdrake 7) la ligne « exec /usr/bin/X11/X -indirect 192.168.0.1 ».
Si votre machine distante est sous Windows, essayez Xwin32 (commercial, disponible à http://www.mcsr.olemiss.edu/computing/xwin32.html). Vous pourrez afficher une session X sur votre machine Windows.
Nouveauté : Xfree/Cygwin pour Windows. Voir http://cygwin.com/xfree/.
Un simple câble null modem série ou parallèle (dits câbles pour transferts de fichiers, ou null printer pour le câble //) peut parfaitement fonctionner en tcp/ip. Vous devrez avoir le module slip ou plip, le lancer (« modprobe plip »), et lui attribuer une adresse IP (« ifconfig plip0 192.168.0.1 pointopoint 192.168.0.2 up »). Le premier port parallèle trouvé sera toujours plip0 (depuis le kernel 2.2).
Si plip vous dit que le device est busy, assurez-vous de retirer tous les modules qui pourraient utiliser parport, arrêtez le service d'impression (« /etc/rc.d/init.d/lpd stop »), et surtout, allez voir si /proc/parport/0/irq montre bien le numéro d'IRQ de votre port parallèle et pas none.
Faites de même sur l'autre machine, en inversant les numéros d'IP.
Attention ! certains ports parallèles ne sont faits que pour les imprimantes et ne fonctionneront pas avec plip.
Autre piège : les machines peuvent se pinguer elles mêmes, mais elles échouent à pinguer l'autre : il s'agit soit d'une défaillance du câble, soit d'un port parallèle mal paramètré. Il doit être EPP ou ECP, et non en mode normal.
Quant aux ports série, ils ne fonctionnent avec slip que s'ils sont de type UART 16 550 (Ça se voit dans dmesg ou setserial)..
Pour arrêter : « ifconfig plip0 down ».
Attention ! Même si votre port parallèle
fonctionne sans IRQ pour une imprimante, une IRQ est indispensable
pour un réseau plip.
Donnez-leur des adresses appartenant à des réseaux différents (192.168.0.1 et 192.168.1.1 par exemple). Votre machine pourra accéder à 2 réseaux différents et servir de passerelle de l'un à l'autre.
Astuce : si vous ne savez pas quelle carte est eth0 et eth1, activez/désactivez-les à tour de rôle (« ifconfig ... up et down ») et regardez les diodes situées sur les cartes.
Admettons que vous avez une machine cliente (192.168.0.1) et une machine routeuse (192.168.0.4 sur eth0) reliée à un deuxième réseau par sa deuxième carte eth1. La machine cliente doit chercher ses ressources sur l'IP de la carte du routeur (192.168.0.4) à laquelle elle est raccordée. La machine routeuse doit signaler que cette même carte sert de passerelle. Cela se traduit par un
GATEWAY="192.168.0.4" GATEWAYDEV="eth0" |
dans le /etc/sysconfig/network du routeur
Voir les routes : « netstat -rn ».
Table de routage IP du noyau Destination Passerelle Genmask Indic MSS Fenêtre irtt Iface 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 212.198.35.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 212.198.35.1 0.0.0.0 UG 0 0 0 eth1 0.0.0.0 192.168.0.4 0.0.0.0 UG 0 0 0 eth0 |
Si votre machine ne doit servir que de routeur (par exemple un firewall pour raccorder votre réseau local au câble), un 486 sans disque dur suffit avec le Linux router project (http://www.linuxrouter.org/). Un OS + le réseau sur une simple disquette ! (Il existe des versions plus complètes sur le site).
La solution est l'IP-aliasing. (Merci à Vincent TOUGAIT)
Exemple : vous souhaitez partager une connexion Internet par câble. Vous avez besoin d'une adresse IP pour causer au modem-câble, et d'une autre pour causer à votre deuxième ordinateur. L'IP aliasing est une méthode qui consiste à donner deux adresses IP à une même interface (fonctionnalité à activer lors de la compilation du noyau : vous devez avoir un fichier /proc/net/ip_alias).
Vous déclarez la deuxième adresse avec : « ifconfig eth0:0 192.168.1.1 up ». (Le nombre qui suit le « : » doit être unique). Ensuite, vous procédez comme au chapitre précédent pour faire la translation d'adresses.
Inconvénients :
-Comme votre deuxième machine est physiquement reliée au réseau extérieur, elle n'est pas protégée et il peut y avoir des emmèlages de pinceaux si quelqu'un utilise la même IP sur le réseau.
-Le débit est à chaque fois divisé par le nombre d'alias utilisant la même interface.
Facile ! Créez sur la machine cliente un répertoire de montage, disons /mnt/nfs, Sur la machine serveur, définissez les répertoires a exporter dans /etc/exports (par exemple /home), définissez les hôtes autorisés dans /etc/hosts.allow, retirez-les de hosts.deny puis lancez nfs : « /etc/rc.d/init.d/nfs start »
Sur la machine locale, faites un « mount -t nfs 192.168.0.2:/home /mnt/nfs ». Cela devrait accrocher le répertoire home de l'arborescence du serveur sur votre machine locale dans le répertoire /mnt/nfs.
Le répertoire que le serveur met à disposition peut aussi bien être un disque monté. Attention ! Vous ne pourrez plus démonter le disque sur le serveur tant que le client s'en servira ! Si vous voulez le démounter malgré tout, il faudra stopper le service nfs.
Attention ! Les services nécessaires à nfs ne fonctionnent que si portmap est lancé (« /etc/rc.d/init.d/portmap start »).
Si ça vous convient, rajoutez une ligne dans le /etc/fstab du client, comme pour les cdroms ou autres disquettes. La ligne ressemblera à ceci :
192.168.0.1:/mnt/cdrom /mnt/nfs nfs defaults,noauto,ro 0 0 |
(ce qui signifie que le répertoire /mnt/cdrom du serveur 192.168.0.1 sera monté dans le répertoire /mnt/nfs du client, en lecture seule). Vous pourrez ensuite y associer un icône sur le bureau de KDE par exemple.
L'idéal est de configurer votre système avec l'automontage.
Le serveur ftp est un serveur de fichiers (file transfert protocol)
Installez les paquetages contenant le mot ftp. Ils le sont souvent par défaut.
Créez un utilisateur bidon, par exemple ftp_user et donnez-lui pour répertoire par défaut le répertoire /www/plop : « mkdir /www », puis « mkdir /www/plop », puis « useradd ftp_user -d /www/plop ». Donnez à ftp_user la propriété et les droits d'écriture sur plop. Donnez-lui aussi un mot de passe.
Une astuce pour créer plusieurs niveaux de répertoires d'un coup :
« mkdir -p /www/{rep1,rep2/sous_rep1_de_rep2,rep2/sous_rep2_de_rep2}
Pour accepter les demandes de connexion ftp, vous devez avoir une ligne
ftp 21/tcp |
dans /etc/services.
et une ligne
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a |
dans /etc/inetd.conf.
Redémarrez inetd si nécessaire (autrement dit s'il n'était pas démarré ou si vous avez modifié le inetd.conf).
Placez vos données dans /home/ftp/pub.
Vous devriez maintenant pouvoir vous connecter en anonyme avec n'importe client ftp :
« ftp nom_du_serveur »
name : anonymous
password : moi@ma_machine
Attention ! Ce mode est dangereux au niveau sécurité :
Une fois installée l'imprimante sur le serveur, vous installez l'imprimante sur le client avec printtool ou équivalent en précisant qu'il s'agit d'une imprimante réseau. Donnez l'IP et le nom d'imprimante du serveur. Éditez le /etc/hosts.lpd et rajoutez-y le nom des machines clientes (=machine.domaine) autorisés à utiliser l'imprimante. Redémarrez le serveur d'impression (« /etc/rc.d/init.d/lpd restart »)
Le /etc/printcap du client montrera quelque chose comme :
##PRINTTOOL3## REMOTE POSTSCRIPT 300x300 a4 {} PostScript Default {} # (...) :rm=192.168.0.1:\ #l'IP du serveur (rm = remote machine) :rp=lp:\ #le nom de l'imprimante du serveur. Puisque vous avez une ligne « rp » (remote printer), vous n'avez pas de ligne « lp » (local printer) |
Redémarrez le service d'impression du client (pareil que pour le serveur)
Vous n'êtes pas obligé de préciser le type réel de l'imprimante, mais simplement une imprimante postscript. Le filtre du serveur saura identifier qu'il reçoit du postscript et le transformera en langage imprimante.
Avantage : si vous changez d'imprimante, ce n'est pas la peine de reparamètrer les machines clientes mais seulement le serveur.
Pour supprimer un travail de la file d'impression, du fait que le travail en attente est très vite refilé de la file d'attente du client à la file d'attente du serveur, c'est sur le serveur qu'il faudra intervenir.
Samba est fait pour vous. Installez TCP/IP sur Windows et donnez une adresse IP à votre carte ethernet, vérifiez que ça pingue dans les 2 sens, éditez le fichier /etc/smb.conf et le tour est joué. Vous avez plusieurs interfaces graphiques pour configurer Samba, entre autres Webmin et Swat (swat se démarre automatiquement par xinetd, et se paramètre dans /etc/xinetd.d/swat) et vous y accédez par interface web avec http://127.0.0.1:901.
Sachez que samba est en fait composé de deux fonctions diamétralement opposées : Samba serveur (Linux fournit des ressources à Windows) et Samba client (Linux utilise les ressources de Windows).
Quelques détails pour smb.conf :
workgroup =lecourbe #ou ce que vous voulez d'autre, pourvu que ce soit le même que celui déclaré dans Windows |
Après un « service smb start », vous devriez voir la machine Linux dans le voisinage réseau de la machine Windows (à condition que la boucle locale lo soit active).
Si ça ne démarre pas, allez donc voir les fichiers de log dans /var/log/samba. Une cause possible est un nom de domaine déclaré dans le smb.conf différent de celui déclaré dans /etc/hosts.
Pour toutes les fonctions serveurs de samba, vous avez besoin de mots de passe. Générez le fichier /etc/(samba/)smbpasswd par la commande « cat /etc/passwd|mksmbpasswd.sh > /etc/(samba/)smbpasswd ».
Ensuite, utilisez la commande « smbpasswd » de la même manière que la commande « passwd ».
Sous Win98/Millenium, vous aurez besoin de modifier la base de Registre :
-Placez-vous sur [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]
-Faites Edition->Nouveau->ValeurDWORD
-Remplacez Nouvelle Valeur #1 par « EnablePlainTextPassword ».
-Remplacez la valeur 0 par 1.
Si la modification à la main vous effraie, vous pouvez installer PTXT_ON.INF, présent sur le cd de Windows, dossier tools\mtsutil.
Sous Win 2000, syntaxe légèrement différent (au même emplacement) :
"EnablePlainTextPassword"=dword:00000001
Insérez un paragraphe de ce type dans smb.conf :
[cdrom] #le nom que Windows verra path = /mnt/cdrom #le répertoire de montage du cdrom. Pensez à le mounter, sinon vous aurez accès à un répertoire vide. public = yes only guest = yes writable = no #logique ! printable = no |
[printers] # Un détail important : Mettez host allow = 192.168.0 127 # (127 pour vous et 192... pour votre réseau) |
Lancez samba : « /etc(/rc.d)/init.d/smb start ». « restart » si vous changez un paramètre.
Pour imprimer avec une imprimante connectée à un serveur Windows à partir d'un client Linux : « smbclient //windows/canon » (dans cet exemple, l'ordi Windows s'appelle « windows » et le nom de partage de l'imprimante est « canon »). Vous verrez apparaître un prompt : « smb:\> ». Tapez « print unfichier.txt », et c'est parti.
Vous pouvez également configurer le /etc/printcap (par exemple avec le printtool) :
##PRINTTOOL3## SMB POSTSCRIPT 300x300 a4 {} PostScript Default {} lp:\ :sd=/var/spool/lpd/lp:\ :mx#0:\ :sh:\ :if=/var/spool/lpd/lp/filter:\ :af=/var/spool/lpd/lp/acct:\ :lp=/dev/null: |
Le fichier /var/spool/lpd/lp/general.cfg contient :
export DESIRED_TO=ps export PAPERSIZE=a4 export PRINTER_TYPE=SMB export ASCII_TO_PS=YES |
Avec Cups, choisissez d'ajouter une nouvelle imprimante, sélectionnez le type smb, et mettez comme Device URI « smb://ordi_win/nom_de_partage_de_l_imprimante ».
Vous pourrez même profiter de l'accès internet de la machine Linux avec ipchains (définissez l'IP du serveur comme passerelle par défaut et mettez les coordonnées du provider dans l'onglet DNS). Vous pouvez aussi imprimer à distance, soit en installant l'imprimante avec les drivers Windows, soit en l'installant avec le driver Apple laser (même astuce que pour Linux/Linux).
Si vous aimez les messages winpopup, installez linpopup http://www.littleigloo.org/downloads.php3 (pour envoyer des messages Windows>Linux, je n'arrive pas à les faire afficher par Linux alors que Windows dit qu'ils sont partis).
Pour mounter sous Linux un disque de Windows, oubliez mount, mais faites plutôt « smbmount //windows/C /mnt/win » (nécessite le paquetage samba-client). Dans cet exemple, windows est le nom de votre machine sous Windows -original, non ?-, C est le nom de partage du disque C-de plus en plus fort !- et /mnt/win est le nom du répertoire de montage sous Linux. A partir de ce moment, vous pouvez faire toutes les opérations de transferts de fichiers facilement. Depuis les versions 2.x de Samba, smbmount a disparu, au profit de mount tout court : « mount -t smbfs -o username=toto,password=taratata //windows/C/ /mnt/win ». Avantage : ajoutez ça au /etc/fstab (chez moi, ça donne « //maman/e /mnt/zip smbfs password="",user,noauto »)et les montages se feront comme tous les montages Linux ordinaires.
Win-dos 95 pourra faire un « telnet » sur Linux, mais l'inverse n'est pas vrai car win 95 ne comporte pas de serveur telnet en standard.
Utilisez un client Windows
http://www.xsane.org/xsane-win32.html.
Vous avez des Macintosh sur le réseau. Netatalk est fait pour vous. Voyez le Netatalk Howto à
http://www.linux-france.org/article/materiel/mac/netatalk/index.html
Commencez donc par vous assurer que le ip-forwarding est
inclus dans le noyau. Si c'est non, recompilez. Vous devez ensuite
installer ipchains. Puis activer le IP forwarding en
tapant « echo 1 > /proc/sys/net/ipv4/ip_forward ».
Le serveur doit autoriser l'accès aux clients en faisant :
« ipchains -A forward -j MASQ -s 192.168.0.0/24 -d 0.0.0.0/0 »
pour que toutes les machines 192... aient l'accès vers
n'importe quelle autre adresse (-s=source, -d=destination). Le
serveur doit aussi déclarer l'IP par laquelle il est raccordé
au réseau local comme route.
Les
clients n'ont strictement rien de spécial à faire
d'autre que de déclarer l'IP du DNS du provider dans les
paramètres réseau (donner l'IP de la machine qui est
reliée au modem comme default Gateway et le numéro
de la carte réseau -eth0 par ex- comme default
Gateway Device). Il leur suffit d'être en réseau
TCP/IP avec le serveur et de taper une URL dans n'importe quel
Navigateur. Ceci fonctionne quel que soit l'OS et le navigateur du
client et quelque soit le type de connexion Internet (Modem, câble,
etc.). Vous pouvez également récupérer les mails
etc.
Pour tester, vous pouvez pinguer l'interface reliée à l'Internet (identifiez-la par « ifconfig »). Si ça ne répond pas, c'est un problème de routes. Vous pouvez aussi pinguer depuis le client l'IP du provider. Si ça répond, mais que les URL ne répondent pas, voyez du coté des serveurs DNS.
Pour ne pas tout retaper à chaque fois, éditez le /etc/sysconfig/network, et remplacez « FORWARD_IPV4=no » par « yes » (ceci remplace la ligne « echo... »)
Ensuite, placez la ligne « ipchains... » en fin de /etc/rc.d/rc.local. Astuce : n'importe quelle ligne destinée à démarrer automatiquement peut être placée là.
Vous pourrez voir qui est connecté en faisant : « ipchains -L -M ».
Sur le kernel 2.4.x, ipchains est remplacé par Netfilter (commandé par « iptable »).
Ipchains effectue plusieurs fonctions indépendantes : le filtrage de paquets entrants ou sortants, le masquage d'adresses IP, le proxy, etc.
Le principe général du filtrage est soit d'accepter tous les paquets par défaut, et de préciser des règles de refus, soit au contraire de tout refuser par défaut et d'accepter seuls certains paquets (meilleure sécurité).
Pour savoir dans quel état est votre système, tapez : « ipchains -L ».
Pour cela, vous devez installer un serveur NIS. Celui-ci vérifiera s'il trouve votre login quelque part sur le réseau et vous donnera automatiquement accès à votre compte. Le serveur NIS vous évite également de modifier tous les /etc/hosts au moindre changement sur le réseau.
L'idée est de rassembler tous les fichiers de paramétrages utilisateurs dans des fichiers spéciaux de /var/yp/nom_du_domaine_nis.
Vérifiez l'installation du paquetage ypserv.
Vérifiez le fonctionnement de portmap (« ps aux|grep portmap »).
Attribuez un nom de domaine NIS : « /bin/domainname --yp nom_de_domaine_NIS ». Ne surtout pas attribuer un nom de domaine déjà attribué par ailleurs. Pour ne pas retaper cela à chaque fois, vous devriez avoir dans /etc/sysconfig/network une ligne comme :
NISDOMAINNAME=nom_de_domaine_nis #(le fait de rajouter quelque part « nis » est une astuce pour ne pas se mélanger les pinceaux avec les noms de domaine d'autres types).
Redémarrez la lecture du fichier par : « . /etc/sysconfig/network ». Vérifiez que le domaine est bien attribué en tapant « domainname », qui doit vous renvoyer le nom de domaine NIS.
Placez-vous dans le répertoire /var/yp : « cd /var/yp ».
Éditez le fichier le Makefile si nécessaire. Dans la ligne « all : », retirez tout le superflu. « all: passwd group \» devraient suffire. Faites très attention à ne pas mettre d'espace en fin de ligne ou ce genre de chose qui rend la compilation impossible. Sur Mandrake 7.0, effacez tous les « @ » se trouvant devant « $AWK ». Enregistrez et tapez « Make target ». Cette dernière opération devra être faite après chaque changement d'utilisateur.
Lancez le serveur en tapant « /etc/rc.d/init.d/ypserv start » (Redhat et dérivées).
Pour automatiser tout ceci, ajoutez « domainname nom_de_domaine_nis » dans votre /etc/profile, et paramétrez le démarrage automatique au service (par exemple avec tksysv).
Vous aurez intérêt à installer des serveurs secondaires sur d'autres machines afin qu'une défaillance du serveur principal ne bloque pas tout le monde.
Commencez à installer un client NIS sur la machine où fonctionne le serveur. Ça sera plus facile pour tester le fonctionnement.
Vérifiez l'installation du paquetage ypbind. Éditez le fichier /etc/yp.conf. Rajoutez-y le nom du serveur : « ypserver nomduserveur ». et
Vérifiez que le nom du serveur est bien déclaré dans /etc/hosts :
192.168.0.1 nom_du_serveur petit_nom |
Rajoutez avant « hosts » le mot « yp » dans le fichier /etc/host.conf : « order yp, hosts, bind »
Éditez le fichier /etc/yp.conf, et ajoutez-y la ligne :
ypserver 192.168.0.1 # en supposant qu'il s'agisse de l'adresse IP du serveur NIS. |
Assignez un nom de domaine NIS à votre machine (le même que pour le serveur).
Ajoutez la ligne
+:::::: |
dans /etc/passwd.
Lancez le service : « /etc/rc.d/init.d/ypbind start ». À ce moment, il va chercher un serveur où se connecter. Si ça a marché, vous devez recevoir un message affichant le nom de domaine NIS. Lancez alors la commande « ypcat passwd », vous verrez tous les comptes sous lesquels vous pourrez vous connecter.
Si vous voulez que le service démarre automatiquement, utilisez un gestionnaire de démarrage comme tksysv ou Ksysv et rajoutez ypbind comme service devant démarrer automatiquement.
Une fois que vous avez vérifié que tout marche, vous pouvez effacer dans /etc/passwd les utilisateurs dont le n° est supérieur à 500 pour éviter les doublons. Par la suite, si vous voulez changer votre mot de passe, tapez « yppasswd ».
L'accès à vos répertoires à partir d'une machine distante nécessite un montage par nfs.
Éditez le fichier /var/yp/securenets, et annulez la ligne avec 0.0.0.0, qui donne accès à tout le monde.
À la place, mettez plutôt
255.255.255.0 192.168.0.0 |
si votre réseau local est en 192.168.0.
Vous devez au préalable avoir un serveur sur lequel xtel
fonctionne.
Il faut ensuite installer xtel sur le client.
Le client doit alors lancer
« xtel -serveur 192.168.0.1 »,
en supposant qu'il s'agit de l'IP du serveur.
Vous pouvez même utiliser ce serveur à partir de Windows avec Hyper terminal 5.0.
Seule difficulté : lors de la configuration, en plus de l'adresse IP, HyperTerminal vous demande le port number, par défaut 23 (ce qui correspond à un telnet). Regardez dans /etc/services le numéro affecté à xtelw (chez moi 1314). Renseignez-le et vous bénéficiez du modem connecté à la machine Linux pour faire du Minitel sous Windows.
Installez sendfax ou hylafax, voire fax2send si vous aimez le commercial.(compléter...)
L'utilitaire « talk » est fait pour un
dialogue en direct.
Tapez « talk neness@192.168.0.1 ».
Si le copain neness n'est pas en mode répondeur (et dans ce
cas, vous aurez un message vous indiquant qu'il refuse les messages),
vous aurez tous les deux sur vos écrans une fenêtre
coupée en deux, où vous pourrez voir les messages de
votre interlocuteur ainsi que les vôtres.
Vous pouvez
également, si l'hôte vous y autorise, lancer un xmessage
sur son display.
Il existe des utilitaires comme freephone (http://www.inria.fr) qui vous permettent le dialogue -presque- en direct, que le réseau soit local ou par téléphone. Ces utilitaires vous permettent d'envoyer au choix la voix avec un micro, un son du système ou un son de cd-audio.
Le pilote de Scanner SANE, qui est un peu l'équivalent de TWAIN sous Windows permet grâce à sa conception bien plus astucieuse en mode texte (l'interface graphique appartient à l'application) de scanner en réseau. Vous avez besoin de dll et net, les composants intermédiaires nécessaires au réseau.
Vous devez installer le serveur Apache.
Le lancement
du bazar se fait en tapant « /etc/rc.d/init.d/httpd start »
(sous RH) ou « /usr/sbin/apachectl start »
selon les cas.
Pour vous connecter, tapez « http://127.0.0.1 »
ou « http://localhost/ » si vous êtes sur
votre machine locale, ou « http://ip_du_serveur »
si vous êtes sur un client distant.
Faites vos premiers
tests avec Lynx, car Netscape a une option par défaut
qui empêche la connexion en local (désactiver le proxy).
Le répertoire de base, c'est-à-dire celui qui sert de racine vu du monde extérieur, est en principe /home/httpd/html, mais la nouvelle tendance est .../apache/html/. Encore plus moderne : /var/www/html. Vous y placerez les répertoires et fichiers destinés à être lus de l'extérieur.
Les scripts CGI sont à placer sous /home/httpd/cgi-bin (ou .../apache/cgi-bin) ; pour les faire fonctionner il faut s'assurer de la ligne suivante dans /etc/httpd/conf/srm.conf : « ScriptAlias /cgibin /home/httpd/cgi-bin ». Mais d'une manière générale il n'y a rien à retoucher dans les fichiers de config. Aux dernières nouvelles, tous les paramétrages d'Apache sont dans httpd.conf.
Admettons que vous vouliez utiliser un de vos ordinateurs pour échanger des courriers entre machines de votre réseau.
Installez le serveur Postfix.
Les réglages se font dans /etc/postfix/main.cf. Renseignez vos myhostname, mydomain, myorigin, mydestination. Redémarrez le service, et vous n'avez plus qu'à envoyer vos courriers à votremachine.votredomaine.
Il s'agit ici de configurer votre machine pour être un serveur ppp (comme votre fournisseur d'accès Internet).
Configuration : un modem pour chaque machine et une ligne téléphonique. Le programme à activer est mgetty, en ayant soin d'autoriser le décrochage (il ne doit pas y avoir de fichier /etc/nologin.ttySx, x étant le numéro de votre port série). Lancer mgetty : « mgetty /dev/modem ».
Vous pouvez tester le fonctionnement en vous faisant appeler : il doit y avoir décroché et émission de sifflements.
Comme pour la réception de fax, vous pouvez configurer le /etc/inittab en rajoutant la ligne :
S0:2345:respawn:/sbin/mgetty ttyS0 |
Forcer la relecture de l'inittab sans rebouter : « init q ».
Créez sur le serveur un compte utilisateur (par exemple « ppp-user »), et arrangez-vous pour que ce compte lance pppd au démarrage. Pour cela, éditez le fichier /etc/passwd, repérez le compte de ppp-user, et remplacez à la fin de la ligne « /bin/bash » par « /etc/mgetty+sendfax/login.config ».
Paramétrez sur le client (celui qui appelle) une connexion de type internet avec le nom « ppp-user » et le password de ppp-user. Attribuez une adresse IP identique à celle qui figure dans /etc/mgetty+sendfax/login.config :
/AutoPPP/ - @ /usr/sbin/pppd /dev/modem 192.0.0.1:192.0.0.2 -chap +pap login modem crtscts debug |
Pour autoriser la connexion, il faut rajouter au fichier /etc/hosts une ligne comme :
192.0.0.2 ipguest |
et au fichier /etc/ppp/options :
lock :192.168.0.2 |
L'arrêter : « mgetty stop ».
Une fois connecté, la machine devient elle même une passerelle réseau pour peu qu'elle soit raccordée à un réseau local ou un client ou serveur VNC ou ce que vous voulez d'autre.
Une fois en réseau TCP/IP, que ce soit en local ou à distance, vous pouvez utiliser VNC, un superbe free software multi-plates-formes, qui vous permet de voir Windows dans une fenêtre de Linux ou le contraire.
Si l'écran de Windows est assez facile à voir (« vncviewer 192.168.0.1:0 »), il est plus compliqué de dire à Linux quel écran on veut qu'il exporte. Le lancement par défaut de VNC serveur (« vncserver »)sous Linux exporte une fenêtre où... il ne se passe rien ! On peut obtenir quelque chose en faisant « export DISPLAY=:1 » (si l'affichage 1 est celui utilisé par VNC, voir en faisant « ps aux|grep Xvnc ») avant de lancer les programmes.
Si vous avez un fichier .vnc/xstartup dans votre home du genre :
#!/bin/sh exec /etc/X11/xinit/xinitrc & xsetroot -solid grey xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & #facultatif startkde & |
vous pourrez exporter un vrai KDE. À ce moment, vous pouvez l'afficher en local avec l'option « -shared » (ex : « vncviewer -shared 192.168.0.1:1 »). Cela vous permet de lancer un client sur une machine distante avec la même commande. De plus, on peut voir plusieurs serveurs depuis un même poste client.
Il existe plein de méthodes, allant du simple script (Aaargh !) au mode graphique.
KDE propose un numéroteur appelé kppp, très simple de configuration (numéro de téléphone, DNS, serveur pop...), mais qui fournit un script par défaut qui ne fonctionne pas toujours. Il faut parfois éditer un script personnel du genre :
« Expect ogin
ID votrelogin
expect word
password votremotdepasse »
Dans les versions actuelles, il faut commenter (« # ») le mot « lock » dans /etc/ppp/options.
Sinon, Redhat propose un « netcfg » très simple et très efficace.
-Onglet « Names », rajoutez les IP de votre provider.
-Onglet « hosts » : l'IP et le nom de votre provider
-Onglet « interfaces », « add » (choisissez ppp), puis le numéro de téléphone de votre provider, votre login et votre password.
Une fois configuré, il suffit de cliquer sur l'onglet « interfaces », ligne ppp0, bouton « activer ».
Autre méthode pour se connecter, une fois la configuration effectuée : « ifup ppp0 ». Se déconnecter : « ifdown ppp0 ». Bien plus rapide que de lancer un connecteur graphique.
Pour AOL, essayez Pengaol (http://www.pengaol.org). La version 0.7 marche en mode texte, mais la version 1.0 attendue prochainement sera graphique.
Un peu de technique : sachez que la version 2.2 du kernel faisait appel à un module nommé ppp.o. Le 2.4 utilise deux modules : ppp_generic.o et ppp_async.o pour un modem non Numeris.
Linux propose de nombreux navigateurs : Netscape, Mozilla (version 1.0), Konqueror, StarOffice, Opera, Galeon, etc. pour le mode graphique. Il vous faudra installer flash et java/javascript pour qu'un maximum de sites fonctionnent correctement. Sur les sites qui vous rejettent pour cause d'identifiant du navigateur, il est possible d'emprunter l'identité d'un autre navigateur par exemple avec Konqueror (fonction agent utilisateur).
Pour la navigation en mode texte, il y a lynx, links et w3m, ces deux derniers étant plus complets et plus commodes.
Konqueror peut même faire du ftp avec mot de passe si l'on respecte la syntaxe suivante : « ftp://votrelogin:votrepassword@ftp.votresite ».
Si votre login contient le signe « @ », il faut le remplacer par « %40 ».
Vous pouvez aussi essayer gftp ou... toujours Midnight Commander.
Si le serveur ftp n'accepte pas le mode interactif, « ftp » tout court en mode texte ou « ncftp ».
Autre possibilité : wget « wget -c ftp://[adresse] » ou « wget -c http://[adresse] ». Vous permet de récupérer des arborescenses entières et de reprendre des chargements interrompus (merci M.Klohn)
Reprendre un téléchargement interrompu : se placer dans le répertoire où se situe le malheureux fichier avorté, et taper « wget -crk -nH URL_du_fichier_incomplet ». Il fera la soudure tout seul (Konqueror fait aussi cela très bien automatiquement et sans syntaxe compliquée).
Pour vous assurer que le fichier chargé est de bonne qualité, utilisez md5sum. La plupart des sites FTP proposent un fichier de texte md5sum. Téléchargez-le et lisez-le. Il doit y avoir dedans une ligne contenant un numéro bizarre et le nom du fichier téléchargé. Lancez la commande md5sum sur votre fichier téléchargé. Le résultat doit être identique au contenu du fichier md5sum. Sinon, votre fichier téléchargé est probablement défectueux.
Se connecter au serveur : « telnet pop3.votre-fournisseur-daccès 110 » (Si le serveur l'accepte !)
S'identifier : « user votre_nom », puis « pass votre_mot de passe »
Les principales commandes : list, quit, retr n°, dele n°
Énorme avantage : vous pouvez décider de ne pas rapatrier une grosse pièce jointe.
Envoyer du courrier :
« smtp. votre-fournisseur-daccès 25 »
HELO <nom>
« mail from:votre-adresse-email » puis validez
« rcpt to:adresse-email-du-destinataire » puis validez
« data » puis validez et saisissez alors le texte du courrier
« . » puis validez pour envoyer le courrier
Notez que Kmail pour KDE 3.X permet aussi de gérer le courrier sur le serveur et même de positionner des filtres sur le serveur.
ICQ (prononcez « I seek you ») est un système de serveur qui vous attribue un numéro permanent que vous donnez à vos correspondants. Ensuite, il suffit de lancer le programme client durant votre connexion pour voir si vos amis sont en ligne et pour leur parler par messages en direct.
Il existe plusieurs clients pour Linux, mais licq fait très bien l'affaire. Avec un peu de chance, il devrait être sur votre distribution.
Linux est réputé comme un système sécurisé. En fait, tout dépend des circonstances :
La sécurité absolue n'existe que pour une machine reliée à aucun réseau et inaccessible physiquement.
Il faut empêcher que le disque Linux soit mis en esclave : pas d'autre système d'exploitation démarrable (Linux se lit très bien depuis Windows), pas de possibilité de boot sur disquette ou cdrom (penser à coder l'accès au BIOS), interdire le démarrage en « Linux single ».
Si le pirate potentiel a accès physiquement à la machine sans contrôle, la seule protection absolue est le cryptage du disque dur. Vous avez tous les renseignements nécessaires sur la page http://www.geocities.com/openpgp/linux.htm. Vous devrez appliquer le patch crypto International au noyau, puis recompiler. L'utilisateur qui veut crypter des données doit créer un répertoire destiné à cet usage. Il vous faut aussi des versions modifiées de mount et losetup.
La Mandrake 8.2 propose aussi lors de l'installation la mise en place de systèmes de fichiers cryptés.
Sinon, Linux se défend assez bien logiciellement, pour peu que vous ne donniez pas votre mot de passe root.
Évitez d'utiliser Internet sous root. Idéalement, utilisez un compte dédié à cet usage. Si un jour un virus type « I love you » débarquait chez nous, il ne pourrait faire de dégâts que sur ce compte où il ne se passe rien.
Attention aux fonctions de prise de contrôle à distance (rlogin, telnet ...), qui devraient toujours être désactivées (retirez le maximum de lignes dans /etc/inetd.conf). Pareil pour finger, qui permet de tout savoir sur un utilisateur, même si son compte n'est pas actif (« finger utilisateur@machine »). Redémarrez inetd après avoir fait les modifications.
Pour détecter les tentatives d'intrusion, lisez régulièrement les fichiers /var/log/messages et /var/log/syslog.
Ne jamais donner un mot de passe identique au login.
Ne pas mettre les mots de passe dans /etc/passwd, mais dans /etc/shadow. (mots de passe shadow, le plus souvent installés de base maintenant).
Attention aux protocoles qui échangent les mots de passe en clair (comme telnet). Tout ceci peut très bien être intercepté par quelqu'un qui utilise tcpdump.
La solution : crypter les échanges par ssf, disponible seulement en téléchargement sur http://www.in2p3.fr/securite/ssf. Retirez ssh auparavant : vous n'êtes pas supposé l'utiliser en France. Installez. Lancez ssfd.
D'une manière générale, évitez que d'autres root que vous ne se trouvent sur le réseau (mais c'est rarement possible d'en être sûr : boot par disquette, branchement sauvage d'un ordinateur portable...).
Ne jamais lancer un serveur DNS sur une machine directement raccordée sur Internet (pour vérifier si vous en avez un : « ps aux|grep named »).
Éviter d'installer un serveur ftp anonyme.
Ne pas lancer la commande « xhost + » (on peut lire ce que vous tapez).
Pour contrôler la sécurité réseau de votre machine, attaquez-la avec nessus(http://www.nessus.org/). L'installation et le mode d'emploi sont sur le site. Vous devez créer un utilisateur par « nessus-adduser », lancer un serveur nessus sous root (« nessusd -D »), puis « nessus » en tant qu'utilisateur.
Une machine raccordée à un réseau devrait toujours avoir été testée par nessus ou un équivalent.
Démarrez en Linux single. ou bien avec une distribution disquette ou cdrom (demolinux), ou mettez le disque en esclave à partir d'un autre système.
Éditez le fichier /etc/passwd.
Effacez le « x » entre les deux « : » :
cecile:x:506:509::/home/cecile:/bin/bash |
Si vous n'utilisez pas les mots de passe shadow, le mot de passe crypté se trouve à la place du « x ». Effacez-le.
Redémarrez. Il n'y a plus besoin de mot de passe. Remettez-en un vite. Ceci vous montre à quel point il est facile de pirater une machine accessible si d'importantes précautions n'ont pas été prises.
Si vous avez perdu un mot de passe utilisateur, démarrez sous root, et changez-le normalement (« passwd Louis_14 »).
Quelques mots sur GnuPG (http://www.gnupg.org). Les deux problèmes que vous rencontrez avec les documents électroniques sont de savoir à coup sûr qui vous les a envoyés -et si ce document n'a pas été modifié- et d'échanger des courriers que seul le destinataire peut lire.
Pour ce faire, le programme gpg (ou son interface gpa) vous permet de générer une paire de clés, l'une privée et l'autre publique, basées sur votre identité et sur une phrase de passe.
Votre clé privée doit rester secrète (mais vous devez ABSOLUMENT en faire des copies de sauvegarde), alors que votre clé publique doit être diffusée le plus largement possible.
Pour authentifier un document, vous utilisez votre clé privée et votre mot de passe. Le document sera accompagné d'un hash, sorte de synthèse entre la clé et le document. Le destinataire, au moyen de votre clé publique, vérifiera que le document correspond bien au hash, ce qui prouve qu'il a bien été validé par votre clé privée et qu'il n'a pas été modifié.
Pour crypter un document, vous utilisez la clé publique de votre destinataire. Il utilisera sa clé privée et son mot de passe pour le décrypter.
Comment échanger ses clés publiques ?
Vous donnez physiquement à votre correspondant le fingerprint de votre clé. Celui-ci doit vérifier votre identité. Vous déposez votre clé publique sur un serveur. Votre correspondant la téléchargera, et en profitera après vérification du fingerprint pour l'authentifier. Ainsi, toutes les personnes qui connaissent votre correspondant et qui lui font confiance pourront être sûr de votre identité.
Toutes ces manipulations sont très simples avec gpa.
Ça se complique !
Premier cas de figure : vous avez un .rpm sous Redhat ou un .deb sous Debian. : « rpm i monprogramme.rpm » (« -ivh » pour plus de détails) ou « dpkg -i monprogramme.deb ».
Attention ! Il existe généralement plusieurs versions, selon le type de processeur (famille 386, alpha...) et la distribution : un rpm pour Suse n'est pas forcément compatible avec une RedHat ou une Caldera.
Si une version est déjà installée, vous risquez d'être bloqué.
Vous pouvez essayer « rpm -Uvh monprogramme.rpm » (U pour update). Si ça ne marche encore pas, « rpm -U monprogramme --force ». L'opération marchera forcément, mais le programme ne marchera pas à coup sûr.
Avec Debian, « dpkg -i --force-depends » permet aussi d'installer un programme récalcitrant.
Les nouvelles versions de Debian utilisent apt-get. Tapez simplement « apt-get install le_programme » et le système se débrouillera automatiquement avec les dépendances.
Si c'est du tgz, et que son contenu est manifestement destiné à la racine (répertoires usr, var, bin...), placez-le dans la racine. Puis « tar xvzf monprogramme ».
Si c'est du source (« .src.rpm »), « rpm -ivh » vous crée un fichier archive dans /usr/src/redhat.
Si vous n'êtes pas programmeur, utilisez toujours cette méthode (c'est bien plus simple et rapide qu'install shield sous Windows). Cela marche, même à partir d'un autre disque.
Encore mieux, utilisez un utilitaire qui fait ça en mode graphique : « glint » du « control-panel » (moche), « kpackage » (superbe), « gnorpm », etc.
Deuxième cas de figure : c'est du .tgz ou du tar.gz: « tar -xvzf monprogramme.tgz » (la lettre z dézippe).
Si vous voulez faire un rpm à partir d'un binaire tar.gz : « rpm -tb monprogramme.tar.gz ». C'est mieux pour la désinstallation.
Troisième cas : c'est du .tar : « tar -xvf monprogramme.tar ». (Les fichiers .tar sont des fichiers archive, c'est-à-dire contenant plusieurs fichiers, mais non zippés).
Pour tout compliquer, si c'est du .tar.tar, c'est sûrement un .tar.quelquechose merdiqué par Windows. Essayez de le dézipper classiquement (zip ou bz2), puis de le détarer.
Si c'est un binaire prévu pour une autre distribution : « alien » !
Ex : « alien --to rpm monprogramme.deb » fait un rpm à partir d'un deb.
-si c'est du .tar.gz ou .tgz : copiez-le sur le disque Linux, là où ça vous arrange, puis « tar -xvzf monprogramme.tgz ».
-si c'est du .gz : « gunzip monprogramme.gz »
-si c'est du .bz2 : vous avez besoin de bunzip2,puis « bunzip2 monprogramme.bz2 » ou « bzip2 -d monprogramme.bz2 ».
-si c'est du .tar.bz2, faites « tar xvjf monfichier.tar.bz2 ». Remarquez que le « j » remplace le « z » des fichiers zippés seulement sur les versions récentes de tar).
Puis « cd monprogramme » (vous vous placez dans le répertoire créé par tar), puis « ./configure » (le ./ indique « exécuter le fichier configure qui se trouve dans le répertoire courant », car celui-ci n'est pas dans le path), puis « make » (précédé d'un « make dep » éventuellement), puis « make check » pour vérifier, puis « make install ».
Pour avoir une chance de compiler quelque chose, vous devez avoir installé les compilateurs (gcc, make...) et toutes les bibliothèques de développement nécessaires (souvent nommées *devel.*). Problème : certaines distributions ne les fournissent pas en standard (Caldera, Mandrake sur le 2° cdrom seulement, Corel...), ou vous pouvez aussi avoir une mauvaise version. Certains programmes peuvent aussi avoir besoin des sources du noyau (/usr/src/linux) ou des sources de XFree (XFree86-devel*). Vous pourrez alors découvrir les joies du développement.
Vous devriez trouver les bibliothèques manquantes sur http://www.rpmfind.net si vous utilisez un système basé sur rpm.
Pour transformer un source en binaire rpm, faites « rpm -tb l_archive_source », à condition que celle-ci contienne un specfile. Tous les détails -en anglais- sur la construction d'un rpm et de son specfile à http://www.linux-mandrake.com/en/howtos/mdk-rpm.
Si tout va bien, il n'y a plus qu'à lancer le programme (en tapant son nom au prompt, puis en lui créant un raccourci). Sinon, lisez soigneusement les fichiers d'installation, le configure et le Makefile. Mettez à jour les librairies si on vous le réclame.
Si vous n'y arrivez toujours pas (c'est fréquent) : lisez bien le README ou le INSTALL, il y a souvent des modifications à faire dans le Makefile, puis mailez à l'auteur ou à un newsgroup en précisant bien vos versions de librairies, de gcc, de distribution et de kernel.
Une solution est souvent de mettre les bons paths pour les librairies utilisées par le compilateur. Éditez le fichier /etc/ld.so.conf, puis placez-y « /opt/kde/lib » pour un programme utilisant QT (n'oubliez pas d'installer qt-devel) ou « /usr/include/gtk » pour un programme utilisant gtk. Mettez à jour par « ldconfig ».
Astuce : vous devriez toujours jeter un coup d'oeil au configure situé dans le répertoire d'installation. Vous pouvez y voir des options qui peuvent être indispensables dans votre cas. Vous les rajouterez sur la ligne de commande. Exemple : « ./configure --prefix=le_rep_d_install » pour forcer l'installation à se faire à un endroit précis.
Ce répertoire d'installation peut être /opt/ (les gros programmes), /usr/local/ normalement pour les programmes rajoutés soi-même ou /usr/ si vous voulez mélanger vos programmes avec ceux de la distribution.
Si la compilation plante sur un message du genre « undefined reference to xxx », créez dans le répertoire d'où ce message a été lancé un fichier bidon xxx (« touch xxx ») ou, mieux, mettez-y le fichier réclamé.
Si la compilation plante sur un « missing separator », il doit s'agir d'un problème de tabulations. Des tabulations ont dû être remplacées accidentellement (lors d'un copier-coller par exemple) par des espaces. Faites la manip inverse.
S'il vous manque des librairies, mais vous ne savez pas sous quel nom elles se trouvent sur le cdrom, tapez dans le répertoire des rpm du cdrom la ligne suivante :
« for i in *.rpm;do rpm qlp $i|grep yacc>/dev/null $$ echo $i;done » (dans cet exemple, on cherche le rpm qui contient yacc). Cette astuce est bien entendu valable dans tous les cas où vous cherchez à identifier un paquetage contenant un fichier.
En désespoir de cause : « make -i » pour terminer la compil en ignorant les erreurs.
Si make ne trouve pas le compilateur C, faites « export CC=/usr/bin/gcc » (adaptez selon votre cas).
Exemple d'installation difficile : Gimp 1.1.x
L'installation de Gimp dépend de gtk +, qui dépend lui-même de glib. Bien sûr, vous risquez fort d'avoir déjà des anciennes versions de ces programmes. Commencez par tout retirer (« rpm -e --nodeps ??? »). RETIREZ AUSSI glib-config et gtk-config, sous peine de conflit de version. À moins que vous ne maîtrisiez assez bien la configuration des programmes pour obliger la nouvelle installation à se faire dans les anciens paths. Ensuite, compilez classiquement (« ./configure && make &&make install ») glib, gtk+, puis gimp. Arrangez-vous pour que glib-config et gtk-config soient dans le PATH.
« rpm -qa » vous affiche les programmes qui ont été installés par rpm. Ça va trop vite ? « rpm -qa|less ». C'est dans le désordre ? « rpm -qa|sort|less » (Notez qu'un programme comme ici sort, qui reçoit des informations sur son entrée, les traite et les renvoie sur sa sortie à destination d'un autre programme, s'appelle un filtre). Vous cherchez un package précis ? « rpm -qa|grep monpackage ». Si cette commande est inopérante, c'est que la base de données sur les packages a été détruite. Reconstruisez-la par « rpm --rebuilddb ».
Un site à aller visiter absolument : http://www.staroffice.online.fr.
Les mises à jour sont sur http://supportforum.sun.com/staroffice/patches.html.
Le groupe de discussion est staroffice.fr.support.misc.
Si vous comptez utiliser Java, installez-le préalablement.
Pour installer Star Office correctement, tapez le nom du binaire en ajoutant en fin de ligne « /net ». Exemple : « soffice.xxxxx.bin /net ». Si le programme n'est pas exécutable, copiez-le sur le disque dur, rendez-le exécutable d'abord. Demandez le mode expert, et précisez un répertoire d'installation neutre, comme /opt/office52 ou /usr/local/office52. Après l'installation de base, sous chaque compte utilisateur, placez-vous dans /opt/Office52/program (si c'est bien là que vous l'avez installé), puis, tapez « ./setup ». Cela installera 1,7 Mo de données spécifiques à l'utilisateur. L'utilisateur peut même être un compte distant si vous avez donné un accès NFS au répertoire d'installation de StarOffice (En fait, ne fonctionne pas vraiment depuis la version 5.2). La première session lancée prend 40 Mo de RAM, la deuxième 4 Mo. Donc, StarOffice se prête très bien à l'exploitation depuis des clients légers.
Astuce : installez un window manager ultra-léger (wm2 par exemple) avec Staroffice en démarrage automatique. Comme SO sait à peu près tout faire, vous ne serez pas gêné et vous aurez un maximum de ressources disponibles. Encore pire : pas de WM du tout (lancez « soffice » directement dans votre .xinitrc). Dans ce cas, StarOffice démarrera plus vite. Inconvénient : vous ne pourrez pas déplacer les fenêtres.
Pour utiliser l'imprimante système :
lancer Imprimantes (une des icônes du desktop).
Choisir l'imprimante dans la liste, puis « installer une nouvelle imprimante ». ensuite « connecter », taper le nom de l'imprimante puis « = » puis la commande
Par exemple si l'imprimante est appelée truc, taper : « truc=lpr -Ptruc »
(le nom avant le « = » n'est utile que si vous avez plus d'une imprimante)(D'après une contribution de newsgroup)
Si vous utilisez CUPS pour l'impression, vous devez mettre « default_queue=qtcups » (Merci à Fred Bastok). Pour CUPS, vous aurez aussi le problème de savoir où est l'imprimante. Le chemin demandé est /etc/cups/ppd.
Enfin, sachez que le répertoire des paramètres de StarOffice est ~/office52/user/sofficerc.
La version 6.0 de SO n'est pas libre, mais il existe une version libre dérivée de SO 5.2 nommée OpenOffice.org. Dans les deux cas, de nombreux progrès sur les filtres en particulier.
Se lance avec « /opt/xwp/wpbin/xwp -lang fr ». (Changez le Path selon votre installation).
Problème pour imprimer : Word Perfect ne connaît qu'une liste restreinte d'imprimantes. Si la vôtre est déjà configurée avec ghostscript, il faut procéder en 5 boîtes de dialogue successives :
Fichier Imprimer...
Imprimante select (prenez l'Apple laser writer, c'est du postscript)
Imprimante créer modifier
Configuration
Destination : choisissez « lp » ou le nom que vous avez donné à votre imprimante. OUF ! Validez tout, ça devrait marcher.
Autre méthode : allez chez Corel, récupérez le driver pour DOS qui va bien, renommez-le (WP60ms03.all > wp60ms.us.all pour une bj4200), puis sélectionnez-le. Avantage : vous n'aurez pas une page d'erreur après une impression correcte.
problème pour la langue. Si vous avez installé « à la main », pour avoir le Français, il faut supprimer tous les répertoires d'autres langues. Si vous passez par le processus normal d'install, on doit vous demander le choix de la langue.
(éditeur HTML du W3C) : pour avoir le français : Menu Special->Preferences->General->dialog language -> fr. Vous bénéficierez d'un très bel éditeur HTML, 30 fois plus rapide à démarrer que StarOffice et permettant la vue simultanée et synchronisée en texte source, mode plan, liste des liens, texte définitif HTML, etc. Impressionnant. Malheureusement encore des problèmes de finition et pas de support des frames.
(6.2 actuellement) a eu des problèmes de couleurs : bpp 16 seulement. Maintenant, tout semble être rentré dans l'ordre. Astuce : le correcteur d'orthographe français du composeur de Netscape pour Windows marche aussi sous Linux. Pour l'installer, récupérer \spell\pfr2s331.dat sous Windows et le copier dans netscape/spell. Il ne reste plus qu'à faire « menu tools, spelling french ». Vous voulez l'interface en Français ? Prenez /usr/doc/netscape-common-4.7/Netscape.ad, copiez-le en /usr/lib/X11/app-defaults/Netscape et traduisez-le. Votre Netscape sera tout en Français. Tous les détails et le fichier déjà traduit à : http://www.linux-france.org/prj/i18n/netscape/
le correcteur d'orthographe GNU a une version Française. Pour corriger un texte : « ispell -d français letextequejeveuxcorriger.txt ».
Enregistrer du texte : <Ctrl-x Ctrl-s> (Notation emacs : C-x C-s), puis « le_nom_du_fichier » (si le fichier n'avait pas de nom) dans la zone du bas, nommée mini-tampon.
Ouvrir un nouveau fichier ou un fichier existant : <Ctrl-x Ctrl-f> (find), puis « le_nom_du_fichier ».
Voir tous les tampons ouverts (et en créer de nouveaux) : <Ctrl-x Ctrl-b>.
Passer d'un tampon à l'autre : <Ctrl-x b>, puis les flèches et <Entrée>.
Lancer des commandes : <Alt-x>, puis « tetris », « doctor », « blackbox » ou « hanoi »
Quitter Emacs « Ctrl-x Ctrl-c »
En fait, si vous connaissez les raccourcis du shell Bash, vous connaissez les raccourcis emacs. (Vérifiez par « set -o » dans le shell bash).
Ouvrir un fichier avec le curseur placé sur la première ligne où apparaît le terme toto : « vi +/toto le_fichier ». La dernière ligne du fichier « vi + le_fichier ». La 15° ligne : « vi +15 le_fichier ».
Annuler la dernière commande : « u » (undo). Annuler l'annulation : <Ctrl-r>.
Aller à la ligne xx : « xx <Maj-G> ». Aller en bas : <Maj-G>.
Faire un chercher/remplacer global dans le fichier : « :%s/ancienne_chaine/nouvelle_chaine/g » (s=search, g=global).
Coller ce qui a été coupé : « p » (paste).
Coller un fichier entier à l'emplacement du curseur : « :r nom_du_fichier ».
Trouver de l'aide dans vi : « <Esc> :help », ou lisez /usr/doc/vim-common-5.6/tutor/tutor.
Ouverture de fichiers multiples (tampons) : « :<Ctrl-w>, puis <n> » pour ouvrir une demie fenêtre avec un nouveau fichier sans nom, « :new nom_du_fichier » pour ouvrir une demie fenêtre avec un nouveau fichier ou un fichier existant. « :split » pour couper en deux la vue existante. Changer le curseur de fenêtre : « <Ctrl-w>, puis <flèche_haut> ou <flèche_bas> ».
Lancer une commande shell : « :!ls » et vous aurez la liste des fichiers du répertoire.
ne se lance pas : la commande est « rundoom » et il ne marche en mode fenêtré qu'en bpp8. Attention ! ce programme utilise la SVGAlib.
est trop grand : « xtel -petit ». Si xtel vous dit qu'il ne trouve pas le réseau local, tapez « ifconfig ». Si vous n'avez pas de réponse contenant « lo », tapez « ifconfig lo 127.0.0.1 up ». Ce service doit normalement être lancé automatiquement au démarrage.
est trop grand « xboard -size Small » (ou même Tiny, vous ne serez pas encombré !). S'il ne sait pas jouer aux échecs, vous avez oublié d'installer gnuchess.
c'est un processeur de texte.
Deds informations sur http://www.loria.fr/services/tex/general/flshort-3.3.dvi et http://www.loria.fr/services/tex
Utilisez un éditeur de textes bruts quelconque (vi, notepad...).
Écrivez un texte avec des balises spéciales. Enregistrez-le comme « mondoc.tex ».
Tapez « latex mondoc.tex ». Cela vous génère un fichier mondoc.dvi (= device independant).
Lisez-le avec « xdvi mondoc.dvi ».
Si l'apprentissage des balises ne vous tente pas, essayez lyx ou klyx.
traceur de courbes. Tapez « gnuplot », puis pour les courbes 2D : « plot log(x) » ou, plot 2*(x)**2+3*(x)+1 (=2x²+3x+1), ou, pour les courbes 3D : « splot sqrt(x)+(y*y) ». « q » pour quitter.
Les How-to ont souvent des titres c co om me eç ça a. Lisez-les avec less, et ils seront en gras.
combien de messages a-t-il provoqués !
Avant tout, il faut définir des PATHS et des variables d'environnement (fonction « export »)
rajouter les 3 lignes suivantes à /etc/profile : (ces PATHS dépendent de la manière dont KDE a été compilé. L'installation standard de KDE2 est dans /usr)
export KDEDIR=/opt/kde
export PATH=$PATH:$KDEDIR/bin
export
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$KDEDIR/lib
(Si KDE est installé ailleurs que dans /opt/kde, adaptez la première ligne).
Il faut placer « startkde » dans le fichier de démarrage de X ($HOME/.xinitrc si vous faites « startx »).
Astuces : pour déplacer une fenêtre sous KDE, appuyez sur <Alt> et enfoncez le bouton gauche de la souris. Plus besoin d'aller sur la barre de titre ! Pratique si elle dépasse de l'écran ! Pour la redimensionner, <Alt-bouton droit>, pour l'envoyer à l'arrière-plan, <Alt-bouton central>.
Je vous déconseille KDE si vous n'avez pas plus de 32 Mo de RAM.
Attention, les chemins ont changé dans kde 1.1.2 !!
Les versions de KDE 1.x sont lentes et instables. KDE 2 est sorti en octobre 2000, et il représente un progrès considérable. Si vous en avez la possibilité, passez carrément à KDE 3.x.
se lance par « gnome-session » (commande à placer dans le .xinitrc par exemple). Si vous ne voulez que le lanceur d'applications : « panel ».
ne veut pas enregistrer de gif : il faut d'abord convertir l'image en 256 couleurs, en faisant « Image-Indexed ». De toutes façons, il n'y a plus de raison d'utiliser le .gif, format propriétaire pour lequel les détenteurs du brevet réclament des royalties. Utilisez plutôt le png.
Si Gimp ne trouve pas les fonts des scripts-fu, installez freefonts (dézippez dans /usr/X11R6/lib/X11/fonts/, puis rajoutez :
FontPath "/usr/X11R6/lib/X11/fonts/freefont/" |
dans votre XF86Config). Relancez X.
Pour avoir gimp 1.1.x en français, allez dans le répertoire de langues, tapez « msgfmt -o gimp.mo fr.po », et copiez le résultat gimp.mo dans /usr/share/locale/fr/LC_MESSAGES.
Mettez les lignes « Define » en commentaire dans httpd.conf et ça marchera.
<IfDefine HAVE_PHP4>
LoadModule php4_module extramodules/libphp4.so
</IfDefine>
Supposons que vous avez installé les rpm de Redhat.
Vérifiez que serveur postgres tourne (« ps aux|grep post »). Sinon, lancez-le (# « /etc/(rc.d/)init.d/postgresql start »).
Donnez un mot de passe au root de postgresql, qui s'appelle postgres (« passwd postgres »).
Devenez postgres (« su - postgres »).
Créez un utilisateur ordinaire de postgresql (« createuser bebert ») et son mot de passe, ayant les droits de créer des bases de données.
Devenez bebert (« su - bebert »).
Modifiez le .bash_profile de bebert en y rajoutant le path /var/lib/pgsql. Déconnectez-vous et reconnectez-vous en bebert sous X.
Tapez « createdb ma_base_a_moi », puis « pgaccess ma_base_a_moi ». Ça y est, vous êtes en mode graphique (nécessite tcl/tk). Sinon, tapez « psql ma_base_a_moi ». Vous avez accès à la base en mode texte. (Si je vous disais que ça marche même à partir du Psion connecté par p3nfs !!!). Si vous préférez le mode graphique, pgaccess (dans le paquetage postgres-tcl parfois) vous offre une interface sympathique, mais encore incomplète.
Pgaccess est fourni avec une base de démonstration (pgaccess/demo/formdemo.sql) très instructive quant à ses capacités. Pour l'installer :
Créez une base : « createdb formdemo ». Puis installez la démo : « psql -q formdemo <formdemo.sql ». Il ne vous reste plus qu'à l'ouvrir : « pgaccess formdemo ».
Sauvegarder une base :
« pg_dump dbname | gzip > filename.dump.gz »
Restaurer la base :
createdb dbname
« cat filename.dump.gz | gunzip | psql dbname » (Merci à Tuan)
PS : je n'ai pas réussi à lancer postgres ou pgaccess en réseau.
Pour utiliser Postgres en réseau, faites (Merci à G.Gracian)
-décommenter la ligne PGALLOWTCPIP=no et remplacer le no par un yes dans postmaster.init.
-déclarer les machines qui sont autorisées à se connecter dans le fichierpg_hba.conf. Exemple :
host all 192.168.68.52 255.255.255.255 trust #ici, une seule machine a accès à toutes les bases (all) sans authentification
host all 192.168.68.0 255.255.255.0 trust # ici, un réseau
Si vous avez Mandrake 8.0, ajoutez -o "-i" juste après "pg_ctl" ligne 83 de /etc/rc.d/init.d/postgresql
Lancer freeciv : placez-vous dans le répertoire d'installation. Lancez 2 consoles en tant qu'utilisateur ordinaire (pas root). Dans la première, tapez « ./serv ». Dans la deuxième « ./civ » (pareil pour d'autres clients intéressés). Retournez à la première, où se trouve maintenant un prompt spécial, et tapez « start ».
Installation par« sh heretic2-demo-x86.run »
Lancer Heretic II avec l'accélération 3D : « ./heretic2_demo +set 640 glx » (ou un autre nombre selon la résolution souhaitée).
Vous avez réussi à installer/compiler le programme de vos rêves. L'exécutable est bien exécutable, il est bien dans le PATH, mais il ne démarre pas. Lancez-le à partir d'un xterm au lieu d'utiliser les menus de l'interface graphique. Vous aurez des messages qui vous donneront peut-être la clé du problème.
Si le xterm n'est pas bavard, essayez de lancer le programme par « bash -x nom_du_prog » (valable pour les scripts seulement, pas pour les binaires). Vous devriez avoir d'autres renseignements.
Pour les binaires, tapez « strace nom_du_prog ». En lisant ce qui en sort, vous trouverez ce que le programme tente de faire, et donc aurez une chance d'y remédier.
Il existe un émulateur DOS, dosemu, qui tourne soit en console texte (se lance par « dos »), soit en console graphique : dos in a box, qui se lance par « xdos ». (Ne lancez surtout pas « dos » dans une fenêtre graphique !) Son paramétrage n'est pas évident (amusez-vous avec dosemu.conf !). Il est assez performant. Il refuse certaines applications, qui en général refusent également l'environnement Windows (celles qui accèdent directement au mode protégé du processeur).
S'il refuse de démarrer pour cause de VGA font, vérifiez que le fichier /usr/X11R6/lib/X11/fonts/misc/fonts.dir contient :
vga.pcf vga vga11x19.pcf vga11x19 |
La version est maintenant 1.0.1 ! Les développeurs assurent qu'il fonctionne comme un vrai DOS. Dans un certain nombre de cas, il apporte même à des applications un environnement meilleur que le vrai DOS, sur lequel il s'appuie (plus de mémoire).
Attention ! Si vous utilisez le vrai DOS, la partition DOS ne doit pas être mountée. Votre $_hdimage doit pointer sur votre disque physique (/dev/disque) dans le /etc/dosemu.conf, par exemple « $_hdimage="/dev/hda1" ». Sinon, vous pouvez utiliser freedos et laisser faire l'installation standard.
Pour le problème du clavier et de l'affichage en Français, j'ai enfin trouvé qu'il y avait un conflit entre l'autoexec.bat de DOS et Linux. Il faut copier l'autoexec.bat en autoexec.lin, le signaler au dosemu.conf (« $emubat= "lin" »), et mettre en commentaire les lignes qui chargent le clavier et les fontes dans l'autoexec.lin. Vous verrez démarrer un DOS propre, et avec plus de mémoire que le vrai.
Il faut aussi renseigner le dosemu.conf avec « $_rawkeyboard=(on) », « $_keybint = (on) » et « $_layout= "fr" » pour avoir le Français.
Pour toutes les opérations DOS, si les interfaces graphiques échouent, vous pouvez utiliser les mtools. Le principe est simple : toutes les commandes MSDOS on un équivalent, qui se trouve en rajoutant « m » devant la commande DOS (« mformat », « mcopy »...). Ça marche parfois mieux que la vraie...
Linux sait aussi leur procurer un environnement. En revanche, wine n'émule que le fonctionnement de Windows, pas la totalité de l'environnement. Les applications Windows (du moins, celles qui veulent bien) tournent directement dans Linux.
Si vous installez à partir des sources, n'utilisez pas le sempiternel « ./configure... », mais lancez « ./tools/wineinstall » dans le répertoire des sources. Cela fera toute la compilation et créera un fichier de paramètres ~/.wine/config. Ainsi qu'une mini-arborescence Windows dans le répertoire que vous aurez signalé comme devant se substituer à « C:\ ».
Le lancement se fait par « (chemin/vers/)wine monappli ».
Si vous avez un Windows quelque part sur la machine, le disque où il se trouve doit être mounté et correctement déclaré dans le wine.conf (c'est son répertoire de mountage que l'on déclarer dans (/usr/local/)etc/wine.conf). Sur Mandrake, le /etc/wine.conf s'appelle /usr/share/wine/wine-config, que vous générez par « winebuild usr/share/wine/wine.config.default » Exemple :
[Drive C] Path=/mnt/dosc [Drive E] Path=/ (Ceci pour permettre à wine de savoir quoi faire de votre partition Linux. Il la mounte ici en E) |
Dans le même fichier, il faut aussi voir les PATHS et le répertoire Temp. Ils doivent correspondre à l'arborescence de votre partition Windows.
Si vous n'avez pas de partition Windows, créez un répertoire qui en tiendra lieu : « mkdir /c » (/var/wine n'est pas une mauvaise idée non plus). Assignez le path comme suit :
[Drive C] Path=/c |
Dans ce cas (Wine sans Windows), pour installer un programme : « wine install.exe ». Quand ça marche (de plus en plus souvent), c'est spectaculaire.
Attention ! Lorsque vous tapez les chemins, les barres de répertoire sont obliques dans le sens UNIX. Rien ne vous empêche de créer un raccourci, comme pour n'importe quel programme Linux (ex : « /usr/local/bin/wine /olitec/olifax » vous permet de lire vos fax reçus sous Windows avec un modem Olitec). N'oubliez pas de mettre le chemin du disque Windows entre guillemets s'il y a des espaces dans les noms ! (Ex : « wine "/Programs files/monprogramme" »). Si ça ne fonctionne pas, testez avec un programme qui est dans le path « wine notepad ». Si ça marche, essayez « wine c:\\monrep\\monprogramme ».
Word 7 et Excel 7 fonctionnent de mieux en mieux, mais il y a encore des problèmes. On nous promet un fonctionnement sans faille bientôt.
En Français, vous aurez des problèmes pour ouvrir ou enregistrer les fichiers. Wine vous réclamera mso5enu.dll et openenu.dll. Il vous suffit de copier openfra.dll et mso5fra.dll vers les noms réclamés.
Astuce ! Si un programme refuse de fonctionner pour cause de dll, donnez-lui en une (créez un fichier vide de ce nom dans votre Pseudo_C/windows/system). Wine saura ensuite lui donner la vraie dll émulée.
Nouveauté : Si vous voulez vraiment un émulateur de Windows, installez XWine (http://darken.tuxfamily.org/pages/xwine.html), qui est une surcouche graphique de Wine. De cette manière, vous aurez le menu démarrer et toutes ces choses qui vous manquent tant.
Ne pas confondre avec Winex, qui est une version commerciale modifiée de Wine, destinée à supporter une émulation DirectX.
-Win4lin 2.0 (http://www.netraverse.com/) est une vrai émulateur PC (commercial) qui semble assez valable mais ne supporte que Windows 95/98.
-VMWare 3.0 (logiciel commercial), à récupérer sur http://www.vmware.com, crée une machine virtuelle (avec BIOS virtuel !!), dans laquelle vous pouvez installer Windows. Grosse puissance nécessaire !! (je fais tourner MS-DOS avec « seulement » 64 Mo de RAM). S'installe par « vmware-install.pl ». Copier le fichier licence envoyé par e-mail par la société dans /root/.vmware/. Le résultat est bluffant.
-Plex86, l'équivalent en libre. En phase finale de développement.
-VNC (license GPL) permet d'afficher l'écran de n'importe quelle machine reliée en réseau TCP/IP, donc entre autres d'avoir un Windows dans une fenêtre ;-)))
-Tant qu'on est dans les émulateurs, Line (http://line.sourceforge.net) fait le contraire de Wine : il fait tourner les applis Linux dans Windows.
Pour lire MS Word et MS Excel sans MS word ni MS Excel :
-Le plus efficace : « strings letexte.doc » (ou « strings fichier.doc|fmt -w 65|more »). Vous aurez la surprise de lire non seulement le texte, mais aussi le modèle d'imprimante, toutes les corrections, et avec un peu de chance le numéro de carte bleue de l'expéditeur !!
-Le plus définitif : MSWordView (http://www.wvWare.com) vous transforme du .doc en .html.
-Sinon, OpenOffice.org (le mieux), Star office 5.2 ou 6.0 (non libres), Koffice (encore jeune, attendez la 1.2), Wordperfect, Applix...
Pour traduire les fichiers Excel, et doc je crois : http://www.ice.ru/~vitus/catdoc/
Par ailleurs, Wingz (http://www.wingz.com/) sait aussi lire les fichiers excel (les graphiques ne passent pas toujours très bien le cap)
Faire des présentation à la powerpoint : utiliser magic point (Merci C.Vidal) ou kpresenter.
Linux sait aussi procurer un environnement aux applications Mac grâce à Mac-on-Linux.
Cet émulateur sous licence GPL permet d'exécuter MacOS sous Linux pour PowerPC (Yellow Dog, ppc, SuSE, etc.). Disponible à
http://www.ifrance.com/macpower
Il existe une émulation Linux sous Windows. Il suffit de lancer le setup.exe que l'on trouve sur http://www.cygwin.com/. La seule difficulté consiste à trouver un serveur ftp qui débite correctement. N'oubliez pas de tout sélectionner si vous voulez quelque chose de complet (les archives zippées doivent faire environ 200 Mo pour une version complète). L'installation et la configuration sont entièrement automatiques (ne tenez pas compte de la doc pour installer XFree, il n'y a strictement RIEN à faire). Pour lancer XFree, faites « /usr/X11R6/bin/startxwin.sh » depuis le terminal lancé par l'icône de Cygwin. Vous pouvez même éditer ce script pour remplacer twm par wmaker. Une fois sous XFree, tapez dans un terminal « setxkbmap fr » pour avoir le clavier français. Ensuite, vous n'avez plus besoin de taper les noms complets des exécutables X11, le PATH des binaires X11 est automatiquement rajouté. Idéal pour afficher sur un PC Windows des programmes graphiques UNIX tournant sur une autre machine.
Eh bien, c'est faisable (vive l'open source !)
Prenons un exemple concret. Vous voulez jouer au Grand Père, jeu faisant partie de kpat (en standard sous kde). Problème : la fenêtre est trop petite, et vous êtes bloqué pour finir les parties. allez donc faire un tour dans le source. Répertoire kdegames, sous répertoire kpat. Repérez un fichier nommé grandf.cpp (cpp pour c plus plus- ça serait c tout court pour un programme en C). Éditez-le, et vous verrez une ligne comme ça :
return QSize(700, 476);
Cette ligne fait drôlement penser à la taille de la fenêtre. Sauvegardez-la, mettez la sauvegarde en commentaire (rajoutez « // » devant) au cas où, et changez « 476 » par une valeur plus grande. Enregistrez. Ça donne :
// return QSize(700, 476);
return QSize(700, 676); }
Partant du principe que vous aviez déjà compilé les sources, vous devez avoir des fichiers « .o » un peu partout. Vous pouvez alors faire un « make » : ça ira très vite, car tous les programmes qui ont encore leur « .o » ne seront pas recompilés. Si vous aviez fait un « make clean », vous auriez effacé tous les fichiers « .o », et la recompil aurait été nettement plus longue. Faites ensuite normalement « make install », et relancez votre programme.
Maintenant, vous avez un programme qui vous permet de finir les parties même si vous avez de très longues colonnes de cartes. Au passage, envoyez le résultat de votre travail à l'auteur. Pour le tcl/tk, c'est encore plus simple : le code source ne se compile pas et est directement exécutable.
Vous pouvez très facilement traduire un programme dans votre langue préférée. À noter que beaucoup de programmes sont prévus pour l'internationalisation, et il existe des fichiers à part où se trouvent tous les items à traduire.
Ces fichiers ont l'extension « .po ». Si vous n'avez pas le .po,vous pouvez le générer à partir du source du programme en plaçant en début du fichier en c à traduire les commandes suivantes :
#include <libintl.h>
#define _(x) gettext(x)
puis en faisant :
« xgettext -d le_fichier-de_chaines_pret_a_traduire -k_ -s le_prog_que_je_veux_traduire.c ». Dans ce cas précis, le « k_ » signifie que vous avez entouré dans le source toutes les chaînes à traduire par une balise « _(english-string) ». Cette balise peut être n'importe quelle suite de caractères, souvent « i18n ». Vous obtiendrez un fichier le_fichier-de_chaines_pret_a_traduire.po
Traduisez ensuite le .po. Emacs a un mode spécial pour vous faciliter le travail. Sinon, kbabel.
Compilez-le ensuite : « msgfmt -o le_fichier_traduit_binaire.mo -v le_fichier_traduit_source.po ».
Copiez ensuite le .mo dans /usr/share/locale/fr/LC_MESSAGES/.
Relancez votre programme : il est maintenant en Français. Envoyez le .po à l'auteur. C'est encore mieux si vous intégrez une équipe de traducteurs sur Internet, afin de coordonner vos efforts (http://www.traduc.org).
Si le programme n'est pas fait pour l'internationalisation, vous pouvez traduire directement dans le source et recompiler (déconseillé). Bon courage.
Pour faire moderne, pour corriger un trou de sécurité, pour enlever des composants inutiles, pour intégrer des composants de votre machine. La compilation est rarement indispensable d'emblée, car les distributions proposent des noyaux polyvalents avec quasiment tous les modules compilés.
Assurez-vous d'avoir une machine apte à compiler (compilateurs et librairies de développement) et installez le source dans /usr/src. Tant que vous y êtes, prenez la dernière version en téléchargeant les patchs.
Pour patcher, vérifiez la version du noyau que vous possédez, et appliquez tous les patchs un par un en suivant l'ordre des numéros. (« bzip2 -dc patchXX.bz2|patch -p0 »).
Assurez-vous de la présence de liens symboliques (/usr/include/asm -> ../src/linux/include/asm et /usr/include/linux -> ../src/linux/include/linux)
Puis « cd /usr/src/linux »
Ensuite « make menuconfig » ou « make xconfig » selon les goûts et la disponibilité du mode graphique.
Astuce : avec KDE >= 2.2, il y a un configurateur graphique du noyau infiniment plus ergonomique que xconfig. Il se trouve dans kcontrol.
Le système que vous verrez apparaître possède un certain nombre de pré-réglages, dont beaucoup sont mal adaptés à votre cas. Choisissez les options qui conviennent à votre système. Mettez le maximum de choses en module, sinon kernel too big !... Ne mettez surtout pas en module les choses indispensables au démarrage (par ex. les disques IDE si vous bootez en IDE ou le file system ext2). Acceptez le loadable module support (sinon, les modules ne fonctionneront pas).
Toutes les explications détaillées sur http://kernelconfig.free.fr.
Quelques astuces :
-le fichier de config par défaut s'appelle .config et se trouve dans linux/. L'utilisation de ce fichier sans modification a 99 chances sur 100 de vous mener au désastre. Si vous voulez juste mettre votre noyau à jour ou rajouter un module, essayez de trouver le fichier de config qui a été utilisé par votre distribution. Celui de Mandrake se trouve dans /boot/ et se nomme config. Vous pouvez être presque sûr que votre compil débouchera sur un noyau uilisable.
Enregistrez vos paramétrages sous un nom (ex : « mon_noyau »), cela vous permettra de ne pas tout recommencer en cas d'une simple erreur, ou même pour une version suivante. Puis faites « save and exit ».
Astuce ! Pour franciser les menus de configuration du noyau, téléchargez le patch sur http://www.traduc.org/kernelfr, dézippez-le, et remplacez avec le résultat le fichier /usr/src/linux/Documentation/Configure.help.
Ensuite : « make dep zImage modules modules_install install » (ou chaque commande une par une). Si votre kernel est trop gros, tentez « make bzImage ».
Attention ! Si vous recompilez une nouvelle fois la
même version du noyau, retirez ou déplacez l'ancien
répertoire de modules (/lib/modules/2.4.x) avant
d'installer les nouveaux modules.
Ensuite, une étape
fondamentale : prévoir de booter aussi bien avec le
nouveau noyau qu'avec l'ancien. Pour cela, il faut copier le nouveau
noyau /usr/src/linux/arch/i386/boot/zImage en
/boot/vmlinuz-2.4.xx et copier /usr/src/linux/System.map
en /boot/System.map-2.4.xx, puis éditer le fichier de
paramètrage du boot (ex :
/etc/lilo.conf), copier le paragraphe existant et le coller en
dessous en prévoyant un nouveau label (ex :
« linux_new ») qui lancera le nouveau noyau. À
ce moment, tapez « lilo » (ou « chos »,
ou ce que vous voulez d'autre, ou rien de tout si vous utiliser
GRUB...) et il ne vous reste plus qu'à rebouter. Vous verrez
apparaître votre nouveau label en plus de l'ancien. Si le boot
échoue, reboutez sur l'ancien, et recommencez tout depuis le
début...
Sur votre machine, vous avez certainement un noyau de Linus. Sachez cependant qu'un de ses principaux collègues Alan Cox, développe des modifications quelque peu expérimentales sous forme d'un gros patch qu'on doit appliquer au noyau de Linux de même numéro de version. Sachez simplement si vous avez besoin d'une fonctionnalité absente du noyau officiel, qu'il vous suffit d'appliquer le patch Alan cox de plus grand numéro correspondant à la version de kernel officiel que vous avez.
Repérez les endroits où je pose des questions. Si vous détenez la réponse, envoyez-la moi. Tout le monde en profitera.
Si vous avez réussi à résoudre une difficulté, faites-moi un résumé.
Si vous trouvez une erreur, signalez-la moi.
Si vous estimez qu'un détail manque à la compréhension, je le rajouterai volontiers.
Si vous avez des compétences dans un domaine absent de ce guide (ADSL...), prenez la plume !
Restent à faire : Serveur DNS, serveur NNTP, serveur mail, proxy, fonctionnement du firewall, système RAID, clusters, frame buffer, DVD, serveur PHP, serveur DHCP...
J'espère que ces quelques pages vous auront permis de débuter sans trop de douleurs. Lisez-les entièrement, car certains renseignements sont répartis en plusieurs questions. GNU/Linux est un système très complet et très puissant. Son état actuel le rend encore un peu délicat à configurer, mais les progrès effectués en 1 ou 2 ans sont spectaculaires. Le manque d'homogénéité des logiciels est en train de se régler. Toutes les distributions installent maintenant des versions -à peu près- stables de Gnome et KDE. De grandes marques de matériel écrivent elles-mêmes les pilotes de périphériques (Creative Labs, Nvidia...), voire des distributions entières (Abit avec sa Gentus). La presse informatique commence à parler sereinement de Linux. Les programmes réclamés arrivent au pas de charge : Quaqueries diverses pour les amateurs de jeu, bureautique avancée avec une demi-douzaine de suites, amélioration du noyau (support USB, systèmes de fichiers journalisés, multiprocesseur, multi-thread), généralisation des traductions des programmes et de la documentation, support HotLine, machines pré-installées, déploiement dans les grandes entreprises, apparition de matériel dédié (Qube...). Il devient maintenant possible de faire tout ce que vous faisiez auparavant avec les environnements propriétaires, mais dans un contexte libre et incroyablement économique (les utilitaires sont inclus dans les distributions et pas en supplément), plus stable, plus sûr (pas de fonctionnalité cachée, pas de virus I Love You) et plus ouvert.
La seule chose qui vous est demandée : participez à l'effort !
Pour paraphraser Richard Stallman : vous ne savez pas programmer ? Écrivez une documentation. Vous écrivez mal l'anglais ? Rejoignez une équipe de traduction (http://www.traduc.org). Vous ne voulez rien faire de tout ça ? Envoyez des rapports de bugs utilisables ou des souhaits aux auteurs.
Bonne chance et bon courage !