Я использую DISM для настройки и обновления образов, которые я развертываю на наших компьютерах. Я делаю это на внешнем диске, потому что он действительно нагружает ввод-вывод. Некоторое время назад я, кажется, оставил образ смонтированным на моем диске F как F:\WIN81MOUNT. Файлы там. dism /get-mountedwiminfo
Однако запуск показывает, что нет смонтированных WIM-файлов. Таким образом, я понятия не имею, как удалить WIN81MOUNT, поскольку я не могу перемонтировать, размонтировать или просто удалить папку (файлы имеют разрешения типа SYSTEM, как в образе Windows).
Как мне принудительно размонтировать или перемонтировать этот WIM? Я перепробовал все стандартные опции, такие как unmount-wim, cleanup-image, remount-wim... ни одна из них не работает, говорит, что запрос не поддерживается. В журнале указано "Это не точка монтирования WIM".
решение1
Следующая информация взята с сайта "http://trueliarx.blogspot.co.uk/2014/07/force-unmount-and-clean-up-of-wim-image.html"
Принудительное размонтирование и очистка образа Wim с помощью DISM
При использовании RT7 (+ AIK) иногда возникает ошибка, сообщающая о том, что смонтирован wim-файл (например,
boot.wim
).Для решения проблемы необходимо выполнить от имени администратора команду:
dism /cleanup-wim
Если это не сработает, я нашел другое решение: отредактируйте реестр и удалите все (необходимые) записи в нем:
HKLM\SOFTWARE\Microsoft\WIMMount\mounted images\
Это должно работать, если вы являетесь администратором.
Обычная процедура, которую вы уже использовали (?), показана ниже:
Информацию можно найти в файле журнала, который можно найти по адресу:
C:\Windows\Logs\DISM\dism.log
В случае 64-битных инструментов обслуживания, ранее работавших на 64-битной версии Windows;
В случае проблемы с повышенными привилегиями командной строки;
cd C:\Program Files\Windows AIK\Tools\amd64\Servicing
В той же проблеме с командной строкой с повышенными привилегиями;
dism /?
Может отображаться некоторая полезная информация.
В той же проблеме с командной строкой с повышенными привилегиями;
dism /Get-MountedWimInfo
Может отображаться информация о смонтированных изображениях.
Если обнаружены какие-либо смонтированные каталоги, которые необходимо демонтировать, для каждой проблемы с каталогами;
dism /Unmount-Wim /Mountdir:C:\examplepath /commit
После завершения этого процесса соответствующие wim-файлы, найденные с помощью Get-MountedWimInfo
, можно удалить с помощью проводника Windows.
решение2
Ничего из вышеперечисленного мне не помогло, так как, судя по всему, в разделе Dism нечего было чистить, кроме прав доступа к папке.
Я наконец нашел кое-что работающее (если перечисленные выше решения для реестра и dism не работают):
Сначала необходимо изменить права владельца «поврежденной» папки монтирования:
Щелкните правой кнопкой мыши папку -> Свойства -> вкладка Безопасность -> кнопка Дополнительно -> вкладка Владелец -> кнопка Изменить -> Выберите свою учетную запись пользователя -> Активируйте опцию Заменить владельца подконтейнеров и объектов.
После завершения закройте все окна свойств и снова откройте «Свойства» -> вкладка «Безопасность» -> кнопка «Дополнительно» -> вкладка «Разрешения» -> кнопка «Изменить разрешения» -> добавьте учетную запись пользователя и выберите «Заменить все дочерние объекты...».
Затем откройте командную строку с правами администратора ( https://technet.microsoft.com/fi-fi/library/cc947813%28v=ws.10%29.aspx )
Введите следующее и нажмите Enter:
DISM /Cleanup-Wim Теперь вы сможете удалить все оставшиеся файлы/папки.
решение3
В крайнем случае:
- Откройте реестр и перейдите в раздел HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WIMMount\Mounted Images.
- Там вы должны найти один или несколько подразделов со странными именами, например [e86b54b7-dc5f-4c15-8eb5-9b615bc3b154]
- Откройте первую из этих папок и выясните, соответствует ли она смонтированному образу, который выглядит поврежденным; используйте значения [Mount Path], [WIM Path] и [Image Index], чтобы выяснить это. Как только вы найдете правильный подраздел, упомянутый в пункте 2 выше, удалите его.
- Удалите и заново создайте папку Mount.
решение4
Просмотрите и отмонтируйте все оставшиеся Wim-файлы с помощью PowerShell.
$subKeyMatch = "Mount Path"
$orphMountedWims = @()
$regMounted = "REGISTRY::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WIMMount\mounted images"
$mountedKey = [array](Get-ChildItem "$($regMounted)\" -Recurse -Depth 0)
foreach ($key in $mountedKey) {
$keyProps = ((Get-Item -path "REGISTRY::$key").property)
foreach ($subKey in $keyProps) {
if ($subKey -like "$($subKeyMatch)") {
$regSubPropValue = Get-ItemProperty -path "REGISTRY::$Key" | Select-Object -ExpandProperty $subKey
$orphMountedWims += $regSubPropValue
}
}
}
if (($orphMountedWims | Measure-Object).Count -ge 1) {
Write-Warning "Orphaned WIM(s) have been found."
foreach ($oMWim in $orphMountedWims) {
try {
Write-Output "Attempting to dismount and discard changes for Orphaned [Path: $($oMWim)]"
Dismount-WindowsImage -Path "$($oMWim)"-Discard
Write-Output "Success discarding changes."
}
catch [System.exception] {
Write-Error "Error - Failed to dismount and dicard changed from Orphaned wim [Mount Path: $($oMWim)]. Error: $($_.exception.message)"
continue
}
}
}
else {
Write-output "No Orphaned WIM files found, module clear to run."
}