Tag: FreeBSD

Shell Script 限制執行時間

在撰寫 Shell Script 時,有時會遇到需要限制程式執行時間的情況,例如防止程式無限執行或避免程式佔用過多系統資源等。以下是一些常用方法可以幫助您限制 Shell Script 的執行時間。 1. 使用 timeout 命令 timeout 命令可以限制某個命令或腳本的執行時間,當時間到期時它會向該命令或腳本發送 SIGTERM 信號以終止其執行。例如: timeout 10s ./myscript.sh 這條命令將執行 myscrip.sh 腳本,並限制其執行時間為 10 秒。 2. 使用 ulimit 命令 ulimit 命令可以限制某個使用者對系統資源的使用,包括 …

Linux 更新 Symbolic Link 連結

Symbolic Link 連結是 Linux 和 Unix 系統中強大的功能之一, 在 Unix Like 的作業系統經常會用到 Symbolic Link 連結, 對於管理系統的設定檔很好用,例如在 home directory 建立指向各種設定檔的檔案或目錄。 如果 symbolic link 指向的位置變更了, 要把 symbolic link 的指向也一拼更新, 當然可以用 rm 及 …

Shell Script 讀取 Load Average

在 Linux 要讀取 Load Average 的數值很容易, 用 uptime 指令或檢取 /proc/loadavg 檔案便可以, 而以下文章是在 Shell Script 把 load average 讀取。 uptime 輸出結果: $ uptime 09:50:17 up 7 days, 13:52, 1 user, …

VIM 使用自動縮排下貼上程式碼

在 VIM 寫程式時, 很多時會設定使用自動縮排, 即用 audoindent 或 smartindent, 這樣只是寫程式沒問題, 但如果要複製並貼上一些程式碼, 這會重覆縮排。 要解決這個問題, 可以在用 vim 時, 輸入以下指令: 完成貼上後, 要回復原來的自動縮排, 便再次輸入以下指令: 如果預設值是會自動縮排, 那便關閉檔案後, 會自動開啟縮排。 但要輸入上面的指令也很麻煩, 所以在 .vimrc 檔案設定, 用 F3 鍵進行切換, …

BIND DNS 設定多層副域名

在 BIND DNS 裡面要設定副域名, 在 zone file 用以下格式設定: 或 以上是設定 www 副域名的方法, 但如果要設定多層的副域名, 例如 “m.www.opencli.com” 這個, 如果直接輸入以下內容會出現錯誤: 這時便不能啟動 named. 要解決可以有兩種方法, 其中較麻煩的方法是建立一個 “ftp.opencli.com” 的 zone file, 然後在 “ftp.opencli.com” 這個 zone …

sudo 嚴重安全漏洞 (CVE-2021-3156)

sudo 發佈安全漏洞通告 (CVE-2021-3156), 只要 sudoers 檔案存在 (一般是 /etc/sudoers), 攻擊者就可以用本機普通用戶的身份, 透過 sudo 獲取 root 權限。危險的地方是攻擊者可以透過 web 攻擊, 執行身份可能是 apache 或 www-data. 測試方法: 要測試系統是否存在威脅, 可以用 root 以外的帳號登入, 執行以下指令: $ sudoedit -s …

Shell Script 將指令輸出儲存到變數

在 Shell Script 要將執行指令的輸出儲存到變數, 而不是直接輸出結果, 可以用以下兩種寫法: 或 要留意的是, 跟 PHP 或 Python 等不同, 在等號 (=) 前後不可以加入空間。 例如要將日期儲存到變數 today, 可以用以下寫法: 或 將變數內容輸出跟其他變數一樣, 可以用 echo 或 printf: 以上是在 Shell Script 把指令輸出儲存到變數, …

Shell Script 加入今天的日期

在寫程式時很多時也需要使用今天的日期, 例如在建立檔案或目錄名稱時, 會加入日期以作識別。 Linux 的 date 指令可以輸出日期, 如果只要單純地輸出日期, 可以這樣寫: 以上指令會用以下格式輸出今天日期: Today is Tue Dec 10 08:21:01 HKT 2019 如果想要建立一個目錄, 在後面加入今天日期以作識別, 例如建立像這樣的目錄 /backup/files-20191210/, 可以用以下寫法”

Shell Script 自動檢查硬碟使用量

Linux 下要用 Shell Script 自動檢查硬碟分割區的使用量, 可以透過 df 指令實現。 df 指令可以在 Linux 下檢視硬碟分割區使用量, 配合 grep 及 awk 擷取所需的資訊, 便可以用 Shell Script 自動檢查硬碟使用量, 當發現使用量超過設定的百分比 (例如 80%) 時, 再用 mail 指令發出電子郵件通知系統管理員。 執行 …