qu'est-ce que Linux oups

青灯夜游
Libérer: 2022-02-24 13:48:24
original
3617 Les gens l'ont consulté

Sous Linux, oops signifie « surprise », qui est une invite d'information, ce qui signifie que quelque chose exécuté sur le système viole les règles spécifiées par le noyau ; oops générera une signature de crash « signature de crash » qui peut aider les développeurs du noyau à trouver les erreurs et améliorer la qualité du code.

qu'est-ce que Linux oups

L'environnement d'exploitation de ce tutoriel : système linux5.9.8, ordinateur Dell G3.

Le noyau Linux vous surveille, et lorsqu'il détecte quelque chose en cours d'exécution sur le système qui viole le comportement normal du noyau, il arrête le système et émet un « oups » !

Si vous vérifiez les processus en cours d'exécution sur votre système Linux, vous pourriez être curieux de connaître un processus appelé « Kerneloops ». Juste un rappel, il s'agit de "kernel oops", pas de "kerne loops".

Franchement, les « oups » font partie du noyau Linux qui présente un comportement déviant. Avez-vous fait quelque chose de mal ? Probablement pas. Mais quelque chose ne va pas. Et le processus qui a commis une erreur a peut-être été interrompu par le processeur. Pire encore, le noyau pourrait générer une erreur et arrêter brusquement le système.

Veuillez noter que « oups » n'est pas un acronyme. Cela ne signifie pas quelque chose comme « programmation et systèmes orientés objet » ou « hors spécifications procédurales ». C'est littéralement « oups », comme si vous veniez de laisser tomber un verre de vin ou de marcher sur votre chat. oups! La forme plurielle de « oups » est « oups ».

oops signifie que quelque chose exécuté sur le système viole les règles du noyau concernant le comportement correct. Peut-être que le code essaie d'emprunter un chemin de code qui n'est pas autorisé ou utilise un pointeur non valide. Quoi qu'il en soit, le noyau - qui surveille toujours les mauvais comportements des processus - bloquera très probablement un processus spécifique et écrira un message à la console, /var/log/dmesg, sur ce qu'il a fait > ou. /var/log/kern.log. /var/log/dmesg 或 /var/log/kern.log 中。

oops 可能是由内核本身引起的,也可能是某些进程试图让内核违反在系统上能做的事以及它们被允许做的事。

oops 将生成一个崩溃签名crash signature,这可以帮助内核开发人员找出错误并提高代码质量。

系统上运行的 kerneloops 进程可能如下所示:

kernoops 881 1 0 Feb11 ? 00:00:01 /usr/sbin/kerneloops
Copier après la connexion

你可能会注意到该进程不是由 root 运行的,而是由名为 “kernoops” 的用户运行的,并且它的运行时间极少。实际上,分配给这个特定用户的唯一任务是运行 kerneloops。

$ sudo grep kernoops /etc/passwd
kernoops:x:113:65534:Kernel Oops Tracking Daemon,,,:/:/bin/false
Copier après la connexion

如果你的 Linux 系统不带有 kerneloops(比如 Debian),你可以考虑添加它。查看这个 Debian 页面了解更多信息。

什么时候应该关注 oops?

一般 oops 没什么大不了的。它在一定程度上取决于特定进程所扮演的角色。它也取决于 oops 的类别。

有些 oops 很严重,会导致系统恐慌system panic。从技术上讲,系统恐慌是 oops 的一个子集(即更严重的 oops)。当内核检测到的问题足够严重以至于内核认为它(内核)必须立即停止运行以防止数据丢失或对系统造成其他损害时会出现。因此,系统需要暂停并重新启动,以防止任何不一致导致不可用或不可靠。所以系统恐慌实际上是为了保护自己免受不可挽回的损害。

总之,所有的内核恐慌都是 oops,但并不是所有的 oops 都是内核恐慌。

/var/log/kern.log 和相关的轮转日志(/var/log/kern.log.1/var/log/kern.log.2 等)包含由内核生成并由 syslog 处理的日志。

kerneloops 程序收集并默认将错误信息提交到 http://oops.kernel.org/,在那里它会被分析并呈现给内核开发者。此进程的配置详细信息在 /etc/kerneloops.conf 文件中指定。你可以使用下面的命令轻松查看设置:

$ sudo cat /etc/kerneloops.conf | grep -v ^# | grep -v ^$
[sudo] password for shs:allow-submit = ask
allow-pass-on = yes
submit-url = http://oops.kernel.org/submitoops.phplog-file = /var/log/kern.logsubmit-pipe = /usr/share/apport/kernel_oops
Copier après la connexion

在上面的(默认)设置中,内核问题可以被提交,但要求用户获得许可。如果设置为 allow-submit = always

oops peut être causé par le noyau lui-même, ou il peut s'agir d'un processus essayant d'amener le noyau à violer ce qu'il peut et est autorisé à faire sur le système.

oops générera une signature de crash, qui peut aider les développeurs du noyau à trouver des bogues et à améliorer la qualité du code.

Le processus kerneloops exécuté sur votre système peut ressembler à ceci : rrreee

Vous remarquerez peut-être que le processus n'est pas exécuté par root, mais par un utilisateur nommé "kernoops", et qu'il prend très peu de temps pour s'exécuter. En fait, la seule tâche assignée à cet utilisateur particulier est d'exécuter kernelloops. 🎜rrreee🎜Si votre système Linux n'est pas livré avec kerneloops (comme Debian), vous pouvez envisager de l'ajouter. Consultez cette page Debian pour plus d'informations. 🎜🎜Quand faut-il faire attention aux oups ? 🎜🎜Les oups généraux ne sont pas un problème. Cela dépend en partie du rôle joué par un processus particulier. Cela dépend aussi de la catégorie de oups. 🎜🎜Certains problèmes sont graves et peuvent provoquer une panique du système. Techniquement, les paniques du système sont un sous-ensemble des petits problèmes (c'est-à-dire des petits problèmes plus graves). Se produit lorsque le problème détecté par le noyau est suffisamment grave pour que le noyau estime qu'il (le noyau) doit arrêter de fonctionner immédiatement pour éviter toute perte de données ou tout autre dommage au système. Par conséquent, le système doit être mis en pause et redémarré pour éviter que des incohérences ne provoquent une indisponibilité ou un manque de fiabilité. Le système panique donc pour se protéger de dommages irréparables. 🎜🎜En bref, toutes les paniques du noyau sont des oups, mais tous les oups ne sont pas des paniques du noyau. 🎜🎜/var/log/kern.log et journaux de rotation associés (/var/log/kern.log.1, /var/log/kern . log.2 etc.) contient les journaux générés par le noyau et traités par syslog. Le programme 🎜🎜kerneloops collecte et soumet par défaut les informations d'erreur à http://oops.kernel.org/, où elles sont analysées et présentées aux développeurs du noyau. Les détails de configuration de ce processus sont spécifiés dans le fichier /etc/kerneloops.conf. Vous pouvez facilement afficher les paramètres à l'aide de la commande suivante : 🎜rrreee🎜 Dans les paramètres ci-dessus (par défaut), les problèmes du noyau peuvent être soumis, mais l'utilisateur doit obtenir l'autorisation. S'il est défini sur allow-submit = always, l'utilisateur ne sera pas invité. 🎜🎜Le débogage des problèmes de noyau est l'une des techniques les plus avancées pour utiliser un système Linux. Heureusement, la plupart des utilisateurs de Linux rencontrent rarement ou jamais des problèmes ou des paniques du noyau. Cependant, il est également bon de savoir ce qu'un processus tel que kerneloops fait sur votre système, de savoir ce qu'il peut signaler et quand votre système rencontre un conflit de noyau grave. 🎜🎜Recommandations associées : "🎜Tutoriel vidéo 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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!