Articles of 内核

我如何利用内核2.6.33中的IW10?

我读过,2.6.33 +允许设置自定义的cwnd。 如果IW默认为10(对于所有的发行版,只有一些?) 如何看待当前的IW在特定的编译内核上? 引用: http://monolight.cc/2010/12/increasing-tcp-initial-congestion-window/ http://www.igvita.com/2011/10/20/faster-web-vs-tcp-slow-start/

为什么FIN_WAIT2状态下的连接没有被Linux内核closures?

我在一个长期的过程中遇到了一个问题: kube-proxy是Kubernetes的一部分。 问题是有时连接处于FIN_WAIT2状态。 $ sudo netstat -tpn | grep FIN_WAIT2 tcp6 0 0 10.244.0.1:33132 10.244.0.35:48936 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:48340 10.244.0.35:56339 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:52619 10.244.0.35:57859 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:33132 10.244.0.50:36466 FIN_WAIT2 14125/kube-proxy 随着时间的推移,这些连接会累积起来,从而导致stream程失败。 我已经向Kubernetes bug跟踪器报告了一个问题 ,但是我想知道为什么这样的连接没有被Linux内核closures。 根据它的文档 (searchtcp_fin_timeout),FIN_WAIT2状态下的连接应该在X秒后被内核closures,其中X可以从/ proc中读取。 在我的机器上它被设置为60: $ cat /proc/sys/net/ipv4/tcp_fin_timeout 60 所以如果我正确地理解这样的连接应该被closures60秒。 但事实并非如此,他们处于这种状态几个小时。 虽然我也明白,FIN_WAIT2连接是非常不寻常的(这意味着主机正在等待从连接的远程端可能已经消失一些确认)我不明白为什么这些连接不被系统“closures” 。 有什么我可以做的吗? […]

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

我有一个2.4.17内核的Linux MIPS路由器。 根fs是一个tmpfs和/ rom是一个cramfs。 tmpfs上有4MB可用内存和3MB空闲空间。 我可以创build一些新的空文件,但接下来的文件会以“空间不足”失败。 但是,我可以将1MB的数据附加到现有文件。 所以我的麻烦是inode计数。 和我的问题: 有没有办法dynamic增加inode? 如果我不能dynamic增加它 – 我在哪里可以增加内核源代码?

如何设置shmall,shmmax,shmni等…一般和postgresql

我用PostgreSQL的文档来设置它,例如这个configuration: >>> cat /proc/meminfo MemTotal: 16345480 kB MemFree: 1770128 kB Buffers: 382184 kB Cached: 10432632 kB SwapCached: 0 kB Active: 9228324 kB Inactive: 4621264 kB Active(anon): 7019996 kB Inactive(anon): 548528 kB Active(file): 2208328 kB Inactive(file): 4072736 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 3432 kB Writeback: 0 kB […]

为什么OOM杀手即使在大量的RAM空闲时也会被调用

在EC2 ebs-backed 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 但为什么ZONE_NORMAL只分配了11MB 15GB的总内存? 还是有其他的原因,内存不足? 机器上的可用RAM(xlarge实例)为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: […]

防止控制台清除屏幕?

启动到Linux时,有时会有一两行快速清除。 我认为其中有些甚至不出现在dmesg中。 如果没有别的,我想在“login:”提示符之前禁止清除。 有一个内核命令或sysctl,我可以设置,以防止这种情况,我可以在启动后在控制台屏幕上阅读它们?

GRUB“某些模块可能从核心映像丢失”错误

一个硬盘从我的RAID崩溃,我添加了一个新的硬盘。 现在我想把GRUB安装到新的硬盘上:用grub-install /dev/sdb 。 我得到这些错误: Installing for i386-pc platform. grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image.. grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image.. Installation finished. No error reported. 在update-grub2我得到: Generating grub configuration file … /usr/sbin/grub-probe: warning: Couldn't find physical […]

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

我得到臭名昭着的aacraid:主机适配器中止请求错误与我的新的Adaptec RAID控制器在高I / O。 我已经阅读了几个论坛,甚至Adaptecs ,将/ sys / block / sdX / device / timeout值设置为45将会解决这个问题。 不过,我运行Ubuntu Server 12.04,默认情况下这个值已经是45。 我也尝试了下一个build议,即将我的主板的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. […]

CPU亲和力如何与Linux中的cgroups交互?

我试图在一组隔离的CPU上运行multithreading基准testing。 长话短说,我最初尝试使用isolcpus和taskset ,但遇到了问题 。 现在我正在玩cgroups / cset。 我认为“简单的” cset shield用例应该很好地工作。 我有4个核心,所以我想使用核心1-3进行基准testing(我也将这些核心configuration为自适应刻度模式),然后核心0可以用于其他任何事情。 遵循这个教程,它应该像下面这样简单: $ sudo cset shield -c 1-3 cset: –> shielding modified with: cset: "system" cpuset of CPUSPEC(0) with 105 tasks running cset: "user" cpuset of CPUSPEC(1-3) with 0 tasks running 所以现在我们有一个孤立的“盾牌”(用户密码)和核心0是其他任何东西(系统密码)。 好吧,看起来不错。 现在让我们看看htop 。 这些进程应该都已经迁移到CPU 0上: 咦? 一些过程显示为在屏蔽内核上运行。 为了排除htop有bug的情况,我也尝试使用taskset来检查显示在屏蔽中的进程的亲和性掩码。 也许这些任务是不可移动的? 让我们在htop上采集一个显示为在CPU3上运行的任意进程(应该在屏蔽中),并根据cset来查看它是否出现在系统cgroup中: $ cset shield […]

找出哪些任务正在产生大量的在Linux上下文切换

根据vmstat,我的Linux服务器(2xCore2 Duo 2.5 GHz)每秒钟处理大约20k个上下文切换。 # vmstat 3 procs ———–memory———- —swap– —–io—- -system– —-cpu—- rb swpd free buff cache si so bi bo in cs us sy id wa 2 0 7292 249472 82340 2291972 0 0 0 0 0 0 7 13 79 0 0 0 7292 251808 82344 2291968 0 0 0 184 24 […]