mount options mostradas em / proc / mounts

6

IIRC, as opções de montagem mostradas em /proc/mounts foram alteradas. Algum tempo atrás acl e user_xattr foram exibidos, agora parece que apenas noacl e nouser_xattr são mostrados se esses recursos estiverem desativados.

Onde isso está configurado? Isso depende dos padrões compilados do código do sistema de arquivos? Como posso verificar se um volume suporta, por ex. ACL? Existe uma solução melhor do que testar com setfacl , getfacl ?

    
por Hauke Laging 19.06.2013 / 13:21

2 respostas

4

A Upstream decidiu ativar acl e user_xattr por padrão e removê-los como opções de montagem ( noacl / nouser_xattr ainda são válidas mount opções, portanto elas são mostradas).

    
por 19.06.2013 / 16:37
2

Alguns tipos de sistema de arquivos suportam ACLs sem opção de montagem, outros apenas com uma opção de montagem. Para ext2 / ext3 / ext4, algumas opções de montagem padrão, incluindo acl / noacl, são armazenadas no sistema de arquivos (você pode ver isso em tune2fs -l /dev/BLOCK_DEVICE | grep '^Default mount options:' ). Como anotado por don_crissti , para ext4, se o A opção é mostrada ou não depende da versão do kernel (desde que o kernel 2.6.39, acl é padronizado, não importa o que o sistema de arquivos disser). Sistemas de arquivos como o vfat e o minix não possuem suporte à ACL. Sistemas de arquivos como tmpfs, xfs e zfs sempre suportam ACLs.

A menos que você deseje criar e manter uma grande tabela de tipos de sistemas de arquivos, versões, comandos para verificar padrões e versões de kernel, não há como determinar se um sistema de arquivos suporta ACLs via opções de montagem ou características do sistema de arquivos. Você não pode dizer por observação pura com getfacl como sempre será, pelo menos, relatório unix permissões. Mesmo se um sistema de arquivos suportar ACLs, talvez ele não suporte os tipos de ACL desejados. Portanto, sua melhor opção é chamar setfacl (ou as APIs C subjacentes) para tentar definir a ACL desejada. Se o status do erro for EOPNOTSUPP (Operação não suportada), você saberá que o sistema de arquivos não suporta (este tipo de) ACLs.

    
por 20.06.2013 / 18:34