您好我正在Linux机器(更具体地说,CentOS 6)上运行一些延迟敏感的程序,我不希望进程的线程被抢先。 所以在我的计划中,第一步是设置线程的cpu关系,以便线程在不同的核心上运行,所以它们不会相互抢占。 然后,第二步是确保系统中的其他进程不在这些内核上运行。 所以我的问题是:是否有可能限制整个系统运行在某些核心,除了这个过程? 这应该适用于未来任何新创build的stream程。
我知道一个进程根据/lib/udev/rules.d/75-persistent-net-generator.rules中的规则生成持久性网卡名称。 我也知道如何完全禁用这个过程,一个简单的 echo '#' > /etc/udev/rules.d/75-persistent-net-generator.rules 但我读过我也可以写我自己的规则文件给这个接口一个名字 – 持久化规则生成器忽略了接口,如果一个名字已经设置了“(/etc/udev/rules.d/README确认这个有可能)。 你能提供关于如何编写这些规则的说明和/或例子吗? (我主要关心Debian / Ubuntu,而CentOS则less一些)。 在我的情况下,我想添加如下规则: 具有MAC A或B的卡应该被命名为eth0 MAC C或D卡应该被命名为eth1 按照默认的命名scheme 作为为什么我要编写自定义规则的具体示例:我有两个相同的服务器,一个板载LAN和一个PCI LAN。 在硬件故障的情况下,我希望能够将硬盘从硬件#1移动到硬件#2,重要的是eth0继续指向板卡和eth1到PCI卡(没有人想在中间布线的HW故障恐慌)。 我目前的解决方法的工作,但是是很多工作[1],所以我想知道如果写自定义规则将允许我expression上述规则 [1]在硬件#1中安装操作系统,并保留/etc/udev/rules.d/70-persistent-net.rules的副本。 将磁盘移到HW#2并保留同一文件的第二个副本。 连接两个副本并手动编辑NAME =“ethX”部分。 用我的版本replace/etc/udev/rules.d/70-persistent-net.rules。 最后禁用自动创build一个新的70-persistent-net.rules使用 echo '#' > /etc/udev/rules.d/75-persistent-net-generator.rules
我正在使用Ubuntu 12.04和XFS(内核3.2.0-38-generic)。 由于XFS inodecaching使用的内存太多,因此我想限制用于cachingXFS inode的对象数量。 根据手册,我可以通过写限制/ proc / slabinfo来限制数量。 但是即使拥有超级用户权限,我也无法写入/ proc / slabinfo。 $ echo“xfs_inode 1024 0 0”| sudo tee / proc / slabinfo xfs_inode 1024 0 0 tee:/ proc / slabinfo:input/输出错误 问题是什么? 有没有办法限制slabcaching中的对象数量?
我想用Postfix来实现以下function: 通过黑名单运行所有电子邮件 允许任何客户端发送到域列表 允许一些客户端发送到任何域 这就是我所拥有的:(postfix在10.0.8.0上,一些发件人是10.0.8.0和10.0.9.0) mynetworks_style = subnet smtpd_recipient_restrictions = check_recipient_access sqlite:/etc/postfix/access-bl.query, check_client_access hash:/etc/postfix/trusted_clients, check_recipie nt_access hash:/etc/postfix/local_domains, reject_unauth_destination, permit 所以,现在黑名单的作品。 文件/etc/postfix/trusted_clients包含谁可以发送到任何地方(3),文件/etc/postfix/local_domains包含你可以发送的地方(2)。 这两个都很好,他们回来了。 我的问题是让所有三个一起工作。 不知道是否是订购问题。 目前从10.0.9.17发送一个testing,我的Relay access denied 。 如果我添加: mynetworks = 10.0.8.0/24 10.0.9.0/24 那么任何人都可以发送到任何地方,所以#2不工作。 Ubuntu 14.04上的Postfix版本是2.10。 有任何想法吗? 输出postconf | grep restrictions postconf | grep restrictions : smtpd_client_restrictions = smtpd_data_restrictions = smtpd_end_of_data_restrictions = smtpd_etrn_restrictions = smtpd_helo_restrictions […]
在一个正常的块设备上,你可以像这样改变I / O调度器: # cat /sys/block/hda/queue/scheduler noop anticipatory deadline [cfq] # echo anticipatory > /sys/block/hda/queue/scheduler # cat /sys/block/hda/queue/scheduler noop [anticipatory] deadline cfq 如何控制NFS卷的设置,或者我只需要在启动configuration中全局设置 elevator=noop 或类似?
我遇到了一个问题,就是允许Apache自动从一个git仓库中获取一个.htaccess文件的写入权限。 这是我的过程: 我以新创build的用户“ webadmin ”login,已经添加到组“ apache ”(我在CentOS上,因此它相当于www-data ),我创build了一个空目录: /var/www/html/test 我已经确保在这个目录下,我做了以下工作: $ umask 002 $ chown -R apache:apache /var/www/html/test $ chmod -R g+rw /var/www/html/test 这是为了确保该目录由组 “ apache ”所有,并且因为我的用户 “ webadmin ”是该组的一部分,所以我认为我用这个用户添加的任何东西也将被apache用户写入(php脚本)。 仍然使用webadmin用户,然后运行一个 git clone myrepo.git . 这将我的WordPress网站文件下拉到目录中。 包含在这是一个.htaccess文件。 这个文件需要被WordPress写入,以便它可以修改规则。 所有拉下来的文件都是由apache的 webadmin拥有的。 无论什么原因,.htaccess文件不是默认情况下由apache写入,直到我再次运行: $ chmod -R g+rw /var/www/html/test 为什么我要再次运行这个命令? 有没有什么办法可以让这个文件可以自动写入,而不需要运行-R g+rw命令呢,
我有一台Debian Wheezy机器,我试图用桥接networking来设置KVM。 不幸的是,这座桥似乎没有正确的转发stream量。 我的设置如下: 物理机器有一个eth0连接到IP地址为192.168.0.1的路由器。 这个eth0是网桥接口br0的成员,它被静态configuration为IP地址192.168.0.101。 虚拟机的networking接口是物理主机上的vnet0和虚拟机中的eth0 。 在虚拟机中,接口静态configuration为IP地址192.168.0.110。 从物理主机,我可以ping虚拟机和路由器: # ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. 64 bytes from 192.168.0.1: icmp_req=1 ttl=64 time=0.331 ms # ping 192.168.0.110 PING 192.168.0.110 (192.168.0.110) 56(84) bytes of data. 64 bytes from 192.168.0.110: icmp_req=1 ttl=64 time=0.417 ms 在虚拟机上,我可以ping物理机器: # ping 192.168.0.101: PING 192.168.0.101 (192.168.0.101) 56(84) bytes […]
我想创build一个tar文件,排除具有许多子文件夹和文件的特定文件夹,但只保留被排除的主文件夹。 解释: -project |-dir1 |-dir2 |-cache |-logs |-dir3 –dir4 我想我的焦油排除caching和日志内容(文件和文件夹),但保存在tar文件中的空文件夹。 如果我使用–exclude = project / cache,它将从文件中排除文件夹。 我怎样才能做到这一点 ?
我在tun0接口上检测到了丢包。 他们似乎是由低txqueuelen设置造成的。 现在,当我增加了networking设备的txqueuelen值,并没有更多的下降 – 我想知道有什么办法来获得实际的networking设备缓冲区的当前使用情况?
我知道这是可能的numa模式设置为“交错”(见下面注意)为特定的过程使用numactrl –interleave ,但我想知道是否有可能使这个系统范围默认(aka改变“系统政策”)。 例如,如果有一个内核启动标志来实现这个? 注意:在这里我正在讨论在NUMA节点上交叉分配页面的内核行为 – 而不是在交叉caching行的BIOS级别的内存控制器行为设置