В Ubuntu 16.04.1:
test.sh скрипт:
#!/bin/bash
IAM=$(whoami)
ID=$(id -u $IAM)
echo "${IAM}"
echo "${ID}"
Andromeda $ ls -al | grep test.sh
-rwsrwxrwx 1 pkaramol pkaramol 71 Δεκ 8 07:52 test.sh
Как pkaramol (uid = 1000)
Andromeda $ ./test.sh
pkaramol
1000
Как testuser (uid = 1001)
Andromeda $ su testuser
Password:
testuser@Andromeda:/home/pkaramol/Desktop$ ./test.sh
testuser
1001
Учитывая, что suid установлен, почему во втором прогоне мы не видим pkaramol и 1000 на выходе? Разве сценарий не должен выполняться с идентификатором владельца файла?