标签: kernel

VirtualBox 中运行的 Linux 上的内核 oops 破坏了服务器上的一些 IO 相关功能

我们在 Windows 7 计算机上的 VirtualBox 中运行 CentOS 版本 6.3 时遇到问题。症状如下:

几个小时甚至几天内一切正常。然后发生了一些破坏系统的事情。

发生这种情况后我们还能做什么

  • 访问网络服务器
  • 使用现有的 SSH 会话来运行 top 和 free

什么不起作用

  • 启动新的 SSH 会话(输入用户名和密码后挂起)
  • 在现有 SSH 会话中运行 ls(挂起)
  • SSI 包含来自我们的 Web 服务器,这些服务器从远程计算机获取数据
  • 可能更多

当发生这种情况时,我们在服务器上看到的内容如下

  • 平均负载从基本没有上升到 3 左右
  • CPU 使用率仍然很低(5%)
  • 磁盘活动低(运行 iostat)
  • 有足够的可用内存
  • 有足够的可用磁盘空间

在 /var/log/messages 中我们得到以下内容:

Jun 14 01:10:48 devvm kernel: e1000 0000:00:03.0: eth0: Detected Tx Unit Hang
Jun 14 01:10:48 devvm kernel:  Tx Queue             <0>
Jun 14 01:10:48 devvm kernel:  TDH                  <2e>
Jun 14 01:10:48 …
Run Code Online (Sandbox Code Playgroud)

linux server-crashes virtualbox kernel

2
推荐指数
1
解决办法
3671
查看次数

Debian:使用 APT 更新内核 - 需要重新启动才能生效?

假设我将正在运行的 Debian 系统的内核更新apt-get upgrade linux-image-amd64为更高的次版本号(例如,5.10.10更新为5.10.11)。我是否必须重新启动 Debian 服务器才能使更新生效?

debian kernel patch-management linux-kernel

2
推荐指数
1
解决办法
1416
查看次数

配置好Linux内核后,可以安全的同时制作bzImage和modules吗?

我注意到在制作 Linux 内核时,我的处理器总共只有大约 50% 的时间在使用。

我通常先制作内核,然后制作模块。

我刚刚在一个终端中启动了一个 make bzImage 并在另一个终端中启动了一个 make 模块,并且看到我的两个处理器都得到了充分利用。我希望总编译时间会快很多,因为我是并行编译而不是串行编译。

是否有任何“gotya's”使这不安全?

linux kernel make

1
推荐指数
1
解决办法
745
查看次数

升级内核是否类似于在 Windows 中打补丁?

主要来自 Windows 背景,在我看来,在 Linux 中更新内核与在 Windows 中修补操作系统本质上是相同的想法。

是这种情况吗?有什么共同点和不同点?

linux kernel linux-kernel

1
推荐指数
1
解决办法
104
查看次数

现代 linux 内核中的 rtl8139 驱动程序 - 是否包含在内?

我需要支持 realtek rtl8139 网卡 - 这是否包含在现代 (> 3.0) linux 内核中?我必须加载任何模块或安装任何东西吗?

networking linux drivers kernel realtek

1
推荐指数
1
解决办法
5262
查看次数

如何让 OOM Killer 更加被动

我能够使用旧的 2.6.x 内核在 VPS 上编译具有 1 GiB RAM 的程序。但是当我尝试在具有 1.1 GiB RAM 和 3.9.x 内核的 VPS 上编译它时,编译器总是被 OOM Killer 杀死。

如何让 OOM 更被动?

kernel oom

1
推荐指数
1
解决办法
411
查看次数

当套接字切换到 TIME_WAIT 状态时,为什么我看不到它的 inode 号?

我正在用 python 开发一个解析/proc/net/tcp信息的程序,但不幸的是,在我这样做的时候,我看到了一件奇怪的事情。

实际上,当套接字TIME_WAIT状态发生变化时,会丢失其 inode 编号,而且我不知道此套接字的所有者是谁。

我阅读了一些关于这个TIME_WAIT问题的文档,我了解到连接实际上已经完成,它保持等待只是为了保证数据传输。

有人对此有所了解吗?

kernel tcp linux-networking socket

1
推荐指数
1
解决办法
717
查看次数

为什么我在全新的 Ubuntu 16.04 安装上升级内核时遇到问题?

我注册了一个 Linux VPS。这个 VPS 带有一个较旧的 Linux 内核,我想升级它,因为我想运行的一些软件需要更新的版本。这是输出uname -a

Linux florence 2.6.32-042stab120.11 #1 SMP Wed Nov 16 12:05:45 MSK 2016 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

这是一个全新的 Ubuntu 16.04 镜像。(主机是http://ssdnodes.com)。这些是我以 root 身份按顺序运行的所有命令(是我试图遵循的教程):

apt-get update
apt-get upgrade -y
apt-get autoremove -y

mkdir kernel_update
cd kernel_update/
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
dpkg -i linux-*.deb
Run Code Online (Sandbox Code Playgroud)

前两个包安装正常。当我尝试选择第三个包时,出现此错误:

Unpacking linux-image-4.8.15-040815-generic (4.8.15-040815.201612151231) ...
Setting up linux-headers-4.8.15-040815 (4.8.15-040815.201612151231) ...
Setting up linux-image-4.8.15-040815-generic (4.8.15-040815.201612151231) ...
Running depmod.
update-initramfs: deferring update (hook will be called …
Run Code Online (Sandbox Code Playgroud)

linux ubuntu debian kernel linux-kernel

1
推荐指数
1
解决办法
1072
查看次数

验证内核引导参数

长话短说,我想验证 Centos 是否实际启动/使用了我在 /etc/grub.conf 中指定的内核标志/参数

是否有我可以键入的命令来显示当前正在运行的内核的详细信息(包括启用的参数)?

uname -a 只显示版本和主机名。

谢谢,

linux kernel

0
推荐指数
1
解决办法
533
查看次数

理解 linux 中的“转发”

linux的哪一部分负责在接口之间“转发”流量?

我知道“ /proc/sys/net/ipv4/ip_forward ”,但是操作系统、内核或模块的哪一部分实际上正在检查此设置并决定是否执行转发?

内核是否坐在那里并且根据路由表无意识地将任何接收到的未寻址到这台机器的数据包转发到另一个接口?

这是我一直想深入了解的一个非常基本的问题。

linux routing kernel

0
推荐指数
1
解决办法
97
查看次数

为什么 Centos 6 的内核比 Ubuntu 12.04 旧

嗨,有人可以帮助我理解这一点。

在 Centos 6.2 上,它的内核显示为 2.6.32-220.el6.x86_64

而在 Ubuntu 12.04 上它显示为3.2.0-23-generic.

3.0 内核是最新的内核之一,Ubuntu 正在使用它,而 Centos 使用的是旧内核。为什么会这样?

旧内核能否提供新内核所能提供的所有新功能?他们为什么不升级到3.0?

linux ubuntu redhat centos kernel

0
推荐指数
1
解决办法
1535
查看次数

重新启动已运行 365 天的生产 CentOS 6 服务器

我今天在运行正常运行时间时注意到我的服务器已经运行了 365 天。这让我谷歌“我应该定期重启我的服务器”。这让我知道是的,我应该在任何内核更新后重新启动,否则新内核不会变为活动状态。我想这很明显,但不是我今天之前知道的。我一直关注我的更新,但从不重启...

……现在我有点害怕了。

不久前我重新启动了一个不同的盒子,但由于一些 grub conf 问题,它无法恢复。在从救援模式修复它失败后(我不知道我在做什么),我选择重新安装盒子 - 反正它没有太多东西,这样做很简单。

在我重新启动之前,有什么我应该检查的(在配置文件等中)可能会最小化类似失败的机会?

centos kernel update centos6

0
推荐指数
1
解决办法
92
查看次数

哪个会给 linux 提供更多的可用内存?

试图避免一些问题,所以我一直在努力学习 vm。在内核调整中,但即使在谷歌搜索之后仍然有点困惑。background_ratio 越低,冲洗越快?较低的dirty_ratio是保留的较少脏的内存,对

vm.dirty_ratio = 20
vm.dirty_background_ratio = 1
Run Code Online (Sandbox Code Playgroud)

或者

vm.dirty_ratio = 60
vm.dirty_background_ratio = 20
Run Code Online (Sandbox Code Playgroud)

或者

vm.dirty_ratio = 20
vm.dirty_background_ratio = 10
Run Code Online (Sandbox Code Playgroud)

或者

vm.dirty_ratio = 20
vm.dirty_background_ratio = 5
Run Code Online (Sandbox Code Playgroud)

linux performance kernel performance-tuning

-2
推荐指数
1
解决办法
639
查看次数