Quoted from this answer about the difference between filesystem user id and effective user id of a process, it says that
The FSUID is used for filesystem accesses, the EUID for other things.
What are these "other things"? I can only think of system calls like connecting to a socket, but besides filesystem interaction, anything else requires the process to have superuser rights as far as I know. So effective uids (and gids) I guess are pretty much pointless unless you are root.
Is anything else appart from system calls? I also know that user/group permissions affects the signals that can be send among processes but I'm not sure about how that works. Could maybe be added to the mix other kinds of interprocess communication like shared memory and such?
And also, if a user has permission to execute a certain file, executing it is considered a "filesystem permission"? Could that depend on the executable being a script (that requires the SO runs a process owned by the user that read the script line by line, and thus implies a filesystem read operation), or a binary (the file contents are directly copy-pasted to the RAM by the SO I guess)? And what if a file has execute but not read permission (for both, binary or textual executable)?
./script.sh
for instance (or to execute it by double clicking). If you don't, you need to writebash script.sh
.