Tag: Fedora
VMware Workstation 可以在一台實體主機上, 執行多個不同的 VM, 以下示範在 Linux 下安裝 VMware Workstation 的方法, 並會覆蓋 RHEL, CentOS, Fedora, Debian, Ubuntu 及 Mint. 在開始前, 要確定系統是 64-bit, 因為現在 VMware Workstation 12 只支援 64-bit 系統, …
寫程式時經常需要截取字串中的一小部份, 很多程式語言都有類似 substr 等函式。在 Shell Script 雖然沒有 substr() 或 substring() 的函式, 但要實現也很方便, 以下會介紹兩種 Shell Script 下截取部份字串的方法。 ${string:S:N} 寫法 在 Shell Script 抽取字串, 最簡單的方法是這樣: 上面 Shell Script 執行結果是 s is …
以下會介紹在 Linux 檢查及設定開啟檔案數量的限制。 要檢查目前系統最大開啟檔案的數量、可以透過查看檔案 /proc/sys/fs/file-max, 例如: # cat /proc/sys/fs/file-max 791176 以上的數值 791176,是每個帳號的 login session 下最多可開啟的檔案數量。 對於一台伺服器,有些服務需要很大量的檔案,例如 Apache 及 MySQL 等、要更改這個數值,可以使用 sysctl 指令,sysctl 的作用是在系統執行時,設定 kernel 的參數。 例如想將開啟檔案限制設定為 500000, 指令是這樣的: # …
APC (Alternate PHP Cache) 是一套開源的 PHP 快取系統, 它可以將沒有改變 PHP Code 的情況下, 將已經編譯的結果緩存下來, 當下次需要使用時, 就可以節省重新編譯的時間及系統資源。 在 RHEL 及 CentOS 安裝 APC 十分簡單, 只要透過 YUM 便可以全部完成, 以下方法在 CentOS 6 及 CentOS …
Linux 系統預設允許回應 ping, 但有時允許回應 ping 會為伺服器帶來安全問題, 在 Linux 要禁止 ping 回應, 可以用以下兩個方法實現: 1. 修改 Linux 核心參數 以下方法是透過修改檔案 /proc/sys/net/ipv4/icmp_echo_ignore_all, 預設值是 0, 改為 1 便會禁止 ping: # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all …
GRUB2 是 RHEL 7 及 CentOS 7 的預設 Boot Loader, 以下會介紹修改 GRUB2 的開機選單排序以及 Timeout 時間的方法。 列出 GRUB2 開機選單項目: # grep “^menuentry” /boot/grub2/grub.cfg | cut -d “‘” -f2 返回的結果會是開機時看到的選單內容, 例如: …
在寫 Shell Script 時,有時需要取得路徑的目錄或檔案名稱,這時可以借助 dirname 及 basename,例如:
當發現系統變慢時, 可以先找出佔用最多系統資源的 process, 以下會介紹用 ps 指令找出佔用最多記憶體, CPU 資源的 process。 ps 指令 用 ps 指令, 配合 sort 及 head 指令, 可以將佔用 CPU 資源的 process 順序列出: # ps aux | sort …
在 Linux 下用 find 搜尋檔案很好用, 當加入 -name 參數時, 只可以對單一檔名或副檔案進行搜尋, 以下會示範用上 -o 參數, 進行多個檔名或副檔名的操作。 例如想搜尋在 /var/www/html 目錄下, 所有 .php 及 .txt 副檔名的檔案: # find /var/www/html -type f \( -name “*.php” …
如果在執行 Shell Script 時預到 bad interpreter: No such file or directory 報錯, 原因是 Shell Script 第一行指定的 interpreter 路徑錯誤, 系統找不到 interpreter 所致。 解決方法是檢查 Shell Script 第一行的 interpreter, 設定回正確路徑, 一般是 /bin/sh …