Linux: ps -o fuid,fuser,fgid,fgroup # 이러한 프로세스 파일 시스템 액세스 ID의 목적은 무엇입니까?

Linux: ps -o fuid,fuser,fgid,fgroup # 이러한 프로세스 파일 시스템 액세스 ID의 목적은 무엇입니까?

명령의 매뉴얼 페이지 에서 ps이 4개의 "파일 시스템 액세스" 출력 필드(옵션을 사용하여 지정됨)의 목적은 무엇입니까 -o? 즉, 프로세스에서 이를 어떤 용도로 사용합니까?

fuid / fuser
fgid / fgroup

사용 예: $ ps -o fuid,fuser,fgid,fgroup.

fuid/fgid는 ID 번호를 반환하고, Fuser/fgroup은 이름이나 ID 번호를 반환하며, 또한 fuid/fuser는 사용자 값과 관련이 있고 fgid/fgroup은 그룹 값과 관련이 있다는 것을 알고 있습니다.

그런데 이러한 프로세스 값은 "파일 시스템"과 어떤 관련이 있습니까? 아니면 그것이 무엇을 의미합니까?

저는 데비안을 사용하고 있어요, 버스터. 감사해요.


명확성:이 필드 선택기를 파일을 사용하고 있는 프로세스를 보여주는 fuser명령과 혼동하지 마십시오 .fuser

답변1

이는 역사적인 유물이므로 지금 사용해서는 안 됩니다. 아니면 유효한 uid 및 gid와 다른 값으로 설정하면 안 됩니다. 후자가 변경될 때마다 파일 시스템 ID는 일치하도록 변경되지만 파일 시스템 ID는 다음을 사용하여 다른 값으로 설정할 수 있습니다.setfsuid그리고setfsgid.

유효한 uid 및 gid와 동일한 목적으로 사용되지만 파일 시스템 액세스 권한 확인에만 사용됩니다. 커널은 파일 시스템 액세스를 확인할 때마다 유효한 uid 또는 gid를 사용하지 않고 대신 파일 시스템 uid 및 gid를 사용합니다. NFS 서버에는 이러한 문제가 있습니다. 후자의 경우 파일 시스템에 액세스하는 데 사용되는 uid 및 gid를 변경해야 하지만 이로 인해 신호 처리로 인해 보안 취약점이 발생하고 파일 시스템 uid 및 gid가 해결 방법으로 도입되었습니다.

위에 링크된 문서에서도 자세한 내용을 확인할 수 있습니다.credentials맨페이지.

관련 정보