(1)
inotify
não relata tentativas de acesso / leitura / gravação em arquivos não existentes.
Na verdade, eles não são tratados como eventos porque esses arquivos não existem.
(2)
What I want to do is, when Clementine tries to open a file in this directory (/mnt/crypt), have a prompt pop up that asks for my mount password and mounts the volume. I guess, in order for it to work, the "read" syscall needs to block while the password prompt is shown, so that the read syscall won't report back an error immediately, before I've had a chance to type in my passphrase.
É bem complicado. Uma solução possível é ligar a chamada de sistema open
da glibc e redefinir sua própria versão. Sua versão de open
apenas age como o que você descreve, de acordo com o arquivo / dirctory que um processo tenta acessar.
referência:
link