zfs-fuse problemas de permissões de arquivo no CentOS / RHEL 5

4

Estou trabalhando com o zfs-fuse como uma maneira de fornecer compressão do sistema de arquivos nos servidores CentOS 5 existentes. Eu estou lidando com um conjunto de dados altamente compressível (80%), então zfs-fusível vem a calhar. Estou encontrando problemas de permissão de arquivo com os pools de armazenamento.

Parece que o zfs-fuse está ignorando ou reconhecendo apenas parcialmente as permissões de arquivo para não-proprietários.

Assumindo um sistema de arquivos zfs-fuse montado em: /app/november composto de arquivos com permissões de 666 (-rw-rw-rw-) e proprietário "jack", eu posso ler arquivos e < em> delete eles como usuário "jill". No entanto, não consigo gravar nesses arquivos ou salvá-los. Basicamente, tudo é somente leitura se eu não sou o dono dos arquivos.

[jill@Vail /app/november]$ whoami
jill

[jill@Vail /app/november]$ ls -l testfile
-rw-rw-rw- 1 jack jack 27 Dec 18 12:12 testfile

[jill@Vail /app/november]$ touch testfile
touch: setting times of 'testfile': Operation not permitted

[jill@Vail /app/november]$ rm testfile 
[jill@Vail /app/november]$ touch testfile
[jill@Vail /app/november]$ ls -l
total 1
-rw-rw-rw- 1 jill jill 0 Dec 18 13:57 testfile

Alguma ideia? Existe uma correção para isso? Acho que isso é um problema do Fuse, já que eu vi problemas semelhantes em outros lugares para isso e outros sistemas de arquivos Fuse ...

O pacote zfs-fuse foi baixado do repositório EPEL. rpm info ...
fuse-2.7.4-8.el5
zfs-fuse-0.6.9_p1-6.20100709git.el5.1

Editar - A saída da montagem é a seguinte, mostrando as montagens do zpool e as informações do Fusível.

[root@Vail ~]# mount
/dev/cciss/c0d0p2 on / type ext3 (rw,noatime)
/dev/cciss/c0d0p9 on /app type xfs (rw,noatime,logbufs=8,logbsize=256k,nobarrier)
/dev/cciss/c0d0p8 on /tmp type ext3 (rw,noatime)
/dev/cciss/c0d0p7 on /var type ext3 (rw,noatime)
/dev/cciss/c0d0p3 on /usr type ext3 (rw,noatime)
/dev/cciss/c0d0p1 on /boot type ext3 (rw)
kstat on /zfs-kstat type fuse (rw,nosuid,nodev,allow_other)
vol1 on /vol1 type fuse (rw,allow_other,default_permissions)
vol1/november on /app/november type fuse (rw,allow_other,default_permissions)
vol1/december on /app/december type fuse (rw,allow_other,default_permissions)
    
por ewwhite 18.12.2011 / 23:01

2 respostas

0

Por favor, tente atualizar para uma versão de fusível mais recente. Fuse 2.8 introduziu uma nova função (FUSE_VFS_HAS_DEFAULT_PERM) que se o IIRC tem a ver com permissões de grupo

Não conheço mais os detalhes, mas acho que os grupos permanentes deviam ser lentos para serem implementados corretamente antes desse período.

    
por 22.12.2011 / 16:23
0

Os direitos IMHO para remover o arquivo são fornecidos por direitos para o diretório (remove é a operação no diretório), não o arquivo ... E o que vai fazer:

echo "1" > testfile

como jill, quando o testfile é de propriedade de jack?

    
por 21.12.2011 / 10:31