partição NFS montada como somente leitura

7

(Aviso: Li " O compartilhamento de NFS é somente de leitura "e acho que não é o mesmo problema)

Acabei de configurar o NFS no meu framboesa (Raspbian) e estou tentando acessá-lo do OSX. Até aí tudo bem, eu posso montar a partição mas infelizmente é somente leitura . Mais algumas informações:

Cliente (OSX)

➜  ~ mount
/dev/disk0s2 on / (hfs, local, journaled)
devfs on /dev (devfs, local, nobrowse)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
192.168.1.102:/export/data on /media (nfs)

➜  ~  ls -ld /media    
drwxr-xr-x  3 root  wheel  4096 Mar  8 15:57 /media

Servidor (Raspbian)

pi@raspberrypi ~ $ cat /etc/exports 

/export       192.168.0.0/16(rw,fsid=0,insecure,no_subtree_check,async)
/export/data  192.168.0.0/16(rw,nohide,insecure,no_subtree_check,async)

pi@raspberrypi ~ $ cat /etc/idmapd.conf 
[General]

Verbosity = 0
Pipefs-Directory = /var/lib/nfs/rpc_pipefs
# set your own domain here, if id differs from FQDN minus hostname
# Domain = localdomain

[Mapping]

Nobody-User = nobody
Nobody-Group = nogroup

Como eu disse, o problema surge ao tentar criar um arquivo no diretório montado:

➜  /media  touch foo
touch: foo: Permission denied
➜  /media  sudo touch foo
Password:
touch: foo: Permission denied

Note que posso criar um arquivo a partir do servidor , o problema deve estar na montagem nfs.

(A BTW seguiu este guia para definir tudo)

Informação adicional (edição):

Veja como estou montando a partição no osx:

sudo mount -t nfs -o rw 192.168.1.102:/export/data /media

    
por Pablo Fernandez 08.03.2014 / 20:33

3 respostas

3

Isso parece mais um problema de permissões do que um sistema de arquivos somente leitura.

A partir do pi, você pode tornar o diretório / export / data temporariamente de gravação universal? Se sim, você pode escrever agora do cliente? Quando você cria um arquivo dessa maneira, quem é o proprietário?

Sem no_root_squash, seu usuário root é mapeado para ninguém. Caso contrário, você precisará mapear o usuário do cliente para um usuário no pi.

    
por 16.08.2014 / 01:27
0

Eu já vi esse problema com o CentOS 6.5. Eu não sei se Raspbian usa o NetworkManager, mas se isso acontecer, isso pode ser o seu problema. Parece que a versão mais recente do Network Manager fica no caminho do rpcbind e não permitirá que o nfs seja autenticado em algumas situações. Você pode descobrir isso rapidamente fazendo um dpkg --get-selections | grep -i NetworkManager no seu Raspbian. No CentOS você pode removê-lo sem afetar sua configuração de rede. Espero que isso possa ajudar.

    
por 13.03.2014 / 23:24
0

Isso é algo a ver com o NFSv4. Se você usa -o vers=3 , fica feliz. Tenho certeza de que há uma opção do NFSv4 para permitir que o root destrua seus compartilhamentos NFS, mas parei de cuidar para que funcionasse.

# mount -o soft,rw server:/exports/share /mnt/test
# touch /mnt/test/foo
touch: cannot touch '/mnt/test/foo': Permission denied
# umount /mnt/test
# mount -o soft,rw,vers=3 server:/exports/share /mnt/test
# touch /mnt/test/foo
# ls /mnt/test/foo
/mnt/test/foo
# rm /mnt/test/foo
# umount /mnt/test
    
por 06.06.2018 / 05:11