/etc/fstab을 사용하여 자동으로 드라이브를 마운트하고 특정 그룹의 모든 사용자에 대한 액세스를 제한합니다.

/etc/fstab을 사용하여 자동으로 드라이브를 마운트하고 특정 그룹의 모든 사용자에 대한 액세스를 제한합니다.

현재 작업 공간으로 사용하는 추가 하드 드라이브가 있습니다. /etc/fstab에 다음 줄을 추가하여 재부팅 시 자동으로 마운트되도록 하려고 합니다.

/dev/sdb1 /media/workspace auto defaults 0 1

자동으로 설치되지만 특정 그룹에 속한 사용자에게 읽기/쓰기 권한을 제한하고 싶습니다. /etc/fstab에서 이 작업을 어떻게 수행합니까? 간단하게 사용할 수 있어요또는chmod접근을 통제하려고?

답변1

파일 시스템 유형이 권한이 없는 파일 시스템 유형(예: FAT)인 경우 fstab 옵션에 umaskgid를 추가할 수 있습니다. uid예를 들어:

 /dev/sdb1 /media/workspace auto defaults,uid=1000,gid=1000,umask=022 0 1

uid=1000사용자 ID입니다.

gid=1000그룹 ID입니다.

umask=022소유자가 읽기, 쓰기 및 실행 권한을 갖도록 권한을 설정합니다. 그룹과 다른 사람들이 읽고 구현합니다.

변경 사항을 확인하기 위해 다시 시작할 필요는 없습니다. 몇 번 umount이고 mount논쟁이 없습니다. 예를 들어:

umount /media/workspace
mount  /media/workspace

그러나 해당 디렉토리를 사용하는 프로세스(쉘도 포함)가 없는지 확인하십시오.

답변2

마운트 지점이 포함된 디렉터리를 통해 파일 시스템에 액세스하겠습니다.

루트 사용자로서:

mkdir -p /media/group1only/workspace
chgrp group1 /media/group1only
chmod 750 /media/group1only

이는 루트에 대한 전체 액세스 권한과 group1 구성원에 대한 읽기+실행 액세스 권한입니다. 실수로 마운트 지점 이름을 바꾸면 workspace시스템을 부팅할 수 없게 될 수 있으므로 여기에 쓰기 권한을 부여하지 마십시오.

그리고 /etc/fstab에 추가하세요:

/dev/sdb1 /media/group1only/workspace auto defaults 0 1

파일 시스템이 마운트된 후에는 그룹 구성원 간의 보다 세분화된 액세스를 수용하기 위해 파일 시스템 내 개체에 대한 추가 소유권 및 모드 변경을 수행할 수 있습니다.

답변3

예를 들어 디스크의 파일 시스템이 ACL을 지원하고 가상 사용자 myusername과 가상 그룹을 사용하여 디스크 diskusers에 액세스한다고 가정하면 다음과 유사한 작업을 수행할 수 있습니다. $일반 사용자로 실행된 명령을 나타내고, #루트 사용자로 실행된 명령을 나타냅니다.

이 목적을 위해 사용자가 속할 수 있는 그룹을 만듭니다.

$ sudo groupadd diskusers
$ sudo usermod -a -G diskusers myusername
$ logout

다시 로그인하세요.

$ sudo -i
# mount /media/workspace
# chown root:root /media/workspace
# chmod 0750 /media/workspace/
# setfacl -d -m -g:diskusers:7 /media/workspace
# setfacl -m g:diskusers:7 /media/workspace

명령의 "7" setfacl은 일반적인 8진수 권한(0400, 0200, 0100)과 마찬가지로 8진수(읽기 = 4 + 쓰기 = 2 + 실행 = 1)입니다.

이는 -d새 파일 및 디렉터리에 대한 기본 마스크를 지정하는 스위치입니다. -m디렉토리에 적용되는 마스크 입니다 .

(위와 같이) 기본값을 설정한 후 처음에 모든 파일에 마스크를 적용할 수도 있습니다.

find /media/workspace -exec setfacl -m g:diskusers:7 {} +

현재로서는 root 및 diskuser 구성원만 이 파일에 액세스할 수 있습니다. 또한 하위 디렉터리에 권한을 적용한다는 Mark Plotnick의 아이디어도 마음에 듭니다. 이 기술은 이런 방식으로도 사용될 수 있습니다.

답변4

저는 우분투 22.04를 사용하고 있습니다

fstab의 루트 마운트는 다음과 같습니다.

UUID=myuuid /               ext4    errors=remount-ro,user=owner    0       1

그래서 passwd conf 파일의 소유자 사용자에게 접근 권한이 없지만 이 소유자가 마운트 지점(디렉토리)의 절대 소유자라고 가정합니다...

  • /뿌리가 있다소유자
  • /home/whateveruser가지다whateveruser 소유자
  • /media/myuser/mypendrive가지다myuser 소유자

user=listofusers를 지정할 필요는 없습니다. 소유자는 루트와 유효한 로그인 사용자를 확보하기에 충분합니다.

/ext4 마운트 지점에서 user=owner를 설정한 후 USB 3.0 펜드라이브에서 거의 200MB의 전송 속도를 얻었습니다.

말씀드린 대로 작동하는지 모르겠지만 systemd설치 오류나 오류 없이 부팅할 수 있습니다.

관련 정보