"

"

Tenho uma situação que nunca vi antes e não consegui encontrar na minha pesquisa. Eu tenho um arquivo PHP que não pode ser visualizado ou editado pelo proprietário ou por qualquer proprietário do grupo. Estranhamente, Apachepodeleia e processe o arquivo, para que não esteja corrompido, pelo que posso dizer. Além disso, ele pode ser visualizado e editado sudo(ou seja, como root).

O que descobri é que qualquer arquivo que tenha <?phpna primeira linha (o que é bastante comum para arquivos PHP) apresenta esse comportamento. Acabei de testar isso no meu diretório inicial:

$ vi henry.txt

Coloquei um texto nele e salvei. Sem problemas. Posso visualizar o arquivo:

$ cat henry.txt
Test

Eu edito o arquivo novamente ( vi henry.txt) e coloco <?phpna primeira linha, empurrando Testpara baixo até a segunda linha. Então eu salvo e saio. Agora:

$ cat henry.txt
cat: henry.txt: Operation not permitted

mas:

$ sudo cat henry.txt
<?php
Test

Eu edito o arquivo novamente ( sudo vi henry.txtporque não posso editá-lo sozinho) e removo a <?phplinha. Salvar e sair. Agora:

$ cat henry.txt
Test

Na verdade, nem preciso do full <?phppara bloquear o acesso. Simplesmente colocar <?lá já bastará.

Não sei por que isso acontece. Qualquer idéia seria muito apreciada. Caso seja importante, este é o Red Hat Enterprise Linux 8. Tentei desabilitar o SELinux, mas não fez diferença.

EDIT: Mais saída do console, mostrando a propriedade do arquivo (eu) e as permissões. O comportamento é idêntico no meu diretório inicial e em/tmp.

[hartley_h@webnix07 ~]$ cd /tmp
[hartley_h@webnix07 tmp]$ echo "Test" > henry.txt
[hartley_h@webnix07 tmp]$ ls -l henry.txt
-rw-r-----. 1 hartley_h domain users 5 Oct 29 15:44 henry.txt
[hartley_h@webnix07 tmp]$ cat henry.txt
Test
[hartley_h@webnix07 tmp]$ echo "<?php" > henry.txt
[hartley_h@webnix07 tmp]$ ls -l henry.txt
-rw-r-----. 1 hartley_h domain users 6 Oct 29 15:45 henry.txt
[hartley_h@webnix07 tmp]$ cat henry.txt
cat: henry.txt: Operation not permitted

informação relacionada