Pour avoir dû intégrer ce genre de trucs dans un boulot précédent, il peut y avoir des petites blagues, de type entraînement non uniforme, et document scanné un peu en biais (j'ai retrouvé ce genre de problème sur un feeder d'imprimante multifonction d'ailleurs…).
J'ai déjà utilisé VLC pour capturer un flux RTSP envoyé sur le réseau par une petite caméra. Pour capturer (presque) une heure de vidéo, mon entrée de crontab ressemblait à ceci :
Cela permet de créer une session screen récupérable avec screen -rd supertitre, qui contient trois écrans appelés screen1, screen2, screen3, qui font tourner chacun leur commande. Puis comme d'habitude, C-a C-n/C-a C-p pour passer au suivant/précédent, C-a C-d pour se détacher et le laisser tourner en fond, etc.
Édition : Ajout de select 0 qui permet de ne pas rester sur le dernier écran créé, mais de basculer sur le premier.
Au passage, c'est rigolo de suggérer le remplacement de ? par | au motif (vous l'avez ?) qu'il s'agit d'un caractère spécial dans les expressions rationnelles. ;p
La commande echo ajoute automatiquement un retour à la ligne final (\n) ; il existe des options (non-standard) pour éviter cela, mais printf permet de contrôler finalement comment on affiche les choses.
Quand une bibliothèque casse son ABI (pour Application Binary Interface), le numéro de version principal est augmenté.
Le fait de (re)nommer le paquet en conséquence permet la co-installation de différents SONAMEs, ce qui permet de gérer la transition tranquillement : les paquets utilisant la vieille bibliothèque peuvent être recompilés et mis à jour indépendamment les uns des autres plutôt que tous en même temps.
Chic, c'est effectivement ce qui me semblait le plus probable (même si j'avais évité de me perdre dans des conjectures).
Pour /e/n/i, c'est top, aucune éventuelle configuration. Ça veut dire que NetworkManager peut configurer toutes les interfaces (a contrario, si une interface est configurée via les fichiers de conf, elle n'est pas touchée par NM).
Pour le scan, je pense qu'il faudrait activer l'interface avant de le lancer (au sens « link up »), mais ça n'est pas possible avec le rfkill en place.
Bref, en résumé, cf. la réponse de NeoXL concernant le rfkill → trouve comment activer matériellement le lien physique, NM devrait prendre le relais.
(Au passage, la case à cocher « Activer le wifi » dans l'applet NM semble justement jouer sur l'aspect « soft-blocked » au niveau rfkill.)
Concernant la distinction démarrage dans le système d'installation vs. système installé, j'avoue être un peu surpris. Les composants chargés/disponibles sont effectivement différents dans les deux cas, mais je ne m'attendais pas à voir apparaître un blocage au niveau matériel entre le processus d'installation et le démarrage du système installé…
Si je me souviens bien, le noyau peut essayer de charger plusieurs microcodes. Ce n'est pas parce qu'il y a des erreurs de chargement de versions qui ont été remplacées par d'autres que c'est grave.
Si l'interface est présente mais que le wifi ne peut pas être activé, ça ne serait pas une blague que tu pourrais détecter avec rfkill list ?
Par ailleurs, tu as quoi dans /etc/network/interfaces et /etc/network/interfaces.d/* ?
Et as-tu essayé des commandes à la main, comme iwlist wlp0s20f3 scan ?
Ce n'est pas parce qu'une commande n'est pas dans le $PATH par défaut pour les utilisateurs non privilégiés qu'elles ne sont pas utilisables par ces derniers. Les fonctionnalités peuvent être limitées (par exemple ne pas avoir le droit de modifier des paramètres), mais on peut souvent les utiliser pour consulter des infos, et pour modifier les choses sur lesquelles on a les bons droits (e.g. des disques si on est dans le bon groupe, des images de disque, etc.).
nice permet de céder la priorité niveau CPU à d'autres processus, en précisant qu'on n'est pas pressé. Même chose pour ionice sur les I/O. Quant à tc, aux dernières nouvelles, c'était pour traffic control et la gestion des paquets… → https://en.wikipedia.org/wiki/Tc_(Linux)
Attention à son emploi cependant. Citons la page de manuel memcpy(3) :
SYNOPSIS
#include <string.h>
void *memcpy(void *dest, const void *src, size_t n);
DESCRIPTION
The memcpy() function copies n bytes from memory area src to memory
area dest. The memory areas must not overlap. Use memmove(3) if the
memory areas do overlap.
échange de radios par messagerie sur téléphone portable (donc Google ou Apple, je suppose) parce que le SI de l'école dentaire flambant neuve (de cette grande ville bretonne que je ne nommerai pas) « ne marchait pas » (ou n'était pas aussi pratique/rapide/habituel que les téléphones, je n'ai pas osé demander) ;
même endroit : postes Windows XP avec mot de passe = prénom + année de naissance, communiqué aux collègues devant les patients.
Tu peux m'en dire plus ?
Comment dois je adapter ma configuration ?
Cf. ma réponse précédente : il faut modifier l'URL que tu utilises dans git clone, ou bien modifier ton .git/config dans un clone existant pour que git fetch utilise l'URL modifiée. Il ne faut plus que ça pointe directement vers github.com mais vers gitlab-perso ou gitlab-pro tel que renseigné dans ton ~/.ssh/config
J'avais même suggéré une commande à utiliser directement, en me basant sur ta configuration…
Ça me semble normal : il faut que tu adaptes la configuration lors du git clone ou du git fetch pour utiliser un des paragraphes que tu as ajoutés, sinon c'est la configuration par défaut qui va être utilisée. Dans ton cas, tu peux essayer avec : git clone git@gitlab-perso:gitlabperso/cloud.git
(Tu pourrais également ajouter le nom d'utilisateur dans la configuration ~/.ssh/config, pour éviter d'avoir à le spécifier dans ta ligne de commande et/ou ton .git/config.)
Dans la configuration de chaque dépôt : ssh://gitlab1/… ou ssh://gitlab2/…
Puis dans le fichier ~/.ssh/config :
Host gitlab1
Hostname gitlab.com # le vrai hostname
IdentityFile ~/.ssh/id_rsa-user1 # vérifier qu'un chemin absolu ne soit pas nécessaire
Host gitlab2
Hostname gitlab.com # le vrai hostname
IdentityFile ~/.ssh/id_rsa-user2 # vérifier qu'un chemin absolu ne soit pas nécessaire
Vérifier avec git fetch dans chaque checkout, et hop.
Bien évidemment, on peut imaginer des choses plus pertinentes que gitlab1 et gitlab2 d'un point de vue nommage…
kibi@armor:~$ a=1.0; for b in 0.9 1.0 1.1; do dpkg --compare-versions $a '<<' $b; echo $?; done
1
1
0
kibi@armor:~$ a=1.0; for b in 0.9 1.0 1.1; do dpkg --compare-versions $a '<=' $b; echo $?; done
1
0
0
Extrait de la page de manuel :
--compare-versions ver1 op ver2
Compare version numbers, where op is a binary operator. dpkg
returns true (0) if the specified condition is satisfied, and
false (1) otherwise. There are two groups of operators, which
differ in how they treat an empty ver1 or ver2. These treat an
empty version as earlier than any version: lt le eq ne ge gt.
These treat an empty version as later than any version: lt-nl
le-nl ge-nl gt-nl. These are provided only for compatibility
with control file syntax: < << <= = >= >> >. The < and >
operators are obsolete and should not be used, due to confusing
semantics. To illustrate: 0.1 < 0.1 evaluates to true.
Ce que tu essaies de voir, c'est avec quelle adresse IP tu sors. Celle-ci peut ensuite et optionnellement donner lieu à une recherche inverse, pour remonter un nom de domaine qui pourrait être associé à cette adresse.
Dans le premier cas, tu as une connectivité IPv4, avec potentiellement une adresse IP fixe (cf. zones dégroupées, etc.).
Dans le second cas, tu as une connectivité IPv6 qui est privilégiée par rapport à la connectivité IPv4. D'où le format différent. Par ailleurs, en IPv6, c'est souvent un préfixe qui est fixe (no pun intended), avec les derniers octets qui peuvent varier d'une fois sur l'autre.
losetup te permet d'obtenir un lien entre un périphérique loop et ton image.
kpartx -asv /dev/loopX te permet d'activer chaque partition, ce qui permet de les retrouver en tant que /dev/mapper/loopXpY, avec lesquelles tu peux jouer via mount.
Pour le clean-up : umount, kpartx -dsv /dev/loopX et losetup avec les bonnes options.
Note que tu peux appeler kpartx -asv directement sur ton image. Le /dev/loopX sera mis en place automatiquement, et nettoyé quand tu appelleras kpart -dsv (flag autoclean ou équivalent).
Juste une précision en passant : c'était historiquement des CD mais de nos jours il s'agit d'image ISO que l'on peut déployer sur clé USB. ;)
C'est effectivement le plus simple quand on n'a pas envie de s'embêter à vérifier/valider/fournir spécifiquement un seul micrologiciel/firmware (en admettant qu'un seul suffise, il peut y avoir des blagues avec la partie graphique également).
J'aurais tendance à conseiller l'utilisation de Debian Installer directement plutôt que de passer par un environnement de type « live ».
Enfin, pourquoi désactiver Secure Boot ? Buster le gère désormais. Et quand bien même, sur les machines récentes, booter en UEFI est souvent une meilleure idée que rester en mode Legacy. C'est le chemin de code qui est particulièrement validé côté constructeur et on a (au moins en théorie) moins de problèmes qu'en mode compatibilité BIOS/Legacy/CSM.
La formulation du message d'erreur est plus qu'étrange.
Tu parles de certificat de serveur web alors que ton problème est remonté par Thunderbird, qui est un client mail (IMAP/IMAPS, POP/POPS)… Es-tu sûr que le certificat récupéré via Let's Encrypt est bien (re)déployé vers les services gérant la messagerie, et que ceux-ci n'utilisent pas un certificat expiré (ce qui devrait donner un message d'erreur bien plus explicite).
Si tu veux faciliter la vie des gens qui pourraient vouloir t'aider, mentionner le nom de domaine serait le plus rapide… (openssl s_client -connect … -showcerts est notre ami)
# Attention aux scanners portables
Posté par Cyril Brulebois (site web personnel) . En réponse au message Scanner compatible Linux. Évalué à 4.
Pour avoir dû intégrer ce genre de trucs dans un boulot précédent, il peut y avoir des petites blagues, de type entraînement non uniforme, et document scanné un peu en biais (j'ai retrouvé ce genre de problème sur un feeder d'imprimante multifonction d'ailleurs…).
Debian Consultant @ DEBAMAX
# VLC/RTSP
Posté par Cyril Brulebois (site web personnel) . En réponse au message API pour camera/webcam. Évalué à 2.
J'ai déjà utilisé VLC pour capturer un flux RTSP envoyé sur le réseau par une petite caméra. Pour capturer (presque) une heure de vidéo, mon entrée de
crontab
ressemblait à ceci :Parfait pour garder un œil sur le chat.
Debian Consultant @ DEBAMAX
[^] # Re: Pas de nouvelles, bonnes nouvelles
Posté par Cyril Brulebois (site web personnel) . En réponse au message Screen avec un fichier .sh. Évalué à 7. Dernière modification le 01 décembre 2019 à 18:33.
En complément, vu que la notion de screen détaché n'était peut-être pas tout à fait ce qui était souhaité, une autre possibilité :
Avec dans le fichier
~/.screenrc-masuperconfig
:Cela permet de créer une session screen récupérable avec
screen -rd supertitre
, qui contient trois écrans appelésscreen1
,screen2
,screen3
, qui font tourner chacun leur commande. Puis comme d'habitude,C-a C-n
/C-a C-p
pour passer au suivant/précédent,C-a C-d
pour se détacher et le laisser tourner en fond, etc.Édition : Ajout de
select 0
qui permet de ne pas rester sur le dernier écran créé, mais de basculer sur le premier.Debian Consultant @ DEBAMAX
[^] # Re: UUOC
Posté par Cyril Brulebois (site web personnel) . En réponse au message Script avec commande wc. Évalué à 1.
Au passage, c'est rigolo de suggérer le remplacement de
?
par|
au motif (vous l'avez ?) qu'il s'agit d'un caractère spécial dans les expressions rationnelles.;p
Debian Consultant @ DEBAMAX
# newline
Posté par Cyril Brulebois (site web personnel) . En réponse au message Script avec commande wc. Évalué à 2.
La commande
echo
ajoute automatiquement un retour à la ligne final (\n
) ; il existe des options (non-standard) pour éviter cela, maisprintf
permet de contrôler finalement comment on affiche les choses.En passant,
length
, plutôt quelenght
.Debian Consultant @ DEBAMAX
[^] # Re: ABI
Posté par Cyril Brulebois (site web personnel) . En réponse au journal La question qui m'empêche de dormir. Évalué à 6.
J'ai perçu des questions. Je donne des éléments de réponse pour l'une d'entre elles.
Debian Consultant @ DEBAMAX
# ABI
Posté par Cyril Brulebois (site web personnel) . En réponse au journal La question qui m'empêche de dormir. Évalué à 7. Dernière modification le 21 novembre 2019 à 14:07.
Quand une bibliothèque casse son ABI (pour Application Binary Interface), le numéro de version principal est augmenté.
Le fait de (re)nommer le paquet en conséquence permet la co-installation de différents SONAMEs, ce qui permet de gérer la transition tranquillement : les paquets utilisant la vieille bibliothèque peuvent être recompilés et mis à jour indépendamment les uns des autres plutôt que tous en même temps.
Ici on trouve :
libxcb-util.so.0
dans le paquetlibxcb-util0
libxcb-util.so.1
dans le paquetlibxcb-util1
Debian Consultant @ DEBAMAX
[^] # Re: J'avance à reculons
Posté par Cyril Brulebois (site web personnel) . En réponse au message [Résolu] Détection wifi intel. Évalué à 3.
Oh, wow ! À première vue, c'est un peu dingue de devoir en arriver là…
Un petit tour rapide dans l'historique du noyau Linux me semble donner une explication plutôt rationnelle, dans le commit 5105e78e5b2414ec39efaadca1802e37e7105bb1.
Debian Consultant @ DEBAMAX
[^] # Re: J'avance à reculons
Posté par Cyril Brulebois (site web personnel) . En réponse au message [Résolu] Détection wifi intel. Évalué à 2.
Chic, c'est effectivement ce qui me semblait le plus probable (même si j'avais évité de me perdre dans des conjectures).
Pour
/e/n/i
, c'est top, aucune éventuelle configuration. Ça veut dire que NetworkManager peut configurer toutes les interfaces (a contrario, si une interface est configurée via les fichiers de conf, elle n'est pas touchée par NM).Pour le scan, je pense qu'il faudrait activer l'interface avant de le lancer (au sens « link up »), mais ça n'est pas possible avec le rfkill en place.
Bref, en résumé, cf. la réponse de NeoXL concernant le rfkill → trouve comment activer matériellement le lien physique, NM devrait prendre le relais.
(Au passage, la case à cocher « Activer le wifi » dans l'applet NM semble justement jouer sur l'aspect « soft-blocked » au niveau rfkill.)
Concernant la distinction démarrage dans le système d'installation vs. système installé, j'avoue être un peu surpris. Les composants chargés/disponibles sont effectivement différents dans les deux cas, mais je ne m'attendais pas à voir apparaître un blocage au niveau matériel entre le processus d'installation et le démarrage du système installé…
Debian Consultant @ DEBAMAX
[^] # Re: J'avance à reculons
Posté par Cyril Brulebois (site web personnel) . En réponse au message [Résolu] Détection wifi intel. Évalué à 4.
Si je me souviens bien, le noyau peut essayer de charger plusieurs microcodes. Ce n'est pas parce qu'il y a des erreurs de chargement de versions qui ont été remplacées par d'autres que c'est grave.
Si l'interface est présente mais que le wifi ne peut pas être activé, ça ne serait pas une blague que tu pourrais détecter avec
rfkill list
?Par ailleurs, tu as quoi dans
/etc/network/interfaces
et/etc/network/interfaces.d/*
?Et as-tu essayé des commandes à la main, comme
iwlist wlp0s20f3 scan
?Debian Consultant @ DEBAMAX
[^] # Re: drivers propriétaires ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message [Résolu] Détection wifi intel. Évalué à 3.
Il s'agit de microcodes/firmwares, pas de pilotes/drivers/modules…
Debian Consultant @ DEBAMAX
[^] # Re: e2fsprogs
Posté par Cyril Brulebois (site web personnel) . En réponse au message tune2fs introuvable. Évalué à 6. Dernière modification le 13 novembre 2019 à 18:20.
Le « donc » est un raccourci un peu (trop) rapide…
Quelques exemples :
Ce n'est pas parce qu'une commande n'est pas dans le
$PATH
par défaut pour les utilisateurs non privilégiés qu'elles ne sont pas utilisables par ces derniers. Les fonctionnalités peuvent être limitées (par exemple ne pas avoir le droit de modifier des paramètres), mais on peut souvent les utiliser pour consulter des infos, et pour modifier les choses sur lesquelles on a les bons droits (e.g. des disques si on est dans le bon groupe, des images de disque, etc.).Debian Consultant @ DEBAMAX
[^] # Re: dirname/basename?
Posté par Cyril Brulebois (site web personnel) . En réponse au message fichier de sortie sans l'extension du fichier source. Évalué à 2.
nice
permet de céder la priorité niveau CPU à d'autres processus, en précisant qu'on n'est pas pressé. Même chose pourionice
sur les I/O. Quant àtc
, aux dernières nouvelles, c'était pourtraffic control
et la gestion des paquets… → https://en.wikipedia.org/wiki/Tc_(Linux)Debian Consultant @ DEBAMAX
[^] # Re: Pointeur
Posté par Cyril Brulebois (site web personnel) . En réponse au message Sécurité lors de la déclaration d'un pointeur. Évalué à 2.
Attention à son emploi cependant. Citons la page de manuel
memcpy(3)
:Debian Consultant @ DEBAMAX
[^] # Re: Peut faire pire
Posté par Cyril Brulebois (site web personnel) . En réponse au journal Médecin, secret médical et TeamViewer. Évalué à 4.
Vu également :
Debian Consultant @ DEBAMAX
[^] # Re: Choix de la clé
Posté par Cyril Brulebois (site web personnel) . En réponse au message Authentification ssh avec deux comptes gitlab.com et deux pairs de clés. Évalué à 1.
Cf. ma réponse précédente : il faut modifier l'URL que tu utilises dans
git clone
, ou bien modifier ton.git/config
dans un clone existant pour quegit fetch
utilise l'URL modifiée. Il ne faut plus que ça pointe directement versgithub.com
mais versgitlab-perso
ougitlab-pro
tel que renseigné dans ton~/.ssh/config
J'avais même suggéré une commande à utiliser directement, en me basant sur ta configuration…
Debian Consultant @ DEBAMAX
[^] # Re: Choix de la clé
Posté par Cyril Brulebois (site web personnel) . En réponse au message Authentification ssh avec deux comptes gitlab.com et deux pairs de clés. Évalué à 1.
Hello,
Ça me semble normal : il faut que tu adaptes la configuration lors du
git clone
ou dugit fetch
pour utiliser un des paragraphes que tu as ajoutés, sinon c'est la configuration par défaut qui va être utilisée. Dans ton cas, tu peux essayer avec :git clone git@gitlab-perso:gitlabperso/cloud.git
(Tu pourrais également ajouter le nom d'utilisateur dans la configuration
~/.ssh/config
, pour éviter d'avoir à le spécifier dans ta ligne de commande et/ou ton.git/config
.)Debian Consultant @ DEBAMAX
[^] # Re: Choix de la clé
Posté par Cyril Brulebois (site web personnel) . En réponse au message Authentification ssh avec deux comptes gitlab.com et deux pairs de clés. Évalué à 6.
Dans la configuration de chaque dépôt :
ssh://gitlab1/…
oussh://gitlab2/…
Puis dans le fichier
~/.ssh/config
:Vérifier avec
git fetch
dans chaque checkout, et hop.Bien évidemment, on peut imaginer des choses plus pertinentes que
gitlab1
etgitlab2
d'un point de vue nommage…Debian Consultant @ DEBAMAX
# dpkg --compare-versions
Posté par Cyril Brulebois (site web personnel) . En réponse au message Outil en ligne de commande pour comparer des versions de logiciels. Évalué à 7.
Exemples :
Extrait de la page de manuel :
Debian Consultant @ DEBAMAX
# Pour une fois, ça n'est pas le DNS ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message problème de DNS. Évalué à 2.
Ce que tu essaies de voir, c'est avec quelle adresse IP tu sors. Celle-ci peut ensuite et optionnellement donner lieu à une recherche inverse, pour remonter un nom de domaine qui pourrait être associé à cette adresse.
Dans le premier cas, tu as une connectivité IPv4, avec potentiellement une adresse IP fixe (cf. zones dégroupées, etc.).
Dans le second cas, tu as une connectivité IPv6 qui est privilégiée par rapport à la connectivité IPv4. D'où le format différent. Par ailleurs, en IPv6, c'est souvent un préfixe qui est fixe (no pun intended), avec les derniers octets qui peuvent varier d'une fois sur l'autre.
Debian Consultant @ DEBAMAX
[^] # Re: kpartx est ton ami
Posté par Cyril Brulebois (site web personnel) . En réponse au message problème pour monter une image dans un dossier temporaire. Évalué à 3.
Je pense surtout que c'est le contenu de ton
toto.img
qui s'y prête…Debian Consultant @ DEBAMAX
# kpartx est ton ami
Posté par Cyril Brulebois (site web personnel) . En réponse au message problème pour monter une image dans un dossier temporaire. Évalué à 1.
losetup
te permet d'obtenir un lien entre un périphériqueloop
et ton image.kpartx -asv /dev/loopX
te permet d'activer chaque partition, ce qui permet de les retrouver en tant que/dev/mapper/loopXpY
, avec lesquelles tu peux jouer viamount
.Pour le clean-up :
umount
,kpartx -dsv /dev/loopX
etlosetup
avec les bonnes options.Note que tu peux appeler
kpartx -asv
directement sur ton image. Le/dev/loopX
sera mis en place automatiquement, et nettoyé quand tu appelleraskpart -dsv
(flag autoclean ou équivalent).Debian Consultant @ DEBAMAX
[^] # Re: firmware-10.1.0-amd64-netinst.iso
Posté par Cyril Brulebois (site web personnel) . En réponse au message Lenovo Ideapad 120s et Debian. Évalué à 4.
Juste une précision en passant : c'était historiquement des CD mais de nos jours il s'agit d'image ISO que l'on peut déployer sur clé USB.
;)
C'est effectivement le plus simple quand on n'a pas envie de s'embêter à vérifier/valider/fournir spécifiquement un seul micrologiciel/firmware (en admettant qu'un seul suffise, il peut y avoir des blagues avec la partie graphique également).
J'aurais tendance à conseiller l'utilisation de Debian Installer directement plutôt que de passer par un environnement de type « live ».
Enfin, pourquoi désactiver Secure Boot ? Buster le gère désormais. Et quand bien même, sur les machines récentes, booter en UEFI est souvent une meilleure idée que rester en mode Legacy. C'est le chemin de code qui est particulièrement validé côté constructeur et on a (au moins en théorie) moins de problèmes qu'en mode compatibilité BIOS/Legacy/CSM.
Debian Consultant @ DEBAMAX
# Verbosité++
Posté par Cyril Brulebois (site web personnel) . En réponse au message Serveur web, problème de certificat. Évalué à 3.
La formulation du message d'erreur est plus qu'étrange.
Tu parles de certificat de serveur web alors que ton problème est remonté par Thunderbird, qui est un client mail (IMAP/IMAPS, POP/POPS)… Es-tu sûr que le certificat récupéré via Let's Encrypt est bien (re)déployé vers les services gérant la messagerie, et que ceux-ci n'utilisent pas un certificat expiré (ce qui devrait donner un message d'erreur bien plus explicite).
Si tu veux faciliter la vie des gens qui pourraient vouloir t'aider, mentionner le nom de domaine serait le plus rapide… (
openssl s_client -connect … -showcerts
est notre ami)Debian Consultant @ DEBAMAX
[^] # Re: re : problème supplémentaire
Posté par Cyril Brulebois (site web personnel) . En réponse au message problème find et espaces dans les noms de fichiers. Évalué à 1.
Note, le commentaire est en doublon de celui-ci, posté quelques minutes avant, qui apporte déjà des réponses…
→ https://linuxfr.org/nodes/118246/comments/1785596
Debian Consultant @ DEBAMAX