DSpace 1.5.1安裝法
DSpace 1.5.1安裝法
DSpace在1.4.2之後安裝方法有些改變,也為了補完之前那篇技術文件說明實在不是很清楚,所以我打算重新整理一下DSpace 1.5.1的安裝方法。
作業系統:CentOS
本次安裝使用的是CentOS 5.2,可從義守大學的FTP下載:- CentOS-5.2-i386-bin-DVD.iso:http://ftp.isu.edu.tw/pub/Linux/CentOS/5.2/isos/i386/CentOS-5.2-i386-bin-DVD.iso
至於CentOS的安裝方法,雖然說也夠簡單的了,請參考SmallKen's Blog的CentOS 5 Linux 系統安裝教學,圖文並茂十分易懂。
安裝時,有幾點要注意的:
- 我是選用圖形介面,也比較好操作。
- 磁碟分割方法請見下一節的說明。
- 選擇安裝其他套件時,記得要額外勾選安裝PostgreSQL跟Apache、PHP(方便之後安裝phpPgAdmin)喔!
- 開放8080連接埠。
- 建立一個名為「dspace」帳號,或是在安裝完成之後利用useradd指令新增帳號。
CentOS磁碟分割
為了之後便於針對磁碟分割進行映像檔備份,建議把以下特別會使用到的目錄掛載點給予單獨的磁碟分割,並說明建議的分割大小:- /dspace:預設DSpace執行程式的安裝位置,裡面也有預設的bitstream數位檔案保存路徑(/dspace/assetstore/),會隨著保存越多檔案而越來越龐大!考慮空間的時候,除了/dspace基本安裝約需要100MB之外,還要把之後典藏的檔案也一併考慮進去,
- /opt:DSpace的原始檔跟其他環境所需的套件都會擺在這邊,大約最少需要1GB來擺放比較穩定。
CentOS遠端連線
安裝完CentOS之後,並設定好網路連線,你就可以用遠端操控SSH來連線到CentOS,而不需要待在本機端才能工作囉。因為以下操作我們都是用指令列進行,並且輔以檔案的上傳,所以我在此介紹兩個好用的管理工具:
- Pietty:可以以SSH或Telnet遠端連線的方便工具,自由軟體、不需要安裝可直接執行。而且在Windows當中把檔案拖曳到連線中的Pietty視窗還可以執行上傳動作!(這好像很多人都不知道)
- FileZilla Portable:SSH支援類似FTP的SFTP檔案傳輸功能,而FileZilla則是專門負責檔案上傳、下載的傳輸工具。自由軟體,Portable版本則免安裝即可執行。
JAVA環境:Java SE Development Kit(JDK)
- JDK下載網頁:http://java.sun.com/javase/downloads/index.jsp
- jdk-6u12-linux-i586-rpm.bin備份(SkyDrive空間):下載1(http://0rz.tw/Rscvz)、下載2(http://0rz.tw/ODwVZ) (zip分割檔,建議用7-zip解壓縮) MediaFire空間
- jdk-6u12-linux-i586-rpm.bin備份(Adrive空間):下載
[root@dspace ~]# wget http://或是使用SFTP、Pietty的SCP功能(直接把檔案拖曳到連線中的Pietty視窗)上傳到/root目錄。
這是一個bin壓縮檔,需要執行以解壓縮。首先要利用chmod指令修改權限,再執行該檔案以解壓縮:
[root@dspace ~]# chmod 755 jdk-6u12-linux-i586-rpm.bin [root@dspace ~]# ./jdk-6u12-linux-i586-rpm.bin
(執行解壓縮)
(解壓縮進行中)
(解壓縮完畢)
解壓縮過程當中會詢問是否要解壓縮,請回答「yes」確定,解壓縮檔案之後的jdk-6u12-linux-i586.rpm會位於該帳號的家目錄中,以root帳號來說就是「/root」。
接下來執行rpm安裝:
[root@dspace ~]# rpm -ivh jdk-6u12-linux-i586.rpm
如果安裝完成之後,可以檢查看有沒有「/usr/java/jdk1.6.0_12/」目錄,如果有此目錄表示安裝成功。可以利用cd指令來移動目錄看看:
[root@dspace ~]# cd /usr/java/jdk1.6.0_12/
DSpace安裝所需套件1:Maven (Mvn)
- Maven下載網頁:http://maven.apache.org/download.html
- apache-maven-2.0.9-bin.tar.gz備份:SkyDrive空間下載 (http://0rz.tw/AIGxd)
[root@dspace ~]# mkdir /opt [root@dspace ~]# chmod 755 /opt [root@dspace ~]# cd /opt [root@dspace opt]# tar -zxvf apache-maven-2.0.9-bin.tar.gz
以上步驟完成之後會建立「/opt/apache-maven-2.0.9-bin/」目錄。最後還要修改/etc/profile才算安裝完成,這部份作法留到最後後面的部份再來說明。
DSpace安裝所需套件2:Ant
- Ant下載網頁:http://ant.apache.org/bindownload.cgi
- apache-ant-1.7.1-bin.tar.gz備份:SkyDrive空間下載
[root@dspace opt]# cd /opt [root@dspace opt]# tar -zxvf apache-ant-1.7.1-bin.tar.gz以上步驟完成之後會建立「/opt/apache-ant-1.7.1-bin/」目錄。一樣的還要修改/etc/profile才算完成。
DSpace伺服器環境:Tomcat
- Tomcat下載頁面:http://tomcat.apache.org/download-60.cgi
- apache-tomcat-6.0.13.tar.gz備份:SkyDrive下載。
[root@dspace opt]# cd /opt [root@dspace opt]# tar -zxvf apache-tomcat-6.0.13.tar.gz然後修改連線編碼為「UTF-8」。
[root@get ~]# vim /opt/apache-tomcat-6.0.13/conf/server.xml
找到下面設定:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
改為以下設定,利用vim編輯器加入紅字的「URIEncoding="UTF-8」:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
設定環境變數:/etc/profile
接下來是修改/etc/profile的環境變數,為了體貼不會使用文字編輯器vim的使用者,這節以下一步一步地說明,請照著作吧,但之後的vim編輯器就不寫這麼詳細囉:- 利用vim開啟/etc/profile。如果沒有vim,那也可以用vi。
[root@dspace opt]# vim /etc/profile
- 移動游標,找到「export PATH……」開頭的內文,如下:
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
- 在該行上方按「a」按鍵,此時進入編輯模式,可以自由編輯該檔案。
- 插入以下紅色部份的程式碼,包括在2所指的「export PATH……」後面加入其他環境變數。
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then INPUTRC=/etc/inputrc fi JAVA_OPTS="-Xmx2048M -Xms2048M -Dfile.encoding=UTF-8" ANT_HOME=/opt/apache-ant-1.7.1 JAVA_HOME=/usr/java/jdk1.6.0_12 CATALINA_HOME=/opt/apache-tomcat-6.0.13 CLASSPATH=$CATALINA_HOME/common/lib/servlet-api.jar PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ANT_HOME/bin:$PATH:/opt/apache-maven-2.0.9/bin export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC ANT_HOME JAVA_HOME CATALINA_HOME CLASSPATH for i in /etc/profile.d/*.sh ; do
- 按「Esc」鍵,結束編輯模式。
- 輸入「:」,跳到命令模式。
- 輸入「wq」然後按下「enter」鍵,表示儲存並且離開vim編輯器。
- 然後利用source指令重新載入/etc/profile。
[root@dspace opt]# source /etc/profile
PostgreSQL資料庫
如果照著上面CentOS安裝步驟中所說的來作,您現在的CentOS當中應該安裝了PostgreSQL。接下來的步驟則是設定PostgreSQL,以提供DSpace的順利安裝。- 設定PostgreSQL的連線設定,請修改「/var/lib/pgsql/data/pg_hba.conf」
[root@dspace opt]# vim /var/lib/pgsql/data/pg_hba.conf
找到檔案「# Put your actual configuration here」以下的設定,把所有「ident sameuser」改成「trust」。原始的設定如下:(注意一下換行的問題)# TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all ident sameuser # IPv4 local connections: host all all 127.0.0.1/32 ident sameuser # IPv6 local connections: host all all ::1/128 ident sameuser
把method(連線方式)中的「ident sameuser」改成「trust」,修改後如紅字的部份:# TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust #ident sameuser # IPv4 local connections: host all all 127.0.0.1/32 trust #ident sameuser # IPv6 local connections: host all all ::1/128 trust #ident sameuser
- 啟動PostgreSQL
[root@dspace opt]# /etc/init.d/postgresql start
- 在PostgreSQL資料庫中新增「dspace」帳號,系統會提示你輸入dspace帳號的密碼,先假設為「dspacepassword」好了。接著建立資料庫「dspace」:
[root@dspace opt]# createuser -U postgres -d -A -P dspace [root@dspace opt]# createdb -U dspace -E UNICODE dspace
DSpace安裝前設定調整
- DSpace下載頁面,http://www.dspace.org/index.php/Software/
- dspace-1.5.1-src-release.tar.gz備份:SkyDrive下載 (http://0rz.tw/DVWSV)
[root@dspace opt]# cd /opt [root@dspace opt]# tar -zxvf dspace-1.5.1-src-release.tar.gz
用vim開啟DSpace的設定檔「/opt/dspace-1.5.1-src-release/dspace/config/dspace.cfg」。
[root@get ~]# vim /opt/dspace-1.5.1-src-release/dspace/config/dspace.cfg
設定項目繁多,但以下幾項是必需要調整的,前面黑色的字是項目名稱(有些被註解符號「#」註解掉了,請取消註解吧),紅色的字是可以調整的值,請跟著一起設定吧
- 設定DSpace程式安裝位置為「/dspace」目錄
dspace.dir = /dspace
- DSpace的網址,如果你的hostname是「dspace.lias.nccu.edu.tw」的話,那麼就這樣寫:
dspace.url = http://dspace.lias.nccu.edu.tw:8080/jspui dspace.hostname = dspace.lias.nccu.edu.tw
- 設定資料庫連線位置、連接埠跟資料庫名稱:
db.url = jdbc:postgresql://localhost:5432/dspace
- 設定資料庫連線的帳號與密碼,剛剛設定的帳號為「dspace」,密碼假設為「dspacepassword」好了:
db.username = dspace db.password = dspacepassword
- 設定mail server(郵件伺服器)的位置,不然沒辦法送出註冊信:
mail.server=localhost
- 設定handle前置代號為你自己單位的代號,這會影響到DSpace每一頁的網址,預設是「123456789」,你可以改成任何你自己想要的英文或數字代號,例如「dspace」的話就是:
# CNRI Handle prefix handle.prefix = dspace
- 設定語言選項為「zh_TW」(繁體中文):
default.locale = zh_TW webui.supported.locales = zh_TW, en #這行要自己加上去 default.language = zh_TW
[root@dspace opt]# mkdir /dspace [root@dspace opt]# chown dspace:dspace /dspace
DSpace安裝步驟
Step 1. 利用maven建立檔案:移動到DSpace原始程式目錄底下的「dspace」目錄,執行「mvn package」編譯DSpace原始程式。第一次執行「mvn package」指令的時候,會從網路上下載很多需要的元件,大約需要30分鐘才能完成編譯。[root@dspace ~]# cd /opt/dspace-1.5.1-src-release/dspace/ [root@dspace dspace]# mvn package (第一次執行時需要下載很多檔案)
Step 2. 用ant來部屬:接著移動到DSpace原始程式目錄底下的dspace當中的target當中的dspace-1.5.1-build.dir目錄,並執行「ant fresh_install」。這個步驟會把編譯好的檔案移到安裝目錄「/dspace」底下。
[root@dspace ~]# cd /opt/dspace-1.5.1-src-release/dspace/target/dspace-1.5.1-build.dir/ [root@dspace dspace-1.5.1-build.dir]# ant fresh_install
Step 3. 移動JSP網頁檔:複製DSpace安裝目錄裡面的「webapps/jspui」到Tomcat裡面:
[root@dspace ~]# \cp -rf /dspace/webapps/jspui /opt/apache-tomcat-6.0.13/webapps/
Step 4. 建立DSpace管理者帳號:執行DSpace中的「create-administrator」功能,建立登入DSpace系統的帳號,DSpace會要求你輸入e-mail、first name、last name跟password 。
[root@dspace ~]# /dspace/bin/create-administrator
Step 5. 啟動Tomcat服務:
[root@get ~]# /opt/apache-tomcat-6.0.13/bin/startup.sh
以上工作做完之後,就可以用瀏覽器連到DSpace啦,網址是如之前設定的「http://dspace.lias.nccu.edu.tw:8080/jspui」或是「http://localhost:8080/jspui」(如果你是在本機端,那就可以如此查看),如果順利地顯示了DSpace的畫面,那麼就是安裝成功囉。(如下圖)
其他功能排程執行
DSpace有些功能是需要定期去執行,才能夠順利運作的。包括搜尋引擎的索引、上傳圖片的縮圖、站內寄信、計算資料總量、清理資料庫等等工作。在CentOS裡面,請以root或dspace帳號(如果你的dspace帳號能夠執行/dspace裡面的資料的話)執行排程指令:
crontab -e
然後插入以下敘述,我附上翻譯的說明:
#時間與指令說明 #分 時 月 日 周 要執行的指令 # 每天早上01:00送出訂閱的e-mail 0 1 * * * /dspace/bin/sub-daily # 每天早上02:00執行縮圖程式(media filter) 0 2 * * * /dspace/bin/filter-media # 每天早上03:00確認資料總量 0 3 * * * /dspace/bin/checker -lp # 每天早上04:00把結果寄給系統管理者 0 4 * * * /dspace/bin/dsrun org.dspace.checker.DailyReportEmailer -c # 每天早上04:20清理資料庫(這是PostgreSQL的指令) 20 4 * * * vacuumdb --analyze dspace > /dev/null 2>&1 # 每天早上01:00執行統計運算,每天早上02:00產生統計報表 0 1 * * * /dspace/bin/stat-general 0 1 * * * /dspace/bin/stat-monthly 0 2 * * * /dspace/bin/stat-report-general 0 2 * * * /dspace/bin/stat-report-monthly
上面的步驟我也自己做了一遍,應該都沒錯了。這篇已經寫得夠長了,有空的話我們再來慢慢聊吧。 (more...)
Comments