Mar 23
      v1.2版的脚本已经实现了通过Web网页监控流量的功能,可惜受root权限的影响,没有达到实时的效果,也就是显示我访问Web网页所在一刻的流量。要解决这问题,就需要在Web页面上可调用iptables命令。幸亏通过这两天的测试,我已经实现了让apache可执行本地及远程需root权限的命令。OK,既然前提条件都解决了,脚本的编写就简单了。
Tags:
Mar 18
    从功能的角度来说,ipflow.pl和banip.sh已经基本满足我的要求。但使用中,还有个问题:每次查看想查看网络流量时,都必须登陆到路由网关服务器上运行ipflow.pl脚本,太麻烦了。所以,接下来我要做的,就是把输出结果进行格式化,显示为HTML样式。这样,我只要通过浏览器就能知道大概的网络流量。(为什么是大概呢?因为结果并不是实时的,而是对上一次crontab运行的时间段的结果)
Tags:
Mar 17
    昨天,介绍了如何在网关上利用iptables实现监控各客户端IP流量的原理,并且提供了一个简单的监控脚本。今天,我继续修改完善该脚本,工作的目标是:希望可定时运行该脚本,当发现超出限定流量的客户端时,暂时终止其IP。
Tags:
Mar 16
    相信不少朋友都知道,使用Linux搭建路由网关,提供nat上网服务是非常简单的事情,而且性能也不错。但现在p2p的工具很多,有时候带宽会被这些工具在无意中就占满了(例如:使用迅雷、BT下载等)。这时候,总希望看看到底是谁在占用带宽。这样的工具有很多,如ntop、bandwidthd、iftop、IPTraf、MRTG等等,它们也提供了非常方便的图形监控界面,操作也非常简单。可惜,它们都有一些缺点,像实时性不够、IP流量分散、需要使用Web来查看等,恰好这些就是好我需要的。
    为此,我利用iptables的统计功能,编写了一个小脚本来实现要求。(原想用Perl的Net::Pcap模块的对数据包解码统计的,但既然有现成的,为什么不用呢?)O(∩_∩)O哈哈~
Tags:
Mar 13
    前一篇日志中介绍了如何利用正规表达式的替换功能来实现Perl脚本和HTML模板的配合使用。正如日志中所说的,这方便把涉及和脚本分开处理,分工合作,效率可以大大的提高。但文中提到的技术,仅适合小型站点使用,若HTML中有一些特殊字符时,容易发生替换错误,而且转换效率不高。
    今天介绍的,是一个叫HTML::KTemplate的模板。HTML::KTemplate模块是由Kasper Dziurdz先生开发的一款功能强大的HTML代码解析的模块,模块功能非常强大,功能灵活,而不臃肿。我使用CPAN上的说明做个演示,剩余的功能参数可自行斟酌。
Tags: ,
Mar 12
    通常的Perl教程,在讲述CGI编程的时候,都是使用print直接输出HTML代码,好些的,会告诉你可以用here document方式写。但显而易见的是,在大型网站中,这样的写法难以实现设计与编程的分开。我们都知道,php或asp等会这方面有比较好的实现方法,如<? php> xxx <?>方式。那么,Perl又如何呢?
    为达到这样要求,可以使用模板技术。这样,就能大量节省代码的编写量,提高代码效率,并且便于调试。以下内容大部分参考☞ 这里,但对于不明确的地方做了补充说明。
Dec 26
    红旗 HA安装时使用测试 License,在安装完毕后,需根据机器信息注册正式 License。其过程虽然简单,但输入内容较多,容易出错。故用expect写了一个简单的脚本协助。

用法:

./registerHA_v0.2.sh [正式序列号文件]

其中,正式序列号文件在申请后,由红旗提供,一般是一个.txt的文本文件。如果不输入该选项,默认使用当前目录下的License.txt作为序列号文件。
Tags: , ,
Nov 28
    这两份ppt是最近在搜索资料的时候无疑找到的。虽然页面以ppt显示,但涉及内容几乎包括了Bash脚本的方方面面,其中南开大学pdf的那份讲述的更详细,非常适合初学或想更深入理解Bash的朋友。
Tags:
Nov 27
    Bash中的变量没有数据类型的定义,这样,在处理字符串和数值时会带来麻烦。例如,使用-eq比较数值,==比较字符串等。另外,Bash中常用的let、expr仅支持整数运算,不支持浮点数计算。要实现浮点数计算,可以使用bc或awk。
Tags:
Jun 14
    在使用lvm的系统中,首先需要把物理设别创建为PV,然后才能组成VG及创建LV逻辑盘。对于盘符不多的情况下,这通常不是问题,只要一一对应寻找即可。但这次在一个项目中,遇到的情况是:
引用
有三个系统共享一个盘柜,盘柜中划分了约30个LUN映射到系统中。由于不同系统连接到盘柜的路径不同,导致同一个LUN设备,在不同系统上其设备号并不相同。例如:在A系统上是/dev/sdx,而在B系统上则是/dev/sdy。

    这样,万一我需要在原有的系统上增加PV,需逐一手动匹配物理设备,并且不同系统上还需要匹配多次,相当麻烦。所以,我写了下面的脚本协助寻找那些仍未创建为PV的设备。
Tags: ,
Nov 29
   其实之前的工作都是为了实现这个目的:把boblog博客的用户导入proftpd用户认证数据库。这样,所有博客的用户都可以登陆到FTP上,而我也不用打开匿名FTP了。当然,我也写了一个脚本,让其自动运行。这样,如果用户改了密码,也能及时的反应到proftpd的认证数据库中,挺方便的。
Tags: , ,
Nov 28
   为了实现把博客中的用户帐号和密码导入FTP数据库中,以实现直接使用博客的帐号登陆FTP的功能。我决定使用python协助我处理。这篇日志就是简单介绍,使用python连接Mysql的方法。
Tags: ,
分页: 7/8 第一页 上页 2 3 4 5 6 7 8 下页 最后页 [ 显示模式: 摘要 | 列表 ]