Category: Linux
Crontab 是在 Unix Like 系統下設定排程自動執行的工具,最常用到的地方是備份。而 crontab 有 4 個不同的參數,作用分別是: crontab -e 編輯 crontab 檔案,如果檔案不存在則會自動建立。 crontab -l 顯示 crontab 檔案內容。 crontab -r 刪除 crontab 檔案。 crontab -v 顯示上一次編輯 crontab 的時間,但不是所有系統適用。 …
AWK 的名字由來是三位作者的姓氏 — “Aho, Weinberger 及 Kernighan”, AWK 是一種專門處理文字的直譯語言。AWK 會把檔案逐行讀入, 並預設以空格作為分隔符號, 將一行字串分割成不同欄位, 第一個欄位用 $1 表示, 第二個用 $2, 如此類推, 而 $0 則表示整行資料, 這樣可以更好的分析處理。 除了對檔案進行分析外, 跟其他 Linux 工具一樣, awk 同樣可以讀取管線輸入。 不論在指令模式或者撰寫 …
一些用靜態 HTML 編寫的網站,如果要將每一頁的特定文字更新 (例如 copyright),要逐頁逐頁更改真的十分麻煩。這個問題有幾個解決方法,其中一個是在指令模式用 perl 來做替換,例如: 以上指令會將目錄下所有 .html 尾的檔案更新,用 “new_str” 替換 “src_str”。
要為 Apache 加載 mod_rewrite 模組,如果 Apache 並未安裝,可以在編譯時加上 –enable-rewrite 便可以,但如果 Apache 已經安裝好,而又不想重新編譯 Apache 的話,可以用以下方法: 1. 首先 cd 到 Apache 的源代碼目錄並到 mod_rewrite.c 檔案, 1. 在apache的源码安装目录中寻找mod_rewrite.c文件 2. 進入 mod_rewrite.c 的目錄並用 apxs 編譯 …
當發現系統硬碟空間突然上升時,想知道那個檔案或目錄佔用最多空間,可以用 du + sort + head 指令完成,它們的作用分別為: du: 計算目錄所使用的空間 sort: 將輸入的資料排序 head: 將輸入資料的最開頭幾行資料輸出 假如發現 /home 裡面的空間使用異常時,可以用以下指令查看 /home 裡面頭 10 個使用最多硬碟空間的檔案或目錄: # du -a /home | sort -n -r | …
安裝環境 Centos 5.7 1. 安裝 DNS 所需套件: 只要用 yum 指令便可以一次過想所需的套件安裝。 在預設的情況下 Centos 不會建立 named.conf,要用以下方法建立: 2. 更新 root.zone 到 ftp://rs.internic.net/domain/root.zone 下載最新的 root.zone 資料檔,然後放到 /var/named/var/named/ 裡面。 然後就可以用 /etc/rc.d/init.d/named start 啟動 DNS …
如果想用 shell script 發送郵件,可以用 mail 實現: # echo “email content” | mail -s “email subject” you@emaildomain 以上語句會發送一封標題為 “email subject” 的電郵到 you@emaildomain,其中 “email content” 為電郵內容。 以下簡單的兩行 shell script 便會將檔案系統使用量,透過電郵發送給指定的電郵信箱: #!/bin/sh …
如果在 Linux 下要限制每個 ip 的連線數,可以透過 iptables 實現。詳細指令語法如下: /sbin/iptables -A INPUT -p tcp –syn –dport 22 -m connlimit –connlimit-above 3 -j REJECT 限制每個 ip 只可以有 3 個 ssh 連線 (預設 …
用 ls 指令會列出目錄下的內容,如果想知道目錄下有多少檔案及多少目錄,可以輸入以下指令: 顯示檔案數目: ls -la |grep “^-” |awk ‘END {print “Number of files: ” NR}’ 顯示目錄數目: ls -la |grep “^d” |awk ‘END {print “Number of directories: ” NR}’
這個是我日常用作備份 MySQL database 的 shell script,因為以前是直接將所有資料庫匯出成一個 sql 檔,當其中一個資料庫有問題時,因為沒問題的資料庫不想有改動,要復原資料很麻煩。今天改了一下,它會用 mysqldump 將所有資料庫匯出成獨立 sql 備份檔,然後用 gzip 壓縮成 .gz 檔案。程式會儲存 5 天的備份,當有新備份時,最舊的備份會自動刪除。 使用方法: 修改 db_user, db_passwd 及 db_host 修改成你的 mysql 登入資料,所使用的用戶權限需要與 mysql root …