Questions tagged «linux»

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


1
inotify是否在写入开始或完成时触发通知?
想象一下两个进程,一个读取器和一个写入器,它们通过ext3 fs上的常规文件进行通信。Reader IN_MODIFY在文件上具有inotify 监视。Writer在单个write()调用中将1000字节写入文件。Reader获取inotify事件,然后调用fstat该文件。读者看到什么? 是否可以保证Reader至少可以取回st_size文件上的1000 ?从我的实验来看,似乎并非如此。 是否可以保证Reader可以实际读取read()1000个字节? 这是在严重的I / O绑定框中发生的。例如,sar显示大约1秒的等待时间。就我而言,阅读器实际上在获取inotify事件之后等待10秒钟stat,然后再调用,并且得到的结果太小。 我希望的是inotify事件在文件准备好之前不会传递。我怀疑实际上正在发生的是inotify事件write()在Writer中的调用期间触发,并且只要准备好了,数据实际上就可供系统上的其他进程使用。在这种情况下,10s是不够的时间。 我想我只是在寻找确认内核实际上实现了我所猜测的inotify方法。另外,是否有任何选择可以改变这种行为? 最后,鉴于这种行为,渗入的意义何在?在获得事件之后,您将减少为轮询文件/目录,直到实际可用数据为止。一直以来都应该这样做,而忽略了inotify。 *** 编辑 ** * * 好吧,就像我经常看到的那样,既然我了解自己的实际工作,那么我所看到的行为实际上是有道理的。^ _ ^ 我实际上是在响应文件所在目录中的IN_CREATE事件。因此,实际上我是根据文件的创建来对文件进行stat()响应,而不一定是IN_MODIFY事件,后者可能会在以后到达。 我将更改代码,以便一旦获得IN_CREATE事件,便会订阅文件本身的IN_MODIFY,并且在获得IN_MODIFY事件之前,我实际上不会尝试读取文件。我意识到那里有一小窗口,我可能会错过对该文件的写操作,但这对于我的应用程序是可以接受的,因为在最坏的情况下,文件将在最大秒数后关闭。
12 linux  files  stat  inotify 



3
探索RAM内容
我正在使用Redis数据库,并想探索应用程序正在使用的RAM的内容。 我觉得为什么要这样做的解释比我要问的问题更有意义。 Redis是一个简单的键值存储,用于存储二进制数据。我认为这是探索诸如编码之类的好地方,并且对我来说很有趣,例如在RAM上浏览以查找二进制数据集,在进行诸如查找简单模式之类的事情;也许探索编写在RAM中搜索的婴儿查询语言的想法。 阅读SICP中有关查询语言的章节后,我就有了这个想法。 关于从哪里开始有什么想法?最初,我想向系统询问“请给我运行该应用程序的地址空间”。
12 linux  memory 

1
如何观察内存带宽?
我有一个嵌入式Linux ARM系统,该系统显示出的吞吐量明显低于以太网和USB上的预期。我怀疑内存可能有所贡献。有没有办法观察在以太网或USB上进行吞吐量测试时消耗的内存带宽?

3
为什么Linux会使我的计算机发热?
我已经在Acer 5740上使用Linux两年了。最近,我注意到我的电脑开始加热并稳定在70度左右。如果我启动Eclipse或ffmpeg或其他工具,则计算机会射击至85-90度。也许这曾经发生过,但我可能忽略了它。 我有Windows 7双引导系统,即使玩游戏也可以达到70度。 我预计Linux会由于驱动程序而发热,但是70度@闲置有点太多。 我之前对此的研究表明: 我的一个朋友使用完全相同的笔记本电脑,但是却配备了ATI卡而不是Intel(出现在我的笔记本中)正在为强度更大的散热问题而苦苦挣扎。他安装了fgrlx,他的笔记本电脑和西伯利亚一样酷。 我试图为我的卡安装英特尔驱动程序。我拥有适用于Intel的最新版本的Xorg和xorg。没有帮助 该问题与发行无关。我已经尝试过Ubuntu,Debian,Fedora和FreeBSD。 启动后温度与时间的关系图相当稳定。没有突然的跳跃。 所有温度均为摄氏温度,对应于 max(acpi -t) 有什么办法吗? 编辑:我的CPU如果缩放到933MHz仍然没有帮助。我找不到笔记本电脑的风扇控制。Acer Aspire One的脚本很少,但我找不到5740的脚本。 我的/proc/acpi/fan文件夹是空的! blah@blah-Laptop:/proc/acpi/fan$ ls -l total 0
12 linux 


3
为什么我的EC2服务器每天会减少10秒钟的时间?
我有一个系统文件,/etc/cron.daily/ntpupdate该文件 ntpdate ntp.ubuntu.com每天运行以与网络时间同步。每天它生成的输出与以下内容非常相似: /etc/cron.daily/ntpupdate: 16 Jan 06:30:42 ntpdate[21446]: step time server 91.189.94.4 offset -12.646804 sec 我不太91.189.94.4确定-12.646804 sec这是什么意思,但是我很确定这意味着我的服务器关闭了大约12秒。但我不知道为什么每天都会减少大约相同的金额。这是运行Ubuntu的Amazon EC2实例。 我只能猜测,它每天会丢失/增加12秒,或者其他某事正在将时间与另一个已关闭12秒的时钟同步,然后重新同步它。 我应该怎么做才能进一步追踪?我在/etc/cron.*目录或用户的cron作业中看不到任何其他cron作业... 更新 只是想与我分享我开始每小时运行一次,以查看某个小时是否会有很大的跳跃。这是每小时的输出: 16 Jan 15:17:04 ntpdate[8346]: adjust time server 91.189.94.4 offset -0.464418 sec 因此,显然每小时的时钟关闭大约半秒,因此每天(24小时)的时钟关闭大约12秒是有意义的。猜猜时钟运行得很快!谢谢!

3
提示用户拒绝Linux安全
当应用程序想要访问分类文件或文件夹(数字签名,SSH密钥,信用卡信息和其他敏感内容)时,是否可以使Linux安全模块(例如AppArmor,SELinux等)提示用户拒绝应用程序可能需要的操作(例如,电子邮件客户端希望根据用户的请求签名电子邮件)。 为易受攻击的应用程序(尤其是Web浏览器和电子邮件客户端)设置严格的默认安全策略,并让用户决定是否需要执行给定的操作,这样可以避免系统的脆弱性,而又不会使用户的状况恶化,这将是有益的。友善。

2
我可以更改cron作业的默认邮件收件人吗?
我相信,如果cronjob有任何输出,它将被邮寄给该工作所属的用户。我认为您也可以MAILTO=vivek@nixcraft.in在cron文件的顶部添加类似内容,以更改将输出发送到的位置。 我是否可以设置一个选项,以便将系统范围内的cron作业通过电子邮件发送给 root 而不是发送给运行它们的用户?(即,这样我就不必在每个用户的cron文件中进行设置)

1
tcpdump从哪个网络堆栈级别获取其信息?
当我徒劳地尝试在此处修复故障的以太网控制器时,我尝试的一件事是在计算机上运行tcpdump。 我发现tcpdump能够检测到ping应用程序认为正在发送的某些ICMP数据包实际上不在线路上,即使它在同一台计算机上运行,​​也很有趣。我在这里复制了这些tcpdump结果: 14:25:01.162331 IP debian.local > 74.125.224.80: ICMP echo request, id 2334, seq 1, length 64 14:25:02.168630 IP debian.local > 74.125.224.80: ICMP echo request, id 2334, seq 2, length 64 14:25:02.228192 IP 74.125.224.80 > debian.local: ICMP echo reply, id 2334, seq 2, length 64 14:25:07.236359 IP debian.local > 74.125.224.80: ICMP …


4
默认情况下,如何使用rsync排除文件?
默认情况下,如何使用rsync排除文件?这是我正常的rsync语法开始的方式: rsync --exclude ".ht*" --exclude "error_log" --exclude ".DS*" --exclude "old" ... 我已经看到了很多有关配置/etc/rsyncd.conf文件的信息,但是对于守护程序而言,这可能比rsync命令更多。 从命令行调用时,是否有一些默认的rsync排除项,就像上面我的默认语法一样?

2
Linux是否具有与Mac OS X命令“ textutil”等效的Linux?
在Mac OS X上,有一个非常方便的命令,称为textutil,可以从终端调用该命令,并允许将文档从一种格式转换为另一种格式。有时我会用它将RTF文件转换为HTML,但它也能够转换doc,docx,odt和其他格式。 我曾经相信这是一个标准的unix命令,但是我找不到它,当我尝试编写sudo apt-get install textutilUbuntu时说它根本不知道是什么textutil...也许我在错误的位置搜索了该命令? 您知道Linux是否存在类似的东西吗?我需要从将在Linux服务器上运行的脚本中调用该命令。

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.