Archives de catégorie : Linux

Un VPN sur odroid M1 avec Wireguard

Gros plan sur des câbles électroniques noirs sur une surface également sombre. Parmi eux se trouvent de petites figurines du SWAT à tenue bleu marine et casque jaune. Équipements électroniques en fond
L’équipe a sécurisé le réseau, je répète, l’équipe a sécurisé le réseau.

J’ai configuré un serveur de VPN Wireguard sur mon Odroid M1 (alternative du Raspberry Pi). Cela me permet me connecter à Internet avec mon téléphone de manière sécurisée et confidentielle quand je suis sur un Wi-Fi auquel je n’ai pas confiance. Voici la configuration (j’espère ne pas avoir oublié d’étape).

Continuer la lecture

Odroid ou Raspeberry Pi 4? Raspeberry (si vous le trouvez)

(mise à jour: j’ai acheté un Odroid M1 pour des raisons de disponibilité)

Mon vieux Odroid X2 (un mini-ordi ARM de 9×9.5cm) de 2013 vient de tomber en panne. Pour le remplacer, je vois 3 options: un Raspberry Pi 4, un Odroid M1 ou un Odroid N2+. Je vais prendre le Raspberry (à la fin de la pénurie), parce que par le passé mon Odroid a fini par ne plus être supporté et je ne pouvais plus mettre à jour le système à jour, ce qui me laissait avec des vulnérabilités de sécurité et des vieux logiciels très durs à mettre à jour si eux et leurs dépendances ne sont pas déjà préparés par quelqu’un.

  • Pour le Rasberry:
    • Une meilleur pérennité des logiciels et une plus grande communauté. Certains Odroid (pas encore le M1, et on ne sait pas quand) sont supportés par le projet Armbian (outil pour créer des distribs Debian et Ubuntu pour divers mini-ordis), mais je ne sais pas ce qu’il en sera dans 5-7 ans.
    • Sa puce est bien mieux supportée. En octobre 2022, le GPU de l’Odroid n’est supporté par Ubuntu qu’en version 2020.04, pas en 2022.04 (en développement).
    • Wi-Fi intégré.
    • Un plus grand choix de matériels.
  • Pour le Odroid M1:
    • Il est disponible. Selon Ars Technica (octobre 2022), le Raspberry Pi 4 ne sera pas disponible en masse avant des mois.
    • Il a de base un connecteur NMVe et un SATA. On peut fixer un SSD SATA sur la carte avec un support vendu séparément (10€, pas dispo en France), mais cela ne rentrera pas dans le boîtier métallique officiel.
    • Il paraît qu’il chauffe moins.
  • À égalité:
    • si le Rasperry ne supporte que des SSD via un adaptateur USB, cela revient au même prix qu’un M1 avec un boîtier Argon One M2 qui accepte un SSD M2.
    • le Raspberry est plus rapide que le M1 de l’ordre de 25% (sauf pour la crypto AES, beaucoup plus rapide sur le M1).
  • Pour le Odroid N2+: 2 fois plus rapide.
  • Contre le N2+: stockage eMMC (une puce bien plus chère qu’un SSD, mais beaucoup plus petite) et SD, ou bien par USB 3.

Kubuntu: réinstaller le snap de Firefox et perdre son profil

Sur Kubuntu 22.04, j’ai fait la malheureuse expérience de perdre plusieurs semaines de mon profil Firefox en réinstallant la version snap (maintenant par défaut dans Kubuntu, plutôt qu’une version apt/deb). C’est la première fois que je vois une désinstallation et/ou installation d’une application Linux modifier (et en l’occurrence supprimer) des données situées dans le profil de l’utilisateur. Une première affligeante. Jusqu’à présent, les données utilisateurs vivaient leur propre vie dans /home, et on pouvait réinstaller le système ou en changer tout en gardant ses données.

Comment en suis-je arrivé là?

  • Cela fait plusieurs fois que j’ai une popup système me disant de fermer Firefox pour qu’il se mette à jour. Ce que j’ai fait, sans qu’il ne se passe rien, et sans que je trouve comment lancer la mise à jour. J’avais mis à jour avec « sudo snap refresh firefox » (convivialité médiocre).
  • Je suis tombé sur cette page qui indique comment installer le deb fourni par Mozilla.
  • J’ai désinstallé la version snap, puis voyant les instructions suivantes que je n’avais pas envie d’étudier immédiatement, j’ai renoncé et réinstallé le snap.
  • Et là surprise, si j’ai bien compris cela a supprimé mes données dans « ~/snap/firefox », puis ça a à nouveau fait la migration depuis « ~/.mozilla/firefox ». Bref, je me retrouvais avec de vieilles versions de mes profils. Par chance, mes mots de passe et mon historique sont synchronisés, mais j’ai perdu mes onglets courants et des extensions installées.

Kubuntu 20.10 à 21.10 : réinstallation partielle

Il était temps de passer ma Kubuntu 20.10 à une version plus récente, étant donné qu’il y a une faille d’élévation de privilège dans polkit/pkexec (CVE-2021-4034) et qu’il n’y a plus de patch pour Kubuntu 20.10 (plus supporté). Et là j’ai découvert que ce n’était plus possible officiellement de passer de Kubuntu 20.10 (groovy) à 21.10 (impish) même indirectement (via la 21.04), sauf à tenter de mettre à jour tous les paquets (pas sûr que ça marche). Donc je suis parti pour une réinstallation.

Continuer la lecture

Kubuntu 19.04 à 19.10

Une des mises à jour les plus problématiques depuis longtemps:

  • Impossible de passer l’écran de connexion J’ai réinstallé en ligne de commande sddm (qui gère cette étape). Mais pour ça j’ai dû démarrer le wi-fi en ligne de commande avec la commande nmcli.
  • Une fois dans KDE, les widgets de mes panneaux KDE étaient cassés et le panneau de configuration ne s’ouvrait pas, pour cause de bibliothèque manquante. Solution: en ligne de commande désinstaller tous les paquets avec « kde » ou « plasma » dans le nom et installer « kde-standard ».
  • MySQL ne démarre pas: « mysql function archive already exists ». Impossible de trouver pourquoi. J’ai enlevé MySQL (je crois que je n’avais pas de DB liée au système).

Point positif: disparition du délai de 30 secondes à chaque démarrage si /usr se trouve dans un LVM.

Ubuntu 19.04: problème de cliquetis avant et après un son

Nouvelle mise à jour de Kubuntu, nouveaux petits problèmes. Au moment de jouer un son et également 6 secondes après, un gros bruit de craquement se fait entendre. Ce qui rend fou si les sons sont brefs. Avant je ne l’avais qu’à l’extinction de la machine.

Solution qui marche pour moi:

Dans le fichier « /etc/pulse/default.pa », commenter la ligne suivante en mettant un dièse devant:

load-module module-suspend-on-idle

Ensuite vous pouvez tuer pulseaudio avec « killall pulseaudio », il sera redémarré au prochain son voire immédiatement. Vous pourrez immédiatement constater si cela a marché ou pas.

Cela évite que le périphérique audio soit suspendu quand il n’est plus utilisé. Hypothèse: peut-être que c’est utile sur un portable pour lequel on veut économiser la batterie… En tous cas ce n’est pas techniquement une bonne solution. Il faudrait plutôt chercher au niveau du gestionnaire du périphérique audio (un intégré Realtek dans mon cas).

Ce qui n’a pas marché

Certains ont proposé de configurer la ligne suivante, ce qui a été sans effet pour mon cas:

load-module module-hal-detect tsched=0

Kubuntu 17.04 to 18.04: hidden empty LVM logical volume, no boot

After the update from Kubuntu 17.04 to 18.04 and a reboot, my system refused to boot and only gave me « emergency mode ». Long story short: for an unknown reason I had an empty volume « pvmove0 » that the new version did not like, and after removing it it worked.

What was in the journal?

I had a look at the system journal with this command (the LANG is to have all messages in English, which is easier to find on the net than French):

LANG="en_GB.UTF-8" journalctl -xb

I had lines like that:

May 04 20:46:05 mymachine lvm[415]: LV pvmove0: has no segment.
May 04 20:46:05 mymachine lvm[415]: Couldn't read all logical volumes for volume group fablvm.

Also, most of the LVM commands could not read the Physical Volume (PV) and the Logical Volumes (LV) on this disk: they told me that the physical volumes did not belong to a Volume Group and they had no size.

The mysterious Logical Volume pvmove0

As Kubuntu 17.10 (on an USB stick) could still read all my PV and LV, I had the idea to backup the Volume Group metadata in Kubuntu 17.10 and restore it from Kubuntu 18.04.

vgcfgbackup -f path/to/my/backup.vg my_vg

Then I looked at the backup file and (holy cow!) I saw that I had an empty Logical Volume called « pvmove0« .

pvmove0 {
 id = "Jp8y0E-RYIU-g4s0-PdUs-LEdo-N110-MLBwmQ"
 status = ["READ", "WRITE", "PVMOVE", "LOCKED"]
 flags = []
 allocation_policy = "contiguous"
 segment_count = 0
}

I searched on the net « pvmove0 » and found that someone had the same problem and remove it by:

  • doing a backup of the metadata (see above)
  • editing the file by removing the pvmove0 section
  • restoring the edited backup with vgcfgrestore.
  • rebooting (and celebrating)

Apparently, having such an empty logical volume breaks things at several levels (among others, the graphical tool system-config-lvm would not start).