O Windows (XP ou posterior) possui uma maneira integrada de criar mapeamentos de unidade persistentes, como os criados pelo SUBST? Encontrei uma ferramenta de terceiros psubst . Existe uma maneira de fazer isso sem ferramentas de terceiros?
177
psubst
é apenas um arquivo .bat que acompanha o registro. Consulte a resposta da @ davr abaixo para obter detalhes.subst
exigentes regras de barra final, mas é apenas um invólucro bonito . Você pode fazer isso sem um programa, e o README parapsubst
explica como. Ou, veja a resposta de davr abaixo, onde ele cita o psubst README.Respostas:
Bem, a Wikipedia menciona :
Assim, você pode associar caminhos às letras de unidade usando
subst
. O software Persistent SUBST command (psubst) parece ser bastante útil e fornece uma solução para executá-lo desde a inicialização:https://code.google.com/p/psubst/#Inconstancy
No Windows, você pode executar o editor de registro da seguinte maneira:
regedit
fonte
subst
mais. Mas nos tempos em que eu costumava, simplesmente havia um arquivo em lotes na minha pasta de inicialização que fazia essas coisas.\??
é um diretório virtual no namespace do gerenciador de objetos do NT. Primeiro, ele verifica os 'dispositivos' da sessão de logon do DOS (na verdade, os dispositivos do DOS são links simbólicos para os dispositivos NT, geralmente localizados em\Device
) e depois os\Global??
dispositivos do DOS. No WinObj, você encontrará os dispositivos de sessão de logon\Sessions\0\DosDevices\[logon ID]
. Observe que todos os dispositivos da sessão de logon são rastreados na sessão 0 (serviços) para cada ID de logon do LSA. Eles não estão correlacionados com as sessões da área de trabalho. É por isso que se você mapear uma unidade como um administrador limitado, ela não existe quando elevada; é um logon diferente.Instalá-lo em
HKEY_CURRENT_USER
tem o benefício de ter configurações diferentes para cada usuário. Prefiro manter a configuração do espaço do usuário, desde que um serviço do sistema não dependa do dispositivo.Fonte: http://networkadminkb.com/KB/a446/how-to-use-drive-letters-mount-points-the-same-disk-drive.aspx
fonte
reg add HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v "F Drive" /d "subst F: D:\x\db"
NB \ só precisa escapar aqui se é o último caractere do comando subst, por exemplo, quando o alvo é o diretório raiz:"subst F: D:\\"
; um único \ não seria interpretado como escapar da "segui-lo.Há uma resposta na página que você vinculou. Você não precisa da ferramenta de terceiros, pode fazê-lo com uma simples entrada de registro, conforme detalhado nessa página.
Crie um arquivo de texto chamado 'mapdrive.reg' com este conteúdo:
Em seguida, basta clicar duas vezes nele para configurar, sem a necessidade de ferramentas de terceiros.
fonte
Descobri isso porque estava procurando uma melhoria nos scripts de inicialização - eles funcionavam bem, mas às vezes eram executados depois que as pastas travavam na inicialização porque minha unidade ainda não estava mapeada.
Primeiro, editei o registro, mas não consegui fazê-lo funcionar. No entanto, me deparei com essa alternativa, que, embora não use subst, responde para mim a pergunta: "Como tornar o mapeamento SUBST persistente durante as reinicializações?" Não use subst ... (insira 'computerName' e 'pathName' apropriados):
Eu adaptei isso da sugestão de Hank Arnold nesta discussão sobre o mapeamento de unidades locais . Eu achava que \\ myComputerName \ c poderia funcionar, mas não sabia aplicar o $.
Antes de tentar o comando "net use", tente navegar para
para certificar-se de que 'computerName' esteja correto.fonte
\\localhost\c$\path\to\thing
lo, é portátil em máquinas (ou atualizações que alteram o nome do computador). Uma desvantagem do uso de uma unidade mapeada no Win7 + é que diferentes políticas de segurança se aplicam às unidades de rede que as locais, e alguns programas se recusam a executar uma unidade mapeada.Solte um arquivo em lotes na pasta Inicialização, que executa todos os SUBSTs que você deseja fazer.
fonte
Como o PSubst original tem algumas limitações e parece ter sido concluído pelo autor, tive que codificar uma nova versão para minhas necessidades, corrigindo alguns problemas e adicionando funcionalidade e flexibilidade.
Verifique aqui o arquivo em lote do PSubst versão 3
https://github.com/cyberponk/psubst
Compatível com Windows 7, Windows 8, Windows 10, Windows Server 2012
Nota: Este trabalho não tem a intenção de desmerecer o autor original e só veio à existência por necessidade real, como segue:
Como administrador do newtork, tenho a necessidade constante de SUBSTs em unidades de rede e de mexer com diferentes usuários da rede.
Como nem todo mundo é especialista em Windows, achei que a elevação automática do administrador com o tratamento de erros ajudaria, com base nos comentários que li na Web.
Como algumas pessoas lutaram com a ordem dos argumentos, achei que seria melhor o script trabalhar com argumentos em qualquer ordem.
Não me lembro de todas as funcionalidades adicionadas, mas todas as inclusões foram feitas apenas por necessidade. Estou compartilhando o código para que outras pessoas não encontrem os problemas que tive. Por isso, não há outra intenção senão compartilhar e ajudar.
fonte
Estou expandindo a resposta do davr porque todos os arquivos excluídos da unidade mapeada são excluídos permanentemente em vez de ir para a Lixeira. Este arquivo REG é baseado nas informações compiladas neste artigo do TechNet , que descreve como habilitar a Lixeira. O exemplo mapeia a unidade Q virutal para a pasta "OneDrive - Teste" e ativa a Lixeira na unidade Q. Mude os caminhos e o nome para se adequar à sua situação.
Se você tiver apenas uma unidade mapeada, poderá usar o GUID {9147E464-33A6-48E2-A3C9-361EFD417DEF}. Se você tiver várias unidades mapeadas, cada uma deverá corresponder a um GUID do seu gerador GUID favorito.
fonte
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{GUID}
e reiniciar, os valores correspondentes emHKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\KnownFolder\{GUID}
serão gerados automaticamente pelo Windows. Nada apareceu para mim embaixo dasWow6432Node
chaves, mas a lixeira funcionou sem elas. Como estava no sistema Windows 7, não tenho certeza se ele se comporta de maneira diferente nas versões mais recentes.