외장 하드 드라이브를 ext4 파티션으로 포맷하고 마운트했습니다. 새 파티션을 사용하기 위해 다음과 같이 했습니다. sudo chown me:me /mount/directory
파일 소유자와 그룹을 루트에서 나로 변경했는데, 이는 훌륭하게 작동했습니다.
이 변경 사항은 지속적이므로 이 정보가 어디에 저장되어 있는지 알고 싶습니다. 하드 드라이브를 분리한 후 다른 디렉터리에 마운트해도 여전히 파일 소유자 및 그룹으로 설정되어 있으므로 마운트된 디렉터리의 inode에 정보를 저장할 수 없습니다.
그렇다면 전체 파티션에는 이러한 정보를 저장하기 위한 자체 inode가 있습니까? 그렇다면 이를 볼 수 있는 방법이 있습니까? 아니면 정보를 저장할 다른 장소가 있나요?
답변1
저장된 파일 시스템에 관한 한 외장 드라이브와 내장 드라이브 사이에는 차이가 없습니다. 파일 시스템 루트 디렉터리의 소유자 및 그룹은 루트 파일 시스템의 소유자 및 그룹이 저장되는 것과 동일한 방식으로 해당 루트 디렉터리에 저장됩니다.
결과적으로 UID와 GID는 숫자 형식으로만 저장되므로 다른 사용자가 있는 시스템에 외장 드라이브를 마운트하면 /etc/passwd
UID와 GID가 매핑된 대로 소유자와 그룹이 변경된 것을 볼 수 있습니다. 다른 시스템. (예를 들어, 시스템의 사용자가 me
UID 1000이고 UID 1000을 사용하여 시스템에 드라이브를 마운트하는 경우 rms
소유된 디렉토리가 표시됩니다 rms
.)
반면에 UID/GID 정보(예: FAT)를 저장하지 않는 파일 시스템을 사용하는 경우 파일 시스템에 있는 각 파일의 UID/GID는 명령에 제공하는 매개 변수에서 얻습니다 mount
(직접 또는 또는 /etc/fstab
)를 통해.
/mount/directory
두 번째 결과는 루트 파일 시스템의 소유자나 권한이 중요하지 않다는 것입니다. 파일 시스템이 마운트되면 해당 파일 시스템에 대한 권한이 중요합니다. 이것이 바로 chmod a-rwx /mount/directory
파일 시스템을 마운트하기 전에 이 작업을 수행하는 것을 좋아하는 이유입니다. /mount/directory
파일 시스템이 마운트되어 있지 않을 때 실수로 쓰는 것을 방지합니다.