Esse não é o bit pegajoso, esse é o bit setuid. Um sticky bit geralmente se aplica a diretórios, você pode ver isso em /tmp
, por exemplo:
$ stat -c '%A %n' /tmp /bin/ping /usr/bin/crontab
drwxrwxrwt /tmp
-rwsr-xr-x /bin/ping
-rwxr-sr-x /usr/bin/crontab
O t
indica um bit fixo, um s
nos modos de usuário indica setuid e um s
nos modos de grupo indicam setgid.
O bit setuid faz com que o comando seja executado como o usuário que possui o arquivo , geralmente root
. Isso é feito porque:
-
ping
eping6
precisam de acesso root para usar soquetes não processados. Veja esta postagem de superusuário e este Unix & amp; Postagem no Linux . Como a resposta SU observa, algumas distros agora usam recursos em vez de setuid - meu sistema Arch Linux não tem setuid emping
. -
su
precisa de acesso root para alternar para um usuário arbitrário -
mount
(eumount
, etc.) precisam setuid para montar coisas especificadas como sendo montáveis por qualquer pessoa (viausers
opção em/etc/fstab
) (veja esta resposta Unix e Linux ) -
crontab
é setgid, já que os arquivos crontab são armazenados em um local apenas gravável por root e ocrontab
group:$ stat -c '%A' /var/spool/cron/crontabs drwx-wx--T
(nota: o diretório crontab também é adesivo).
Veja também: