fsck 指令 – 檢查及修復檔案系統

fsck 是 Unix Like 環境下常用的檔案系統檢查工具, 可以對例如斷電, 強制關機等人為因素所造成的檔案系統錯誤進行修復, 以下會列出 fsck 常用的例子, 但要留意的是, 用 fsck 做檢查最好在 single user mode, 如果在正常開機的情況, 也要將檔案系統卸載或者重新掛載成唯讀, 以免造成資料損毀。 檢查 /dev/sda2, 可以執行: # fsck /dev/sda2 如果想一次過檢查所有檔案系統, 可以用 -A, …

PHP 內建的 Web Server

PHP 從 5.4 開始內建簡單的 Web Server, 主要用作開發環境測試用途。比起以往要安裝 Apache 及 PHP 簡單方便得多, 但不知道跟用 Apache + PHP 的環境差異有多大。 啟動 PHP Web Server 指令: php -S localhost:80 -t 執行後便會出現以下信息: PHP 5.4.0 Development …

RHEL / CentOS 隱藏進程

以往用 mysqldump 備份 MySQL 自動備份時, 例如之前分享的 MySQL 備份 Shell Script 及 Perl Script 自動備份 MySQL, 當 mysqldump 備份時, 如果其他使用者可以執行指令, 可以用 ps aux 看到 mysql 的密碼。要禁止一般使用者用 px -aux 查看其他使用者的進程 (process), …

PHP: 改變 file_get_contents() User-Agent

PHP 的內建函式 file_get_contents() 除了可以讀取本地檔案外, 也可以擷取遠端網頁, 但有些時候會還到 403 Forbidden 情況, 原因是網站伺服器會讀取 user-agent, 判斷是否瀏覽器正常訪問。 一般上網站會用 user-agent 判斷訪客的瀏覽器或 OS, 例如手機訪客所看到的網頁跟 desktop 有所不同。而封鎖像 PHP 的 file_get_contents() 之類的非正常瀏覽 user-agent, 可以減少伺服器的負荷及外部的 DDOS 攻擊。 要解決這個問題, 可以在 …

Perl 印出顏色文字

在寫 Perl Script 時通常我會將錯誤訊息用紅色顯示, Warning 用黃色, 執行正確用錄色, 看似沒什麼用, 但其實很方便, 不用細心看輸出內容就可以知道有沒有錯誤。在另一篇文章 Shell Script 輸出顏色文字 介紹了在 Shell Script 輸出顏色文字的方法, 但這個方法並不好記, 因為顏色碼是數字, 通常用過就會忘記。 Perl 要印出顏色文字同樣可以用上面提及的顏色碼, 但另一個更方便的做法是用內建的 ANSIColor 模組, 用 ANSIColor 的好處是不用記顏色碼, 直接用顏色的英文名稱即可, …

Linux 查看及轉換檔案編碼

Linux 下要查看檔案的編碼有多種方法, 以下會用 file 指令查看檔案的編碼。例如查看 php.ini 檔案的編碼: $ file -i php.ini php.ini: text/plain; charset=us-ascii 上面可以看到 php.ini 檔案是純文字檔, 編碼是 us-ascii, 如果不想輸出檔案名稱, 只要得出檔案類型及結果, 可以加入 -b 參數: $ file -bi php.ini text/plain; …

sudo 不用密碼設定

想要執行 sudo 指令時不用輸入密碼,可以用 visudo 設定: 1. 執行 visudo 編輯 sudo 設定檔: sudo visudo 2. 開啟了 /etc/sudoers (不要用 vi 直接開啟,要做上面的方法,建議執行 visudo) 後,假設用戶名稱是 user123, 找到這行: user123 ALL=(ALL) ALL 改成 user123 ALL=NOPASSWD: …