You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

backup-and-restore.zh-tw.md 2.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. ---
  2. date: "2017-01-01T16:00:00+02:00"
  3. title: "用法: 備份與還原"
  4. slug: "backup-and-restore"
  5. weight: 11
  6. toc: false
  7. draft: false
  8. menu:
  9. sidebar:
  10. parent: "usage"
  11. name: "備份與還原"
  12. weight: 11
  13. identifier: "backup-and-restore"
  14. ---
  15. # 備份與還原
  16. Gitea 目前支援 `dump` 指令,用來將資料備份成 zip 檔案,後續會提供還原指令,讓你可以輕易的將備份資料及還原到另外一台機器。
  17. ## 備份指令 (`dump`)
  18. 首先,切換到執行 Gitea 的使用者: `su git` (請修改成您指定的使用者),並在安裝目錄內執行 `./gitea dump` 指令,你可以看到 console 畫面如下:
  19. ```
  20. 2016/12/27 22:32:09 Creating tmp work dir: /tmp/gitea-dump-417443001
  21. 2016/12/27 22:32:09 Dumping local repositories.../home/git/gitea-repositories
  22. 2016/12/27 22:32:22 Dumping database...
  23. 2016/12/27 22:32:22 Packing dump files...
  24. 2016/12/27 22:32:34 Removing tmp work dir: /tmp/gitea-dump-417443001
  25. 2016/12/27 22:32:34 Finish dumping in file gitea-dump-1482906742.zip
  26. ```
  27. 備份出來的 `gitea-dump-1482906742.zip` 檔案,檔案內會包含底下內容:
  28. * `custom/conf/app.ini` - 伺服器設定檔。
  29. * `gitea-db.sql` - SQL 備份檔案。
  30. * `gitea-repo.zip` - 此 zip 檔案為全部的 repo 目錄。
  31. 請參考 Config -> repository -> `ROOT` 所設定的路徑。
  32. * `log/` - 全部 logs 檔案,如果你要 migrate 到其他伺服器,此目錄不用保留。
  33. 你可以透過設定 `--tempdir` 指令參數來指定備份檔案目錄,或者是設定 `TMPDIR` 環境變數來達到此功能。
  34. ## 還原指令 (`restore`)
  35. 持續更新中: 此文件尚未完成.
  36. 例:
  37. ```sh
  38. unzip gitea-dump-1610949662.zip
  39. cd gitea-dump-1610949662
  40. mv data/conf/app.ini /etc/gitea/conf/app.ini
  41. mv data/* /var/lib/gitea/data/
  42. mv log/* /var/lib/gitea/log/
  43. mv repos/* /var/lib/gitea/repositories/
  44. chown -R gitea:gitea /etc/gitea/conf/app.ini /var/lib/gitea
  45. # mysql
  46. mysql --default-character-set=utf8mb4 -u$USER -p$PASS $DATABASE <gitea-db.sql
  47. # sqlite3
  48. sqlite3 $DATABASE_PATH <gitea-db.sql
  49. # postgres
  50. psql -U $USER -d $DATABASE < gitea-db.sql
  51. service gitea restart
  52. ```