var Phenix = function () {
Troll du Web depuis 1996

Blog

Mon avis sur tout (même si on ne me le demande pas) et surtout sur n’importe quoi !

Un RAID1 à partir d’un disque dur existant

J’ai un disque dur de 3 To qui servait essentiellement à stocker tous mes médias. Il est loin d’être remplit et je devrais être en paix pendant un moment (avant de doubler et de passer à 6 To, en espérant que d’ici là, les prix soit devenu raisonnable)

Par contre, aucun backup, nada... N’aillant aucun disque dur de taille équivalente ou supérieur. Du coup, c’était un peu stressant, aillant déjà perdu des données.

J’ai donc acheté et installé son petit frère et fait un RAID 1.
C’est assez simple à réaliser sous Linux, cela prend juste pas mal de temps :

  1. On commence par formater la nouvelle bête, j’ai utilisé l’utilitaire de disque de ma distribution. Peu importe.
  2. Ensuite, il faut créer un RAID d’un seul disque : sudo mdadm --create --verbose /dev/md0 --force --level=1 --raid-devices=1 /dev/sdx.
  3. Maintenant, on peut formater la nouvelle partition md0 et copier les fichiers dessus.
  4. Quand la copie est terminée, il reste à ajouter le second disque dur au RAID : sudo mdadm --grow /dev/md0 --raid-devices=2 --add /dev/sda1.

Il est possible de voir le statut du RAID : sudo mdadm --detail /dev/md0

Source : http://askubuntu.com/questions/526747/setting-up-raid-1-on-14-04-with-an-existing-drive#526785

J’ai quand même eu un souci, quand j’ai voulu ajouter le second disque dur, il était monté. Ce qui semble être une mauvaise idée, car le détail me sortait un truc du style :

  1. Number   Major   Minor   Raid      Device State
  2.    1       8       65        1      active sync   /dev/sdxx
  3.    0       0        0        0      removed    /dev/sdxx

C’était chiant, car la synchro RAID ne se fait pas du coup.
Par bonheur, j’ai trouvé une collection de commande pour mdadm. Entre autre, il propose cette commande pour ajouter un disque :

  1. mdadm --add /dev/md0 /dev/sdxx

Cela a résolu mon problème, ce qui est quand même bien cool !

Du coup, la synchro c’est lancé !

  1. Number   Major   Minor   Raid           Device State
  2.        0       8       16        0      active sync   /dev/sdb
  3.        2       8       48        1      spare rebuilding   /dev/sdd

Par contre, ça prend un temps bête ces conneries... Toute la nuit n’a pas été suffisant.


Fatigué

Je suis

Fatigé de faire et refaire les mêmes site internet, les mêmes modules, les mêmes spécification.

Je suis fatigué de jongler entre les différents CMS qui sont tous aussi bête les un que les autres. Ils fonctionnent selon leur logique interne, qu’il faut comprendre chaque fois, ça fatigue.

Je suis fatigué de répondre au téléphone pour expliquer que, oui, j’ai bien reçu le mail qu’ils ont envoyé il y a moins de 2 heures, mais que non, je n’ai pas encore pris le temps de répondre.

Je suis fatigué des clients qui veulent absolument utiliser des liens ouvrants, malgré le fait que ce soit une mauvaise pratique trop répandue. Expliquer prend du temps, surtout quand personne n’écoute vraiment.

Je suis fatigué de répondre aux mêmes questions.

Je suis fatigué des gens qui ont été « assignés » à la gestion du site web et qui ne font aucun effort pour comprendre par eux même le fonctionnement de leur outil.

Je suis fatigué des gens qui préfèrent m’envoyer un mail pour me demander comment recadrer une image dans Wordpress, plutôt que de chercher quelques minutes supplémentaires, ou de regarder un des 2000 tutoriels qui doivent exister sur le sujet.

Je suis fatigué des gens qui attendent tout de l’informaticien et ne font aucun effort pour comprendre l’outil.

Je suis fatigué des gens pressés.

Je suis fatigué des gens qui envoie un email le matin et appel l’après-midi pour avoir une réponse plus vite.

Je suis fatigué des gens qui écrivent en couleur dans les mails des autres au lieu de faire des citations de ce à quoi ils répondent.

Je suis fatigué de créer des comptes Google pour d’autres afin d’obtenir un code Google Analytics et qu’ils puissent mettre en évidence l’inutilité de leur site.

Je suis fatigué des gens qui n’utilisent pas « répondre à tous ». Me forçant à transférer des mails aux gens que cela concerne vraiment.

Je suis fatigué de « répondre directement aux clients » parce que le chef de projet n’a pas le temps.
Ce qui, par la force des choses, fait de moi le nouveau chef de projet.

Je suis fatigué de recevoir des mails en Comic Sans MS.

Je suis fatigué du manque de vocabulaire technique des gens. De leur manque de culture Web.

Devant cet état de fatigue, deux choix s’offrent à moi :

  • Changer de métier.
  • Changer d’employeur.

Comme il est plus facile de changer d’employeur que de métier, c’est par cela que je vais commencer !


SS... heu, TLS bitch !

Voilà ! LetsEncrypt est installé, mon site est donc en https!

Du coup, je force un peu la main en redirigeant tout le monde en SSL :). Parce qu’il n’y a aucune raison de ne pas utiliser SSL en 2017.

Bon, j’ai dû changer de serveur pour cela. Avant j’étais hébergé par All2all. C’est un chouette hébergeur, mais il ne propose pas (encore le ssl via LetsEncrypt).
Bref, je ne quitte pas all2all parce que c’est mauvais, je quitte, car je veux bidouiller plus et que ce n’est pas possible sur un serveur mutualisé.

Du coup, c’est hébergé par moi, sur un VPS OVH. Il reste plein de truc à migrer, dont les boites mails... Et ça, je vais le procrastiner un moment je pense xD !

Au passage, SSL c’est fini depuis un moment, il faut dire TLS en vrai !

Édite

En faite, c’est plutôt une mauvaise idée de forcer le https, car google n’aime pas trop ce genre de changement d’un coup comme ça. Du coup, il faudrait bosser un peu plus...


Une commande #bash findrm pour ce faciliter la mémoire

La commande find est extrêmement pratique. Surtout quand on la met en musique avec la commande rm pour faire le ménage dans certain dossier.

Cependant, je trouve la syntaxe assez complexe, et j’en ai marre de faire une recherche Google à chaque fois. Du coup, hop, une petite fonction bash à mettre dans le fichier .bashrc :

  1. # Trouver et supprimer certains fichiers
  2. findrm () {
  3.     if [ "$1" != "" ]; then
  4.         find . -name "$1" | xargs rm -vf
  5.     fi
  6. }

Merci jluc qui m’a signalé qu’il valait quand même mieux tester l’existence de $1 avant de faire n’importe quoi !

Besoin de supprimer tous ces fichiers .DS_Store qu’un vilain utilisateur de Mac à mis dans un dossier ? findrm ".DS_Store" !

J’ai activé le mode verbose (-v quoi) de la commande rm pour avoir un détail de ce qui se passe.
Attention quand même à bien faire un backup avant, car cette fonction ne va pas vous demander votre avis avant de supprimer les éléments !

Edit :

On me signale que c’est plus optimisé d’utiliser xarg ! Merci tofulm.

  1. # Trouver et supprimer certains fichiers
  2. findrm () {
  3.     find . -name "$1" | xargs rm -vf
  4. }

Un moteur de recherche dans les catégories #Wordpress

Avoir un petit moteur de recherche pour les articles d’une catégorie Wordpress est en fait assez simple, pas besoin de ce lancer dans une chasse aux plugins.

Cela ne demande qu’un petit formulaire à mettre dans le template de catégorie.
Si vous n’avez pas envie de l’avoir dans toutes les catégories, vous pouvez simplement créer un template category-(slug ou ID).php.

  1. <form action="./" method="get">
  2.         <input name="search" type="text" value="<?php echo $_GET['search']; ?>" placeholder="Recherche" />
  3.         <input type="submit" value="Recherche"/>
  4. </form>

Et ensuite une petite WP_Query qui va faire tout le boulot :

  1. <?php
  2. $args = array(
  3. 's' => ($_GET['search']) ?: null, // Un opérateur Elvis, parce que c'est cool !
  4. 'cat' => $cat // L'ID de la catégory
  5. );
  6. $query = new WP_Query( $args );
  7.  
  8. while ( $query->have_posts() ) : $query->the_post();
  9. get_template_part( 'content', 'single' ); // A vous d'avoir un template pour afficher tout ça hein !
  10. endwhile;
  11. wp_reset_postdata();

Rien de sorcier donc, et surtout pas de faille de sécurité plugin usine à gaz d’installer pour faire ce formulaire.