Backup
用於 opensuse 的 etckeeper - bash 腳本安裝和配置
我想在 OpenSuse 12.3 上自動安裝etckeeper 。
我的第一個問題是標準 OpenSuse 儲存庫中似乎沒有 etckeeper。
zypper search etckeeper Loading repository data... Reading installed packages... No packages found.
我預計的第二個問題是,當我手動使用 etckeeper 時,有時我必須在它開始工作之前對其進行配置(init)。以下是自述文件中的相關資訊:
該
etckeeper init
命令初始化 /etc/.git/ 儲存庫。如果您從包中安裝了 etckeeper,這可能是在包安裝期間自動執行的。如果沒有,您的第一步是手動執行它:etckeeper init
我想要一個腳本來安裝它並讓它自動初始化,無需最終使用者干預。
好的,這是一個答案,但這並不理想。我希望從其中一個儲存庫中找到一個官方的 OpenSuse 包。但在有人提出更好的選擇之前,這就是我想出的:
- 找到包: http: //software.opensuse.org/package/etckeeper
- 下載它:wget http://download.opensuse.org/repositories/home:/Peuserik:/OSSFAC/openSUSE_12.3/noarch/etckeeper-1.3-2.1.noarch.rpm
- 安裝它:etckeeper-1.3-2.1.noarch.rpm 中的 sudo zypper
- 初始化它:sudo etckeeper init
所以腳本將是:
#!/bin/sh wget http://download.opensuse.org/repositories/home:/Peuserik:/OSSFAC/openSUSE_12.3/noarch/etckeeper-1.3-2.1.noarch.rpm sudo zypper in etckeeper-1.3-2.1.noarch.rpm sudo mv /etc/etckeeper/etckeeper.conf /etc/etckeeper/etckeeper.conf.original sudo tee /etc/etckeeper/etckeeper.conf > /dev/null << ENDDOC HIGHLEVEL_PACKAGE_MANAGER=zypper LOWLEVEL_PACKAGE_MANAGER=rpm VCS="git" ENDDOC #no space before this line cd etc sudo etckeeper init sudo git commit -m "initial checkin" sudo git gc # pack git repo to save a lot of space cd - exit 0