Jak wpływa to na własność pliku w różnych systemach?

10

Jak rozumiem systemy plików Unix, każdy plik w systemie unix musi należeć do grupy i użytkownika tego systemu. Plik nie może należeć do grupy lub użytkownika, który nie istnieje w systemie.

Z tego założenia przychodzi mi na myśl kilka pytań. Co dzieje się z atrybutami grupy i użytkownika, gdy media są przenoszone między komputerami, czy to za pomocą napędu flash, CDROM lub udziału sieciowego. Do kogo należy ten plik w nowym systemie?

Czy możesz ograniczyć dane do pracy tylko w twoim systemie? (Nie mówię tu o szyfrowaniu, tylko podstawy.)

Ponadto, gdy przenosisz dane między dwoma komputerami, istnieją sposoby, aby zapewnić, że atrybuty grupy i użytkownika pozostaną nienaruszone (to, co należy do roota, będzie należeć do roota w nowym systemie i to samo z normalnym użytkownikiem).

Stefan
źródło
problem gramatyczny w pierwszym zdaniu
tshepang
@thsepang .. niezły haczyk, naprawiono
Stefan

Odpowiedzi:

6

We wszystkich macierzystych systemach plików Unix własność pliku jest przechowywana w postaci identyfikatorów użytkowników i grup. Dotyczy to również podstawowej operacji NFS (chociaż istnieją inne możliwości przynajmniej w NFSv4) oraz tradycyjnych formatów archiwów unixowych, takich jak tar.

Plik może w rzeczywistości należeć do użytkownika lub grupy, która nie istnieje. Plik należy do określonego identyfikatora, ale nie ma obowiązku umieszczania tego identyfikatora w /etc/passwdbazie danych innego użytkownika lub grupy. Na przykład, jeśli przechowujesz bazę danych użytkowników w NIS lub LDAP, a serwer bazy danych jest tymczasowo niedostępny, pliki użytkowników nadal istnieją.

Kiedy przenosisz nośniki wymienne z jednego systemu do drugiego, powinieneś albo upewnić się, że identyfikatory użytkowników i grup są zgodne w odpowiednich przypadkach, lub zignorować własność (np. Używając systemu plików innego niż Unix). Root jest trochę szczególnym przypadkiem, ponieważ jego cechą charakterystyczną jest to, że identyfikator użytkownika to 0, wszędzie.

Jedynym sposobem na kontrolowanie tego, co osoba fizycznie będąca w posiadaniu mediów zrobi z danymi, jest zastosowanie wewnętrznego zabezpieczenia, tj. Takiego, który nie zależy od tego, w jaki sposób uzyskuje dostęp do systemu i zatrzymuje coś dla siebie. Możesz użyć matematycznych środków ochrony: kryptografii (szyfrowanie w celu zachowania poufności, podpisywanie w celu zachowania integralności; zachowujesz hasło dla siebie) lub fizycznych środków ochrony (np. Zamkniętej skrzynki).

Gilles „SO- przestań być zły”
źródło
3

Każdy plik i katalog w większości systemów plików Unix ma powiązaną grupę numeryczną i identyfikator użytkownika. Następnie jest mapowanie (/ etc / passwd dla użytkowników i / etc / group dla grup) identyfikatorów na nazwy. Podczas przesyłania pliku do innego systemu identyfikatory numeryczne pozostają takie same. W nowym systemie może nie być nazwy o tym identyfikatorze. Więc jeśli to zrobisz ls -l, zobaczysz liczby zamiast nazw użytkowników.

Użytkownik root ma zawsze identyfikator użytkownika 0, więc będzie taki sam w każdym systemie. Jeśli zamierzasz często przenosić pliki, upewnij się, że użytkownicy wspólni między tymi dwoma systemami mają ten sam identyfikator użytkownika na każdym z nich.

KeithB
źródło