crm_shadow (8)

Name

crm_shadow - 在更新使用中的叢集之前,在沙箱中執行組態變更

概要

crm_shadow [-V] [-p|-e|-q]

描述

設定讓組態工具 (cibadmincrm_resource 等) 在其中離線工作而不是針對使用中叢集工作的環境,並允許預覽及測試變更是否有副作用。

選項

--verbose-V

開啟除錯資訊其他例項以增加詳細度

--which-w

指定使用中的投影副本

--display-p

顯示投影副本的內容

--diff-d

顯示投影副本中的變更

--create-empty-e名稱

建立叢集組態為空白的具名投影副本

--create-c名稱

建立使用中叢集組態的具名投影副本

--reset-r名稱

從使用中的叢集組態重新建立具名投影副本

--commit-c名稱

將具名投影副本的內容上載至叢集

--delete-d名稱

刪除具名投影副本的內容

--edit-e名稱

使用您最愛的編輯器編輯具名投影副本的內容

--batch-b

不啟動新的外圍程序

--force-f

不啟動新的外圍程序

--switch-s

切換至具名投影副本

內部指令

若要使用投影組態,必須先建立一個投影組態:

crm_shadow --create-empty YOUR_NAME

它提供一個與 crm 工具中的外圍程序類似的內部外圍程序。使用 help 取得所有內部指令的綜覽,或者使用 help 子指令取得特定指令的資訊。

表 16-1 內部指令綜覽

指令

語法/描述

alias

alias [-p] [name[=value] ... ]

alias 不搭配引數或與 -p 選項搭配將在標準輸出上以別名名稱=值的格式列印別名清單。否則,將為提供了「值」的每個「名稱」定義別名。如果「值」的末尾有空格,會導致系統在展開別名時檢查下一個單字是否為別名替代項。除非未為提供的「名稱」定義任何別名,否則 alias 將傳回真。

bg

bg [JOB_SPEC ...]

將每個工作規格放在背景中,就如它是透過 & 啟動一樣。若工作規格不存在,則會使用目前工作的外圍程序概念。

bind

bind [-lpvsPVS] [-m keymap] [-f filename]
   [-q name] [-u name] [-r keyseq]
   [-x keyseq:shell-command] 
   [keyseq:readline-function or readline-command]

將關鍵序列與 Readline 函數或某個巨集關聯,或者設定 Readline 變數。無選項的引數語法與 ~/.inputrc 中的語法效果相同,但其必須做為單一引數傳送:bind "\C-x\C-r": re-read-init-file

break

break [N]

從某個 forwhileuntil 迴圈中跳離。若指定了 N,則跳離 N 個層級。

builtin

builtin [shell-builtin [arg ...]]

執行外圍程序 builtin。若要重新命名外圍程序 builtin,使之成為函數,但在函數本身中需要 builtin 的功能,此指令就很有幫助。

caller

caller [EXPR]

傳回目前副程式呼叫的網路位置。若不提供運算式,則會傳回 $line $filename。若提供了運算式,則會傳回 $line $subroutine $filename;可以使用此額外資訊提供堆疊追蹤。

case

case WORD in [PATTERN [| PATTERN] [COMMANDS;;] ... esac

依據符合模式單字,選擇性執行指令。「|」用於分隔多個模式。

cd

cd [-L|-P] [dir]

將目前目錄切換至 DIR。

command

command [-pVv]
command [arg ...]

搭配忽略外圍程序函數的引數執行指令。若您擁有名為「ls」的外圍程序函數,且要呼叫指令「ls」,則可以輸入「command ls」。若提供了 -p 選項,則會使用 PATH 的預設值,以確保找到所有標準公用程式。若提供了 -V 或 -v 選項,則會列印描述指令的字串。-V 選項可產生更詳細的描述。

compgen

compgen [-abcdefgjksuv] [-o option] [-A action]
  [-G globpat] [-W wordlist] [-P prefix]
  [-S suffix] [-X filterpat] [-F function]
  [-C command] [WORD]

依選項而定顯示可能的補齊內容。專供從產生可能的補齊內容的外圍程序函數中使用。若提供選用的單字引數,將會產生與單字相符的項目。

complete

complete [-abcdefgjksuv] [-pr] [-o option]
   [-A action] [-G globpat] [-W wordlist] [-P prefix]
   [-S suffix] [-X filterpat] [-F function] [-C command]
   [name ...]

對於每個名稱,指定補齊引數的方式。若提供了 -p 選項,或未提供任何選項,將會列印現有補齊規格,且所採用的列印方式可讓其做為輸入重複使用。-r 選項將移除每個名稱的補齊規格;或者,若未提供名稱,將移除所有補齊規格。

continue

continue [N]

繼續封閉式 FOR、WHILE 或 UNTIL 迴圈的下一個反覆項目。若指定了 N,則會在第 N 層封閉式迴圈繼續。

declare

declare [-afFirtx] [-p] [name[=value] ...]

宣告變數及/或為變數提供屬性。若未提供名稱,則改為顯示變數的值。-p 選項將顯示每個名稱的屬性和值。

dirs

dirs [-clpv] [+N] [-N]

顯示目前記住的目錄清單。使用 pushd 指令可以將目錄列出在清單上;使用 popd 指令可以返回到清單的上一層。

disown

disown [-h] [-ar] [JOBSPEC ...]

預設會從使用中的工作表格移除每個工作規格引數。若提供了 -h 選項,則不會從表格移除工作,而是標示工作,以便外圍程序接收到 SIGHUP 時不會將 SIGHUP 傳送給該工作。若不提供工作規格-a 選項表示從工作表格移除所有工作;-r 選項表示僅移除執行中的工作。

echo

echo [-neE] [arg ...]

輸出引數。若指定了 -n,則會隱藏末尾新行字元。若提供了 -e 選項,將會開啟下列以反斜線逸出之字元的解譯:

  • \a (警示,鈴聲)
  • \b (退格)
  • \c (隱藏末尾新行)
  • \E (逸出字元)
  • \f (換頁)
  • \n (新行)
  • \r (回行)
  • \t (水平定位字元)
  • \v (垂直定位字元)
  • \\ (反斜線)
  • \0nnn (ASCII 碼為 NNN (八進位) 的字元。NNN 可以是 0 至 3 個八進位數字)

可以使用 -E 選項明確關閉上述字元的解譯。

enable

enable [-pnds] [-a] [-f filename] [name...]

啟用和停用 builtin 外圍程序指令。這可讓您使用與外圍程序 builtin 同名的磁碟指令,而不必指定完整的路徑名稱。若使用了 -n,則會停用名稱;否則會啟用名稱。例如,若要使用 $PATH 中提供的 test 而非外圍程序 builtin 版本,請輸入 enable -n test。在支援動態載入的系統上,可使用 -f 選項從共享物件檔名載入新的 builtin。-d 選項將刪除之前使用 -f 載入的 builtin。若未提供任何非選項名稱,或者提供了 -p 選項,將會列印 builtin 清單。-a 選項表示列印每個 builtin,並會指出其是否已啟用。-s 選項將輸出限制為 POSIX.2 的「特殊」builtin。-n 選項將顯示所有已停用 builtin 的清單。

eval

eval [ARG ...]

引數讀取為外圍程序的輸入並執行產生的指令。

exec

exec [-cl] [-a name] file [redirection ...]

執行檔案,並以指定的程式取代此外圍程序。若未指定檔案,則會在此外圍程序中進行重新導向。如果第一個引數為 -l,則在傳送到檔案的第零個引數中加一個破折號,就如登入一樣。若提供了 -c 選項,將會使用空環境執行檔案。-a 選項表示將已執行程序的 argv[0] 設定為名稱。若檔案無法執行,且外圍程序為非互動型,則除非已設定外圍程序選項 execfail,否則外圍程序將會結束。

exit

exit [N]

結束外圍程序並傳回狀態 N。若省略 N,則結束狀態為上次執行之指令的狀態。

export

export [-nf] [NAME[=value] ...]
export -p

將會標示名稱以自動輸出到後續執行的指令的環境。若提供了 -f 選項,則名稱指的是函數。若未提供名稱,或者提供了 -p,將會列印在此外圍程序中輸出的所有名稱清單。引數 -n 表示從後續名稱移除輸出內容。引數 -- 將會停用進一步的選項處理。

false

false

傳回失敗結果。

fc

fc [-e ename] [-nlr] [FIRST] [LAST]
fc -s [pat=rep] [cmd]

fc 用於列出或編輯並重新執行歷程清單中的指令。第一個最後一個可以是指定範圍的數字,或者第一個可以是字串,表示最近使用的以該字串開頭的指令。

fg

fg [JOB_SPEC]

工作規格放在前景中,並使其成為目前的工作。若工作規格不存在,將會使用目前工作的外圍程序概念。

for

for NAME [in WORDS ... ;] do COMMANDS; done

for 迴圈會針對項目清單中的每個成員執行一系列指令。若 in 單字 ...; 不存在,則會假設 in "$@"。對於單字中的每個元素,會將名稱設定為該元素,然後執行指令

function

function NAME { COMMANDS ; }
function NAME () { COMMANDS ; }

建立一個簡單指令,該指令透過執行指令名稱呼叫。指令行上的引數和名稱會做為 $0 .. $n 傳送給該函數。

getopts

getopts OPTSTRING NAME [arg]

外圍程序使用 Getopts 剖析位置參數。

hash

hash [-lr] [-p PATHNAME] [-dt] [NAME...]

對於每個名稱,將會判斷並記住指令的完整路徑名稱。若提供了 -p 選項,則會將路徑名稱當成名稱的完整路徑名稱,且不會執行路徑搜尋操作。-r 選項會使外圍程序忘記所有記住的位置。-d 選項會使外圍程序忘記記住的每個名稱的位置。若提供了 -t 選項,將會列印每個名稱所對應的完整路徑名稱。若與 -t 一起提供多個名稱引數,將會在雜湊的完整路徑名稱前面列印名稱-l 選項會以可做為輸入重複使用的格式顯示輸出。若未提供任何引數,將會顯示有關所記住之指令的資訊。

history

history [-c] [-d OFFSET] [n]
history -ps arg [arg...]
history -awrm [filename]

顯示歷程清單與行號。列出的帶 * 的行均已修改。引數 N 表示僅列出最後 N 行。-c 選項會透過刪除所有項目來清除歷程清單。-d 選項將刪除偏移處的歷程項目。-w 選項會將目前歷程寫出到歷程檔案;-r 表示讀取檔案並將內容附加至歷程清單。-a 表示將此工作階段的歷程行附加至歷程檔案。引數 -n 表示讀取歷程檔案中尚未讀取的所有歷程行,並將這些行附加至歷程清單。

jobs

jobs [-lnprs] [JOBSPEC ...]
job -x COMMAND [ARGS]

列出使用中的工作。-l 選項將列出程序 ID 和一般資訊;-p 選項僅列出程序 ID。若提供了 -n,將僅列印自從上次通知以來已變更狀態的程序。工作規格將輸出限制為該工作。-r-s 選項分別將輸出限制為執行中的工作和已停止的工作。若不提供任何選項,將會列印所有使用中的工作的狀態。若提供了 -x,則會在將引數中出現的所有工作規格取代為該工作之程序群組領袖的程序 ID 後,執行指令

kill

kill [-s sigspec | -n signum | -sigspec] pid | JOBSPEC ...
kill -l [sigspec]

將訊號 SIGSPEC 傳送至由 PID (或工作規格) 指定的程序。如果 SIGSPEC 不存在,則會假設 SIGTERM。引數 -l 將列出訊號名稱;若多個引數後面跟著 -l,則假設這些引數為應列出名稱之訊號的編號。Kill 是一個外圍程序 builtin,撰寫它有兩個原因:它允許使用工作 ID 取代程序 ID,並且若您已達到可以建立之程序的限制,您不必啟動一個程序來停止另一個程序。

let

let ARG [ARG ...]

每個引數都是需要求值的算術運算式。求值是採用固定寬度的整數來完成,雖然除以 0 會被設陷並標誌為錯誤,但是不會檢查溢位。以下運算子清單已根據運算子的優先順序分為不同的幾個層級。各層級以優先順序遞減的順序列出。

local

local NAME[=VALUE] ...

建立名為名稱的本地變數,並為其提供相應的local 僅可在函數中使用;它將變數名稱的可見範圍限制為該函數及其子項。

logout

logout

從登入外圍程序登出。

popd

popd [+N | -N] [-n]

從目錄堆疊移除項目。若不提供任何引數,則會從堆疊移除頂層目錄,並切換至新的頂層目錄。

printf

printf [-v var] format [ARGUMENTS]

printf 將使用格式來格式化並列印引數格式是一個字元字串,它包含三種類型的物件:簡單複製到標準輸出的純字元、會被轉換並複製到標準輸出的字元逸出序列,以及格式規格,每個格式規格都會導致列印下一個後續引數。除標準 printf(1) 格式之外,%b 表示展開對應引數中的反斜線逸出序列,而 %q 表示以可做為外圍程序輸入重複使用的形式來引用引數。若提供了 -v 選項,則會將輸出放置於外圍程序變數 VAR 的值中,而不是將其傳送至標準輸出。

pushd

pushd [dir | +N | -N] [-n]

將目錄新增至目錄堆疊的頂部,或者旋轉堆疊,使堆疊的新頂部成為目前的工作目錄。若不提供任何引數,將會交換最上面的兩個目錄。

pwd

pwd [-LP]

列印目前的工作目錄。若提供了 -P 選項,pwd 將會列印實體目錄,不列印任何符號連結;-L 選項將在符號連結後面跟著 pwd

read

read [-ers] [-u fd] [-t timeout] [-p prompt] [-a array] [-n nchars] [-d delim] [NAME ...]

所提供的名稱將標示為唯讀,且後續指定無法變更這些名稱的值。若提供了 -f 選項,則會標示名稱所對應的函數。若未提供任何引數,或者提供了 -p,將會列印所有唯讀名稱的清單。-a 選項表示將每個名稱視為陣列變數。引數 -- 將停用進一步的選項處理。

readonly

readonly [-af] [NAME[=VALUE] ...]
readonly -p

所提供的名稱將標示為唯讀,且後續指定無法變更這些名稱的值。若提供了 -f 選項,則會標示名稱所對應的函數。若未提供任何引數,或者提供了 -p,將會列印所有唯讀名稱的清單。-a 選項表示將每個名稱視為陣列變數。引數 -- 將停用進一步的選項處理。

return

return [N]

導致函數結束,並傳回由 N 指定的傳回值。若省略 N,則傳回上次執行之指令的狀態。

select

select NAME [in WORDS ... ;] do COMMANDS; done

將展開單字,並產生單字清單。將在標準錯誤上列印展開的單字集,且每個單字前面都有一個數字。若 in 單字不存在,則會假設 in "$@"。然後顯示 PS3 提示,並從標準輸入讀取一行。若該行由其中一個顯示的單字所對應的數字組成,則會將名稱設定為該單字。若該行為空,將會重新顯示單字和提示。若讀取到 EOF,指令即會完成。讀取到任何其他值均會導致將名稱設定為空值。所讀取的行會儲存在變數回覆中。每次選取後即會執行指令,直到執行跳離指令為止。

set

set [--abefhkmnptuvxBCHP] [-o OPTION] [ARG...]

設定內部外圍程序選項。

shift

shift [n]

$N+1 ... 中的位置參數重新命名為 $1 ...。若未提供 N,則將其假設為 1。

shopt

shopt [-pqsu] [-o long-option] OPTNAME [OPTNAME...]

切換控制選擇性行為的變數的值。-s 旗標表示啟用 (設定) 每個選項名稱-u 旗標將取消設定每個選項名稱-q 旗標將隱藏輸出;離開狀態指出是否已設定或取消設定每個選項名稱-o 選項將選項名稱限制為定義為與 set -o 搭配使用的那些選項名稱。若不提供任何選項,或者提供了 -p 選項,將會顯示所有可設定選項的清單,並會指出是否已設定每個選項。

source

source FILENAME [ARGS]

讀取並執行檔名中的指令,然後返回。$PATH 中的路徑名稱用於尋找含有檔名的目錄。若提供了引數,則在執行檔名時,引數將做為位置參數。

suspend

suspend [-f]

暫停執行此外圍程序,直到它接收到 SIGCONT 訊號為止。若指定了 -f,則表示如果此外圍程序為登入外圍程序也不發出警告;只是將其暫停。

test

test [expr]

根據運算式的求值結果結束,並傳回狀態 0 (真) 或 1 (偽)。運算式可為一元運算式或二元運算式。一元運算式通常用於檢查檔案的狀態。系統提供了字串運算子和數字比較運算子。

time

time [-p] PIPELINE

執行管線,並在它終止時列印執行管線所花的實際時間、使用者 CPU 時間和系統 CPU 時間的摘要。傳回狀態為「管線」的傳回狀態。-p 選項將以略微不同的格式列印所花時間的摘要。此選項使用 TIMEFORMAT 變數的值做為輸出格式。

times

times

列印從外圍程序執行之程序的累計使用者和系統時間。

trap

trap [-lp] [ARG SIGNAL_SPEC ...]

外圍程序接收到訊號訊號規格時,將讀取並執行指令引數。若引數不存在 (提供了單一訊號規格) 或 -,則會將每個指定的訊號重設為其原始值。若引數為空字串,則外圍程序以及它呼叫的指令將會忽略每個訊號規格。若訊號規格為 EXIT (0),則會在結束外圍程序時執行指令「引數」。若訊號規格為 DEBUG,則會在每個簡單指令之後執行引數。若提供了 -p 選項,則會顯示與每個訊號規格相關的設陷指令。若未提供任何引數,或者僅提供了 -p,設陷將會列印與每個訊號相關的指令清單。每個訊號規格都是 signal.h 中的一個訊號名稱或訊號編號。訊號名稱不區分大小寫,且 SIG 字首為選用項目。trap -l 將列印訊號名稱及其對應編號的清單。請注意,您可以使用 kill -signal $$ 將訊號傳送至外圍程序。

true

true

傳回成功結果。

type

type [-afptP] NAME [NAME ...]

過時,請參閱declare

typeset

typeset [-afFirtx] [-p] name[=value]

過時,請參閱declare

ulimit

ulimit [-SHacdfilmnpqstuvx] [limit

ulimit 可讓您對由外圍程序啟動的程序可以使用的資源進行控制 (在允許此類控制的系統上)。

umask

umask [-p] [-S] [MODE]

將使用者的檔案建立遮罩設定為模式。若省略了模式,或提供了 -S,將會列印遮罩的目前值。若提供了 -S 選項,則會輸出符號;否則會輸出八進位數字。若提供了 -p 且省略了模式,則輸出時採用可以用做輸入的形式。若模式以數字開頭,則會將其解譯為八進位數字,否則將其解譯為 chmod(1) 所接受的符號模式字串。

unalias

unalias [-a] NAME [NAME ...]

從定義的別名清單移除名稱。若提供了 -a 選項,將會移除所有的別名定義。

unset

unset [-f] [-v] [NAME ...]

對於每個名稱,移除對應的變數或函數。若提供了 -v,則取消設定僅對變數起作用。若提供了 -f 旗標,則取消設定僅對函數起作用。若未提供任何旗標,則取消設定將先嘗試取消設定變數;如果嘗試失敗,則會嘗試取消設定函數。某些變數無法取消設定,也視為唯讀。

until

until COMMANDS; do COMMANDS; done

只要 until 指令中的最後一個指令的離開狀態不是零,就展開並執行指令

wait

wait [N]

等待指定的程序並報告其終止狀態。若未提供 N,將會等待目前使用中的所有子程序,且傳回碼為零。N 可以是程序 ID 或工作規格;若提供了工作規格,將會等待工作管線中的所有程序。

while

while COMMANDS; do COMMANDS; done

只要 while 指令中最後一個指令的離開狀態為零,就展開並執行指令