특정 사용자만 마운트된 파티션의 하나의 NTFS 폴더에 액세스하도록 허용하는 방법은 무엇입니까?

특정 사용자만 마운트된 파티션의 하나의 NTFS 폴더에 액세스하도록 허용하는 방법은 무엇입니까?

userA와 userB라는 두 명의 사용자가 있습니다. NTFS로 포맷된 파티션도 있습니다. 이로 인해 /etc/fstab에서 전체 파티션은 userA만 액세스할 수 있습니다.

/dev/sda3 /home/userA/data ntfs-3g defaults,rw,nouser,uid=userA,umask=077,exec 0 0

. 사용자 B가 폴더(예: /home/userA/data/movies)에 액세스할 수 있도록 허용하고 전체 드라이브에는 액세스할 수 없도록 허용하고 싶습니다. 어떻게 해야 하나요?

fstab에서 모든 사용자를 허용하면 /home/userA/ 폴더에 마운트되었는지 여부에 관계없이 두 사용자 모두 전체 드라이브에 액세스할 수 있습니다. userB는 간단히 할 수 있습니다

ls /home/userA/data

그 사람은 할 수 없어도

ls /home/userA

fstab을 지금 설정된 대로 유지하고 심볼릭 링크를 사용하면 심볼릭 링크는 연결된 폴더의 권한을 존중하며 userB는 이 심볼릭 링크를 사용할 수 없습니다.

또한 재설치 옵션을 사용해 보았지만 변경할 수 있는 유일한 것은 ro/rw 옵션뿐이며 ntfs 파티션에 대한 uid, guid 또는 유사한 옵션은 변경할 수 없습니다. 나는 다음 전략(man mount의)이 ntfs에도 적용된다고 생각합니다.

-o remount는 마운트 매개변수를 변경할 수 없습니다. 예를 들어 sb를 제외한 모든 ext2fs 관련 매개변수는 다시 마운트하여 변경할 수 있지만 fatfs의 gid 또는 umask는 변경할 수 없습니다.

답변1

클라이언트 컴퓨터가 Linux를 실행하고 있다고 가정합니다.

Linux에는 동일한 파일 시스템 전체 또는 일부에 대한 다중 보기를 생성하는 기능이 있습니다. 이를 사용하여 사용자에게 파일 시스템의 일부에만 액세스 권한을 부여할 수 있습니다(추가 권한 확인 필요).

/dev/sda3 /home/userA/data ntfs-3g defaults,rw,nouser,uid=userA,umask=077,exec
/home/userA/data/subdir /home/userB/subdir bind

이 명령은 mount --bind /home/userA/data/subdir /home/userB/subdir두 번째 보기를 설정합니다.

사용자 B가 액세스 권한을 잃으면 /home/userA사용자 B는 이 보기를 통해 NTFS 파티션에 액세스할 수 없습니다. 그러나 사용자 B는 subdir보기를 통해 디렉터리에 액세스 할 수 있습니다 /home/userB/subdir. 권한은 계속 적용됩니다. subdir권한에서 userB를 제외하는 경우 아래 일부 파일에 액세스하지 못할 수 있습니다.

권한을 조정하려는 경우(사용자 B가 모든 파일에 액세스하도록 허용하거나 읽기 전용 액세스만 부여하는 등) 다음을 사용할 수 있습니다.파일 시스템 바인딩. 바라보다특정 하위 폴더의 모든 파일에 대한 읽기 전용 액세스그리고사용자가 다른 사용자의 홈 디렉토리를 읽을 수 있도록 허용예를 들어.

답변2

NTFS-3g는 액세스 제어 목록과 ACL을 지원합니다. 여기에 강조 표시되어 있습니다NTFS-3g 웹사이트. ACL과 상호 작용하려면 명령줄 도구 setfacl& 를 사용할 수 있습니다 getfacl.

setfacl이것이 탑재된 특정 공유에 적용되는 경우 이 명령을 사용하여 userB가 이 특정 폴더에 액세스하도록 허용 할 수 있습니다 .

$ setfacl -m user:userB:rwx /home/userA/data/movies

디렉터리라는 점을 고려하면 단일 파일 액세스만 제공했던 위의 명령보다 더 많은 명령을 허용해야 할 수도 있습니다.

관련 정보