Перемещение каталога ProgramData в Windows 10 при установке
Как подробно описано в этом руководстве: http://www.tenforums.com/tutorials/1964-users-folder-move-location-windows-10-a.html, я переместил свой каталог Users из папки по умолчанию C:\Users
в D:\Users
, Я использовал этот файл ответов, который я сохранил как relocate.xml:
<xml version="1.0" encoding="utf-8"\>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="oobeSystem">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FolderLocations>
<ProfilesDirectory>D:\Users</ProfilesDirectory>
</FolderLocations>
</component>
</settings>
<cpi:offlineImage cpi:source="wim:X:\sources\install.wim#Windows 10 Pro" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>
Но я также считаю, что мне нужно переместить ProgramData. Итак, к relocate.xml я добавил:
<ProgramData>D:\ProgramData</ProgramData>
на линии 7.
Когда я делаю эту команду:
% windir% \ system32 \ sysprep \ sysprep.exe / oobe / reboot /unattend:Y:\relocate.xml
Он запускает Sysprep, но после того, как он просит меня ввести свои настройки, система, похоже, застревает в цикле. В отличие от того, когда я использую оригинальный файл relocate.xml, как это было в руководстве, которое завершает и регистрирует меня в новой учетной записи.
Общий поиск по перемещению каталога ProgramData, похоже, не приводит к каким-либо руководствам. Так в чем же причина отсутствия прямого способа перемещения ProgramData?
2 ответа
Я обнаружил ту же проблему, даже если она задокументирована как действительный параметр, кажется, что это не так.
Хотя есть работа вокруг. Вы можете скопировать всю папку (programdata) в ваш новый пункт назначения (я бы использовал загрузку winpe и использовал robocopy, чтобы сохранить все точно так же)
Что-то вроде
robocopy "C:\ProgramData" "D:\ProgramData" /E /ZB /DCOPY:T /COPYALL /R:1 /W:1 /V /TEE
После этого вы можете удалить папку с программными данными и добавить в нее соединение
mklink /j "C:\ProgramData" "D:\ProgramData"
Просто помните, что это не может работать в некоторых сценариях, я бы сначала попробовал чистую установку или виртуальную машину.
Поскольку этот вопрос высоко ценится в Google при поиске информации о файлах ответов, оставленных без присмотра, я решил добавить еще один ответ, хотя вопрос старый.
Официальная документация по файлам ответов без присмотра четко гласит:
ProgramData - указывает путь к папке с данными программы.
Предупреждение Используйте этот параметр только в тестовой среде. Если вы измените расположение папок с данными программы по умолчанию на том, отличный от системного тома, вы не сможете обслуживать свой образ. Любые обновления, исправления или пакеты обновления не могут быть применены к установке.
Поэтому я предполагаю (хотя я не проверял это), что вы застряли в цикле загрузки, когда пытались установить все последние обновления во время процесса isntallation, который продолжает давать сбой, а окна продолжают повторять попытки.
Поскольку это известное и задокументированное поведение, единственным решением этого является перемещение папки другими способами (см. Ответ @Varacolaci для примера) или сохранение ее в расположении по умолчанию.
Вся эта теория ошибочна. Удачи с удалением папки программных данных на диске C. У вас нет возможности переименовать. И удаление не позволит вам ничего удалить, так как много файлов / папок всегда используется. Поэтому, если вы не удалите папку, вы не сможете создать ссылку.