로그아웃하기 전에 현재 사용자 세션에서 마운트를 해제하지 않으면 다른 사용자가 NTFS 데이터 파티션에 액세스할 수 없습니다.

로그아웃하기 전에 현재 사용자 세션에서 마운트를 해제하지 않으면 다른 사용자가 NTFS 데이터 파티션에 액세스할 수 없습니다.

나는 우분투 14.04를 사용하고 있으며 내 작업을 방해하지 않기 위해 가족 구성원이 사용할 수 있도록 내 관리자 계정 외에 다른 계정을 만들고 싶었습니다. 문제는 다른 계정에 데이터가 포함된 NTFS 파티션에 대한 액세스 권한을 부여할 수 없으며 포럼에서 언급된 몇 가지 해결 방법을 시도했지만 아무 효과가 없다는 것입니다. 여전히 시스템이 재부팅될 때 먼저 로그인하는 사용자는 해당 파티션을 보유하고 로그아웃한 후에도 다른 사용자가 해당 파티션에 액세스하는 것을 금지하는 것으로 보입니다. 내가 찾은 유일한 비결은마운트 해제현재 사용자를 로그아웃하기 전에 해당 파티션. 그러면 다음 로그인하려는 사람이파티션을 찾아서 액세스하세요.

내 질문은 이것이 다른 컴퓨터 사용자 사이에서 파티션 액세스가 작동하는 방식인지 여부입니다. 즉, 다른 사용자가 나중에 사용할 수 있도록 사용 중인 파티션을 마운트 해제하거나 해당 파티션에 대한 액세스 권한을 제대로 부여할 수 없다는 것입니다. 분할?

답변1

컴퓨터가 켜져 있을 때마다 모든 사용자에게 항상 필요한 경우 이를 달성하는 가장 쉽고 최선의 방법은 에서 마운트 지점과 파티션 마운트 규칙을 정의하는 것입니다 /etc/fstab. 이렇게 하면 파티션/드라이브가 마운트될 때 자동으로 접근 권한을 부여할 수 있습니다.

이것은 훨씬 더 발전된 방법이지만 NTFS 파티션이 있는 장치가 어쨌든 항상 컴퓨터에 연결되어 있는 경우 발생하는 몇 가지 골치 아픈 문제를 제거하고 데이터에 대한 보안 제어 제공을 효과적으로 자동화하여 다음을 수행할 수 있습니다. 매번 다른 옵션이나 사용자를 사용하여 수동으로 다시 마운트할 필요 없이 시간이 지남에 따라 컨트롤을 실제로 수정합니다.

이 답변에는 몇 가지 다른 섹션이 있습니다.

  • 첫 번째는 내 NTFS fstab항목 중 하나이며 내 Ubuntu 컴퓨터의 Windows 파티션에 대한 것입니다(그리고 나는 컴퓨터의 유일한 사용자입니다).
  • 두 번째 섹션에서는 필자의 fstab항목을 다루고 마운트 옵션을 설명합니다.
  • 세 번째 섹션에서는 파티션에 대한 '보안' 액세스 제공, 부팅 시 자동 마운트 및 적절한 마운트 옵션 세트(액세스가 허용된 사용자를 추가하는 '사용자 그룹' 만들기 포함)를 제공하기 위해 제안하는 절차를 제공합니다. 해당 사용자 그룹은 적용되는 특정 파일 권한과 마찬가지로 '액세스 제어' 역할을 합니다.)
  • /etc/fstab네 번째 섹션 에서는 세 번째 섹션에서 내 말을 들었다면 사용할 수 있는 잠재적 대사를 제공할 것입니다 .

(1) 나의 fstab출품작

불행하게도 제 노트북에는 그런 NTFS 파티션이 있어서 제 자신과 시스템 서비스가 읽을 수 있도록 만들어야 합니다...

# Windows Partition - targetted for /media/win7
UUID=UUIDOFPARTITION  /media/win7    ntfs-3g     defaults,locale=en_US.utf8,windows_names,umask=7000,uid=1000,gid=1000,user  0   0

이 줄은 무엇을 의미하나요? 음, 앞에 가 있는 첫 번째 줄 #은 주석입니다. 두 번째 줄은 실제 항목인 더 중요한 비트입니다 fstab.

  1. 파티션을 식별하는 문자열인 UUID로 파티션을 식별합니다. 파티션의 실제 ID로 sudo blkid /dev/sda1바꾸면 특정 파티션의 UUID를 얻을 수 있습니다 /dev/sda1. 따라서 해당 파티션이 두 번째 디스크에 있고 두 번째 디스크 파티션 테이블의 세 번째 파티션인 경우 /dev/sdb3이 명령에 포함될 수 있습니다. UUID=내 항목의 줄 주위에 있는 따옴표를 삭제하세요 fstab.)
  2. 부팅할 때 마운트합니다 /media/win7.
  3. NTFS 파티션이므로 NTFS임을 알 수 있도록 옵션 fstab에 전달합니다.ntfs-3g
  4. 기본 마운트 옵션을 제공한 다음 일부를 제공합니다(이에 대해서는 나중에 설명하겠습니다).
  5. 다섯 번째 필드는 파일 시스템을 덤프해야 하는지 여부를 결정하지만 이것이 필요하지 않기 때문에 0.
  6. 여섯 번째 필드는 fsck에서 부팅 시 파일 시스템 검사 순서를 결정하는 데 사용되지만 그렇게 할 필요는 없으므로 0.

(2) 마운트 옵션

몇 가지 마운트 옵션을 전달했습니다.

  • defaults- 기본 마운트 옵션 전달( rw- 읽기/쓰기, suid- set-user-identifier 또는 set-group-identifier 비트 적용 허용, dev- 파일 시스템의 문자 해석 또는 블록 특수 장치, exec- 바이너리 실행 허용, auto- 다음을 사용한 마운트 허용 , - -a사용자 의 마운트를 금지합니다(나중에 재정의됨). - 파일 시스템과의 비동기 I/O를 허용합니다.)mountnouserasync
  • locale=en_US.utf8- UTF8을 사용하여 미국 영어 로케일을 적용합니다.
  • windows_names- 파티션의 새 파일에 대해 Windows 이름 제한이 적용되도록 합니다.
  • umask=7000- 기본적으로 역 chmod입니다. 권한 정의~ 아니다파일에 허용됩니다. 기본적으로 여기서는 읽기/쓰기/실행을 금지하지 않으므로 마운트된 위치의 모든 파일은 효과적으로 읽기, 쓰기 및 실행 권한을 얻습니다. 나는 특수 비트 세트(setuid, setgid, Sticky)를 원하지 않으므로 첫 번째 옥텟에서 이를 제거해야 합니다. 그 숫자의 합은 '7'이고 해당 권한을 금지하고 있기 때문입니다. 앞에 7을 붙입니다.
  • uid=1000, gid=1000- 사용자 및 그룹 소유권이 UID(사용자 ID) 및 GID(그룹 ID)인 해당 폴더에 파티션을 마운트합니다 (이것은 Ubuntu 시스템에서 1000내 사용자의 사용자 및 그룹입니다 ).teward
  • user- 사용자가 디렉터리를 마운트하거나 마운트 해제할 수 있도록 허용합니다. nouser의 옵션 을 재정의합니다 defaults.

(3) 귀하를 위한 안전한 솔루션

하지만 사용자가 시스템이 아닌 데이터에 액세스하므로 사용 사례에 맞게 마운트 옵션을 이러한 옵션으로 단순화할 수 있습니다. 하지만 안전한 방법으로 이 작업을 수행해 보겠습니다. 여기에서 읽기/쓰기/실행 기능을 제공하는 사용자 그룹을 만들어 보겠습니다.

addgroup ntfs-users- 그러면 'ntfs-users'라는 사용자 그룹이 생성됩니다.

id -g ntfs-users- 그러면 'ntfs-users'에 대한 숫자 그룹 ID가 제공됩니다. 마운트 옵션 에는 이것이 필요합니다 gid=.

usermod -a -G ntfs-users USERNAME- 방금 만든 그룹 USERNAME에 사용자를 추가합니다.ntfs-users

이제 다음과 같은 마운트 옵션 문자열을 활용할 수 있습니다.

rw,exec,async,auto,user,locale=en_US.utf8,windows_names,umask=7007,gid=654

내 fstab의 문자열이 수행하지 않는 작업은 다음과 같습니다.

  1. 사용하려는 특정 옵션을 선택하고 선택하십시오.defaults
  2. uid소유자 사용자는 무엇이든 허용합니다 (보통 부팅 마운트 시 루트).
  3. 사용자가 마운트/마운트 해제하는 것을 허용하지 않습니다.
  4. 마운트 지점의 '그룹' 소유권(따라서 내부 데이터에 대한 액세스)을 위에서 만든 654가상 그룹 ID인 Group ID로 설정합니다.ntfs-users
  5. '다른 모든 사람' 사용자 집합(즉, 소유자 사용자나 그룹의 어느 누구도 아닌 ntfs-users)이 데이터에 액세스하는 것을 전혀 허용하지 않습니다.

데이터를 소유하려면, 즉 대신 소유자 사용자가 되려면 옵션 root에 다시 추가하세요 uid=. 해당 옵션과 함께 사용할 사용자 ID( ) 를 얻으려면 을(를) 사용 id -u YOURUSERNAME하고 YOURUSERNAME사용자 이름으로 바꾸세요.uid


/etc/fstab(4) 귀하가 섹션 3에서 내 말을 들었다고 가정할 때 귀하의 사용 사례에 대한 가능한 항목입니다.

파티션의 UUID를 얻으면 다음과 같은 내용이 될 수 있습니다 /etc/fstab.

UUID=0123456789ABCDEF    /mnt    ntfs-3g    rw,exec,async,auto,user,locale=en_US.utf8,windows_names,umask=7007,gid=654    0    0

값을 UUID=파티션의 UUID로 바꾸십시오.원하다마운트하려면 /mnt시스템의 마운트 지점으로 바꾸고, gid=마운트 옵션 의 값을 ntfs-users우리가 만든 그룹의 그룹 ID로 바꾸고, 대신 사용자를 소유자로 지정하려면 다음 옵션을 root추가하세요 . 앞서 설명드린 대로 사용자를 위한 것입니다.uid=uid

관련 정보