Я только что установил Windows 7 RC1 и хочу переместить c: \ users в d: \ users.
Как лучше всего это сделать?
Из-за того, что Windows 7 создает зарезервированный раздел, который монтируется как C: в консоли восстановления, мне пришлось использовать следующие команды
robocopy /mir /xj D:\Users E:\Users
mklink D:\Users D:\Users /j
Оба D в команде mklink верны. Когда система перезагружается, диск, который был D в консоли восстановления, становится диском C.
После установки Windows вы можете легко переместить всю папку C: \ Users на другой диск:
Предупреждение: это может вызвать проблемы, если / когда вам нужно выполнить восстановление системы.
robocopy c:\Users d:\Users /mir /xj /copyall
/mir
сообщает robocopy зеркалировать каталоги, это скопирует все файлы/xj
очень важно, это указывает robocopy не следовать за точками соединения. Если вы это забудете, у вас будет много неприятностей./copyall
скопирует все атрибуты, включая ACL и информацию о владельцеmklink c:\Users d:\Users /j
Вот и все. Я использую этот процесс с тех пор, как Vista без проблем перешла на RTM.
Вот статья это тоже объясняет. Просто используйте robocopy вместо xcopy, как он делает в статье, чтобы избежать возможных проблем с разрешениями ntfs.
Обновление: поскольку я узнал на собственном горьком опыте, я подумал, что также упомянул, что если вы планируете перемещать «Программные данные» или «Программные файлы» с помощью этого метода, вы будете разочарованы, узнав, что все работает так, как ожидалось. , но обновления Windows больше не будут устанавливаться. Я не уверен, что это было исправлено Win 7.
Обновление 2: у @Benjol есть Сообщение блога в котором подробно описывается метод перемещения папки профилей, который воссоздает соединения, которые не учитываются этим методом. Если у вас возникнут какие-либо проблемы с устаревшими приложениями, взгляните здесь и посмотрите, решит ли его метод проблему.
В самый легкий и рекомендуемые путь заключается в перемещении отдельных специальных папок внутри пользовательского каталога, таких как Документы, Музыка, Видео и т. д. Вы можете сделать это, выполнив следующие действия:
Обратной стороной является то, что основная папка «Пользователи» остается на месте.
В жесткий способ намного сложнее и рискованнее:
В моем поиске решения я нашел только два простых способа переместить каталоги профиля пользователя с системного диска:
- Задайте папку профиля пользователя во время установки с помощью файла автоматической установки.
- Переместите отдельные папки внутри вашего профиля пользователя, что можно сделать с помощью проводника (который обновит ключи реестра HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Shell Folders и HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Папки оболочки).
Однако для меня этого было недостаточно, я хотел, чтобы моя фактическая папка профиля пользователя была перемещена в отдельный раздел / том, включая настройки реестра. Я обнаружил, что на самом деле это не так уж и сложно, если вам удобно массовую замену ключей и значений реестра.
Вот как я переместил местоположение своего профиля пользователя. Обратите внимание, что я хотел, чтобы все профили были перемещены, включая Public и Default, поэтому некоторые из этих шагов можно пропустить, если вы этого не хотите:
- Убедитесь, что у вас есть полная резервная копия вашей системы!
- Скопируйте исходный каталог профиля по умолчанию в новое место (например, из C: \ Users \ Default в D: \ Users \ Default).
- Скопируйте исходный каталог общедоступного профиля в новое место (например, из C: \ Users \ Public в D: \ Users \ Public).
- Перейдите в HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ ProfileList.
- Измените значение ключа по умолчанию на новое расположение профиля пользователя (например, D: \ Users \ Default).
- Измените значение открытого ключа на новое расположение профиля пользователя (например, D: \ Users \ Public).
- Измените значение ProfilesDirectory на новое расположение профиля пользователя (например, D: \ Users).
- На этом этапе вам необходимо перезапустить и снова войти в систему как другой пользователь, который никогда не входил в систему раньше и, следовательно, не имеет созданного профиля. В моем случае пользователь-администратор никогда раньше не входил в систему, поэтому я включил его, чтобы администратор мог войти и использовать его. Вы можете включить вход администратора, загрузив «Управление компьютером», а затем перейдите в раздел «Учетные записи пользователей», отредактируйте свойства для администратора, а затем снимите флажок «Отключить вход».
- После первого входа в систему с новой учетной записью вы увидите «Создание рабочего стола» и другие подобные вещи, пока Windows создает ваш профиль. Обратите внимание, что новый профиль должен быть создан в новом месте.
- После входа в систему попробуйте закрыть как можно больше приложений. Это предотвратит блокировку большинства файлов, так что вы не сможете их скопировать.
- Скопируйте всю исходную папку профилей пользователей из исходного местоположения в новое местоположение (например, C: \ Users * в D: \ Users). (См. Следующий шаг после начала копирования).
- Во время этой копии следует отметить несколько моментов. Были заблокированы тысячи файлов .TMP, которые нельзя было копировать. Я просто пропустил эти файлы. Я удерживал Alt-S, чтобы увидеть все пропущенные файлы и убедиться, что пропущены только файлы .TMP. Да, это заняло некоторое время, но, по крайней мере, я был уверен, что все мои файлы скопированы. Этот процесс, вероятно, можно было бы упростить с помощью командной строки или PowerShell.
- Если в вашем случае есть файлы, которые не будут копироваться, вы можете запустить procxp.exe, который предоставлен sysinternals. Затем выполните поиск дескриптора и найдите часть имени файла. procxp сообщит вам, какие программы блокируют файл. Однако, пока вы закрыли как можно больше программ, этого не должно произойти.
- Найдите и загрузите программу, которая выполнит поиск и замену в реестре. Я не буду предлагать ни одной, потому что я не нашел ни одной программы, которая работала бы идеально. В итоге я загрузил несколько разных бесплатных приложений и использовал их все.
- Используя программу поиска и замены в реестре, выполните поиск в исходной папке профиля пользователя и замените ее новой папкой профиля пользователя (например, найдите «C: \ Users» и замените на «D: \ Users». Обратите внимание, что некоторые из приложения, которые я использовал, изменяли только значения, а не имена ключей.Однако все ключи, которые нужно было изменить, были связаны с MuiCache. Я не знаю, действительно ли их нужно обновлять. Я сделал это просто, чтобы убедиться.
- Выйти. Войдите снова с тем же пользователем. Повторяйте шаг 14, пока не останется ничего для замены. Причина этого шага в том, что при выходе из системы некоторые программы обновляют реестр, используя старый путь к профилю пользователя.
- Запустите regedit.exe, найдите исходный путь к профилю пользователя и убедитесь, что он не существует. Причина этого шага в том, что (как отмечалось в шаге 13) я не доверял ни одной из программ поиска и замены в реестре, которые я использовал. В итоге мне пришлось обновить около десятка ключей и значений вручную, поскольку поиск и замена их пропустили.
- Чтобы вы могли легко находить программы, которые не используют реестр и жестко заданные пути к профилям, переименуйте исходную папку профиля (например, переименуйте C: \ Users в C: \ ~ Users).
- Выйти. Войдите в систему как обычный пользователь. Все должно работать правильно, за исключением программ, которые используют «жестко запрограммированное» расположение профиля пользователя.
- Есть два простых метода, которые можно использовать для поиска программ, которые используют «жестко запрограммированное» расположение профиля и все еще ищут исходный путь к профилю пользователя. Вы можете использовать упомянутый выше трюк procxp.exe и искать дескрипторы в исходном местоположении профиля. Вы также можете отслеживать местоположение оригинального профиля, чтобы увидеть, были ли созданы какие-либо новые папки или файлы. Например, в моем случае FolderShare создал несколько папок и файлов в каталоге C: \ Users \ MyUsername \ AppData \ Local \ FolderShare. Итак, я обновил настройки FolderShare, чтобы указать другой путь, а затем удалил каталог C: \ Users (обратите внимание, что C: \ ~ Users все еще существует в качестве резервной копии).
- Поскольку теперь вы уверены, что все ваши данные были перемещены (верно ??????), вы можете удалить резервную копию исходного местоположения профиля пользователя (например, C: \ ~ Users).
Источник: изменение расположения папки профиля пользователя в Vista
Увидев тот факт, что Microsoft упростила изменение расположения специальных папок и так сложно изменить расположение всей структуры пользовательских папок, я бы настоятельно советую вы должны выбрать легкий подход.
Вот правильный процесс
Я выполнил инструкции Джимми и почти работал. Однако у меня возникла странная проблема с IE, мне не удалось загрузить файл. Я нашел решение проблемы с загрузкой, и оно задокументировано на суперпользователь:
Некоторые ресурсы для "автоматического" перемещения C: \ Users с помощью автоматического сценария во время установки.
Микрософтс имеет КБ с некоторыми проблемами окружающие движущиеся специальные папки, которые может быть полезно прочитать.
Что касается самого сценария автоматической установки, существует элемент FolderLocations, имеющий дочерний элемент ProfilesDirectory, который вы можете указать как таковой:
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="oobeSystem">
<component name="Microsoft-Windows-Shell-Setup"
publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS"
processorArchitecture="x86">
<FolderLocations>
<ProfilesDirectory>d:\users</ProfilesDirectory>
</FolderLocations>
</component>
</settings>
</unattend>
Вот статьи Microsoft о развертывание Vista который включает, как обрабатывать unattend.xml, и вот лучший источник расширенного Статья Рамеша Сринивасана как перемещать специальные папки которые подробно объясняют, как это сделать и на что обращать внимание (включая тот факт, что даже после того, как этот сценарий автоматической установки был запущен, например, в качестве аргумента для setup.exe, все еще есть точки соединения, такие как c: \ documents и settings, которые указывают в старое место, которое вам нужно будет исправить вручную (если возможно)).
"C:\users"
это системная папка, эквивалентная "C:\Documents and Settings"
в Windows XP / 2000 / NT, и из-за этого было действительно сложно, если не невозможно, переместить папку. Было несколько способов обойти эту проблему, переместив подпапки с помощью TweakUI или других подобных хаков вместо родительской папки, и есть много сообщений об этом, см. Здесь:
http://support.microsoft.com/kb/236621
http://support.microsoft.com/default.aspx?scid=kb;en-us;314843
http://support.microsoft.com/default.aspx?scid=KB;EN-US;q310147&ID=KB;EN-US;q310147
Но что касается Vista / Windows 7, похоже, что этот процесс, возможно, стал проще. Вот несколько сообщений, в которых рассказывается, как это сделать в Vista, в основе которой лежит Windows 7:
http://www.ehow.com/how_2064387_relocate-user-files-windows-vista.html
http://www.technospot.net/blogs/how-to-move-users-folder-to-different-location-in-windows-vista/
Это немного поздно ...
Проблем с перемещением c: \ users на другой диск можно избежать, перемещая отдельные профили, а не весь каталог.
Если вы оставите перекресток в c: \ users, ссылающийся на новый каталог, все пути продолжат работать, как и в решении Jimmie Houts, однако я не перемещаю администратора, сетевую службу, общедоступные и т. Д., Поэтому все обычные системные функции, такие как обновление Windows, продолжайте работать в обычном режиме.
Ян
Я долго исследовал то же самое. Это невозможно. Вы можете перемещать "специальные" папки (Documents, My Music и т. Д.), Но не можете перемещать Пользователи каталог.
Большая часть этого скопирована у других, а затем изменена и расширена нынешним автором, tu servidor.
Чтобы наиболее легко переместить все пользовательские файлы и файлы пользовательских программ с загрузочного диска (в моем случае - SSD), следуйте этим инструкциям.
Во-первых, создайте точку восстановления, на всякий случай: 1. Откройте систему, нажав кнопку «Пуск», щелкнув правой кнопкой мыши «Компьютер» и выбрав «Свойства». 2. На левой панели щелкните Защита системы. Если вам будет предложено ввести пароль администратора или подтверждение, введите пароль или предоставьте подтверждение. 3. Щелкните вкладку Защита системы и нажмите кнопку Создать. 4. В диалоговом окне Защита системы введите описание и нажмите Создать.
ЗАТЕМ: перейдите в Восстановление системы / Командная строка: загрузитесь с установочного DVD Win7, выберите язык, валюту и клавиатуру и нажмите Далее. На экране с «Установить сейчас» выберите «Восстановить компьютер». Вам будет предложено «Восстановить и перезагрузить» в параметрах восстановления системы, выберите «Нет». Затем убедитесь, что Windows 7 указана как одна из установленных ОС, доступных для восстановления, и что она выбрана, и нажмите «Далее». Вам будет предоставлен список инструментов для восстановления. Выберите «Командная строка».
Найдите свой виртуальный диск Windows, загруженный с носителя Win7 (возможно, C или X), найдите свой настоящий диск Windows / SSD (D или E) и найдите свой жесткий диск (обычный жесткий диск) (D или E).
В моей системе обычно C = SSD с Windows на нем, D = HDD с данными
Используя носитель Win7 Update, диски в режиме восстановления были настроены по-разному, а именно: X: виртуальный / временный диск Windows, E: фактический диск Windows / SSD, D: жесткий диск, жесткий диск, на который я хотел поместить \ Users.
Некоторые сообщают, что в режиме восстановления системы их диски будут настроены следующим образом: C: виртуальный / временный диск Windows D: Фактический диск Windows / SSD E: жесткий диск, они хотят установить / Users on.
В командной строке вы будете использовать Robocopy (НЕ xcopy!) Для копирования c: \ Users в d: \ Users, затем удалите старый c: \ Users, затем создайте символическую ссылку из c: \ Users на D: \ Users. Обратите внимание, что вы должны делать это по порядку, и перед этим у вас не должно быть каталога d: \ Users.
ПРИМЕЧАНИЕ: в окне командной строки восстановления системы ваши диски не такие, какими они будут после выхода из режима восстановления! Поэтому настройте приведенные ниже команды в зависимости от того, как диски находятся в режиме восстановления, и тогда они станут правильными позже.
Я использовал: robocopy / mir / xj E: \ Users D: \ Users
Для перемещения / Пользователи с Windows / SSD на HDD. / mir указывает robocopy зеркалировать каталоги, это скопирует все файлы и разрешения. / xj очень важен, это говорит robocopy не следовать за точками соединения. Если вы это забудете, у вас будет много неприятностей. Убедитесь, что ни один файл не удалось скопировать (столбец FAILED = 0).
Затем вы должны удалить старую папку Users с диска Windows / SSD (c :), прежде чем вы сможете создать символическую ссылку: Я использовал: rmdir / S / Q E: \ Users
Создайте NTFS Junction / символическую ссылку, которая указывает на новую папку Users:
Я использовал: mklink / J E: \ Users D: \ Users
Используйте переключатель / J, чтобы создать соединение, которое является жесткой символической ссылкой. (Если вы используете переключатель / D, вам также придется отредактировать реестр, потому что это не будет жесткой ссылкой.) Используя / J, когда Windows ищет каталог C: \ Users, она его найдет! Но он будет на HDD, а не на SSD. Сложно!
Чтобы увидеть доказательство того, что вы создали, все еще в окне командной строки, войдите в фактический Windows / SSD и выполните команду «dir», и вы увидите: «Пользователи [D: \ Users]»
Теперь перезапустите, и вы увидите / Пользователи на жестком диске, и готово. Никакой дополнительной настройки или возни не требуется. Все новые профили пользователей будут храниться на диске d :, как и любые пользовательские данные. И это достижимо без каких-либо проблем с реестром, поиска и замены значений или необходимости каким-либо образом возиться с новыми профилями. Полностью установил и забыл.
Это не совсем то, что вам нужно, но если вы используете Windows 7, действительно хорошей альтернативой является изменение местоположения библиотек. С помощью этого метода вы сохраняете документы, изображения и т. Д., Но не весь профиль на диске D.
Вчера вечером я создал инструмент, который может быть вам полезен: Установить библиотеки.