1) Ele diz the invoking process
porque o comando passwd no seu exemplo é iniciado por um shell (bash, csh, etc) ou um programa executando com seu ID.
2) Sim, você está certo. Arco de permissões verificado com o ID efetivo do processo.
Estou tentando entender RUID
, EUID
e setuid bit
stuff. Aqui estão minhas perguntas no tópico:
No Como para iniciar (ou encontrar) um processo com RUID diferente do EUID? questionar a resposta de Gilles:
It's only setuid executables that start with the effective UID set to the owner of the executable while the real UID remains the real UID of the invoking process
O que significa the invoking process
? Se estou certo de que, no caso de, e. comando passwd executado por dizer usuário Bill com id = 1000 the invoking process
mencionado acima será apenas o usuário Bill?
EUID
desse executável com as permissões de arquivo?
Por exemplo temos o executável abc
( setuid bit
não definido) que grava alguns dados no arquivo 1.txt
com -rw-r--r--
permissões. O usuário da conta (UID = 1000) executa abc
. Agora porque abc
EUID = 1000 (não setuid bit
set) e 1.txt
permissões são -rw-r--r--
a operação de gravação é recusada pelo sistema porque EUID = 1000! = 0?
1) Ele diz the invoking process
porque o comando passwd no seu exemplo é iniciado por um shell (bash, csh, etc) ou um programa executando com seu ID.
2) Sim, você está certo. Arco de permissões verificado com o ID efetivo do processo.