Zgodnie z sekcją Własność i uprawnienia dokumentacji NTFS-3G, możemy użyć opcji montowania, aby kontrolować dostęp do plików i ich tworzenie . Kombinacje są bardzo skomplikowane (patrz dwie tabele tam). Też nie czytam i nie rozumiem ich wszystkich. Na przykład nie wiem, czy listy ACL POSIX są wybierane podczas kompilacji, czy nie z pakietu binarnego NTFS-3G. Ale najlepsze, co wyszedłem, to użycie pliku mapowania użytkowników w połączeniu z niektórymi opcjami montowania w celu przybliżenia prawdopodobnego odwzorowania własności pliku i uprawnień między systemem Windows i Linux.
Ostrzeżenie : To jest tylko to, co działa najlepiej w przypadku mojego udostępniania partycji danych NTFS (dysk D:w systemie Windows) między podwójnie uruchomionym systemem Windows 8 a Kubuntu 14.04. Instrukcje są zapisywane z dokładną retrospekcją, ale nie są dokładnie testowane. Powtarzanie całej procedury jest zbyt męczące i żmudne. Postępuj zgodnie z nim na własne ryzyko. Ale jeśli tak, podziel się swoim doświadczeniem. Jeśli zdecydujesz się postępować zgodnie z instrukcjami, przeczytaj je w całości, aby mieć cały obraz przed faktycznym działaniem. Powodzenia!
Dobra, proszę bardzo! Szczegółowe instrukcje składają się z trzech części. Część 1 powinna zostać przeprowadzona w systemie Windows, a część 2 w systemie Linux. Część 3 jest do testu.
Część 1
Sekcja Mapowanie użytkowników w dokumentacji NTFS-3G określa dwie wersje do skonfigurowania mapowania użytkowników między Windows i Linux, jedną wersję Windows i jedną wersję Linux. Moje doświadczenie było to, że wersja Linux skończyło się z Miss . Konto Linux nie zostało zamapowane na moje konto Windows, ale jakieś nieznane konto pojawiło się pod SID . Rezultatem był bałagan, ponieważ to nieznane konto przejmuje własność wszystkich plików mojego konta Windows. W takiej sytuacji, o ile nie masz przywileju administracyjnego do odzyskania własności, pliki na koncie Windows stają się niedostępne. Ale nawet jeśli sobie poradzisz, nadal tak jestzłe mapowanie. Oznacza to, że później wszelkie pliki utworzone w systemie Linux zostaną przypisane do tego nieznanego konta w systemie Windows, a pliki w systemie Windows zostaną przypisane do rootowania w systemie Linux (o ile dobrze pamiętam). Tak więc w systemie Windows musisz ponownie przejąć własność, a w systemie Linux zmienić własność. Nie tego się spodziewamy. Po kilku beznadziejnych próbach rozwiązania problemu poddałem się i wróciłem do wersji Windows. Ten zadziałał. Szczegółowe instrukcje wyodrębnione z odpowiedniej sekcji dokumentacji NTFS-3G są następujące:
Pobierz narzędzie usermap , wypakuj je gdzieś (w moim przypadku dysk C:), lepiej poza partycją NTFS (w moim przypadku dysk D:), aby je udostępnić.
Otwórz wiersz poleceń systemu Windows. Przejdź do wyodrębnionego katalogu tools(domyślnie) usermapnarzędzia. Następnie uruchom następujące polecenie:
C:\tools> mapuser > UserMapping
To generuje szablon i przekierowuje go do pliku o nazwie UserMapping. Otwórz plik za pomocą edytora tekstu, powiedzmy Notatnik, powinieneś zobaczyć następujące linie:
# Generated by usermap for Windows, v 1.1.5
# For Windows account "Account" in domain "Domain"
# Replace "user" and "group" hereafter by matching Linux login
user::SID
:group:SID
Przypuszczalnie pierwszy SIDpowinien być identyfikator SID użytkownika, a drugi identyfikator SID grupy. Możesz je sprawdzić odpowiednio za pomocą poleceń whoami /useri whoami /groups.
Po upewnij się, że identyfikatory są poprawne, postępując zgodnie z instrukcjami w komentarzu, że jest zmiana userw user::SIDkolejce do swojej nazwy użytkownika i groupna :group:SIDlinii do swojej pierwotnej nazwy grupy w systemie Linux. W Ubuntu są takie same. Ponadto dodaj nazwę grupy Linux również po pierwszym dwukropku user::SIDlinii. Linia powinna więc wyglądać mniej więcej tak user:group:SID. Wygląda na to, że jeśli tego nie zrobisz, pliki utworzone w systemie Windows zostaną przypisane do user:rootsystemu Linux.
Zapisz plik. Przenieś go do katalogu o nazwie .NTFS-3G(utwórz go, jeśli jeszcze nie istnieje) na partycji NTFS, aby go udostępnić (w moim przypadku dysk D:).
Ten krok jest do przetestowania w części 3. Na udostępnionej partycji NTFS utwórz nowy katalog i nowy plik.
Część 2
Teraz uruchom system Linux. sudoedytować plik /etc/fstab. Dodaj lub zmodyfikuj wiersz dla współużytkowanej partycji NTFS do czegoś takiego:
UUID=... /data ntfs defaults,umask=077,utf8 0 0
Zasadnicze znaczenie ma ustawienie umask( dmaski fmaskmoże również działać, ale nie testowane). Wybierz dla umasksiebie wartość , chociaż wybrałem 077. Wydaje się, że bez tego ustawienia zostaną przyznane pełne uprawnienia odla nowo utworzonych plików.
Zapisz plik. Teraz sudo mountlub ponownie podłącz ( sudo umounti wtedy sudo mount) udostępnioną partycję NTFS (w moim przypadku /data):
$ sudo mount /data
Część 3
Teraz (wciąż w systemie Linux) cddo punktu montowania (w moim przypadku /data), ls -lpliki tam. Sprawdź, czy ich własność i uprawnienia są odpowiednio zgodne z podanymi w UserMappingpliku i umaskustawionym w /etc/fstab(dopasowanie między uprawnieniami i umaskwymaga pewnych obliczeń dopełniania, zobacz man (1) umask, aby uzyskać więcej informacji). Jeśli to zrobią, gratulacje, połowa celu zostanie osiągnięta. W przeciwnym razie biedny jesteś. Zapytaj Ubuntu lub Windows.
Następnie utwórz nowy katalog i nowy plik. ls -laby sprawdzić ich własność i uprawnienia. Własność powinna być jak zwykle nazwą użytkownika i podstawową grupą. Uprawnienia powinny być zgodne z umask. Teraz uruchom ponownie komputer i uruchom system Windows. Znajdź na udostępnionej partycji NTFS katalog i plik, który właśnie utworzyłeś w systemie Linux. Sprawdź ich właściwości, aby zobaczyć, czy są przypisane do twojego konta Windows. Jeśli tak, gratulacje, wszyscy jesteście skończeni. W przeciwnym razie pech. Zapytaj Windows lub Ubuntu.
EOF