Conseils pour gérer efficacement la panique du noyau Linux
Merci à l'utilisateur du site 鸢一雨音 pour sa contribution
J'ai écrit cet article pour une raison. Afin de configurer un démarrage complètement silencieux, j'ai effectué des opérations mkinitcpio inappropriées sous Linux exécuté sur mon ordinateur de travail car j'ai ignoré une erreur logique dans le fichier mkinitcpio.conf. Cela amène mkinitcpio à produire un nouveau fichier de noyau, mais ce fichier de noyau ne fonctionne pas correctement. Lors du redémarrage, le démarrage du noyau s'interrompt dans l'état Panique.
Généralement, lorsque le nouveau noyau ne fonctionne pas correctement, vous pouvez démarrer temporairement le système en utilisant la version de secours du fichier du noyau initramfs, ou même écraser directement la version de secours pour annuler les modifications. Cependant, cette fois, mkinitcpio a été. modifié en même temps. Le fichier du noyau vmlinuz, et vmlinuz n'a pas de version de secours. Pour les utilisateurs ordinaires, ils peuvent réinstaller directement le système ; cependant, la configuration de l'environnement du poste de travail de l'auteur est assez compliquée, ce qui signifie qu'en plus de la perte possible de mes fichiers de travail, je dois également consacrer beaucoup de temps supplémentaire à reconfigurer le développement. environnement.
Remarque :La « réparation » dans ce didacticiel fait référence à « essayer d'annuler des modifications humaines dévastatrices », elle ne peut donc pas être utilisée pour récupérer après des pannes inconnues du noyau.
1. Démarrez à partir du LiveCD et affichez le disque
Sur la base de l'expérience accumulée lors de mon exploitation et maintenance à temps partiel de serveurs Linux, j'ai immédiatement pensé que je pourrais utiliser LiveCD pour démarrer afin d'obtenir un environnement Linux temporaire pour réparer le noyau.
L'auteur utilise la version 64 bits d'Arch Linux, j'ai donc démarré à partir du LiveCD d'Arch Linux. Après avoir correctement saisi l'utilisateur root intégré de LiveCD, nous devons vérifier le nom de périphérique de notre disque dur principal. Exécutez fdisk -l Dans mon cas, le fichier de périphérique correspondant à mon disque dur principal et à la partition montée dans le répertoire racine est /dev/sdb2.
2. chrootez vers le répertoire racine du système sur le disque dur
Pour chrooter vers le répertoire racine du système sur le disque dur et pouvoir appeler normalement les composants du système sur le disque dur pour apporter des modifications au système sur le disque dur, nous devons d'abord monter manuellement la partition racine sur le disque dur. Exécuter (le fichier de mon appareil est /dev/sdb2) :
mount /dev/sdb2 /mnt
Ne vous précipitez pas encore. À l'heure actuelle, bien que vous puissiez entrer le bash du système principal sur le disque dur en chrootant vers /mnt, vous ne pouvez guère effectuer correctement des tâches complexes car il reste encore des répertoires importants qui ne sont pas montés. Nous exécutons les instructions pour monter respectivement le répertoire proc, le répertoire /sys, le répertoire /dev et /run. Entrez /mnt et exécutez respectivement :
mount -t proc proc proc/
mount --rbind /sys sys/
mount --rbind /dev dev/
mount --rbind /run run/
Les fonctions de ces répertoires sont :
répertoire proc : Un système de fichiers virtuel au format Procfs utilisé pour stocker les fichiers d'état du processus (sous Linux, ces fichiers semblent être des fichiers texte en surface, mais sont en fait des mappages de fichiers de l'état du processus
) ;/sys répertoire : Pour Arch Linux, il s'agit d'un système de fichiers virtuel au format Sysfs similaire au répertoire proc, utilisé pour stocker les fichiers de périphérique connectés au système pour Unix traditionnel et de type Unix, c'est un pointeur vers le répertoire ; lien logiciel de l'arborescence du code du noyau ;
/dev répertoire : stocke les fichiers de l'appareil, par exemple, votre disque dur est /dev/sdXY ;
/run directory : stocke certaines informations système après le dernier démarrage ;
Après avoir monté ces éléments, nous pouvons chrooter vers le répertoire racine de notre disque dur principal :
chroot /mnt
Médecine des regrets++. Pour moi, il me suffisait de modifier le fichier mkinitcpio.conf et de réexécuter l'opération mkinitcpio pour régénérer le fichier correct du noyau. Généralement, si la panique du noyau est provoquée par une modification incorrecte de la configuration, cet environnement peut résoudre la plupart des problèmes.
3. Quelques compétences
1. De nombreux fichiers de configuration ont des versions ou des modèles corrects pour le système dans le LiveCD. Si vous ne vous souvenez pas à quoi ils ressemblent normalement, vous pouvez vous y référer ;2. Pour Arch Linux, vous pouvez utiliser directement la commande pacstrap pour gérer le package logiciel sur le point de montage /mnt sans chrooter vers /mnt ;
3. Il peut être utilisé sous deux ttys, de sorte qu'après avoir chrooté vers /mnt, les fichiers puissent toujours être transférés du système de fichiers LiveCD vers /mnt.Ce tutoriel devrait être disponible pour la plupart des distributions Linux, et j'espère qu'il sera utile à certains utilisateurs de Linux.
Recommandations associées :
Comment configurer deux cartes graphiques dans le système Linux ?
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les principales différences entre Centos et Ubuntu sont: l'origine (Centos provient de Red Hat, pour les entreprises; Ubuntu provient de Debian, pour les particuliers), la gestion des packages (Centos utilise Yum, se concentrant sur la stabilité; Ubuntu utilise APT, pour une fréquence de mise à jour élevée), le cycle de support (CentOS fournit 10 ans de soutien, Ubuntu fournit un large soutien de LT tutoriels et documents), utilisations (Centos est biaisé vers les serveurs, Ubuntu convient aux serveurs et aux ordinateurs de bureau), d'autres différences incluent la simplicité de l'installation (Centos est mince)

CentOS a été interrompu, les alternatives comprennent: 1. Rocky Linux (meilleure compatibilité); 2. Almalinux (compatible avec CentOS); 3. Serveur Ubuntu (configuration requise); 4. Red Hat Enterprise Linux (version commerciale, licence payante); 5. Oracle Linux (compatible avec Centos et Rhel). Lors de la migration, les considérations sont: la compatibilité, la disponibilité, le soutien, le coût et le soutien communautaire.

Étapes d'installation de CentOS: Téléchargez l'image ISO et Burn Bootable Media; démarrer et sélectionner la source d'installation; sélectionnez la langue et la disposition du clavier; configurer le réseau; partitionner le disque dur; définir l'horloge système; créer l'utilisateur racine; sélectionnez le progiciel; démarrer l'installation; Redémarrez et démarrez à partir du disque dur une fois l'installation terminée.

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Docker utilise les fonctionnalités du noyau Linux pour fournir un environnement de fonctionnement d'application efficace et isolé. Son principe de travail est le suivant: 1. Le miroir est utilisé comme modèle en lecture seule, qui contient tout ce dont vous avez besoin pour exécuter l'application; 2. Le Système de fichiers Union (UnionFS) empile plusieurs systèmes de fichiers, ne stockant que les différences, l'économie d'espace et l'accélération; 3. Le démon gère les miroirs et les conteneurs, et le client les utilise pour l'interaction; 4. Les espaces de noms et les CGROUP implémentent l'isolement des conteneurs et les limitations de ressources; 5. Modes de réseau multiples prennent en charge l'interconnexion du conteneur. Ce n'est qu'en comprenant ces concepts principaux que vous pouvez mieux utiliser Docker.

Vs Code Système Exigences: Système d'exploitation: Windows 10 et supérieur, MacOS 10.12 et supérieur, processeur de distribution Linux: minimum 1,6 GHz, recommandé 2,0 GHz et au-dessus de la mémoire: minimum 512 Mo, recommandée 4 Go et plus d'espace de stockage: Minimum 250 Mo, recommandée 1 Go et plus d'autres exigences: connexion du réseau stable, xorg / wayland (Linux) recommandé et recommandée et plus

Méthode de visualisation du processus docker: 1. Commande Docker CLI: Docker PS; 2. Commande CLI Systemd: Docker d'état SystemCTL; 3. Docker Compose CLI Commande: Docker-Compose PS; 4. Process Explorer (Windows); 5. / Répertoire proc (Linux).

Dépannage des étapes pour la construction d'image Docker échouée: cochez la syntaxe Dockerfile et la version de dépendance. Vérifiez si le contexte de construction contient le code source et les dépendances requis. Affichez le journal de construction pour les détails d'erreur. Utilisez l'option - cibler pour créer une phase hiérarchique pour identifier les points de défaillance. Assurez-vous d'utiliser la dernière version de Docker Engine. Créez l'image avec --t [Image-Name]: Debug Mode pour déboguer le problème. Vérifiez l'espace disque et assurez-vous qu'il est suffisant. Désactivez SELINUX pour éviter les interférences avec le processus de construction. Demandez de l'aide aux plateformes communautaires, fournissez Dockerfiles et créez des descriptions de journaux pour des suggestions plus spécifiques.
