Restaurer Grub sur le MBR

Rédigé par govez le 18 octobre 2010

Si, lors d'une réinstallation de Windows, vous avez effacé Grub du MBR, le démarrage de votre système Linux devient impossible ; il faut donc restaurer ce chargeur d'amorçage.
Deux cas de figure se présentent à vous :
  • vous utilisez Grub 1 (Ubuntu 9.04 ou antérieure - Debian Lenny ou antérieure) ;
  • vous utilisez Grub 2 (Ubuntu 9.10 ou supérieure - Debian Squeeze).

Pour Grub 1

Cette méthode fonctionne avec tout Live CD contenant le programme GRUB: Live-CD Ubuntu, SystemRescueCd (~200Mo), etc.

Étape 1

Lancez votre live-CD Ubuntu, par exemple), ouvrez un terminal et tapez :
# sudo grub
Au cas où grub n'est pas installé, installez le paquet grub.

Étape 2

Vous arrivez sur le menu principal de GRUB. Si vous ne savez pas sur quelle partition se trouvent les fichiers de Grub, entrez à l’invite grub> :
find /boot/grub/stage1
(Si le message "Error 15 : file not found" apparait, essayez : find /grub/stage1 )
Cette commande vous indiquera la partition sur laquelle sont situés ces fichiers.

Étape 3

Imaginons que cette commande nous a fourni (hd0,1) comme réponse. Dans ce cas, il faut entrer :
root (hd0,1)
Remplacez bien entendu (hd0,1) par la partition correspondante.

Étape 4

L’étape suivante consiste à indiquer à Grub le disque sur lequel il doit (ré)installer le chargeur de système. Si par exemple, on souhaite l’installer sur le disque (hd0) (pour info, hd0 représente hda le premier disque dur) :
setup (hd0)
quit
En relançant la machine, vous devriez retrouver votre grub originel.

Pour Grub 2

Munissez-vous d'un CD d'installation (ou clé USB d'installation) d'Ubuntu 9.10 ou ultérieure (Les versions antérieures d'Ubuntu n'incluant pas GRUB 2, il n'est pas possible d'utiliser un CD-ROM d'installation ou une clé USB d'installation d'Ubuntu en version 9.04 et antérieures pour réinstaller GRUB 2.)
Amorcez votre ordinateur avec ce CD-ROM ou cette clé USB en choisissant l'option Essayer Ubuntu sans rien changer sur votre ordinateur.
Montez la partition qui contenait GRUB 2 auparavant. Cette partition est généralement la même qui contient tout le système Ubuntu. Dans une session d'essai d'Ubuntu, rendez-vous dans le menu Raccourcis et sélectionnez la partition à monter dans la liste des partitions existantes.
Allez dans Système → Administration → Utilitaire de disques et : notez l'identifiant de « Périphérique » de votre disque dur primaire, en haut à droite (généralement /dev/sda).
Cliquez sur la partition Linux principale, qui contenait GRUB 2 et qui a été montée précédemment.
Notez le nom de montage de cette partition - « Point de montage », en bas à droite.
Dans un terminal (Applications → Accessoires → Terminal), lancez la commande suivante :
# sudo os-prober
et vérifiez que tous vos OS sont listés.
Dans un terminal (Applications → Accessoires → Terminal), lancez la commande suivante en remplaçant "/media/Maverick_LXDE" par votre point de montage et /dev/sda par l'identifiant de votre disque dur primaire (noté précédemment):
# sudo grub-install --root-directory=/media/Maverick_LXDE /dev/sda
Redémarrez en enlevant votre live-cd ou votre clé-usb.

Classé dans : Système - Configuration - Mots clés : astuces, linux - aucun commentaire

Se connecter manuellement au réseau

Rédigé par govez le 17 octobre 2010

S'il est vrai que les utilitaires de gestion des connexions réseaux, tels network manager ou wicd, facilitent la connexion au réseau, il est bon de savoir aussi se connecter manuellement.
En effet, de tels utilitaires ne seront pas toujours à disposition. Vous pourriez aussi, pour une raison x ou y, ne pas vouloir les utiliser. Vous avez peut-être simplement envie de savoir comment on fait.

Prise en main des outils

Avant de commencer notre travail, on va rapidement nommer et expliquer le rôle des différentes commandes qu'on va utiliser tout le long de ce tutoriel.

ifconfig

Cette commande permet de configurer les paramètres d'une interface réseau. Cette commande est habituellement utilisée à l’installation afin d’assigner une adresse réseau aux interfaces présentes dans la machine. On peut également l’utiliser à tout moment pour redéfinir les paramètres, telle que l’adresse IP, par exemple, d’une interface.
On peut ainsi assigner une adresse IP à une interface et préciser des paramètres tels que le masque de sous réseau ou encore l'adresse de diffusion.
Cette commande permet également de visualiser le statut des interfaces actives (si utilisée sans aucun paramètre) et le statut de toutes les interfaces (si utilisée avec l'option -a)

La syntaxe de cette commande est la suivante :
# ifconfig interface [ fam_adresses ] options | adresse
où interface désigne l'interface à configurer, fam_adresses désigne le protocole à utiliser (vous voudrez sans doute utiliser TCP/IP, mettez dans ce cas inet).
Les options couramment utilisées sont les suivantes :
  • up : permet d'activer l'interface
  • down : permet de désactiver l'interface
  • ipAdress : permet d'assigner une adresse IP (à remplacer par l'adresse en question)
  • netmask addr : permet de définir un masque de sous réseau (remplacer addr par l'adresse en question)
  • broadcast addr : permet de préciser l'adresse de diffusion (remplacer addr par l'adresse en question)

Il en existe encore d'autres. Je vous renvoie à la lecture du manuel pour les connaître.

Voici un exemple d'utilisation :
# ifconfig eth0 inet ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK}

iwconfig

Iwconfig est calquée sur ifconfig. En conséquence, l'utilisation d'iwconfig est très semblable à ifconfig.
Elle est utilisée pour configurer les interfaces réseaux sans fil.

ping

Cette commande permet de tester la connectivité IP. On utilise très souvent cette commande pour tester si l'interface qu'on vient de configurer fonctionne bien, i.e. si la machine est bien connectée au réseau.
La commande permet aussi de tester la connectivité entre 2 machines. La commande envoit des paquets ICMP à l'ordinateur cible. Si celui ci répond, c'est qu'il existe une route entre les 2 machines. Vous pouvez voir ça comme le sonar d'un sous-marin.

L'utilisation de la commande est très simple
$ ping address

l'adresse peut-être écrite en toute lettre ou bien sous forme numérique. On peut préciser le nombre de paquets attendus via le paramètre -c suivi du nombre de paquet attendus.
En l'absence de cette précision, le flux de paquet reçu ne s'arrête jamais. On lui enverra alors un signal SIGINT via ctrl+c pour stopper la commande.

Connexion filiaire

La commande ifconfig devrait lister au moins une interface réseau autre que lo (qui signifie loopback, cette interface est utilisée pour se connecter à sa propre machine), eth0 par exemple.

$ ifconfig
eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:17
Si vous obtenez un message d'erreur tel que
eth0: error fetching interface information: Device not found

C'est que la carte réseau n'a pas été détectée (mais bon, ça ne devrait pas arriver).

Utilisation de DHCP

Si vous êtes connecté à un réseau Ethernet avec un serveur DHCP, il est fort probable qu'il n'y ait rien à faire.
Le DHCP (pour Dynamic Host Configuration Protocol) est, comme son nom l'indique, un protocole de configuration dynamique d'un hôte. Il sert à automatiser la récupération des informations réseaux (telles que l'adresse IP, le masque de réseau, l'adresse de diffusion, la passerelle, etc.).
Pour pouvoir utiliser cette méthode, il faut disposer d'un serveur DHCP déjà actif et configuré, comme par exemple celui de votre fournisseur d'accès internet.

Lancez donc la commande suivante :
# dhcpcd eth0

La commande dhcpcd est une implémentation d'un client DHCP. Elle va aller collecter les informations depuis le serveur DHCP et va configurer l'interface réseau de la machine sur laquelle elle est exécutée.
Elle va ensuite exécuter un script de configuration qui va écrire l'information DNS dans le fichier /etc/resolv.conf
Si vous utilisez une telle méthode, tout devrait normalement fonctionner maintenant.

Utilisation de ifconfig et route

On va commencer par désactiver l'interface sur laquelle on va travailler, via la commande ifconfig.
# ifconfig eth0 inet down
La mise en place du réseau sans utilisation du serveur DHCP va se dérouler en 3 étapes.
On va assigner une adresse IP avec ifconfig
On va configurer le routage vers la passerelle avec route
On va renseigner les adresses des DNS dans le fichier /etc/resolv.conf
Vous devez donc disposer de votre adresse IP, l'adresse du masque de sous réseau, l'adresse de diffusion et l'adresse de votre passerelle.

On utilise ifconfig comme suit :
# ifconfig eth0 inet ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK}
où ${IP_ADDR} désigne votre adresse IP, ${BROADCAST} votre adresse de diffusion et ${NETMASK} le masque de sous réseau.
Si ${IP_ADDR} et ${NETMASK} sont renseignées, il devient optionnel de renseigner ${BROADCAST}, le calcul est alors en mesure d'être effectué automatiquement. En revanche, l'adresse IP et le masque de sous réseau sont obligatoires.
Ensuite, on va mettre le routage en place. # route add default gw ${GATEWAY}

Enfin, on va renseigner les adresses des DNS. Ouvrez le fichier /etc/resolv.conf avec votre éditeur favori. Vous pourriez être tenté d'utiliser OpenDNS qui fournit d'excellents serveurs DNS.
Ajoutez-y les lignes suivantes, si vous utilisez OpenDNS (et sinon, les DNS primaires et secondaires que vous utiliserez).

nameserver 208.67.222.222
nameserver 208.67.220.220

À ce stade ci, il ne vous reste qu'à réactiver l'interface avec
# ifconfig eth0 inet up

Préparation à la connexion sans fil

Mon module est-il chargé ?
Avant de pouvoir configurer une interface, il faut s'assurer que le pilote de périphérique associé soit bien chargé en mémoire.
Parfois, le module a été compilé en dur dans le noyau, parfois il faut que le module soit chargé au boot. L'avantage de la seconde méthode est qu'on peut décharger/charger le module à tout instant via la commande modprobe.
S'il est vrai que beaucoup de progrès ont été faits dans la reconnaissance du matériel, il n'en demeure pas moins que certaines cartes ne sont pas nativement reconnues (c'était le cas de la mienne) par certaines distributions.
La première étape sera donc de s'assurer que les pilotes sont bien chargés en mémoire, sous forme de modules. Si ce n'est pas le cas, on les récupérera et on les chargera ensuite en mémoire. S'ils sont déjà chargés, le reste de cette section ne vous concerne pas.

Comment savoir s'ils sont bien chargés ?

On peut par exemple regarder quels sont les modules chargés en mémoire avec lsmod. Chez moi, ça donne (n'oubliez pas de remplacer iwl3945 par votre pilote)

$ lsmod | grep iwl3945
iwl3945               155569  0 
iwlcore               163163  1 iwl3945
mac80211              182791  2 iwl3945,iwlcore
cfg80211              141568  3 iwl3945,iwlcore,mac80211
On peut aussi rester à l'écoute des messages du noyau, à l'aide de dmesg (enfin, de ceux qui nous interessent).
$ dmesg | grep iwl3945
iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
iwl3945: Copyright(c) 2003-2010 Intel Corporation
iwl3945 0000:06:00.0: enabling device (0000 -> 0002)
iwl3945 0000:06:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
iwl3945 0000:06:00.0: setting latency timer to 64
iwl3945 0000:06:00.0: Tunable channels: 13 802.11bg, 23 802.11a channels
iwl3945 0000:06:00.0: Detected Intel Wireless WiFi Link 3945ABG
iwl3945 0000:06:00.0: irq 29 for MSI/MSI-X
iwl3945 0000:06:00.0: firmware: requesting iwlwifi-3945-2.ucode
iwl3945 0000:06:00.0: loaded firmware version 15.32.2.9

Si les résultats sont similaires chez vous, c'est que le module est bien chargé. Si par contre, vous n'obtenez rien, c'est qu'il ne l'est pas.
D'accord, mais iwl3945 ne me conviendra sûrement pas, comment puis-je alors savoir si mon pilote est chargé en tant que module ?
Il faut connaître le nom du module que vôtre contrôleur de réseau utilise. Si vous ne le connaissez pas, la sous-section suivante explique comment faire.

Quel(s) pilote(s) utiliser ?

Il existe des outils bien utiles qui permettent de connaître le type de matériel dont on dispose. Il faut savoir que chaque composant est relié à un bus de type PCI, USB, ISA.
On va utiliser les commandes lspci, lsusb, lspcmcia dont les noms sont assez évocateurs je pense.
Ils listent tous les composants connectés aux bus USB, PCI, ISA. Votre contrôleur de réseau est nécessairement connecté à un de ces bus.
Si pour quelque raison que ce soit vous ne disposez pas de ces commandes, installez les paquets : pciutils, usbutils, pcmciautils. On aura par exemple, sous Debian :

# aptitude install pciutils usbutils pcmciautils
On va utiliser les commandes de la façon suivante
$ lspci -v | grep Network
dont le résultat donne chez moi
$ lspci -v | grep Network
06:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG
 [Golan] Network Connection (rev 02)
Subsystem: Intel Corporation PRO/Wireless 3945ABG Network Connection

On remarque ici un contrôleur de marque Intel intégré à la carte mère.
Une petite recherche sur l'Internet, en particulier sur la documentation officielle de votre distribution, vous apprendra quel paquet installer, suivant le matériel dont vous disposez.
Les 2 autres commandes s'utilisent exactement de la même façon.
Maintenant qu'on a récupéré le bon pilote, il suffit de le charger en mémoire.

# modprobe votre_pilote
On est sûr maintenant que le module est bien chargé ?
À priori oui, mais pour en être certain, il faudra reproduire la procédure détaillée en début de section.

Voila, à ce stade ci, le pilote de votre contrôleur réseau devrait être correctement chargé sous forme de module, votre interface réseau sans fil devrait être correctement gérée et prête à être configurée.

Connexion sans fil

On va d'abord récupérer le paquet wireless-tools qui contient les utilitaires nécessaires à la connexion via le wifi. On profitera aussi pour récupérer le paquet wpa-supplicant, bien utile pour se connecter à un réseau sécurisé au moyen du WPA.
Ainsi, sous Debian on fera :

# aptitude install wireless-tools wpa-supplicant

On est maintenant certain de disposer des outils nécessaires. On va pouvoir lister les interfaces réseaux sans fil disponibles. Pour cela

$ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11abg  ESSID:"xxxxx"  
          Mode:Managed  Frequency:2.437 GHz  Access Point: yy:yy:yy:yy:yy:yy   
          Bit Rate=36 Mb/s   Tx-Power=15 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=49/70  Signal level=-61 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Comme vous pouvez le voir, tout va bien ici. Il n'y a que wlan0 qui soit une interface wifi (selon les machines, elle s'appelle parfois eth1, eth2, ra0, ath0).

Connexion sécurisée au moyen du WEP

C'est très simple dans ce cas ci. Il suffit de modifier le fichier /etc/network/interfaces avec les privilèges root.
Par sécurité, certains d'entre vous voudront copier leur ancien fichier avant de le modifier, juste au cas où.

# cp /etc/network/interfaces /etc/network/interfaces.back
On inversera les opérandes de la commande cp pour restaurer le fichier d'origine.
Maintenant qu'on est sûr de pouvoir le retrouver, ouvrez donc ce fichier avec votre éditeur de préféré, vim par exemple
# vim /etc/network/interfaces
Ne modifiez que la section relative à votre interface réseau (wlan0 dans l'exemple) et ne touchez pas au reste.
auto wlan0
iface wlan0 inet dhcp
    wireless-essid nomDuReseau
    wireless-key motDePasseDuReseau

Soyez attentifs lors de la saisie du nom de votre réseau et du mot de passe associé, la casse est bien entendu à respecter.
Voila, il ne vous reste plus qu'à vous connecter au point d'accès désormais.

Connexion sécurisée au moyen du WPA

La procédure est à peine plus compliquée que pour le WEP. À nouveau, il faut modifier le fichier /etc/network/interfaces, que vous aurez pris la peine de sauvegarder, comme expliqué précédemment.
Cette fois, on va de nouveau modifier le paragraphe correspond à votre interface réseau (wlan0 dans cet exemple).
On y mettra les lignes suivantes :

auto wlan0
iface wlan0 inet dhcp
   wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

On va maintenant modifier le fichier wpa_supplicant.conf. On y mettra cela :

ctrl_interface=/var/run/wpa_supplicant
eapol_version=1
ap_scan=1
fast_reauth=1

network={
    ssid=nomDuReseau
    scan_ssid=1
    proto=WPA
    key_mgmt=WPA-PSK
    psk=motDePasseDuReseau
    priority=5
}

À nouveau, faites attention à la casse.
Il ne reste plus qu'une chose à faire, se connecter au point d'accès.

Connexion au point d'accès

Pour se connecter, il suffit d'executer les commandes suivantes, qui vont connecter votre interface

# ifconfig wlan0 up
# dhcpcd wlan0

Rien ne vous empêche d'utiliser ifup wlan0 à la place, ça fera la même chose.
Histoire d'être sûr qu'on a bien reçu les routes et les DNS, on va examiner le fichier /etc/resolv.conf et examiner les routes. Vous devriez avoir quelque chose comme

$ cat /etc/resolv.conf
# Generated by dhcpcd from wlan0
# /etc/resolv.conf.head can replace this line
nameserver 192.168.1.1
# /etc/resolv.conf.tail can replace this line

$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     0.0.0.0         255.255.255.0   U     303    0        0 wlan0
0.0.0.0         192.168.1.1     0.0.0.0         UG    303    0        0 wlan0
On peut aussi voir si on arrive à joindre google (par exemple) via
$ ping -c4 www.google.com
On devrait avoir ce genre de résultat
$ ping -c4 www.google.com
PING www.l.google.com (74.125.77.104) 56(84) bytes of data.
64 bytes from www.google.com (74.125.77.104): icmp_seq=1 ttl=52 time=702 ms
64 bytes from www.google.com (74.125.77.104): icmp_seq=2 ttl=52 time=605 ms
64 bytes from www.google.com (74.125.77.104): icmp_seq=3 ttl=52 time=572 ms
64 bytes from www.google.com (74.125.77.104): icmp_seq=4 ttl=52 time=584 ms

--- www.l.google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 572.691/616.251/702.683/51.255 ms

Classé dans : Réseau - Internet - Mots clés : réseau, internet, astuces, clubinfo - 1 commentaire

Régler la résolution d'écran

Rédigé par govez le 13 octobre 2010

XRandR est un outil en ligne de commande qui utilise l'extension RandR de Xorg afin de gérer les paramètres d'affichage de vos écrans comme la taille, le redimensionnement, la rotation ou le multi-écran.
Le point fort de l'extension RandR est que cette dernière est directement implémentée dans Xorg et ne nécessite pas le redémarrage de X lorsque l'on souhaite par exemple changer sa résolution, brancher un 2ème écran ou en utiliser plusieurs.
Il existe également une application graphique (grandr) mais encore faut-il que votre serveur X fonctionne.

Pour avoir les informations sur les résolutions que gère votre carte graphique, lancez dans une console :
$ xrandr
On peut ainsi voir toutes les résolutions disponibles pour chaque écran connecté.
Si je veux changer la résolution :
$ xrandr -s n°
où le n° correspond à la résolution que vous avez choisi.
Optionnellement, xrandr permet aussi d'effectuer une rotation de l'affichage.
Si je branche un 2ème écran sur mon connecteur VGA et que je relance xrandr , il détecte mon deuxième écran.
Je peux alors configurer la résolution de chacun d'eux

Quelques liens

Classé dans : Système - Configuration - Mots clés : astuces, linux - aucun commentaire

Simuler une barre de progression

Rédigé par govez le 13 octobre 2010

Une petite astuce pour simuler une activité en cours.
Pour faire une blague ou tromper votre patron sur vos activités professionnelles, voici comment faire :
Installer « zenity » :
# aptitude install zenity

Il suffit de lancer en console :
$ for i in $(seq 0 2 100); do echo $i; sleep 1; done | zenity --progress --title "Destruction" --text "Veuillez patienter, votre ordinateur est en cours de destruction ..." pour obtenir ceci et effrayer vos amis :

ou
$ for i in $(seq 0 2 100); do echo $i; sleep 1; done | zenity --progress --title "Démission" --text "Veuillez patienter, démission de Nicolas Sarkozy ..." pour obtenir cela et effrayer vos ennemis :


Classé dans : Humour - Mots clés : astuces, humour - aucun commentaire

Ajouter des polices d'écriture

Rédigé par govez le 10 janvier 2010

Lors de l'installation du système, un certain nombre de polices d'écriture (fonts)sont installées.
Vous pouvez en ajouter sans alourdir votre système et sans passer par synaptic ou aptitude.

Chaque utilisateur peut ajouter ses propres fonts.
Il faut créer dans votre répertoire personnel un dossier .fonts.
$ mkdir .fonts
Téléchargez des polices, sur le site Dafont.com par exemple (plus de 10000 polices) et copiez-les dans ce dossier.
Elles sont directement utilisables dans votre traitement de texte ou dans votre conky.
Pour les visionner, installez gnome-specimen un visionneur de polices.
# aptitude install gnome-specimen

Classé dans : Bureautique - Mots clés : bureautique, astuces - aucun commentaire

«précédentepage 4 sur 4

Ce blog est sous licence Creative Commons. Vous pouvez utiliser les publications, les modifier et même les publier à nouveau sous une licence identique à celle-ci. Vous ne pouvez pas utiliser ces écrits à des fins commerciales.

Patrice Blondel 
			alias Govez ou le Pingouin des @lpes

J'ai 56 ans, je suis instituteur (bientôt en retraite) au cycle 3 dans une petite école de l'Oise (Crillon).
Passionné d'informatique, je suis autodidacte en la matière.
J'utilise GNU/Linux exclusivement depuis plus de 10 ans. J'ai choisi Debian (après avoir testé beaucoup d'autres distributions). La meilleure distribution est celle que l'on maîtrise.

Pour vous y retrouver :

Je vous conseille d'utiliser d'abord le bouton « recherche » en tapant un mot clé. Vous pouvez également naviguer en affichant les articles par catégorie.

Les commentaires :

En indiquant votre adresse mail, vous ferez afficher votre avatar au début du commentaire.
Je me réserve le droit de supprimer les commentaires désobligeants, commerciaux ou sans intérêt.

Catégories

Archives

Mots clés

Derniers articles

Derniers commentaires

L'actualité Debian

LinuxFr.org