Π₯Π΅ΠΉ Π₯Π°Π±Ρ!
ΠΠ½Π΅Ρ ΠΈΡΠΊΠ°ΠΌ Π΄Π° Π³ΠΎΠ²ΠΎΡΡ Π·Π° Π½Π°ΡΠΈΡ ΠΎΠΏΠΈΡ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°ΡΠ° Π½Π° Nextcloud Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. Π Π°Π±ΠΎΡΡ ΠΊΠ°ΡΠΎ ΡΠ΅ΡΠ²ΠΈΠ· Π² ΠΠΎΠ»Π½ΠΈΡ ΠΠ, ΠΊΡΠ΄Π΅ΡΠΎ ΠΏΡΠ°Π²ΠΈΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΠ’ ΡΠΈΡΡΠ΅ΠΌΠΈ, Nextcloud ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Ρ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΡΡΡΠΊΡΡΡΠ°, Ρ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠ°Π½Π΅.
ΠΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅, ΠΏΡΠΎΠΈΠ·ΡΠΈΡΠ°ΡΠΈ ΠΎΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈΡΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈΡΠ΅, ΡΠ°, ΡΠ΅ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π½Π½ΠΈ. ΠΠ΅ΡΡΠΈΠΎΠ½ΠΈΡΠ°Π½Π΅ΡΠΎ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½ΠΎ ΠΎΡ Nextcloud, ΠΈΠ·Π»ΠΈΡΡΠΊΡΡ, ΡΡΠ±Π΅ΠΊΡΠΈΠ²Π½ΠΈΡΠ΅ ΠΏΡΠΈΡΠΈΠ½ΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ ΡΡΠ·Π΄Π°Π²Π°Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΈ.
ΠΏΡΠ°ΠΈΡΡΠΎΡΠΈΡ
ΠΡΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Nextcloud Π²ΡΠ·Π½ΠΈΠΊΠ²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π±Π΅ΠΊΡΠΏ, ΠΊΠΎΠΉΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ° ΡΠ΅Π½Π½ΠΈ.
ΠΡΠ΅Π΄Π»Π°Π³Π°ΠΌΠ΅ ΠΎΠΏΡΠΈΠΈ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ Ρ Π½Π°Ρ ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΎΡ Nextcloud, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π³ΡΠ²ΠΊΠ°Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΡΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠ°Π½Π΅.
ΠΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, Π²ΡΠΈΡΠΊΠΈ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ Π²ΡΠΈΡΠΊΠΈ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΡΠ°ΠΉΡΠΎΠ²Π΅ ΠΈ ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ. Π’ΠΎΠ²Π° Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π° ΡΠ΅Ρ Π½ΠΈΠΊΠ°, ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ΅Π»ΠΈΡΡ ΡΠ°ΠΉΡ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈ Π½Π° Π²Π°Ρ ΠΈ Π°ΡΡ ΠΈΠ²ΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ°Π²ΡΡ ΠΎΡ ΠΊΠΎΡΠΎΠ½ΠΈ; Π½Π΅ ΠΏΠ°ΡΠ²Π° Π΄ΠΎΠ±ΡΠ΅.
ΠΡΡΠ²ΠΎ, Π½Π΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π²Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ. ΠΠΌΠ°ΠΌΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ:
- ΠΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ Π²ΡΠ·Π΅Π» ΠΈΠ»ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ. ΠΠ° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ minio ΠΊΠ°ΡΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅.
- ΠΠ°ΡΡΠ΅ΡΠ΅ Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅.
- Π’ΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ Ρ Π²Π°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ ΠΈ/ΠΈΠ»ΠΈ Ρ Π½Π°Ρ.
- Π‘ΠΏΡΠ°Π²Π΅ΡΠ΅ ΡΠ΅ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Π±ΡΡΠ·ΠΎ ΠΈ Π»Π΅ΡΠ½ΠΎ.
- ΠΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ ΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈΡΠ΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅Π΄ΠΈΠ½ ΠΎΡ Π΄ΡΡΠ³ - Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ Π΅Π΄Π½Π°ΠΊΠ²ΠΎΡΡ.
- Π‘ΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΈ Π΄Π²Π° ΡΡΠ΅Π½Π°ΡΠΈΡ: ΠΏΡΠ»Π½ΠΎ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ (ΠΊΠ°ΡΠ°ΡΡΡΠΎΡΠ°), Π΅Π΄Π½Π° ΠΏΠ°ΠΏΠΊΠ° Π΅ ΠΈΠ·ΡΡΠΈΡΠ° ΠΏΠΎ ΠΏΠΎΠ³ΡΠ΅ΡΠΊΠ°.
- ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° Π΅ ΡΡΠ½ΠΊΡΠΈΡ Π·Π° Π΄Π΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ.
ΠΠ° Π΄Π° ΡΠ°Π·ΡΠ΅ΡΠΈΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ, ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ ΠΌΠ΅ GitLab. ΠΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΏΠΎ ΡΠ°ΠΊΡΠΈΠΊΠ°.
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π½ΠΈΠ΅ Π½Π΅ ΡΠΌΠ΅ ΠΏΡΡΠ²ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ΡΠ°Π²Π°Ρ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π½ΠΎ Π½ΠΈ ΡΠ΅ ΡΡΡΡΠ²Π°, ΡΠ΅ Π½Π°ΡΠΈΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΡΡΠ΄Π½ΠΎ Π½Π°ΡΡΡΠΏΠ°Π½ ΠΎΠΏΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΠΈ ΡΠΌΠ΅ Π³ΠΎΡΠΎΠ²ΠΈ Π΄Π° Π³ΠΎ ΡΠΏΠΎΠ΄Π΅Π»ΠΈΠΌ.
Π’ΡΠΉ ΠΊΠ°ΡΠΎ Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΈΠΌΠ° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, Π½ΠΈΠ΅ ΡΡΡΡΠΈΡ
ΠΌΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄. ΠΠΈΠ΅ Π½Π° ΡΠ²ΠΎΠΉ ΡΠ΅Π΄ ΡΠΏΠΎΠ΄Π΅Π»ΡΠΌΠ΅ Π½Π°ΡΠΈΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π³ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°ΠΌΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π² GitHub ΠΈΠΌΠ°
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅
ΠΠ°ΠΏΠΎΡΠ½Π°Ρ ΠΌΠ΅ ΡΡΡΡΠ΅Π½Π΅ΡΠΎ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠ°ΡΠΎ ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅.
ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡΡ tar + gzip Π½Π΅ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅ - Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ Π΄ΡΠ±Π»ΠΈΡΠ°Ρ. ΠΠ΄Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΎ ΡΡΠ΄ΡΡΠΆΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΈ Π³ΠΎΠ»ΡΠΌΠ° ΡΠ°ΡΡ ΠΎΡ Π΄Π°Π½Π½ΠΈΡΠ΅ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ ΡΠ°ΠΉΠ» ΡΠ΅ ΠΏΠΎΠ²ΡΠ°ΡΡΡ.
ΠΠΌΠ° ΠΈ Π΄ΡΡΠ³ ΠΏΡΠΎΠ±Π»Π΅ΠΌ - ΠΈΠ·Π»ΠΈΡΡΠΊ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ minio ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½ΠΎ ΠΈΠ·Π»ΠΈΡΠ½ΠΈ. ΠΠ»ΠΈ ΡΡΡΠ±Π²Π°ΡΠ΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ ΠΏΡΠ΅Π· ΡΠ°ΠΌΠΈΡ minio - Π΄Π° Π³ΠΎ Π·Π°ΡΠ΅Π΄ΠΈΡΠ΅ ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈ, Π½Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π²Π°ΠΆΠ½ΠΎ, ΠΈΠΌΠ° ΡΠΈΡΠΊ Π΄Π° Π·Π°Π±ΡΠ°Π²ΠΈΡΠ΅ Π½ΡΠΊΠΎΠΈ ΠΎΡ ΠΊΠΎΡΠΈΡΠ΅ ΠΈ ΠΌΠ΅ΡΠ°-ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ°. ΠΠ»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ Π΄Π΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ Π·Π° Π°ΡΡ
ΠΈΠ²ΠΈΡΠ°Π½Π΅ Ρ Π΄ΡΠ±Π»ΠΈΡΠ°Π½Π΅ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π² ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ (Π½Π° HabrΓ© ΠΈΠΌΠ°ΡΠ΅
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ
Borg ΠΈ Restic ΡΠ° Π΄ΠΎΠ±ΡΠΈ, Π½ΠΎ Π½ΠΈΡΠΎ Π΅Π΄ΠΈΠ½ ΠΏΡΠΎΠ΄ΡΠΊΡ Π½ΡΠΌΠ° ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ. ΠΠ° ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π° ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΊΠΎΠΉΡΠΎ Π²Π΅ΡΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½, Π±Π΅Π· ΠΊΠΎΠΉΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ Π½Π°ΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ - ΡΠΎΠ²Π° Π΅ Π΄ΠΎΠ±ΡΠ΅ ΠΏΠΎΠ·Π½Π°ΡΠΈΡΡ CI/CD - GitLab.
ΠΠ΄Π΅ΡΡΠ° Π΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ°: gitlab-runner ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ° Π½Π° Π²ΡΠ΅ΠΊΠΈ Π²ΡΠ·Π΅Π», ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π΄Π°Π½Π½ΠΈ ΠΎΡ Nextcloud. ΠΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅Π»ΡΡ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠΊΡΠΈΠΏΡ ΠΏΠΎ Π³ΡΠ°ΡΠΈΠΊ, ΠΊΠΎΠΉΡΠΎ ΡΠ»Π΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ ΠΈ ΡΡΠ°ΡΡΠΈΡΠ° Borg ΠΈΠ»ΠΈ Restic.
ΠΠ°ΠΊΠ²ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡ ΠΌΠ΅? ΠΠ±ΡΠ°ΡΠ½Π° Π²ΡΡΠ·ΠΊΠ° ΠΎΡ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ, ΡΠ΄ΠΎΠ±Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π²ΡΡΡ Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° Π³ΡΠ΅ΡΠΊΠ°.
ΡΡΠΊ Π΅
ΠΡΠ΅ ΠΎΡΠ΅ Π½ΡΠΌΠ° Π½Π°ΡΠΈΠ½ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π½Π° CI/CD Π² API Π½Π° Gitlab, Π½ΠΎ Π΅ ΠΌΠ°Π»ΠΊΠΎ. Π’ΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈ, Π΄Π° ΡΠ΅ΡΠ΅ΠΌ 1d
.
GitLab, Π·Π° ΡΠ°ΡΡΠΈΠ΅, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ° Π½Π΅ ΡΠ°ΠΌΠΎ ΡΠΏΠΎΡΠ΅Π΄ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½Ρ, Π½ΠΎ ΡΠ°ΠΌΠΎ ΡΠΏΠΎΡΠ΅Π΄ Π³ΡΠ°ΡΠΈΠΊ, ΡΠΎΡΠ½ΠΎ ΡΠΎΠ²Π° Π½ΠΈ ΡΡΡΠ±Π²Π°.
Π‘Π΅Π³Π° ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΡΠΊΡΠΈΠΏΡΠ° Π·Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°.
ΠΠ°Π΄Π°Π²Π°ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π·Π° ΡΠΎΠ·ΠΈ ΡΠΊΡΠΈΠΏΡ:
- Π’ΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ° ΠΊΠ°ΠΊΡΠΎ ΠΎΡ Π±Π΅Π³Π°ΡΠ°, ΡΠ°ΠΊΠ° ΠΈ ΡΡΡΠ½ΠΎ ΠΎΡ ΠΊΠΎΠ½Π·ΠΎΠ»Π°ΡΠ° ΡΡΡ ΡΡΡΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ.
- Π’ΡΡΠ±Π²Π° Π΄Π° ΠΈΠΌΠ° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ:
- ΠΊΠΎΠ΄ Π·Π° Π²ΡΡΡΠ°Π½Π΅.
- ΡΡΡΡΠ΅Π½Π΅ Π½Π° Π½ΠΈΠ· Π² Π΄Π½Π΅Π²Π½ΠΈΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π½Π°Ρ Π³ΡΠ΅ΡΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π½Π΅ ΡΡΠΈΡΠ° Π·Π° ΡΠ°ΡΠ°Π»Π½ΠΎ.
- ΠΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ°. ΠΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π΅ ΡΠ°Π·ΡΠΌΠ½ΠΎ.
- ΠΠΌΠ°ΠΌΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π΅Π½ Π΄Π½Π΅Π²Π½ΠΈΠΊ. ΠΠΎ ΡΠ°ΠΌΠΎ Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° Π³ΡΠ΅ΡΠΊΠ°.
- ΠΠ·Π²ΡΡΡΠ²Π°Ρ ΡΠ΅ ΠΈ ΡΠ΅Π΄ΠΈΡΠ° ΡΠ΅ΡΡΠΎΠ²Π΅ ΠΏΡΠ΅Π΄ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅.
- ΠΠ°Π»ΠΊΠΈ Π±ΠΎΠ½ΡΡΠΈ Π·Π° ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ, ΠΊΠΎΠΈΡΠΎ Π½Π°ΠΌΠ΅ΡΠΈΡ ΠΌΠ΅ Π·Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°:
- ΠΠ°ΡΠ°Π»ΠΎΡΠΎ ΠΈ ΠΊΡΠ°ΡΡ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°Ρ Π² syslog Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π°. Π’ΠΎΠ²Π° ΠΏΠΎΠΌΠ°Π³Π° Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π·Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅.
- Π§Π°ΡΡ ΠΎΡ ΡΠ΅Π³ΠΈΡΡΡΡΠ° Π½Π° Π³ΡΠ΅ΡΠΊΠΈΡΠ΅, Π°ΠΊΠΎ ΠΈΠΌΠ° ΡΠ°ΠΊΡΠ², ΡΠ΅ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π² stdout, ΡΠ΅Π»ΠΈΡΡ ΡΠ΅Π³ΠΈΡΡΡΡ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π° Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΠ°ΠΉΠ». Π£Π΄ΠΎΠ±Π½ΠΎ Π΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ CI ΠΈ Π΄Π° ΠΎΡΠ΅Π½ΠΈΡΠ΅ Π³ΡΠ΅ΡΠΊΠ°ΡΠ°, Π°ΠΊΠΎ Π΅ ΡΡΠΈΠ²ΠΈΠ°Π»Π½Π°.
- Π Π΅ΠΆΠΈΠΌΠΈ Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ.
ΠΡΠ»Π½ΠΈΡΡ Π΄Π½Π΅Π²Π½ΠΈΠΊ ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π° ΠΊΠ°ΡΠΎ Π°ΡΡΠ΅ΡΠ°ΠΊΡ Π² GitLab; Π°ΠΊΠΎ Π½ΡΠΌΠ° Π³ΡΠ΅ΡΠΊΠ°, Π΄Π½Π΅Π²Π½ΠΈΠΊΡΡ ΡΠ΅ ΠΈΠ·ΡΡΠΈΠ²Π°. ΠΠΈΠ΅ ΠΏΠΈΡΠ΅ΠΌ ΡΠΊΡΠΈΠΏΡΠ° Π² bash.
Π©Π΅ ΡΠ΅ ΡΠ°Π΄Π²Π°ΠΌΠ΅ Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈ ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ - Π΄ΠΎΠ±ΡΠ΅ Π΄ΠΎΡΠ»ΠΈ.
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠΈ
ΠΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅Π» Ρ Bash ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅Π» ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ° Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈΡ Π²ΡΠ·Π΅Π». Π‘ΠΏΠΎΡΠ΅Π΄ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π·Π°Π΄Π°Π½ΠΈΠ΅ΡΠΎ CI/CD ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ° Π² ΡΠΏΠ΅ΡΠΈΠ°Π»Π½Π° ΡΡΠΏΠ°. Runner ΡΡΠ°ΡΡΠΈΡΠ° ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π΅Π½ ΡΠΊΡΠΈΠΏΡ Π·Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° Π·Π° ΡΠ°ΠΊΠΈΠ²Π° Π·Π°Π΄Π°ΡΠΈ, ΡΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΡΠ° Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΡΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, ΡΠΎΡΠΊΠΈΡΠ΅ Π·Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½Π΅ ΠΈ Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΈΡΠΊΠ°ΠΌΠ΅, ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ Π°ΡΡ ΠΈΠ²ΠΈΡΠ° ΠΈ ΠΈΠ·ΡΠΈΡΡΠ²Π° ΡΡΠ°ΡΠΎΡΠΎ. Π‘Π°ΠΌΠΎΡΠΎ Π³ΠΎΡΠΎΠ²ΠΎ Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π΄ΠΎ S3.
ΠΠΈΠ΅ ΡΠ°Π±ΠΎΡΠΈΠΌ ΠΏΠΎ ΡΠ°Π·ΠΈ ΡΡ Π΅ΠΌΠ° - ΡΠΎΠ²Π° Π΅ Π²ΡΠ½ΡΠ΅Π½ Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ Π½Π° AWS ΠΈΠ»ΠΈ ΡΡΡΠΊΠΈ Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ (ΠΏΠΎ-Π±ΡΡΠ·ΠΎ Π΅ ΠΈ Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π΅ Π½Π°ΠΏΡΡΠΊΠ°Ρ Π ΡΡΠΊΠ°ΡΠ° ΡΠ΅Π΄Π΅ΡΠ°ΡΠΈΡ). ΠΠ»ΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ ΠΎΡΠ΄Π΅Π»Π΅Π½ ΠΌΠΈΠ½ΠΈ ΠΊΠ»ΡΡΡΠ΅Ρ Π·Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π½Π° Π½Π΅Π³ΠΎΠ²ΠΈΡ ΡΠ°ΠΉΡ Π·Π° ΡΠ΅Π·ΠΈ ΡΠ΅Π»ΠΈ. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΡΠ°Π²ΠΈΠΌ ΡΠΎΠ²Π° ΠΎΡ ΡΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠΎ Π½Π΅ ΠΈΡΠΊΠ° Π΄Π°Π½Π½ΠΈΡΠ΅ Π΄Π° Π½Π°ΠΏΡΡΠ½Π°Ρ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΠΈΠ³Π°.
ΠΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π·Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ ΡΡΠ΅Π· ssh. Π’ΠΎΠ²Π° Π½Π΅ Π΄ΠΎΠ±Π°Π²Ρ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π° Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° Π½Π° S3 ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠΈ ΠΎΡ Π½Π°ΡΠ°ΡΠ° Π΅Π΄Π½Π° ssh ΠΌΠ°ΡΠΈΠ½Π°.
ΠΠ° Π΄Π° Π·Π°ΡΠΈΡΠΈΡΠ΅ Π²Π°ΡΠ°ΡΠ° Π»ΠΎΠΊΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π° ΠΎΡ Ρ
Π°ΠΊΠ΅Ρ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΡΡΠΈΠ΅ Π΄Π°Π½Π½ΠΈ Π½Π° S3, ΡΡΡΠ±Π²Π° Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π²Π΅ΡΡΠΈΡΡΠ°.
Π Π΅Π·Π΅ΡΠ²Π½ΠΎΡΠΎ ΠΊΠΎΠΏΠΈΠ΅ Π²ΠΈΠ½Π°Π³ΠΈ ΠΊΡΠΈΠΏΡΠΈΡΠ° Π°ΡΡ
ΠΈΠ²Π°.
Borg ΠΈΠΌΠ° Π½Π΅ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ ΡΠ΅ΠΆΠΈΠΌ none
, Π½ΠΎ ΡΠΈΠ»Π½ΠΎ Π½Π΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π°ΠΌΠ΅ Π΄Π° Π³ΠΎ Π²ΠΊΠ»ΡΡΠ²Π°ΡΠ΅. Π ΡΠΎΠ·ΠΈ ΡΠ΅ΠΆΠΈΠΌ Π½Π΅ ΡΠ°ΠΌΠΎ Π½ΡΠΌΠ° Π΄Π° ΠΈΠΌΠ° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, Π½ΠΎ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΡΠΌΠ° Π½Π° ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°, Π½Π΅ ΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΡΠ΅Π»ΠΎΡΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π° ΡΠ°ΠΌΠΎ ΠΈΠ½Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ, Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈ.
ΠΡΠ΄Π΅Π»Π΅Π½ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈΡΠ΅ ΠΊΠΎΠΏΠΈΡ Π·Π° ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅ ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ. ΠΡΠΎΠ²Π΅ΡΠΊΠ°ΡΠ° Π΅ Π±Π°Π²Π½Π° ΠΈ Π΄ΡΠ»Π³Π°, Π·Π°ΡΠΎΠ²Π° Ρ ΠΏΡΠΎΠ²Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΠΎΡΠ΄Π΅Π»Π½ΠΎ Π²Π΅Π΄Π½ΡΠΆ ΠΌΠ΅ΡΠ΅ΡΠ½ΠΎ. ΠΠΎΠΆΠ΅ Π΄Π° ΠΎΡΠ½Π΅ΠΌΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄Π½ΠΈ.
Readme Π½Π° ΡΡΡΠΊΠΈ
ΠΡΠ½ΠΎΠ²Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ
prepare
ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅testcheck
ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡΡΠ°maincommand
ΠΎΡΠ½ΠΎΠ²Π΅Π½ Π΅ΠΊΠΈΠΏforcepostscript
ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π½Π°ΠΊΡΠ°Ρ ΠΈΠ»ΠΈ ΠΏΠΎ Π³ΡΠ΅ΡΠΊΠ°. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π³ΠΎ, Π·Π° Π΄Π° Π΄Π΅ΠΌΠΎΠ½ΡΠΈΡΠ°ΠΌΠ΅ Π΄ΡΠ»Π°.
Π‘Π΅ΡΠ²ΠΈΠ·Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ
cleanup
ΠΠΈΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π³ΡΠ΅ΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°ΠΌΠ΅ Π»ΠΎΠ³ ΡΠ°ΠΉΠ»Π°.checklog
Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ Π΄Π½Π΅Π²Π½ΠΈΠΊΠ° Π·Π° ΠΏΠΎΡΠ²Π°ΡΠ° Π½Π° ΡΠ΅Π΄ Ρ Π³ΡΠ΅ΡΠΊΠ°.ret
ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡ Π·Π° ΠΈΠ·Ρ ΠΎΠ΄.checktimeout
ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π·Π° ΡΠ°ΠΉΠΌΠ°ΡΡ.
ΠΠ°ΠΎΠ±ΠΈΠΊΠ°Π»ΡΡΠ° ΡΡΠ΅Π΄Π°
VERBOSE=1
ΠΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π°ΠΌΠ΅ Π³ΡΠ΅ΡΠΊΠΈΡΠ΅ Π½Π° Π΅ΠΊΡΠ°Π½Π° Π²Π΅Π΄Π½Π°Π³Π° (stdout).SAVELOGSONSUCCES=1
Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π΄Π½Π΅Π²Π½ΠΈΠΊΠ° ΠΏΡΠΈ ΡΡΠΏΠ΅Ρ .INIT_REPO_IF_NOT_EXIST=1
Π‘ΡΠ·Π΄Π°ΠΉΡΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, Π°ΠΊΠΎ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°. ΠΠ΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.TIMEOUT
ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ Π·Π°Π΄Π°Π΄Π΅ΡΠ΅ ΠΊΠ°ΡΠΎ "m", "h" ΠΈΠ»ΠΈ "d" Π² ΠΊΡΠ°Ρ.
Π Π΅ΠΆΠΈΠΌ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ°ΡΠΈ ΠΊΠΎΠΏΠΈΡ. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅:
KEEP_DAILY=7
KEEP_WEEKLY=4
KEEP_MONTHLY=6
ΠΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π² ΡΠΊΡΠΈΠΏΡΠ°
ERROR_STRING
β Π½ΠΈΠ· Π·Π° ΡΠ΅Π³ΠΈΡΡΡΡΠ° Π·Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π·Π° Π³ΡΠ΅ΡΠΊΠ°.EXTRACT_ERROR_STRING
β ΠΈΠ·ΡΠ°Π· Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Π½ΠΈΠ· ΠΏΡΠΈ Π³ΡΠ΅ΡΠΊΠ°.KILL_TIMEOUT_SIGNAL
β ΡΠΈΠ³Π½Π°Π» Π·Π° ΡΠ±ΠΈΠ²Π°Π½Π΅ ΠΏΡΠΈ ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅.TAIL
β ΠΊΠΎΠ»ΠΊΠΎ Π½ΠΈΠ·ΠΎΠ²Π΅ Ρ Π³ΡΠ΅ΡΠΊΠΈ Π½Π° Π΅ΠΊΡΠ°Π½Π°.COLORMSG
β ΡΠ²ΡΡ Π½Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΡΠΎ (ΠΆΡΠ»ΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅).
Π’ΠΎΠ·ΠΈ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ Π½Π°ΡΠΈΡΠ° wordpress, ΠΈΠΌΠ° ΡΡΠ»ΠΎΠ²Π½ΠΎ ΠΈΠΌΠ΅, ΡΡΠΈΠΊΡΡ ΠΌΡ Π΅, ΡΠ΅ Π°ΡΡ ΠΈΠ²ΠΈΡΠ° ΠΈ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ mysql. Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ Π½Π° Nexcloud Ρ Π΅Π΄ΠΈΠ½ Π²ΡΠ·Π΅Π», ΠΊΡΠ΄Π΅ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎ Π΄Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ. Π£Π΄ΠΎΠ±ΡΡΠ²ΠΎΡΠΎ Π΅ Π½Π΅ ΡΠ°ΠΌΠΎ, ΡΠ΅ Π²ΡΠΈΡΠΊΠΎ Π΅ Π½Π° Π΅Π΄Π½ΠΎ ΠΌΡΡΡΠΎ, Π½ΠΎ ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π΅ Π±Π»ΠΈΠ·ΠΊΠΎ Π΄ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π²Π°ΡΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° Π΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π°.
Π Π΅ΡΡΠΈΡ ΡΡΠ΅ΡΡ ΠΠΎΡΠ³
ΠΠΌΠ° ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΠΎΡΠ³ ΠΈ Π Π΅ΡΡΠΈΡ
ΠΠ°ΡΠΈΡΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ Π·Π° ΠΏΠΎΠ΄Π±ΠΎΡ, Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ Π²Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈΡΠ΅ (Π΄Π΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ, Π±ΡΡΠ·ΠΎ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΈ Ρ.Π½.):
- Π‘ΡΠΏΡΠΎΡΠΈΠ²Π° ΡΡΠ΅ΡΡ Π½Π΅Π΄ΠΎΠ²ΡΡΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ°. ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π·Π° ΡΠ±ΠΈΠΉΡΡΠ²ΠΎ -9.
- Π Π°Π·ΠΌΠ΅Ρ Π½Π° Π΄ΠΈΡΠΊΠ°.
- ΠΠ·ΠΈΡΠΊΠ²Π°Π½Π΅ Π·Π° ΡΠ΅ΡΡΡΡΠΈ (CPU, ΠΏΠ°ΠΌΠ΅Ρ).
- Π Π°Π·ΠΌΠ΅Ρ Π½Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΡΠ΅ ΠΏΠ΅ΡΠ½Π°.
- Π Π°Π±ΠΎΡΠ° Ρ S3.
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ°.
ΠΠ° ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π²Π·Π΅Ρ
ΠΌΠ΅ Π΅Π΄ΠΈΠ½ ΠΊΠ»ΠΈΠ΅Π½Ρ Ρ ΡΠ΅Π°Π»Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΎΠ±Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΡ 1,6 TB.
Π£ΡΠ»ΠΎΠ²ΠΈΡ.
Borg Π½Π΅ Π·Π½Π°Π΅ ΠΊΠ°ΠΊ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΡΡΡ S3, Π° Π½ΠΈΠ΅ ΠΌΠΎΠ½ΡΠΈΡΠ°Ρ
ΠΌΠ΅ Π΄ΠΈΡΠΊΠ° ΠΊΠ°ΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠ°Π·ΠΈΡΠ΅Π», ΠΏΡΠ΅Π·
Goofys ΡΠ°Π±ΠΎΡΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΠ·ΠΎ ΠΈ Π΄ΠΎΠ±ΡΠ΅ ΠΈ ΠΈΠΌΠ° ΡΠ°ΠΊΠΈΠ²Π°
ΠΠ° Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΠΌ Π²Π»ΠΈΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ ΠΌΠ΅ΡΡΠ΅Π½ Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ - Yandex Cloud.
Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΎΡ ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅ΡΡΠΎΠ²Π΅.
- Π£Π±ΠΈΠΉ -9 Ρ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΡΠ΅ΡΡΠ°ΡΡ ΠΈ Π΄Π²Π΅ΡΠ΅ Π±ΡΡ Π° ΡΡΠΏΠ΅ΡΠ½ΠΈ.
- Π Π°Π·ΠΌΠ΅Ρ Π½Π° Π΄ΠΈΡΠΊΠ°. Borg ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΡΠ° ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΈΡΠ΅.
Backuper
ΡΠ°Π·ΠΌΠ΅Ρ
ΠΠΎΡΠ³
562Gb
Π Π΅ΡΡΠΈΠΊ
628Gb
- Π§ΡΠ΅Π· ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ°
Π‘Π°ΠΌΠΈΡΡ Borg ΠΊΠΎΠ½ΡΡΠΌΠΈΡΠ° ΠΌΠ°Π»ΠΊΠΎ, Ρ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, Π½ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΎΡΠ΅Π½ΠΈ Π·Π°Π΅Π΄Π½ΠΎ Ρ goofys ΠΏΡΠΎΡΠ΅ΡΠ°. ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ ΡΠ΅ ΡΠ° ΡΡΠ°Π²Π½ΠΈΠΌΠΈ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΠΊΠΎΠ»ΠΎ 1,2 ΡΠ΄ΡΠ° Π½Π° Π΅Π΄Π½Π° ΠΈ ΡΡΡΠ° ΡΠ΅ΡΡΠΎΠ²Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°. - ΠΏΠ°ΠΌΠ΅Ρ. Restic Π΅ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ 0,5 GB, Borg Π΅ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ 200 MB. ΠΠΎ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΊΠ΅Ρ. ΠΠ°ΡΠΎΠ²Π° Π΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΠ°ΠΌΠ΅Ρ.
- Π Π°Π·Π»ΠΈΠΊΠ°ΡΠ° Π² ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΠ΅ΡΠ½Π°ΡΠ° Π±Π΅ΡΠ΅ ΠΏΠΎΡΠ°Π·ΠΈΡΠ΅Π»Π½Π°.
Backuper
ΡΠ°Π·ΠΌΠ΅Ρ
ΠΠΎΡΠ³
ΠΎΠΊΠΎΠ»ΠΎ 500MB
Π Π΅ΡΡΠΈΠΊ
ΠΎΠΊΠΎΠ»ΠΎ 5MB
- ΠΠΏΠΈΡΡΡ Π½Π° Restic S3 Π΅ ΠΎΡΠ»ΠΈΡΠ΅Π½. Π Π°Π±ΠΎΡΠ°ΡΠ° Ρ Borg ΠΏΡΠ΅Π· goofys Π½Π΅ ΠΏΠΎΠ²Π΄ΠΈΠ³Π° Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ Π²ΡΠΏΡΠΎΡΠΈ, Π½ΠΎ Π±Π΅ΡΠ΅ ΠΎΡΠ±Π΅Π»ΡΠ·Π°Π½ΠΎ, ΡΠ΅ Π΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ umount ΡΠ»Π΅Π΄ ΠΏΡΠΈΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ΡΠΎ, Π·Π° Π΄Π° Π½ΡΠ»ΠΈΡΠ°ΡΠ΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΊΠ΅ΡΠ°. ΠΡΠΎΠ±Π΅Π½ΠΎΡΡΡΠ° Π½Π° S3 Π΅, ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠΌΠΏΠ²Π°Π½ΠΈΡΠ΅ ΡΠ°ΡΡΠΈ Π½ΠΈΠΊΠΎΠ³Π° Π½ΡΠΌΠ° Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½ΠΈ Π² ΠΊΠΎΡΠ°ΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ Π½Π΅ΠΏΡΠ»Π½ΠΎ ΠΏΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ Π²ΠΎΠ΄ΡΡ Π΄ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ ΡΠ΅ΡΠΈ.
- ΠΡΠΎΠ²Π΅ΡΠΊΠ°ΡΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅ ΠΈ Π² Π΄Π²Π°ΡΠ° ΡΠ»ΡΡΠ°Ρ, Π½ΠΎ ΡΠΊΠΎΡΠΎΡΡΡΠ° ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ°Π²Π° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ.
Π Π΅ΡΡΠΈΠΊ 3,5 ΡΠ°ΡΠ°.
Borg, ΡΡΡ 100GB SSD ΡΠ°ΠΉΠ»ΠΎΠ² ΠΊΠ΅Ρ β 5 ΡΠ°ΡΠ°.ΠΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ ΡΡΡΠ°ΡΠ° ΡΠΊΠΎΡΠΎΡΡ, Π°ΠΊΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ° Π½Π° Π»ΠΎΠΊΠ°Π»Π΅Π½ Π΄ΠΈΡΠΊ.
Borg ΡΠ΅ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡ S3 Π±Π΅Π· ΠΊΠ΅Ρ 33 ΡΠ°ΡΠ°. Π§ΡΠ΄ΠΎΠ²ΠΈΡΠ½ΠΎ Π΄ΡΠ»Π³ΠΎ.
ΠΡΠ½ΠΎΠ²Π½ΠΎΡΠΎ Π΅, ΡΠ΅ Borg ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ° ΠΈ ΠΈΠΌΠ° ΠΏΠΎ-Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΠ΅ΡΠ½Π° - ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ°Π²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ GET/PUT Π² S3 ΠΏΠΎ-Π΅Π²ΡΠΈΠ½ΠΈ. ΠΠΎ ΡΠΎΠ²Π° ΡΡΠ°Π²Π° Ρ ΡΠ΅Π½Π°ΡΠ° Π½Π° ΠΏΠΎ-ΡΠ»ΠΎΠΆΠ½Π° ΠΈ ΠΏΠΎ-Π±Π°Π²Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°. Π©ΠΎ ΡΠ΅ ΠΎΡΠ½Π°ΡΡ Π΄ΠΎ ΡΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅, Π½Π΅ Π·Π°Π±Π΅Π»ΡΠ·Π°Ρ ΠΌΠ΅ Π½ΠΈΠΊΠ°ΠΊΠ²Π° ΡΠ°Π·Π»ΠΈΠΊΠ°. Restic ΠΎΡΠ½Π΅ΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄Π²Π°ΡΠΈ Π°ΡΡ ΠΈΠ²ΠΈ (ΡΠ»Π΅Π΄ ΠΏΡΡΠ²ΠΎΡΠΎ) ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-Π΄ΡΠ»Π³ΠΎ, Π½ΠΎ Π½Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ.
ΠΠ΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΎ ΠΌΡΡΡΠΎ ΠΏΡΠΈ ΠΈΠ·Π±ΠΎΡΠ° Π±Π΅ΡΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°ΡΠ° Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°.
Π ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΠΠΎΡΠ³.
ΠΡΠΊΠΎΠ»ΠΊΠΎ Π΄ΡΠΌΠΈ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΡΠ°
Borg ΠΈΠΌΠ° ΠΎΡΠ»ΠΈΡΠ΅Π½ Π½ΠΎΠ² Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ Π² ΡΠ²ΠΎΡ Π°ΡΡΠ΅Π½Π°Π» - zstd. ΠΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ Π½Π΅ Π΅ ΠΏΠΎ-Π»ΠΎΡΠΎ ΠΎΡ gzip, Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ. Π ΡΡΠ°Π²Π½ΠΈΠΌΠ° ΠΏΠΎ ΡΠΊΠΎΡΠΎΡΡ Ρ lz4 ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΄ΡΠΌΠΏ Π½Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΡΠ΅ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ° Π΄Π²Π° ΠΏΡΡΠΈ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ ΠΎΡ lz4 ΠΏΡΠΈ ΡΡΡΠ°ΡΠ° ΡΠΊΠΎΡΠΎΡΡ. ΠΠΏΠΈΡΡΡ Ρ ΡΠ΅Π°Π»Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΠ±Π°ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° Π² ΡΡΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ Π½Π° Π²ΡΠ·Π΅Π»Π° Nextcloud.
Borg ΠΈΠΌΠ° Π΄ΠΎΡΡΠ° Π±ΠΎΠ½ΡΡ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ - Π°ΠΊΠΎ ΡΠ°ΠΉΠ»ΡΡ ΠΈΠΌΠ° Π²ΠΈΡΠΎΠΊΠ° Π΅Π½ΡΡΠΎΠΏΠΈΡ, ΡΠΎΠ³Π°Π²Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΡΠ° ΠΈΠ·ΠΎΠ±ΡΠΎ Π½Π΅ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°, ΠΊΠΎΠ΅ΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π° ΡΠΊΠΎΡΠΎΡΡΡΠ°. ΠΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΎ ΠΎΡ ΠΎΠΏΡΠΈΡ ΠΏΡΠΈ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅
-C auto,zstd
Π·Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° zstd
Π’Π°ΠΊΠ° ΡΠ΅ Ρ ΡΠ°Π·ΠΈ ΠΎΠΏΡΠΈΡ, Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, ΠΈΠΌΠ°ΠΌΠ΅
560Gb ΠΈ 562Gb ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΎ. ΠΠ°Π½Π½ΠΈΡΠ΅ ΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΠΎ-Π³ΠΎΡΠ΅, Π½Π°ΠΏΠΎΠΌΠ½ΡΠΌ, Π±Π΅Π· ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΡΡ Π΅ 628Gb. Π Π΅Π·ΡΠ»ΡΠ°ΡΡΡ ΠΎΡ 2GB ΡΠ°Π·Π»ΠΈΠΊΠ° Π΄ΠΎΠ½ΡΠΊΡΠ΄Π΅ Π½ΠΈ ΠΈΠ·Π½Π΅Π½Π°Π΄Π°, Π½ΠΎ ΡΠ΅ΡΠΈΡ
ΠΌΠ΅, ΡΠ΅ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠ΅ Π³ΠΎ ΠΈΠ·Π±Π΅ΡΠ΅ΠΌ. auto,zstd
.
Π Π΅Π·Π΅ΡΠ²Π΅Π½ ΠΌΠ΅ΡΠΎΠ΄ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°
Π‘ΠΏΠΎΡΠ΅Π΄ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π° ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡ Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΠΈΠ»ΠΈ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°. ΠΠΎΠ½Π΅ Π΅ ΠΏΠΎ-Π΅Π²ΡΠΈΠ½ΠΎ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π΄Π° Π³ΠΎ ΠΎΡΠ³Π»Π΅ΠΆΠ΄Π°ΡΠ΅ ΡΠ°ΠΌΠΈ ΠΈ Π΄Π° ΡΡΠΈΠΌΡΠ»ΠΈΡΠ°ΡΠ΅ ΡΡΠ°ΡΠΈΠΊ.
goofys --cache "--free:5%:/mnt/cache" -o allow_other --endpoint https://storage.yandexcloud.net --file-mode=0666 --dir-mode=0777 xxxxxxx.com /mnt/goofys
export BORG_PASSCOMMAND="cat /home/borg/.borg-passphrase"
borg list /mnt/goofys/borg1/
borg check --debug -p --verify-data /mnt/goofys/borg1/
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΡΡΡΠ°ΡΠ° ΡΡ Π΅ΠΌΠ°, ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°ΠΌΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Ρ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠ½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° (ΡΠ»Π΅Π΄ ΡΠ°ΠΊΡΠ°). Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΊΠ°ΡΠ²Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π½Π΅ΡΠ° Π² Nextcloud ΠΈ Π½Π΅ Π²ΡΠ΅ΠΊΠΈ ΠΈΠΌΠ° Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠ½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°. ΠΡΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π½Π°Π»ΠΈΠ²Π°Π½Π΅ ΠΎΡΠ½Π΅ΠΌΠ° ΡΠ²ΡΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΠΏΡΠ΅ΡΠΈ Π½Π° Π±ΠΈΠ·Π½Π΅ΡΠ°.
ΠΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡΠ° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π° ΡΡΠ΅Π· ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π±Π΅Π³Π°ΡΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²ΡΠ·Π»ΠΈ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ°Π³ΠΎΠ²Π΅.
ΠΠ°ΡΠΈΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΡΡΠ±ΠΈΡΠ° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΡΡΠ°ΡΡΡΠΈ ΡΡΠ΅Π· GitLab API Π² Π΅Π΄ΠΈΠ½ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ; Π°ΠΊΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ ΡΠ΅ Π·Π°Π±Π΅Π»ΡΠ·Π²Π°Ρ Π»Π΅ΡΠ½ΠΎ ΠΈ ΡΡΡΠΎ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π»Π΅ΡΠ½ΠΎ ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΈΡΠ°Ρ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° Π·Π½Π°Π΅ΠΌ ΡΡΡ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠΌ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ, ΡΠ΅ Π½Π°ΡΠΈΡΠ΅ Π°ΡΡ ΠΈΠ²ΠΈ ΡΠ° Π²Π°Π»ΠΈΠ΄Π½ΠΈ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Ρ Ρ ΡΡΡ , ΠΎΡΠ½Π΅ΠΌΠ°Ρ ΠΌΠ°Π»ΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΡΠ΅ ΡΠ΅ΡΠ°Π²Π°Ρ Π½Π° Π½ΠΈΠ²ΠΎ Π΄Π΅ΠΆΡΡΠ΅Π½ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ. ΠΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ΡΠΎ Π·Π°Π΅ΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠΎ ΠΌΡΡΡΠΎ Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ tar.gz ΠΈΠ»ΠΈ Bacula.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com