- 設定
- activity_log path
- 開啟活動記載。資訊會附加至 path 指定的檔案中。路徑必須存在,且代理程式使用者必須具備它的寫入權。
註: 如果路徑不存在,或者無法寫入檔案,代理程式並不會報告錯誤。
重要: 檔案大小沒有限制。檔案必須手動刪除。這項設定是暫用的,主要用來除錯代理程式。它不是作為工作中代理程式的永久日誌。
- allow IP-address-or-range [...]
只有在下列情況下才使用這項設定:
- 代理程式正在 Windows® 上執行
- 如果啟動時使用 -s 選項,代理程式正在 UNIX® 或 Linux® 上以獨立模式執行。
這項設定會限制連接至代理程式的連線。只容許來自符合
IP-address-or-range 的 IP 位址的連線。依預設,所有位址均可連線。
請指定下列這兩個項目中的一個或全部:
- IP 位址:完整的 IPv4 或 IPv6 位址。例如,IPv4 可以是 255.192.192.003。可接受特定 IP 位址。
- IP 位址範圍:部分限定的 IPv4 或 IPv6 位址。例如,以 IPv4 來說,192.168 或 192.168.63 都是正確的。可接受符合這項限定的所有 IP 位址。
註: 如果您是在 inetd 或 xinetd 等超級伺服器上執行代理程式,請使用另一種方法來控制存取。您可以使用防火牆、TCP Wrapper(hosts.allow 與 hosts.deny),或 xinetd 的內建過濾功能。
- bind
- 這項設定容許您為代理程式指定明確的連結位址。如果代理程式是以 -s 指令行選項啟動,當此項與 "port" 設定一起使用時,將決定代理程式要如何接聽連線。在 bfagent.conf 檔中提供的值會強制代理程式連結至 IPv4 localhost 位址;
因此,代理程式只會接收來自位於相同機器上之主控台的連線。範例:bind 255.192.192.003
註: 其對由系統服務架構(如 inetd、xinetd 或 launchd)啟動的代理程式沒有影響。
- ccviewroot root-path
- 這項設定是指定這個主機的預設視圖根路徑。請參閱有關 init 的 ClearCase® 文件,以取得詳細資訊。內部預設值如下:
- command_output_cache size
- 這項設定會使得代理程式快取輸出,直到抵達指定的大小(以位元組為單位)為止。內部預設值是不快取。使用快取可以大幅改善代理程式的效能,並減少網路額外負荷。快取大小會視指令產生的輸出量而定。
最小值:2048。如果設定小於 2048,就會在內部使用 2048。
- cygwin
這項設定僅適用於 Windows 上的代理程式。
這項設定可讓代理程式在使用 cygwin(一種類似 Linux 的環境)的 Windows 主機上運作。在使用 cygwin 時,代理程式即可使用許多 Linux 工具。
在您使用這項設定時,您可能還需要設定
cygwin_script_magic 與 Shell 設定。下列範例顯示一種用來配置這些設定的方式:
cygwin
shell C:\cygwin\bin\bash.exe --login -c "%s"
cygwin_script_magic #!/bin/bash
Shell 設定必須符合您所安裝的 Cygwin。
- cygwin_script_magic
這項設定僅適用於已設定 cygwin 之 Windows 上的代理程式。
這項設定指定當執行步驟時要使用的 #! 行。預設值是 #!/bin/bash。
- default_logon_domain
- 指定當鑑別要求沒有包含網域時,所要使用的網域。如果未指定,就會使用代理程式機器的網域。
- disable_telnet
- 如果要取得最佳結果,請使用 Telnet 來測試代理程式連線。
- 對代理程式來說,某些內建處理程序的額外負荷,與處理程序和正確處理 Telnet 控制順序相關聯。
- 您可以使用這項設定,讓代理程式不要處理特殊 Telnet 字元碼,而這樣可微幅改善效能。在產品環境中,使用這項設定,可因效能改善而受惠。
- disable_transcode
- 關閉代理程式為了轉換國際資料(因為作業系統不是使用 UTF-8 編碼)而執行的處理程序。為了避免混合編碼與資料毀損,請對代理程式的作業系統採用 UTF-8。
- 如果作業系統未使用 UTF-8 編碼,代理程式必須將資料轉換成作業系統語言環境設定的正確編碼。
- 如果您的作業不是使用 UTF-8,請使用這項設定,取得最佳結果並改善代理程式的效能。
- enable_agent_dll
- 這項設定會啟用「DLL 程序追蹤」這項除錯工具。
- env_recursion_limit number-of-recursions
- 設定預先剖析的變數取代遞迴限制。若未設定,則限制是 32。
- extensions
- 這項設定是指定函數外部程式庫的路徑。函數可作為步驟中的點指令。如果沒有指定這項設定,就不會載入外部程式庫。
在剖析期間,會以逐步指令中的第一個記號作為函數名稱。第二個記號是字串,第三個是整數逾時值(以秒為單位)。
需求: 作業系統中的動態載入器支援。比方說,在 UNIX 或 Linux 中,您需要 /usr/include/dlfcn.h。這些預設值是供內部使用。
- UNIX 或 Linux:/usr/local/bin/bfextensions.so
- Windows:c:\program
files\ibm\build forge\agent\bfextensions.dll
- getaddrinfo_using_addrconfig
- 只有在代理程式在UNIX 或 Linux 作業系統上作為獨立式服務來執行 (bfagent -s) 時,
才會使用這項設定。當呼叫 getaddrinfo() 來選取接聽介面時,這項設定會使得代理程式使用 AI_ADDRCONFIG。依預設,不會使用 AI_ADDRCONFIG。
如果您使用這項設定,代理程式會忽略未適當配置位址的介面。它只會接聽已適當配置位址的介面。
- jcl_submit_user user:encoded-password
- 「工作監視器」需要有效的認證才能提交工作。如果要指定提交工作之使用者的使用者名稱和密碼給 JES,您必須使用 jcl_submit_user 參數。
如果要產生已編碼的密碼,請從 z/OS® Shell 執行 bfagent -e [Password],
並將代理程式顯示的值以及使用者 ID 貼到這項設定中。
- job_monitor_port
- 依預設,「工作監視器」會透過埠 6715 進行通訊。除非您指定不同的埠號,否則 Rational Build Agent 會使用這個值作為預設值。
- lang lang-code
只有在「管理主控台」沒有提供有效語言時,才使用這項設定。
這項設定指定代理程式在撰寫訊息和指令輸出時所用的語言。一般而言,不會明確設定它,
因為代理程式會使用「管理主控台」指定的語言。不過,如果電腦上沒有提供您所要的語言, 設定語言可提供協助。假設「管理主控台」無法傳達某種語言,或者傳達的語言無效,
這項設定也能派上用場而當成備份使用。
內部預設值是 en,明確設定如下:
- leave_tmp_file
這項設定只在您要疑難排解時使用。
這項設定會保留用來保存步驟指令的暫存檔,而不會在執行指令之後將它刪除。在疑難排解時,您可以比對檔案和在「管理主控台」中顯示的步驟。
- locale locale-code.charset-code
這項設定僅適用於 UNIX 和 Linux 作業系統。Windows 處理語言環境的作法不同。
這項設定指定以本地化的方式使用應用程式時,所用的語言和多位元組字集。如果要讓這項設定生效,請設定代理程式環境定義的 LANG 環境變數。
如果要設定代理程式,使其將指令輸出視為美式英文 UTF-8,請讓您的作業系統採用 UTF-8 語言環境。比方說,在 Linux 中使用下列的表示法。
locale en_US.UTF-8
如果要判斷您作業系統的 UTF-8 語言環境表示法是否正確,請執行 locale -a 指令。
如果沒有指定這項設定,代理程式會使用作業系統的語言環境。這項設定相當便利好用。尤其是如果作業系統的預設語言環境,不是您希望代理程式使用的語言環境,這項設定就可派上用場。再者,如果變更系統語言環境只為了符合代理程式需求,而非務實作法,更可善用這項設定。
- magic_login user:encoded-password
一般而言,代理程式使用 root 或 admin 等管理專用權來登入作業系統。magic_login 設定可作為標準系統鑑別的替代方案。透過這項設定,系統可以使用單一使用者名稱與密碼來鑑別您的登入。
如果代理程式是以 root 或 admin 使用者身分執行,會忽略這項設定,並嘗試採取一般鑑別方式。
代理程式執行所有的指令時,所用的是啟動代理程式之使用者的許可權,而非使用登入時所用的使用者名稱。
只有在下列情況,才會使用這項設定:
- 不可能使用管理專用權來執行代理程式。比方說,在不使用 PAM 的 UNIX 系統中使用這項設定。
- 因安全原則,而不允許使用管理專用權來執行代理程式。
如果要為代理程式配置登入,請執行下列動作:
- 建立採用使用者名稱與密碼的伺服器鑑別。在「管理主控台」中,按一下。
- 就本例來說,使用者名稱是 build,密碼是 MySecretPassword。
- 建立使用代理程式的伺服器。在鑑別欄位中,讓伺服器鑑別與這個伺服器產生關聯。
- 為代理程式產生一個編碼密碼。在代理程式的安裝目錄中,使用您選擇的密碼來執行 bfagent -P。
如下所示,這會傳回以 SMD5 雜湊編碼的密碼:
bfagent -P "MySecretPassword"
eca0b7f2f4fbf110f7df570c70df844e1658744a4871934a
- 在 bfagent.conf中,將 magic_login 設定為使用所要的使用者名稱與編碼密碼。
magic_login build:eca0b7f2f4fbf110f7df570c70df844e1658744a4871934a
- 啟動代理程式。
- 測試伺服器連線。在伺服器中,選取伺服器,然後按一下測試伺服器。
- map drive-and-user-spec[; ...]
- 這項設定指定對應磁碟機。某些系統可能需要磁碟機對應。例如,因為 Shell 從共用磁碟機執行,而可能需要磁碟機對應。代理程式中指定的對應,會比「管理主控台」中 _MAP 環境變數所指定的對應先執行。這個範例說明兩個磁碟機對應:
map X:=//host1/share;Z:=//host2/share(username,password)
- map_drive_is_failure
- 當指定此項時,只要發現指定了非對應磁碟機,這項設定就會在步驟執行之前讓步驟失敗。如果沒有指定這項設定,步驟就會忽略磁碟機失敗,並試圖執行步驟。在該情況下,請確定失敗會產生有意義的錯誤訊息。
- no_preparse_command
- 這項設定會停用變數擴充剖析;一般而言,代理程式在將指令傳遞給 Shell 之前,會對指令執行這項剖析。另請參閱可用於單一專案或步驟的 _NO_PREPARSE_COMMAND 環境變數。
- no_pty
這項設定僅適用於在 UNIX 或 Linux 系統上執行的代理程式。
在 Shell 與代理程式的虛擬終端機互動時,這項設定有助於避免鎖定系統 Shell。這項設定通常用於 HP/UX 和 z/OS。您也可以使用其他兩種方法,協助避免發生這樣的鎖定:
- 使用替代 Shell。
- 使用 nologonshell 設定
no_pty 設定會停用虛擬終端機的配置。
註: 使用 no_pty 會影響某些指令。例如,ls 指令會以單一直欄而非三個直欄來傳回輸出。如果您使用這項設定,在您將工作部署至正式作業環境之前,必須先經過徹底測試。
- nologonshell
這項設定僅適用於在 UNIX 或 Linux 上執行的代理程式。
這項設定會使得代理程式所要執行的 Shell,變成一般 Shell 而非登入 Shell。這項設定通常用於下列情況:
- 登入 Shell 提供詳細輸出。
- 登入 Shell 以非您所要的方式變更了環境設定。
- 登入 Shell 試圖和使用者進行互動式通訊。
當設定此項時,會採用標準方法,要求 Shell 必須是一般 Shell 而非登入 Shell。這不見得適用於所有平台,若有這類情況,
可使用 shellflag 設定傳遞旗標給 Shell,以修改其行為。
代理程式並不需要那些行為,因為它是以使用者身分而非互動使用者身分執行。
附註: - Mac OS X 10.5 系統使用
/bin/bash,而這不會對 nologonshell 做出回應。請使用 shellflag
-l。
- z/OS 作業系統對登入 Shell 和非登入 Shell 一律都使用 /etc/profile Script。如果其行為無法與代理程式之間搭配良好,您可能需要變更 Script 的內容,或使用另一個 Shell。
另請參閱
shellflag 設定。可以使用旗標來變更登入 Script 行為。
- password_encrypt_module dll_path;conf_path
- 需要在代理程式中啟用 SSL。它指定 DLL 與配置檔的路徑。
- dll_path 是 bfcrypt.dll 的路徑(通常是
./bfcyrpt.dll)。
- conf_path 是 bfpwcrypt.conf 的路徑(通常是
./bfcrypt.conf)。
- port port-number-or-range [...]
這項設定僅適用於當您在啟動時發出 -s 選項時,
在 UNIX 或 Linux 上以獨立模式執行的代理程式。
這項設定指定代理程式透過「管理主控台」來接聽連線時,所要使用的埠。
- 代理程式正在 UNIX 或 Linux 上以獨立模式執行(於啟動時使用 -s 選項)。
指定代理程式透過「管理主控台」來接聽連線時,所要使用的埠。
註: 依預設,會將埠設為 5555。如果是 UNIX 或 Linux,該設定位於 /etc/services 中。
- shell shell_name [options]
- 這項設定指定預設 Shell。內部預設值如下:
- Windows:shell
cmd.exe /q /c "%s",除非使用下列設定:
- 如果使用 cygwin 設定,預設值為 shell
C:\cygwin\bin\bash.exe --login -c "%s"
- 如果沒有使用 cygwin 設定,預設值為
shell cmd.exe /u /q /c "%s"
- UNIX 或 Linux:設定給使用者帳戶的 Shell,或是 /bin/sh(如果無法判斷使用者 Shell)。
請注意,您無法在這項設定中指定參數,但是您可以使用 shellflag 設定來傳遞它們。代理程式會插入一個連字號,自動將預設值強制設為登入 Shell。例如,將 /bin/ksh 傳送成 -ksh。如果明確設定 shell,就會隱含設定 nologonshell。請參閱 nologonshell。
- System i®:將 Shell 值設為 /bin/sh
您可以從步驟來置換這項設定。以含有 #! 的字行為開頭的步驟會置換 Shell 設定,而 nologonshell 設定用來執行逐步指令。
- shell_compatible_undef_vars
- 這項設定會強制用空字串來表示未定義的變數。如果沒有設定,就會用變數名稱來表示 $VAR、${VAR} 或 %VAR% 格式的變數,用空字串來表示 $[VAR]。
- shellarg
這項設定僅適用於在 UNIX 或 Linux 上執行的代理程式。
如果指令看起來很雜亂,請使用這項設定。Red Hat Linux Enterprise 上的某些 Shell 需要這項設定。
這項設定會變更將指令 Script 傳遞給
Shell 的方式。一般而言,Script 是透過標準輸入來傳遞:
/bin/sh < /tmp/bfshellscript.sh
這項設定會將 Script 當成參數傳遞來執行它們:
/bin/sh /tmp/bfshellscript.sh
- shellflag flag
這項設定僅適用於在 UNIX 或 Linux 上執行的代理程式。
這項設定會在 Shell 執行時新增旗標。只能指定一個旗標。一般而言,它用來停用 rc Script 處理程序,以減少輸出或不必要的處理。
範例:- csh 與 derivatives:使用 shellflag -f 來停用
rc Script 處理程序。
- bash:使用 shellflag –-noprofile 來停用設定檔 Script 處理程序。
- ssl_ca_location path
- 指定內含憑證管理中心的金鑰儲存庫檔。如果代理程式是以服務形式執行,請使用絕對路徑。
- ssl_cert_location path
- 指定內含私密憑證的金鑰儲存庫。如果代理程式是以服務形式執行,請使用絕對路徑。
- ssl_client_authentication [true | false]
- 當設為 true,則在建立與代理程式的連線時,會要求進行用戶端鑑別。如果為 true,Rational Build
Agent 引擎憑證必須新增至代理程式的憑證管理中心金鑰儲存庫中。
- ssl_cipher_group [grouplist | ALL]
- 指定要使用的個別密碼群組。可設為 ALL。
- ssl_cipher_override cyphers
- 置換密碼群組。請指定要使用的密碼。
- ssl_key_location path
- 指定內含金鑰的金鑰儲存庫檔。如果代理程式是以服務形式執行,請使用絕對路徑。
- ssl_key_password password
- 金鑰的密碼。依預設,會以明碼形式來儲存這項內容。您可以讓代理程式使用自己的金鑰或 Rational Build Agent 伺服器的金鑰,
來加密這個密碼。
- ssl_protocol protocol
- 要使用的 SSL 信號交換通訊協定,可以是下列之一:SSL、SSLv2、SSLv3、SSL_TLS、TLS、TLSv1。通訊協定必須符合 Rational Build Agent 伺服器使用的通訊協定。
- update_path path
這項設定會識別 Rational Build Agent 執行檔的完整路徑。在安裝期間會自動建立設定。目錄是作業系統的預設目錄,或是您指定的安裝目錄。
註: Windows 代理程式會忽略這項設定。更新路徑取自登錄機碼。機碼是在安裝代理程式期間建立的。