Mam nadzieję, że piszę w dobrym dziale.
Chciałem się zapytać czy jeśli mam dwa komputery + serwer NAS z dyskiem sieciowym, na komputerze głównym jest windows, gdzie system plików to NTFS a na drugim kompie + NAS jest linux np. z btrfs lub xfs lub ext4 i chcę przenieść dane z jednego systemu na drugi to czy jest tu jakieś niebezpieczeństwo, że dane po skopiowaniu będą wadliwe?
Chodzi mi o to czym dokładnie jest system plików i za co odpowiada i czy są jakieś ryzyka związane ze stosowania różnych systemów plików?
Czy jeśli w windowsie podepnę sobie dysk sieciowy, gdzie będzie xfs to nie będzie z tym problemów, gdy będę na niego przerzucał pliki z NTFS lub na odwrót?
Z góry dziękuję za wyjaśnienie.
Przenoszenie plików między różnymi systemami plików
- Rejestracja: dni
- Ostatnio: dni
- Postów: 463
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Wrocław
System plików na NASie nie ma znaczenia, bo i tak w celu udostępniania używasz jakiegoś protokołu sieciowego, np. SMB, żeby Windows był z tym kompatybilny. W efekcie system klienta widzi pliki i katalogi, a to, jaki na serwerze NAS jest system plików go w ogóle nie interesuje.
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Poznań
- Postów: 9010
Ogólnie to tak, jak Prosiaczek napisał - systemu nie interesuje to, w jaki sposób urządzenie NAS zapisuje pliki. Równie dobrze może zapisywać na taśmie albo dyskietkach - Ciebie (jak kompa podpiętego przez sieć do zdalnego dysku) to w ogóle nie interesuje.
Nie napisałeś w jaki sposób się podpinasz - NFS, SMB, rsync czy jeszcze inaczej.
Pamiętaj, że część rzeczy możesz stracić. Nie chodzi o pliki, katalogi, drzewo katalogów, nazwy itp. - to powinno się przenieść bez problemów. Ale są jeszcze metadane - jak uprawnienia do plików, właściciele, ACL, grupy, jakieś dodatkowe informacje dot, czasu itp. Ponadto kwestia symlinków - ciężko jest zgadnąć, jak się to zachowa - czy je stracisz, czy może podczas kopiowania zrobi kopie tych plików i będziesz miał kilka egzemplarzy tego samego, ale bez powiązania z oryginałem - czyli stracisz cały sens symlinków. Ile z tego zaginie to ciężko powiedzieć - zależy od tego, jak się połączysz z NAS, na jakim systemie on stoi itp. Ale miej to na uwadze - nie wiem, na ile to jest dla Ciebie istotne, ale te "dodatkowe" informacje mogą częściowo się zatrzeć.
EDIT
Jeszcze bardzo ważna rzecz - wielkość liter.
Unixy rozróżniają wielkość liter, Windowsy maja na to wywalone.
Jest ryzyko, że jeśli masz w jakimś katalogu plik.abc, Plik.abc oraz plik.ABC to Linux widzi je jako 3 osobne pliki, ale po przerzuceniu na Windowsa - ciężko zgadnąć, co się stanie - czy pliki zostaną nadpisane, zrobią się jakieś kopie - w stylu plik(1).abc, czy jeszcze inaczej będzie to rozwiązane.Ale to kolejny problem, który trzeba mieć na uwadze. Bo możesz np. mieć jakiś projekt, który odnosi się do Panel.php, przy kopiowaniu nazwa tego pliku się zmieni na panel.php, w wyniku czego projekt przestanie się odpalać/kompilować. Oczywiście - pojedyncze zmiany nazw nie są problemem, ale jeśli takich zmian będą setki czy tysiące to może być realny problem.
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Jelcz-Laskowice
- Postów: 35
Jeśli sobie wyobrazisz dysk, jako ogród, to system plików jest takim ogrodnikiem, jaki pilnuje, by ogród był podzielony na grządki (klastry lub bloki w zależności od nomenklatury konkretnego systemu plików), w jakich są umieszczane pliki oraz o ścieżki między tymi grządkami (strukturę metadanych opisującą położenie poszczególnych plików w drzewie katalogów). Głównym zadaniem systemu plików jest umieszczanie plików w odpowiednich jednostkach alokacji i opisywanie tych plików w metadanych w zakresie obejmującym co najmniej:
- nazwę pliku (z rozszerzeniem, jeśli występuje),
- rozmiar i położenie pliku na partycji (położenie na dysku jest obliczane z uwzględnieniem położenia partycji, nie jestem w stanie zagwarantować, że dla wszystkich, ale typowo dla systemu plików początkiem układu odniesienia jest początek partycji),
- położenie pliku w strukturze katalogów (nawet, jeśli to jakaś stara wersja FAT12, gdzie był tylko katalog główny),
- mniej lub bardziej rozbudowane atrybuty czasu,
Mogą też występować jakieś inne atrybuty w mniej lub bardziej rozbudowanym zestawie (ukryty, systemowy, tylko od odczytu...) informacje o właścicielu pliku i prawach dostępu, alternatywne strumienie danych (de facto informacja, jaka mogłaby być osobnym plikiem) czy jakieś dodatkowe informacje, ale to już kwestia specyfiki konkretnego systemu plików.
Tak - przy przenoszeniu danych między systemami plików można co nieco pogubić i czasem się zdziwić.Np. w NTFSie plik może mieć kilka różnych nazw. FAT pogubi właścicieli plików i prawa dostępu, bo ich nie obsługuje.
Jeśli potrzebujesz bardziej szczegółowych informacji, napisz, to rozwinę temat.
- Rejestracja: dni
- Ostatnio: dni
Kaleron napisał(a):
Jeśli sobie wyobrazisz dysk, jako ogród, to system plików jest takim ogrodnikiem, jaki pilnuje, by ogród był podzielony na grządki
lepiej wyobraź sobie, że dysk twardy to wielki kosmiczny dworzec kolejowy, a system plików to dyrygent orkiestry chaosu, który pilnuje, by każdy pociąg (plik) miał swoje miejsce na torach (klastrach/blokach) i żeby pasażerowie (metadane) wiedzieli, gdzie wsiąść i wysiąść.
Nazwa pliku to jak numer wagonu - bez niego pasażerowie nie wiedzą, gdzie się odnaleźć.
Rozmiar i położenie to jak długość składu i numer toru - system plików musi wiedzieć, ile miejsca zajmuje i gdzie dokładnie stoi.
Położenie w katalogach to jak rozkład jazdy - nawet w archaicznym FAT12 był tylko jeden peron (katalog główny), ale pociągi musiały się tam zmieścić.
Atrybuty czasu to zegary na dworcu - pokazują, kiedy pociąg przyjechał, kiedy odjechał i czy się spóźnił.
Dodatkowe atrybuty to jak bilety VIP, przepustki dla personelu czy tajne wejścia - plik może być ukryty, tylko do odczytu albo mieć alternatywne strumienie danych (jak dodatkowe wagony, które nie są widoczne dla zwykłych pasażerów).
W NTFS pociąg może mieć kilka różnych nazw - jak skład, który na jednym dworcu nazywa się „Ekspres Kraków”, a na innym „InterCity 123”.
W FAT nie ma konduktorów ani ochroniarzy - więc wszystkie prawa dostępu i właściciele giną w tłumie, bo system nie obsługuje takich luksusów.
Dlatego przy przenoszeniu danych między systemami plików można się zdziwić - to trochę jak teleportowanie pociągu z kosmicznego dworca NTFS na wiejską stację FAT: część wagonów dojedzie, ale VIP‑owskie bilety, alternatywne wejścia i nazwy ekspresów zostaną w próżni.
#AIslop
- Rejestracja: dni
- Ostatnio: dni
- Postów: 463
Dziękuję wszystkim za pomoc.
Moje obawy wynikały z tego, że na systemie windows mam bazę danych i robię backup, który zapisuję na NAS-ie, gdzie jest inny system plików. I nurtowało mnie czy takie przenoszenie danych jest bezpieczne. Do tej pory nie miałem problemu z odtwarzaniem backup-ów, ale nie byłem pewny jak to działa i czy to ma jakieś znaczenie, że na różnych systemach są rożne systemy plików.
Czyli tak reasumując: jak przenoszę dane z jednego systemu na drugi to system operacyjny (urządzenia na które przenoszę dane) dba o to, aby przenoszone dane zostały zapisane w prawidłowy sposób i główne dane nie powinny się zmienić? (meta dane nie są dla mnie istotne)
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Poznań
- Postów: 9010
Jeśli chodzi o przerzucenie z Windowsa - nie powinno być problemów.
Pisałem o tym wcześniej - Windows nie rozróżnia wielkości liter, także tutaj nie nastąpi przekłamanie, bo jakkolwiek zostaną nazwy plików zmienione (w zakresie wielkości liter) to Windows nie odczuje różnicy. Tak samo te dodatkowe artybuty plików/uprawnienia/metadane - Linux o wiele więcej rzeczy zapisuje od Windowsa, także tutaj ponownie nie widzę problemu w zapisie danych z Windows na dysk zewnętrzny.
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Jelcz-Laskowice
- Postów: 35
Dodaj cytat...Linux o wiele więcej rzeczy zapisuje od Windows
Czy ja wiem, czy o wiele więcej...na pewno w inny sposób i w innych miejscach. W linuksowych/uniksowych systemach plików zasadniczą informację o pliku masz zapisaną w węźle indeksowym, mało co jest poza nim (nazwa w katalogu, gdzie masz też odesłanie do węzła indeksowego, przy silnej fragmentacji też inforrnacje o położeniu pliku). W przypadku NTFSu rekord MFT nie jest dokładnym odpowiednikiem węzła indeksowego. W teorii możesz mieć w rekordzie MFT pełną informację o pliku (jeśli jest dostatecznie ,mały, też i jego treść), w praktyce zdarzają się atrybuty nierezydentne, pliki opisywane więcej, niż jednym rekordem MFT (w pierwszym z nich pojawia się atrybut 0x20, widywałem też takie atrybuty nierezydentne), część potrzebnej informacji może być w $Secure - też tego może być całkiem sporo.
FAT, to inna bajka - jest dużo prostszy i faktycznie zapisuje mniej, ale jest uniwersalny - obsługiwany przez wszystkie systemy operacyjne.