Comment lire le fichier journal systemd sur un système qui n'a pas systemd?

18

J'essaie de dépanner un système (Arch Linux) sur lequel systemd était installé.

Le volume a été monté sur un système Ubuntu (14.04) sur lequel aucun systemd n'est installé.

Comment puis-je dépanner ledit journal systemd sans basculer la boîte hôte sur systemd?

apt-get install journalctl ne marche pas.

jottr
la source
Utilisez une version de Linux qui exécute systemd comme Arch, Fedora ou Ubuntu 15.04
Panther
Vous n'avez pas besoin de passer à systemd, juste le binaire journalctl est nécessaire ... qui malheureusement n'est pas disponible pour 14.04 (tous les PPA semblent être disparus). Même 14.10 ferait l'affaire.
muru
@ bodhi.zaen Ce serait la solution évidente, mais ce n'est pas possible actuellement.
jottr
2
Une machine virtuelle ou un conteneur LXC peut être plus simple et plus sûr.
muru
2
Non. La mise à niveau vers 15.04 n'aidera pas: le journalctl d'ubuntu n'est pas compatible avec le fichier journal d'archlinux. Archlinux utilise la compression lz4 tandis que ubuntu utilise la compression xz . Donc, on ne peut pas lire le fichier journal d'un système avec journalctl de l'autre système. un simple chroot devrait suffire, non?
solsTiCe

Réponses:

5

chroot dans le système Arch Linux:

cd /location/of/arch/root
chroot /location/of/arch/root /bin/bash

journalctl recherche les fichiers journaux dans /var/log/journal/machine-id/. Si vous démarrez avec un OS de secours qui a un ID d'ordinateur différent ou une racine différente, il n'y trouvera donc aucune donnée.

Par conséquent,

a) utiliser journalctl --directory=/var/log/journal/<machine-id>

b) ou journalctl -m

Le swicth "-m" fusionne les journaux de tous les répertoires dans /var/log/journal/*, ce qui rend inutile la détermination de l'ID d'ordinateur de l'hôte.

La source

daltonfury42
la source
J'ai testé cela avec Ubuntu 16.04 / Arch Linux, mais je n'ai pas pu mettre la main sur un 14.04.
daltonfury42
-2

le programme de récupération de partition en ligne de commande appelé TestDisk devrait permettre une certaine manipulation du volume systemd (Arch Linux)


ce n'est pas une solution complète ou "bonne". mais TestDisk peut

  1. Reconstruire une table de partition, récupérer la partition supprimée
  2. Localisez le SuperBlock de sauvegarde ext2 / ext3 / ext4
  3. Copiez les fichiers d'une partition ext2 / ext3 / ext4 supprimée.
  4. gérer un volume non partitionné
  5. Réécrire l'enregistrement de démarrage principal (MBR)

Essaie.

$ sudo apt-get install testdisk

commencez

$ sudo testdisk

appuyez Enter pour créer un nouveau journal et sélectionnez le disque avec le volume que vous souhaitez manipuler

sélectionnez le type de table de partition.
le vôtre est Intel

d'ici vous pouvez

  • afficher les fichiers
  • Copier des fichiers

J'espère que cela aide

John
la source
1
Plus d'informations sur la façon d'utiliser TestDisk seraient utiles au cas où le lien se briserait à l'avenir.
George Udosen
@George est-ce ce que tu voulais?
John
C'est un bon début, mais regardez au bas du lien, vous verrez une section appelée documentation , vous trouverez un lien étape par étape , essayez, mais notez qu'un vote négatif a été fait sur votre réponse, alors réfléchissez à nouveau à la question avant de mettre à jour votre Publier.
George Udosen