Version 4 (modified by JP, 15 years ago)

--

Migracja z Windows na Linux

Poniżej opisane są najważniejsze rzeczy które należy wziąć pod uwagę przy przenoszeniu systemu z Windows na Linux.

Migracja będzie wymagać

  • skopiowania plików systemu C:\Program Files\BetaSoft\eDokumenty\public_html do /home/edokumenty/public_html,
  • eksportu bazy
pg_dump -U postgres -f edokumenty.sql edokumenty

  • importu bazy na Linux psql -U postgres -f edokumenty.sql edokumenty
  • ustawienia właściwych praw do pliku (opisane w innym miejsu wiki)
  • przeniesienia plików katalogu files
  • przeniesienia plików repozytorium SVN, które jest szerzej opisane poniżej.

Na Windows przed wykonaniem zrzutu sprawdzamy integralność repozytorium funkcją "Narzędzia > Integralność repozytorium" Co się da naprawiamy z eDokumenty. Resztę można ręcznie:

svn st

Następnie patrząc na listę

  • te pliki które mają poczatek od ?
    • dodajemy do repozytorium czyli svn add <file>
  • te które maja literkę A
    • zatwierdzamy czyli comitujemy svn ci -m "" <file>

Następnie wykonujemy zrzut:

@set edok_dir=C:\Program Files\BetaSoft\eDokument
svnadmin dump "%edok_dir%\repo" > repos.dump

Następnie kopiujemy plik repos.dump na serwer z Linux i umieszczamy w katalogu /home/edokumenty. Następnie umożliwiamy chwilowy zapis użytkownikowi www-data do katalogu /home/edokumenty i przechodzimy na usera www-data i zakładamy repozytorium:

#chmod o+w /home/edokumenty
#su - www-data
$cd /home/edokumenty
$svnadmin create repos

Następnie nadal z użytkownika www-data zaimportujemy pliki do repozytorium.

cd /home/edokumenty
svnadmin load repos < repos.dump

W tym momencie powinny pojawiać się komunikaty z polecenia load, zatwierdzam wersję 1, 2, 3... itd. Następnie możemy pobrać zawartość repozytorium do lokalnej kopii umieszczonej w sąsiednim katalogu /home/edokumenty/repository. Wykonujemy to poleceniem checkout (w skrócie co).

cd /home/edokumenty/repository
svn co file:///home/edokumenty/repos .

Polecenie to pobiera do katalogu /home/edokumenty/repository zawartosć bazy SVN.

Polecenie powinno zwracać dla każdego dodawanego pliku informację Pobieram 2009/09...

W efekcie listując zawartośc repository widzimy katalogi 2008, 2009, 2010 itp.

GOTOWE! Gratulacje dobrej decyzji.

Ps. Dla posiadaczy starszych wersji systemu < 2.0 należy zwrócić uwagę czy struktura katalogów zaczynała się od repository_2 czy samo repository i odpowiednio zmodyfikować ścieżki.