Quelques astuces diverses, douzième

Twitter Facebook Google Plus Linkedin email

Allez, c’est reparti pour une nouvelle collections de petites bricoles qui facilitent la vie de toux ceux qui bricolent 🙂

Compresser à la volée une image disque

Le problème quand on fait une image d’une partition ou d’un disque, c’est qu’il va tout prendre, les un comme les zéro (pour rappel, tout est binaire à la base). Et si y’a beaucoup de zéro, c’est de l’espace gaspillé; si un disque fait 32Go mais seulement 10 sont utilisés, l’image fera tout de même 32Go. Heureusement on a des outils de compression pour ça, et même certains qu’on peut appeler à la volée à l’aide d’un pipe:

Si le temps d’exécution n’est pas un problème pour vous, vous pouvez également utiliser xz qui sera plus performant mais beaucoup plus lent (on pourrait faire un petit comparatif un jour tiens 🙂 )

Rediriger la sortie d’une commande effectuée avec sudo

Le problème de sudo, c’est qu’il n’applique l’élévation de privilège qu’à la commande en cours et pas à d’éventuelles redirections, ce qui peut s’avérer gênant quand on veut écrire dans un dossier sur lequel on a pas les droits. Dans l’astuce précédente, si on veut avoir le droit d’écrire dans /media/disk (parce que oui parfois ça marche pas bien), on peut englober la commande et sa redirection sur une nouvelle instance de bash :

Attention cependant, cette nouvelle « session » ne charge peut-être pas tout l’environnement, dans ce cas, préférez des chemins absolus pour les commandes tapées si elles sont dans des chemins non standards.

Let’s Encrypt, Apache, et directive <Limit>

Un client filtre ses accès préprod par IP avec une directive <Limit> contenant une série d’allow et de deny dans le fichier .htaccess à la racine du site. Pour permettre aux serveurs de Let’s Encrypt de contacter le dossier .well-known afin de valider le challenge, j’ai utilisé mod_setenvif :

Pourquoi pas ajouter les IP Let’s Encrypt ? Parce qu’elles ne sont pas fixes (dixit la FAQ) :

What IP addresses does Let’s Encrypt use to validate my web server?

 

We don’t publish a list of IP addresses we use to validate, because they may change at any time. In the future we may validate from multiple IP addresses at once.

Améliorer les performances wifi sous Linux

A la cité des Sciences, mais je pense que ça peut me servir ailleurs, j’ai eu quelques difficultés avec ma carte wifi qui semblait mal conserver un lien avec le point d’accès. Mon dépanneur de Chromebook (avec qui on l’a cassé, j’en ai parlé récemment dans son démontage) m’a filé une astuce, en lien avec la gestion de l’énergie. Il faut passer par l’utilitaire iw (à installer donc) :

Bon par contre, si vous êtes charrette en batterie ça sera peut-être pas recommandé 🙂

Ajouter un fichier swap pour grossir l’espace existant

En attendant de pouvoir empêcher une application de faire de la merde, et d’améliorer un peu la gestion de la mémoire du noyau, un collègue a ajouté un fichier de swap d’un 1Go en plus de la partition existante. Voici la procédure suivie, en mode administrateur :

Vous devriez voir le résultat en direct sur la taille du swap globale. Et si on veut que ça soit persistant, on peut ajouter la ligne suivante au fichier /etc/fstab :

Evidemment, ne pas utiliser le swap c’est mieux, mais quand vous avez pas le contrôle de l’application, hein…

Tester un cipher suite en particulier avec openssl

Un client nous demande de modifier le paramètre Diffie-Hellman qui plombe ses notes sur les différents tests SSL/TLS. Je fais la modification mais par défaut en testant openssl va prendre un cipher à base de courbes elliptiques, plus récent et mieux noté, donc je vois pas le résultat :

Fort heureusement, openssl est plein de ressources et on peut choisir la « qualité » de connexion 🙂

Docker, exporter une image

Dans le cadre d’un cluster DC/OS, un problème avec la registry du client empêchait un container de se redéployer sur un autre nœud qui ne disposait pas de l’image. Fort heureusement, on a un petit contournement pour ça, si on a accès à un nœud ou l’image est déjà là :

Supprimer le début d’un fichier à partir d’une ligne

J’ai eu à extraire d’un fichier de serveur mail la pièce jointe au format PDF. Dans ce format, la pièce jointe en question est encodée en base64 à la fin du mail. La solution, chercher une ligne de référence à partir de laquelle je conserve tout, et supprime le début. Et on fait ça avec sed :

Un petit vim pour nettoyer quelques lignes superflues, et on peut décoder :

Forcer la coloration syntaxique dans vim

Lors de modifications lourdes apportées à un fichier de configuration Apache pour un client (multiples virtualhosts avec le même tronc de directives), j’ai déporté les règles communes dans un fichier à part et je l’inclus dans les différents vhosts. Pour m’assurer que la bonne coloration syntaxique est appliquée quand je charge ce fichier amputé des directives de bases qui permettent la détection automatique, j’ai ajouté une petite ligne au début du fichier :

Attention aux espaces 🙂 Pour savoir tout ce qu’il est possible de faire, vous pouvez vous manger la doc.

Tiret au début d’un nom de fichier

Il y a des gens comme ça sur terre qu’il faudrait brûler, parmi eux ceux qui me collent un tiret au début du nom d’un fichier. Pourquoi ? Ben le tiret en question est couramment utilisé pour désigner des options de commandes, et ça débouche sur ce genre de message d’erreur à la con sur une palanquée de commandes :

Guillemets simples, doubles, rien n’y fait. Pour contourner, il faut que j’utilise une autre astuce, le chemin :

Deux caractères, une frustration évacuée 🙂


C’est tout pour aujourd’hui, mais je me rend compte d’une chose : j’ai du relire tous les billets précédents pour vérifier que je n’avais pas déjà partagé certaines des astuces présentées ici, et il y a un précédent de doublon. Avec le nombre d’articles qui augmente dans la série, je vais devoir m’organiser pour éviter de perdre du temps et peut-être le votre à l’avenir 🙂

9
Poster un Commentaire

avatar
6 Fils de commentaires
3 Réponses de fil
2 Abonnés
 
Commentaire avec le plus de réactions
Le plus populaire des commentaires
8 Auteurs du commentaire
T0mggbnmBarbe_drueMirabellettegileri Auteurs de commentaires récents
  S’abonner  
plus récent plus ancien
Notifier de
Cascador
Invité
Cascador

Oh le débutant 😉

mv -- -fichier-pourri.txt fichier-pourri.txt

Tcho !

Shikiryu
Invité

Argh j’étais en train d’écrire la même !

gileri
Invité

Pour créer le fichier swap il y a aussi fallocate qui alloue un fichier « sparse » (vide), ce qui est bien plus rapide et supporté par la plupart des systèmes de fichier :

fallocate -l 1G /swapfile

Mirabellette
Invité

Super intéressant, merci du partage 🙂

Barbe_drue
Invité
Barbe_drue

Tu as aussi ripmime pour extraire les pièces jointes d’un email.

ggbnm
Invité
ggbnm

Pour la compression à la volée, je te conseille d’inclure lbzip2 à ton futur comparatif (bzip2 en parallèle). Il saura utiliser tous les coeurs CPU.

T0m
Invité
T0m

Bonjour,
Concernant l’astuce de la compression d’une image de disque. As-tu testé avec la commande proposée par Sébastien Sauvage : http://www.sebsauvage.net/links/?DrNtGw ?