Jaki jest najlepszy sposób wykonywania kopii zapasowych Subversion (na serwerze opartym na Debianie).
Czy to użyć svnadmin?
svnadmin dump /path/to/reponame > reponame.dump
A może po prostu wykasować katalog, w którym znajdują się repozytoria?
tar -cvzf svn.backup.tar.gz /var/subversion/
Jakie są zalety i wady powyższych?
Dzięki, Johan
Aktualizacja : Jest to mały serwer z tylko kilkoma repozytoriami. Tak więc przyrostowe kopie zapasowe prawdopodobnie nie są potrzebne, myślę, że lepiej skupić się na prostocie.
Aktualizacja : Użyłem skryptu opakowania paczek (który z kolei był opakowaniem dla svn-hot-backup), aby wykonać pełną kopię zapasową, a następnie wykonałem pełne odzyskiwanie na innym czystym komputerze. Jednak usunąłem tę część „SVN_HOTBACKUP_NUM_BACKUPS = 10”, ponieważ nie działała ona dla mnie.
Należy pamiętać, że uważam, że było to dość proste, a wynik był bardzo bliski, aby po prostu splądrować reż. Ale jak wskazał tutaj Manni, użycie svn-hot-backup / „svnadmin hotcopy” jest bardziej niezawodną metodą, ponieważ tar może od czasu do czasu tworzyć uszkodzone kopie zapasowe, jeśli masz pecha.
Czy widziałeś dokumentację na ten temat?
Zasadniczo masz dwie opcje:
svnadmin dump
svnadmin hotcopy
Po prostu wykonanie kopii katalogu nie jest opcją, ponieważ Twoje repozytorium może się zmienić podczas tworzenia kopii.
To, czy chcesz tworzyć kopie przyrostowe, czy pełne, zależy od ilości paranoi, wielkości repozytorium, potrzeb i infrastruktury.
źródło
Polecam SVNBackup ze względu na fakt, że jest on w stanie wykonywać przyrostowe kopie zapasowe .
Dlaczego to jest ważne? Cóż, jeśli masz duży zespół programistów i masz codzienną kopię zapasową Subversion, a twój system zawiedzie 12 godzin od starej kopii zapasowej, cały dzień pracy zostanie utracony.
Jeśli wykonujesz pełne kopie zapasowe (którym jest skrót SVN ) wiele razy dziennie, powodujesz niepotrzebne ładowanie maszyny repozytorium, co zirytuje niecierpliwych programistów.
Jako bonus; Polecam również Backup-PC jako rozwiązanie do tworzenia kopii zapasowych. Może wykonywać przyrostowe zdalne kopie zapasowe i jest w stanie zaoszczędzić dużo miejsca, jeśli tworzysz kopie zapasowe identycznych plików w różnych systemach.
źródło
Używam svnsync do tworzenia kopii zapasowych w repozytorium przeznaczonym tylko do odczytu, które samo w sobie jest archiwizowane z przestarzałymi kopiami (dzień, tydzień, miesiąc)
źródło
dump
i nahotcopy
pewno ma swoje zastosowania. Może to być bardzo przydatne również w przypadku lokalnych przyrostowych kopii zapasowych.Możesz wykonać przyrostową kopię zapasową za pomocą svnadmin, jeśli chcesz, powinieneś uruchomić hot-backup.py przed utworzeniem archiwum tar.
Oto artykuł na temat tworzenia kopii zapasowych repozytoriów SVN. Tak czy inaczej, czytanie książki SVN jest dobrym punktem wyjścia, jak powiedziano wcześniej.
źródło
Tworzę kopie zapasowe kilku repozytoriów SVN 100GB + zwykłym starym rsync.
svnadmin dump
isvnadmin hotcopy
zajmie to dni w tych repozytoriach.Inną rzeczą do obejrzenia jest
svnadmin dump
brak kopii zapasowych blokad i skryptów przechwytujących.źródło
Oto, co robię z moimi repozytoriami: skorzystaj z usługi tworzenia kopii zapasowych folderów, takiej jak Dropbox (tutaj jest link do ich wersji dla systemu Linux ). Po prostu ustawiasz Dropbox jako katalog główny swojego repozytorium (lub nawet nad nim), a kopia zapasowa jest tworzona przy każdej zmianie pliku. Będzie nie tylko dostępny na różnych komputerach, ale będziesz mógł uzyskać do niego dostęp online i mieć jego wersje.
Istnieje kilka takich usług tworzenia kopii zapasowych online - większość z nich jest bezpłatna do 2 GB.
źródło