Archive

Archives pour la catégorie ‘Howto’

RHEL 5.5 et chipset broadcom BCM5709

28/06/2010 Aldevar 3 commentaires

Nous avons récemment installé une nouvelle machine qui sert de serveur principal pour notre nouveau système de sauvegarde. Lors des tests des sauvegardes complètes du week end, le chipset réseau du serveur s’écroulait lamentablement sous la charge du nombre de paquets qui arrivaient. Même si le réseau semblait toujours fonctionnel (service réseau lancé, ifconfig ne signal rien d’anormal), la machine était injoignable et ne répondait pas au ping. Dans certains cas, un redémarrage du service réseau ne suffit pas à retrouver une connectivité.

A l’heure où la sauvegarde s’arrêtait, voici ce qu’on pouvait trouver dans /var/log/messages :

server1 kernel: NETDEV WATCHDOG: eth0: transmit timed out
server1 kernel: bnx2: eth0 NIC Copper Link is Down

La résolution du problème passe par une mise à jour du pilote.

On trouve le pilote pour ce chipset à cette page : http://www.broadcom.com/support/ethernet_nic/netxtremeii.php

Après avoir extrait l’archive, on installe les sources :

rpm -ivh netxtreme2-<version>.src.rpm

Installation de kernel-devel pour pouvoir compiler les sources du pilotes :

yum install kernel-devel

Construction du paquet :

cd /usr/src/redhat
rpm -bb SPECS/netxtreme2.spec

Installation du paquet fraichement installé :

rpm -ivh RPMS/<arch>/netxtreme2-<version>.<arch>.rpm

déchargement de l’ancien module :

rmmode bnx2

Chargement du nouveau module :

modprobe bnx2

Suite à cette petite manipulation, plus de soucis de chipset réseau qui ne répond plus. Problème résolu :D

Categories: Howto, RedHat, planet-libre

GNU/Linux : Résolution de problèmes

25/12/2009 Aldevar 9 commentaires

Une grande partie du travail sur les forums concernant les logiciels libres est d’obtenir plus d’informations sur les problèmes des novices. Il est très agréable d’aider les autres comme il peut être assez agaçant d’essayer d’aider quelqu’un qui ne montre aucun effort pour s’aider lui-même. Je ne pense pas que cela soit dû à de la fainéantise de la part de celui qui pose la question. C’est simplement parce que les novices ne connaissent pas les premières étapes de résolution des problèmes sur GNU/Linux et ne savent pas quels types d’informations rechercher ni comment les obtenir. J’espère que ce petit guide sera utile pour ceux qui font leurs premiers pas sur linux.

I -  Diagnostiquer soi-même

1 – La première étape est la collecte d’informations.

Si un programme plante ou ne fait pas ce qu’il est censé faire, il faut se poser et réfléchir calmement. Ouvrez un nouveau fichier dans votre éditeur de texte favori et écrivez-y ce que vous faisiez quand le problème est apparu ainsi que tous les messages d’erreurs reçus. Ces messages d’erreurs doivent être recopiés exactement tel qu’ils sont apparus. Utilisez le copier/coller si cela est possible.

Ouvrez un terminal et tapez tail /var/log/messages. Cette commande affichera les 10 dernières lignes des logs du système. Si celui ci contient un ou des messages qui sont clairement en rapport avec votre problème, recopiez les également. Les erreurs des applications graphiques sont en général dans le fichier .Xsession-errors ou .xsession-errors dans votre dossier /home. La commande pour visualiser les 10 dernières lignes est donc tail ~/.xsession-errors. Comme pour le fichier /var/log/messages, ajoutez les lignes en rapport avec votre problème dans votre fichier de départ.
Si vous n’avez trouvé aucune information dans ces fichiers, essayez de lancer l’application concernée depuis votre terminal. Lors de l’apparition du bug, des messages devraient s’afficher.

Si votre système ne démarre plus suite à un problème, démarrez alors sur une autre distribution (soit en dual-boot si vous en avez soit depuis un live-cd). Il est toujours bon d’avoir un live-cd sous la main pour ce genre d’opération. Une fois que vous avez démarré sur le live-cd, montez votre partition root et récupérez les informations dans les fichiers cités plus haut.

2 – Le problème est-il reproductible?

S’il est possible de reproduire le problème facilement, faites-le. N’oubliez pas de le faire sur des fichiers peu important ou sur une copie du fichier concerné afin de ne pas endommager vos données.

3 – Est-ce un problème matériel ?

Les problèmes non reproductibles sont souvent dus au matériel. Si vous pensez que c’est le cas, regardez alors dans le fichier /var/log/boot ainsi que /var/log/kern.log ou /var/log/kernel.log suivant votre distribution pour voir si le kernel reconnait bien votre matériel. Ce fichier étant très long, la commande tail ne vous sera pas d’un grand secours. Utilisez plutôt less /var/log/boot et parcourez les pages à la recherche d’un message en rapport avec votre problème. Recopiez également ce message dans votre fichier de départ.

4 – Lisez la documentation du programme.

Ceci est à faire en particulier si le programme ne réagit pas de la manière souhaitée. Lisez l’aide en ligne du programme et utilisez également le manuel universel (dans un terminal : man nom_du_programme).

5 – Recherchez votre message d’erreur sur internet

Copiez/collez le message d’erreur dans un moteur de recherche ou un meta-moteur tel que ixquick et ajoutez-y le nom du programme. Vous trouverez certainement des messages sur des forums d’utilisateurs qui ont le même problème que vous. Lisez le thread complet, vous y trouverez peut-être une solution.

6 – Réfléchissez avec logique

Si, arrivé ici, vous commencez à avoir une idée sur la cause du problème, vous pouvez peut être tester cette idée. Il y a beaucoup de petites commandes simples qui peuvent vous aider à recueillir plus d’informations sur votre problème et votre système, qui vont seront d’un grand secours. lspci pour lister votre matériel, lsusb pour lister les périphériques usb, cat /proc/cpuinfo pour avoir les caractéristiques de votre CPU, free -m pour connaitre le taux de charge de votre RAM

7 – Maintenant, vous pouvez penser à demander de l’aide.

Si après tout ça, vous n’avez toujours pas résolu votre problème, il est temps de demander de l’aide sur un forum d’utilisateurs. Avant de passer à cette étape, rappelez vous que les utilisateurs des forums ne sont pas payés pour répondre à vos questions. Ce sont seulement des utilisateurs ayant une certaine expérience et qui font cela bénévolement.

II – Obtenir de l’aide

1 – D’abord, observer

Commencez par choisir votre forum. Il est préférable dans un premier temps de choisir le forum de votre distribution, puis le forum du programme concerné. Si ce forum possède une FAQ, lisez-la. Lisez aussi les règles du forum. Si votre question ne respecte pas les règles, il y a de grandes chances pour que vous n’obteniez pas de réponse.

2 – Ne soyez pas hors-sujet

Trouvez le sous-forum qui correspond à votre problème. Ne postez pas votre message dans plusieurs sous-forums, ceci est très mal vu.

3 – Choisissez bien le titre de votre topic.

N’utilisez pas de sujet tel que « Besoin d’aide » ou « J’ai un problème ». Ceci a tendance à irriter les gens. Votre titre doit indiquer le plus clairement quel problème vous avez. Ainsi, une personne qui pense pouvoir vous aider sera plus encline à lire votre sujet et poster une réponse. Soyez aussi précis que possible. Par exemple « Impossible d’obtenir une adresse IP » sera plus utile que « Je n’arrive pas à aller sur internet ».

4 – Donnez des informations

Dans le corps de votre message, donnez le nom et la version de votre distribution, le nom et la version du programme utilisé et les informations sur votre matériel si cela est nécessaire. Recopiez-y aussi les messages d’erreurs (c’est là que le fichier que vous avez créé au devient utile). Indiquez ce que vous avez fait pour tenter de résoudre le problème. En faisant cela, vous montrerez aux autres que vous ne vous êtes pas jeté sur le forum dès que le problème est apparu.

5 – Pas de langage SMS

Ça saoule! Ça n’aide pas à vous faire comprendre et on vous répondra d’autant moins.

6 – Ne perdez pas une opportunité d’apprendre

Ne suivez pas les conseils aveuglément. Vous êtes ici pour apprendre quelque chose. Si on vous demande d’utiliser un outil en ligne de commande, utilisez les pages man pour savoir à quoi sert cet outil. Vous pourrez ensuite réutiliser cet outil si vous rencontrez un problème similaire. Si on vous demande de poster un fichier pour plus d’informations, recherchez l’utilité de ce fichier. Les fichiers systèmes importants possèdent souvent une page man dédiée.

7 – Dites merci

Les logiciels libres reposent sur la communauté. Personne n’est payé pour vous aider. Les personnes qui vous aident le font car elles ont elles-mêmes reçu de l’aide dans le passé et veulent rendre la pareille. En plus de dire merci, vous pouvez également aider les autres qui ne savent peut-être pas quelque chose que vous savez. Vous ressentirez alors une certaine satisfaction que les logiciels propriétaires ne peuvent vous apporter.

Categories: Howto, document, planet-libre

Gestion des droits sous GNU/Linux.

21/12/2009 Aldevar 4 commentaires

Dans ce nouveau billet, je vais tenter d’expliquer comment fonctionne les droits sur les fichiers sous GNU/Linux et surtout, comment modifier ces droits depuis un terminal.

Utilisateur, groupe et les autres

Pour chaque fichier, on va pouvoir déterminer quels sont les droits pour l’utilisateur propriétaire, le groupe propriétaire et les autres. Pour connaitre les droits actuels sur un fichier, on peut utiliser ls -l

ls -l fichier1
-rw-r--r-- 1 aldevar users 28 2009-12-20 18:13 fichier1

Ici, on voit donc que l’utilisateur propriétaire est aldevar et le groupe propriétaire est users.

Pour chaque fichier, il existe 3 propriétés : Lecture (Read), Ecriture (Write) et Execution (Execute). Chacun de ses attributs est représenté par 1 lettre (R, W et X). On peut donc définir pour l’utilisateur propriétaire, le groupe propriétaire et les autres ce à quoi ils auront accès. Le premier groupe de 3 lettres définit les droits pour l’utilisateur, le second groupe pour le groupe et le dernier groupe de 3 lettres pour tous les autres.

rw- → Lecture et écriture pour l’utilisateur aldevar

r– → Lecture pour le groupe users

r– → Lecture pour tous les autres utilisateurs. (Ceux qui ne font pas parti du groupe ‘users’ )

Modifier l’utilisateur et le groupe propriétaire

La commande chown (diminutif de Change Owner) va servir a modifier l’utilisateur propriétaire. La commande chgrp (Change Group) fera la même chose pour le groupe. Pour expliquer leur fonctionnement, voici un exemple concret.

Je possède un fichier ayant ces droits là :

-rw-r--r-- root root 28 2009-12-20 18:13 fichier1

Et je souhaite changer l’utilisateur et le groupe. Voici les commandes à utiliser :

chown aldevar fichier1
chgrp users fichier1
ls -l fichier1
-rw-r--r-- 1 aldevar users 28 2009-12-20 18:13 fichier1

Si ou souhaite modifier en même temps l’utilisateur et le groupe propriétaire, chown permet de le faire, grâce à cette syntaxe:

chown aldevar:users fichier1

Modifier les attributs RWX

La commande chmod va permettre d’ajouter ou de supprimer des droits en lecture/ecriture/exécution sur les fichiers. Si on souhaite par exemple ajouter des droits en lecture à tout le monde, on va utiliser cette syntaxe :

chmod +r fichier1

On peut également choisir qui sera affecté par les changements de droits. On utilise pour cela des diminutifs (u pour user, g pour group et enfin o pour other). Par exemple :

chmod g+w fichier1

donnera les droits en écriture pour le groupe.

Enfin, une dernière syntaxe va permettre de donner les droits grâce à des chiffres. Vous avez sans doute déjà aperçu des chmod 777 fichier ou chmod 644 fichier. Pour comprendre cette syntaxe, il est nécessaire d’avoir quelques notions de binaires. En effet, chaque groupe de rwx peut être codé de 0 a 7.

Chaque R, W ou X peut être positionné sur 0 ou 1. Donc –x équivaut a mettre un 1 binaire pour l’exécution (001). Si on souhaite ajouter les droits en lecture, ceci va nous donner r-x soit 101. Le 101 binaire correspondant au 5 décimale.

Pour résumer :

--x → 1 binaire → 1 décimal
-w- → 10 binaire → 2 décimal
-wx → 11 binaire → 3 décimal
r-- → 100 binaire → 4 décimal
r-x → 101 binaire → 5 décimal
rw- → 110 binaire → 6 décimal
rwx → 111 binaire → 7 décimal

Donc, d’après ce ‘tableau’, si on souhaite mettre les droits d’un fichier en rw-r–r– on utilisera cette commande :

chmod 644 fichier1
ls -l fichier1
rw-r--r-- 1 aldevar users 28 2009-12-20 18:13 fichier1

Et pour donner tous les droits à tout le monde :

chmod 777 fichier1
ls -l fichier1
rwxrwxrwx 1 aldevar users 28 2009-12-20 18:13 fichier1
Categories: Howto, planet-libre

Cours Réseaux – Mise à jour de la page

Il était temps que je le fasse depuis un moment, mais je n’avais guère le temps. Mais voilà, la page ‘Cours Réseaux‘ est maintenant à jour avec l’ajout de 7 nouvelles compétences. Certains dossiers comportent des documents très intéréssants, notamment concernant le routage (cisco), le protocole PPP ou encore DNS. La très grande majorité des cours traitent évidemment de leur mise en oeuvre sous linux

Voici la liste des dossiers ajoutés :

  • Sécurité : sauvegardes, raid, gestions des processus
  • Transfert des compétences Unix vers Windows
  • Interconnexion de LAN et de VLAN : routeurs Cisco et routage sous linux
  • Téléphonie : PABX, IPBX
  • Accès distant : PPP, liaison série
  • Interconexion de LAN et de WAN : Cisco
  • DNS : Cache DNS, DNS primaire et délégation de zones avec bind

Certains fichiers ne sont pas dans des formats particulièrements pratiques (quelques .doc et .pps) que je m’éfforcerais de convertir quand j’aurais un peu plus de temps. Ceci dit, ces fichiers ne sont en général pas les plus complets ni forcement les plus pertinants. Je pense aussi bientôt renommer quelques fichiers dont les noms ne sont pas très parlant.

En attendant, bonne lecture à tous!

Categories: Howto, document, planet-libre

Ajouter une imprimante PDF sous archlinux

03/06/2009 Aldevar un commentaire

Cet après midi, je souhaitais enregistrer une page web en format pdf. J’ai en fait trouvé une solution très basique qui permet de sauvegarder tout type de document en pdf très simplement. Il suffit pour cela de se créer une imprimante PDF, le tout gérer par le classique cups. Dans ce rapide tuto, je pars du fait que vous avez un cups installé et fonctionnel.

Lire la suite…

Categories: Archlinux, Howto, planet-libre

Configurer son touchpad avec HAL

16/03/2009 Aldevar 3 commentaires

La semaine dernière j’ai acheté mon premier laptop. Je n’avais jamais eu à configurer ce genre d’engin sous linux mais il faut avouer qu’avec HAL et policykit les choses sont grandements facilitées. Juste 2 petits problèmes à regler avec le touchpad :

  • par défaut le scrolling vertical sur le bord du touchpad ne fonctionnait pas.
  • impossible d’avoir une action de clic avec un ‘tap’ sur le touchpad.

Connaissant les problème de clavier US à la place de clavier FR avec HAL, je me suis dis qu’il fallait peut être procéder de la même manière. Lire la suite…

Categories: Archlinux, Howto, planet-libre