标签: kernel

为什么 Linux 内核被称为“映像”?

我经常听到人们将 Linux 内核称为 Linux 内核映像,而且我似乎无法在任何搜索引擎上找到有关为什么将其称为映像的答案。

当我想到图像时,我只能想到两件事,要么是磁盘副本,要么是照片。它肯定不是照片图像,为什么它被称为图像?

kernel linux-kernel

65
推荐指数
5
解决办法
3万
查看次数

dmesg 输出和 /var/log/messages 有什么区别?

AFAIKdmesg显示有关内核和内核模块的信息,/var/log/messages也显示内核和模块产生的信息。

那么有什么区别呢?难道/var/log/messages 的输出dmesg

更多可能有用的信息:
- 有一个内核环形缓冲区,我认为这是存储内核日志数据的唯一地方。
- IBM DeveloperWorks 上的文章“内核日志记录:API 和实现”描述了 API 和鸟瞰图。

logs kernel dmesg

64
推荐指数
4
解决办法
18万
查看次数

如何从头编译C编译器,然后从头编译Unix/Linux

假设我在美国/英国以外的一家大型服务机构工作。我们广泛使用 UNIX 和 Linux 服务器。

通读这篇文章,它提到将后门插入 C 编译器很容易,然后用该编译器编译的任何代码也将包含后门。现在鉴于最近有关 NSA/GCHQ 授权在所有加密方法、硬件和软件中放置后门/弱点的泄密事件,编译器现在是一个关键的故障点。可能所有标准的 UNIX/Linix 发行版都可能受到损害。我们不能让流氓政府损害我们的系统、数据和客户数据。

鉴于这些信息,我想从头开始构建一个受信任的编译器,然后我有一个安全的基础来构建,这样我就可以使用该编译器从源代码构建操作系统和应用程序。

从源代码编译编译器(一个看似鸡生蛋的场景)然后从头开始编译受信任的 Unix/Linux 发行版的正确(和安全方法)是什么?

您可以假设我或其他人有能力阅读和理解安全漏洞的源代码,因此在编译之前将首先审查源代码。我真正想要的是一份从头开始安全地生成这个编译器的工作指南,可用于编译内核、操作系统的其他部分和应用程序。

如果我们要对在该堆栈上运行的操作系统或应用程序有任何信心,安全堆栈必须从基础级别开始。是的,我知道可能存在硬件后门,它们可能会在编译器构建时将一些微代码插入到编译器中。除了可能使用不是在美国设计的芯片之外,我们目前对此无能为力。让我们先对这一层进行排序,并假设我可以在插入任何后门之前在旧计算机上构建它。

正如布鲁斯·施奈尔 (Bruce Schneier) 所说:“我对工程师们说:我们建立了互联网,我们中的一些人帮助颠覆了它。现在,我们这些热爱自由的人必须修复它。”

额外链接:

linux compiling kernel compiler gcc

64
推荐指数
3
解决办法
4685
查看次数

如何从命令行写入 dmesg?

我想给 dmesg 写一份声明。我怎样才能做到这一点?

linux command-line logs kernel dmesg

62
推荐指数
2
解决办法
5万
查看次数

如何卸载内核模块“nvidia-drm”?

我正在尝试在 Debian Stretch 中安装最新的 NVIDIA 驱动程序。我已经NVIDIA-Linux-x86_64-390.48.run这里下载,但是当我尝试这样做时

sudo sh ./NVIDIA-Linux-x86_64-390.48.run
Run Code Online (Sandbox Code Playgroud)

按照建议,出现错误消息。

ERROR: An NVIDIA kernel module 'nvidia-drm' appears to already be loaded in your kernel.  This may be because it is in use (for example, by an X server, a CUDA program, or 
         the NVIDIA Persistence Daemon), but this may also happen if your kernel was configured without support for module unloading.  Please be sure to exit any programs    
         that may be using the GPU(s) …
Run Code Online (Sandbox Code Playgroud)

kernel debian kernel-modules nvidia systemd

61
推荐指数
5
解决办法
11万
查看次数

为什么有人会选择不使用低延迟内核?

我找不到关于rtlowlatencyLinux 内核的任何好的信息。

我很奇怪,为什么有人会希望使用低延时的内核。

另外,如果有人能说出具体的区别是什么,那也太好了。

kernel linux-kernel latency

61
推荐指数
4
解决办法
3万
查看次数

谁在消耗我的 inotify 资源?

在最近升级到 Fedora 15 后,我发现许多工具失败并出现以下错误:

tail: inotify resources exhausted
tail: inotify cannot be used, reverting to polling
Run Code Online (Sandbox Code Playgroud)

这不仅仅是tail报告 inotify 的问题。有没有办法询问内核以找出正在消耗 inotify 资源的进程?当前与 inotify 相关的sysctl设置如下所示:

fs.inotify.max_user_instances = 128
fs.inotify.max_user_watches = 8192
fs.inotify.max_queued_events = 16384
Run Code Online (Sandbox Code Playgroud)

fedora kernel inotify

60
推荐指数
6
解决办法
3万
查看次数

以下内核 Makefile 术语有什么区别:vmLinux、vmlinuz、vmlinux.bin、zimage 和 bzimage?

在浏览内核 Makefile 时,我发现了这些术语。所以我想知道vmlinux, vmlinuz, vmlinux.bin, zimage&之间有什么区别bzimage

linux kernel file-format

58
推荐指数
2
解决办法
5万
查看次数

内核 oops 和内核恐慌之间有什么区别?

我知道什么是内核恐慌,但我也见过“内核 oops”这个词。我一直以为他们是一样的,但也许不是。所以:

什么是内核 oops,它与内核恐慌有何不同?

kernel kernel-panic

58
推荐指数
2
解决办法
2万
查看次数

为什么内核会丢包?

tcpdumpCtrl+打断C并得到了这个总摘要:

579204 packets captured
579346 packets received by filter
142 packets dropped by kernel
Run Code Online (Sandbox Code Playgroud)

什么是“内核丢弃的数据包”?为什么会这样?

kernel tcpdump

54
推荐指数
3
解决办法
11万
查看次数