Рубрики
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) на другой диск”

Огромное спасибо!!!! С трудом но все же удалось перебороть . Все правильно написано в иструкции просто очень тяжело все это сделать если до этого ничего подобного не делал

Спасибо, помогло!
Не сразу… были проблемы на шагах 6-8. Но в итоге все работает.

Впервые поставил себе Win7, сразу столкнулся с необходимостью переноса папки Users. Поиски привели на эту страничку, спасибо автору. Внимательно изучил инструкцию, а равно как и несколько других, имеющихся в Инете, и возникло несколько вопросов:

1. Какая разница между симлинком на каталог (mklink /d) и junction (mklink /j)? Дело в том, что в другой похожей инструкции http://www.itcommunity.ru/blogs/myknowledgeshare/archive/2010/12/07/138240.aspx автор использует команду mklink с ключом /d, Вы же используете ключ /j. Почитал описание ключей этой команды, разницу между ними не понял.

2. Поскольку ось только поставил, еще толком не настроил, предпочел бы полностью ее переустановить, задав нужное расположение папки Users еще на этапе установки. Опять же, изучал несколько похожих инструкций, как это сделать — Вашу по ссылке https://www.q2w3.ru/2010/08/28/2165/ и уже упомянутого выше автора http://www.itcommunity.ru/blogs/myknowledgeshare/archive/2010/12/07/138237.aspx . Что можете сказать про его метод, могут там быть подводные камни? Кстати, там он тоже использует ключ /j. Просто его метод прельщает тем, что не надо пользоваться сторонним софтом для создания файла автоматической установки (создать файл из двух строчек мне проще вручную).

1.
/d — создается мягкая (soft) ссылка. На самом деле это ярлык, если посмотреть свойства такой ссылки, то в них будет вкладка Ярлык с указанием цели ссылки.
/j — создается жесткая (hard) ссылка. Полная имитация, что это папка (в свойствах уже не будет вкладки Ярлык). Я предпочитаю /j, т.к. это более полная имитация. Но, должен сказать, что по факту разницы нет. Работает и тот и другой вариант.

2.
Способ установки, в приведенной вами ссылке, имеет право на жизнь. Я же просто предпочитаю задать все настройки заранее и пойти пить чай на время установки )) Насчет Windows AIK — штука это полезная и позволяет не запоминать все многочисленной опции доступные для настройки. Поэтому, если хотите подкрутить в системе что-то еще, то без него вам скорее всего не обойтись. Если же хотите ограничиться только переносом папок, то можно не заморачиваться и действовать по той инструкции. Одно НО. Мне кажется, п.4 там содержит ошибку — формат явно не соответствует xml. Возможно, при публикации парсер просто вырезал «лишние» строки…

1. Про ключи понял, спасибо.

2. Подумал тоже самое, когда изучал эту статью. Но поскольку никогда не видел структуры файла для автоматической установки, думал, что достаточно этих двух строк в файле, созданном в Блокноте. Значит ошибался.

В общем, уже качаю набор для автоматической установки Виндоус, мне этот способ автоматизации прописывания расположения папок пользователей кажется наиболее корректным и понятным.

Когда Вы подумаете: «все! этот танец с бубном я закончил!»,  пройдитесь поисковиком в реестре на предмет обнаружения » C:\users\ «, и Вы продолжите танец :), особенно весело будет, если Вы затеяли это дело на забитой всякими прогами системе…

Здравствуйте! Подскажите, пожалуйста, у меня Vista, не могу добавить новые скачанные шаблоны в PowerPoint 2007. Как это сделать? Буду очень благодарен

Вопрос, конечно, не по теме…
Ну да ладно. Совет из Гугла:
In your download there are Powerpoint Template Files (.pot). To install them, simply move those folders to: C:\Program Files\Microsoft Office\Templates\.pot files. In case you can’t find that directory try to copy files into this one:
C:\Documents and Settings\%user%\Application Data\Microsoft\Templates\
There %user% is your windows’ login name.

Как на Винде 7 Домашняя Базовая переименовать КОРЗИНУ. В реестре не даёт изменять значения — пишет ошибка. Дайте урок плиз!  ))))

А также как и обычный ярлык не получается что ли?!?
Правый клик по корзине, в меню выбрать Переименовать…

и ещё запускаем cmd ввожу там linkd «Dokument and settings» d:\Users  пишет, что linkd не является внутренней и внешней командой….

Смотри , для xp,  в первой S-1-5-18 есть Profile ImagPath с %systemroot%\system32\config\systemprofile нужно менять на что?

Ещё мне не дает выполнить 8 шаг (переименование document and settings), пишет что приложение чем то занято..

Скажите, а на диске с: символьная ссылка  c:/Users после всех этим манипуляций должна остаться?

Винда считает объем по этой ссылке и все равно получается что место под папку Юзерс резервируется на диске с :-(

Нее! Нифига подобного.
Точнее, если свойства ссылки открыть, то да считается размер папки Users (той что на другом диске). Но винда не настолько глупая. У меня Users около 80 Гигов занимает, а системный диск 40. Так что все ок.

кстати, с этим связана одна фтука, когда проверяешь комп на вирусы, то если для проверки отмечены оба диска C и D, то антивирусник будет проверять вдвое дольше, ибо сначала проверяя диск С он наткнётся на ссылку и пойдёт по ней как бы не выходя за пределы диска C, а потом ещё разок проверит те же данные только уже при проверке диска D. будте внимательны!

проблема как у Евгения. свеженькая пустая семерка, при переносе на 6-ом пункте трабл — не заходит под новым пользователем test. там же при первом заходе с только что созданным пользователем появляется надпись Подготовка рабочего стола… , так вот эта надпись висела минут восемь, а потом всё-таки зашло, но на рабочем столе голяк, даже обоев нету, и окно ошибки появилось, вот что там написано:
C:\Windows\system32\config\systemprofile\Desktop ссылается на недоступное расположение. Это может быть диск или сетевой ресурс. Убедитесь, что диск вставлен… ну и так далее. при чем эта ошибка возникает снова при открытии любых окон проводника, например Мой компьютер. окна открываются, но ошибка появляется. в журнале ошибок в пункте Приложение есть две ошибки, посвященные неправильному входу:
Ошибка 1505 — Windows не удалось загрузить профиль пользователя, поэтому вход в систему выполнен с помощью стандартного системного профиля. ПОДРОБНО — Системе не удается найти указанный путь.
и Ошибка 1511 — Windows не удалось найти локальный профиль пользователя, вход в систему выполнен с временным профилем. Любые изменения профиля будут потеряны при выходе.

при этом папка пользователя test не создаётся вообще нигде, ни на С: ни на D:, а также почему-то нигде не появляется папка временного пользователя temp, хотя по идее должна…
предыдущие пункты выполнены в точности и без проблем, папка Default перенесена, все диски в NTFS, при откате изменений папка нового пользователя успешно создаётся в C:\Users

Win7 Ultimate, 32-битная, не сборка, образ лицензионного диска, активирована Win7 loader XE

кстати, ошибка системного профиля вылезает в тему, в папке :\Windows\system32\config\systemprofile действительно нет ничего, кроме AppData и файлов ntuser, наверно так быть и должно. но вот почему в новой папке Users на диске D: не создаётся даже временный пользователь??

Есть ощущение, что за эту ошибку ответственен какой-то апдейт. В гугле полно вопросов по этой ошибке, но нет решений ) Причем у народа ошибка случается просто так без всякого переноса профилей…

Попробуй такое безумной решение: скопируй папку desktop из какого-нибудь профиля в windows\system32\config\systemprofile. Чем черт не шутит, может и поможет.

ну оно-то конечно помогло, теперь ошибка «…ссылается на недоступное расположение» пропала, потому что расположение стало доступным. но меня интересует другое — почему вообще активируется системная учетная запись из папки systemprofile? ведь при первом запуске с новым пользоателем должна создаваться папка этого пользователя в Users, а если произошла ошибка входа — то в Users создаётся папка Temp и вход производится из неё. но тут как будто система не воспринимает новый путь к папке Users и не может создать там ни папку пользователя ни папку Temp. пока в реестре написано %SystemDrive%\Users — всё работает, если пишу другой диск — вафли, загружается системный профиль..

всё ништяк, проблема решена. видимо, дело было в останках старой винды ХР, которая раньше была в этом разделе. раздел очищался быстрым форматированием, наверно оставались какие-то ошмётки. загрузился с загрузочной флешки и качественно отполировал раздел акронисом, после чего заново поставил семёрку. перенос прошел успешно =) извини за беспокойство. и спасибо за эту статью — реально крутой мануал, особенно кино))

О! Хорошо как! )

Слушай может дело в разделе на который ты ставил. Мне тут написали, что тоже были проблемы с переносом, но во время установки:

«Очень долго маялся с ошибками в самом конце при установке. Для того, чтобы установщик подхватил второй форматированный раздел как диск D, этот раздел должен быть на Logical partition. Я акронис диск директором создал примари партишн для системы и логикал партишн для раздела с данными. При установке форматнул оба штатными средствами установщика и впервыйпоставил винду. До тех пор, пока второй раздел был у меня таким же основным как и системный винда писала ошибку: Не могу установить виндовс на ваше железо.»

 

не, в этом плане всё чётко с самого начала было — только системный раздел основной, все остальные диски логические. просто меньше надо быстрому форматированию доверять) а тот метод, которым диск форматится в процессе установки семёрки ваще никуда не годится. кароч наверно надо счас сделать себе образ системного диска со всеми прогами и настройками чтоб в следующий раз не парится. там же, я так понимаю, создаётся полная копия системы, так что заново Users переносить не надо будет, и вообще все настройки сохранятся вплоть до обоев на десктопе, так?

> там же, я так понимаю, создаётся полная копия системы
Да, только папку Users тоже забэкапить надо. А то полетит диск, восстановишь системный, но без Users — прикол будет)

хехе) не, у меня папка Users вообще на другом харде, так что всё будет пучком. спасибо)

Всплыла та же проблема. После долгих экспериментов отследил, что появляется она только в случае если при копировании default и public поставить галку на «copy NTFS permissions…».
Может поможет кому-то…

Поддерживаю!! Была та же ошибка. Удалил папку Users с диска D. Заново создал папку и скопировал папки Public и Default без копирования прав доступа. Ошибка исчезла.

Поддерживаю! Заново скопировал Public и Default без копирования прав доступа, и ошибка исчезла!

Решил добавить, что ОС — Windows 7 Home Basic.

Аналогично.
После повторного копирования папок (без копирования прав) test нормально загрузился. Но после переноса своего профиля — он не загружается, а загружается временный пользователь.
Всё так же колдовал с правами на папки — переносил и без копирования прав и с копированием, и вручную потом мутил с этими правами — всё без толку, не запускается свой профиль никак :(

Проверьте разрешения безопастности на саму папку «D:\Users», проставьте такие же как на папку «C:\Users» всё лишнее убрать в том числе наследования от диска D:\.

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

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


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