Chcę zamontować urządzenie /dev/sda3
w katalogu /foo/bar/baz
. Po zamontowaniu katalog powinien mieć identyfikator użytkownika johndoe
. Więc zrobiłem:
sudo -u johndoe mkdir /foo/bar/baz
stat -c %U /foo/bar/baz
johndoe
i dodałem następujący wiersz do mojego /etc/fstab
:
/dev/sda3 /foo/bar/baz ext4 noexec,noatime,auto,owner,nodev,nosuid,user 0 1
Kiedy to zrobię, sudo -u johndoe mount /dev/sda3
polecenie stat -c %U /foo/bar/baz
powoduje root
raczej niż johndoe
. Jaki jest najlepszy sposób na zamontowanie tego systemu plików ext4 z johndoe
zestawem UID ?
-u
należy również używać powiązań z, ponieważ omija to ograniczenia dostępu z różnych identyfikatorów użytkowników.--map
należy stosować, jeśli chcesz zachować ograniczenia dostępu.uid
igid
, co nie działałoby.bindfs
jest odpowiedzią. Zajmie już zamontowany system plików i wyświetli go z dowolnym identyfikatorem użytkownika:źródło
Zakładając, że zestaw grup plików ma odpowiednie uprawnienia, powinieneś być w stanie po prostu znaleźć jego identyfikator grupy (GID) i dodać się do niego.
Aby znaleźć identyfikator grupy pliku, użyj
ls -n
. Przykładowe dane wyjściowe:Chcesz czwarte pole dla GID, które w moim przypadku jest drugie
1000
.Po uruchomieniu powinieneś mieć pełną kontrolę gdziekolwiek pozwalają na to atrybuty pliku dla grupy.
Jak zauważono w drugiej odpowiedzi dotyczącej uprawnień użytkownika, jeśli chcesz naprawić grupę w niektórych plikach, uruchom jeden z tych:
źródło
sudo chown --from A B -R ./
dla użytkowników isudo chown --from :A :B ./
grup