Tag: RHEL & CentOS

Linux 計算 Process 佔用多少記憶體

有時需要找出系統內占用最多記憶體 (RAM) 的進程, 以及查詢詢進程及其子進程到底用了多少記憶體, 在 Linux 下要查詢那一個 process 佔用最多記憶體 (RAM), 可以用 ps 指令再加上 –sort 參數, –sort 可以自訂要排序的項目, 例如 CPU 或 RAM 也可以。當找到要查詢的進程後, 可以用 awk 計算所有子進程所使用的記憶體有多少。 例如我想將使用最多記憶體的 process 排在結果的最後, 可以用以下指令: …

MySQL / MariaDB 5.5 升級到 MySQL 5.6

RHEL 及 CentOS 7 預設的資庫系統是 MariaDB 5.5 (等同 MySQL 5.5), 雖然現時 MySQL 最新版是 5.7, 但一般上升級都建議一級一級上, 而 MySQL 5.6 比 5.5 也提高了效能及提供更多功能, 以下是在 RHEL 及 CentOS 從原來的 MySQL 5.5 或 …

Apache log 的 internal dummy connection

當開啟 Apache 的 access_log 查看裡面的內容,查詢記錄內簡中會看到一堆 “internal dummy connection” 的記錄: ::1 – – “OPTIONS * HTTP/1.0” 200 – “-” “Apache/2.4.6 (CentOS) OpenSSL/1.0.1e-fips PHP/5.4.16 (internal dummy connection)” 根據 Apache 官方的說明, 這是 …

把 crontab 執行指令輸出寫入記錄檔

一般上在 crontab 自動執行的指令, 會將所有指令標準輸出及錯誤放到 /dev/null, 這便會略過所有指令的輸出, 例如用 crontab 執行 /root/my-script.sh, 一般上語法是這樣寫: * * * * * /root/my-script.sh > /dev/null 但有時需要將執行指令的輸出儲存下來, 只要將 /dev/null 換成記錄檔的位置即可, 例如想把指令的輸出放到 /var/log/mycrontab.log, 可以這樣寫: * * * …

查詢已安裝的 MySQL / MariaDB 版本

由於各個 MySQL 的版本都略有不同,而且又有 MaridDB 或 Percona 等分支版本, 很多時系統管理員都需要查詢系統內的 MySQL 版本,要查詢系統內的 MySQL 版本,以下列出幾種查詢 MySQL 版本的方法。 CLI 在 CLI 查詢 MySQL 版本十分簡單,用 mysql 指令便可以, 而且不用登入 MySQL: $ mysql -V 執行後會輸出 MySQL …

防止 SSH 連線逾時斷線

如果發現 SSH 閒置幾分鐘後, 因為基於安全理由, SSH 會自動斷線。但如果在測試或者正在安裝的新伺服器, 這樣也會很麻煩, 這個問題可以透過修改 SSH 客戶端或者 SSH 伺服器的設定解決。 SSH 客戶端 在 Linux 下的 SSH 客戶端, 開啟家目錄的 SSH 設定檔: $ vi ~/.ssh/config 加入以下兩行: 要留意第二行開始的位置, 必須像上面一樣加上空格, 然後執行以下指令載入設定: …

查詢已安裝的 PHP 版本

由於 PHP 各版本的寫法都略有不同,很多時都需要查詢系統內的 PHP 版本,或者系統管理員也有時會需要檢查 PHP 版本,要查詢系統內的 PHP,分別可以用 PHP 程式或者 CLI 指令模式完成,以下分別看一看幾種不同方法。 CLI 在 CLI 查詢 PHP 版本十分簡單,用 php 指令便可以: $ php –version 或 $ php-cgi –version 執行後會有類似的輸出: PHP …

diff 及 patch 指令 – 產生, 寫入 Patch 檔

Linux 的 diff 指令是用作逐行比較兩個檔案, 然後列出兩個檔案不同的地方, 以下文章會示範用 diff 產生程式的 Patch, 及用 patch 指令匯入 Patch。 diff 指令的語法: diff file1 file2 要比較兩個檔案, 最簡單的做法是直接將兩個要比較的檔案, 放在 diff 指令後面, 以下是比較 file1 及 file2: $ diff …