Linux iSCSI Target Setup

Posted by admin on 30 五月, 2013 11:46

iSCSI 技術的應用,常見「iSCSI Target」和「iSCSI Initiator」兩部分,也就是指 iSCSI 的目標端與發送端。以主從架構言之,實務上在 Server 上建置「iSCSI Target」服務,提供 Client 端以「iSCSI Initiator」軟體連線存取 iSCSI 磁碟,本文將以 Linux iSCSI Target 的簡易設定為主要內容。

【安裝環境】
Debian GNU/Linux 6,7 Ubuntu 13.04 Server

【安裝 iSCSI 服務】
apt-get install iscsitarget iscsitarget-dkms

安裝時若少了「iscsitarget-dkms」這個「建議套件」,啟用 iSCSI 服務時會有找不到「iscsi_trgt」模組的錯誤訊息。

【 iSCSI 服務基本設定】
安裝完 iscsitarget,設定 iscsitarget-dkms 前將有一段警告訊息:
[....] iscsitarget not enabled in "/etc/default/iscsitarget", not starting... ..[ (warning).

這個問題的解決需編輯設定檔:
vi /etc/default/iscsitarget
將「ISCSITARGET_ENABLE=false」改為「ISCSITARGET_ENABLE=true」,iSCSI Target 服務啟動時才能真正作用。

檢視連線允許設定:
vi /etc/iet/initiators.allow 末行顯示 ALL ALL
表示已預設開放所有來源與目的 iSCSI 連線,測試初期就先保持這樣暫不變動了。

【建立磁碟檔案】
使用 dd 指令建立空白檔案作為儲存區塊,如 40GB 檔案「lun0」存放於「/home/iscsi」:
dd if=/dev/sda of=/home/iscsi/lun0 bs=1024k count=40960

或在檔案伺服器建立了 100GB 的儲存空間(需時約五十分鐘),以供 VMware ESXi Server 使用:
dd if=/dev/sda of=/home/iscsi/lun1 bs=1024k count=102400

【編輯設定檔】
vi /etc/iet/ietd.conf
設定檔裡的 iqn 是 iSCSI 認證名稱 iSCSI Qualifier Name,這是 iSCSI 裝置的識別方式,一般命名原則為「iqn.日期yyyy-mm.反向網域名稱:主機名稱」,中間不能有空白,可允許最多255個字元。如:
Target iqn.2013-05.com.domain:storage.lun
          Lun 0 Path=/home/iscsi/lun0,Type=fileio

後來又新增幾個儲存區塊,於是設定檔再多加幾行:
Target iqn.2013-05.com.domain:storage.lun
          Lun 0 Path=/home/iscsi/lun0,Type=fileio
          Lun 1 Path=/home/iscsi/lun1,Type=fileio
          Lun 2 Path=/home/iscsi/lun2,Type=fileio

【重新啟動 iSCSI 服務】
/etc/init.d/iscsitarget restart
[ ok ] Removing iSCSI enterprise target devices: :.
[ ok ] Starting iSCSI enterprise target service:.
. ok
警告訊息全部消失,表示服務的停止和啓動皆為正常。

「iSCSI Target」的建置,或許以 FreeNAS、Openfiler 的方式,網頁介面感覺比較容易使用。而且目前市面上販售的 NAS 產品,大多也已內建此一功能。不過自行安裝設定看來也不困難,況且現有的 Linux File Server 只需幾個步驟,就可在 Samba、NFS 以外再新增 iSCSI 套件,提供更為全面的網路儲存服務。等到使用一段時間後,再研究 iSCSI Target 更為安全的進階設定,不論是 initiators.allow 還是 ietd.conf,兩個設定檔裡已有許多範例可供參考應用了。

iSCSI Target 的研究動機,其實是來自部署 VMware ESXi Server 的共用儲存需求。簡單的設定過程就可提供 ESXi 主機網路儲存使用,除了多重連線功能外,最為重要的穩定性,長期使用觀察證明也都沒有問題。

【相關網站】
關於iSCSI Linux iSCSI Project FreeNAS Openfiler

LifeType 系統搬家到 Ubuntu 13.04

Posted by admin on 02 五月, 2013 22:12

【套件檢查與新增】
下載 Ubuntu 13.04 光碟映像檔,選擇伺服器版本完成基本安裝,套件至少需選擇「OpenSSH Server」以便遠端登入使用,而當然更少不了包含 Apache2、MySQL 5.5、php5 等的「LAMP Server」套件組合。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install lamp-server^ php5-gd

先更新所有套件,再確認 LAMP Server 安裝完整,最後還需加上「GD」。



【檢查 php 設定】
開啟 php 的設定檔「/etc/php5/apache2/php.ini」,「Memory Limit」設定項目位於第 407 行:

 memory_limit = 128M

表示這個版本的預設值是 128MB,早期 Ubuntu 版本總要把預設的 16MB 調整為 48MB 以上,才夠學校 LifeType 運作所需,近幾年的版本使用 128MB 的預設值,可先沿用暫不調整。

【Apache 設定】
毋須特別設定,使用預設值即可。

至於慣用的 VirtualHost 設定則應……
sudo vi /etc/apache2/sites-enabled/virtualhost
加入:

# Name Based Virtual hosts
<VirtualHost *:80>
ServerName xxx.xxx.chc.edu.tw
DocumentRoot /var/www/LifeType資料夾
</VirtualHost>

「/etc/apache2/sites-enabled/virtualhost」這個檔案須自行建立、命名,不需 VirtualHost 功能或僅作測試者,可省略此一步驟。

重新啟動 Apache
sudo service apache2 restart

【程式及資料庫複製】
將原伺服器上 LifeType 程式及資料庫存放的兩個資料夾,以 rsync 指令下載至新的伺服器,用兩行指令就可完整複製。
rsync -av --delete user@163.23.xxx.xx:/var/www/blog/ /var/www/blog/
rsync -av --delete user@163.23.xxx.xx:/var/lib/mysql/lifetype/ /var/lib/mysql/lifetype/
rsync 會用指定的身份,登入「163.23.xxx.xx」這部原先 LifeType 所在的伺服器,下載「/var/www/blog」和「/var/lib/mysql/lifetype」兩個資料夾的檔案到新的系統平台。

不過,LifeType 網頁中的資料夾「tmp」,存放所有網誌的網頁快取與資料快取,若能事先清空,如:
sudo rm -rf /var/www/blog/tmp/*
肯定能大幅縮短檔案下載時間。



【系統測試】
測試前最好看一下「/var/www/blog/config/config.properties.php」這個設定檔,查閱資料庫管理者的帳號、密碼 是否 與這部主機相符,否則造成資料庫連線錯誤,LifeType 必定無法正常運作。而前述 LifeType 的「暫存目錄」,務必以「rm -rf /var/www/blog/tmp/*」指令或登入後台確認清除乾淨,才能確保部落格中所有超連結不是原先主機的路徑。

用新主機的 IP 位址+存放路徑當作暫用的網址測試,先開啟網頁「admin.php」進入系統後台。點選「全部站台管控」,在「全域設定」裡「一般設定」中的 「base_url」修改 存放網誌安裝的網址,原先「網址設定」request_format_mode 使用「讓搜尋引擎易於搜尋的簡潔網址」設定,也最好先暫時改回「一般網址」,這樣就可讓所有路徑都連結正常了。預設網誌的圖文都能正常顯示,而且 「summary.php」彙整頁面也可看到最新發表的文章。根據以往的經驗,到目前為此算是成功完成 LifeType 的複製。

不放心的話,進入部落的「檔案中心」,查看圖片、檔案能否正常顯示、下載,試著上傳圖檔並順利產生縮圖,接著發表新文章,應該都沒問題才是。

【測試成功】
即使存放路徑變更仍能登入後台,是 LifeType 在移機時方便的特點,這使得「修改網誌安裝網址」和「清理暫存目錄」這兩個重要步驟,在「非常時期」可以從後台完成。連安裝「phpMyAdmin」,登 入修改資料庫內容的步驟都可省略了。

在整個資料複製過程中,全靠「rsync」指令來完成。首次複製時用兩行指令就可把所需檔案完整複製傳送,測試沒問題準備上線前,關閉舊主機的 Apache 和 MySQL 服務,再用 rsync 加上 --delete 參數「同步」一次,確保兩端檔案的 100% 一致,最後只要更改 IP 位址設定就可正式上線啟用了。

【圖片來源】LifeType

WordPress 3 安裝更新與備份

Posted by admin on 17 十二月, 2012 13:06

WordPress 3 安裝前先到 WordPress 台灣正體中文網站,參閱「WordPress 正體中文版安裝」說明,最近釋出的 WordPress 3.5 正體中文版也可在此下載

【系統及套件安裝】
作業系統選用 Linux 平台 Debian 6.0.6 或 Ubuntu 12.10 Server,套件安裝至少應有「LAMP Server」和「phpMyAdmin」。

【下載解壓縮 WordPress 程式】
wget http://tw.wordpress.org/wordpress-3.5-zh_TW.tar.gz
cd /var/www/
tar zxvf ~/wordpress-3.5-zh_TW.tar.gz
chown -R www-data /var/www/wordpress
rm ~/wordpress-3.5-zh_TW.tar.gz

【建立資料庫】
phpMyAdmin 新增資料庫,這個 WordPress 專用的資料庫名稱可自訂。

【修改基本設定檔中資料庫設定值】
cd /var/www/wordpress/
mv wp-config-sample.php wp-config.php
vi wp-config.php
基本設定檔主要是更改「資料庫名稱」、「資料庫使用者名稱」及「資料庫密碼」三個部分。

【開始安裝設定】
以瀏覽器開啟「http://網址/wordpress/」,網頁自動轉到「http://網址/wordpress/wp- admin/install.php」開始安裝設定。輸入「網誌標題」、「帳號」、「密碼」、「電子郵件」等資料,按「安裝 WordPress」,系統自動建立資料表後,馬上就出現安裝完成畫面。

【固定網址設定】
建立 .htaccess 檔案
sudo touch /var/www/wordpress/.htaccess
sudo chmod 777 /var/www/wordpress/.htaccess

登入網誌 →網誌管理 →設定 →固定網址設定,選取設定選項 →儲存變更。

變更 .htaccess 讀取權限
sudo chmod 644 /var/www/wordpress/.htaccess

增加 Apache 的 mod_rewrite 模組
sudo a2enmod rewrite

編輯 Apache 設定檔
sudo vi /etc/apache2/apache2.conf
加入以下三行:
<Directory /var/www/wordpress>
     AllowOverride all
</Directory>

重新啟動 Apache
sudo /etc/init.d/apache2 restart

【系統備份】
將 WordPress 及資料庫上傳備份至遠端主機,備份路徑必要時加上「date +%Y%m」,可為資料夾產生年月編號,便於逐月保存備份資料。
rsync -av --delete /var/www/wordpress/ user@backupserver:/var/www/wordpress-`date +%Y%m`/
rsync -av --delete /var/lib/mysql/wordpress/ user@backupserver:/var/lib/mysql/wordpress-`date +%Y%m`/

或者從遠端主機執行備份指令,下載 WordPress 相關資料:
rsync -av --delete user@blogserver:/var/www/wordpress/ /var/www/wordpress/
rsync -av --delete user@blogserver:/var/lib/mysql/wordpress/ /var/lib/mysql/wordpress/

【網址變更後的設定】
網址名稱或 IP 的變更,可能出現在備份測試或其他情況,可事先登入後台改成即將使用的 URL。否則將會無法用新的網址瀏覽網誌,此時只能以 phpMyAdmin 進入資料庫,從「wp_options」資料表找到「siteurl」和「home」兩個項目來修改設定了。此外,「wp-config.php」裡資料 庫的連線設定,以及和固定網址相關的「.htaccess」,這兩個檔案也要檢查確認。

【系統更新】
WordPress 釋出新版時,登入後台就可看到相關訊息,按「自動化升級」更新應該是比較簡單的方式。
只是曾有更新時總會出現錯誤訊息,發生無法使用的情形:
「若要使用這項功能,WordPress 需要存取您的網頁伺服器。請輸入 FTP 密碼繼續。若您記不得密碼,您應該向您的主機商聯繫。」



而且佈景主題或外掛的自動更新時也都有相同的問題,只好暫時改用手動更新的方法。

後來想起應該只是權限的問題,這部主機的 WordPress 放在網頁伺服器主目錄,擁有者不該是「nobody」而是「www-data」,修改 WordPress 資料夾的「擁有者」:
sudo chown -R www-data /var/www/wordpress
「自動更新」這個 WordPress 特有的好用功能,總算是恢復正常了。

如果真要「手動升級」就比較麻煩了。
只能以指令模式完成更新,先下載新版安裝包:
wget http://tw.wordpress.org/wordpress-3.x.x-zh_TW.tar.gz

備份 .htaccess、WordPress 設定檔、佈景主題、外掛程式等幾個重要資料後,再刪除整個舊版 WordPress 資料夾。
cd /var/www
tar czvf ~/wp3.tar.gz wordpress/.htaccess wordpress/wp-config.php wordpress/wp-content/themes/ wordpress/wp-content/plugins/
rm -rf /var/www/wordpress/

解壓縮新版 WordPress 及回存原有設定檔、佈景主題、外掛程式等備份資料。
tar zxvf ~/wordpress-3.x.x-zh_TW.tar.gz
tar zxvf ~/wp3.tar.gz
所以,「自動化升級」的功能正常時,是 WordPress 最簡便的更新方式。

【後記】
WordPress 是目前廣受好評的開放原始碼網誌及内容管理系统,從正體中文網站下載的版本,安裝時已改善了舊版中文化繁瑣步驟的缺點,使得整個過程更為簡單順暢。安裝好 的 WordPress 是可供多人登入使用的單一網誌,架設主題網站也很合適。如果想要有 LifeType 般的多網誌功能,就要用到「WordPress Mu」了。不過 WordPress Mu 已不再單獨發行,成為 WordPress 3 裡的一個功能,這個部份需修改設定,進入後台啟用才可使用,有空再研究測試。

【相關網站】
WordPress 台灣正體中文 WordPress 官方網站

LifeType 系統移轉至 Ubuntu 12.04

Posted by admin on 09 五月, 2012 09:30

【套件檢查與新增】
下載 Ubuntu 12.04 光碟映像檔,選擇伺服器版本完成基本安裝,套件至少需選擇「OpenSSH Server」以便遠端登入使用,而當然更少不了包含 Apache2、MySQL 5.5、php5 等的「LAMP Server」套件組合。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install lamp-server^ php5-gd

先更新所有套件,再確認 LAMP Server 安裝完整,最後還需加上「GD」。



【檢查 php 設定】
php 的設定檔在這裡:
/etc/php5/apache2/php.ini
搜尋 Memory Limit 設定項目,約在第 465 行左右:

 memory_limit = 128M

表示這個版本的預設值是 128MB,根據以前 Ubuntu 版本的經驗,總要把預設的 16MB 調整為 48MB 以上,才夠學校 LifeType 運作所需,128MB 的話可以放心了。看來將來新的 php 版本上,這個步驟應可省略了。

【Apache 設定】
毋須特別設定,使用預設值即可。

至於慣用的 VirtualHost 設定則應……
sudo vi /etc/apache2/sites-enabled/virtualhost
加入:

# Name Based Virtual hosts
<VirtualHost *:80>
ServerName xxx.xxx.chc.edu.tw
DocumentRoot /var/www/LifeType資料夾
</VirtualHost>

「/etc/apache2/sites-enabled/virtualhost」這個檔案須自行建立、命名,不需 VirtualHost 功能或僅作測試者,可省略此一步驟。

重新啟動 Apache
sudo service apache2 restart

【程式及資料庫複製】
將原伺服器上 LifeType 程式及資料庫存放的兩個資料夾,以 rsync 指令下載至新的伺服器,用兩行指令就可完整複製。
rsync -av --delete user@163.23.xxx.xx:/var/www/blog/ /var/www/blog/
rsync -av --delete user@163.23.xxx.xx:/var/lib/mysql/lifetype/ /var/lib/mysql/lifetype/
rsync 會用指定的身份,登入「163.23.xxx.xx」這部原先 LifeType 所在的伺服器,下載「/var/www/blog」和「/var/lib/mysql/lifetype」兩個資料夾的檔案到新的系統平台。

不過,LifeType 網頁中的資料夾「tmp」,存放所有網誌的網頁快取與資料快取,若能事先清空,如:
sudo rm -rf /var/www/blog/tmp/*
肯定能大幅縮短檔案下載時間。



【系統測試】
測試前看一下「/var/www/blog/config/config.properties.php」這個設定檔,查閱資料庫管理者的帳號、密碼是否與這部主機相符,否則造成資料庫連線錯誤,LifeType 必定無法正常運作。而前述 LifeType 的「暫存目錄」,以「rm -rf /var/www/blog/tmp/*」指令或登入後台確認清除乾淨,才能確保部落格中所有超連結不是原先的絕對路徑。

用新主機暫用的網址測試,先開啟網頁「admin.php」進入系統後台。點選「全部站台管控」,在「一般設定」中的「base_url」修改存放網誌安裝的網址,原先的「簡潔網址」設定,也先暫時改回「一般網址」,這樣就可讓所有路徑都連結正常了。預設網誌的圖文都能正常顯示,而且「summary.php」彙整頁面也可看到最新發表的文章。根據以往的經驗,到目前為此算是成功完成 LifeType 的複製。

不放心的話,進入部落的「資料夾」,查看圖片、檔案能否正常顯示、下載,試著發表文章,應該都沒問題才是。接下來只要更改 IP 位址設定就可正式上線啟用了。

【測試成功】
在整個資料複製過程中,全靠「rsync」指令來完成。首次複製時用兩行指令就可把所需檔案完整傳送複製,測試沒問題準備上線前,關閉舊主機的 Apache 和 MySQL 服務,再用 rsync 加上 --delete 參數「同步」一次,確保兩端檔案的 100% 一致。而且這個方法應用在「SFS3」、「Joomla!」等系統上同樣可行。
 
即使存放路徑變更仍能登入後台,是 LifeType 在移機時方便的特點,這使得「修改網誌安裝網址」和「清理暫存目錄」這兩個重要步驟,在「非常時期」可以從後台完成。省去安裝 phpMyAdmin,修改資料庫內容的過程。

【圖片來源】
Ubuntu LifeType

Joomla! 1.7 Linux 平台安裝

Posted by admin on 14 十一月, 2011 14:51

【作業系統】
Linux Debian 6.0.3 / Ubuntu 11.10

【基本套件安裝】
LAMP Server 安裝:
sudo apt-get install apache2 libapache2-mod-php5 php5 php5-gd mysql-server php5-mysql
其他選用套件安裝:
sudo apt-get install rsync zip



【Joomla 程式下載解壓縮】
前往 Joomla 網站下載解壓縮 Joomla 1.7 安裝包,如:
wget http://joomlacode.org/gf/download/frsrelease/16024/69674/Joomla_1.7.3-Stable-Full_Package.zip
sudo mkdir /var/www/joomla
sudo cd /var/www/joomla
sudo unzip ~/Joomla_1.7.3-Stable-Full_Package.zip
sudo rm ~/Joomla_1.7.3-Stable-Full_Package.zip

【安裝前的準備】
檔案及資料夾擁有者與權限修正:
sudo chown -R www-data:www-data /var/www/joomla/
sudo chmod -R 775 /var/www/joomla/

關閉 php 輸出緩衝功能:
sudo vi /etc/php5/apache2/php.ini
約262行處將「output_buffering = 4096」改為「output_buffering = Off」。

重新啟動 Apache 讓設定值生效:
sudo /etc/init.d/apache2 restart

在 Linux 主機的安裝前準備工作已經就緒,可暫時中斷 SSH 連線,開啟瀏覽器進入安裝程序。

【開始安裝】
瀏覽器中輸入網址「http://網址/joomla/」
系統自行轉址至安裝頁面「http://網址/joomla/installation/index.php」
進入安裝頁面,依序完成步驟:
1 : 語言─選擇語言
2 : 安裝前檢查─安裝前檢查須全部正常
3 : 授權規定─閱讀全文後進入下一步
4 : 資料庫─填入資料庫相關設定資料
5 : FTP設定─FTP設定可先按下一步略過
6 : 設定─網站名稱、管理者Email和密碼等主要設定,以及安裝範例資料。
7 : 完成
恭喜!Joomla! 現在已經安裝好了。

【移除安裝目錄】
按下網頁中「移除安裝資料夾」按鈕,完整移除安裝資料夾,才能再繼續執行其他工作。

【中文語系安裝啟用】
瀏覽 Joomla! 社群網站下載語言包檔案:
http://joomlacode.org/gf/download/frsrelease/15958/69314/zh-TW_joomla_lang_full_172_v1028.zip
壓縮檔中的語系檔應包含「zh-TW administrator language」管理區和「zh-TW site language」前台兩項,解壓縮後看到的 admin_zh-TW.zip 和 site_zh-TW.zip 就是了。

進入網站管理區應輸入網址:http://網址/joomla/administrator/
Extension > Extension Manager: Install > Upload Package File > Upload & Install
分別上傳安裝「Administrator language」和「Site language」套件包壓縮檔,兩次上傳安裝若能順利,網頁畫面將顯示……
Installing language was successful.

完成後應可自動啟用,或者登出再登入也可以。有時預設語言需手動修改,這在後台「Language Manager 語言管理」選項可找到……
Extension > Language Manager: Installed Languages > Filter Location
Site 和 Administrator 兩部分都要改為自訂的中文語系。

【系統更新】
更新版本釋出訊息發布時,可體驗一下「One Click Version Updating」的便捷功能。
登入後台 > 擴充套件管理:更新 > 勾選版本執行更新


  ▲ One Click Version Updating 系統更新

【新增佈景主題或擴充套件】
登入後台 > 擴充套件管理:安裝……
「上傳套件包檔案」或「由網址安裝」都可以。

【網址變更後的設定】
使用 Joomla 這類的 CMS 時,總會注意網址變更後,系統如何設定調整的問題,因為從測試到正式上線,變更網址是必經的過程。還好 Joomla 在這方面沒問題,頂多就是到後台「網站維護」裡,執行重置快取就可讓所有頁面連結更新正常了。


  ▲ Joomla! 網站預告新版更新週期

【系統備份】
將 Joomla 相關檔案資料備份,或建置備援主機。不論是手動或排程執行,都可讓人感覺比較安心。
在主機的文字模式下使用「rsync」指令,將 Joomla 及資料庫上傳備份至遠端主機:
sudo rsync -av --delete /var/www/joomla/ user@backupserver:/var/www/joomla/
sudo rsync -av --delete /var/lib/mysql/joomla/ user@backupserver:/var/lib/mysql/joomla/

或從遠端主機執行備份下達指令:
sudo rsync -av --delete user@server:/var/www/joomla/ /var/www/joomla/
sudo rsync -av --delete user@server:/var/lib/mysql/joomla/ /var/lib/mysql/joomla/

指令的「--delete」參數是用來「同步備份」的,無此需求則可省略。備份資料傳送完毋須修改資料庫內容,備用網站重置快取後即可瀏覽使用。

【相關網站】
Joomla! What is Joomla in Traditional Chinese?

Debian 6 phpSysInfo 安裝

Posted by admin on 08 八月, 2011 10:18

phpSysInfo 的安裝用 apt-get 指令,本來是一件很容易的事,在 Ubuntu 11.04 上執行「apt-get install phpsysinfo」,不用任何設定,該裝的全部都裝好了。而在 Debian 6 則是相關套件全裝好了,卻無法瀏覽 phpSysInfo 網頁,只好自己想辦法手動安裝了。

【安裝環境】
Debian 6.0.3 / phpSysInfo 3.0.15

【安裝相關套件】
sudo apt-get install apache2 libapache2-mod-php5 php5-mysql
網頁服務有多種套件可供使用,Apache 是比較熟悉且容易設定的選擇。

【主程式下載解壓縮】
下載、解壓縮和刪除 phpSysInfo 3.0.15 安裝檔:
wget http://nchc.dl.sourceforge.net/project/phpsysinfo/phpsysinfo/3.0.15/phpsysinfo-3.0.15.tar.gz
sudo cd /var/www/
sudo tar zxvf ~/phpsysinfo-3.0.15.tar.gz
sudo rm ~/phpsysinfo-3.0.15.tar.gz

【設定檔複製】
sudo cd /var/www/phpsysinfo/
sudo cp config.php.new config.php 或者
sudo mv config.php.new config.php
這樣應該就可以瀏覽 http://網址/phpsysinfo/ 這部主機的 phpSysInfo 網頁了!


▲ 圖片來源:phpSysInfo SourceForge Project

【php 5 設定】
其實瀏覽 phpSysInfo 網頁並不順利,出現了常見「詢問開啓或儲存 php 網頁」的訊息視窗,表示 php 設定要改一下︰
sudo vi /etc/apache2/mods-available/php5.conf
把11~15行前面加上#號,如:

#    <IfModule mod_userdir.c>
#        <Directory /home/*/public_html>
#            php_admin_value engine Off
#        </Directory>
#    </IfModule>

sudo /etc/init.d/apache2 restart
再重新啓動 Apache 即可。

清除瀏覽器的 Cache,或改用另一個瀏覽器,換一部電腦測試就沒問題了。

【進階設定】
有興趣繼續研究的話,可試著修改預設語系為正體中文,以及指定網頁佈景主題。
sudo vi /var/www/phpsysinfo/config.php

分別是 75 行「en」改為「tw」,如:
define('PSI_DEFAULT_LANG', 'tw');

以及第 80 行「phpsysinfo」改成 aqua、clean、cream、jstyle_blue、jstyle_green、nextgen、phpsysinfo 或 two 任選其一,如:
define('PSI_DEFAULT_TEMPLATE', 'aqua');

【程式更新】
新版程式釋出時,將原有檔案資料刪除:
sudo rm -rf /var/www/phpsysinfo/

重複下載、解壓縮等步驟,重新安裝即可。

【相關網站】
phpSysInfo phpSysInfo SourceForge Project

Linux 安裝 Drupal 7.2

Posted by admin on 26 五月, 2011 15:20

作業系統:Linux Debian 6.0.1 / Ubuntu 11.04

Drupal 7 於 2011 年 1 月正式版推出至今,歷經四個月已成 7.2 版,來把當時搶鮮安裝的說明內容更新一下。

【套件檢查與新增】
確認 LAMP Server 安裝完整,
sudo apt-get install apache2 libapache2-mod-php5 php5 php5-gd mysql-server php5-mysql
再新增套件 phpMyAdmin。
sudo apt-get install phpmyadmin



【Drupal 程式下載解壓縮】
前往 Drupal 官方網站,下載解壓縮 Drupal 7.2 安裝包:
wget http://ftp.drupal.org/files/projects/drupal-7.2.tar.gz
tar zxvf drupal-7.2.tar.gz
rm drupal-7.2.tar.gz

重新命名及移動 Drupal 資料夾,以及建立 settings.php 和 files 這兩個必備的檔案和資料夾:
mv drupal-7.2 drupal
mv drupal /var/www
cd /var/www/drupal
cp sites/default/default.settings.php sites/default/settings.php
mkdir sites/default/files

繁體中文語系下載:
瀏覽 Drupal core translation downloads 網頁下載中文語系檔,移動檔案存放至正確路徑,如:
wget http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.2.zh-hant.po
mv drupal-7.2.zh-hant.po /var/www/drupal/profiles/standard/translations/
這部份預先作好準備,安裝時就有繁體中文的語言選項可供選擇,比起安裝後才新增這樣容易多了。

檔案及資料夾權限設定:
chmod -R 775 /var/www/drupal/
chmod -R 777 /var/www/drupal/sites/default/files/
chmod 777 /var/www/drupal/sites/default/settings.php
chown -R www-data:www-data /var/www/drupal/

【資料庫新增】
建立 Drupal 資料庫名稱自訂,可使用 phpMyAdmin 新增。

【開始安裝】
輸入網址如:http://網址/drupal/
自動進入安裝頁面:http://網址/drupal/install.php

依序完成步驟:
1. Choose profile 選擇安裝方式
2. Choose language 選擇語言
3. Verify requirements 檢查系統需求
4. Setup database 設定資料庫
5. Install profile 安裝網站
6. Configure site 設定網站
7. Finished 安裝完成
其中,選擇中文語言後,將多出設定翻譯語言的安裝步驟。

【中文化安裝設定】
這段補充說明用於安裝時,未下載及選用中文界面日後想再新增時,前述「繁體中文語系下載」步驟完成者這部份可略過。
下載繁體中文 po 檔:
http://localize.drupal.org/translate/languages/zh-hant
登入後台:Modules →勾選啟用 Locale 模組以便增加語言處理功能,才能匯入中文的翻譯介面。
Configuration →Regional and language →Translate interface →Import Translate →瀏覽 Language file,上傳 po 檔 →Import into「繁體中文」 →Import。
啟用設定:Configuration →Regional and language →Language,將「Chinese, Traditional」啟用並設為預設語系。必要時先停用「English」界面,以便正常轉換語言界面。
另有將內容翻譯為不同的語言的「Content Translation」模組,已內建於系統中可自行選用。

【網站狀態報告】
安裝完成後登入網站瀏覽網站的狀態報告:管理 > 報告 > 狀態報告
以確認網站運作的正常與安全。

【常用網址】
管理模式:?q=admin
網站維護模式設定:?q=admin/config/development/maintenance
系統更新:update.php

相關網站:Drupal 官方網站 Drupal Taiwan

Debian 6.0 安裝 SFS3

Posted by admin on 01 三月, 2011 13:58

【作業系統安裝】
下載安裝 Debian GNU/Linux 6.0 伺服器版作為學務系統平台,安裝套件只選「SSH 伺服器」,以最精簡的方式完成作業系統的安裝。

【更新及安裝套件】
以 apt 指令先作系統更新,再安裝 SFS 必備的「LAMP」相關套件:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install apache2 php5 php5-gd mysql-server php5-mysql

新增其他選用套件,這些套件即使沒有安裝,也不會影響學務系統的正常運作。
sudo apt-get install ncftp rcconf rsync phpmyadmin zip
ncftp、rsync 供備份上傳使用,rcconf 可管理開機啟動服務項目,加上 phpmyadmin 都可視需要再新增安裝。

【網路 IP 設定】Debian
sudo vi /etc/network/interfaces

auto eth0
iface eth0 inet static
   address 163.XX.XX.XX
   netmask 255.255.255.192
   network 163.XX.XX.XX
   broadcast 163.XX.XX.127
   gateway 163.XX.XX.126

可再新增幾行 IP 位址設定,以便支援 IPv6:
iface eth0 inet6 static
   address 2001:288:xxxx::x
   netmask 48
   gateway 2001:288:xxxx::1

sudo /etc/init.d/networking restart
重新啟動網卡,完成網路固定位址設定。
 (閱讀全文)

SSH 登入免密碼設定

Posted by admin on 08 二月, 2011 11:47

作業系統:Debian 7 / Ubuntu 13.04

連線 SSH 登入不用輸入密碼的設定,是為了方便運用 Rsync 指令的排程備份作業。設定過程和原理如同準備兩份鑰匙,一把交給對方保管,將來登門拜訪時拿鑰匙作為識別依據。這些數位化的「鑰匙」存放在電腦的檔案裡, 內容就是一長串英文 字母與數字的組合,而製作鑰匙的工具正是「ssh-keygen」指令。

【建立金鑰】
連線端電腦執行「ssh-keygen」指令建立金鑰……
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
首次執行需完成兩個設定項目,也可直接按三次 Enter 鍵使用預設值設定。

Your identification has been saved in /user/.ssh/id_rsa.
Your public key has been saved in /user/.ssh/id_rsa.pub.
The key fingerprint is:
33:4f:4f:08:c3:4a:f1:5b:e0:dd:96:96:f9:8d:6a:53 user@hostname
……

【檢查金鑰檔案】
確認私鑰與公鑰……
ls -al ~/.ssh
drwx------ 2 user user 4096 2011-03-01 13:55 .
drwx------ 5 user user 4096 2011-03-01 13:52 ..
-rw------- 1 user user 1679 2011-03-01 13:55 id_rsa
-rw-r--r-- 1 user user  394 2011-03-01 13:55 id_rsa.pub

「id_rsa」和「id_rsa.pub」兩個檔案已建立。

【複製公鑰內容】
vi ~/.ssh/id_rsa.pub
檢視公鑰檔案會看到一串字碼,如:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ...... 6GkPLPGndut4+rcVB.....AkRItZ9tkx user@hostname
選取複製這些資料。

SSH 連線輸入使用者名稱及密碼登入遠端伺服器後,開啟使用者家目錄中「.ssh」資料夾裡的「authorized_keys」檔案,貼上剛才暫存的公鑰檔案 內容:

 ssh 172.20.1.x
   username@host:~# vi ~/.ssh/authorized_keys
  
......

可是…「authorized_keys」這個檔案以及資料夾「.ssh」通常是不存在的,需先以「mkdir .ssh」建立資料夾,再以「vi authorized_keys」指令直接編輯存檔即可。再次 SSH 連線伺服器時,即可直接以指定使用者名稱登入,不再需要輸入密碼了。

在任何管理機制中,安全與方便常常是難以兼顧的,這樣的免密碼登入方式的運用,當然得自行評估斟酌使用了。

修正開啟 php 網頁變成下載的問題

Posted by admin on 24 元月, 2011 14:51

瀏覽 Linux Apache Server 的 php 網頁無法編譯,卻成了詢問開啓或下載檔案的畫面?



不幸遇到這個常見問題時先別急,以伺服器作業系統 Debian 6 為例,只要修改伺服器 php5 設定就行了。
sudo vi /etc/apache2/mods-available/php5.conf



把11~15行前面加上#號,例如:

#    <IfModule mod_userdir.c>
#        <Directory /home/*/public_html>
#            php_admin_value engine Off
#        </Directory>
#    </IfModule>

再重新啓動 Apache 即可。
sudo /etc/init.d/apache2 restart

還是不行?很正常!清除瀏覽器的 Cache ,或改用另一個瀏覽器,換一部電腦測試就可以了。

【圖片來源】
php 標誌圖片取自 Wikipedia。

近期文章

文章彙整

新聞交換