Linux Fedora 마운트에 관해 질문이 있습니다. 내 홈 디렉토리 내에 마운트 지점이 있습니다. 마운트 지점은 /home/user/project에 있고 fstab에 다음 줄을 추가했습니다.
/dev/mapper/fedora-proj /home/user/project ext4 defaults 1 2
/home/user/project 디렉토리에는 파일 권한 0755가 있으며 사용자가 소유합니다. 그러나 'mount -a'를 수행하면 디렉토리 소유자가 루트로 변경되고 권한은 777입니다. ext2/3/4에는 uid= 및 gid= 옵션이 없다는 것을 알고 있지만 마운트 지점이 하드 코딩된 파일을 받는 이유는 무엇입니까? 마운트 중 권한은 무엇이며 어떻게 변경할 수 있나요?
추신
테스트는 Fedora 25에서 이루어졌습니다. Fedora 23에서 똑같은 절차를 수행할 때 다른 동작이 나타납니다. 마운트 디렉터리 권한이 755로 변경됩니다(마운트 전은 0777입니다).
답변1
마운트 지점의 루트에 대한 권한은 마운트된 파일 시스템에 저장됩니다(실제로는 이 방법이 의미가 있습니다. 그렇지 않으면 루트 디렉토리에 대한 권한이 어디에 /
저장됩니까?). chmod
, chown
등 일반적인 방법으로 변경합니다.
마운트하기 전에 상위 파일 시스템의 마운트 지점 디렉터리에 대한 권한이 표시됩니다. 마운트한 후에는 마운트된 파일 시스템의 루트에 대한 권한이 표시됩니다.
예: 두 개의 파일 시스템이 있습니다.
FS-A FS-B
/ /
/mnt /file1
/foo /file2
/etc
⋮
/
모든 (Unix) 파일 시스템과 마찬가지로 두 파일 모두 최상위/루트 디렉터리( )를 가지고 있습니다 . FS-A에는 표시된 두 개의 하위 디렉터리( /mnt
및 /etc
)와 /mnt
하위 디렉터리가 있습니다 /mnt/foo
. FS-B에는 두 개의 파일이 /file1
있으며 /file2
. Unix 파일 시스템이므로 이러한 모든 디렉토리와 파일에는 사용자, 그룹 및 권한이 있습니다. 이제 FS-A를 루트 파일 시스템으로 만들고 FS-B를 /mnt/foo
. 그러면 우리는 다음을 얻습니다:
/ # FS-A /
/mnt # FS-A /mnt
/foo # FS-A /mnt/foo *or* FS-B /
/file1 # FS-B /file1
/file2 # FS-B /file2
/etc # FS-A /etc
⋮
FS-A 또는 FS-B 중 무엇 /mnt/foo
인지 선택할 수 있는 방법에 유의하세요 . 둘 다 정확히 같은 경로를 가지고 있습니다. Unix의 디자이너는 FS-B를 선택했습니다./mnt/foo
/
추신: fstab 줄에 파일 시스템 유형이 없습니다. 옵션( defaults
) 앞에 와야 합니다.