标签: kernel

我可以在 Linux 中增加 inode 数量吗?

我有一个带有 2.4.17 内核的 Linux MIPS 路由器。根 fs 是一个 tmpfs,而 /rom 是一个 cramfs。tmpfs 上有 4MB 可用内存和 3MB 可用内存。

我可以创建一些新的空文件,但下一个失败并显示“空间不足”。但是,我可以将 1MB 的数据附加到现有文件中。所以我的麻烦在于 inode 计数。

还有我的问题:

  1. 有没有办法动态增加inode?
  2. 如果我不能动态增加它 - 我在哪里可以在内核源代码中增加它?

linux kernel inode

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

TIME_WAIT 消耗文件描述符?

在许多 TCPIP 和 Web 调试指南中,建议在收到错误“打开的文件太多”时增加文件描述符的最大数量

但是,我在“lsof -i”的输出中看不到 TIME_WAIT

有谁知道 TIME_WAIT 消耗文件描述符?或不

unix tcpip kernel socket

9
推荐指数
2
解决办法
5493
查看次数

Linux 内核版本控制:Debian Sid 与 Ubuntu Precise

我设置了两台机器:

在一台机器上,我安装了 Ubuntu Precise 12.04 beta 并升级到最新的软件包。

在另一台机器上,我安装了 Debian Sid Unstable 并升级到最新的软件包。

在 Ubuntu 机器上 uname -a 显示:

Linux 3.2.0-20-generic #32-Ubuntu SMP Thu Mar 22 02:22:46 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

在 Debian 机器上 uname -a 显示:

Linux 3.2.0-2-amd64 #1 SMP Wed Mar 28 13:28:04 UTC 2012 x86_64 GNU/Linux

我的问题是关于内核版本:

Ubuntu: 3.2.0-20-generic
Debian: 3.2.0-2-amd64
Run Code Online (Sandbox Code Playgroud)

Linux 3.2 版发布于:

linux-3.2.tar.gz         05-Jan-2012 00:40   94M
Run Code Online (Sandbox Code Playgroud)

从那时起,已经发布了 13 个点,3.2.1 .. 3.2.13 来自 kernel.org,以及 3.3 发布。

我的问题是关于我的两台机器上的两个内核的源代码树的历史:

这两个版本的内核是从官方 kernel.org 内核的哪个版本派生而来的?

Debian Sid 内核的来源与 Ubuntu Precise …

linux ubuntu debian kernel linux-kernel

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

如何强制 Debian 启动新内核?

我在远程系统上的 Grub2 ( 1.98+20100804-14+squeeze1 ) 下运行 Debian 6、Debian GNU/Linux 和 Linux 2.6.32-5-amd64(无法查看预启动消息)。我编译并安装了一个新内核,但无法启动。

我做了什么:

通过以下方式安装软件包:

dpkg -i linux-headers-3.5.3.20120914-amd64_3.5.3.20120914-amd64-10.00.Custom_amd64.deb linux-image-3.5.3.20120914-amd64_3.5.3.20120914-amd64-10.00.Custom_amd64.deb
Run Code Online (Sandbox Code Playgroud)

这更新了 Grub 配置。我的 /boot/grub/grub.cfg 现在包含:

menuentry 'Debian GNU/Linux, with Linux 3.5.3.20120914-amd64' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md0)'
        search --no-floppy --fs-uuid --set 5a3882a9-c7df-4f6a-9feb-f03e3e37be01
        echo    'Loading Linux 3.5.3.20120914-amd64 ...'
        linux   /vmlinuz-3.5.3.20120914-amd64 root=UUID=003242b5-121b-49f3-b32f-1b40aea56eed ro acpi=ht quiet panic=10
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.5.3.20120914-amd64
}
menuentry 'Debian GNU/Linux, with Linux …
Run Code Online (Sandbox Code Playgroud)

debian kernel boot grub2

9
推荐指数
1
解决办法
3万
查看次数

仍然得到 aacraid:按照推荐的步骤后,主机适配器中止请求错误

我的新 Adaptec RAID 控制器在高 I/O 下遇到了臭名昭著的 aacraid:主机适配器中止请求错误。我已经阅读了几个论坛,甚至Adaptecs,将 /sys/block/sdX/device/timeout 值设置为 45 可以解决这个问题。但是,我正在运行 Ubuntu Server 12.04,默认情况下该值已为 45。我还尝试了下一个建议,即将我的主板的 bios 更新到最新版本,我做到了。

我不确定在采取这些步骤之前是否还有其他人遇到过这个“aacraid:主机适配器中止请求”错误。

这是我在系统日志中看到的:

kernel: [ 5493.523282] aacraid: Host adapter abort request (4,0,0,0)
Jan  6 20:29:15 server kernel: [ 5493.523309] aacraid: Host adapter abort request (4,0,0,0)
Jan  6 20:29:15 server kernel: [ 5493.523375] aacraid: Host adapter reset request. SCSI hang ?
Run Code Online (Sandbox Code Playgroud)

这是我的 uname -a

Linux server 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

谢谢大家,

吉姆

kernel scsi

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

如何在没有用户交互的情况下使用 APT 安装软件包?

我有一个脚本可以下载和替换 Debian 压缩中的内核头文件。

function fixHeaders(){
    #Replace the kernel headers from OVH with standard kernel headers...
    aptitude -y install linux-image-2.6.32-5-amd64  
    sed s/'GRUB_DEFAULT=0'/'GRUB_DEFAULT=1'/g
    update-grub
    echo "Rebooting the machine. Run this script again after reboot and choose option 2."
    sleep 1
    reboot  
}
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,在 aptitude 下载软件包后,它会将脚本放入文本 gui 并询问用户一堆问题。有什么办法可以跳过这个或在适当的时间发送选项卡/输入来为所有答案选择“确定”?

bash kernel aptitude apt debian-squeeze

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

如何在内核 2.6.33 中利用 IW10?

我读过 2.6.33+ 允许设置自定义 cwnd。

  1. 如果 IW 默认为 10(对于所有发行版?只有一些?)
  2. 如何查看当前 IW 在特定编译内核上的内容?

参考:

linux http kernel tcp

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

为什么即使有大量 RAM 空闲也会调用 OOM-killer

在 EC2 ebs 支持的 xlarge ubuntu 实例上,正在调用 oom-killer。从下面的 /var/log/syslog 输出来看,似乎 ZONE_NORMAL 内存不足:

Node 0 Normal free:11344kB min:11556kB low:14444kB high:17332kB active_anon:10936284kB inactive_anon:144kB active_file:688kB inactive_file:740kB
Run Code Online (Sandbox Code Playgroud)

但为什么 ZONE_NORMAL 只分配了 15GB 总 RAM 中的 11MB?或者是否有其他原因导致内存不足?

机器(xlarge 实例)上可用的 RAM 为 15GB。下面日志中 rss 列的总和为 3.7GB,total_vm 的总和为 11.4GB。

Dec 11 08:53:53 ip-10-60-61-71 kernel: [19427969.456146] node invoked oom-killer: gfp_mask=0x84d0, order=0, oom_adj=0, oom_score_adj=0
Dec 11 08:53:53 ip-10-60-61-71 kernel: [19427969.456153] node cpuset=/ mems_allowed=0
Dec 11 08:53:53 ip-10-60-61-71 kernel: [19427969.456157] Pid: 639, comm: node Not tainted 2.6.38-1-virtual #28-Ubuntu
Dec 11 08:53:53 …
Run Code Online (Sandbox Code Playgroud)

linux ubuntu kernel amazon-ec2

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

/dev/shm & /proc 强化

我已经看到提到保护 /dev/shm 和 /proc ,我想知道你是如何做到这一点的,它包括做什么?我认为这涉及某种权利的 /etc/sysctl.conf 编辑。

像这些?

kernel.exec-shield = 1
kernel.randomize_va_space = 1 
Run Code Online (Sandbox Code Playgroud)

security linux kernel

8
推荐指数
2
解决办法
2573
查看次数

如何使用 10Gb 光纤连接在 Linux 上微调 TCP 性能

我们有 2 台 Red Hat 服务器,专门用于客户速度测试。它们都使用 10Gb 光纤连接并位于 10Gb 链路上。这些服务器之间的所有网络设备都完全支持 10Gb/s。使用 Iperf 或 Iperf3,我能得到的最好的速度大约是 6.67Gb/s。话虽如此,一台服务器正在生产中(客户正在使用它),另一台服务器在线但未使用。(我们用它来测试 atm) 6.67Gb/s 也是一种方式,我应该提一下。我们将这些称为服务器 A 和服务器 B。

当服务器 A 作为 iperf 服务器时,我们获得了 6.67Gb/s 的速度。当服务器 A 作为服务器 B 的客户端时,它只能推送大约 20Mb/s。

我做了什么:

到目前为止,我所做的唯一一件事就是将两台服务器上的 TX/RX 缓冲区增加到最大值。一个设置为 512,另一个设置为 453。(仅 RX,TX 已经最大化)所以这里是更新后的样子:

Server A:
Ring parameters for em1:
Pre-set maximums:
RX:     4096
RX Mini:    0
RX Jumbo:   0
TX:     4096
Current hardware settings:
RX:     4096
RX Mini:    0
RX Jumbo:   0
TX:     4096

Server B:
Ring parameters for p1p1:
Pre-set maximums: …
Run Code Online (Sandbox Code Playgroud)

networking redhat kernel tcp

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