Há duas coisas em jogo aqui:
- Permissões do diretório.
- Montar opções.
As permissões do diretório são independentes do fato de que a montagem era somente leitura. Portanto, ls
ainda listará as permissões atribuídas à pasta, sem considerar como ela foi montada.
Da mesma forma, se eu montar uma pasta com noexec
, ls
mostrará que os arquivos executáveis ainda são executáveis. Montando a pasta com noexec
(ou ro
no seu caso) não altera as permissões em arquivos e diretórios .
O gerenciador de arquivos parece ser mais inteligente, e sabe que o diretório é montado somente para leitura. Obviamente, consulta mais do que apenas os bits de permissão para descobrir isso.
Nos comentários: "No meu caso de uso, quero ler a permissão de montagem com um comando shell".
O comando mount
, sem opções, exibirá todas as partições atualmente montadas e suas opções de montagem:
$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=32841600k,nr_inodes=8210400,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=6572324k,mode=755)
(etc.)
As opções de montagem estão listadas entre parênteses.
Você também pode investigar /etc/mtab
para os sistemas de arquivos montados atualmente. Este arquivo tem o mesmo formato que /etc/fstab
, então você poderia fazer
awk '{ print $2, $4 }' /etc/mtab
para obter apenas os pontos de montagem e as opções de montagem, por exemplo.