Inny identyfikator UID / GID w przypadku korzystania z dysku USB sformatowanego w systemie ext4 z innym komputerem

11

Problem z użyciem systemu plików takiego jak ext4na pamięci USB lub karcie pamięci polega na tym, że gdy jest on zamontowany w innym systemie, identyfikator UID / GID dysku może nie być obecny.

Czy można to naprawić za pomocą opcji montażu?

Marc
źródło
Podobne pytanie: askubuntu.com/questions/12009/…
jofel

Odpowiedzi:

11

Zakładam, że masz nadzieję znaleźć odpowiednik opcji uid=Ni gid=Nobsługiwanych przez inne systemy plików, mounto których wie Linux . Przepraszamy, ale nie, ext4 nie ma tej opcji.

Te inne systemy plików mają taką opcję, aby udzielić uprawnień do plików dla systemu plików, który może nie mieć przydatnych uprawnień POSIX. Chcesz odebrać uprawnienia - a przynajmniej ponownie je przypisać - co jest złym pomysłem z punktu widzenia bezpieczeństwa i bez wątpienia dlaczego te opcje nie istnieją.

Kiedy używasz systemu plików takiego jak ext4 na nośnikach wymiennych, mówisz, że zależy Ci na takich rzeczach, jak uprawnienia POSIX. Oznacza to, że musisz wykonać te same kroki, aby zsynchronizować identyfikatory użytkowników i grup, jak w przypadku, powiedzmy, NFS.

Jeśli tak naprawdę nie obchodzą Cię uprawnienia, prawdopodobnie istnieje bardziej odpowiedni system plików dla twojej sytuacji.

Próbowałem UDF jako kandydata na taki system plików po komentarzu poniżej, ale niestety to nie zadziała:

  • Jeśli utworzysz system plików UDF na jednym urządzeniu z systemem Linux, dodasz do niego pliki, zmienisz ich uprawnienia i zamontujesz je na innym urządzeniu z systemem Linux, będzie on przestrzegać uprawnień, które tam znajdzie, nawet jeśli dasz uid=N,gid=N. Musisz zsynchronizować tutaj identyfikatory UID i GID, podobnie jak w NFS.

  • Mac OS X zachowuje się zgodnie z oczekiwaniami: wierzy, że jest właścicielem wszystkiego w systemie plików UDF utworzonym w systemie Linux. Ale dodaj plik na dysk, a ustawi UID i GID pliku, które następnie Linux będzie przestrzegał.

  • Jeśli następnie spróbujesz zamontować ten system plików na pudełku FreeBSD, krzyczy invalid argument. Zakładam, że dzieje się tak, ponieważ deweloperzy jądra nie zdawali sobie sprawy, że UDF może pojawiać się na mediach nieoptycznych, po prostu dlatego, że nie mogłem znaleźć żadnych raportów o sukcesach w Internecie. Być może brakuje mi magicznej inkantacji.

  • Podobno możliwe jest uzyskanie dysku twardego UDF do pracy w systemie Windows, ale jest bardzo wybredny, jeśli chodzi o sposób jego tworzenia. Jeśli potrzebujesz, aby to działało, prawdopodobnie najlepiej sformatować je w systemie Windows. Z wiersza poleceń:

    format /fs:udf x:

    Nie używaj /q: tworzy system plików, który rzadziej montuje się w innych systemach operacyjnych.

    Pamiętaj, że UDF jest tylko do odczytu / zapisu w systemie Vista i nowszych. XP zainstaluje dysk twardy UDF utworzony w systemie Vista, ale nie będzie mógł na nim pisać.

Jakaś forma FAT jest prawdopodobnie najlepszą opcją tutaj. Jeśli unikasz tego z powodu limitu rozmiaru pliku FAT32 4 GB, możesz zajrzeć do exFAT . Dostępna jest darmowa wersja BEZPIECZNIKA .

NTFS może również działać, jeśli używasz wystarczająco dużo ostatnich dystrybucji Linuksa, że ​​zawierają one niezawodną obsługę odczytu / zapisu dla NTFS.

Warren Young
źródło
Zrobiłem trochę poprawiania tych opcji na udf jakiś czas temu i dodawanie ich do ext [234] jest od dłuższego czasu na mojej liście rzeczy do zrobienia. Wydaje się głupie, że możesz to zrobić za pomocą udf, a macs mogą to zrobić za pomocą swojego hfsplus, ale linux nadal nie może tego zrobić za pomocą preferowanego fs.
psusi
3
W rzeczywistości UDF ma uprawnienia do POSIX-a. Jeśli nie określisz opcji uid / gid, przechowuje ona własność i uprawnienia tak jak ext [234] lub jakikolwiek inny posix fs. Jeśli określisz identyfikator, domyślnie jest to tłumaczenie tego identyfikatora na -1 podczas zapisywania na dysku i tłumaczenie -1 na ten identyfikator podczas czytania z dysku. Ułatwia to normalnemu użytkownikowi przenoszenie plików między systemami, w których ich identyfikator jest inny. Kilka lat temu dodałem „ignoruj” jako wartość, aby zawsze stosować identyfikator, nie tylko wtedy, gdy ma on wartość -1 na dysku, a „zapomnij” zawsze zapisuje -1 na dysku, niezależnie od tego, czy właściciel dopasował domyślny identyfikator, czy nie.
psusi
Podejrzewam, że powodem, dla którego pozwalają na to dla UDF, jest to, że UDF jest zwykle używany z CD-RW i DVD. To sprawia, że ​​jest to „mobilny” system plików, więc stosowanie brakujących uprawnień własności będzie powszechną potrzebą. Poza tym prawdopodobnie rzadko pojawia się system plików UDF, który zawiera uprawnienia użytkowników i grup. Nadal uważam, że dodanie takiej opcji do ext4 byłoby potencjalną dziurą w zabezpieczeniach. Ale jeśli to nie ma znaczenia, być może UDF jest dobrą alternatywą dla ext4 w tym przypadku.
Warren Young,
Tak więc UDF jest świetnym rozwiązaniem dla urządzeń, które mogą być używane w różnych systemach operacyjnych, a raczej vfat.
Marc
1
Jedynym zabezpieczeniem dla nośników wymiennych jest bezpieczeństwo fizyczne lub szyfrowanie. Nie ma znaczenia, jakiego używasz, jeśli dasz mi dysk, zawsze mogę go podłączyć i zmienić uprawnienia. Możliwość obejścia tego automatycznie jest po prostu kwestią wygody.
psusi