我们需要在less数几台服务器上运行pt-stalk来关注mySQL,每当服务器重新启动时我都会手动启动它。 一个小小的search引擎出现了一个pt-stalk的初始化脚本 ,它似乎工作得很好。 [我稍微修改过的版本包括在这篇文章的底部] 如何通过ssh来推送脚本和configuration需要很长的时间[长篇故事,请不要问]所以我决定只login到20多台服务器,手动设置一切,一切正常。 几天后,我的同事评论说,他正在收到电子邮件,但我显然不是,而且看起来我把错误的电子邮件放在configuration中。 这一次,我已经想出了如何通过SSH推动改变,并完成了一切: for server in `cat serverlist.txt`; do ssh -t $server sudo -i service pt-stalk restart done 这就是pt-stalk停止在每台服务器上工作的地方: 2013_08_23_11_43_20 Caught signal, exiting 2013_08_23_11_43_20 Exiting because OKTORUN is false 2013_08_23_11_43_20 /usr/bin/pt-stalk exit status 1 2013_08_23_11_43_22 Starting /usr/bin/pt-stalk –function=status –variable=Threads_connected –threshold=100 –match= –cycles=5 –interval=1 –iterations= –run-time=30 –sleep=300 –dest=/var/lib/pt-stalk –prefix= –[email protected] –log=/var/log/pt-stalk.log –pid=/var/run/pt-stalk.pid […]
我有一台运行Ubuntu 12.04 LTS的服务器,只有一个驱动器。 机箱中还有2个空的热插拔托架。 我想添加一个RAID 1给系统添加一点冗余。 目前的单磁盘分区与ubunutu LVM。 / boot分区是一个单独的ext2分区。 The LVM partitions: /dev/mapper/vg-home /dev/mapper/vg-usr /dev/mapper/vg-usr /dev/mapper/vg-root 我显然不想丢失任何数据,我试图阻止重新安装操作系统和重新configuration一切。 (该机器用于科学计算,它有一个附加的数据存储QNAP系统)。 在/ home上执行读/写操作时,我的一个用户正在获取I / O错误。 我怀疑sata控制器是失败的,过去有一些sata电缆不好的问题。 我决定添加一个SATA控制器,现在我正在设置一个RAID 1以防万一错误是由一个失败的硬盘产生的。 我打开更多的select,但我想用一个RAIDarrays中的2个新的完全replace可能失败的驱动器。 我在想:现在,我在系统中安装了2个新的驱动器。 我将在两个新驱动器上configuration硬件RAID 1arrays。 使用clonezilla或dd并克隆当前单个操作系统磁盘到RAIDarrays删除原来的操作系统磁盘并启动到新的arrays 这会工作吗? 我需要修改/ boot分区才能启动到新的RAID? 不知道是否有可能,因为有LVM分区 谢谢,任何input赞赏。 也打开其他选项。
我正在与一些蹩脚的(自定义)服务器软件,它不接受它的连接正确(由Java程序员谁从来没有触及套接字,更不用说线程)的Java写的。 我的猜测是线程在客户端线程中正确接受套接字之前即将死亡。 我不能确定,因为软件目前被重新实现,所以它并不重要。 旧版本必须保持运行,直到新版本上线,尽可能可靠,但没有花费在debugging旧代码库上的时间和金钱。 该错误显示在下面的netstat输出中; 一些连接永远不会从内核转移到使用空间(这就是我对此的解释,更好的解释是受欢迎的): Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp6 228 0 192.0.2.105:1988 46.23.248.10:7925 ESTABLISHED – tcp6 0 0 192.0.2.105:1988 221.130.33.37:9826 ESTABLISHED 14741/java tcp6 0 0 192.0.2.105:1988 46.23.248.2:5867 ESTABLISHED 14741/java tcp6 2677 0 192.0.2.105:1988 221.130.33.37:15688 ESTABLISHED – tcp6 3375 0 192.0.2.105:1988 221.130.33.36:3045 ESTABLISHED – tcp6 14742 0 192.0.2.105:1988 […]
RKHunter报告文件属性的变化,但奇怪的是哈希长度在存储的哈希中的当前哈希上是不同的。 [11:47:13] Warning: The file properties have changed: [11:47:13] File: /sbin/chkconfig [11:47:13] Current hash: f01e642124a8ed7dc5f0fa6b5a7d33e214e3c752 [11:47:13] Stored hash : d495988a86fd9a3c308ea869e5f3c1de42d58e830d0c5ffbcba25db8e8b641b0 [11:47:13] Current size: 35264 Stored size: 31728 这是configuration错误还是真正的问题? 更新: RKHunter警告用不同长度的散列检查的所有文件。 这似乎是使用不同散列algorithm的问题。
我得到这个错误: *** glibc detected *** /usr/sbin/tshark: double free or corruption 而在做如下,有什么想法为什么? #!/bin/bash trap 'my_exit; exit' SIGINT SIGQUIT count=0 /usr/sbin/tshark -i bond1.1 -f "port 1111" -w /test/test_1.pcap > /dev/null 2>&1 & PID1=$! /usr/sbin/tshark -i bond1.6 -f "port 8080" -w /test/test_2.pcap > /dev/null 2>&1 & PID2=$! function my_exit() { kill $PID1 kill $PID2 } while : do […]
我有一对主机之间的路由非常糟糕,但我有第三个主机,有非常好的ping每个。 为了解决这个不好的路由问题,我设置了第三个主机,在这两个主机之间来回传送数据包。 这第三个主机有一个IP地址,不用于其他任何东西。 我的理想configuration是,当主机1向主机3发送一个数据包时,主机3自动地将源地址和目的地址进行NAT,replacesource = host3和destination = host2,然后转发数据包。 反过来应该是真的:如果host2试图响应,数据包应该返回到host3,它会将其转换回源= host3,destination = host1。 不需要连接跟踪 – 这可以完全无状态地完成。 卡住的地方是让DNAT和SNAT同时工作。 看来,如果一个数据包由DNAT处理,它会自动标记为跳过SNAT规则:DNAT工作正常,但源地址没有被翻译。 什么是适当的iptablesconfiguration来实现这一目标?
我对RAID很新,而且遇到问题。 我的服务器警告说有些硬盘有问题,所以我调查了一下: root@server:~# cat /proc/mdstat Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty] md1 : active raid1 sda1[2](F) sdb1[1] 10485696 blocks [2/1] [_U] md2 : active raid1 sda2[2](F) sdb2[1] 965746624 blocks [2/1] [_U] unused devices: <none> 看起来sda1和sda2有问题。 所以我试图删除sda1 root@server:~# mdadm /dev/md1 -r /dev/sda1 mdadm: hot removed /dev/sda1 from /dev/md1 我试图了解我现在应该做什么:如果我再次尝试添加设备,我会收到以下消息: root@server:~# mdadm […]
我试图编写bash脚本文件从本地机器复制到FTP使用lftp 。 问题是,当有人input无法访问的mkdirpath或put ,则lftp返回: Access failed: 550 /: Device or resource busy 而我的Bash脚本卡住了,并没有终止。 如何在执行下一个命令之前检查是否可以访问资源? 这是我的代码的相关部分: OUTPUT=`lftp -u $USER,$PASS -p $PORT $HOST <<HEREDOCUMENT set ftp:ssl-allow no mkdir $FTP_DIR put $LOCAL_DIR/$LOCAL_FILE -o $FTP_DIR/$FTP_FILE bye HEREDOCUMENT`
我在其中一个主机的last输出中发现了很多类似于这些的行(〜900): trustpor ftpd31576 www.trustport.co Tue Oct 1 10:03 – 10:03 (00:00) trustpor ftpd31575 www.trustport.co Tue Oct 1 10:03 – 10:03 (00:00) trustpor ftpd31574 www.trustport.co Tue Oct 1 10:03 – 10:03 (00:00) trustpor ftpd31573 www.trustport.co Tue Oct 1 10:03 – 10:03 (00:00) trustpor ftpd31572 www.trustport.co Tue Oct 1 10:03 – 10:03 (00:00) trustpor ftpd31571 www.trustport.co Tue […]
作为我们在Linux机器上运行以优化应用程序性能的实验的一部分,我们试图将所有networking中断分配给单个CPU核心。 不幸的是,它似乎没有按照它应该的方式工作。 例如我们在这里有一个中断: [root@shou18librh05 ~]# cat /proc/interrupts | grep 107 107: 0 0 0 0 0 0 0 0 PCI-MSI-X eth-mlx4-0 它目前在哪里处理? [root@shou18librh05 ~]# cat /proc/irq/107/smp_affinity 7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff 试图将其转移到第一个核心: [root@shou18librh05 ~]# echo 1 > /proc/irq/107/smp_affinity 它移动了吗? [root@shou18librh05 ~]# cat /proc/irq/107/smp_affinity 7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff 没有… 有没有人有一个想法,为什么这可能发生? 谷歌search没有给出任何明显的解决scheme/提示… Linux是: [root@shou18librh05 ~]# uname -a Linux shou18librh05 2.6.18-308.el5 #1 SMP Fri Jan […]