Articles of linux

在Debian上恢复绝望的raid情况

我有一个debian服务器与RAIDarrays的configuration,我不太了解。 它显然有一个两个500GB磁盘的RAIDarrays。 主磁盘有两个分区:/ dev / sda1,其中安装了根FS,以及/ dev / sda2。 我说,因为我搞砸了configuration。 我不知道这是一个RAIDconfiguration,好像第二个磁盘是未使用的,所以我激发了fdisk,并销毁了我在/ dev / sdb上find的每个分区。 我实际上并没有理解sdb上的每个分区都绑定在sda上的分区上。 重新启动后,我的分区都没有出现。 电脑工作,但: ls /dev/sd* 什么都不给出 同样 fdisk -l 也不会返回任何东西,并分开失败,错误,mdadm –detail –scan也不会返回任何内容。 我尝试了任何我能find的东西,但是我没有find任何人,每个设备都在/ dev /中消失了,我不知道该怎么做。 奇怪的是,DF输出: Sys. de fichiers 1K-blocs Utilisé Dispo. Uti% Monté sur /dev/sda1 10080488 6255148 3313272 66% / tmpfs 1018372 0 1018372 0% /lib/init/rw udev 10240 32 10208 […]

使用屏幕监视非交互式脚本(或其他解决scheme)

我有一些自主脚本,通过ssh在远程机器上运行命令。 这些脚本依靠获取stdout,stderr和每个命令运行的返回代码。 我希望能够监视每个目标机器上脚本的进度,以便我能够看到是否有东西被挂起,如果有必要可能会进行干预。 我最初的想法是让脚本在屏幕会话中运行命令,以便人员监视可以简单地使用screen -x附加到会话。 但是,由于屏幕是一个交互式程序,所以从脚本中很难做到这一点。 我可以发送一个命令到屏幕会话与screen -S session -X stuff "command^M" ,但是我没有得到输出并返回代码,我需要回来。 我的第二个想法是把script /path/to/log到~/.bash_profile并将整个会话logging到文件中。 然后监控人员可以简单地拖拽日志文件。 但是,这并不能提供我正在寻找的交互性。 任何想法如何解决这个问题?

哪个共享库需要另一个共享库?

我有我自己的可执行文件,我链接到特定版本的Xerces。 它还使用了一堆其他库,其中一些不是我自己的。 当我在该可执行文件上运行ldd时,发现它需要我期望需要的Xerces版本以及另一个版本。 我假设其他版本来自我链接到其他库。 这里是一个问题:如何找出哪个第三方库需要旧的Xerces? 环境是Linux和Solaris(我的可执行文件是为这两者编译的)。

selectVPS规格

我打算注册一个VPS账户。 在VPS我打算主持〜5 SVN回购,几个基于PHP的低stream量网站,游戏服务器(MineCraft),可能还有一些其他小应用程序。 SVN回购只会每天更新一次或两次,所以他们不会占用太多的磁盘空间或stream量。 这些网站可以是相当丰富的图像,但是拥有很less的访问者。 我不太了解MineCraft服务器。 但是,由于我们将会是〜5名球员,我不认为这会占用很多的stream量或记忆。 现在我的问题。 我需要什么规格? 足够的128MB内存? 我需要多lessstream量/月份?

Apache Logrotate Bash问题

…所以我试图每小时轮stream在亚马逊云自动缩放服务器实例的日志。 我创build了/etc/cron.hourly/logrotate来阅读: #!/bin/bash test -x /usr/sbin/logrotate || exit 0 /usr/sbin/logrotate -f /etc/logrotate.conf 我已经修改/etc/logrotate.d/apache2来读取: /var/log/apache2/*.log { missingok rotate 100 create 640 root adm sharedscripts postrotate neoBucket="widget-chapp/dev/log/"; neoService="apache"; neoDate=$(date +\%Y\%m\%d\%H); echo "hostname: $HOSTNAME"; neoHost=`echo "$HOSTNAME" | sed "s/-//g"`; # prepend neoService and append YYYYMMDDHH for f in *.log.1; do mv ./$f "$neoHost-$neoService-${f%1}$neoDate"; done # gracefully restart the […]

来自未知用户的Apache未知请求

我正在看我的自制服务器上运行Apache 2.2.10,这就是我看到: **.**.**.** – – [10/Nov/2010:07:05:14 +0200] ">\x03\xb6@\x1b\xbdg\x9e\xe9a)\x1a\xd8\x10U\x0f \xd2\xa4zj\x02q\xd9\xa8[\xbfy/" 400 226 **.**.**.** – – [10/Nov/2010:07:05:16 +0200] "\x1c \x10\x8f&" 400 226 **.**.**.** – – [09/Nov/2010:15:55:00 +0200] "\x1e\xcf" 200 654 **.**.**.** – – [06/Nov/2010:04:36:07 +0200] "\xce\x14\x1c`n\xeb\x8b)x\xee0}\xcbr\x88\xb9lE\x95\xd5\xd3E\x82\x9b\xe0\xb5w\xd2&\xa2>e\xdcn;\x1f\xd1\xdb\xa3" 200 654 **.**.**.** – – [08/Nov/2010:22:28:46 +0200] "\xaa\xc7P\x19h\x80\x96\x03\xd9<\x93\x8e3\x92\xb4\xf5B6;V\xb3\x9f=6s\xf8\xad\x0f\xa2^\xde/\xf5\x92\x95\x8d" 200 654 **.**.**.** – – [30/Oct/2010:03:24:39 +0300] "\x95\xdb\xdb\"\xac#\xac?\xcfQ\v(\x1c\x13\xfb\x8b\xfdq(<\xe6\x12\xff$eY1\xc9@l\x95\xbfe\x15\x84\r\r\xa1\xf1[" 400 226 各地都有类似的日志。 很可能有人或机器人正试图find并利用后门。 我的问题是如何读取代码背后的内容,以及如何防止这些代码被执行? […]

周期性/节奏性磁盘I / O统计:(单调增加的活动)

我的服务器有一个特殊的问题。 磁盘I / O统计数据在过去几周持续​​增长。 从Munin看这个图表: 从Linode的仪表板中,我可以看到磁盘I / O更精细的图像。 这是循环/节奏图(一天的时间间隔)。 但请注意,即使看起来是周期性的,在数周的时间内,平均磁盘I / O也会持续增长(见上图): 现在,我做了iotop ,看到kjournald是写磁盘I / O的唯一过程(除了偶尔的rsyslogd – 但是kjournald的磁盘I / O的频率要高得多)。 在上面的图中,I / O的读取部分实际上为零。 为什么即使在没有其他程序写作的情况下也要写作? 为什么写的大小在一天之内变大? 另一个线索:空闲内存也是单调减less,而“缓冲区”增加。 看到这张图: PS:服务器只有Apache。 访问日志已禁用,但启用了错误日志。 服务约80个请求/秒。 我们使用Redis作为队列。 我的磁盘正在使用ext3 。

Hadoop滚动小文件

我在一个项目上运行Hadoop,需要一个build议。 通常默认情况下,Hadoop的“块大小”大约为64mb .. 还有一个build议,不要使用很多/小文件.. 由于flume的应用程序devise,目前我正在将非常非常小的文件放入HDFS中。 问题是,Hadoop <= 0.20不能追加到文件,从而我有太多的文件,我的地图 – 减less有效地运作.. 必须有一个正确的方法,简单地滚动/合并大约100个文件到一个.. 因此,Hadoop正在有效地读取1个大文件而不是10个文件 有什么build议么??

在amzon ec2上安装abiword由于依赖关系而失败

我正在amazon ec2实例上安装abiword-2.8.6 但由于依赖性而失败 Error: Package: 1:libabiword-2.6.4-8.el5.2.i386 (epel) Requires: libbonoboui-2.so.0 Error: Package: 1:abiword-2.6.4-8.el5.2.i386 (epel) Requires: libgsf-1.so.114 Error: Package: 1:abiword-2.6.4-8.el5.2.i386 (epel) Requires: libbonobo-2.so.0 Error: Package: wv-1.2.4-4.el5.i386 (epel) Requires: libgsf-1.so.114 Error: Package: 1:abiword-2.6.4-8.el5.2.i386 (epel) Requires: libfribidi.so.0 Error: Package: 1:libabiword-2.6.4-8.el5.2.i386 (epel) Requires: libgsf-gnome-1.so.114 Error: Package: 1:abiword-2.6.4-8.el5.2.i386 (epel) Requires: libgnomecanvas-2.so.0 Error: Package: 1:abiword-2.6.4-8.el5.2.i386 (epel) Requires: libgnome-2.so.0 Error: Package: 1:libabiword-2.6.4-8.el5.2.i386 (epel) […]

如何阻止用户看到其他进程?

通常它是(例如)grsecurity的function之一 – 用户只能看到他自己的进程,而不是所有其他进程。 但是 – 我宁愿避免安装grsecurity – 也许这样可以以一种更简单的方式来完成? 我正在使用Linux Debian。