DigitalSpirit / Blog

Monter une partition Linux ext2 / ext3 / ext4 sur Mac Os X

Mac Os X est un puissant système d'exploitation, malheureusement, ce système souffre de grosses lacunes pour un linuxien et notamment concernant le support des systèmes de fichiers, en effet, cet OS ne reconnaît que ses propres formats HFS, HFS+, HFSX, les formats de Microsoft FAT32 et NTFS ainsi que UFS (source Wikipédia), oubliez donc l'ext3 d'origine sous Mac Os...sauf...

2 projets m'ont sauvés la vie (oui, rien que ça) en rendant mes disques extX visibles et lisibles sous MacOs :

  • MacFuse, les linuxiens auront reconnus à son nom son utilité, pour les autres, c'est un outils qui vous permet de monter un système de fichiers en espace utilisateur
  • Et fuse-ext2 qui est un « pilote » extX générique fonctionnant entre autres sur MacOs

Rien à dire concernant l'installation de ces 2 programmes, des images disques au format dmg sont disponibles.
Une fois ces 2 programmes installés, c'est magique, vos disques extX seront montés automatiquement sans le moindre effort de votre part comme vous pouvez le voir sur la capture d'écran ci-dessous :

MacOs finder avec ext3

Concernant le montage des disques externes, le montage n'est pas automatisé et requiert donc quelques actions de votre part.

Pour commencer, il faut d'abord connaître le nom du device externe (/dev/diskXsX), s'il n'apparait pas dans le finder (entouré de rouge dans la capture ci-dessus), branchez votre disque externe formaté en extX puis ouvrez l'utilitaire de disques, vous devriez voir votre disque apparaitre sous cette forme :

Sur l'exemple ci-dessus, le nom du device est « disk2s1 », maintenant que nous savons oû se trouve le device, nous pouvons le monter tranquillement de la manière suivante, ouvrez un terminal (j'ai coloré les informations renvoyées par fuse-ext2 en jaune) :

mac:~ hugo$ cd /tmp
mac:tmp hugo$ mkdir DD
mac:tmp hugo$ fuse-ext2 /dev/disk2s1 DD
fuse-ext2: enter [do_probe (../../fuse-ext2/do_probe.c:30)]
fuse-ext2: leave [do_probe (../../fuse-ext2/do_probe.c:53)]
Mounting /dev/disk2s1 Read-Only.
Use 'force' or 'rw+' options to enable Read-Write mode
fuse-ext2: opts.device: /dev/disk2s1 [main (../../fuse-ext2/fuse-ext2.c:348)]
fuse-ext2: opts.mnt_point: DD [main (../../fuse-ext2/fuse-ext2.c:349)]
fuse-ext2: opts.volname: [main (../../fuse-ext2/fuse-ext2.c:350)]
fuse-ext2: opts.options: (null) [main (../../fuse-ext2/fuse-ext2.c:351)]
fuse-ext2: parsed_options: allow_other,local,ro,fsname=/dev/disk2s1,[...]
fuse-ext2: mounting read-only [main (../../fuse-ext2/fuse-ext2.c:368)]

mac:tmp hugo$

Inutile d'être en root pour lancer cette commande, c'est justement l'intérêt de fuse...

Et voilà le travail, un disque usb externe ext4 :

MacOs finder disque ext4 monté

J'ai écrit un petit script qui automatise un tout petit peu plus le processus de montage du périphérique, pour le montage :

mac:~ hugo$ ./mountext -d disk2s1
Mounting « /dev/disk2s1 » device in « /tmp/disk2s1 »
Device « /dev/disk2s1 » mounted in « /tmp/disk2s1 »
mac:~ hugo$

Pour le démontage :

mac:~ hugo$ ./mountext -u disk2s1
Umounting « /tmp/disk2s1 »
Ok
mac:~ hugo$

Voilà, le script se trouve en annexe de ce billet.

Ouvrir l'article

Éviter l'extinction / le redémarrage accidentel d'un serveur : molly-guard

J'ai découvert par l'intermédiaire de Clochix un petit programme très pratique, voir indispensable, à installer, notamment, sur les serveurs auxquels vous avez l'habitude de gérer à distance par ssh.

Ce paquet permet, en s'intercalant entre vous et les commandes halt, shutdown ou reboot, de vous protéger d'un rédémarrage ou un arrêt intempestif, voir dramatique (oui,  dramatique), de votre serveur en vous demandant de saisir le nom du serveur (hostname) à qui s'adresse ladîte commande...

Une petite mise en situation :

root@prod:$ shutdown
W: molly-guard: SSH session detected!
Please type in hostname of the machine to shutdown: dev
Good thing I asked; I won't shutdown prod ...

Voilà une belle sueur froide d'évitée...

Le paquet se nomme molly-guard et est disponible sur toutes les bonnes distributions GNU/Linux...

Ouvrir l'article

Problème de link down / link up avec module r8169

Si vous disposez d'une carte réseau dont le module noyau est le r8169 (la mienne est une D-Link DGE-528T, lspci : Ethernet controller: D-Link System Inc DGE-528T Gigabit Ethernet Adapter (rev 10)), il vous arrive peut être de temps à autre de voir dans les logs ce genre de chose :

[...]
Aug 9 19:04:32 spirit kernel: [292747.171138] r8169: eth2: link up
Aug 9 19:04:32 spirit kernel: [292747.608155] r8169: eth2: link down
Aug 9 19:04:36 spirit kernel: [292751.539114] r8169: eth2: link up
Aug 9 19:23:38 spirit kernel: [293893.913305] r8169: eth2: link down
Aug 9 19:23:45 spirit kernel: [293900.808973] r8169: eth2: link up
Aug 9 19:23:46 spirit kernel: [293901.165367] r8169: eth2: link down
Aug 9 19:23:49 spirit kernel: [293904.289123] r8169: eth2: link up
Aug 9 19:26:32 spirit kernel: [294067.013599] r8169: eth2: link down
[...]

Cela entraine bien évidemment des coupures réseaux...

Au premier abord, j'ai pensé à un défaut de connectique, j'ai donc vérifié et en effet, les 2 plots de plastique de la prise RJ45 sur la carte réseau qui servent à retenir la prise mâle dans la femelle étaient tous les 2 cassés, du coup, la prise mâle n'était pas retenue, on aurait pu expliquer les incessants down/up par les vibrations...

J'ai donc fixé solidement le cable à la carte réseau, redémarré le serveur, surveillé les logs et rien...pendant 1 heure, et le cycle down/up recommence, il y a donc, apparemment un autre souci, quelques recherches m'orientent sur une solution qui consisterait à activer le "Wake-on-lan after shutdown" avec le pilote sur Window$, j'essaie, même problème au bout de quelques temps...

Je redémonte la carte réseau pour l'inspecter et constate alors que le chip est très très chaud, au point de se bruler le doigt, il est tout de même à près de 50°C...
Et là, tout s'explique, les premiers problèmes sont apparus au début du mois de juillet lorsqu'il a commencé à faire très chaud, la chaleur ambiante combinée à la chaleur rayonnée dans la tour devait déclencher une sécurité pour protéger la puce...
Lorsque je démarrais le PC, les problèmes mettaient environ une heure avant de revenir de plus belle, tout simplement, le temps que la température monte, la fréquence à laquelle les link down / up se succédaient était apparemment également fonction du traffic (apparemment car je n'ai pas fait de mesure précise).

La mise en place d'un dissipateur à définitivement résolu le problème même en ce jour ou il fait particulièrement chaud, vu le nombre de personne qui se plaignent de se problème sur internet, cet article devrait servir à plus d'un...

Ouvrir l'article

Connection ssh sans mot de passe

Billet pense-bête, ça m'évitera de chercher si j'ai un trou de mémoire :)

Il est possible de se connecter sans saisir de mot de passe sur une machine distante en SSH, chose très pratique lors de l'administration de plusieurs machines...

Si ce n'est pas encore fait, il vous faut générer votre paire de clef publique / privée, pour cela, entrez la commande suivante :

$ ssh-keygen

Il vous demandera :

  • L'endroit oû stocker les clefs, (~/.ssh/id_dsa par défaut)
  • Une phrase faisant office de mot de passe, laissez cette dernière vide

Ensuite, il faut copier la clef publique dans le fichier ~/.ssh/authorized_keys du pc distant, vous pouvez le faire manuellement avec la commande scp, mais il existe plus simple :

$ ssh-copy-id user@domain.tld

Voilà, vous pouvez dorénavant vous connecter à votre machine sans mot de passe.

Prenez garde à n'utilisez cette méthode qu'à partir d'une machine "de confiance"...

Ouvrir l'article

Onglets dans la même instance de GVim

Voilà une petite astuce pour les utilisateurs de GVim qui vous permettra d'ouvrir tous vos documents dans la même instance grâce aux onglets.

La page Vim documentation : remote nous apprend qu'il est possible de faire fonctionner Vim comme un serveur recevant des messages de clients et exécutant les commandes demandées par ces derniers.
Une de ces commandes nous intéresse et va justement nous permettre d'ouvrir des documents dans la même instance de Vim, il s'agit de remote-tab-silent.

Testons cette commande :

 $ gvim -p --remote-tab-silent toto

Une instance de GVim s'ouvre avec toto dans un onglet (le paramètre p permet d'ouvrir un onglet par fichier).
Gardons GVim ouvert et testons de nouveau :

 $ gvim -p --remote-tab-silent foo

Le fichier foo s'affiche maintenant dans un nouvel onglet de la même instance GVim, nous avons donc 2 fichiers ouvert dans GVim : toto et foo.

J'ai fait un petit script bash qui permet de s'affranchir des problèmes rencontrés à l'ouverture avec Nautilus (qui tente d'ouvrir les documents avec le paramètre "-f") et qui évite surtout de devoir saisir les paramètres à chaque fois, il suffit alors de remplacer le fichier binaire de gvim par le script :

 $ mv /usr/bin/gvim /usr/bin/gvim-bin

Ensuite, il vous suffit de déposer le script ci joint dans le dossier /usr/bin et de lui attribuer les droits d'exécution.

Bon Gvim !

Ouvrir l'article

Page 1 / 3 »