寻觅生命中的那一片浅草......

发布者 夜行人

rpm -V 结果说明

用rpm进行包管理的发行版中(redhat,suse等),可以利用rpm -V可以校验某个文件或者某个包,检验其状态和安装时的变化情况。检验项目共九项,结果以下面8个字母来表示:
S : 表示文件大小;
M : 表示权限;
5 : 表示MD5检查和;
D : 表示主从设备号;
L : 表示符号连接;
U : 表示属主;
G : 表示属组;
T : 表示最后修改时间根据文件类型的不同检验的项目也不同,如图
文件类型 大小 权限 MD5和 主设备号 从设备号 符号连接 属主 属组 最后修改时间
目录 – 校 – – – – 校 校 –
符号连接 – 校 – – – 校 校 校 –
FIFO – 校 – – – – 校 校 –
设备文件 – 校 – 校 校 – 校 校 –
普通文件 校 校 校 – – – 校 校 校

例如,查询bash包
# rpm -V bash
S.5….T /etc/bashrc
结果表达的意思是:
1.bash包里除/etc/bashrc之外其他文件都没有变化,因此没有列出来。
2./etc/bashrc文件的大小发生了变化 (S)
3./etc/bashrc文件的MD5校验和发生变化 (5)
4./etc/bashrc文件的最后修改时间发生变化 (T)

转载自:http://www.oolec.com/rpm-v-intro/

删除文本中的重复行(sort+uniq/awk/sed)

在进行文本处理的时候,我们经常遇到要删除重复行的情况。那怎么解决呢?
下面就是三种常见方法?
第一,用sort+uniq,注意,单纯uniq是不行的。
shell> sort file | uniq

这里我做了个简单的测试,当file中的重复行不再一起的时候,uniq将服务删除所有的重复行。经过排序后,所有相同的行都在相邻,因此unqi可以正常删除重复行。

第二,用sort+awk命令,注意,单纯awk同样不行,原因同上。
shell> sort file | awk ‘{if ($0!=line) print;line=$0}’

当然,自己把管道后面的代码重新设计一下,可能不需要sort命令先排序拉。

第三,用sort+sed命令,同样需要sort命令先排序。
shell> sort file | sed ‘$!N; /^\(.*\)\n\1$/!P; D’

最后附一个必须先用sort排序的文本的例子,当然,这个需要用sort排序的原因是很简单,就是后面算法设计的时候的“局部性”,相同的行可能分散出现在不同的区域,一旦有新的相同行出现,那么前面的已经出现的记录就被覆盖了,看了这个例子就好理解拉。
ffffffffffffffffff
ffffffffffffffffff
eeeeeeeeeeeeeeeeeeee
fffffffffffffffffff
eeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeee
gggggggggggggggggggg

其实,这是我随便打进去的几行字,没想到就是必须用sort的很好例子,大家可以自己试试看。

参考资料:

[1] SED单行脚本快速参考
http://linux.chinaitlab.com/administer/381792.html
[2] 如何删除重复的行(sed或awk)
http://www.linuxsir.org/bbs/showthread.php?t=132848

转载自:http://www.91linux.com/html/article/shell/20090205/15636.html

安装ndoutils找不到mysql.h和errmsg.h

安装ndoutils-1.4b9时报以下错

# ./configure –enable-mysql –with-mysql=/usr/local/mysql
# make
cd ./src && make
make[1]: Entering directory `/root/nagiosddd/ndoutils-1.4b9/src’
gcc -fPIC -g -O2 -I/usr/local/mysql/include/mysql -DHAVE_CONFIG_H -c -o io.o io.c
In file included from io.c:11:
../include/config.h:261:25: error: mysql/mysql.h: No such file or directory
../include/config.h:262:26: error: mysql/errmsg.h: No such file or directory
make[1]: *** [io.o] Error 1
make[1]: Leaving directory `/root/nagiosddd/ndoutils-1.4b9/src’
make: *** [all] Error 2

解决方法
# vi include/config.h

#include <mysql/mysql.h>
#include <mysql/errmsg.h>
修改为
#include </usr/local/mysql/include/mysql/mysql.h>
#include </usr/local/mysql/include/mysql/errmsg.h>

nagios 监控出现It appears as though you do not have permission

It appears as though you do not have permission to view information for any of the hosts you requested…

If you believe this is an error, check the HTTP server authentication requirements for accessing this CGI
and check the authorization options in your CGI configuration file.

修改/etc/cgi.cfg
vi /usr/local/nagios/cgi.cfg

use_authentication=1 #把1修改为0,保存
root@nagios#/etc/init.d/nagios restart

转载自:http://cqfish.blog.51cto.com/622299/150542

查看Linux网卡驱动版本

# ethtool -i eth0
driver: e1000e
version: 0.3.3.3-k6
firmware-version: 5.7-6
bus-info: 0000:0c:00.0

2026年三月
« 5月    
 1
2345678
9101112131415
16171819202122
23242526272829
3031