Articles of linux

恢复没有响应的SSH服务器

一台机器与postgres数据库(这是很好的响应)有一个ssh服务nagios nrpe服务。 响应ping。 Postgres按预期执行。 (apache从另一个主机连接) Nagios检查到端口5432(postgres是好的)。 ssh不连接(如上所示)。 通过tty访问与ssh具有相同的响应(屏幕上没有显示) 可以做什么? 我是一个生产服务器。 谢谢。 [root@localmachne ~]# ssh remotemachine -vvvvvvvv OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to remotemachine [XYZT] port 22. debug1: Connection established. debug1: permanently_set_uid: 0/0 debug1: identity file /root/.ssh/identity type -1 […]

如何使用transport_maps覆盖特定域的MX值,但具有某种forms的冗余

我有一个postfix邮件服务器,我想覆盖特定域的MX值。 根据我的理解,这可以通过使用transport_maps来完成 http://www.postfix.org/postconf.5.html#transport_maps 你添加一行到/ etc / postfix / transport: example.com smtp:[9.9.9.9] 使用以下命令生成后期映射文件: postmap哈希:/ etc / postfix / transport 在/etc/postfix/main.cf中添加或编辑一行: transport_maps = hash:/ etc / postfix / transport 重新启动Postfix 我的问题是,当正常使用MX地址,你通常有多个邮件服务器的冗余(以防万一离线)我怎样才能达到一个传输地图,因为它似乎指向一个单独的IP地址相同的事情。 有没有什么办法来设置,以便在第一个失败的情况下尝试多个IP地址。

将分区移动到根分区

我目前坚持限制性的分区scheme,使我的分区填满。 它看起来像这样: /dev/sda7 870G 315G 511G 39% / /dev/sda6 2.0G 271M 1.6G 15% /tmp /dev/sda3 15G 13G 1.5G 90% /usr /dev/sda2 15G 8.6G 5.0G 64% /var /dev/sda1 99M 36M 58M 39% /boot tmpfs 7.9G 0 7.9G 0% /dev/shm 我想将/usr (和/var也可能)中的数据移动到根分区。 我并不关心自己的分区,所以不需要合并。 这样做最好的方法是什么? 目前,我的计划是这样的: cp -R /usr /newusr umount /usr mv /newusr /usr 难道这真的很简单,还是我忽略了一些东西?

tail命令不会更新debugging文件的输出

我知道tail -f / var / log / messages会随着文件内容的更新而在屏幕上保持更新。 但是当我用debugging文件系统的文件尝试同样的事情,它不工作,任何想法? 我试过ftrace,试过这个:tail -f跟踪它不工作? 请注意,我可以通过使用watch -n1 cat trace来查看实际获得的内容。

为什么内核低内存区less于896 MB?

在我的系统内核Lowmem(NORMALZONE)是597424 kb的长度。 据我所知,它应该是最大890 MB。 为什么这个系统使用〜590 MB? 它是可调的吗? 我问这个问题是因为,我在这个系统上面临着低迷的时间 。 所以我想尽可能使用lowmem。 Linux 3.10.24-2#1 SMP Tue Dec 31 07:09:19 EET 2013 i686 i686 i386 GNU / Linux # free -lk total used free shared buffers cached Mem: 37426296 3369432 34056864 0 36048 1373524 Low: 597424 278236 319188 High: 36828872 3091196 33737676 -/+ buffers/cache: 1959860 35466436 Swap: 35318864 […]

为什么我只能连接到我的服务器时,从它产生的stream量?

更新 – 由于从收购的基础设施变化,有一个IP地址冲突。 一旦确定了这一点,行为就会停止,因为交通可以始终路由到正确的位置。 感谢大家的帮助。 我有一个虚拟化的Centos 6.2 FINAL服务器。 机器的目的是在Tomcat上运行Jenkins来自动构build。 随着我的公司被收购,networking基础设施发生了变化,所以一些configuration也改变了。 如果需要,我可以更多地进入历史,但现在,我将关注我的实际症状。 如果试图通过networking通过ssh或http进行交互,机器通常不会作出响应。 机器如果直接login,将与机器交互。 但是,似乎要花一点时间才能最终开始交谈。 也就是说,当我从vm运行traceroute到本地机器时,需要进行一些迭代。 与ping一样 – 在数据包开始通过之前,最多可能需要6次迭代。 一旦机器与其他机器交谈,外部接触是可以实现的。 我可以SSH,并且Jenkins应用程序将通过http进行响应。 然后,通信将最终停止,直到我直接与机器交互以使其与外部世界进行通信(2)之后,回到最初的第一个状态,在此状态下,外部接触是不可能的。 从诊断的angular度来看,我有点不知所措。 正如我刚才所说,这里有一些历史。 该机器最初有一个networking适配器,通过DHCP分配一个IP地址。 然后再添加一个networking适配器,并且IP地址被静态分配。 现在只有一个networking适配器的IP地址分配静态。 我已经看了网上的其他线程,谈论各种可以帮助诊断的命令,但我不知道如何阅读它们。 我想这是没有足够的信息来作出诊断(虽然会很感激,如果是的话),所以我会欣赏进一步阅读材料,采取步骤或澄清问题。 非常感谢你的时间。

mysqlmultithreading的单个查询

我有大的分贝大小8GB,并在这个数据库有900万联系人。 当我们尝试检索所有联系人时,需要将近1或2小时(在某些情况下会导致超时)才能检索所有联系人以执行单个查询。 另外我有8个CPU和24GB内存的Xeon处理器,mysql进程不会跨8个CPU分配。 我的问题是,我们是否可以为单个查询启用multithreading。 等待您的回复

Python脚本通过Amazon SES发送邮件

我正在设置Splunk通过Amazon SES发送电子邮件。 但是在这之前,我发现了一个Python脚本(Splunk使用Python发送邮件),我想testing哪一个不能在我的Linux服务器上工作。 输出如下所示。 我可以使用Sendmail在命令行上发送testing邮件 – 所以我的Amazon SES证书没有任何问题。 不知何故,Python不能正确parsingAuth信息? 产量 [root@HOSTNAME ~]# python ses.py Message length is 47 send: 'ehlo HOSTNAME\r\n' reply: '250-email-smtp.amazonaws.com\r\n' reply: '250-8BITMIME\r\n' reply: '250-SIZE 10485760\r\n' reply: '250-STARTTLS\r\n' reply: '250-AUTH PLAIN LOGIN\r\n' reply: '250 Ok\r\n' reply: retcode (250); Msg: email-smtp.amazonaws.com 8BITMIME SIZE 10485760 STARTTLS AUTH PLAIN LOGIN Ok send: 'STARTTLS\r\n' reply: '220 Ready […]

Linux什么时候内存不足?

我试图build立一个进程意外停止的原因,一种可能是服务器内存不足,但我不确定是否理解了内存和Linux。 从free命令(从我试图解决的问题从同一台机器采取以下输出): total used free shared buffers cached Mem: 991 827 163 0 107 361 -/+ buffers/cache: 358 633 Swap: 0 0 0 最上面的一行表明,这台机器确实使用了大量的内存(只有163 Mb免费),所以如果更多的进程启动(他们这样做),那么我们可能会有内存不足的情况下,各种进程被杀害。 然而,我一直都认为,由于Linux在内存中大量使用缓冲区和caching,可以根据需要使用,所以我应该关注的数字是第二行,这表明〜633 Mb是免费的,在这种情况下,我认为这台机器不太可能会耗尽内存。 那么你能否澄清一下我对Linux和内存的理解,并且帮助我理解Linux何时实际运行内存不足? PS – 这台机器是一个单一目的的机器 – 它运行一个大型networking应用程序的后台进程,这就是它所做的一切。 没有Web服务器,没有数据库,只有一个巨大的Ruby on Rails应用程序作为后台进程运行。 偶尔的cron作业会启动特定的应用程序任务,这些任务会临时在内存中创build另一个rails应用程序实例。

限制Linux用户的Exec命令

我如何限制linux用户可以运行的可执行命令的范围? 例如,我只希望用户能够运行ls命令而没有别的。 如果尝试,例如运行cat ,linux会抛出一个错误或返回null。 我查看了alias命令来设置一个预定义的自定义命令列表,但这并不限制用户运行其他命令。 我其实很想设置alias命令,然后将范围限制在这些范围内。 我也研究了关于限制用户的文档 ,但是仍然不确定如何去做。 范围:我正在使用服务帐户在我们的PHP应用程序中运行ssh命令。 我想限制该服务帐户的命令,以防止有人注入命令到ssh_exec(); – 比如ls和inject | some command | some command 我想我会尝试这个: https : //github.com/ghantoos/lshell