首页 > 其他分享 >oops

oops

时间:2023-11-27 19:11:56浏览次数:46  
标签:kerneloops log var oops 进程 内核

 

如果你检查你的 Linux 系统上运行的进程,你可能会对一个叫做 “kerneloops” 的进程感到好奇。提示一下,它是 “kernel oops”,而不是 “kerne loops”。

坦率地说,“oops” 是 Linux 内核的一部分出现了偏差行为。你有做错了什么吗?可能没有。但有一些不对劲。而那个做了错事的进程可能已经被 CPU 结束。最糟糕的是,内核可能会报错并突然关闭系统。

请注意,“oops” 不是首字母缩略词。它不代表像“面向对象的编程和系统object-oriented programming and systems” 或“超出程序规范out of procedural specs” 之类的东西。它实际上就是“哎呀” (oops),就像你刚掉下一杯酒或踩在你的猫身上。哎呀! “oops” 的复数是 “oopses”。

oops 意味着系统上运行的某些东西违反了内核有关正确行为的规则。

也许代码尝试采取不允许的代码路径或使用无效指针。

不管它是什么,内核 —— 总是在监测进程的错误行为 —— 很可能会阻止特定进程,并将它做了什么的消息写入控制台、 /var/log/dmesg 或 /var/log/kern.log 中。

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

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

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

kernoops 881 1 0 Feb11 ? 00:00:01 /usr/sbin/kerneloops

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

$ sudo grep kernoops /etc/passwd
kernoops:x:113:65534:Kernel Oops Tracking Daemon,,,:/:/bin/false

如果你的 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

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

调试内核问题是使用 Linux 系统的更高级技巧之一。幸运的是,大多数 Linux 用户很少或从没有经历过 oops 或内核恐慌。不过,知道 kerneloops 这样的进程在系统中执行什么操作,了解可能会报告什么以及系统何时遇到严重的内核冲突也是很好的。


译文出处

via: https://www.networkworld.com/article/3254778/linux/what-is-a-linux-oops.html


https://www.imooc.com/article/26837?block_id=tuijian_wz
来源:慕课网

 

标签:kerneloops,log,var,oops,进程,内核
From: https://www.cnblogs.com/softidea/p/17860192.html

相关文章

  • oops
     如果你检查你的Linux系统上运行的进程,你可能会对一个叫做“kerneloops”的进程感到好奇。提示一下,它是“kerneloops”,而不是“kerneloops”。坦率地说,“oops”是Linux内核的一部分出现了偏差行为。你有做错了什么吗?可能没有。但有一些不对劲。而那个做了错事的进程......
  • P9840 [ICPC2021 Nanjing R] Oops, It's Yesterday Twice More
    P9840[ICPC2021NanjingR]Oops,It'sYesterdayTwiceMore注意到最后袋鼠要集中到一个点上,显然先走到四个角落之一再移动到点\((a,b)\)是最优的,可以证明,步数一定不超过\(3(n-1)\)。因为不知道具体要到哪一个角落里,因此记录\((a,b)\)到每个角落的距离并大力分类讨论即可......
  • GitLab报错502——Whoops, GitLab is taking too much time to respond 502 错误
    一、错误页面错误原因:原来默认配置的8080端口号被其他应用占用冲突了,只需换成其他新的端口号就可以了二、修复步骤1.首先vim /etc/gitlab/gitlab.rb打开配置文件2.修改配置找到如下配置项,原来是用#注释的,把前面的#去掉取消注释,原来的默认端口号应该是8080,改成你自己想要的端口号......
  • HTB-oopsie靶场练习
    靶机地址:10.129.130.57攻击机地址:10.10.14.185端口扫描nmap-sV-sC10.129.130.57访问10.129.130.57,对一些可能有用的信息进行记录打开burp,刷新网页,点击HTTPhistory,注意到/cdn-cgi/login/script.js试着访问http://10.129.130.57/cdn-cgi/login/script.js......
  • 驱动调试_Oops
    a.作为模块:1.根据pc值确定该指令属于内核还是外加的模块 pc=0xbf000018它属于什么的地址?是内核还是通过insmod加载的驱动程序? 先判断是否属于内核的地址:看System.map确定内核的函数的地址范围:c0004000~c03265a4 如果不属于System.map里的范围,则它属于insmod加载的驱动......
  • Loops should be simplified with "LINQ" expressions
    Loopsshouldbesimplifiedwith"LINQ"expressionsWhyisthisanissue?Whenaloopisfiltering,selectingoraggregating,thosefunctionscanbehandledwithaclearer,moreconciseLINQexpressioninstead.Noncompliantcodeexamplevarresu......
  • TIER 2: Oopsie
    TIER2:OopsieWeb渗透此次靶机结合前面知识,非常简单:nmap扫描,发现22和80端口开放服务80的HTTP服务之后使用继续Web渗透:使用Wappalyzer查看网站使用的技术栈查看当前页面源码,重点观察其中的链接如果没有进一步线索,进行目录爆破,寻找隐藏目录寻找到目标站......
  • Oracle反连接和外连接中NESTED LOOPS无法更改驱动表
     Oracle反连接和外连接中NESTEDLOOPS无法更改驱动表 先说反连接,现有SQL如下:selectt.*fromtwheret.colnotin(select/*+nl_aj*/tt.colfromttwherett.colisnotnull)andt.colisnotnull;Planhashvalue:1434981293------------------------------......
  • 轻量化3D文件格式转换HOOPS Exchange新特性
    BIM与AEC市场发展现状近年来BIM(建筑信息模型)和AEC(建筑、工程和施工)市场一直保持着持续增长。2014年全球BIM软件市场价值27.6亿美元,而到2022年,预期到达115.4亿美元,复合年增长率保持在19.1%,并且对未来十年BIM增长率的保守估计为10%。世界各地的许多政府现在也在强制要求遵守......
  • 使用whoops作为tp6的自定义异常
    安装composerrequirefilp/whoops在app/ExceptionHandle.php中的renderpublicfunctionrender($request,Throwable$e):Response{//添加自定义异常处理机制if(ENV('APP_DEBUG')){//如果是HttpResponseException异常则原样输出//JUMP插......