O Windows 7 sempre anexa VHD

8

No Win7, você pode conectar um VHD como unidade, no entanto, após uma reinicialização, o VHD não está mais conectado. Existe alguma maneira de torná-lo permanente?

Robert MacLean
fonte

Respostas:

11

Não vejo uma maneira de anexá-lo novamente na inicialização "nativamente". Você pode usar um "script de inicialização" com os comandos DISKPART para reconectá-lo ou implantar um script no grupo de programas "Inicialização" para reconectá-lo após o logon. Isso é decepcionante e tolo, mas pelo menos daria o que você queria.

@echo off
SET TEMPFILE="%TEMP%\%RANDOM%.TXT"
echo SELECT VDISK FILE=(vdisk filename here)>%TEMPFILE%
echo ATTACH VDISK>>%TEMPFILE%
DISKPART /s %TEMPFILE%
del %TEMPFILE%

É triste, mas é o melhor que posso ver por enquanto ...

Evan Anderson
fonte
Isso funciona muito bem em um prompt de comando elevado. No entanto, ele não funciona no grupo de programas de inicialização. Algo sobre as permissões faz com que ele não execute o DISKPART corretamente.
conter
11
Sim ... UAC é uma dor. Ele deve funcionar bem a partir de um script de inicialização, pois é executado como SYSTEM e é, por definição, elevado.
Evan Anderson
Sim, obrigado. Colocar no script de inicialização da diretiva de grupo funciona para mim.
conter
Alguém bem sucedido implementa isso? Eu recebi a mensagem "Os argumentos especificados para este comando não são válidos. Para obter mais informações sobre o tipo de comando: HELP SELECT VDISK"
Funky81
2
+1 para% RANDOM%. Só porque é novo para mim. :-)
mpbloch
1

Outra maneira é anexar no nível de serviço. Você precisa do instsrv.exe e srvany.exe nas Ferramentas do Windows Resource Kit. Coloque-os em qualquer pasta com os seguintes arquivos:

disk-W-install-permanently.cmd

@echo off
echo RUN THIS AS ADMINISTRATOR!
pause
cd %~dp0
copy srvany.* c:\windows\system32\
copy srvany-attach-disk-W c:\windows\system32\
instsrv disk_W_attach "c:\windows\system32\srvany.exe"
regedit disk-W-install-permanently.reg
pause

disk-W-install-permanently.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\disk_W_attach\Parameters]
"AppEnvironment"=""
"Application"="c:\\windows\\system32\\cmd.exe"
"AppParameters"="/c srvany.bat"
"AppDirectory"="C:\\Windows\\System32"

srvany.bat

@echo on 
set log=%temp%\srvany.log

echo log: Running at %date% %time% >>%log%
diskpart /s srvany-attach-disk_W >>%log%
net stop disk_W_attach

srvany-anexar-disco-W

select vdisk file=”D:\private\vm\HDD\disk_W.vhd"
attach vdisk
exit

dir / b

disk-W-install-permanently.cmd
disk-W-install-permanently.reg
instsrv.exe
srvany.bat
srvany.exe
srvany-attach-disk-W

Agora edite o script srvany-attach-disk_W para apontar para o seu VHD, execute disk-W-install-permanently.cmd com privilégios de administrador e reinicie. Isso é tudo!


fonte
11
O "SC" incorporado fará o que "INSTSRV" faz no seu texto acima. A execução de um serviço para iniciar um arquivo em lotes parece um pouco desonesta para mim. Acabei de executar um script de inicialização e pronto.
Evan Anderson
1

Você pode tentar usar a conexão VHD . Tem opção para anexar VHD após cada inicialização. Como uma parte é executada como serviço, nenhum prompt do UAC o incomodará.

Josip Medved
fonte
1

O programa de conexão VHD funcionou para mim. Ele anexa VHD para todos os usuários. Não há necessidade de criar um script de inicialização ou tarefa agendada. O programa anexa o próprio VHD. você só precisa instalar o programa. Anexe seu arquivo VHD uma vez ou vá para opções -> Adicionar o arquivo VHD e selecione Anexar automaticamente. Obrigado Josip. Você é demais


fonte
1

Eu fiz um programa para isso, BMVHDloader.com, Free e ainda atualizava o tempo todo. Será um serviço no próximo lançamento. E é gratuito para distribuir, pois eu precisava dele e o mencionado acima não estava disponível. Eu acho que se eu precisasse e não estivesse por perto, eu deixaria todo mundo tê-lo gratuitamente. O mencionado acima ("VHD Attach") eu acredito que foi feito com o VB Também este mês estou lançando uma versão para o servidor 2003 e XP. :) Por favor, passe a todos que precisam e volte para atualizações no meu site. Happy VHD'ing

Kendall Bennett
fonte
0

Não existe uma maneira nativa de fazer isso - no momento, o Windows não persiste VHDs anexados em uma reinicialização. Um script de inicialização do sistema será sua melhor aposta.

mikekol
fonte
0

Coloque o mesmo comando diskpart / s no sheduler de tarefas com 'privilégios mais altos' verificados e 'execute-o na inicialização do computador'. Funciona para mim (não para o disco de inicialização), monta vhd antes mesmo de o usuário fazer logon.


fonte