Naviguer dans du code source grâce à des tags HTML

Blabla d’introduction

En tant que développeur, je suis souvent confronté au fait de retrouver des bouts précis de code source dans des dizaines de milliers de lignes de code. Pour ce faire, tout développeur connait ctags. Oui mais là, je voulais une sortie qui me génère un ensemble de fichiers HTML.

Voilà la solution…

Action

Il faut tout d’abord installer le paquet global

sudo apt-get install global

puis générer une liste des fichiers que l’on souhaite « tagger ».

ATTENTION: en théorie, on n’a pas besoin de générer une telle liste mais le problème, c’est que l’utilitaire gtags suit les liens symbolique comme un âne et si vous avez une boucle récursive, on va droit au message suivant : « Stack Overflow ».

donc pour générer le fichier :

cd /repertoire/dans/lequel/on/veut/faire/la/recherche

find . -iname "*.java" -o -iname "*.[ch]" -o -iname "*.xml" > files.txt

Dans ce cas, je liste les fichiers de type XML, JAVA, C et H.

Note: Pour de plus amples informations sur cette ligne => man find

puis on demande à gtags de créer les tags à partir de cette liste

gtags -v -f files.txt

et enfin on demande à htags de générer les fichiers html :

htags -v

ce qui donne en condensé :

find . -iname "*.java" -o -iname "*.[ch]" -o -iname "*.xml" > files.txt && ctags -f files.txt && htags

A la suite de l’ensemble des traitements, vous trouverez un dossier HTML dans le dossier racine de votre recherche et un beau fichier index.html qui vous permettra de naviguer facilement dans un gros code source.

Publié dans Programmation | Marqué avec , , , , | Laisser un commentaire

Monter une image iso sous Linux

Blabla d’introduction

Voila la commande pous monter une image iso sous Linux ( à l’instar de DaemonTools sous Windows).

Action

commande :

sudo mount -t iso9660 -o loop /path/to/file.iso /point/de/montage

Note : Pour que cette commande s’exécute correctement, il est nécessaire que /point/de/montage existe !

Publié dans Linux | Marqué avec , , , | Laisser un commentaire

Savoir quels sont les ports ouverts sur son ordinateur

Blabla d’introduction

Un (mini) article pour donner la commande qui permet de savoir quelles sont les connexions résaux actives (softwarement parlant) ouvertes sur un ordinateur.

Action

Il suffit d’ouvrir un terminal et de taper la commande suivante :

netstat -antu

Pour les plus curieux, il suffit de se fendre d’un man netstat pour tout savoir de cette commande mais en fait, si je la donne ici, c’est simplement que j’oubliais à chaque fois les options à donner à netstat pour avoir la sortir désirée.

Et justement, concernant la sortie, ça devrait vous donner quelque chose comme ça :

boulaire@boulaire-desktop:~$ netstat -antu
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Adresse locale Adresse distante Etat
tcp 0 0 0.0.0.0:40806 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:12345 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:12346 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:12347 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:861 0.0.0.0:* LISTEN
tcp 0 0 192.168.20.15:39870 202.185.312.400:8242 ESTABLISHED
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 ::1:12345 :::* LISTEN
tcp6 0 0 ::1:12346 :::* LISTEN
tcp6 0 0 ::1:12347 :::* LISTEN
tcp6 0 0 ::1:12345 ::1:46916 ESTABLISHED
tcp6 0 0 ::1:46916 ::1:12345 ESTABLISHED
udp 0 0 0.0.0.0:45228 0.0.0.0:*
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp 0 0 0.0.0.0:5353 0.0.0.0:*
udp 0 0 0.0.0.0:111 0.0.0.0:*
udp 0 0 0.0.0.0:631 0.0.0.0:*
udp 0 0 0.0.0.0:34936 0.0.0.0:*
udp 0 0 0.0.0.0:639 0.0.0.0:*
udp6 0 0 :::34868 :::*
udp6 0 0 :::5353 :::*

Si vous n’êtes pas arrivé sur cette page par hasard, vous ne devriez pas avoir besoin d’explications particulières (sinon, vous pouvez toujours laisser un commentaire).

Publié dans Linux, Réseau | Marqué avec , , | Laisser un commentaire

LVM étendre un volume existant

Introduction

Ceci est un petit article pour donner les commandes nécessaires à l’extension d’un volume logique LVM et du système de fichier présent dessus.

Action

Pour ce faire, il est nécessaire que le volume ne soit plus utilisé (donc démonté).

umount /mnt/data

Puis il faut faire un fsck pour détecter les erreurs éventuelles sur le système de fichiers

fsck /dev/mapper/data

On fait un resize du conteneur LVM (le 30g dans la commande ci dessous donne la nouvelle taille que l’on souhaite donner au conteneur LVM)

lvresize -L 30g /dev/mapper/lvm-data

ATTENTION: Ne pas donner au volume une nouvelle taille inférieure à celle de départ au risque de voir le système de fichiers présent sur le contenur corrompu (et donc de perdre l’ensemble des données stockées sur le volume logique LVM).

On contrôle à nouveau la cohérence du volume

e2fsck -f /dev/mapper/lvm-data

On retaille le système de fichiers pour qu’il prenne le maximum de place disponible (donc la taille du volume logique qu’on vient d’agrandir)

resize2fs /dev/mapper/lvm-data

Enfin, on remonte la partition (la commande ci-dessous fonctionne si le volume est présent dans le fstab)

mount -a

Et voila ! Un `df -h` devrait vous permettre de voir maintenant la nouvelle taille de votre volume logique LVM.

Publié dans Linux | Marqué avec , , , | Laisser un commentaire

Résoudre le problème de NO_PUBKEY rencontré avec apt-get update (ou aptitude update)

Blabla d’introduction

Lorsqu’on ajoute des dépôts dans son sources.list, il peut arriver souvent qu’à la prochaine commande apt-get update (ou aptitude update) on tombe sur un problème de ce type la :

aptitude update

...

W: GPG error: http://www.debian-multimedia.org experimental Release: Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 07DC563D1F41B907
W: Vous pouvez lancer « apt-get update » pour corriger ces problèmes.

Ci dessous se trouve la manière de résoudre ce problème.

Action

voilà la commande nécéssaire pour que votre système trouve la clé qu’il lui fait défaut

gpg --keyserver serveurDeClé --recv-key numéroDeLaCléManquante && gpg -a --export numéroDeLaCléManquante | sudo apt-key add -

avec serveurDeClé qui peut par exemple être :

  • pgpkeys.mit.edu
  • hkp://wwwkeys.pgp.net
  • hkp://keyring.debian.org

et le numéroDeLaCléManquante qui est la suite de nombre et de chiffres qui se trouve dans la ligne contenant « NO_PUBKEY ». Dans notre cas cet nombre serait : 07DC563D1F41B907

Afin de regler le problèe presenté, la ligne serait donc :

gpg --keyserver pgpkeys.mit.edu --recv-key 07DC563D1F41B907 && gpg -a --export 07DC563D1F41B907 | sudo apt-key add -

Et voilà ! plus de problème (vous pouvez contrôler avec apt-get update que tout fonctionne bien) !

TODO: Mettre un copy/paste du résultat de la commande donnée

Publié dans Linux | Marqué avec , , , , , , | 2 commentaires

Firefox s’ouvre en prenant tout l’espace d’affichage de l’écran

Blabla d’introduction :

Depuis peu, mon firefox a une tendance bizarre : Lors de son ouverture, il passe en plein écran masquant ainsi mes barres de tâches. Ce n’est pas que ce soit grave (il suffit de passer en plein écran puis de revenir à un écran « normal » pour que tout redevienne normal) mais cela finit par être agaçant. Après une petite recherche, voilà la solution pour revenir à un fonctionnement plus classique.

Action !

Il suffit de fermer firefox puis de taper sur ALT+F2. Dans la fenêtre qui s’ouvre, tapez

firefox -safe-mode

[N’oubliez pas de mettre un espace entre firefox et -safe-mode et valider.]

Dans la nouvelle fenêtre qui s’ouvre, cochez la 2e case « Reset toolbars and controls » et voilà !

Publié dans Astuces diverses | Marqué avec | Laisser un commentaire

Connaître le nom d’une partition

Blabla d’introduction

Il arrive qu’on ait besoin de savoir le nom d’une partition (par exemple /dev/sda2) pour faire un formatage ou pour monter un volume. Lorsqu’on connaît la commande, cela se fait très bien mais sinon, la recherche est pénible. Je donne donc ici la commande pour avoir la table de partitions de tous les périphériques connectés à l’ordinateur (la table de partitions n’est présente que sur les périphériques de stockage (clé USB, disque dur, carte mémoire,…). Ainsi, cette commande ne vous montrera pas les autres périphériques comme les webcam, les cartes TV, etc,…

Action

La commande magique est fdisk -l

sudo fdisk -l

ATTENTION: La commande doit bien être exécutée en mode privilégié car sinon celle ci n’afichera rien

exemple de la commande exécutée sans privilège :

max@max-laptop:~$ fdisk -l
max@max-laptop:~$

exemple de la commande exécutée avec privilèges :

max@max-laptop:~$ sudo fdisk -l
[sudo] password for max:

Disque /dev/sda: 200.0 Go, 200049647616 octets
255 têtes, 63 secteurs/piste, 24321 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Identifiant de disque : 0x2e344028

Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 1 8924 71681998+ 7 HPFS/NTFS
/dev/sda2 8925 23878 120118005 83 Linux
/dev/sda3 23879 24321 3558397+ 5 Etendue
/dev/sda5 23879 24321 3558366 82 Linux swap / Solaris

Dernier exemple : avec une clé USB connectée

max@max-laptop:~$ sudo fdisk -l
[sudo] password for max:

Disque /dev/sda: 200.0 Go, 200049647616 octets
255 têtes, 63 secteurs/piste, 24321 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Identifiant de disque : 0x2e344028

Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 1 8924 71681998+ 7 HPFS/NTFS
/dev/sda2 8925 23878 120118005 83 Linux
/dev/sda3 23879 24321 3558397+ 5 Etendue
/dev/sda5 23879 24321 3558366 82 Linux swap / Solaris

Disque /dev/sdb: 8039 Mo, 8039300608 octets
255 têtes, 63 secteurs/piste, 977 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Identifiant de disque : 0x00000000

Périphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 1 976 7839698 b W95 FAT32
max@max-laptop:~$

Et voilà, c’est tout.

Publié dans Astuces diverses, Linux | Marqué avec , , | Laisser un commentaire