O bit suid tem algum significado para arquivos de dispositivos?

6

O suid bit tem algum significado especial para arquivos de dispositivos no Linux?

    
por hostmaster 13.09.2012 / 15:59

1 resposta

4

Eu acredito que não é. Este bit é usado apenas em arquivos executáveis. Está definido nos cabeçalhos do kernel do Linux como S_ISUID . Se você grep fontes do kernel para esta constante, você verá que ele é usado apenas em:

  • should_remove_suid function, que é usada em operações de FS que devem remover o bit SUID / SGID,
  • prepare_binprm function em fs/exec.c que é usado ao preparar o arquivo executável para definir o EUID em exec ,
  • pid_revalidate function em fs/proc/base.c que é usado para preencher procfs,
  • notify_change function em fs/attr.c , que é usado ao alterar atributos de arquivo,
  • is_sxid função em include/linux/fs.h , que é usada apenas pelo XFS e GFS código específico e notify_change function,
  • no código específico do sistema de arquivos (claro)

Então, parece-me que esse bit é usado apenas (da perspectiva do espaço de usuário) ao executar arquivos. Pelo menos no Linux.

    
por 13.09.2012 / 18:10