實用 crontab 寫法

本站另一篇文章 Unix Crontab 簡介 介紹了 Crontab 的用法,今天發現了一個實用的寫法:@daily /usr/local/www/awstats/cgi-bin/awstats.sh以上用 @daily 語法,便會在每天零時零分執行,以下是其他用法: @reboot: 在每次開機時執行。 @yearly: 等同 0 0 1 1 * 寫法,即每年一月一日零時零分。 @annually: 與 @yearly 相同。 @monthly: 在每月一號零時零分執行。 @weekly: 在星期天零時零分執行。 Run once …

Linux 的搜尋技巧

在檔案內搜尋指定文字,search_key 是搜尋字串,/path/to/filename 是檔案名稱: grep search_key /path/to/filename功能同上,但不分大小寫: grep -i search_key /path/to/filename搜尋檔案:在指定目錄中搜尋檔案,以下是在 /var/www/ 目錄下搜尋 upload.php 的檔案: find /var/www/ -name upload.php功能同上,但目標不是檔案,而是目錄: find /var/www/ -name uploads -type d還有更多有用的功能,以上只列出較常用的用法。

刪除 Qmail queue 內的郵件

在 sendmail 要刪除在 queue 內的郵件很簡單,只需直接在 /var/spool/mqueue 下面刪除就好,但在 Qmail 就較麻煩,執行以下指令會刪除 queue 內所有郵件:qmailctl stop find /var/qmail/queue/mess -type f -exec rm {} ; find /var/qmail/queue/info -type f -exec rm {} ; find /var/qmail/queue/local …

Sed 做 Search & replace

在本站另一篇文章介紹了用 Perl 來做 search and replace,而用 sed 也可以做到相同效果,語法為:sed -i ‘s/src_str/new_str/g’ filename以上指令會將 filename 檔案內的 src_str 替換成 new_str。

Qmail 使用 RBL 過濾垃圾郵件

有些機構提供 RBL (Remote Black Lists) 供 Email Server 阻檔垃圾電郵,這些 RBL 的好處是不用在本機加入大量 spam rules,而且免除更新的程序。在 QMail Scanner 配合 RBL 使用後,系統發現郵件符合 RBL 規則,那便不會接收該郵件,並把紀錄寫入 /var/log/qmail/smtpd/current 內。以下是在 QMail Scanner 加入支援 RBL 的方法:1. 開啟 /var/qmail/supervise/qmail-smtpd/run 檔案2. …

MySQL 重設 root 忘記密碼

如果忘記了 MySQL 的 root 密碼,可以用以下方法重新設定:1. 關閉 MySQL 伺服器。2. 用以下指令啟動 MySQL,以跳過檢查權限的資料表mysqld_safe –skip-grant-tables & update mysql.user set password=PASSWORD(“new_password”) where User=’root’; mysql> flush privileges; mysql> quit5. 最後只需重新啟動 MySQL,便可以用新設定的密碼進入了。

Unix Crontab

Crontab 是在 Unix Like 系統下設定排程自動執行的工具,最常用到的地方是備份。而 crontab 有 4 個不同的參數,作用分別是:crontab -e 編輯 crontab 檔案,如果檔案不存在則會自動建立。 crontab -l 顯示 crontab 檔案內容。 crontab -r 刪除 crontab 檔案。 crontab -v 顯示上一次編輯 crontab 的時間,但不是所有系統適用。編輯 crontab 在指令模式輸入 …

字串處理工具: Awk

AWK 的名字由來是三位作者的姓氏 — “Aho, Weinberger 及 Kernighan”, AWK 是一種專門處理文字的直譯語言。AWK 會把檔案逐行讀入, 並預設以空格作為分隔符號, 將一行字串分割成不同欄位, 第一個欄位用 $1 表示, 第二個用 $2, 如此類推, 而 $0 則表示整行資料, 這樣可以更好的分析處理。除了對檔案進行分析外, 跟其他 Linux 工具一樣, awk 同樣可以讀取管線輸入。不論在指令模式或者撰寫 Shell Script 時, …

Perl 實現 Search & replace

一些用靜態 HTML 編寫的網站,如果要將每一頁的特定文字更新 (例如 copyright),要逐頁逐頁更改真的十分麻煩。這個問題有幾個解決方法,其中一個是在指令模式用 perl 來做替換,例如:以上指令會將目錄下所有 .html 尾的檔案更新,用 “new_str” 替換 “src_str”。

Linux 下編譯 Apache 的 mod_rewrite

要為 Apache 加載 mod_rewrite 模組,如果 Apache 並未安裝,可以在編譯時加上 –enable-rewrite 便可以,但如果 Apache 已經安裝好,而又不想重新編譯 Apache 的話,可以用以下方法:1. 首先 cd 到 Apache 的源代碼目錄並到 mod_rewrite.c 檔案,1. 在apache的源码安装目录中寻找mod_rewrite.c文件 2. 進入 mod_rewrite.c 的目錄並用 apxs 編譯 mod_rewrite.c 3. 編譯好 …