我有一个debian与apache2和php5-cgi运行挤压。 请参阅我的munin中的以下统计数据: http : //imageshack.us/photo/my-images/545/multipscharts.png/ 我从昨天开始运行这些每个进程的统计信息,我很惊讶地发现php这样的密集使用以及apache进程的高内存使用。 更多数据:avg(1day)apache2:30个繁忙的服务器,9个空闲Avg apache访问:340 /分钟 现在,我想知道如何减lessphp的CPU使用率和/或Apache的内存使用量。 请注意,我已经通过nginx服务器几乎所有的静态文件(这不是在这些统计数据)。 另外,我显然正在使用mpm_prefork_module。 我的apache2的一般设置如下所示: LockFile ${APACHE_LOCK_DIR}/accept.lock PidFile ${APACHE_PID_FILE} Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 <IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 </IfModule> HostnameLookups Off Include mods-enabled/*.load Include mods-enabled/*.conf Include conf.d/ Include sites-enabled/ GracefulShutDownTimeout 3 AddOutputFilter INCLUDES .shtml AddType text/html […]
我有一个服务器,使我的局域网路由(Linux,CentOS)。 我想有合法监听的可能性:我希望能够看到从我的局域网(date,MAC,源IP,目标IP,协议,端口,以及一些其他相关的东西networking连接)。 这是已经在Linux中实现,还是我需要编写自己的软件? 任何想法将不胜感激。
我们有一个长期的生产问题,某些服务器上的cron定期报告以下错误 – sudo: uid NNN does not exist in the passwd file! 用户确实存在,实际上它是cron用户的用户名。 该用户的crontab中有7个作业,格式为 * * * * * sudo /run/this/every_minute 0,5,10,15,20,25,30,35,40,45,50,55 * * * * sudo /run/this/every_5mins 10,40 * * * * sudo /run/this/every_30mins … 0 11 * * 6 sudo /run/this/once_per_week every_5mins作业有时会修改/ etc / passwd,但以primefaces方式。 它永远不会触及有问题的用户标识,而且当我比较我们的/ etc / passwd更改的日志和我们收到此错误的时间时,没有关联。 我查看了正在使用的版本(1.6.8p12)的sudo代码,这个错误来自C系统调用getpwnam,返回一个空的passwd结构指针。 除了显而易见的原因之外,还可能由于EINTR,EIO,EMFILE,ENFILE或ENOMEM而失败。 sudo不区分未find的用户名和这些其他错误情况。 我想我可以假设cron隔绝了EIO和EINTR。 […]
我需要在系统启动时从Ubuntu设置SSH隧道。 我有脚本在Debian挤压下运行良好。 在Ubuntu下,su命令需要input一个破坏启动脚本的用户密码。 详细信息:在守护进程启动脚本中,autossh以每个通道的特定用户身份启动。 这些用户之前用adduser … –disabled-password创buildadduser … –disabled-password 启动脚本中的以下行: su -s /bin/sh $USER -c "$AUTOSSH $TUNNEL" 会生成密码提示(在Ubuntu下),即使隧道用户的PW应该被禁用。 这会停止脚本,以便服务不会启动。 我已经尝试删除隧道用户的PW(如果在创build过程中创build了一些std PW),但是这并没有改变任何东西。 networkingsearch没有带来解决scheme。 如果需要,我可以提供密码作为su命令的参数,但找不到这样的选项。 任何想法如何解决这个问题? 谢谢!
*注意:我很难决定在服务器故障中应该怎么做,以及超级用户应该怎么做,如果有些好心的pipe理员决定这是错误的地方,请移动它 – 非常感谢。 我正在实施一个基本的高可用性系统。 我只想在硬件故障的情况下通知故障转移。 但是,我确实有服务器定期切换angular色。 我有一个在备份上运行的track_script,它会在一个时间间隔(每周一次,每月一次,不pipe什么)上改变0到1之间的返回值。 在返回0时,优先级高于主机的优先级,返回1时优先级再次降低。 这样他们在configuration的时间间隔上交换地点。 问题:我能做些什么来说明由我的脚本引起的交换机和由于其中一台服务器死亡而引起的交换机之间的区别? 我当然希望在出现实际问题时得到通知,但并不是每次服务器都由于脚本而改变位置。 我发现版本1.2.7有snmp的支持,我可以用它来获取一些可以告诉我的信息,但说实话,我以前从来没有用过snmp,我也不知道如何得到我想要的信息(我的谷歌foo失败了我)。
我有一个服务器,我运行工作进程,mmap serveral相当大的只读“字典”文件(共约8GB)。 testing表明,他们只能在这些文件中只有大约1GB左右的页面。 在同一台服务器上,我运行另一个顺序读取大文件的进程,合并一些更新,并将结果写入这个巨大文件的新版本。 除了这个“合并”过程和“工作者”过程之外,服务器上没有其他的主要活动。 所以通常情况下,工人应该受到CPU限制,合并应该是磁盘的。 但我所看到的是,工人们经常扼杀主要的页面错误。 合并使用大约20GB的RSS和机器有48GB。 有4名工人。 他们有2GB的RSS每个,只有600MB的共享(而不是预期的1GB的热页)。 不知何故,内存的其余部分主要由fscaching使用。 有没有办法“优先”我mmaped文件的热页面内存? 我试图madvise(MADV_WILLNEED),但似乎没有帮助。 也许有一个与cgroups或sysctls解决scheme? $免费 caching总共使用的空闲共享缓冲区 Mem:49324064 48863392 460672 0 22520 25409896 – / + buffers / cache:23430976 25893088 交换:0 0 0 $ uname -a Linux dev-kiwi02 3.2.0-25-server#40-Ubuntu SMP Fri May 25 13:12:35 UTC 2012 x86_64 GNU / Linux PS在StackOverflow上已经问过这个问题,但看起来像ServerFault更合适。
我试图用tshark解密捕获的wpa-pskstream量,但是它不能识别我想要覆盖的选项。 这个选项允许我指定一个PSK来解密。 我使用的是Backtrack R3中的tshark 1.8.1。 # tshark -o wlan.wep_key1:wpa-pwd:foo:bar tshark: -o flag "wlan.wep_key1:wpa-pwd:foo:bar" specifies unknown preference 从其他post看来,这个选项已经在( 这里和这里 )之前工作。
在作为NIS客户机的一些Linux机器上(SLES 11.1),我可以以root身份执行: ypcat shadow.byname 并获得输出,即一些encryption密码行等信息。 在同一个Linux机器上,如果我运行与无特权用户相同的命令,我会得到 No such map shadow.byname. Reason: No such map in server's domain 现在我很惊讶。 我的好老知道,NIS中的影子密码是荒谬的,因为在协议中没有访问控制或validation,因此每个(非特权用户)都可以访问影子图,从而获得encryption的密码。 很明显,我们在这里有一个不同的图片。 不幸的是,我没有访问NIS服务器来弄清楚发生了什么。 我唯一的猜测是,NIS的主人给出的地图只是来自特权端口(> 1024)的客户端,但这只是一个没有教养的猜测。 目前的NIS实现中有哪些机制可以导致类似上述的行为? 他们如何“安全”? 可以轻易绕开吗? 或者是NIS中的影子密码和旧的影子文件一样安全?
我有以下设置: 两台运行双主节点的DRBD服务器与OCFS2 两个虚拟ips,每个服务器一个心跳 循环法DNS在两个vIP之间对NFS进行负载平衡 closuresServer1一段时间,导致Server2接pipevIP进行故障转移。 但是,当Server1返回时 – 即使DRBD正在运行同步(并因此不是最新的),一旦心跳再次获得连接,它将接pipe指定的vIP。 一旦Server1再次与Server2同步,我怎样才能configuration心跳来执行故障恢复? (而不是之前)
我有一个32位的二进制(在64位主机上运行)单独启动时无法启动,加载共享库(无法打开共享对象文件:没有这样的文件或目录)时返回一个错误。 但是,当我使用ltrace或strace启动它时,它运行得非常好(我试图find失败点)… 怎么了? 我检查了存在的库,我试图把它添加到LD_LIBRARY_PATH,我也检查/lib/ld-linux.so.2存在… … – 主机正在运行RedHat-EL 5.6 …