Tag: Perl Script
在 Shell Script 的第一行称为 shebang, shebang 由 “#!” 开头, 并在后面加上解译器的绝对路径, 即类似: #!/bin/sh #!/bin/bash #!/usr/bin/perl #!/usr/bin/python 如果 Shell Script 不同的平台执行, 指定的解译器可能位置有所不同, 如果想增加 Shell Script 在不同 Unix Like 环璄的可流动性, 可以使用 /usr/bin/env …
在 Shell Script 取得当前的日期及时间很有用, 例如可以产生一个包含日期的档案名称等, 要取得日期时间可以 date 实现。 将目前日期及时间储存到 now 变量: 以上会把目前日期时间储存到 $now 变量, 然后用 echo 印出。 用 date 也可以自订格式, 例如我想要 “年月日” 组成的格式, 可以这样做: 以上会将目前日期以 “年月日” 格式, 储存到 $now …
Logwatch 是用 Perl 写成的纪录档管理工具, 可以分析、整理及报告主机的纪录档, 并将报告自动以电邮发送给系统管理员, 对检查及追踪系统的问题十分好用。 安装 Logwatch 在 RHEL, CentOS 及 Fedora 安装 Logwatch 十分简单, 可以透过 YUM 直接安装: # yum -y install logwatch 配置 Logwatch Logwatch 的默认设定档是 …
这个 Perl Script 使用 mysqldump 备份 MySQL, 可以放到 crontab 自动执行。 程式需要按需要修改, 以下是需要修改的选项: $db_username: mysql 使用者名称 $db_password: mysql 密码 $db_host: mysql server 位置 $mysqldump: mysqldump 位置 $backup_dir: 储存备份档的目录 $rotate: 保留备份数量 …
上一篇文章 Apache Log Rotate 设定 讲述了 Apache 轮替记录档的方法, 但如果旧日志一直不理的话, 同样占据碟碟空间, 因为 Apache 不会删除旧记录档, 而且将新记录写入新建立的档案, 以下 Perl Script 可以自动删除旧记录档, 只要设定好记录档目录, 名称后, 放到 crontab 执行便可以了。 这个 Perl Script 会扫瞄记录档目录, 并查看档案名称为是 access …
如果发现服务器有大量存取记录, 要检查是否 DDOS 攻击, 可以开启记录档检查, 但资料量大的话, 要人手检查也很困难, 所以我写了这个简单的 Perl Script, 用作检查记录档内出现次数最多的 IP, 锁定出现频率最高的 IP 作检查会容易得多。 编写时想到有多种记录档也有此需要, 只要记录档是一行一个记录, 而每行只有一个 IP 出现便可以用, 已经试过 apache access log 及 error log, /var/log/secure, /var/log/vsftpd.log …