C'est donc une mauvaise solution, puisque cela met en place une boucle qui ne fait qu'un seul tour de boucle avec comme seul objet la concaténation de l'ensemble de la sortie de find, non ?
Plutôt que suggérer resize2fs (qui peut être contre-intuitif quand on a ext4 comme FS) : il existe fsadm resize qui est générique et va faire ce qu'il faut quel que soit le système de fichiers.
La boucle n'est pas bonne, il suffit d'ajouter un peu de texte autour de $f pour s'en convaincre :
for f in "$(find * -maxdepth 0 -type f)";doecho"1 seul résultat >>>$f<<<";echo"fin de ligne";done
Normal : le résultat de find est encadré par des guillemets, for opère sur un seul mot, donc un seul tour de boucle.
Au passage, je ne comprends pas à quoi sert find * plutôt que find. Cela va même provoquer une erreur quand un répertoire est vide, puisque * ne sera pas remplacé, donc find va essayer de travailler sur (littéralement) *…
Au passage, apt est censé aider l'utilisateur à ne pas scier la branche sur laquelle il est assis :
kbi@armor:~$ sudo apt-get remove apt
[…]
The following packages will be REMOVED:
apt apt-file apt-listchanges apt-utils apticron autopkgtest d-shlibs debian-el debian-ports-archive-keyring
dgit dpkg-dev-el libguestfs-hfsplus libguestfs-perl libguestfs-reiserfs libguestfs-tools libguestfs-xfs
libguestfs0 libsbuild-perl python-guestfs python3-guestfs python3-reportbug reportbug ruby-guestfs sbuild
supermin task-british-desktop task-desktop task-english task-laptop task-print-server task-ssh-server tasksel
tasksel-data unattended-upgrades
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
apt
0 upgraded, 0 newly installed, 34 to remove and 10 not upgraded.
After this operation, 54.2 MB disk space will be freed.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
?]
en VO ou bien ceci en VF :
kibi@armor:~$ sudo LANG=fr_FR.UTF-8 apt-get remove apt
[…]
Les paquets suivants seront ENLEVÉS :
apt apt-file apt-listchanges apt-utils apticron autopkgtest d-shlibs debian-el debian-ports-archive-keyring
dgit dpkg-dev-el libguestfs-hfsplus libguestfs-perl libguestfs-reiserfs libguestfs-tools libguestfs-xfs
libguestfs0 libsbuild-perl python-guestfs python3-guestfs python3-reportbug reportbug ruby-guestfs sbuild
supermin task-british-desktop task-desktop task-english task-laptop task-print-server task-ssh-server tasksel
tasksel-data unattended-upgrades
ATTENTION : Les paquets essentiels suivants vont être enlevés.
Vous NE devez PAS faire ceci, à moins de savoir exactement ce
que vous êtes en train de faire.
apt
0 mis à jour, 0 nouvellement installés, 34 à enlever et 10 non mis à jour.
Après cette opération, 54,2 Mo d'espace disque seront libérés.
Vous êtes sur le point de faire quelque chose de potentiellement dangereux
Pour continuer, tapez la phrase « Oui, faites ce que je vous dis ! »
?]
Tout à fait d'accord. Le classique, stable, et éprouvé ici, c'est LVM. Pas BTRFS. Et c'est empilable sur/sous les autres couches, qu'il s'agisse de RAID ou LUKS.
Je te confirme que la saisie de la passphrase à distance via la console IPMI est une solution possible. Attention cependant aux jeux de caractères et aux caractères spéciaux, il s'agit souvent de consoles Java qui sont peu pratiques. → C'est souvent une bonne idée de vérifier dès le départ qu'on peut taper tous les caractères à travers celle-ci. ;)
Il semblerait qu'exiftool puisse faire le boulot, en cherchant Title dans la sortie, mais seulement si on a mis un titre explicitement dans les métadonnées du document… (Je n'arrivais pas à vérifier le bon fonctionnement localement parce que je ne prends jamais la peine de le faire.)
Les fichiers opendocument (au sens large) semblent gérés via src/file_zip.c, qui ne semble que positionner la bonne extension en fonction du type MIME (d'après une lecture rapide du fichier) → https://sources.debian.org/src/testdisk/7.1-5/src/file_zip.c/
Je suppose que le plus efficace serait de reprendre les fichiers *.odt, *.ods, etc. sauvés par photorec et les analyser après coup pour essayer de retrouver les métadonnées à l'intérieur et les exploiter pour faire un renommage ?
Si les paquets s'appellent libcurl3 et libcurl4, c'est justement pour qu'il soit possible pour certains paquets de dépendre d'une version, et pour d'autres, de l'autre… Mais visiblement, la transition compliquée du côté d'OpenSSL (1.0 vs. 1.1) a été accompagnée de joyeusetés, ce qui explique ton problème pour ce cas particulier de bibliothèques (dans le cas général, on ne colle pas de Conflicts, Replaces, ou Breaks entre les différentes « versions »)… :/
Ça ne répond pas directement à ta question, mais je crois que je commencerais par essayer de maximiser mes chances d'obtenir d'éventuelles traces lors de l'extinction. Si c'est quelque chose qui déclenche un OOPS noyau puis le redémarrage, ça a peu de chance d'arriver sur le disque, mais il peut y avoir une possibilité de l'attraper en utilisant netconsole. En fonction de si le noyau récupère un événement lié à une éventuelle perte d'énergie, avant que tout s'éteigne, ça pourrait également laisser une trace dans les logs…
Dur à dire sans voir l'erreur d'ao_play, ou sans lui coller un coup de strace avec les paramètres qui vont bien, mais je soupçonne une connexion à pulseaudio qui fonctionne quand tu es en local, mais pas quand tu es en distant ? J'ai eu des blagues un peu différentes mais qui pourraient avoir un lien… (<full-disclosure>en essayant de faire tourner un Firefox dans un chroot pour avoir une version plus récente, Firefox depuis lequel je voulais récupérer la sortie son pour suivre les matches de basket</full-disclosure>).
En regardant rapidement mon alias pour démarrer ce Firefox chrooté, et si je me souviens bien, j'ai activé le mode TCP de pulseaudio :
La taille d'un tableau statique doit être connue à la compilation, donc ça ne peut pas dépendre d'un paramètre qui pourrait varier d'un appel à l'autre.
C'est plutôt malloc (ou autre technique assimilée) que l'on utilisera pour gérer un tableau de taille variable.
Depuis ce week-end il est possible d'utiliser un Raspberry Pi CM3 (et même CM3+) avec Debian Buster sans avoir à craindre de problème de DTB manquante. Rigolo, le timing du sondage, j'ai publié quelques détails sur la démarche, en anglais et en début de semaine : Adding Raspberry Pi CM3 support to Debian Buster.
Dans le cas LVM chiffré, la partition /boot est à part, et n'est pas chiffrée (ça n'est pas spécifique à Buster, c'est une limitation historique qu'on pourrait imaginer lever dans Debian Installer…).
C'est documenté dans les notes de publication de Buster, LUKS2 est effectivement le format par défaut à partir de Buster, et ça n'était pas connu dans Stretch, d'où ton problème. Comme tu l'as noté, c'est bien --type luks1 qui va te permettre de (re)basculer sur le format historique. Tu aurais pu également imaginer installer un backport de cryptsetup dans Stretch, mais il n'y en a pas de disponible pour ce paquet…
J'y vois aussi l'occasion de contribuer des patches, même si j'ai dû prioriser les clients et les préparatifs pour la première point release de Buster. ;)
(Ma « fonctionnalité préférée » pour les raccourcis restera probablement le fait de ne pas pouvoir désaffecter F1, d'où l'aide qui surgit une fois sur deux quand je tente un F2 pour changer une formule…)
Il dit qu'il ne voit pas le rapport avec le pavé numérique : sur une disposition azerty standard, taper Ctrl+Shift+&/1 ça donne Ctrl+1 ; Ctrl+shift+é/2 donne Ctrl+2, etc.
Au hasard, les variables disparaissent dès qu'on sort du bloc ${execp …} ? Du coup ton test « fonctionne » parce que tu compares deux chaînes vides, mais il n'y a rien à afficher ?
[^] # Re: Plusieurs solutions
Posté par Cyril Brulebois (site web personnel) . En réponse au message problème find et espaces dans les noms de fichiers. Évalué à 1. Dernière modification le 07 octobre 2019 à 18:46.
C'est donc une mauvaise solution, puisque cela met en place une boucle qui ne fait qu'un seul tour de boucle avec comme seul objet la concaténation de l'ensemble de la sortie de
find
, non ?Debian Consultant @ DEBAMAX
[^] # Re: Y'a plus qu'à redimensionner au niveau de l'OS
Posté par Cyril Brulebois (site web personnel) . En réponse au message Redimensionnement partition LVM sur VPS. Évalué à 1.
Plutôt que suggérer
resize2fs
(qui peut être contre-intuitif quand on aext4
comme FS) : il existefsadm resize
qui est générique et va faire ce qu'il faut quel que soit le système de fichiers.Debian Consultant @ DEBAMAX
[^] # Re: Plusieurs solutions
Posté par Cyril Brulebois (site web personnel) . En réponse au message problème find et espaces dans les noms de fichiers. Évalué à 1.
La boucle n'est pas bonne, il suffit d'ajouter un peu de texte autour de
$f
pour s'en convaincre :Normal : le résultat de
find
est encadré par des guillemets,for
opère sur un seul mot, donc un seul tour de boucle.Au passage, je ne comprends pas à quoi sert
find *
plutôt quefind
. Cela va même provoquer une erreur quand un répertoire est vide, puisque*
ne sera pas remplacé, doncfind
va essayer de travailler sur (littéralement)*
…Debian Consultant @ DEBAMAX
[^] # Re: sans Time Machine
Posté par Cyril Brulebois (site web personnel) . En réponse au message Comment réinstaller des packets maladroitement retiré.... Évalué à 2.
Au passage,
apt
est censé aider l'utilisateur à ne pas scier la branche sur laquelle il est assis :en VO ou bien ceci en VF :
Debian Consultant @ DEBAMAX
[^] # Re: luks
Posté par Cyril Brulebois (site web personnel) . En réponse au message Chiffrer ses données. Évalué à 2.
C'est effectivement supporté (avec partitionnement assisté) dans Debian Installer, depuis de très nombreuses versions…
Debian Consultant @ DEBAMAX
[^] # Re: luks
Posté par Cyril Brulebois (site web personnel) . En réponse au message Chiffrer ses données. Évalué à 3.
Tout à fait d'accord. Le classique, stable, et éprouvé ici, c'est LVM. Pas BTRFS. Et c'est empilable sur/sous les autres couches, qu'il s'agisse de RAID ou LUKS.
Debian Consultant @ DEBAMAX
[^] # Re: je profite...
Posté par Cyril Brulebois (site web personnel) . En réponse au message Chiffrer ses données. Évalué à 4.
Je te confirme que la saisie de la passphrase à distance via la console IPMI est une solution possible. Attention cependant aux jeux de caractères et aux caractères spéciaux, il s'agit souvent de consoles Java qui sont peu pratiques. → C'est souvent une bonne idée de vérifier dès le départ qu'on peut taper tous les caractères à travers celle-ci.
;)
Debian Consultant @ DEBAMAX
[^] # Re: Let's check the source code
Posté par Cyril Brulebois (site web personnel) . En réponse au message photorec et ensuite ? (fichiers libreoffice et pdf surtout). Évalué à 3.
Il semblerait qu'
exiftool
puisse faire le boulot, en cherchantTitle
dans la sortie, mais seulement si on a mis un titre explicitement dans les métadonnées du document… (Je n'arrivais pas à vérifier le bon fonctionnement localement parce que je ne prends jamais la peine de le faire.)Debian Consultant @ DEBAMAX
# Let's check the source code
Posté par Cyril Brulebois (site web personnel) . En réponse au message photorec et ensuite ? (fichiers libreoffice et pdf surtout). Évalué à 5.
Tu as tout à fait raison pour la récupération automatique du titre pour les PDF, cf.
file_rename_pdf()
dans le fichiersrc/file_pdf.c
des sources detestdisk
→ https://sources.debian.org/src/testdisk/7.1-5/src/file_pdf.c/#L65Les fichiers
opendocument
(au sens large) semblent gérés viasrc/file_zip.c
, qui ne semble que positionner la bonne extension en fonction du type MIME (d'après une lecture rapide du fichier) → https://sources.debian.org/src/testdisk/7.1-5/src/file_zip.c/Je suppose que le plus efficace serait de reprendre les fichiers
*.odt
,*.ods
, etc. sauvés parphotorec
et les analyser après coup pour essayer de retrouver les métadonnées à l'intérieur et les exploiter pour faire un renommage ?Debian Consultant @ DEBAMAX
[^] # Re: Demander au logiciel métier d'aller voir ailleurs ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message Faire cohabiter deux versions de librairie (libcurl) [Résolu]. Évalué à 2.
C'est mégachelou… (mais c'est exact).
Si les paquets s'appellent
libcurl3
etlibcurl4
, c'est justement pour qu'il soit possible pour certains paquets de dépendre d'une version, et pour d'autres, de l'autre… Mais visiblement, la transition compliquée du côté d'OpenSSL (1.0 vs. 1.1) a été accompagnée de joyeusetés, ce qui explique ton problème pour ce cas particulier de bibliothèques (dans le cas général, on ne colle pas deConflicts
,Replaces
, ouBreaks
entre les différentes « versions »)… :/Debian Consultant @ DEBAMAX
# Netconsole ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message Reboot sauvage. Évalué à 5.
Ça ne répond pas directement à ta question, mais je crois que je commencerais par essayer de maximiser mes chances d'obtenir d'éventuelles traces lors de l'extinction. Si c'est quelque chose qui déclenche un
OOPS
noyau puis le redémarrage, ça a peu de chance d'arriver sur le disque, mais il peut y avoir une possibilité de l'attraper en utilisant netconsole. En fonction de si le noyau récupère un événement lié à une éventuelle perte d'énergie, avant que tout s'éteigne, ça pourrait également laisser une trace dans les logs…Debian Consultant @ DEBAMAX
# Accès pulseaudio ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message son, libao, ssh, énigme. Évalué à 2.
Dur à dire sans voir l'erreur d'
ao_play
, ou sans lui coller un coup destrace
avec les paramètres qui vont bien, mais je soupçonne une connexion àpulseaudio
qui fonctionne quand tu es en local, mais pas quand tu es en distant ? J'ai eu des blagues un peu différentes mais qui pourraient avoir un lien… (<full-disclosure>
en essayant de faire tourner un Firefox dans un chroot pour avoir une version plus récente, Firefox depuis lequel je voulais récupérer la sortie son pour suivre les matches de basket</full-disclosure>
).En regardant rapidement mon alias pour démarrer ce Firefox chrooté, et si je me souviens bien, j'ai activé le mode TCP de
pulseaudio
:et je positionne une variable d'environnement pour éviter que Firefox essaie d'utiliser la socket UNIX :
PULSE_SERVER=127.0.0.1
.En fonction des erreurs/blocages de ton côté, ça peut n'avoir aucun rapport ou bien être une piste. Je te laisse nous tenir au courant…
;)
Debian Consultant @ DEBAMAX
[^] # Re: À cause des accès aligné par les instructions en asm
Posté par Cyril Brulebois (site web personnel) . En réponse au message probleme de compréhension sur l'alignement.. Évalué à 2.
Voir aussi la configurabilité du comportement noyau en cas d'accès non aligné, sur certaines plateformes (ARM) → https://www.kernel.org/doc/html/latest/arm/mem_alignment.html
Debian Consultant @ DEBAMAX
# Tableau statique
Posté par Cyril Brulebois (site web personnel) . En réponse au message langage C : pourquoi on ne peut pas allouer la taille d'un tableau pendant l'exécution du programme?. Évalué à 2.
La taille d'un tableau statique doit être connue à la compilation, donc ça ne peut pas dépendre d'un paramètre qui pourrait varier d'un appel à l'autre.
C'est plutôt
malloc
(ou autre technique assimilée) que l'on utilisera pour gérer un tableau de taille variable.Debian Consultant @ DEBAMAX
# [x] Je voulais backporter/vérifier un patch pour étendre la gestion matérielle dans Debian Buster
Posté par Cyril Brulebois (site web personnel) . En réponse au sondage La dernière fois que j’ai compilé un noyau Linux, c’était parce que…. Évalué à 7.
Depuis ce week-end il est possible d'utiliser un Raspberry Pi CM3 (et même CM3+) avec Debian Buster sans avoir à craindre de problème de DTB manquante. Rigolo, le timing du sondage, j'ai publié quelques détails sur la démarche, en anglais et en début de semaine : Adding Raspberry Pi CM3 support to Debian Buster.
Debian Consultant @ DEBAMAX
[^] # Re: LUKS2 par défaut dans buster
Posté par Cyril Brulebois (site web personnel) . En réponse au message Version de LUKS non-supportée.. Évalué à 1.
Dans le cas LVM chiffré, la partition
/boot
est à part, et n'est pas chiffrée (ça n'est pas spécifique à Buster, c'est une limitation historique qu'on pourrait imaginer lever dans Debian Installer…).J'ai donné quelques détails dans une présentation à la Mini-DebConf Hamburg 2019.
Debian Consultant @ DEBAMAX
# LUKS2 par défaut dans buster
Posté par Cyril Brulebois (site web personnel) . En réponse au message Version de LUKS non-supportée.. Évalué à 1.
C'est documenté dans les notes de publication de Buster, LUKS2 est effectivement le format par défaut à partir de Buster, et ça n'était pas connu dans Stretch, d'où ton problème. Comme tu l'as noté, c'est bien
--type luks1
qui va te permettre de (re)basculer sur le format historique. Tu aurais pu également imaginer installer un backport decryptsetup
dans Stretch, mais il n'y en a pas de disponible pour ce paquet…Debian Consultant @ DEBAMAX
[^] # Re: iptables est remplacé par nftables
Posté par Cyril Brulebois (site web personnel) . En réponse à la dépêche Debian 10 Buster : une distribution qui a du chien. Évalué à 1.
J'y vois aussi l'occasion de contribuer des patches, même si j'ai dû prioriser les clients et les préparatifs pour la première point release de Buster.
;)
Debian Consultant @ DEBAMAX
[^] # Re: Autonomie
Posté par Cyril Brulebois (site web personnel) . En réponse au message Ordi portable pour les cours en fac ?. Évalué à 1. Dernière modification le 27 août 2019 à 17:58.
Oh, bravo.
(Ma « fonctionnalité préférée » pour les raccourcis restera probablement le fait de ne pas pouvoir désaffecter
F1
, d'où l'aide qui surgit une fois sur deux quand je tente unF2
pour changer une formule…)Debian Consultant @ DEBAMAX
[^] # Re: Autonomie
Posté par Cyril Brulebois (site web personnel) . En réponse au message Ordi portable pour les cours en fac ?. Évalué à 1.
Il dit qu'il ne voit pas le rapport avec le pavé numérique : sur une disposition azerty standard, taper
Ctrl
+Shift
+&/1
ça donneCtrl+1
;Ctrl
+shift
+é/2
donneCtrl+2
, etc.Debian Consultant @ DEBAMAX
[^] # Re: Autonomie
Posté par Cyril Brulebois (site web personnel) . En réponse au message Ordi portable pour les cours en fac ?. Évalué à 2.
Tiens, ça ressemble assez à ce que j'utilise : zim.
Debian Consultant @ DEBAMAX
[^] # Re: timeout openssl
Posté par Cyril Brulebois (site web personnel) . En réponse au message Conky et condition (if). Évalué à 2.
Parce que
DURATION
n'est pas facultatif quand tu appellestimeout
:Si tu enlèves les redirections, tu verras l'erreur :
… ce qui explique que la commande de l'autre côté du pipe se plaigne. Au passage, tu pourrais t'épargner
-in /dev/stdin
.Debian Consultant @ DEBAMAX
[^] # Re: timeout openssl
Posté par Cyril Brulebois (site web personnel) . En réponse au message Conky et condition (if). Évalué à 3.
Cf. les options
-s
et-k
? Le signal par défaut peut avoir été ignoré, du coup c'est comme sitimeout
n'avait rien fait ?Debian Consultant @ DEBAMAX
[^] # Re: bash vs. sh ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message Conky et condition (if). Évalué à 3.
Au hasard, les variables disparaissent dès qu'on sort du bloc
${execp …}
? Du coup ton test « fonctionne » parce que tu compares deux chaînes vides, mais il n'y a rien à afficher ?Debian Consultant @ DEBAMAX
[^] # Re: bash vs. sh ?
Posté par Cyril Brulebois (site web personnel) . En réponse au message Conky et condition (if). Évalué à 2.
Si tu veux imbriquer des guillemets, il faut protéger ceux qui sont à l'intérieur. Ou plus simplement, utiliser des apostrophes autour…
Debian Consultant @ DEBAMAX