Como obter o ruid, euid, suid e rgid, egid, sgid de um processo?

2

Como obter o ruid (ID real do usuário), euid (ID do usuário efetivo), suid (ID do usuário salvo) e rgid (ID real do grupo), egid (ID do grupo efetivo ), sgid (ID do grupo salvo) de um processo, pode ser feito usando ps ?

    
por user264127 03.12.2017 / 22:49

1 resposta

4

Com o procps-ng :

do Debian
$ ps -o pid,euid,ruid,suid,egid,rgid,sgid,cmd
  PID  EUID  RUID  SUID  EGID  RGID  SGID CMD
28793  1000  1000  1000  1000  1000  1000 -/bin/bash
...

Em STANDARD FORMAT SPECIFIERS na página do manual :

euid        EUID      effective user ID (alias uid).
euser       EUSER     effective user name.  This will be the textual
                      user ID, if it can be obtained and the field
                      width permits, or a decimal representation
                      otherwise.

FreeBSD ps tem svuid e svgid em vez de suid e sgid e o que vem com o macOS só conhecem uid e gid para o UID e o GID efetivos (não euid ou egid ).

No Linux, também há o UID e o GID de acesso ao sistema de arquivos, embora ele provavelmente não seja muito usado (consulte setfsuid(2) ). Os especificadores para esses são fuid / fsuid e fgid / fsgid .

/proc/$pid/status também os contém, consulte proc(5)

    
por 03.12.2017 / 22:56

Tags