Command-Line-Interface

“記住”您為伺服器執行的 CLI 命令

  • February 8, 2022

假設您在伺服器上執行了第三方程序。

要對其進行配置,請登錄,應用一些 CLI 命令並再次離開。

每次執行此操作時,您還會將命令複製並粘貼到 git 中的某個文件中,以便將來您可以弄清楚配​​置了什麼,並且還可以在需要時再次配置伺服器。

這很容易出錯。

我知道人們發明了像 Puppet 這樣的東西來避免這個問題,但是 AFAIK Puppet 依賴於你可以定義狀態然後執行冪等操作的模組。這意味著您沒有適用於所有內容的 Puppet 模組,並且您擁有的模組可能無法完成您想要的所有配置。

所以在這個長篇故事之後:

是否有適當的方法來“記錄”您執行的命令,以便您可以執行它們並同時記錄執行?

如果你想用舊的方式來做,你可以使用script(1)來記錄你的會話。

您所描述的問題正是人們在某些時候決定不再依賴手動命令和使用互動式 (GUI) 工具的管理員的原因。

您希望能夠以更有條理的方式重複您所做的事情,而不是遵循在最新版本/更改/危機之後可能尚未更新的清單。

儘管這似乎是一個簡單的問題,並且為實現目前狀態而發出的所有命令的長列表的第一種方法似乎是一個好主意,您可能會在考慮後意識到,這樣的列表也不是最佳解決方案。該列表可能還包含諸如嘗試、錯誤、失敗、還原和嘗試其他操作、錯字、再次重複等步驟,您不一定想要或不需要重複。

維基百科很好地總結了人們為解決這個問題而創建的幾種工具: https ://en.wikipedia.org/wiki/Comparison_of_open-source_configuration_management_software

這些都有一個學習曲線,看起來比你認為你需要的更複雜,但相信我,投入一些時間和精力,你就會明白為什麼其中許多被廣泛用於解決你現在面臨的那種問題。

引用自:https://serverfault.com/questions/1093025