官方的安裝包貌似只支持PRM的發行版,如RedHat和Suse,本文在Ubuntu 1804下,用源代碼方式編譯安裝,原始編譯安裝文檔是在1604下的,本文使用1804,所以有些更正。
1. 環境:Ubuntu 1804,X86_64版。
2. 安裝編譯所需要的環境:
sudo apt-get install gcc make libtool libhwloc-dev libx11-dev libxt-dev libedit-dev libical-dev ncurses-dev perl postgresql-server-dev-all python-dev tcl-dev tk-dev swig libexpat-dev libssl-dev libxext-dev libxft-dev autoconf automake
3. 安裝運行所需要的環境:
sudo apt-get install expat libedit2 postgresql python sendmail-bin tcl tk
4. 安裝文本編輯器,用於編輯配置文件,如vi,emacs等,可以根據自己喜好。
5. 安裝libical1a庫,由於Ubuntu1804上缺省使用的是libical的版本3,會造成編譯失敗,所以首先要卸載已經安裝的libical的版本3。
sudo apt-get remove libical-dev libical
6. 下載libical1a和它的dev庫。
wget http://kr.archive.ubuntu.com/ubuntu/pool/main/libi/libical/libical1a_1.0.1-0ubuntu2_amd64.deb
wget http://kr.archive.ubuntu.com/ubuntu/pool/main/libi/libical/libical-dev_1.0.1-0ubuntu2_amd64.deb
7. 安裝libical1a和dev庫。
sudo dpkg --install libical1a_1.0.1-0ubuntu2_amd64.deb
sudo dpkg --install libical-dev_1.0.1-0ubuntu2_amd64.deb
8. 在github.com打包下載或使用git clone。
git clone https://github.com/PBSPro/pbspro.git
9. 進入源代碼目錄,執行配置、編譯和安裝,使用安裝目錄:/opt/pbs
./autogen.sh
./configure --prefix=/opt/pbs
make
sudo make install
10. 運行安裝後配置程序,產生配置文件:
udo /opt/pbs/libexec/pbs_postinstall
11. 編輯和配置/etc/pbs.conf,如果要單機運行作業,可以將參數PBS_START_MOM設爲1
12. 修改文件屬性,增加SUID
sudo chmod 4755 /opt/pbs/sbin/pbs_iff /opt/pbs/sbin/pbs_rcp
13. 啓動PBS服務
sudo /etc/init.d/pbs start
14. 建立缺省作業隊列,需要使用root用戶。
sudo su -
. /etc/profile.d/pbs.sh
qmgr
Qmgr: set queue batch queue_type = Execution
Qmgr: set queue batch enabled = True
Qmgr: set queue batch started = True
Qmgr: set server default_queue = batch
15. 查看PBS運行情況,如:
xxin@xxin-ThinkPad-W550s:~$ qstat -B
Server Max Tot Que Run Hld Wat Trn Ext Status
---------------- ----- ----- ----- ----- ----- ----- ----- ----- -----------
xxin-ThinkPad-W5 0 0 0 0 0 0 0 0 Active
xxin@xxin-ThinkPad-W550s:~$ pbsnodes -a
xxin-ThinkPad-W550s
Mom = xxin-thinkpad-w550s
ntype = PBS
state = free
pcpus = 4
resources_available.arch = linux
resources_available.host = xxin-thinkpad-w550s
resources_available.mem = 16118640kb
resources_available.ncpus = 4
resources_available.vnode = xxin-ThinkPad-W550s
resources_assigned.accelerator_memory = 0kb
resources_assigned.hbmem = 0kb
resources_assigned.mem = 0kb
resources_assigned.naccelerators = 0
resources_assigned.ncpus = 0
resources_assigned.vmem = 0kb
resv_enable = True
sharing = default_shared
last_state_change_time = Sun Jul 22 08:08:29 2018
16. 提交測試作業,並查看:
xxin@xxin-ThinkPad-W550s:~$ echo "sleep 222" | qsub
4.xxin-ThinkPad-W550s
xxin@xxin-ThinkPad-W550s:~$ qstat -a
xxin-ThinkPad-W550s:
Req'd Req'd Elap
Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time
--------------- -------- -------- ---------- ------ --- --- ------ ----- - -----
4.xxin-ThinkPad xxin batch STDIN 12148 1 1 -- -- R 00:00