Korzystam z podwójnego rozruchu systemu Windows i Debiana na moim laptopie. Używam głównie Linuksa, ale od czasu do czasu muszę uzyskać dostęp do plików na partycji Windows. Podczas uruchamiania moja partycja Windows jest montowana w następujący sposób.
>cat /etc/fstab |grep Win7
LABEL=Windows7_OS /mnt/Win7 auto nosuid,nodev,nofail,x-gvfs-show 0 0
Zasadniczo każdy plik na partycji Windows jest własnością root: root i ma uprawnienia 777. Następnie za każdym razem, gdy mv plik na mojej działającej partycji (Linux), mam plik 777 pod moją partycją, którego jestem właścicielem (podczas gdy cp w terminalu da plik 755, ale jeśli zrobione przez gnome, zapisze plik z uprawnieniem 777) .
Czy to najlepsza praktyka do montowania partycji? A może powinienem zamontować go w taki sposób, aby zamiast root był właścicielem wszystkich plików / katalogów i jakoś mógł ustawić wszystkie katalogi na 755, a pliki na 644, gdy montowanie ma miejsce podczas rozruchu? Jeśli tak, jak to zrobić?
źródło
grep Win7 /etc/fstab
Odpowiedzi:
Możesz użyć
fmask
idmask
zamontować opcje *, aby zmienić mapowanie uprawnień w systemie plików NTFS.Aby pojawiały się pliki
rw-r--r--
(644) i katalogirwxr-xr-x
(755), użyjfmask=0133,dmask=0022
. Możesz połączyć to z opcjamiuid=
i,gid=
aby wybrać właściciela pliku i grupę, jeśli potrzebujesz dostępu do zapisu dla swojego użytkownika.*
fmask
idmask
wydaje się, że działa również dla sterownika jądra (tylko do odczytu), nawet jeśli nie są one udokumentowane na stronie mount man . Są to udokumentowane opcje dla NTFS-3G.źródło
LABEL=Windows7_OS /media/Win7 auto nosuid,nodev,nofail,x-gvfs-show,x-gvfs-name=Windows,uid=1000,gid=1000,fmask=0133,dmask=0022 0 0
działa jak marzenie. Dokładnie to, czego potrzebowałem!Przede wszystkim nie tak powinno się używać / mnt. Chodzi o tymczasowe wykonywanie zadań administracyjnych w systemie plików, a nie o każdym uruchomieniu systemu.
Ponieważ partycja Windows nie stanowi części działania systemu Linux, sensowne jest zamontowanie jej w katalogu / media. Możesz także rozważyć zamontowanie go w katalogu root / as / Windows, aby uniknąć nieporozumień dotyczących / media dla nośników wymiennych.
Jeśli chodzi o uprawnienia, użyłbym grupy o nazwie windows
i nadaj mu odpowiednie uprawnienia dzięki opcjom takim jak:
Jeśli chcesz używać cp i utrzymywać uprawnienia między oddzielnymi systemami plików, użyj cp z flagą -p lub -a.
źródło
/mnt
się, nie jest optymalny dla punktu montowania,/media
jest dla nośników wymiennych (np. DVD i napędów USB). Nie jestem pewien, czy istnieje dobra odpowiedź na pytanie, gdzie ma nastąpić podłączenieKorzystanie z opcji montowania
uid
,gid
,fmask
idmask
można zrobić całe NTFS system plików dostępny dla Twojego konta zwykłego użytkownika i / lub jednej grupy. Ale to wszystko albo nic: jeśli chodzi o system plików NTFS, to tak, jakby działał jako pełny administrator cały czas w systemie Windows lub jak robił wszystko jako root w systemie Linux. Sterownikntfs-3g
systemu plików NTFS może działać lepiej.Jeśli używasz
ntfs-3g
, możesz użyćntfsusermap
polecenia, aby utworzyć plik odwzorowania użytkownika dla systemu plików NTFS. Polecenie pomoże ci w identyfikacji nazw użytkowników systemu Windows i odpowiadających im identyfikatorów SID systemu Windows oraz w powiązaniu ich z identyfikatorami użytkowników i grup systemu Linux.W ten sposób można powiązać identyfikator SID konta użytkownika systemu Windows z identyfikatorem UID systemu Linux. W ten sposób, po zamontowaniu systemu plików NTFS przy użyciu pliku odwzorowania użytkownika w miejscu
<NTFS filesystem root>/.NTFS-3G/UserMapping
, można użyć zwykłego konta użytkownika systemu Linux, aby uzyskać dostęp do systemu plików NTFS dokładnie tak, jak dostęp do konta użytkownika systemu Windows. Jeśli potrzebujesz uprawnień administratora w systemie Windows, nadal potrzebujesz roota w systemie Linux.W ten sposób uzyskasz wygodny dostęp do plików na partycji Windows, ale nadal będziesz chroniony przed zepsuciem
\Windows
katalogu przez błędne polecenie, chyba że działasz jako root.Możesz także użyć
windows_names
opcji montowania na partycjach NTFS, aby zapobiec przypadkowemu tworzeniu plików o nazwach, do których system Windows nie ma dostępu.źródło