Duplicati – Backup your Home-Assistant Configuration

duplicati-hass - dockeril.net

אחת הבעיות שנתקלתי בהן בעת העבודה עם Home-Assistant היא החסרון בצורת גיבוי/שחזור יעלה ונוחה אך גם פשוטה לשימוש. לאחרונה התוודעתי לתוכנת קוד פתוח בשם Duplicati המאפשרת לגבות ולשחזר קבצים בצורה פשוטה ויעילה לשלל התקנים ובפרוטוקולים שונים ומגוונים:

  • SMB Share
  • ftp/sftp
  • Google Cloude Services / Google Drive
  • Dropbox
  • Mega
  • Amazon

ורבים וטובים אחרים.
מעבר לפשטות הגיבוי הוא גם מוצפן בהצפנה חזקה ומאפשר שחזור של קובץ בודד מתוך הגיבוי.

במדריך זה אסביר איך ניתן לקבוע Backup set שישמש לגיבוי ההגדרות של Home-Assistant ישירות ל Google Drive, אך לפני שנתחיל אנא וודאו שהתקנתם את Duplicati על פי המאמר הבא או באחת הדרכים הנוספות כפי שניתן למצוא כאן.

שלב א' – יצירת Backup Set

בשלב זה ניצור Backup Set אשר יבצע גיבוי של קבתי ההגדרות לענן.
אם אתם משתמשים ב duplicati על גבי docker-compose יש לוודא כי ביצעתם mout לתיקיית ההגדרות של home-assistant כ persistent volume על ידי הוספת השורה הבאה לקובץ ה docker-compose.yaml תחת המקטע של volumes:

- /home/homeassistant/.homeassistant:/hass

בצורה כזו, בתוך duplicti תתווסף תיקיה בשם hass אשר תמופה לאותו נתיב בו נמצאים קבתי ההגדרה של Home-Assistant.
כעת הריצו את הפקודה הבאה על מנת שהקונטיינר של duplicati יתעדכן:

docker-compose -f ~/docker/duplicati.docker-compose.yaml up -d

בתמונה הבאה תוכלו לראות שההגדרות של הקונטיינר התעדכנו:

Duplicati - volumes - תומר קליין

כעת, פתחו את הדפדפן והכנסו לממשק המערכת, פורט ברירת המחדל הוא 8200. המסך הראשון בו תתקלו הוא המסך הראשי של התוכנה ממנו נוכל לנווט בין האפשרויות השונות:

Duplicati - Main - Tomer Klein - Techblog.co.il

כאן נבחר באופציה של Add Backup, נסמן את האופציה של Configure a new backup ונלחץ על next:

Duplicati - Add New Backup

בשלב הבא נתבקש להגדיר הגדרות כלליות לגיבוי:

  • שם לגיבוי, לדוגמה "Home Assistant".
  • תיאור קצר.
  • שיטת הצפנה.
  • passphrase שישמש להצפנת קובץ הגיבוי.

ונלחץ על Next.

Duplicati - Backup Settings

ניתן לבצע גיבוי גם ללא הצפנה, המשמעות שיהיה ניתן לפתוח את קובץ הגיבוי בצורה פשוטה גם מחוץ ל Duplicati:

Duplicati - Backup without encryption

 

 

במסך הבא נגדיר את התקן היעד לשמירת הגיבוי (במקרה שלנו Google Drive):

Duplicati -Google Drive

  • Storage Type – סוג ההתקן אליו נגבה.
  • שם התיקייה שתכיל את קבצי הגיבוי (במקרה שלנו תיווצר תיקייה בשם Hass בתוך Google Drive)
  • AuthID – משמש לביצוע אימות מול גוגל.

לחצו על הקישור של AuthID ועקבו אחרי שלבי האימות, בסופם יתווסף קוד האימות לשדה באופן אוטומטי:

 

Duplicati - Auth with Google Drive

Duplicati - Select Google Account

 

Duplicati -Google Drive allow access

 

 

 

Duplicati -Google Drive auth ok

ונלחץ על Next לעבור לשלב הבא, בו נבחר את התיקיות והקבצים אותם נרצה לגבות. במקרה שלנו את התיקייה של Home-Assistant:

Duplicati -Select what to backup (Source)

ניתן להשתמש בפילטרים והחרגות למניעת גיבוי קבצים מיותרים כמו קבצי לוג למשל.

במסך הבא נוכל להגדיר את התזמון לביצוע הגיבוי, כאשר הזמנים יכולים לנוע בין דקות לשנים וכן את הימים בשבוע בהם יתבצע הגיבוי. בכל מקרה את הגיבוי ניתן יהיה להריץ בצורה ידנית.

Duplicati -Select backup Schedule

בלחיצה על Next נעבור למסך ההגדרות הכלליות של הגיבוי:

*Duplicati -General Options

  • Remote volume size  – אופציה זו אינה קשורה לגודל קובץ הגיבוי. לפני ביצוע שינוי, מומלץ  לקרוא את ההסבר שכתוב בקישור זה.
  • Backup retention – מגדיר את מדיניות שמירת הגיבויים, כאשר ברירת המחדל היא לשמור את כולם.
  • Advanced Options – מאפשר לבצע מגוון רחב של פעולם לפני ואחרי הגיבוי, כמו למשל הרצת סקריפט לגיבוי DB לקובץ לפני תחילת הגיבוי על מנת שיכלל בקבצים המגובים.

ולסיום נלחץ על Save על מנת לשמור את ההגדרות.

כעת נוכל לראות בדף הבית של המערכת כי נוסף Backup Set לרשימה, וכן מה הגיבוי הבא ומתי הוא אמור לרוץ:

duplicati backup sets

לחיצה על שם ה Backup Set תרחיב אותו ותציג בפנינו אפשרויות נוספות כמו מחיקה, הרצה ידנית, שינוי הגדרות, ביצוע שחזור ועוד:

duplicati backup sets - expended

זהו, כאן נסתיימו הגדרות הגיבוי. כעת אסביר כיצד לשחזר.

שלב ב' – שחזור מגיבוי:

כאשר ניכנס למערכת ונרחיב את ה Backup Set שיצרנו (לאחר שכבר בוצע גיבוי) נוכל לשים לב כי נוספה בתחתית שורה שמציינת את מספר גרסאות הגיבוי שנוצרו:

Duplicati backup versions

וכאשר נלחץ על "Restore Files", נוכל לבחור את גרסאת הגיבוי ממנה נרצה לשחזר:

Duolicati - restore from

לאחר בחירת הגרסה נוכל לבחור האם לשחזר את כלל הקבצים או קבצים ספציפיים אותם נרצה לשחזר, ונלחץ על Continue:

Duplicati - select files to restore

בחלק הבא, נוכל לבחור בהגדרות מתקדמות עבור השחזור:

duplicati - restore options - techblog.co.il

  • לאן נרצה לשחזר: למיקום המקורי או למיקום חלופי (טוב במקרה שנרצה להשוות בין 2 גרסאות ולקחת רק חלק מהקובץ)
  • האם נרצה להחליף את הקובץ הקיים (במידה ושחזרנו לאותו מקום) או האם לשחזר כקובץ באותו שם בתוספת חותמת זמן.
  • הרשאות: האם לזחר את הקובץ עם ההרשאות המקוריות שלו.

ונלחץ על Restore לביצוע השחזור.

 

בהצלחה!

Be the first to comment

Leave a Reply

כתובת האימייל שלך לא תפורסם


*