Quelques astuces diverses, dix-septième
Ça faisait un petit moment que je n’avais pas sorti une collection de bidouilles en tout genre (que je n’avais rien sorti du tout d’ailleurs…), et j’avoue, ça me manquait un peu, c’est donc un plaisir que de vous sortir ce nouvel épisode aux sujets très variés 🙂
Ajouter des conditions au mysqldump
On m’a demandé de récupérer la liste des utilisateurs et rôles d’un site Drupal créés à partir d’un certain moment. En l’occurrence je me suis basé sur le dernier uid de la sauvegarde de la nuit pour ça. J’ai découvert que myslqdump avait une option permettait d’ajouter des « filtres » :
1 |
mysqldump -hbddhost.c0n4rjfm3lem.eu-west-1.rds.amazonaws.com bddclient users -w"uid > 397928" > /home/nobackup/users_bad_filtered.sql |
C’est le -w"condition"
qui applique en fait un WHERE aux requêtes SELECT permettant de construire le dump. Ça m’a super bien dépanné mine de rien 🙂
Debian, NTFS, il manque un truc
Eh oui, en 2019 si vous tentez de monter un disque externe sur un Debian minimaliste, ben il est monté en lecture seule, parce que sous Debian, ntfs-3g n’est toujours pas installé par défaut. C’est dommage, des fois qu’on tente d’avoir un OS utilisable au quotidien. Fort heureusement, il est tout de même disponible dans les dépôts :
1 |
apt install ntfs-3g |
Il suffit ensuite de retenter le montage avec le type ntfs-3g plutôt que juste ntfs, et ça devrait tout de suite se passer beaucoup mieux.
Exploiter correctement les smileys sous WordPress
Eh oui, notre moteur de blog préféré n’échappe pas à la règle et supporte plusieurs emoji, mais leur codification n’est pas toujours évidente. j’ai trouvé un petit guide en français qui vous montre comment utiliser ceux supportés, et mieux, comment en modifier le style 😉 Oui cette astuce tient plus du lien en vrac, alors histoire de masquer la misère voici le tableau :
Connecter directement un VPN sur certains réseaux Wi-Fi
Je cherche encore cette fonction sous Windows, mais pour ceux qui ont une distribution dont les connexions réseau sont gérées par NetworkManager, vous pouvez, sur les réseaux Wi-Fi enregistrés de votre choix, directement déclencher la connexion à un VPN également déjà enregistré. En l’occurrence, j’ai le serveur openvpn maison qui se trouve à côté du blog, et à Maurice, sur le Wi-Fi de l’hôtel je m’y connecte automatiquement :
Plus besoin de se souvenir de le faire en allumant l’ordi 🙂
Virer les lignes vides d’un fichier rapidement
Lors d’une extraction moche à base de copier/coller dans un fichier texte, je me suis retrouvé avec plein d’éléments tous séparés par une ligne vide. Quand on a 4/5 lignes ça se fait à la main, quand on en a plus, ça se fait avec sed :
1 |
sed '/^[[:space:]]*$/d' |
Comme toujours, sauvegarde préalable de rigueur quand on sort une arme nucléaire 😀
Bash : pensez à utiliser « return » dans une fonction plutôt qu’exit
Ouais vous allez dire, elle est évidente, mais ça l’était pas pour moi. J’ai tenté d’écrire un script qui me permet de switcher entre mes différents virtualenv. Comme ça ne fonctionnait pas (oh, comme c’est surprenant), j’ai déporté ça dans une fonction, et donc, j’ai eu un souci en contrôlant les paramètres :
1 2 3 4 |
if [ $# -ne 1 ]; then usage exit 1 fi |
J’ai testé, ça me fermait la fenêtre de Terminator. Pour contourner, on peut remplacer le exit 1 :
1 2 3 4 |
if [ $# -ne 1 ]; then usage return fi |
Voilà, le return sort du « script » pour rendre la main au shell plutôt que le fermer.
Linux, Thunderbird et l’ouverture des liens dans le mauvais navigateur
Je viens de passer mon laptop pro sous Manjaro Linux, j’ai besoin de Chromium en complément de Firefox. À la suite de son installation, Thunderbird m’ouvre les liens dans Chromium alors même que KDE et xdg-settings continuent de considérer Firefox comme navigateur par défaut (et on s’étonne encore que Linux ne percera jamais sur le bureau pour les masses). Pour corriger ça, c’est assez méchant, il faut modifier deux clés dans l’éditeur de configuration avancée (l’équivalent du about:config dans Firefox), via le menu « Préférences, Avancé, éditeur de configuration » :
Vous passez les deux clés à « True », et la prochaine fois que vous cliquez sur un lien, il vous demande quel navigateur lancer pour le lien cliqué, vous pouvez re-sélectionner Firefox et cocher l’option « se souvenir du choix ». (source)
Steam, Linux (encore) et les caractères accentués manquants
Pendant des mois, j’ai rencontré ce problème pénible, à savoir que dans le client Steam sous Linux, il n’acceptait pas les caractères accentués dans les chats (on pouvait les coller mais pas les saisir au clavier, pénible). Il s’avère que le client Steam cherche à tout prix la locale en_US.UTF-8, donc il faut la rajouter et relancer le client. Sous Manjaro/ArchLinux, c’est le fichier /etc/locale.gen qu’il faut éditer :
1 2 3 |
$ grep -v "#" /etc/locale.gen en_US.UTF-8 UTF-8 fr_FR.UTF-8 UTF-8 |
Il faut ensuite régénérer les locales, et on peut relancer le client Steam :
1 2 3 4 |
$ sudo locale-gen Generating locales... en_US.UTF-8... done fr_FR.UTF-8... done |
Youpi :
Pour info, y’a une issue Github ouverte depuis 2013, parce que le souci est récurrent sur les installations où les locales sont « uniques », Valve n’a toujours pas cherché à corriger (entre les annonces sur les distribs qu’ils ne supportent pas officiellement –dont Ubuntu à cause de la dépréciation du 32bit–, et le fait que c’est pas de l’anglais, donc les ricains n’en ont rien à branler…). Voilà.
Thunderbird, Free, SMTP : évidemment, c’est mieux quand c’est propre
Vous comprendrez vite : pour envoyer des e-mail avec une boite mail Free depuis le réseau Free, vous pouvez accéder au serveur SMTP sans authentification aucune, et pire, sans chiffrement. Mais quand on est pas chez soi ou chez quelqu’un qui est abonné chez un autre opérateur, ben c’est plus la même limonade.
Fort heureusement, la section d’aide de Free vous aide à activer l’authentification et paramétrer la connexion avec le chiffrement, et tout ça sur la même page. Testé et approuvé par votre serviteur pour sa petite maman 🙂
Thunderbird, encore : thème sombre dans le calendrier
Au boulot j’utilise désormais Thunderbird (sous Linux, pas d’Outlook), et j’utilise le thème sombre GTK qui correspond au thème sombre KDE (GTK breeze dark). Mais Lightning, le calendrier fourni avec Thunderbird, n’en tient pas compte par défaut. Fort heureusement, il est possible de modifier les options pour que ça soit le cas, Menu Préférences, Agenda, Accessibility, cochez la case « Optimize colors for accessibility » :
Manjaro/Arch : Afficher les couleurs dans Yay
J’ai eu une petite surprise : sur mon laptop pro, avec Manjaro KDE, yay affiche de belles couleurs. Mais pas sur ma machine perso avec Cinnamon. La vérité ne devait pas être très loin, et en effet, il suffit d’avoir l’option « Color » dans le fichier /etc/pacman.conf :
1 2 3 4 5 6 7 8 |
# Misc options #UseSyslog Color #TotalDownload ILoveCandy # We cannot check disk space from within a chroot environment CheckSpace #VerbosePkgLists |
Faire des statistiques sur les tailles de fichiers dans une arborescence
Le contexte : un collègue a des gros soucis de performances sur un montage NFS, qui pointe sur une instance EFS. On soupçonne les paramètres de montage, les fenêtres de lecture et écriture sont à 1Mo ce qui semble déjà trop. Pour vérifier quels seraient les meilleurs réglages à appliquer, il nous faut des statistiques sur les tailles de fichiers de l’arborescence. Je m’attendais à ce qu’un furieux ait fait un one-liner de porc pour ça, je ne me trompais pas :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
$ find . -type f -exec ls -lh {} \; | gawk '{match($5,/([0-9.]+)([A-Z]+)/,k); if(!k[2]){print "1K"} else{printf "%.0f%s\n",k[1],k[2]}}' | sort | uniq -c | sort -hk 2 198 1K 6 2K 10 3K 8 4K 9 5K 9 6K 1 7K 10 8K 2 9K 1 18K 1 20K 1 25K 1 154K 1 20M 1 22M 1 24M 1 26M 1 46M 1 53M 1 101M |
Dans l’exemple suivant, le 100Mo, c’est le provider azurerm de terraform…
Pour effacer les lignes vides avec sed, je préfère plutôt :
sed -E ‘/^\s*$/d’
Cela permet de retrouver les expressions régulières qu’on a l’habitude de voir en Javascript ou en PHP
Il y a aussi le rapide, mais uniquement pour les lignes vide :
grep .
Pour des stats sur la taille de fichier ou de répertoire il y a un utilitaire dispo sur presque toute les distro : ncdu très simple et très pratique.