Eu estou supondo "não", mas sinto que me corrija.
Aqui eu crio um arquivo de teste ( /tmp/f
), e um script perl que echosce seu pid, abre nosso arquivo de teste e dorme.
echo foobar > /tmp/f;
perl -E'$|=1; print $$; open my $fh, "<", "/tmp/f" or die $!; sleep while 1'
O pid emitido foi 19992
. Agora aqui está o que está acontecendo em /proc/19992/fd
,
$ cd /proc/19992/fd/
$ sudo cat 3
foobar
e em /proc/19992/fdinfo
,
$ cat 3
pos: 0
flags: 02100000
mnt_id: 27
$ sudo cat 3 > 3
bash: 3: Permission denied
$ sudo echo "pos=0" > 3
bash: 3: Permission denied