脚本分享–删除指定目录下过期文件

这两天用python写了一个删除指定目录下过期时间的脚本。也可能是我初学python,对python还不够熟习,总觉得这个脚本用shell写应该更简单也更容易些。

就功能上来说,该脚本已经实现了我想要的效果,不过该脚本还不够通用性,还有更多可以完善的地方。目前该脚本在python2.4下运行良好。同时,蚊子在脚本中加入了对python版本的判断,理论上2.7下也应该可以正常使用。有环境的朋友可以帮忙测试一下。

Continue reading “脚本分享–删除指定目录下过期文件”

快速添加at任务

linux at命令,用户使用linux at命令在指定时刻执行指定的命令序列。

在这里,蚊子不做具体详细的介绍。只是来说明一下,如何可以快速的添加一个at任务。

传统方式中,我看到的有3中

1,at 5pm /bin/ls -l /root >/tmp/ls.log

在当天下午5点执行ls命令。(注)此方法我一次没有实现过。

2,将/bin/ls -l /root >/tmp/ls.log语句写入/tmp/tmpjob,语句为:

at -f /tmp/tmpjob 5pm

Continue reading “快速添加at任务”

centos6.2安装kvm虚拟机

KVM虚拟机简介

kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。

KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己到进程调度器,存储管理模块等,所以代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列也是基于软件模拟的Para-Virtualization。 Continue reading “centos6.2安装kvm虚拟机”

kvm 中 Guest Is already in use 处理办法

在完成kvm虚拟机的安装之后,如果想要重装相同名字的虚拟机,是会有错误提示的,就算是删除了虚拟机的xml文件,也会弹出错误提示。如下红色所注

[[email protected] qemu]# virt-install –name=convirt –ram=512 –vcpus=2 –cpu=core2duo –pxe –os-type=linux –disk path=/data/vm/convirt.img,size=50 –network bridge=br1,model=virtio –network bridge=br0,model=virtio –graphics vnc,password=123456,port=9903 –hvm –force

ERROR    Guest name ‘convirt’ is already in use.

这点kvm和xen不同,xen的半虚拟化要想重装,只要把创建好的虚拟机配置文件删掉就可以了

kvm如果想要重装相同名字的虚拟机,只需要在虚拟机停止的状态下执行如下命令

[[email protected] qemu]# virsh undefine convirt
Domain convirt has been undefined

这样,虚拟机就被干掉了,同样,相应的xml配置文件也干掉了。

然后在执行virt-install安装就不会报错了。

perl printf函数[转]

蚊子最近在写网络tcpping测试的脚本,最终输出结果需要格式化好入库,于是学了一下perl中printf的用法,特此记录下来,以免忘了。

printf函数可以格式化输出字符串
用法:

printf FILEHANDLE FORMAT, LIST

printf FORMAT, LIST

例如:

printf函数先格式化字符串再输出到指定文件或当前缺省文件中,如:
printf OUTFILE (“You owe me %8.2f”, $owing);
此语句取出变量$owing的值并替换掉串中的%8.2f,%8.2f是域格式的例子,把$owing的值看作浮点数。 Continue reading “perl printf函数[转]”

grep查看匹配行的上下行

grep是一个在文件中查找匹配字符串很有帮助的命令。指到现在,我才知道如何使用grep查看匹配字串的上下行内容。

让我们看一个例子

Continue reading “grep查看匹配行的上下行”

shell基础–带条件的参数替换

这次我们来讨论一下变量的求值运算。变量求值运算的结果取决于该变量的值是null还是一个数值。shell的这个特性被称为参数替换。Bourne shell也有这个特性。变量求值运算的一般形式为:

${<var>:<opt><stg>}

上式中,<var>表示一个变量,后面跟一个冒号(:),冒号后面的<opt>是可选项,它是+、-、=、?四个符号中的任一个;符号后面又跟一个字符串<stg>。除了一种例外情况外,参数替换不会改变变量本身的值,但会影响变量的求值运算结果。变量的求值运算有四种方式:

+可选项

这种方式下,如果变量var已经定义且是一个非空字符串,则对变量var的求值运算结果为stg。常利用这个可选项,当变量值为非空时,把命令的结果赋给这个变量,并回显一个消息:

如果ls命令找不到任何文件,则它不会回显任何消息,在这种情况下,变量found为一个空值。当然当ls命令至少找到一个文件时,则回显”This directory is not empty”信息。 Continue reading “shell基础–带条件的参数替换”

RRDtool中的数据类型GAUGE、COUNTER和DERIVE[转]

这几天在看Cacti监控模板的代码。众所周知,Cacti是采用RRDtool作为其出图工具的。因此在编写模板时就需要根据被监控数据的特性来为具体数据选择不同的数据类型。

今天重点看了看三个在Cacti中比较常使用的RRDtool数据类型,GAUGE COUNTER和DERIVE。分别介绍之。

Continue reading “RRDtool中的数据类型GAUGE、COUNTER和DERIVE[转]”

mount xen虚拟机的镜像文件

昨天,在给一台xen虚拟机重装系统的时候,由于ks文件中的配置出错,结果导致xen虚拟机启动失败。可实际上,虚拟机文件还是完好的,只需要修改虚拟机中的ks文件即可。没有办法,只得尝试mount虚拟机的镜像文件。结果,提示如下错误

尝试使用-o loop来mount,提示如下

使用file命令查看这个img文件,结果如下

Continue reading “mount xen虚拟机的镜像文件”

Back To Top返回顶部插件

近期,学习了一下wordpress的插件开发,也算是小有成就吧,完成了返回顶部这样的一个插件。

功能

本插件模仿新浪微博中的返回顶部样式所做,为了方便访问者轻松的返回到博客的顶部而开发,有此需求的朋友可以拿来使用,并留下你们宝贵的意见和建议,来帮助蚊子完善这款插件。

适用版本

本插件在wordpress3.2.1下完成,低版本希望有人测试后给与反馈。 Continue reading “Back To Top返回顶部插件”