GNU Health/控制中心
GNU Health 控制中心 (gnuhealth-control) 是 GNU Health 環境 的主要管理工具。
它可以執行例項的備份和更新,並且可以非互動式使用(例如,作為 cron 作業)。我們建議使用 gnuhealth-control 執行管理任務,因為它還會建立一個日誌檔案,該檔案在出現問題時非常有用。
GNU Health 控制中心位於伺服器的 UTIL 目錄中。
usage: gnuhealth-control command [options]
Command:
version : Show version
backup : Backup the gnuhealth kernel, attach dir and database
update : Download and install the patches
getlang : Get and install / update the language pack code
status : Show environment and GNU Health HMIS server status
Options:
--backdir : destination directory for the backup file
--dry-run : Check, download and preview, but don't actually run the update process
--database : database name to use with the backup command
使用 gnuhealth-control 執行備份時,應用程式會執行以下任務
- 執行資料庫備份。
- 執行 gnuhealth 使用者的 $HOME 目錄的備份,因此它儲存核心、rc 檔案、模組和附件目錄。
要執行備份,請使用資料庫名稱和要儲存備份的目標目錄呼叫 gnuhealth-control 實用程式。
./gnuhealth-control backup --backdir <directory> --database <dbname>
GNU Health 控制備份命令在目標備份目錄中建立兩個檔案
- 壓縮的資料庫轉儲:格式為:*backup_db-name_timestamp.gz*
- GNU Health 的資料庫和檔案系統。
當 gnuhealth-control 使用 update 命令呼叫時,它將更新同一主版本號內的 GNU Health 元件。以下元件將被檢查並在必要時更新
- Trytond:Tryton 伺服器版本
- 官方 GNU Health 安裝中包含的標準 Tryton 模組
- 要應用於預設 Tryton 核心的安全建議
- GNU Health 修補程式集(有關更多資訊,請參閱 修補程式和修補程式集)
這將適用於具有相同主版本號和次版本號的版本,例如 3.0.x 將查詢與該版本關聯的最新 Tryton 更新和 GNU Health 更新。
您可以透過執行幹執行更新來檢查 Tryton 和 GNU Health 伺服器上的狀態。使用 --dry-run 選項呼叫 update 命令只會檢查您的伺服器是否需要更新,而不會進行任何更改。
./gnuhealth-control update --dry-run
在開始更新之前,停止您的 GNU Health 例項並進行完整備份 |
主要步驟是
- 停止例項並進行備份
- 使用 gnuhealth-control 工具執行核心更新
- 更新資料庫
停止例項並進行完整離線備份後,您就可以執行實際更新。
使用 **gnuhealth 使用者**,執行以下命令。它將下載所有 Tryton 和 GNU Health 修補程式,並在其後重新載入 bash 環境變數。
cdutil
./gnuhealth-control update && source $HOME/.gnuhealthrc
最後,更新您的資料庫
cdexe
./trytond-admin --all --database=name_of_your_db
如果一切順利,您就已更新到最新的 Tryton 和 GNU Health 修補程式集!現在您可以重新啟動伺服器。
您可以在 GNU ftp://ftp.gnu.org/gnu/health 獲得最新版本的 GNU Health 控制中心
GNU Health 控制中心允許您恢復完整的 GNU Health 例項,包括資料庫和檔案系統。當然,要執行恢復,您需要有一個備份。我將專注於使用 GNU Health 控制中心完成的備份。
要恢復資料庫,請使用“gnuhealth”作業系統使用者連線,並更改到資料庫備份所在的目錄。
1) **建立一個新的資料庫**
$ createdb your_db_name
2) **解壓縮使用 GNU Health 控制中心生成的資料庫轉儲**
$ gunzip backup_db-name_timestamp.gz
3) **使用 psql 恢復資料庫**
$ psql your_db_name < backup_db-name_timestamp