Questions tagged «linux»

这些问题通常与Linux有关-并非特定于特定发行版。如果问题恰好在Linux环境中,请在问题正文中指定Linux发行版,但不要使用/ linux标记。


2
如何找出进程当前正在写入哪个文件
我的情况是,某个特定过程(在本例中为Thunderbird)有时不响应用户输入一分钟左右。我发现iotop在这段时间内使用了它,它在磁盘上写了很多东西,现在我想找出它要写到哪个文件,但是不幸的是,iotop每个进程只提供统计信息,而不是每个打开的文件(描述符)。 我知道我可以lsof用来找出进程当前打开了哪些文件,但是Thunderbird当然有很多文件可以打开,所以这没什么用。iostat仅显示每个设备的统计信息。 该问题仅是随机发生的,它可能要花一些时间才能出现,所以我希望我不必跟踪Thunderbird并浏览冗长的日志以找出写入次数最多的文件。

2
ls -f的意义是什么(或者为什么会这样挂?)
我有一个包含约100,000个文件的目录。ls -f挂了一分钟以上。我运行了strace,立即开始看到getdents,因此ls显然正在读取目录。我还看到了对brk的大量调用,因此ls显然正在缓冲内存中的内容。我编写了一个简单的程序,该程序调用readdir并输出文件名,并且它会立即响应。但是ls -f不提供输出。是什么赋予了?我以为-f的全部要点是它使ls除了readdir外什么也不做。有没有一种可移植的,可靠的方式来列出目录的内容?(请注意,这是Linux上gn​​u的coreutils中的ls。) -编辑- 有一个别名,但是“ / bin / ls -1f> / dev / null”需要8到15秒,“ / bin / ls -1fx> / dev / null”需要4到11秒,但是程序很简单readdir只需要0.0111秒。我应该怎么做才能使牛不吮吸?
9 linux  ls  gnu  coreutils 

2
2.6.30.5 Linux内核中的struct task_struct定义在哪里?
在2.6.15版内核中,我知道可以重写task_struct文件(include / linux / sched.h),例如: struct task_struct { unsigned did_exec:1; pid_t pid; pid_t tgid; ... char hide; } 但是,不幸的是,当我升级到2.6.30.5版本时,我浏览了同一个文件,只是找到的声明task_struct,例如: struct task_struct; 而且我不知道为指定自己的文件应该参考哪个文件task_struct?有人能帮我吗?

2
如何在ls和mv中使用ms-dos样式的通配符?
我有一个来自MS-DOS背景的不幸经历-但至少这使我意识到Linux的功能强大得多。我一直在努力使Linux-Fu达到同等水平,但是使用DOS可以完成几件事,但我不确定如何最轻松地使用Linux 来完成: 重命名多个文件-使用两个通配符 c:\> dir Directory of c:\ file1.txt file2.txt file3.txt file4.txt c:\>rename *.txt *.bak c:\> dir Directory of c:\ file1.bak file2.bak file3.bak file4.bak 我知道我可以find -exec在这里使用,但是有可能使用较短的语法-也许mv带有一些特殊的标志或语法?我猜想关键是第二个 *通配符,因为linux的第一个不应该有问题(即我知道如何选择要使用通配符重命名的文件) 重命名单个文件-使用一个通配符 c:\> dir Directory of c:\ file1.txt c:\>rename file1.txt *.bak c:\> dir Directory of c:\ file1.bak 重命名冗长且笨拙的文件名时,这将特别有用。我以为也许我可以用mv file1.txt $1.bak它最终file1.txt.bak接受,但我不确定您是否可以$1使用shell命令内联引用参数。同样,在此特定情况下,ms-dos如何对*通配符进行盲目化以用作部分文件名的捕获/替换匹配也很方便。 使用通配符过滤目录列表 c:\> dir Directory …

9
如何编写系统登录测试?
我已经编写了一个Python CGI脚本来调用bash命令,它需要测试主机上的成功登录。 如何为此编写测试? 例如,我可以创建一个bash脚本来针对主机上的注册用户测试给定的用户名和密码组合吗?

3
检查网线是否插入而未打开接口
我正在尝试识别约20个远程服务器上的NIC(每个服务器上2-6个NIC)。首先,我想确定那些可供使用的和免费的。如何检查物理媒体的状态?我知道一些方法,其中包括ifconfig|grep RUNNING,ethtool,cat /sys/class/net/eth0/carrier,但他们所需要的接口了。我不想提出所有接口。不知道为什么,但是我不喜欢启用但尚未配置网络中的接口。有办法避免这种情况吗? 还是我只是错了,所有接口都已启动(未配置)没有什么不好呢?即使已插入?

1
chcon:使用SELinux安装nagios时,无法将部分上下文应用于未标记的文件
我正在使用SELINUX = enforcing在CentOS上设置Nagios核心。 我试着跑 chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ 按照手册中的建议,但出现以下错误消息: chcon: can't apply partial context to unlabeled file `cmd.cgi' chcon: can't apply partial context to unlabeled file `trends.cgi' chcon: can't apply partial context to unlabeled file `histogram.cgi' chcon: can't apply partial context to unlabeled file `avail.cgi' chcon: can't apply partial …

2
Linux中最少的TCP MSS
Linux中的TCP MSS必须至少为88(include / net / tcp.h): /* Minimal accepted MSS. It is (60+60+8) - (20+20). */ #define TCP_MIN_MSS 88U 我的问题是:他们从哪里想到“ 60 + 60 + 8”,为什么?我得到20 + 20来自IP标头+ TCP标头。 编辑:仔细查看标题之后,公式对我来说是这样的: (MAX_IP_HDR + MAX_TCP_HDR + MIN_IP_FRAG) - (MIN_IP_HDR + MIN_TCP_HDR) 问题仍然存在:为什么?为什么Linux内核使用此公式,从而禁止(强制流)20个字节的TCP段?在这里想iperf。 EDIT2:这是我的用例。通过在套接字/连接上强制使用低MSS,堆栈发送的所有数据包的大小都将减小。我希望在与iperf一起进行数据包/秒测试时设置较低的MSS。由于此MSS的下限,我无法获得小于128字节(142字节的以太网帧)的IP数据包!我希望按照RFC 2544尽可能接近64字节的以太网帧大小。从理论上讲,这应该是可能的:18 + 20 + 20 <64。

1
自定义内核:模块内置时无法加载固件
我想内置所有模块,但是失败了iwlagn: iwlagn 0000:03:00.0: request for firmware file 'iwlwifi-6000-4.ucode' failed. iwlagn 0000:03:00.0: no suitable firmware found! 微代码文件存在于其中/lib/firmware,如果我将其编译iwlagn为模块,则整个程序就可以正常工作。我不知道它在哪里寻找文件或出了什么问题-有什么想法吗?


4
如何确定当前的网络利用率?
我想显示网站上Debian框的一个界面的当前网络利用率(带宽利用率)。它不应该是非常详尽或精确的,只是一个简单的数字,例如“ 52 Mbit / s”。 诸如此类的典型网络带宽监视器iftop使我无法简单地提取此类值。 如何最好地找回它? 例如,我想我可能/proc/net/dev每隔几分钟就解析一次。虽然不确定这是否真的是最好的方法。

2
什么不是特定于外壳的?
在某些答案下,我看到一些建议不要在答案中使用特定于Shell的命令的注释。 我如何知道所有shell中都存在哪些命令,运算符等?有标准清单吗? man builtins给出命令列表。这些是我可以在所有shell中都能使用的可移植shell脚本中唯一使用的命令吗? 内置可以是特定于外壳的吗? Linux的标准是否与其他Unix的标准不同? 语法呢?标点符号,运算符等在某些shell中可以不同吗?

3
仅减慢一个过程来调节CPU温度
我有一个程序。当它运行时,CPU温度从50摄氏度升高到80摄氏度,这是我主要关心的问题。 我可以控制CPU频率来降低​​它的速度,但是我也不想降低其他进程的速度。 是否有可能在不影响其他进程的情况下减慢特定进程的速度以保持CPU凉爽? 我的操作系统是Ubuntu 10.10。 我尝试通过设置进程的优先级,但nice -n 15 myprogram不确定是否可以使用。CPU高77摄氏度。 是否nice仅设置其他进程的相对优先级?即,如果其他进程未在运行,该运行良好的进程会快速运行吗?我想将整个过程设置为缓慢运行。
9 linux  process 

2
Cleancache与Zram?
我这里有一台旧笔记本电脑,只有512 MB RAM。由于有几个内核版本,我正在使用zram将其中的256 MB转换为压缩的ramdisk,然后将其用作交换。事实证明,这非常成功,并且系统的响应速度更快,(硬盘支持的)交换使用率大大降低,从而降低了系统的运行速度。 从linux 3.0开始,内核还包含cleancache,它使用zram之类的后端作为后端,可以透明地压缩页面缓存中的页面。据我所知,这与zram不同。 我应该在笔记本电脑上同时启用两者吗?还是cleancache实际上取代了zram解决方案? 编辑:我已经找到了这个gentoo论坛链接,似乎还必须启用CONFIG_ZCACHE它,然后使cleancache使用zram来获取类似于我以前的内容。因此,似乎我启用了所有这些功能,之后不再显式使用zram。有人可以确认吗?
9 linux  kernel  swap  cache  zram 

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.