Category: Linux
在 Linux 要修改檔案名稱, 可以用 mv 指令, 但如果要重新命名的檔案很多, 用 mv 逐一修改會很痛苦, 也增加出錯的機會。而 rename 指令則可以批次大量修改檔案名稱。 例如我想將所有 .jpeg 結尾的圖片, 改變副檔名成 .jpg, 可以用以下指令: $ rename ‘s/.jpeg/.jpg/’ * 以上指令會將當前目錄下, 所有 .jpeg 結尾的檔案, 改名成 .jpg …
Linux 下要檢查網路連線的工具有很多, 以下是用 Shell Script 檢查網路連線的方法。 最簡單的方法是用 ping 指令, 嘗試 ping google.com, 這樣除了測試網路連線外, 也一同測試 DNS: 執行上面的 Shell Script 後, 當網路連線及 DNS 正常, 會輸出 “Network is up”; 不正常敗會輸出 “Network is …
寫程式很多時要將英文字母大小寫轉換, 例如想將第一個字母轉成大寫; 將 hostname 轉換成全部大寫或小寫等。Shell Script 可以用 tr 指令完成。例如: 上面的 tr 會將 “sam tang” 轉換成 “SAM TANG”, 如果是將大寫轉換成小寫, 將 及 互換即可。 而 tr 另一種寫法可以這樣寫: bash 提供了另一個方法, 使用 “^” 轉換第一個字母成大寫; …
當發現 Linux 主機執行緩慢時, 找出佔用最多記憶體及 CPU 資源的 Process, 對於修正問題或對系統進行優化十分有用。 以下指令使用 sort 指令將佔用最多系統資源的 process 列出: # ps -eo pid,ppid,cmd,%mem,%cpu –sort=-%mem | head 執行後會以下面的格式輸出:
在 Linux 要修改帳號密碼, 可以用 passwd 完成。passwd 需要從 stdin 輸入新密碼, 但很多情況需要用非互動的方式修改, 即一行指令修改密碼。例如用 Shell Script 建立新帳號後, 立即修改新用戶的密碼。 以下會示範不用從 stdin 輸入新密碼的情況下, 用一行指令修改帳號密碼的方法。 版本較新的 Linux 的 passwd 指令, 支援 –stdin 參數, 即不會要求輸入兩次新密碼作為確認, 這樣只要用 …
指令別名 (Alias) 在 Linux 上十分方便, 可以將經常使用又較長的指令自訂成別名, 或者將一些指令參數預先方入指令別名, 執行起來就會省時不少. 例如輸入 ls 指令時, 如果經常也輸入 “ls -al” 的話, 可以用以下指令建立指令別名: 之後當輸入 “l” 後, 便會直接執行 “ls -al”. 另一個常用的指令用 cd 切換到其他目錄, 例如建立以下別名, 便可以快速地切換到網頁目錄及儲存 logs 的目錄: …
Virtual Hard Disk (VHD) 是通過軟件技術, 在硬碟建立映像檔虛擬硬碟。本文會介紹在 Linux 建立 VHD 的方法。 在 Linux 建立 VHD, 最簡單的方法是用 dd 指令, 先執行以下指令建立 VHD: $ sudo dd if=/dev/zero of=/media/myvhd.img bs=1M count=1200 以上指令會建立 /media/myvhd.img 映像檔, …
現在很多入門的 VPS 只有 1GB Ram, 如果在 1GB RAM 的 VPS 安裝 Apache, PHP 及 MySQL / MariaDB, 為僻免出現 out of memory 的情況, 可以使用以下方法進行優化。 Apache 建議對 Apache MPM worker 進行設定: …
curl 是 CLI 下的瀏覽器, 有時在 Linux 需要對網頁進行除錯時, 只需要檢視 HTTP 的 header 檔頭資訊, 可以透過 curl 的 -I 參數取得, 例如: $ curl -I https://google.com.hk HTTP/1.1 301 Moved Permanently Location: https://www.google.com.hk/ Content-Type: …
RHEL 7.6 已經釋出超過一個月, 昨天 CentOS 7.6 剛釋出, 將伺服器升級到 CentOS 7.6. 升級後好像沒什麼問題, 但後來發現原來的 vsftpd 不能登入, 即使帳號及密碼正確也不能登入, 總是說密碼錯誤。然後關閉 vsftpd, 安裝 proftpd 也是相同結果 後來找到問題所在, 是因為升級的其中一個套件 setup-2.8.71-10.el7 所致。由於不開放使用者登入 ssh/telnet, 只開放 ftp, 所以使用者的 shell …