首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android在哪里存储关机日志?

Android在哪里存储关机日志?
EN

Stack Overflow用户
提问于 2011-05-20 11:55:54
回答 4查看 29.4K关注 0票数 11

我知道,通过kmsgdmesg通过ADB提取内容可以获得引导日志。

但是我不知道如何在Android中检索关闭日志,因为Android中没有/var文件夹(大多数桌面linux发行版通常都存储它们的关闭日志)。

那么,如何在Android中获得关机日志呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-11-04 11:31:30

我发现在Android中收集关机日志的一项工作是在主机PC上运行adb pull /proc/kmsg C:\Logs.txt,然后关闭设备。你会得到日志,直到主机和设备之间的USB通讯中断!我知道这只是众多关机场景中的一个案例,但对于其他情况,我还没有找到满意的答案!

票数 3
EN

Stack Overflow用户

发布于 2014-11-24 17:58:48

TL;博士

通过adb运行命令,将logcat和proc/kmsg复制到一个文件中,并保持其运行,即使adb断开了与nohupdisownsetsid的连接。可能需要百事箱,需要根,亚行也需要根。

setsid cat proc/kmsg > /sdcard/kmsg.txt &

logcat -v long -f /sdcard/logcat.txt (在某种程度上只适用于不使用setsid)

或者将普通复制命令添加到某些启动脚本中。

/TL;DR

您可以不断地将proc/kmsglogcat复制到安卓设备上的文件或microSD卡上,以便在亚行断开连接后获取日志。

您需要根访问和亚行根访问才能工作。对于后者,如果您有自定义rom或adbd 不安全应用程序,请在developer选项中使用该设置。

在使用adb shell获取android之后,输入su以获得超级用户访问权。

然后,您不仅需要在命令后面添加一个符号(&),还需要确保该命令在adb断开后继续运行。这是由nohupdisownsetsid完成的(请参阅这里中的用法)。

如果由于没有这些命令而无法工作,则需要安装箱箱

见我的问题这里

有关如何获取logcat和内核日志并将其打印到某个文件或合并它,请参见这里。有关logcat命令的参数,请参见developer.android.com/tools/help/logcat.html。

最后,您可以为内核消息提供一个类似于setsid cat proc/kmsg > /sdcard/kmsg.txt &的命令。

对于logcat,可以有以下命令之一:logcat -v long -f /sdcard/logcat.txtlogcat -v long > /sdcard/logcat.txt

我不知道为什么,但有时它不适用于setsid,只是没有连续复制,但在执行命令后不久就停止了。在这些情况下,它在进入jobs时也会出现,否则就不会出现。然后,它只是在没有setsid的情况下工作,它在断开和重新连接后仍然存活。我想,当文件不断变大时,您必须尝试一下。如果有人弄明白了为什么会这样.告诉我,我会编辑答案。

对一些人来说,向启动脚本添加命令可能也是一种解决方案。

希望这能有所帮助。

战斗曲奇

票数 3
EN

Stack Overflow用户

发布于 2019-01-07 09:24:23

较新的手机不使用这些位置,所以如果你正在阅读这篇文章,那么现在

内核崩溃日志现在位于/sys/fs/pstore中,而不是/proc/last中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6071547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档