FolioPierEstudos de TI

Compartilhamento de pastas e unidades mapeadas (Aplicação)

Nota 25 de 54 · 6 min de leitura
Nesta página
  1. O compartilhamento de arquivos do Windows
  2. O que precisa estar certo
  3. Comandos úteis
  4. A impressora de etiquetas e a porta LPT1
  5. Erros que separam as causas
  6. Duas causas pouco lembradas

Na filial, o servidor da filial compartilha na rede a pasta de instalação do sistema, e as estações acessam essa pasta por meio de uma unidade mapeada. Quando o compartilhamento falha, os programas deixam de abrir ou não encontram os seus arquivos. Entender como o compartilhamento funciona permite separar uma falha de rede de uma falha de nome, de pasta ou de permissão.

O compartilhamento de arquivos do Windows

O compartilhamento de arquivos e impressoras do Windows usa o protocolo SMB, que funciona sobre o TCP, na porta 445. Um compartilhamento é identificado por um caminho de rede, formado por duas barras invertidas, pelo nome do computador, por outra barra invertida e pelo nome do compartilhamento:

  • \\servidor-loja\SISTEMA

Nesse exemplo, servidor-loja é o nome do servidor da filial na rede, e SISTEMA é o nome dado ao compartilhamento da pasta de instalação do sistema.

Uma unidade mapeada associa uma letra de unidade, como Z, a esse caminho de rede. Com o mapeamento, os programas passam a tratar a pasta compartilhada como se fosse um disco do próprio computador.

O que precisa estar certo

Para que uma estação acesse o compartilhamento, quatro condições precisam ser atendidas:

  • o nome do servidor precisa ser traduzido para o endereço IP;
  • a porta 445 do servidor precisa aceitar a conexão;
  • o compartilhamento precisa existir com o nome indicado no caminho;
  • o usuário precisa ter permissão no compartilhamento e na pasta.

A permissão é controlada em dois níveis: as permissões do compartilhamento e as permissões da própria pasta no disco do servidor. O acesso pela rede fica limitado ao mais restritivo dos dois níveis.

Comandos úteis

  • net use: lista as unidades mapeadas e o estado de cada uma;
  • net use Z: \\servidor-loja\SISTEMA /persistent:yes: mapeia a unidade Z e mantém o mapeamento depois que o computador é reiniciado;
  • net use Z: /delete: remove o mapeamento da unidade Z;
  • net view \\servidor-loja: lista os compartilhamentos do servidor;
  • Test-NetConnection servidor-loja -Port 445: testa, no PowerShell, se a porta do compartilhamento aceita conexões.

Os mapeamentos pertencem ao usuário do Windows que os criou. Outro usuário que entre no mesmo computador não enxerga essas unidades, e um programa executado como administrador também pode não enxergá-las.

A impressora de etiquetas e a porta LPT1

No cenário dos exemplos, a impressora de etiquetas utiliza o compartilhamento do Windows. O sistema da filial é configurado para enviar as etiquetas a uma porta de impressora chamada LPT1, nome da antiga porta paralela dos computadores, em vez de usar a impressão comum do Windows. Hoje, a impressora de etiquetas costuma ser ligada por cabo USB, e os computadores quase nunca têm porta paralela. Por isso, o nome LPT1, sozinho, não aponta para nenhuma impressora.

Para fazer o nome LPT1 apontar para a impressora, usa-se o comando net use, que associa a porta a um caminho de rede no formato de duas barras invertidas, nome do computador e nome do compartilhamento. Esse comando não aceita uma porta USB local. Por isso, a impressora precisa estar compartilhada na rede, mesmo quando é usada apenas pelo computador ao qual está ligada, e esse próprio computador mapeia a porta LPT1 para o seu compartilhamento. No cenário, a impressora está ligada ao servidor da filial. Considerando que o nome desse computador na rede seja servidor-loja e que a impressora seja compartilhada com o nome ETIQUETAS, o comando executado no servidor da filial é o seguinte:

  • net use LPT1: \\servidor-loja\ETIQUETAS /persistent:yes

Nesse mapeamento, o servidor da filial acessa a fila de impressão compartilhada no próprio computador. O compartilhamento também pode receber trabalhos de outras estações autorizadas. Se o aplicativo usa a porta LPT1, cada estação que enviará etiquetas por esse meio precisa ter o próprio mapeamento para \\servidor-loja\ETIQUETAS, além das permissões e das configurações de impressão necessárias. O mesmo comando pode ser executado nessas estações, enquanto a impressora continua fisicamente conectada ao servidor da filial.

Para imprimir a partir de outra estação, o computador que compartilha a impressora precisa permanecer ligado, acessível pela rede e com os serviços necessários em funcionamento.

Como a impressão depende dos recursos de compartilhamento do Windows, a etiqueta deixa de sair quando:

  • o compartilhamento de arquivos e impressoras é desativado;
  • o serviço do Windows que atende os compartilhamentos ou o serviço de impressão, chamado spooler, é interrompido;
  • o computador que compartilha a impressora é renomeado, porque o mapeamento continua apontando para o nome antigo;
  • outro usuário do Windows entra no computador, porque o mapeamento pertence ao usuário que o criou;
  • o sistema é executado como administrador e não enxerga o mapeamento feito na sessão comum.

Erros que separam as causas

  • Erro 53, o caminho da rede não foi encontrado: o servidor não foi alcançado. As causas mais comuns são um nome que não é traduzido, um computador desligado ou a porta 445 bloqueada.
  • Erro 67, o nome da rede não pode ser encontrado: o servidor respondeu, mas não existe compartilhamento com aquele nome.
  • Erro 5, acesso negado: o servidor e o compartilhamento existem, mas o usuário não tem permissão.
  • Erro 1219: a estação já está conectada ao mesmo servidor com outro usuário, e o Windows não aceita dois usuários diferentes para o mesmo servidor ao mesmo tempo.

Duas causas pouco lembradas

  • Perfil de rede público: o Windows aplica regras de firewall diferentes conforme a rede esteja marcada como privada ou pública. Quando a rede do servidor está marcada como pública, o compartilhamento costuma ficar bloqueado para os outros computadores.
  • Servidor muito antigo: as versões recentes do Windows vêm com a versão 1 do SMB desativada. Uma estação nova pode não acessar os compartilhamentos de um sistema operacional muito antigo, que só oferece essa versão.

No suporte

Unidade com um X vermelho, programa que não abre na estação e mensagens de caminho não encontrado apontam para o compartilhamento. Depois de uma troca de servidor, o compartilhamento é recriado no computador novo, e o mapeamento precisa ser refeito em todas as estações, porque o caminho antigo aponta para o nome do computador anterior. O mesmo vale para a impressora de etiquetas quando o computador ao qual ela está ligada é trocado ou renomeado.

Para guardar

  • O compartilhamento de arquivos e impressoras do Windows usa o protocolo SMB, na porta TCP 445.
  • A unidade mapeada associa uma letra a um caminho de rede, e o mapeamento pertence ao usuário que o criou.
  • O erro 53 indica servidor não alcançado, o erro 67 indica compartilhamento inexistente, e o erro 5 indica falta de permissão.
  • O mapeamento de LPT1 aponta para uma impressora compartilhada; conforme a configuração, pode ser usado no próprio computador ou em outra estação autorizada.
  • A troca ou a renomeação de um computador exige refazer os mapeamentos que apontam para ele.
Ao abrir a unidade Z, uma estação mostra a mensagem de que o caminho da rede não foi encontrado, e outra estação mostra a mensagem de que o nome da rede não pode ser encontrado. O que cada mensagem indica?

A primeira mensagem, o erro 53, indica que o servidor não foi alcançado, por causa do nome, de um computador desligado ou da porta 445 bloqueada. A segunda mensagem, o erro 67, indica que o servidor respondeu, mas que não existe compartilhamento com aquele nome.

Depois que o servidor da filial foi renomeado, as etiquetas deixaram de ser impressas, embora a impressora continue ligada a ele. Qual é a causa provável?

O mapeamento da porta LPT1 continua apontando para o caminho de rede com o nome antigo do computador. É preciso refazer o mapeamento com o novo nome, por meio do comando net use.

Publicado a partir do Obsidian · FolioPier