사용자는 홈 폴더에 전용 외장 하드 드라이브를 설치해야 합니다.

사용자는 홈 폴더에 전용 외장 하드 드라이브를 설치해야 합니다.

Ubuntu 서버 사용자가 계정의 저장 공간을 늘리기 위한 방법으로 외장 하드 드라이브를 제공했습니다.

그들은 우리가 자신의 /home/user 폴더에 있는 외장 하드 드라이브를 /home/user/usbDrive 등에 자동으로 마운트하기를 원합니다.

또한 시스템의 다른 사용자가 이 외장 하드 드라이브에 액세스할 수 없도록 하고 싶어합니다.

일반적으로 여러 사용자가 없는 시스템에서는 항상 외부 하드 드라이브를 /media/usbDrive와 같은 위치에 마운트했으며 그러한 마운트가 다른 사용자가 사용할 수 있는지 확인하는 데 시간을 투자한 적이 없습니다. 다른 사용자).

마운트가 자동으로 마운트될 수 있도록 fstab 테이블에 항목을 추가하는 방법을 알고 있지만 실제로 지침을 요청하는 것은 다음 질문입니다.

  1. 다중 사용자 환경에서 한 명의 사용자만 사용할 외장 하드 드라이브를 장착하기에 가장 좋은 위치는 어디입니까?

  2. 이 외장 하드 드라이브를 자신의 /home/user 폴더에 마운트하면 자동으로 해당 드라이브에 액세스할 수 있는 유일한 사용자(루트 제외)가 됩니까? 또는 이를 보장하려면 추가 권한 수정이 필요합니다.

  3. /home/user/usbDrive에 설치하면 설치에 실패하면 (예상대로) 외장하드로 이동하지 않고 내장하드(설치된 곳)에 많은 데이터가 채워질까 걱정됩니다. . 이것이 타당한 우려입니까?

답변1

autofs(를 사용하여 드라이브를 장착하는 것이 좋습니다 .https://wiki.archlinux.org/index.php/Autofs)를 표준 위치(예: 홈 디렉토리가 아님)에 저장합니다. 기본값 autofs은 입니다 /run/media/$username/$media-title.

udev권한 제한(https://wiki.archlinux.org/index.php/Udev) 및 사용자가 홈 디렉터리에서 드라이브에 액세스할 수 있도록 하는 심볼릭 링크입니다.

autofs 구성에 대한 아치 위키에서 발췌:

/etc/autofs/auto.master

/media/misc     /etc/autofs/auto.misc     --timeout=5
/media/net      /etc/autofs/auto.net      --timeout=60

.

/etc/autofs/auto.misc

#kernel   -ro                                        ftp.kernel.org:/pub/linux
#boot     -fstype=ext2                               :/dev/hda1
usbstick  -fstype=auto,async,nodev,nosuid,umask=000  :/dev/sdb1
cdrom     -fstype=iso9660,ro                         :/dev/cdrom
#floppy   -fstype=auto                               :/dev/fd0

이 아이디어가 마음에 드는지 여부를 결정할 수 있습니다 autofs. 여기서 제안하는 이유는 컴퓨터를 시작할 때 장치가 연결되어 있지 않은 경우입니다( fstab부팅 시 참조되지만 mount -a수동으로 실행 하지 않는 한 참조되지 않음 root). 또한 autofs설치된 디렉토리가 존재하지 않으면 일시적으로 생성되므로 마지막 요점에 유용했습니다.

udev는 하드웨어 장치 설정/권한 등을 수정하는 데 사용됩니다.

/udev/rules.d/99-sdb1.rules

KERNEL="sdb1", OWNER="user1", GROUP="user1", MODE="0700"

user1이렇게 하면 읽거나 쓰는 것 외에는 누구도 방지할 수 있습니다 sdb1.

autofs디스크가 마운트되지 않으면 디렉토리가 존재하지 않기 때문에 사용자의 홈 디렉토리에 이 디렉토리에 대한 심볼릭 링크를 만드는 것이 좋습니다 . 이는 하드 드라이브를 자동으로 채우는 대신 디렉토리에 쓰기 시도가 실패함을 의미합니다.

이를 위해서는 약간의 설정이 필요하므로 이 답변을 포괄적인 답변이 아닌 출발점으로 사용하십시오. 그러나 모든 문제가 해결될 것입니다.

답변2

이 외장 하드 드라이브를 자신의 /home/user 폴더에 마운트하면 자동으로 해당 드라이브에 액세스할 수 있는 유일한 사용자(루트 제외)가 됩니까? 아니면 이를 보장하기 위해 추가 권한 수정이 필요합니까?

내부 폴더에 액세스하는 기능은 /home/user설치와 무관하며 다른 사용자에 대해 설정된 권한에 따라 다릅니다 /home/user.

  • drwxr-xr-x: /home/user/usbDrive누구나 이용 가능합니다.
  • drwxr--r--: 다른 사용자는 볼 수 있지만 /home/user/usbDrive( ls /home/user/목록에 표시됨 usbDrive) 콘텐츠에 액세스할 수는 없습니다.
  • drwx--x--x: 다른 사용자는 볼 수 없으나, 이름을 알면 /home/user/usbDrive접근(사용 가능)은 가능합니다 .cd /home/user/usbDrive
  • drwx------: 다른 사용자는 모든 접근이 거부됩니다./home/user/usbDrive

드라이브가 마운트되면 내부 권한은 디렉터리에 대한 원래 권한 /home/user/usbDrive이 아니라 설치 옵션에 따라 달라집니다 ./home/user/usbDrive

관련 정보