Temos um servidor Windows com Windows 2008 R2 SP1. Este servidor fornece um compartilhamento de rede, vamos chamá-lo de Data
. As permissões são definidas Read/Write
para todos os usuários do domínio.
Vários PCs ( PC1 to PC4
) na rede local mapearam esse compartilhamento de rede como letra de unidade H:
usando o mesmo nome de usuário MyUser
.
Neste compartilhamento de rede há uma pasta de aplicativos para um aplicativo Java específico. Então cada PC abre o aplicativo abrindo o .exe (digamos H:\App\run-java-app.exe
)
No PC1 e PC2 (ambos Windows 7) o aplicativo funciona bem. No PC3 (Win 8.1) e PC4 (Win 7), o aplicativo abre, mas não consegue gravar nenhum arquivo. Assim, PC3 e 4 têmapenas acesso de leitura.
Declaração do problema:
O mesmo aplicativo Java em PC3 e 4 tem acesso apenas de leitura, em PC1 e 2 leitura/gravação.
Depurando o problema:
- Criar um arquivo através do Windows Explorer funciona sem erros. E, por exemplo, o Word pode escrever na pasta em todos os PCs.
- Todos os PCs usam o mesmo usuário para se conectar à pasta compartilhada. Já tentei remover o compartilhamento de rede, reiniciar e reconectar. Sem sucesso.
- Já removi as permissões compartilhadas no servidor e as recriei. Sem sucesso.
- Adicionando permissão de leitura/gravação para o usuárioTodosresolve o problema
- Já escrevi um aplicativo Java simples que cria um arquivo e grava nele. Isso também funcionou em todos os PCs.
Pergunta:
Como posso depurar ainda mais o problema? Existe um método para verificar como um arquivo é acessado no servidor?
PC3 e 4 podem gravar no compartilhamento de rede se eu estiver usando, por exemplo, Word, mas o aplicativo Java não tem acesso de gravação. Parece que apenas este aplicativo Java específico tem problemas.
Responder1
É consistente? Quer dizer, PC3 e PC4 são sempre os que têm RO e os outros RW? Poderia ser um problema de bloqueio de arquivo que outras pessoas acessassem antes deles?
PD: Ainda não posso comentar, então tenho que “responder” com perguntas, desculpe.