Se eu tiver um cliente Windows que leia um arquivo em um compartilhamento Linux smb em um intervalo <= 10 segundos, o cliente Windows mostrará informações incorretas (armazenadas em cache?) Desse arquivo.
Eu reproduzi isso em vários sistemas.
Exemplo de etapas para reproduzir:
1) configure o compartilhamento linux samba - neste exemplo, usando o Debian e instalando o samba. exemplo:
sudo mkdir /test
sudo chmod 777 /test
Além do smb.conf:
[test]
read only = no
locking = no
path = /test/
guest ok = yes
2) Mapeie este diretório como uma unidade em um cliente Windows (este teste usará L :)
3) crie um arquivo com algum texto no servidor samba
nano /test/test.txt
ORIGINAL
4) crie um arquivo em lote simples na máquina Windows para visualizar o arquivo a cada 5 segundos:
copy con test.bat
@echo off
cls
:1
type L:\test.txt
timeout 5
goto 1
5) execute o arquivo em lote, ele deve mostrar ORIGINAL a cada 5 segundos.
6) no servidor linux, altere o conteúdo do arquivo
nano /test/test.txt
CHANGED
7) veja o arquivo em lotes em execução no Windows, ele ainda dirá "ORIGINAL" a cada cinco segundos, e não "ALTERADO" como o arquivo real possui.
8) encerre o arquivo em lotes e aguarde ~ 15 segundos, OU altere o tempo limite para algo> 10 segundos e ele será atualizado corretamente.
Espero ter explicado e descrito como testar isso suficientemente.
Alguém pode reproduzir esse comportamento e / ou sugerir como corrigir isso?
.
.
.
NOTAS:
Cliente Linux> Host SMB Linux mostra o conteúdo adequado do arquivo.
Cliente Windows> Host SMB do Windows mostra o conteúdo adequado do arquivo.
É especificamente Windows SM> Linux SMB Host que não mostra o conteúdo adequado do arquivo em um intervalo de atualização de <= 10 segundos.
Todos os sabores do Windows que eu testei (Win7, Win10, Server2016) exibem o mesmo comportamento.
Também testei protocolos diferentes no meu compartilhamento de samba 'NT1, SMB2, SMB3' e eles não alteram o comportamento.
NOTA: Acredito que esse é provavelmente um problema do Windows, mas não recebo nenhuma resposta no technet ou no superusuário em uma semana. Isso deve ser bastante fácil de testar, alguém pode confirmar esse comportamento ou declarar o contrário?