Рубрики
Windows Избранное Настройка Софт

Как полностью перенести папку Users (Windows 7, Vista) или Documents and settings (XP) на другой диск

При обычной установке Windows (будь то XP, Виста или Семерка) папка с профилями пользователей всегда находится на системном диске. Если у вас несколько дисков (не важно логические они или физические), то вполне разумно файлы пользователя хранить на диске отличном от системного. Это значительно упрощает процедуру резервирования файлов и позволяет сделать системный диск действительно компактным, что в свою очередь значительно упрощает создание его образа.

К сожалению, Микрософт не прудесмотрел стандартной процедуры для перемещения папок профилей пользователей (перемещение при установке ОС с помощью файла автоматической установки, а также возможность переноса отдельных папок внутри профиля пользователя не в счет). Чтобы решить проблему пришлось довольно долго рыться в сети, в результате вышел на очень интересную статью. Однако, предложенный там метод показался довольно грубым, т.к. требовал значительных модификаций реестра. Но в комментариях к статье мелькнула действительно простая и работающая идея: использование символьных ссылок. Что это такое? Грубо говоря это ярлыки, но на уровне файловой системы. В Висте и Семерке для их создания используется команда mklink, в XP все немного сложнее, необходимо использовать утилиту linkd.exe из состава Windows Server 2003 Resource Kit Tools. Перед выполнением инструкции настоятельно рекомендую сделать полный бэкап системного диска (с помощью утилит типа Acronis TrueImage или Norton Ghost).

О том как переместить папку Users или Documents and Settings на этапе установки Windows читайте здесь: Автоматическая установка Windows (unattended install)

Инструкция обновлена 07.10.2010.

Перенос папки Users (Windows 7, Vista)

Предположим, что нам нужно перенести папку Users с диска С на диск D.

  1. Временно отключаем контроль учетных записей (UAC).
  2. Открываем Total Commander (или любой другой файловый менеджер). Необходимо обязательно включить опцию видимости скрытых файлов. Копируем содержимое папки С:\Users в D:\Users. Копируем все папки кроме All Users и Default User (это не папки а символьные ссылки, которые надо будет создать заново), а также пропускаем папку текущего пользователя.
    Перед началом копирования включите опцию «Копировать права доступа NTFS (нужны админ права)» это позволит пропустить п.12:

    Копируем папки с сохранением прав доступа
    Копируем папки с сохранением прав доступа

    В процессе копирования доступ к некоторым файлам может быть заблокирован (у меня было заблокировано несколько tmp-файлов) — ничего страшного, пропускаем их.

  3. Запускаем редактор реестра (в командной строке ввести regedit) и переходим к разделу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList.
  4. Изменяем ключи:
    Default на D:\Users\Default
    ProfilesDirectory на D:\Users
    Public на D:\Users\Public.
  5. Теперь создаем нового пользователя (например test) с правами администратора (правый клик на Компьютер -> Управление-> Локальные пользователи -> Правый клик на подгруппе Пользователи -> Новый пользователь).
  6. Перезагружаемся и заходим в систему под только что созданным пользователем (test). Обратите внимание, что файлы профиля пользователя test будут созданы уже в новой папке D:\Users.
  7. Копируем оставшийся профиль основного пользователя.
  8. Переименовываем папку C:\Users в Users-old (или любое другое имя по вашему усмотрению).
  9. Теперь можно приступить к созданию символьных ссылок. Открываем командную строку и последовательно вводим следующие команды:
    mklink /j c:\Users d:\Users
    mklink /j "d:\Users\All Users" c:\ProgramData
    mklink /j "d:\Users\Default User" d:\Users\Default
    mklink /j "d:\Users\Все пользователи" c:\ProgramData
  10. Перезагружаемся и заходим под своим обычным профилем. Проверяем все ли работает как и раньше (должно!). Если все ОК, удаляем временного пользователя (test).
  11. В отличие от Windows XP в Windows 7 и Vista внутри профиля пользователя также присутствуют символьные ссылки. При копировании ссылки портятся (превращаются в папки). Воcстанавливать их вручную долго, поэтому я написал cmd-файл автоматизирующий этот процесс (спасибо snidekit). Скачайте его и откройте в WordPad (WordPad нужен для того, чтобы открыть/сохранить файл в кодировке dos-866, notepad этой функции, к сожалению, лишили). Редактируем первую строку (set userfolder=d:\Users\default) — здесь надо прописать путь к папке профиля пользователя (если он у вас отличный от d:\Users). Сначала восстанавливаем профиль default. Symlinks.cmd рекомендую записать на рабочий стол и запускать как обычно через двойной клик. Далее снова редактируем параметр userfolder, default заменяем на имя папки другого пользователя. Таким образом последовательно восстанавливаем символьные ссылки для профилей всех пользователей.
  12. Теперь остался последний штрих. При копировании папок с одного диска на другой настройки безопасности для них обычно не сохраняются. Папки в D:\Users унаследуют настройки безопасности, установленные для всего диска D. Для всех папок профилей необходимо проделать следующие операции:
    Открыть вкладку Безопасность (Правый клик на папке -> Свойства -> Безопасность). Внизу нажимаем на кнопку Дополнительно. Откроется вкладка Разрешения, внизу еще одна кнопка Изменить — нажимаем. В открывшемся окне убираем галочку с опции «Добавить разрешения, наследуемые от родительских объектов». На вопрос копировать или удалить разрешения отвечаем Копировать. В том же окне из списка разрешений удаляем все лишнее. Должны остаться разрешения для Системы, группы администраторов, а также сюда необходимо внести учетную запись пользователя, которому принадлежит профиль, и назначить ему права полного доступа. Для папки Public, вместо учетной записи конкретного пользователя, необходимо добавить группу «Все» с правами полного доступа.
  13. После этого еще раз перезагружаемся, убеждаемся, что все работает правильно.
  14. Удаляем папку Users-old.
  15. Включаем обратно контроль учетных записей (UAC). На этом все!

Перенос папки «Documents and Settings» (Windows XP)

Предположим, что нам надо перенести папку «Documents and Settings» с диска C на диск D и при этом переименовать в Users.

  1. Открываем Total Commander (или любой другой файловый менеджер). Необходимо обязательно включить опцию видимости скрытых файлов. Копируем все папки из c:\Documents and Settings в d:\Users (кроме папки текущего пользователя!).
  2. Запускаем редактор реестра (в командной строке ввести regedit) и переходим к разделу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList.
  3. Изменяем ключ ProfilesDirectory на D:\Users.
  4. Создаем нового пользователя (например test) (правый клик на Мой компьютер -> Управление-> Локальные пользователи -> Правый клик на подгруппе Пользователи -> Новый пользователь) с правами администратора.
  5. Перезагружаемся и заходим в систему под только что созданным пользователем (test). Обратите внимание, что файлы профиля пользователя test будут созданы уже в новой папке D:\Users.
  6. Копируем папку пользователя, которую мы пропустили на этапе 1.
  7. Открываем редактор реестра, переходим в раздел HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList. У этого раздела есть подразделы вида S-1-5-…… Открываем их по порядку и изменяем параметр ProfileImagePath (например %SystemDrive%\Documents and Settings\User меняем на d:\Users\User).
  8. Переименовываем папку «Documents and Settings» в «Documents and Settings.bak».
  9. Открываем командную строку и создаем символьную ссылку:
    linkd "c:\Documents and Settings" d:\Users
  10. Перезагружаемся и входим систему под своим обычным профилем. Убеждаемся, что все работает корректно, после чего удаляем временного пользователя (test) и папку «Documents and Settings.bak».
  11. Восстанавливаем настройки безопасности (см. пункт 10 инструкции для Windows 7).

Как еще освободить место на системном диске:

498 ответов к “Как полностью перенести папку Users (Windows 7, Vista) или Documents and settings (XP) на другой диск”

Промучался всю ночь, забил и откатился назад. Завис на этапе переименовывания папки users. (ни что не помогло ,даже unlocke) Ребята!!! кто разобрался, слепите свежую инструкцию

Блин, как все сложно замутили.
Все ведь очень просто! Особенно в ХР.

проделал всё как написано и как на видео. Создал профиль естественно там ничего от главного профиля нет. После всех операций, зашёл в главную учётку и ничего вообще нет. как будто новый профиль( ни настроек браузера, ни значков на рабочем столе. Как будто нового создал опять( Из-за чего это?! как вернуть всё обратно(

напишите обновлённую статью . перепробовал всё что в комментариях и статье — ничего не получается . а требуется по большей части перенести папку appdata , так как не имея ни одного файла в профиле , профиль занимает 14Гб

я не заморачивался делал сначала 3 и 4 а 9 пункт просто копировал на нужный мне диск хотя символьные ссылки наверное правильней

Для тех кто в танке .Я написал в своём сообщении от 13.01.2013 что есть значительно более простой и лёгкий способ .Заходите на буржуйский сайт(ссылку смотрите ниже) и там всё подробно описано ,что и как делать.Кстати я перенёс на другой раздел также папку ProgramData и METRO Windows 8 работает без проблем.Но для этого необходимо ещё внести небольшое изменение в реестр.
HKLM\Software\Microsoft\Windows\CurrentVersion\Appx Правой клавишей на Appx -разрешения-дополнительно-владелец-изменить-добавить себя в качестве владельца-ок -просмотреть-дать себе полный доступ-применить ок. Далее следует изменить параметр C:\ProgramData\Microsoft\Windows\AppRepository если переносится на D:\ значит будет D:\ProgramData\Microsoft\Windows\AppRepository. Вот и всё ..ах да вот
адрес

Помогите пожалуйста. Уже второй день бьюсь. После выполнения шагов 4, 5 (на W7): перезагружаюсь, захожу под аккаунтом Test и первое что вижу это — C:\windows\system32\config\systemprofile\Desktop ссылается на недоступное расположение…», а зайдя в папку Users на диск F (в моем случае F) — не обнаруживаю в ней папку ‘Test’, которая должна там появиться..

Попробуйте вот что:
Не переносите папку Default на F:\Users.
Параметр реестра Default оставляем C:\Users.
Проверяем правильный ли путь указан в параметре ProfilesDirectory (должен быть F:\Users).
Пробуем по новой создать пользователя Test.

Спасибо! Продвинулся на шаг вперед, но финальной цели так и не достиг: под аккаунтом ‘Test’ удалось зайти без проблем и в папке на диске F в Users’ах появилась папка ‘Test’.
В шаге 8 — C:\Users в Users-old переименовь не удалось — ну это изза того что в ней задействована папка Default видимо.
В шаге 9 — команда mklink /j c:\Users f:\Users выдает, что такая связь «уже создана», остальные команды сообщили об успешном создании связей и после перезагрузки и заходом под основным аккаунтом, я понял что все работает по старому, то есть например tmp файлы браузера хром и интернет эксплорер по прежнему грузяться в С:\users а не в F:\Users. Убедился в этом зайдя по пути например: c:\Users\ASUS\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\ и обнаружил свежие файлы.
Как всетаки заставить работать Users на диске F?

Немного самокритики: я никогда небыл гением и тем кто схватывает все моментально на лету, при этом автоматически додумывая в уме, недосказанное автором, потому как, по его мнению это очевидно. Но есть у меня и плюс — если уж я до чего-то понастоящему докопаюсь, то в итоге сделаю, пусть даже на это уйдет неделя, как вышло у меня с переносом папки Users по данной статье. В то же время я понимаю, что это можно было сделать за несколько часов, дай автор, хотябы небольшое обьяснение-разжевывание к каждому пункту инструкции в статье. Понимаю что многие вещи (шаги) очевидны для автора и не трубуют (повторюсь) разьяснения — почему все делается именно в такой последовательности и что конкретно дает каждый шаг. Но существуют люди, наподобие меня, не знакомые настолько хорошо с реестром и особенностями например системы, для которых хоть маленькое разьяснение очень бы пригодилось, и не пришлось бы перерывать все комментарии, чтобы по крупицы для себя сложить понимание «А что и зачем, собственно, я делаю?», а не делать это бездумно и тупо выполняя шаги прописанные автором, и потом совершенно не соображая, «что сделано не так и почему ничего не получилось?»
В итоге спустя неделю, уже начитавшись на подобную тематику, кучу подобных статей, я все таки, не без помощи данной статьи, перенес таки, эту злосчастную папку Users на диск F!
Частично спасибо автору (чтобы уж совсем не быть неблагодарным), но статья нуждается в тотальной переработке для понимания ее обычными людьми, а не исключительно гуру компьютера. И кстати очень многие пункты данной статьи не работают в том виде как представлены здесь — например для переименования папки Users в UsersOld пришлось прибегнуть к помощи программы «Unlocker 1.9.1» дабы разлочить процессы задействованные данной папкой, даже несмотря на то, что находился под аккаунтом «Test» и это далеко не единственная неточность статьи. Также была проблема, описанная выше мной же в комментарии насчет ошибки захода под аккаунтом Test, решение которой исключает пунтк 4 статьи ( поменять ключи в реестре с Default на D:\Users\Default) Так зачем тогда такое писать в инструкции если это не работает? И еще много-много подобных вопросов к автору, всех неописать, итак длинно очень получилось!

С критикой в общем согласен. Статья устарела.
Написана она была в 2010 году и на тот момент инструкция работала на все 100%, что и отражено на видео.

С той поры утекло много времени, так что всех интересующихся призываю читать статью + комментарии )

Проблема давно решена в *nix-системах. Папка «home» в них может находиться где угодно. В эту папку даже могут ставиться и программы, предназначенные для конкретного пользователя. В Win7 сделали нечто подобного рода, и назвали для отличия «users». А вот про перенос ее забыли.

Способ не рабочий.
Проделывал всё в точности как написано: C:\Users не переименовывается и не удаляется, все ссылки ведут по старому пути, в проводнике возникают ошибки.
Зря потратил время.

Прочитай мантру «Ёлло пуки! Ёлло Пуки! Переставь мне с ж*** руки!» 3 раза и всё будет хорошо.

С началом массового использования SSD проблема, имхо, обострилась.
Не хочется забивать твердотельник небольшого объема, на котором к тому же желательно иметь процентов 50 свободными, всяким мусором. Про неудобство хранения данных на системном разделе уж и не говорю. Пора бы разработчикам задуматься…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Срок проверки reCAPTCHA истек. Перезагрузите страницу.