Toutes nos données importantes sont situées dans un système de fichiers d'un type ou d'un autre, et les problèmes de système de fichiers sont tenus de se produire. Sur Linux, nous pouvons utiliser le
fsck
commande de trouver et de corriger les erreurs du système de fichiers.
Les systèmes de fichiers sont logiciels
Les systèmes de fichiers sont l'un des composants les plus critiques d'un ordinateur. Sans système de fichiers, l'ordinateur ne peut stocker aucune donnée sur un disque dur, que ce lecteur soit un plateau mécanique de filature ou un disque dur . En fait, un système de fichiers doit être créé avant que le système d'exploitation puisse être installé sur le disque dur. Il doit y avoir quelque chose pour que les fichiers du système d'exploitation soient stockés. Donc, un système de fichiers est créé pendant le processus d'installation.
Les systèmes de fichiers sont Créé par logiciel , écrit à des logiciels et lus à partir de logiciels. Comme vous le savez, tous les logiciels complexes ont des bugs. Nos données sont essentiellement importantes pour nous, nous mettons donc beaucoup de foi dans les systèmes de fichiers et le logiciel qui les crée et les utilise. Si quelque chose ne va pas, nous pouvons perdre accès aux portions du système de fichiers ou même une partition entière.
Moderne Journalisation des systèmes de fichiers sont mieux à la gestion des problèmes qui peuvent être causés par une perte soudaine de pouvoir ou un crash système. Ils sont robustes, mais ils ne sont pas invincibles. Si leur Les tables internes sont brouillées Ils peuvent perdre une trace de l'endroit où chaque fichier réside sur le lecteur, quelle taille est, quel nom il a, et quelles autorisations de fichier sont définies sur elles.
Les
fsck
La commande vous permet de vérifier que vos systèmes de fichiers sont en bonne santé. S'il trouve des problèmes, il peut généralement les réparer pour vous aussi.
Faire les chèques de préforme
À l'aide de
fsck
a besoin
Privilèges sudo
. Toute commande pouvant apporter des modifications à un système de fichiers doit être traitée avec prudence et limitée à ceux qui savent ce qu'ils font.
Les pilotes ne sautent pas dans un avion, commencez-le et volez dans le bleu pâle là-bas. Ils font des contrôles de préforme. Il y a trop de jeu à faire autrement. C'est une bonne habitude de se développer. Avant d'utiliser
fsck
Vous devez vous assurer que vous allez l'utiliser sur le bon entraînement. Alors avant de faire quoi que ce soit avec
fsck
, nous allons faire un peu de reconnaissance.
Nous allons commencer par
fdisk
et pipe dans
moins
. Nous ne demandons pas d'informations sur une partition spécifique. En utilisant le
à
(liste) Option
fdisk
Répertorie les tables de partition sur tous les périphériques qu'il trouve dans le fichier "/ PROC / partitions", s'il existe.
sudo fdisk -l | moins
Nous pouvons voir les entrées pour
/ dev / sda
et
/ dev / sdb
. Vous pouvez faire défiler le fichier pour voir toutes les autres entrées pouvant exister sur votre ordinateur.
Les partitions sur
/ dev / sda
sont répertoriés comme
/ dev / sda1
,
/ dev / sda2
, et
/ dev / sda3
. Nous avons donc trois partitions sur le premier lecteur. Nous pouvons voir un peu plus d'informations en utilisant le
séparé
commander. Nous allons utiliser le
'imprimer'
Option d'affichage des tables de partition dans la fenêtre du terminal.
Sudo séparé / dev / SDA 'Print'
Nous obtenons des informations supplémentaires cette fois, y compris le type de fichier de fichiers sur chaque partition.
Modèle: HardDisk ATA Vbox (SCSI) Disque / Dev / SDA: 34.4 Go Taille du secteur (logique / physique): 512b / 512B Table de partition: GPT Drapeaux de disque: Numéro Start Taille finale Nom du système Système Drapeaux 1 1049KB 2097KB 1049KB BIOS_GRUB 2 2097KB 540MB 538MB FAT32 Boot de partition système EFI, ESP 3 540 Mo 34.4GB 33.8GB EXT4
Il y a trois lecteurs dans cet ordinateur de test. Ce sont les résultats pour les deux autres disques
/ dev / sdb
et
/ dev / sdc
. Notez que ces systèmes de fichiers n'ont pas de champ "Nom".
Sudo séparé / dev / SDB 'Print'
Modèle: HardDisk ATA Vbox (SCSI) Disque / Dev / SDB: 21.5 Go Taille du secteur (logique / physique): 512b / 512B Table de partition: msdos Drapeaux de disque: Nombre Démarrer Type de taille Fichier Système de fichier Drapeaux 1 1049KB 21.5GB 21.5GB primaire EXT4
Sudo séparé / dev / sdc 'print'
Modèle: HardDisk ATA Vbox (SCSI) Disque / Dev / SDC: 21.5 Go Taille du secteur (logique / physique): 512b / 512B Table de partition: msdos Drapeaux de disque: Nombre Démarrer Type de taille Fichier Système de fichier Drapeaux 1 1049KB 21.5GB 21.5GB EXT3 principal
Les deuxième et troisième disques ont la même taille et chacun a une seule partition. Mais le système de fichiers sur le deuxième lecteur est
ext4
et le système de fichiers sur le troisième lecteur est l'ancien
ext3
.
Nous passons un identifiant de partition à
fsck
et il vérifie le système de fichiers sur cette partition. Mais nous ne pouvons pas courir
fsck
sur un système de fichiers monté. Nous devons démonter le lecteur. Pour ce faire, nous devons connaître le point de montage que la partition - et donc le système de fichiers-est monté sur.
Nous pouvons trouver cela facilement en utilisant le
df
commander.
DF / Dev / SDB1
DF / Dev / SDC1
Utilisation de la commande FSCK
Nous avons toutes les informations dont nous avons besoin. La première chose à faire est de démonter le système de fichiers que nous allons vérifier. Nous allons travailler sur le système de fichiers sur la première et la seule partition de
/ dev / sdb
, lequel est
/ dev / sdb1
. Nous avons vu plus tôt que c'est un
ext4
Système de fichiers, et il est monté à "/ RUN / MOUNT / DAVE / SATA2".
Nous allons utiliser le
ut
commander. NOTE Il n'y a pas de "n" dans "utomé".
Sudo UMount / Run / Mount / Dave / SATA2
Avec
ut
, pas de nouvelles, bonnes nouvelles. Si vous êtes retourné silencieusement à l'invite de commande, nous sommes bons à partir.
sudo fsck / dev / sdb1
Ce système de fichiers est signalé comme propre. Cela signifie que le système de fichiers rapporte qu'elle n'a aucune erreur ni problèmes. Une vérification du système de fichiers plus profondes n'est pas automatiquement effectuée. Nous pouvons également regarder le code de retour qui
fsck
retourné à la coquille.
echo $?
La valeur de retour de zéro indique aucune erreur. Les codes de retour possibles sont:
- 0 : Pas d'erreurs
- 1 : Erreurs de système de fichiers corrigées
- 2 : Le système doit être redémarré
- 4 : Erreurs de système de fichiers laissées non corrigées
- 8 : Erreur opérationnelle
- 16 : Erreur d'utilisation ou de syntaxe
- 32 : Vérification annulée par la demande de l'utilisateur
- 128 : Erreur de bibliothèque partagée
Bien que le système de fichiers soit signalé comme propre, nous pouvons forcer une vérification du système de fichiers à avoir lieu, à l'aide de la
-F
option (force).
sudo fsck / dev / sdb1 -f
Cette fois, la vérification prend plus de temps à compléter mais elle effectue un test plus complet du système de fichiers. Notre système de fichiers était en effet propre et aucune erreur n'est rapportée. Si des problèmes sont présents comme les tests sont en cours de conduite, vous serez invité à laisser
fsck
corriger le problème ou ignorer l'erreur.
Lorsque vous avez terminé vos tests, vous devez remonter le système de fichiers. Le moyen le plus simple de le faire est d'utiliser
monter
avec le
-une
(toutes) option. Ceci vérifie "/ etc / fstab" pour la liste des systèmes de fichiers et s'assure qu'ils sont tous montés, car ils suivraient un démarrage régulier.
sudo mont -a
Notez que nous n'avons pas besoin de dire
fsck
Quel type de système de fichiers est sur une partition; L'utilité détermine qu'en examinant le système de fichiers. Cela signifie que nous pouvons forcer une vérification du système de fichiers sur
/ dev / sdc1
, les
ext3
Système de fichiers sur notre PC de test, en utilisant exactement la même commande que nous avons utilisée sur
/ dev / sdb1
, qui est un
ext4
cloison.
sudo fsck / dev / sdc1 -f
Vous ne voudrez peut-être pas plonger directement dans la correction du système de fichiers. Vous préférez peut-être regarder avant de sauter. Vous pouvez demander
fsck
Ne pas proposer de réparer quoi que ce soit et simplement signaler des problèmes à la fenêtre du terminal. Les
-N
L'option (SRY RUN) fait que:
sudo fsck -n / dev / sdb1
Le contraire de ça est de dire
fsck
Pour ne pas vous soucier de ne pas demander s'il trouve des erreurs et d'aller de l'avant et de les réparer. Pour ce faire, utilisez le
-d
(aucune invite) option.
sudo fsck -y / dev / sdb1
Utilisation de FSCK sur la partition racine
Vous ne pouvez pas utiliser
fsck
Sur une partition montée, mais pour démarrer votre ordinateur, la partition racine doit être montée. Alors comment pouvons-nous courir
fsck
sur la partition racine? La réponse est d'interrompre le processus de démarrage et exécuter
fsck
en mode de récupération.
Bien que votre ordinateur démarrent, maintenez une touche "Maj". Si vous avez terminé, vous ne démarrez pas dans Linux. Le processus de démarrage s'arrête dans un menu noir et blanc. La machine d'essai utilisée pour cet article était exécutée Ubuntu, mais d'autres distributions ont le même type de menu, bien qu'il puisse varier en apparence. Où dit-il "Ubuntu" dans les captures d'écran, il aura le nom de votre distribution.
Déplacez la barre de surbrillance avec les touches «OPS flèche» et «Down Flèche» afin que l'élément de menu «Options avancées pour Ubuntu» soit sélectionné. Appuyez sur "Entrée" pour passer à l'écran suivant.
Sélectionnez l'option qui se termine par "(mode de récupération)." Dans notre exemple, c'est "Ubuntu, avec Linux 5.11.0-20-20 générique (mode de récupération)." Appuyez sur la touche "Entrée".
Vous verrez le menu de récupération. Sélectionnez "FSCK Cochez tous les systèmes de fichiers" et appuyez sur la touche "TAB" pour déplacer la surbrillance du bouton "OK". Appuyez sur Entrée."
Vous verrez une notification que la partition racine sera montée avec toutes les autres partitions définies dans votre Fichier "/ etc / fstab" .
Appuyez sur la touche "TAB" pour déplacer la surbrillance sur le bouton "Oui" et appuyez sur "Entrée".
Tu verras
fsck
courir en mode interactif. S'il y a des problèmes, vous serez invité à laisser
fsck
fixez-les ou pour les ignorer. Lorsque les systèmes de fichiers ont été vérifiés, vous verrez à nouveau le menu de récupération.
Sélectionnez l'option "CV", appuyez sur la touche "Tabille" pour déplacer la surbrillance sur le bouton "OK" et appuyez sur "Entrée". Le processus de démarrage reprendra et vous démarrerez sous Linux.
Le démarrage du mode de récupération peut affecter certains pilotes. Il est donc utile de redémarrer une fois de plus, dès que vous démarrez dans Linux. Cela garantit que votre ordinateur fonctionne de manière standard.
Quand les choses vont mal
Les filets de sécurité sont là pour une raison. Apprenez à connaître le
fsck
commander. Si le besoin est de l'utiliser en colère un jour, vous serez heureux de vous familiariser à l'avance.