파일 소유권은 다른 시스템에 어떤 영향을 미치나요?

파일 소유권은 다른 시스템에 어떤 영향을 미치나요?

Unix 파일 시스템에 대해 내가 이해한 바에 따르면 Unix 시스템의 모든 파일은 해당 시스템의 그룹 및 사용자에 속해야 합니다. 파일은 시스템에 존재하지 않는 그룹이나 사용자에 속할 수 없습니다.

이 가정을 바탕으로 몇 가지 질문을 생각해 보았습니다. 플래시 드라이브, CDROM 또는 네트워크 공유를 통해 컴퓨터 간에 미디어가 전송되면 그룹 및 사용자 속성은 어떻게 되나요? 새 시스템에서 이 파일은 누구에게 속합니까?

귀하의 시스템에서만 작동하도록 데이터를 제한할 수 있습니까? (여기에서는 암호화에 대해 논의하지 않고 기본 사항만 논의합니다.)

또한 두 컴퓨터 간에 데이터를 전송할 때 그룹 및 사용자 속성이 변경되지 않은 상태로 유지되도록 하는 방법이 있습니까(루트에 속한 것은 일반 사용자와 마찬가지로 새 시스템의 루트에 속하게 됩니다).

답변1

모든 기본 UNIX 파일 시스템에서 파일 소유권은 사용자 ID 및 그룹 ID로 저장됩니다. 기본 NFS 작업(적어도 NFSv4에는 다른 가능성이 있지만)과 tar와 같은 기존 UNIX 아카이브 형식의 경우에도 마찬가지입니다.

파일은 실제로 존재하지 않는 사용자나 그룹에 속할 수 있습니다. 파일은 특정 ID에 속하지만 /etc/passwd다른 사용자 또는 그룹 데이터베이스 에 해당 ID를 나열할 의무는 없습니다 . 예를 들어 사용자 데이터베이스를 NIS 또는 LDAP에 저장했는데 데이터베이스 서버에 일시적으로 액세스할 수 없는 경우 사용자 파일은 계속 존재합니다.

한 시스템에서 다른 시스템으로 이동식 미디어를 전송할 때 해당되는 경우 사용자 및 그룹 ID가 일치하는지 확인해야 합니다. 그렇지 않으면 해당 소유권이 무시됩니다(예: UNIX가 아닌 파일 시스템 사용). Root는 정의 기능이 사용자 ID가 모든 곳에서 0이라는 점에서 약간 특별합니다.

실제로 미디어를 소유한 사람이 데이터로 수행하는 작업을 제어하는 ​​유일한 방법은 내장된 보호 기능, 즉 시스템 액세스 방식에 의존하지 않고 일부 콘텐츠를 보존하는 보호 기능을 사용하는 것입니다. 귀하는 암호화(기밀성을 보장하기 위한 암호화, 무결성을 보장하기 위한 서명, 비밀번호는 귀하가 보관함) 또는 물리적 보호 수단(예: 잠긴 상자)과 같은 수학적 보호 수단을 사용할 수 있습니다.

답변2

대부분의 Unix 파일 시스템에 있는 모든 파일과 디렉터리에는 연관된 숫자 그룹과 사용자 ID가 있습니다. 그런 다음 이름 매핑에 대한 ID가 있습니다(사용자의 경우 /etc/passwd, 그룹의 경우 /etc/group). 파일을 다른 시스템으로 전송할 때 숫자 ID는 변경되지 않습니다. 해당 ID를 가진 이름이 새 시스템에 존재하지 않을 수 있습니다. 따라서 을 수행하면 ls -l사용자 이름 대신 숫자가 표시됩니다.

루트 사용자의 사용자 ID는 항상 0이므로 사용자 ID는 모든 시스템에서 동일합니다. 파일을 자주 이동할 계획이라면 두 시스템 간의 공용 사용자가 동일한 사용자 ID를 가지고 있는지 확인해야 합니다.

관련 정보