Tag: Debian & Ubuntu
HTTP 伺服器在高負載時反應會變慢, 但檢視系統的使用資源, 例如 CPU, 記憶體及 Load Average 則很正常, 當重新啟動 HTTP 伺服器後, 問題又暫時得以解決。用以下 netstat 檢查連線的統計資料: # netstat -nat | awk ‘{print $6}’ | sort | uniq -c | sort …
有時在 Shell Script 需要檢查輸入的參數數量, 在 Shell Script 要檢查輸入的參數數量, 可以直接用 $# 變數取得, 例如建立以下 Shell Script: 將以上內容儲存成 test.sh 後, 並給予可執行權限, 可以嘗試執行以下指令: $ test.sh 1 2 3 3 上面在執行 test.sh 時, 輸入了 …
在 Linux 下一般不會用空格 (Space) 作為檔案名稱, 會用 底線 (_) 或橫線 (-) 分隔字串, 但如果檔案是從 Windows 複製進來, 或者是掛載 Windows 的分割區, 可能會有空格作為檔案名稱的一部分。 如果有一個檔案名為 “file name.txt”, 在 Linux 要開啟有以下兩種方法, 分別是用引號包著檔案名稱, 以反在空格前加入 “\” 字符: $ …
Let’s Encrypt 在上年已經推出全網域通用憑證 (Wildcard Certificate), 也就是一張憑證可以讓網域下所有子網域通用, 所有子網域也可以使用同一張憑證。原本的網域下每個子網域都會產生一個新的憑證, 但如果網址較多管理也較麻煩, 以下紀錄一下申請 Let’s Encrypt Wildcard 憑證的方法。 網路上有很多申請 Let’s Encrypt 憑證的工具, 以下會使用 Certbot, 先執行以下指令安裝 Certbot: /linux/install-certbot # wget https://www.eff.org/certbot-auto # chmod +x ./certbot-auto …
Swap 檔案跟 Swap 分割區差不多, 分別是 Swap 檔案是用檔案的方式建立, 不是使用獨立硬碟分割區。 以下是在 Linux 下建立 Swap 檔案的方法。 建立 swap 檔案是使用 block size 作為單位, 每 1 MB 有 1024, 所以建立 1GB 的 swap 檔案便要建立 …
除了在 Linux 的主機外, 在其他類型的主機也經常需要檢查埠號是否有開啟埠號, 例如要測試主機的服務是否正常。 以下是分別用 nc, nmap 及 telnet 測試埠號是否有開啟的方法。 nc (netcat) nc 的意思是 netcat, nc 可以讀取經過 TCP 及 UDP 的網路連線資料, 是一套很實用的網路除錯工具。 在 CentOS 用 yum 安裝 nc: …
Linux 下找檔案很多時會用上 find 指令, find 的搜尋功能十強大, 可以用多個不同的過濾條件找檔案, 除了找檔案外, find 指令也可以找目錄, 而且 find 是 Linux 下內建的工具, 不用額外安裝. 找檔案最常遇到的情況是根據檔案名稱搜尋, 例如要在 /var/www/html 找 filename.txt 檔案, 用以下指令: /linux/find-command # find /var/www/html/ -name filename.txt …
PuTTY 是一個開源的 SSH 客戶端, 除了 SSH 外, 也支援 Telnet 及 Rlogin 等多種通訊協定, 是 Windows 十分熱門的 SSH 客戶端, 除了 Windows 版外, 也提供 Linux 版。 PuTTY 對上一個版本 0.70 已經是 2017 年 …
Linux 很多設定檔都會以 “#” 字符開頭作為註解, 例如: # Load dynamic modules. See /usr/share/nginx/README.dynamic. include /usr/share/nginx/modules/*.conf; 有些情況是要將註解行及空白行刪除, 這樣可以用 grep 指令實現, 語法是: /linux/grep $ grep -v ^\# config.conf | grep . 或者 /linux/grep …
ZSH (Z Shell) 是 Bash 及 sh 以外的 Shell, 以下是 Ubuntu 安裝 ZSH 及設定 ZSH 成預設 Shell 的方法。 Ubuntu 的官方 Repository 已經包含 ZSH 在內, 可以很簡單用 apt-get 安裝, 但在安裝前先更新一下: /linux/apt-get/update …