명령 매뉴얼 페이지를 공부할 때산나는 다음을 읽었습니다.
pmount("정책 마운트")는 일반 사용자가 이동식 장치를 마운트할 수 있도록 하는 표준 마운트 프로그램을 둘러싼 래퍼입니다.
일반 사용자(Sudo 없이)로 사용 하면 시스템 폴더의 권한이 있고 소유자가 있는 동안 pmount /dev/sdc1
폴더라는 폴더가 생성됩니다 . 이는 일반 사용자(현재 본인)가 파일 및 폴더 생성 에 폴더를 생성할 수 없음을 의미합니다. 폴더에. /media/sdc1
/media
drwxr-xr-x
root
/media
이것이 Linux의 권한 및 소유권 규칙과 모순됩니까?
또 다른 질문은 슈퍼유저 권한이 필요하고 mount
내부적으로 pmount
사용되는데 슈퍼유저 권한 없이 mount
어떻게 pmount
사용할 수 있느냐는 것입니다 sudo
.
답변1
/usr/bin/pmount
는설정값바이너리. setuid 실행 파일을 실행하면 uid 또는 gid가 실행 파일의 소유자로 변경됩니다. pmount가 실행되면 프로세스는 루트 권한을 가지므로 루트 소유 디렉터리를 만들고 파일 시스템을 마운트할 수 있습니다.
동일한 setuid 메커니즘이 sudo에도 적용됩니다.