Skip to content

VI - L'éditeur de texte atypique

« vi » ... Les informaticiens devant travailler sous UNIX, Linux ou BSD, qu'ils soient exploitants, ingénieurs de production, administrateurs système, développeurs, etc ... ont déjà entendu ce nom. Et pour ceux qui ont dû travailler avec cet éditeur de texte, pour la plupart d'entre-eux cela leur rappelle une expérience - disons - spéciale, voire frustrante, car « vi » est un éditeur de texte très atypique, du fait de son mode d'édition pouvant sembler totalement contre-intuitif. Et pourtant ...

Je vais essayer de démystifier l'ovni qu'est « vi » pour que vous puissiez enfin l'utiliser sans en avoir peur ... Voire en tomber amoureux et du coup abandonner votre éditeur de texte favori.

Pour l'anecdote, tous les textes de mon blog sont saisis sous « vim », le clone de « vi » le plus puissant et le plus répandu.

Continuer à lire "VI - L'éditeur de texte atypique"

Proxmox VE #4 - Migration de ext4 vers LVM-thin

Depuis la version 4.2 de Proxmox VE, le volume local permettant de stocker les images des machines virtuelles et les conteneurs est passé de ext4 ou ZFS à LVM-thin.

LVM-thin permet de ne plus stocker une image disque en tant que fichier sur une partition ext4 ou ZFS, mais permet de créer un périphérique en mode bloc directement utilisable par la machine virtuelle sur le volume LVM de Proxmox VE.

Parmis les avantages apportés par LV-thin, on peut citer en vrac : des vitesses de lectures/écritures disques accrues du fait de l'usage direct d'un périphérique bloc sans passer par le système de fichiers local, une allocation / désallocation fine de l'espace disque en fonction des besoins de la VM permettant de ne pas consommer plus d'espace disque que nécessaire, une gestion native des snapshots sans le surcoût lié au format QCow2, ...

Les nœuds sous Proxmox VE installés avant la version 4.2 ne bénéficient donc pas de ces fonctionnalités, même après mises à jour vers des versions plus récentes de Proxmox VE. Mais plutôt que de réinstaller un nœud complet, nous allons appliquer une petite procédure toute simple pour pouvoir bénéficier des avantages liés à LVM-thin.

Continuer à lire "Proxmox VE #4 - Migration de ext4 vers LVM-thin"

Proxmox VE #3 - Configuration et création d'un cluster

Nous avons vu lors du billet précédent que Proxmox Virtual Environment (PVE) est une solution de virtualisation extrêmement simple à installer, et ce, en quelques clics de souris.

Pour faire suite à ce billet consacré à l'installation de Proxmox VE, nous allons entrer dans le détail de la configuration d'un petit cluster composé de trois nœuds. Ces étapes de configuration sont néanmoins valables quelque-soit le nombre de nœuds composant le cluster.

Continuer à lire "Proxmox VE #3 - Configuration et création d'un cluster"

Shell tricks - Fixer les permissions d'une arborescence

Je constate souvent que les utilisateurs et/ou développeurs non Unixiens ayant besoin de travailler sous UNIX, Linux ou BSD ont tendance à ne pas fixer correctement les permissions des répertoires et des fichiers, parfois par fainéantise, mais le plus souvent par méconnaissance de la marche à suivre.

Voici donc un petit trick pour ceux qui en ont besoin.

Continuer à lire "Shell tricks - Fixer les permissions d'une arborescence"

Montage de la RepRap μDelta (micro-Delta)

La μDelta est une imprimante 3D Open-Hardware issue du projet RepRap, de type « robot delta » conçue par la société française eMotion-Tech en 2014.

Etant grand amateur d'électronique, j'ai voulu me lancer fin 2014 dans l'impression 3D pour plusieurs raisons. Déjà pour me familiariser avec cette technique de fabrication, puis ensuite pour fabriquer moi-même ma propre imprimante 3D sur la base d'imprimantes 3D du projet Open-Hardware RepRap. Et puis on ne va pas se mentir, aussi parce-que c'est vraiment très fun de pouvoir imprimer en 3D tous les objets que l'on souhaite à la maison, et pour un coût relativement modique.

Je me suis donc lancé en achetant le kit de base (révision 1.1, sans plateau chauffant, ni écran LCD, ni aucune autre option) en décembre 2014 sur le site de eMotion-Tech pour 400€ (elle est disponible aujourd'hui pour 300€), l'idée étant déjà de me frotter à tout ça, puis ensuite lui ajouter des options moi-même en la modifiant ... On est bricoleur ou on ne l'est pas !

Continuer à lire "Montage de la RepRap μDelta (micro-Delta)"

Linux Mint - Retirer les ancien noyaux

Linux Mint est une distribution GNU/Linux pour les PC de bureau, basée sur la distribution Ubuntu Linux (elle-même basée sur la distribution Debian), et mettant l'accent sur le confort de l'utilisateur.

Cette distribution est très dynamique, les mises à jours sont régulières, voire quotidiennes, et il n'est pas rare que le noyau lui-même soit mis à jour entre deux releases officielles de la distribution. L'approche prudentielle de Linux Mint étant de mettre à jour le noyau tout en gardant les noyaux précédemment installés, l'inconvénient est que ces derniers peuvent finir par prendre un espace disque non négligeable, sachant que chaque noyau peut prendre jusqu'à plus de 200 Mio.

Nous allons donc voir dans cet article comment effectuer un petit ménage dans les noyaux inutilisés de notre système d'exploitation favori.

Continuer à lire "Linux Mint - Retirer les ancien noyaux"

Les autotools #4 - Libtool

Nous avons vu précédemment que « autotools » est un terme générique utilisé pour désigner l'ensemble des outils de build du projet GNU, le « GNU build system ».

Dans ce billet, nous allons faire un focus sur l'outil libtool, qui est un outil permettant de produire des librairies de manière portable et de gérer correctement l'édition des liens quelque-soit la plateforme cible.

Cet outil aide à la création de bibliothèques statiques et dynamiques en proposant une interface totalement abstraite par rapport à la plate-forme visée, masquant ainsi les différences de comportement et d'implémentation (Linux, BSD, Solaris, AIX, ...). Cet outil s'interface avec « automake ».

Continuer à lire "Les autotools #4 - Libtool"

Les autotools #3 - Automake

Nous avons vu précédemment que « autotools » est un terme générique utilisé pour désigner l'ensemble des outils de build du projet GNU, le « GNU build system ».

Dans ce billet, nous allons faire un focus sur l'outil automake, qui est un outil permettant de produire des fichiers Makefiles portables et normalement totalement compatibles POSIX ayant pour objectif de construire une solution logicielle complète, quelque-soit la plateforme, en ne spécifiant que le strict nécessaire. Du point de vue du programmeur, l'écriture d'un Makefile se résumera donc à décrire ce qu'il souhaite réaliser dans un langage de plus haut niveau que le Makefile standard.

Continuer à lire "Les autotools #3 - Automake"

Les autotools #2 - Autoconf

Nous avons vu précédemment que « autotools » est un terme générique utilisé pour désigner l'ensemble des outils de build du projet GNU, le « GNU build system ».

Dans ce billet, nous allons faire un focus sur l'outil autoconf, qui est un outil permettant de produire des scripts ayant pour objectif de configurer automatiquement l'environnement de build d'un logiciel (dont le fameux script « configure »).

Ces scripts sont générés de manière à ce qu'ils soient entièrement portables dès lors qu'un interpréteur de commandes compatible de type « Bourne Shell » est disponible.

Les instructions permettant la génération de ces scripts sont écrites dans un fichier nommé « configure.ac », et ne sont au final que des suites de macros prédéfinies écrites dans le langage « M4 ».

Continuer à lire "Les autotools #2 - Autoconf"

Les autotools #1 - Présentation

Autotools est un terme générique utilisé pour désigner l'ensemble des outils de build du projet GNU. Ces outils sont aussi connus sous le nom de « GNU build system » et permettent aux développeurs de produire des systèmes de construction industrialisés et portables de leurs applications (le plus souvent écrites en C et C++, mais pas que ...).

Ces outils sont principalement au nombre de trois :

Utilisés ensemble, ces outils permettent de :

  • Générer le script « configure » bien connu des distributions de sources.
  • Générer des fichiers « Makefile » nécessaires à la construction du projet.
  • Compiler des sources.
  • Produire des programmes.
  • Produire des bibliothèques.
  • Produire et exécuter des tests unitaires.
  • Installer sur un système cible.
  • Créer une archive auto-suffisante des sources du projet.
Continuer à lire "Les autotools #1 - Présentation"

Proxmox VE #2 - Installation

Nous avons vu lors du billet précédent que Proxmox Virtual Environment (PVE) est une solution de virtualisation complète, libre, puissante et performante.

Après cette courte présentation, nous allons nous attarder dans ce billet sur son installation, qui, comme vous pourrez le constater, se révèle extrêmement aisée et est à la portée du premier venu, même sans disposer connaissances particulières.

Continuer à lire "Proxmox VE #2 - Installation"

Proxmox VE #1 - Présentation

Proxmox Virtual Environment (PVE) est une solution de virtualisation libre (un hyperviseur), de type bare-metal, basée sur Debian GNU/Linux, les machines virtuelles Linux KVM et les conteneurs Linux LXC. Le code source est publié sous licence GNU Affero GPL v3.

Proxmox VE permet de monter aussi bien un serveur unique de virtualisation qu'un cluster complet de constitué de plusieurs serveurs physiques permettant de gérer la répartition de charge ainsi que la haute disponibilité (HA - High Availability).

Proxmox VE est en concurrence directe avec VMWare vSphere, Microsoft Hyper-V ou Citrix XenServer, mais ses forces sont notamment d'être intégralement libre (donc open-source) et administrable à l'aide d'une interface web sans avoir besoin d'installer de client spécifique sur les machines des administrateurs. La puissance et la souplesse de cette solution de virtualisation n'ont pas à rougir face à la concurrence, loin s'en faut, et vous allez pouvoir le constater car nous allons tout de suite rentrer dans le vif du sujet.

Continuer à lire "Proxmox VE #1 - Présentation"

Configuration du PAP2 / PAP2T

Ce billet est un ancien billet datant de février 2007

Le PAP2 / PAP2T est un ATA (Analog Telephone Adapter - Adaptateur de Téléphone Analogique) produit par la marque Linksys (la branche grand public de Cisco Systems, un très grand constructeur de matériels professionnels orientés réseaux). Ce produit est particulièrement bien adapté à la téléphonie IP personnelle utilisant le protocole SIP et dispose en outre de deux ports distincts permettant donc de brancher deux téléphones et de les paramétrer sur deux fournisseurs SIP différents, permettant ainsi de disposer de deux ligne distincte avec éventuellement deux numéros de téléphone différents.

En France, cet appareil est vendu dans plus de 95% des cas en bundle avec une offre de téléphonie chez l'opérateur PhoneSystems (devenu Keyyo - ahhh, vente liée, quand tu nous tiens), ce qui fait que l'appareil est malheureusement pré-configuré et bridé et que l'utilisateur n'a donc pas accès à l'interface d'administration de l'appareil. Ceci peut paraître problématique au départ, mais ne se révèle finalement pas très gênant car il existe une petite procédure très simple permettant de contourner ce bridage d'origine. Bien entendu, il est possible (parait-il) de trouver des appareils non bridés d'origine, mais ils restent très rares sur le marché (voire introuvables, ce qui est vraiment dommage).

Continuer à lire "Configuration du PAP2 / PAP2T"