From: xf0r3m Date: Mon, 18 Sep 2023 10:58:14 +0000 (+0200) Subject: Tworzenie rozdziału 11. Zakończenie pisania 11.2.remotesync X-Git-Url: https://gitweb.morketsmerke.org/?a=commitdiff_plain;h=7622e7ae71bc41070216965d7d1a1218ea44863a;p=mmdev.git Tworzenie rozdziału 11. Zakończenie pisania 11.2.remotesync --- diff --git a/articles/terminallog/Linux.Podstawy.html b/articles/terminallog/Linux.Podstawy.html index aadd41d..1292879 100644 --- a/articles/terminallog/Linux.Podstawy.html +++ b/articles/terminallog/Linux.Podstawy.html @@ -9464,7 +9464,121 @@ Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ... Jest on powszechnie wykorzystywany przez administratorów do przesyłania danych między Uniksami. Program wymaga istnienia na obu stronach komunikacji oraz dostępu do powłoki (rsync domyślnie - wykorzystuje SSH) + wykorzystuje SSH). Program jeśli ma działać na zdalnym systemie + zachowuje się podobnie do SCP, program może również działać na + lokalnym systemie zastępując klasyczne polecenie cp i tak + też to polecenie działa w prosty niemodyfikowany opcjami sposób. + Opcje te programu są w stanie dość mocno wpłynąc na jego zachowanie, + że te dwa powyższe polecenie mogą stać się zbędne. Polecenie + rsync może być również wykorzystywane to + kopiowania/przenoszenia w obrębie jednego komputera. +

+

+ Najprostsza składnia polecenia rsync wygląd następująco: +

+
+xf0r3m@immudex:~$ rsync -r katalog_lokalny user@host:/sciezka/do/katalogu/zdalnego
+
+

+ Polecenie to prześle cały katalog + katalog_lokalny do katalogu zdalnego + na serwerze. Na powyższym poleceniu użyłem opcji + -r (rekurencja), w przeciwnym razie + nic nie zostanie przesłane. +

+

+ Podczas przekazywania ścieżek do polecenia (głównie ścieżki lokalnej) + istnieje pewna zależność. Jeśli definiując scieżkę lokalną podamy na + jej końcu ukośnik, to wówczas do katalogu zdalnego zostanie + przekopiowana sama zawartość bez tworzenia początkowego katalogu. +

+
+#Bez kończącego ukośnika:
+xf0r3m@vm-331503c:/ic0$ rsync -r Repos2 /ic0/Dokumenty
+# Katalog docelowy
+xf0r3m@vm-331503c:~/Dokumenty$ ls -al
+razem 12
+drwxr-xr-x  3 xf0r3m xf0r3m 4096 09-18 09:52 .
+drwxr-xr-x 11 xf0r3m xf0r3m 4096 09-18 09:12 ..
+drwxr-xr-x  4 xf0r3m xf0r3m 4096 09-18 09:52 Repos2
+xf0r3m@vm-331503c:~/Dokumenty$ ls -al Repos2/
+razem 16
+drwxr-xr-x 4 xf0r3m xf0r3m 4096 09-18 09:52 .
+drwxr-xr-x 3 xf0r3m xf0r3m 4096 09-18 09:52 ..
+drwxr-xr-x 5 xf0r3m xf0r3m 4096 09-18 09:52 Repos
+drwxr-xr-x 2 xf0r3m xf0r3m 4096 09-18 09:52 .test
+
+#Z kończącym ukośnikiem.
+xf0r3m@vm-331503c:/ic0$ rsync -r Repos2/ /ic0/Dokumenty
+xf0r3m@vm-331503c:~/Dokumenty$ ls -al
+razem 16
+drwxr-xr-x  4 xf0r3m xf0r3m 4096 09-18 09:58 .
+drwxr-xr-x 11 xf0r3m xf0r3m 4096 09-18 09:12 ..
+drwxr-xr-x  5 xf0r3m xf0r3m 4096 09-18 09:58 Repos
+drwxr-xr-x  2 xf0r3m xf0r3m 4096 09-18 09:58 .test
+
+

+ Na tę zależnośc należy uważać podczas kopiowania danych, ponieważ + sam utworzony przez polecenie katalog może być istotny. Na powyższych + przykładach użyłem polecenia rsync wewnątrz tego samego + systemu. +

+

+ Jak wcześniej wspominalismy dużą rolę w polecenie rsync + odgrywają jego opcje. Poniżej znajduja się najważniejsze z znich. +

+ +

+ W tym materaile przedstawiono tylko, kilka opcji powszechnie + wykorzysywanych podczas korzystania z polecenia rsync. + Obszerną wiedzę na ten temat zwiera strona podręcznika polecenia, + zawierająca opisy wszystkich opcji oraz inne zagadnienia związane + z programem. +

+

+ Ostatnią rzeczą związana z poleceniem przekazywanie do rsync + poleceń związanych z SSH, w końcu ten program domyślnie korzysta z + tego protokołu. Przekazanie opcji SSH wymaga użycia zmiennej powłoki. +

+
+export RSYNC_RSH='-p 2022 -i id_rsa';
+
+

+ W powyższym poleceniu użyto polecenia wbudowane + export w celu przeniesienia zmiennej + do obszaru pamięci odpowiedzialnego za zmienne środowiskowe (będzie + o tym w ostatnim rodziale materiału). Zmiennej nadano wartość + składającą się z dwóch opcji polecenia SSH. Rsync będzie + korzystać z tych informacji.