Archives de catégorie : Linux

Linux mounted device : fsck.ext4 : No such file or directory while trying to open /dev/sdb1

Sur une machine virtuelle existante et dont je ne connais pas les procédures d’installation, j’ai eu une erreur pour l’exécution d’un fsck suite à son redémarrage. Ce dernier a été causé par une coupure électrique générale du datacenter. Le fsck automatique de la machine fonctionnait correctement sur les disques systèmes (/dev/sda) mais bloquait sur un volume distant monté (mounted device) avec comme message :

fsck.ext4 : No such file or directory while trying to open /dev/sdb1
Possibly non-existent device ?
fsck died (code 8).

Capture d'écran de la console vmware

Nous avions ensuite une invitation à effectuer une vérification manuelle, comme illustré ci-dessus. Bien sûr un simple fsck, manuel, ne fonctionnaient pas. A force de recherches, nous sommes arrivés à cette solution, de récréer la partition distante (qui ici ne contenait pas de données), puis de la formater.

Pour créer la partition nous effectuons un fdisk :

fdisk /dev/sdb

On crée ensuite la nouvelle partition avec « n ». Dans notre cas nous l’avons déclarée en primaire (primary) avec « p ». Nous avons laissé les autres paramètres par défaut. Pour sortir du menu, il faut bien penser à entrer « w » pour écrire les modifications effectuées. Sinon nous aurons un souci pour pouvoir formater la partition ensuite.

Une fois cette étape passée, nous avons obtenu des messages par rapport au « bad magic number in superblock » avec le fsck et sur l’absence d’une table de partition. Les méthodes pour réparer la table de partition ne fonctionnait alors pas, quelque soit le magic bloc ciblé. Il nous fallait donc formater le disque :

mkfs.ext4 /dev/sdb1

Après un redémarrage de la machine, le disque est monté correctement (nous avions toujours notre entrée dans le fichier /etc/fstab pour monter cette partition). Cette fois-ci la machine a démarré sans aucun souci.

Sources nous ayant aidées dans cette résolution :

 

[Linux] Mageia / KDE : le clic droit ne fonctionne plus et freeze Dolphin ou Konqueror

Cette semaine, suite à une mise à jour hebdomadaire de ma machine (Mageia 3 avec KDE) je me suis retrouvé avec un comportement pour le moins étrange, mon clic droit de souris ne fonctionnait plus et au-delà, « freezait » (bloquait) Dolphin ou Konqueror pour une à deux minutes sans pour autant avoir une action correcte à l’issue.

Avec l’aide de Stormi j’ai pu trouver une solution temporaire à ce souci. Il suffit de désactiver « File to activity linking plugin » (« Module externe de liaison entre fichier et activité » en français dans le texte 😉 ). Pour trouver cette option, rendez-vous dans les préférences (au choix de Dolphin ou de Konqueror car il s’agit d’un paramètre de KDE), rubrique « Services ». Voici ci-dessous une illustration pour vous aider.

Illustration de l'entrée de menu à désactiver dans les préférences de Dolphin ou Konqueror

Cette « astuce » a été inspirée d’un fil de discussion venant d’un forum de kubuntu [Link]. Nous avons bien sûr fait remonter un rapport de Bug [Link]. Pas de plus grosse avancée via cet article que de partager l’astuce afin de débloquer les gens qui rencontreraient ce comportement en attendant un bugfix plus pérenne 🙂

[Linux] Plantage de Mozilla Firefox sous Mageia suite à l’installation de Adblock Plus

Si il y a bien une application que j’installe toujours sur Firefox c’est Adblock Plus pour ne plus avoir autant de publicité en ligne. Sans cette extension, la plupart des sites ressemblent à des arbres de noël. Récemment j’ai re-installé mon poste de travail au sein de mon entreprise sous Mageia 2 en 64 bits. J’en ai profité pour ajouter la Mageia 2 en 32 bits sur mon PC portable personnel. Mais voila qu’en installant Adblock Plus [Link] mon Firefox a planté. Juste comme ça, fermé sans plus de message. J’ai pu le relancer mais dès que je voulais mettre à jour les listes d’abonnement de Adblock Plus, il se fermait. Je pouvais à la rigueur continuer ainsi si suite à une mise à jour du plugin je me suis retrouvé dans l’impossibilité de lancer mon navigateur favori. Certains me diront que j’aurais pu continuer avec Chrome (ou Chromium plutôt) mais je préfère le renard 😉

En le lançant en ligne de commande j’ai obtenu deux messages au départ, comme illustré ci-dessous.

[galsungen@localhost ~]$ firefox
Gtk-Message: Failed to load module « canberra-gtk-module »
Erreur de segmentation
[galsungen@localhost ~]$

Les deux messages sont indépendants. Pour le premier si nous regardons si canberra-gtk est installé, nous le trouverons bien.

[root@localhost ~]# urpmi canberra-gtk
Le paquetage canberra-gtk-0.28-10.mga2.i586 est déjà installé
[root@localhost ~]#

En fait il faut installer libcanberra-gtk0 (zéro) pour ne plus avoir ce souci.

[root@localhost ~]# urpmi libcanberra-gtk0
rsync://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/2/i586/media/core/release/libcanberra-gtk0-0.28-10.mga2.i586.rpm
installation de libcanberra-gtk0-0.28-10.mga2.i586.rpm depuis /var/cache/urpmi/rpms
Préparation…                   ################
1/1: libcanberra-gtk0      ################################
[root@localhost ~]#

Et la preuve :

[galsungen@localhost ~]$ firefox
Erreur de segmentation
[galsungen@localhost ~]$

Il nous reste donc le problème de l’erreur de segmentation (Segmentation Fault) qui est le vrai souci. Avec l’aide de Stormi nous avons fait remonter ce souci via un ticket de bug Mageia [Bug 8187]. Néanmoins il existe deux solutions testées et approuvées pour le moment de mon côté pour passer outre ce souci. La première est d’installer ce plugin via le paquet disponible dans les dépôts avec urpmi.

[root@localhost ~]# urpmi  firefox-ext-adblock-plus

La deuxième solution passe par l’installation et désinstallation de deux paquets. Il s’agit d’une astuce trouvée dans une remontée de bug pour l’utilisation du site jamendo qui plantait avec firefox.

[root@localhost ~]# urpmi libproxy-webkit
[root@localhost ~]# urpme  libproxy-mozjs

Sur système 64 bits ce seront les fichiers  « lib64proxy-webkit » et « lib64proxy-mozjs ». A l’issue d’une de ces deux manipulations, je n’ai pas eu de nouveaux soucis et j’ai pu utiliser Firefox correctement avec Adblock Plus (et paramétrer ce dernier). Voila j’espère que cela sera utile à d’autres comme manipulations en attendant un fix plus pérenne.

 

Télécharger / Créer un fichier vidéo à partir d’un flux de streaming Real Media (Rm)

Lors de certains cours au CNAM, j’ai découvert des supports de cours au format « .rm ». Il s’agissait de cours enregistrés et disponibles en Streaming sur l’interface de Pléi@d (Pour ceux qui ne connaissent pas le CNAM, il s’agit de la plate-forme de partage des documents de cours, messageries, forums, … réservée aux auditeurs). J’ai eu le droit aux deux formats, à savoir un flux en direct que je souhaitais visionner et enregistrer, et aussi des flux mis à disposition une fois le cours terminé, et que je souhaitais enregistrer en local. Ces fichiers sont des « Real Media » file associés normalement au lecteur Real Player. Si on a le fichier complet, VLC permet parfaitement de le lire. Et comme on le trouve sur tous les systèmes d’exploitation ou presque, c’est encore mieux. Pour enregistrer le flux en direct, le plus simple reste d’utiliser le logiciel propriétaire Real Player. Mais je n’en  suis pas fan car il vient aussi avec pas mal de publicités … Pour lire les fichiers sous Windows on peut alors utiliser son alternative c’est à dire Real Alternative. Maintenant imaginons que nous n’ayons plus le net, ou que nous souhaitions placer les vidéos sur notre smartphone pour les lire sans consommer toute la bande passante de ce dernier. Voici donc un moyen pour télécharger les vidéos au format rm et les passer en format avi.

  • En supposant que l’on soit sous Windows, prendre une build sans GUI de mplayer. Pour des versions Linux/MacOS voir içi ou tout simplement dans vos dépôts 😉 .
  • Extraire les fichiers avec 7zip.
  • Récupérer le lien de la vidéo (fichier .rm), l’éditer avec un éditeur simple comme Bloc-Note, Vi etc…

Vous obtiendrez par exemple pour une vidéo :

rtsp://xxx.xxx.xxx.xxx/architecture/dossiers/nom_de_mon_fichier.rm

Où xxx.xxx.xxx.xxx représente l’IP ou le nom de domaine de la machine hébergeant votre fichier rm.

  • Sous Windows, lancer un cmd (command) et se placer dans le répertoire où l’on a extrait mplayer.
  • Lancer cette commande (ici sous Linux) :

mplayer -dumpstream « rtsp://xxx.xxx.xxx.xxx/architecture/dossiers/nom_de_mon_fichier.rm » -dumpfile nom_de_mon_fichier_local.avi

 

  • Prévoir autre chose en attendant car cela peut-être long pour certaines 😉
  • Récupérer son fichier .avi dans le répertoire de mplayer, ou dans le répertoire depuis lequel on a lancé la commande.

Remarque 1 : lire la vidéo récupérée avec autre chose que Windows Media Player (VLC etc) car la vidéo s’arrête en plein milieu avec WMP (pour cela il faut avoir les codecs Real, pas besoin avec VLC)… Vous pouvez bien entendu le ré-encoder pour réduire sa taille et/ou corriger le problème.

Remarque 2 : Comment ré-encoder la vidéo pour passer à un format plus sympa (ici sous Windows) :

mencoder.exe nom_de_mon_fichier_local.avi -ovc x264 -oac mp3lame -lameopts abr:br=64 -x264encopts bitrate=150 -o nouveau_nom_de_mon_fichier_local.avi

Bon il existe de nombreuses options ou formats que je ne détaillerais pas ici. Via les sites de mplayer ou de références, vous devriez pouvoir trouver pas mal d’informations, de précisions sur ces points.

J’espère que cela sera utile à certain(e)s. En tout cas je remercie l’auditeur du CNAM qui m’avait aidé pour toutes ces astuces à l’époque. Et si vous n’êtes pas au CNAM et que cela vous est aussi utile, n’hésitez pas à en faire profiter d’autres 🙂

Calculs de réseaux, sous-réseaux, masques, IP, Broadcast, …

Que ce soit pour le travail, pour créer un réseau, ou pour réaliser des exercices pour les cours, ou tout simplement pour le fun, nous avons parfois besoin de calculer des IP, réseaux, masques et ainsi de suite. Si connaître la théorie est importante, via des calculs binaires (ET, OU, …), nous trouvons déjà pas mal de tutoriels sur le Net en plus de ce que nous apprenons en cours. J’avais déjà eu à la faire pour le CNAM en RSX101 (Réseaux et Télécommunications) et je viens d’avoir à travailler de nouveau sur ces sujets pour le cours de RSX103 (Réseaux : compléments et applications). A l’époque j’avais utilisé ShunIPCalc pour me faciliter la vie. je l’avais aussi utilisé en entreprise pour concevoir notre actuel réseau et son découpage. Mais j’ai pu découvrir récemment d’autres applications sous Linux pour le compléter comme sipcalc, ipcalc et GIP (Internet Protocol Calculator). Voici donc une brève présentation de ces outils qui je l’espère pourra vous aider pour le CNAM ou au travail. 🙂

Sommaire

ShunIPCalc

Surement le plus connu et le premier que j’ai utilisé. Sous Windows il s’agit d’un freeware. Facile d’utilisation et très complet c’est celui que j’ai utilisé le jour où j’ai du modifier le réseau de mon entreprise. En effet on peut facilement concevoir des plans d’adressage compliqués en choisissant de travailler sur des plages d’IP, des nombres de machines par sous-réseaux et ainsi de suite.

C’est vraiment une aide et le site y apporte beaucoup. En plus de donner un logiciel complet, son auteur a rédigé des pages explicatives sur tous les calculs. Je crois bien que j’ai autant du utiliser son aide en ligne que son logiciel afin de bien maîtriser ces concepts et calculs 😉

sipcalc

Sur une Ubuntu desktop rien de plus simple pour l’installer :

sudo apt-get install sipcalc

Ensuite il vous suffit de le lancer via la console :

gals@gals-UVB:~$ sipcalc 10.0.0.0/25
-[ipv4 : 10.0.0.0/25] – 0
[CIDR]
Host address        – 10.0.0.0
Host address (decimal)    – 167772160
Host address (hex)    – A000000
Network address        – 10.0.0.0
Network mask        – 255.255.255.128
Network mask (bits)    – 25
Network mask (hex)    – FFFFFF80
Broadcast address    – 10.0.0.127
Cisco wildcard        – 0.0.0.127
Addresses in network    – 128
Network range        – 10.0.0.0 – 10.0.0.127
Usable range        – 10.0.0.1 – 10.0.0.126

gals@gals-UVB:~$

L’aide est assez complète et nous montre pas mal d’options :

gals@gals-UVB:~$ sipcalc -h
sipcalc 1.1.5

Usage: sipcalc [OPTIONS]… <[ADDRESS]… [INTERFACE]… | [-]>

Global options:
-a, –all            All possible information.
-d, –resolve            Enable name resolution.
-h, –help            Display this help.
-I, –addr-int=INT        Added an interface.
-n, –subnets=NUM        Display NUM extra subnets (starting from
the current subnet). Will display all subnets
in the current /24 if NUM is 0.
-u, –split-verbose        Verbose split.
-v, –version            Version information.
-4, –addr-ipv4=ADDR        Add an ipv4 address.
-6, –addr-ipv6=ADDR        Add an ipv6 address.

IPv4 options:
-b, –cidr-bitmap        CIDR bitmap.
-c, –classfull-addr        Classfull address information.
-i, –cidr-addr        CIDR address information. (default)
-s, –v4split=MASK        Split the current network into subnets
of MASK size.
-w, –wildcard        Display information for a wildcard
(inverse mask).
-x, –classfull-bitmap    Classfull bitmap.

IPv6 options:
-e, –v4inv6            IPv4 compatible IPv6 information.
-r, –v6rev            IPv6 reverse DNS output.
-S, –v6split=MASK        Split the current network into subnets
of MASK size.
-t, –v6-standard        Standard IPv6. (default)

Address must be in the « standard » dotted quad format.
Netmask can be given in three different ways:
– Number of bits    [/nn]
– Dotted quad       [nnn.nnn.nnn.nnn]
– Hex               [0xnnnnnnnn | nnnnnnnn]

Interface must be a valid network interface on the system.
If this options is used an attempt will be made to gain the address
and netmask from the specified interface.

Replacing address/interface with ‘-‘ will use stdin for reading further
arguments.

Report bugs to .
gals@gals-UVB:~$

Si jamais il n’est pas disponible par défaut sur votre distribution Linux, n’hésitez pas à visiter les liens ci-dessous pour obtenir les sources.

IP Calculator : ipcalc

Un autre outil en ligne de commandes. Il est installé par défaut sous Ubuntu, CentOS et d’autre distributions.

gals@gals-UVB:~$ ipcalc
Usage: ipcalc [options]

[[/]] [NETMASK]

 

ipcalc takes an IP address and netmask and calculates the resulting
broadcast, network, Cisco wildcard mask, and host range. By giving a
second netmask, you can design sub- and supernetworks. It is also
intended to be a teaching tool and presents the results as
easy-to-understand binary values.

-n –nocolor  Don’t display ANSI color codes.
-c –color    Display ANSI color codes (default).
-b –nobinary Suppress the bitwise output.
-c –class    Just print bit-count-mask of given address.
-h –html     Display results as HTML (not finished in this version).
-v –version  Print Version.
-s –split n1 n2 n3
Split into networks of size n1, n2, n3.
-r –range    Deaggregate address range.
–help     Longer help text.

Examples:

ipcalc 192.168.0.1/24
ipcalc 192.168.0.1/255.255.128.0
ipcalc 192.168.0.1 255.255.128.0 255.255.192.0
ipcalc 192.168.0.1 0.0.63.255

ipcalc-  deaggregate address range

ipcalc

/–s a b c

split network to subnets
where a b c fits in.

! New HTML support not yet finished.

ipcalc 0.41
gals@gals-UVB:~$

Ce qui nous donne par exemple :

gals@gals-UVB:~$ ipcalc 10.0.0.0/25
Address:   10.0.0.0             00001010.00000000.00000000.0 0000000
Netmask:   255.255.255.128 = 25 11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127            00000000.00000000.00000000.0 1111111
=>
Network:   10.0.0.0/25          00001010.00000000.00000000.0 0000000
HostMin:   10.0.0.1             00001010.00000000.00000000.0 0000001
HostMax:   10.0.0.126           00001010.00000000.00000000.0 1111110
Broadcast: 10.0.0.127           00001010.00000000.00000000.0 1111111
Hosts/Net: 126                   Class A, Private Internet

gals@gals-UVB:~$

Je vous laisse découvrir les différentes options possibles et jouer avec. Et pour plus d’informations où si vous ne l’avez pas d’installé, servez-vous des liens ci-dessous.

GIP (Internet Protocol Calculator)

Il s’agit ici d’une application fenêtrée et non plus en ligne de commande. Similaires aux autres elle nous permet de réaliser divers calculs en automatique. Pour l’installer sous Ubuntu rien de plus simple.

sudo apt-get install gip

Lancez là ensuite avec « gip ». Vous aurez alors les fenêtres suivantes :

De quoi faciliter les calculs et les études. Et si vous n’avez pas le paquet tout prêt pour votre distribution, vous pouvez suivre les liens suivant pour vous procurer ce logiciel.

Liens additionnels :

Parce que avoir des solutions toutes prêtes c’est bien, mais citer ces sources et vous permettre d’approfondir c’est tout aussi bien, voici quelques liens pour vous aider. Pour certains cela vous permettra de nombreux exemples de calculs en complément de ceux cités ci-dessus, et pour d’autres des points de vue ou des exemples différents des miens.

Comme d’habitude n’hésitez pas à partager vos propres ressources ou liens en commentaires. Plus on partage et mieux c’est. L’information est partage 😉