Accueil
» Comment faire
»
Lorsque SLES Btrfs passe en mode lecture seule : diagnostiquer avant de remonter
Lorsque SLES Btrfs passe en mode lecture seule : diagnostiquer avant de remonter
Si un système de fichiers Btrfs sous SUSE Linux Enterprise signale « Système de fichiers en lecture seule », commencez par vérifier s'il a été monté en lecture seule intentionnellement ou s'il est passé en mode lecture seule suite à une erreur. Avant de tenter un remontage, vérifiez les options de montage, l'espace libre et les journaux du noyau. Utilisez Snapper pour créer un instantané système amorçable et vérifié. Si Btrfs a enregistré des erreurs d'E/S ou de métadonnées, protégez les données et diagnostiquez le chemin d'accès au stockage avant d'écrire à nouveau sur le système de fichiers.
Cet exemple vérifie les options de montage et identifie le périphérique Btrfs qui prend en charge /data.
1. Indiquer une erreur de système de fichiers lors d'un montage intentionnel en lecture seule
Remplacez /datapar le point de montage concerné, ou /par la racine.
findmnt -T /data -o SOURCE,FSTYPE,OPTIONS
sudo btrfs filesystem show /data
Dans la première commande, recherchez ` --read-only` roou rw`--read-only` dans les options. Un snapshot Snapper en lecture seule est censé refuser les écritures. Un montage configuré avec ` --read- roonly` /etc/fstabpeut également être intentionnel. Btrfs peut aussi passer en lecture seule suite à des erreurs graves de transaction, de métadonnées ou de périphérique. Dans ce cas, exécuter la commande à plusieurs reprises mount -o remount,rwne résout pas le problème et peut échouer immédiatement.
Si le système de fichiers a été délibérément monté en lecture seule, que son périphérique est sain et que le journal du noyau ne contient aucune erreur Btrfs ou d'E/S, un montage de données normal peut être remonté en lecture-écriture :
sudo mount -o remount,rw /data
findmnt -T /data -o TARGET,OPTIONS
N’utilisez pas cette commande pour récupérer un instantané en lecture seule démarré ou un système de fichiers en lecture seule suite à une erreur. Un remontage réussi confirme la possibilité d’écriture, mais pas l’intégrité du système de fichiers.
2. Vérifier si la pression spatiale est le véritable problème
Comparez l'espace libre du système de fichiers avec les détails d'allocation Btrfs ; les valeurs d'exemple sont données à titre indicatif.
Btrfs peut manquer d'espace allouable même si une vue disque basique semble indiquer le contraire, car l'allocation des données et des métadonnées est suivie séparément. Vérifiez à la fois l'espace libre et l'utilisation de Btrfs :
df -hT /data
sudo btrfs filesystem usage -T /data
Si le système signale des problèmes No space left on deviceet que le journal du noyau n'indique aucune défaillance de périphérique ni erreur structurelle, examinez l'utilisation de Snapper avant de supprimer quoi que ce soit :
sudo snapper list
Supprimez uniquement les instantanés dont la perte est autorisée par votre politique de rétention, en utilisant sudo snapper delete SNAPSHOT_IDun ID pour chaque élément sélectionné. Conservez un instantané fonctionnel antérieur à la mise à jour si vous avez besoin d'une option de restauration ; la suppression des instantanés récupère de l'espace, mais supprime les points de restauration. Le nettoyage peut ne pas libérer d'espace immédiatement, et les instantanés ne corrigent pas les erreurs d'E/S. N'exécutez pas de commande d'équilibrage pour forcer l'écriture d'un système de fichiers en lecture seule ; cette opération déplace des données et est conçue pour résoudre un problème d'allocation diagnostiqué sur un système de fichiers sain et accessible en écriture.
3. Consultez le journal du noyau avant de choisir une réparation.
Les messages du noyau permettent de distinguer les problèmes de saturation de l'espace disque des erreurs de lecture, de somme de contrôle ou de périphérique ; les lignes affichées en sont des exemples.
Recherchez la première erreur Btrfs, de périphérique de bloc, de contrôleur ou de transport, et non pas seulement le message final indiquant que le système de fichiers est devenu en lecture seule :
Les messages d'erreur concernant les échecs de lecture, les incohérences de somme de contrôle, les périphériques manquants ou les erreurs d'E/S indiquent une autre piste qu'une simple rooption de montage. Vérifiez l'état du disque, du contrôleur, du RAID/HBA, du SAN ou de la couche de disque virtuel, ainsi que les informations fournies par le fournisseur. Commencez par corriger les problèmes matériels ou de connectivité. Si vos données sont importantes, limitez les écritures et demandez à un administrateur de créer une sauvegarde ou une image système au niveau bloc avant de tenter une réparation du système de fichiers.
4. Choisissez la récupération la moins risquée qui corresponde aux éléments de preuve.
Ce que vous avez trouvé
Action suivante
Compromis
roest configuré ou le montage a été intentionnellement mis en lecture seule ; aucune erreur de noyau pertinente
Corrigez la configuration de montage si elle est incorrecte, ou remontez un sous-volume accessible en écriture normal après avoir vérifié que le périphérique est en bon état.
Rapide, mais le remontage ne peut pas effacer un état de lecture seule forcé par une erreur ni rendre un instantané en lecture seule accessible en écriture.
Un instantané racine amorçable fonctionne et le problème est survenu suite à une modification du système.
Démarrez et testez l'instantané, puis exécutez sudo snapper rollbacket redémarrez sur l'entrée par défaut.
Restaure le sous-volume racine à son état de snapshot. Les données des sous-volumes exclus ou séparés ne sont pas restaurées. SLES 15 SP7 prend en charge cette restauration uniquement avec sa configuration racine/sous-volume par défaut et un système de fichiers racine sur un seul périphérique.
Le journal du noyau contient des erreurs d'E/S de stockage ou des erreurs structurelles Btrfs
Stabilisez le stockage et préservez les données ; utilisez un environnement de secours et escaladez le processus pour une récupération spécifique au système de fichiers.
Plus lent, mais évite de masquer un problème matériel non résolu grâce à un remontage accessible en écriture.
Seul un manque d'espace est signalé ; aucune erreur de stockage n'est constatée.
Examinez la durée de conservation de Snapper et les instantanés ou données autorisés gratuitement, puis revérifiez l'utilisation de Btrfs.
Libère de la capacité au prix de la perte de points de récupération ou de fichiers sélectionnés.
Choisissez un instantané antérieur à la panne, vérifiez le démarrage de test en lecture seule, puis effectuez la restauration Snapper si cela résout le problème.
Sous SLES, les snapshots amorçables utilisent la configuration racine Snapper par défaut. La racine doit être un système de fichiers Btrfs sur un périphérique, le chargeur d'amorçage doit le prendre en charge et seul le sous-volume racine est restauré. Vérifiez la configuration avant de la valider ; si elle ne convient pas, redémarrez sur le système actuel ou l'environnement de récupération. Consultez la procédure de restauration Snapper pour SLES 15 SP7 .
Lorsque des vérifications hors ligne ou un nettoyage sont appropriés
Si le système de fichiers ne se monte pas ou si les messages du noyau suggèrent des dommages structurels, démarrez le système de secours SLES ou un autre environnement de récupération approprié, identifiez le périphérique correct et assurez-vous qu'il est démonté avant d'exécuter la vérification par défaut en lecture seule :
sudo btrfs check /dev/DEVICE
Utilisez le périphérique de stockage Btrfs réel, et non un point de montage temporaire. La vérification peut prendre du temps et consommer de la mémoire ; elle signale des anomalies structurelles, mais ne garantit pas la réparation. Ne l'utilisez pas --repairsystématiquement. La documentation Btrfs indique que la réparation peut aggraver le problème et qu'elle ne doit être effectuée qu'avec l'aide d'un expert et après avoir accepté les risques liés aux données. Consultez le support SUSE ou un spécialiste Btrfs si la vérification signale des erreurs ou si le périphérique présente des problèmes d'E/S.
Pour restaurer un instantané racine, redémarrez d'abord le système et vérifiez que le système démarre normalement. Ensuite, consultez le journal du noyau pour détecter d'éventuelles erreurs Btrfs ou de périphérique récurrentes. Un indicateur de lecture/écriture à lui seul ne garantit pas un fonctionnement optimal : si des erreurs se reproduisent, arrêtez les écritures et reprenez le diagnostic du stockage.