Questions tagged «kernel»

有关UNIX内核的所有内容:开发,配置,编译,设计等。

3
在Debian 9上手动安装新内核的正确方法是什么?
我没有足够的信心单独执行此操作,并冒着服务器无法启动等风险。 我想从以下版本升级内核: $ uname -r 4.9.0-6-amd64 $ uname -v #1 SMP Debian 4.9.88-1+deb9u1 (2018-05-07) 到内核​​版本4.15或4.16。无论您推荐哪个。 我只是想知道如何列出可用的版本: $ apt-cache search linux-image | grep amd64 linux-headers-4.9.0-6-amd64 - Header files for Linux 4.9.0-6-amd64 linux-headers-4.9.0-6-rt-amd64 - Header files for Linux 4.9.0-6-rt-amd64 linux-image-4.9.0-6-amd64 - Linux 4.9 for 64-bit PCs linux-image-4.9.0-6-amd64-dbg - Debug symbols for linux-image-4.9.0-6-amd64 …
9 debian  kernel 


1
FreeBSD如何分配内存?
我知道,这是简化/广义的解释,但top(1)效用共分FreeBSD的内存分为六个pools- Active,Inactive,Wired,Cache,Buffers和Free。top(1)输出示例: Mem: 130M Active, 42M Inact, 51M Wired, 14M Cache, 34M Buf, 648K Free Swap: 512M Total, 512M Free Active由运行中的进程Wired使用,主要用于内核。Inactive是关闭的进程中的内存,如果需要重用,它仍会缓存,Cache是缓存的数据,Buffers是磁盘缓冲区(我想它与cachedLinux free(1)输出(?)类似),并且Free是完全未使用的内存。我是正确的是FreeBSD内核自动分配的空间Inactive,Cache和Buffers池Active或者Wired如果需要的话?
9 kernel  freebsd 

2
为什么modinfo会说“找不到模块”,而lsmod声称模块已加载?
根据lsmod命令的手册页显示“当前正在加载哪些内核模块”。 我编写了一个脚本,用于modinfo显示实际使用了哪些内核对象(.ko)文件: #!/bin/sh for i in `lsmod | awk '{print $1}' | sed -n '1!p'`; do echo "###############################$i###############################" echo "" modinfo $i echo "" echo "" done 现在我发现modinfo nvidia显示以下输出: ERROR: modinfo: could not find module nvidia 你们对此有什么解释吗?


4
防止usbhid要求拥有新颖的USB设备,以便我可以用libusb控制它吗?
我有一个USB火箭发射器,希望通过进行试验libusb。但是,libusb无法声明该接口。大概是因为usb-devices列表“ usbhid” 的输出是设备的驱动程序。 通过在互联网上阅读,我得出的结论是,我需要将该驱动程序与设备分离,以便可以在libusb中使用它。但是,我还没有找到一种确定的方式来做到这一点,只有几种不同的想法和错误报告。 因此,是否有一种方法可以将usbhid驱动程序从与Ubuntu 11.04随附的内核和工具相关的设备上分离出来? 编辑: 我尝试创建文件 /etc/udev/rules.d/10-usbhid.rules 并编写以下内容: ATTRS{idVendor}=="0a81", ATTRS{idProduct}=="0701", OPTIONS=="ignore_device" 保存,然后重新启动。该文件仍然存在,但似乎根本无法正常工作。 编辑: 好的,我尝试了这个: sudo -i echo -n "0003:0A81:0701.0006" > /sys/bus/hid/drivers/generic-usb/unbind 之后,导航到/sys/bus/hid/devices/0003:0A81:0701.0006和ls会产生: drwxr-xr-x 2 root root 0 2011-05-29 15:46 power lrwxrwxrwx 1 root root 0 2011-05-29 13:19 subsystem -> ../../../../../../../../../bus/hid -rw-r--r-- 1 root root 4096 2011-05-29 13:19 uevent …
9 ubuntu  kernel  usb  devices 


1
用户程序为什么要弄乱内核空间?
我什至不知道问题出在哪里,但是我在谈论这里描述的内核攻击。在此评论列表的下方,有人询问如何重新安排该过程。这个技巧并没有改善这种情况(机器仍然以非常缓慢的方式运行),并且在回复评论中谈到了内核空间与用户空间的关系。 首先,答复是否正确?如果是这样,为什么renice对用户空间中的事物而不对内核空间中的事物起作用?另外,根据我阅读的内容,用户自己启动的所有程序都应该位于用户空间中,我错过了什么? 如果这是不正确的,那为什么不肯改善这种状况呢?
9 kernel 

1
非确定性图形卡设备名称
我的系统包含三张图形卡,一张radeon和两张nvidia。 我正在尝试配置多座设置,但是图形卡的“设备名称”不稳定,它从一种引导更改为另一种引导。 例子 开机1 Radeon卡 /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card1 Nvidia 1卡 /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card0 Nvidia 2卡 /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2 开机2 Radeon卡 /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card0 Nvidia 1卡 /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card1 Nvidia 2卡 /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2 等等... 此问题使任何多座配置都不稳定(我使用loginctl),因为将设备分配给座位是基于这些设备名称的。另一个真正的问题是,这会同时更改内核级别和Xorg级别的图形卡的连接器名称(即VGA-1变为VGA-2等),因此我无法通过xorg.conf进行任何监视器配置,也无法使用“ video =“内核选项,这在我的设置中是必需的,以强制启用没有EDID的旧crt监视器。 这个“ card0”“ card1” ..是不确定的,是否正常?是否是Bug或可以配置的东西(udev或类似的东西)? 编辑: 正如@dirkt用户在评论中说的那样,在systemd级别是不确定的,实际上多座位配置本身是可以的。我的主要问题是输出名称的不可靠性。我需要它们在内核级别指定“ video = VGA-1:e”以强制启用输出。我需要在xorg级别上使用 Option "Monitor-VGA-1" "Monitor-x"。

2
以编程方式安全地更改Linux内核配置
我正在编写一个脚本,该脚本必须根据输入文件自动更改许多Linux内核配置选项。 当然,最简单的方法是直接编辑.config文件,但是不建议这样做,并且可能会引起问题。 不过,我似乎找不到找到这种“正确方法”的方法。 “ make help”没有显示更改单个选项的方法,./scripts/kconfig/conf --help也没有。kernel.org上的此文件似乎也没有办法。 甚至Gentoo的Genkernel也会手动更改 .config文件。 因此,基本上: 是否存在一种安全的方法来以编程方式更改内核配置选项,并完成依赖项跟踪等? 可以手动运行Kconfig来实现吗?

2
在Debian 8中将Linux内核3升级到4
我的声音和无线硬件在Debian 8系统上当前的3.16.x内核下无法正常工作。我执行了: apt-cache search linux-image 目的是让4.x版本的Linux内核尝试解决此问题(因为该硬件在Ubuntu 16.04下工作正常)。 但是,似乎内核的选择仅限于: linux-image-3.16.0-4-amd64 - Linux 3.16 for 64-bit PCs 我想安装4.x版本,并可以选择在当前内核和4.x版本之间切换。 我该如何使用apt-get不需要手动编译的简单方法呢?
8 debian  kernel  apt  upgrade 

2
脚本化的Linux内核配置
给定一系列内核功能,我想创建一个最小的linux配置,该配置支持所有给定的功能(以及相应的依赖项),但没有别的。 有没有一种创建allnoconfig的方法和一种启用功能的工具? (我可以编辑.config文件,但不能正确获得依赖关系。我可以使用make *config,但据我所知,它们只能以交互方式工作或创建一些默认配置。)
8 linux  kernel 

1
4.0及更高版本的Linux内核中的USB驱动程序有何变化?
内核高达3.19,我所有的USB设备都能完美运行。 在升级到4.0或更高版本时,我的某些USB设备停止工作,并且内核产生如下错误: [ 3.369436] usb 9-1: device descriptor read/64, error -62 [ 3.593543] usb 9-1: new full-speed USB device number 4 using ohci-pci [ 3.997572] usb 9-1: device not accepting address 4, error -62 [ 4.120602] usb 9-1: new full-speed USB device number 5 using ohci-pci [ 4.524792] usb 9-1: …
8 linux  kernel  usb  dvb 

2
内核恐慌不转储日志文件
我在Steam上玩游戏,突然之间我陷入了内核恐慌。我手动关闭了计算机,然后重新启动到64位的Linux Mint 17.1(肉桂色),然后去检查了我的日志文件/var/log/,但是找不到任何与内核崩溃有关的参考或消息。发生了 奇怪的是,为什么它从未转储内核,甚至从未将其记录到日志文件中。如果内核再次出现恐慌,我如何确保始终转储内核?内核崩溃时为什么什么也没记录,这没有任何意义。环顾谷歌,人们建议通过阅读/var/log/dmesg,/var/log/syslog,/var/log/kern.log,/var/log/Xorg.log等...但一无所获。甚至都不在.Xsession-errors文件中。 以下是屏幕上的一些照片: 我可以随时在屏幕上拍照,如果再次发生的话,但是我只想确保可以获取它以转储内核并在内核崩溃时创建日志文件。

1
有关Linux内核安全性的一些基本问题[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 我对Linux内核了解不多,并且有一些疑问。 将内核内存与用户空间内存分开的主要目的是什么?要确保用户应用程序不会对内核造成任何不良影响? 用户级应用程序有几种方法可以将控制权转移到内核?我能想到的包括(1)调用系统调用,(2)将内存映射到内核(但我认为mmap()也是系统调用),以及(3)加载内核模块(但我想lsmod还调用一些系统调用)。我对么?还有其他我想念的方式吗? 有几种攻击内核的方法?我可以简要介绍一下吗? 如果我获得root特权,是否意味着我完全控制了内核?即,我可以对内核和硬件做任何我想做的事吗?还是我对内核的功能仍然有限? 如果有人可以帮助我找出这些问题的答案,我将不胜感激。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.