Preciso desmontar um VHD com um script em lote no Windows 10. A única solução que encontrei on-line foi direcionada ao Windows 7 e envolveu o Diskpart. Existem outras ferramentas de linha de comando nativas do Windows disponíveis que podem fazer o trabalho?
command-line
windows-10
vhd
eject
unmount
Zerobinary99
fonte
fonte
Respostas:
Como não encontrei uma maneira de confiar apenas nas ferramentas de linha de comando instaladas pela MS, listarei soluções de terceiros.
WinApiExec
WinApiExec permite que o usuário chame a API do Windows na linha de comando. O executável de 32 bits tem apenas 3,5 KB de tamanho (x64: 5,5 KB) e, portanto, ridiculamente pequeno, introduzindo o mínimo de sobrecarga possível.
vMount
O vMount suporta várias funções relacionadas ao VHD. Seu tamanho (x86: 432KB; x64: 2.53MB) é bastante grande apenas para chamar o WinApi; portanto, não é uma solução para o meu cenário, mas pode ser útil para outras pessoas.
DiskPart
Por uma questão de integridade, DiskPart também deve ser mencionado. Ele suporta muitos recursos relacionados ao disco, mas possui uma maneira bastante lenta de automatizar a entrada de usuário necessária para fins de script. Também é a única ferramenta na lista que ficará presa em loop se você executar acidentalmente o script sem direitos elevados.
Salve as duas linhas a seguir em um arquivo de texto:
Agora, o Dism pode analisar o arquivo de texto como uma forma de arquivo de resposta autônomo:
fonte
Você pode montar e desmontar vhd / vhdx usando o Windows 10 Powershell nativo:
De cmd / bat:
Em qualquer um dos casos, você deve usar o prompt elevado (Executar como administrador).
Outro aspecto a ser observado é que você precisa habilitar o recurso Hyper-V primeiro .
fonte
Esta é uma resposta expandida: (Você deve conseguir entender como desmontar VHD)
Como montar automaticamente e desmontar arquivos VHD na inicialização / desligamento.
As coisas parecem ter mudado um pouco no Windows 10.
Primeiro, devo dizer que estou montando um VHD armazenado em um servidor de arquivos Linux, montado em SMB.
Segundo, muito importante, é que, se você não desconectar o disco durante a reinicialização, quando tentar reconectá-lo, será exibido "O arquivo está em uso e não pode ser acessado".
Então, precisamos de montagem e desmontagem automáticas. A desmontagem se mostrou um pouco mais complicada, já que eu não posso colocá-lo na pasta de inicialização. Você precisa usar a Diretiva de Grupo. Além disso, quando executado como um script "shutdown / startup", foi executado cedo, você deve executá-lo em "Logon / Logoff"
Tenho 4 arquivos em
C:\mount
mount.cmd
umount.cmd
umount.txt
mount.txt
Agora, no início, digite / execute
gpedit.msc
e adicione os scripts ao logon / logofffonte