“ls” não mostra nenhum arquivo na pasta NFS montada, mas “cd” funciona

“ls” não mostra nenhum arquivo na pasta NFS montada, mas “cd” funciona

Um compartilhamento NFS foi montado /vol/mynfsem um cliente Linux. Ele não mostra nenhuma pasta lse a conclusão do bash também não funciona /vol/mynfs. Mas depois de mudar para um subdiretório, todos os arquivos ficam visíveis.

$ ls /vol/mynfs
total 0
$ cd /vol/mynfs/test
$ ls  # shows all files as expected now.

Por que os arquivos ficam invisíveis primeiro e como posso torná-los sempre visíveis?

Responder1

Presumo que seu compartilhamento NFS seja montado automaticamente, certo?

Antes de o compartilhamento ser realmente montado, /vol/mynfsé apenas um diretório vazio, então lsé mostrado assim. Mover para esse diretório força a montagem a realmente acontecer, então lsdepois disso mostra o conteúdo do diretório agora montado.

Os arquivos ficarão listados enquanto o compartilhamento estiver realmente montado. Se o compartilhamento for desmontado posteriormente (manual ou automaticamente, após um tempo limite de inatividade), o diretório parecerá vazio novamente.

Algo como (cd /vol/mynfs; ls)forçará a montagem e fará o ls, se for isso que você precisa fazer por algum motivo.

Responder2

Certifique-se de ter permissão de leitura para esse diretório.
Tente ls -la /vol/mynfs/.ver a saída de .seu usuário ou grupo tem acesso de leitura?
Você pode aprender a ler as permissõesaqui

Se você tiver acesso de execução, mas não de leitura, poderá abrir a pasta e seus subdiretórios, mas não poderá listá-los (seu problema exato).Fonte
Você pode corrigir esse problema executando (pode ser necessário ser root/use sudose você não for o proprietário da pasta);

chmod u+r /vol/mynfs/.

O que adicionará permissões de leitura para o usuário nessa pasta.

O extra /.nos comandos pode ser necessário se for um link simbólico, não sei.

Responder3

Eu também tentei este caso.

Solução 1

No meu caso, estou usando o QNAP NAS Server.

O nome da minha pasta NAS Share é 'mynfs'

ssh para servidor QNAP NAS e chmod 750 mynfs

chmod 750 /share/NFSv=4/mynfs

Após a configuração do chmod do lado do servidor NFS, o nfs do meu cliente pode mostrar todos os arquivos e diretórios agora.

Solução 2

Esta solução é modificar o /etc/fstab do lado do cliente. Abaixo do exemplo, 10.0.0.254 é meu servidor QNAP NAS.

10.0.0.254:/mynfs     /vol/mynfs     nfs     defaults        0       0

modificar para

10.0.0.254:/mynfs    /vol/mynfs     nfs     relatime,vers=4.1,rsize=32768,wsize=32768,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,local_lock=none  0       0

Depois de modificar /etc/fstab e montar /vol/mynfs novamente. Os arquivos apareceram no diretório /vol/mynfs.

informação relacionada