Windows 2008 перенос профиля пользователя на другой диск

По умолчанию папка Users находится на системном диске. На системном диске эта папка начала мешать.
  • Remove From My Forums
  • Вопрос

  • По умолчанию папка Users находится на системном диске. На системном диске эта папка начала мешать.

    Пользователи забивают свои профили мусором — системный диск не резиновый. Работа пользователей начинает мешать ОС. Пользователи терминальных сессий активно работают, а в это время ОС не может нормально работать со своим pagefile.

    Как правильно перенести папку Users на другой, не системный диск? Также, новые пользователи сразу должны получать профили в переадресованной папке, а не на системном диске.

Ответы

  • Просьба к модераторам форума.

    Закройте обсуждение. Текущее обсуждение и заголовок обсуждения уже не соответствуют друг другу.

    Причина по которой я начал обсуждение была потеря производительности 1C v8 при работе под Windows 2008 R2. Первое впечатление было — 1С v8 производит огромное количество операций с системным диском.

    Перенос pagefile.sys с системного диска (физического) на другой физический диск уменьшил потерю производительности 1С v8 примерно на 20%. После «хитрых» операций удалось перенести профиль пользователя с системного диска (Microsoft
    сообщает, что это возможно, но только в тестовых целях). Производительность 1С v8 поднялась ещё примерно на 20%. Поэтому потеря производительности 1С v8 более чем в 10 раз, врядли связана с расположением временных папок пользователя.

    • Помечено в качестве ответа

      29 июня 2010 г. 5:47

  • Вот же ты гнида! Ну кто тебя спрашивает то? Не суй свой нос в дела взрослых баран. Ненавижу таких правильных как ты — шестёрка!!!

  • Главная » Статьи » Windows Server » Перенос папки профилей пользователей (Users) в ОС Windows server 2008 r2 на этапе установки

    Loading...Loading…

    Print Friendly

    Иногда, в меру ряда причин, остро встает задача переноса папки профилей пользователей с системного диска на другой логический или физический диск, например:

    1. Необходимость разделения оперативной информации (система) и архивных данных (данные пользователей) обусловленная, к примеру, необходимостью хранения системных файлов на высокоскоростном, но менее надежном массиве дисков RAID0;
    2. Отсутствие необходимости дополнительного переноса информации при переустановке ОС.
    3. По сравнению с переносом отдельного профиля пользователя перенос папки Users более предпочтителен, поскольку профили всех последующих пользователей компьютера будут также сохранены в нужном месте, и не будет необходимости снова проделывать процедуру переноса.

    Одним из наиболее правильным методов осуществления такого переноса является возможность определения месторасположения папки профилей пользователей на этапе установки системы. Такую возможность в отношении Windows server 2008 r2 нам предоставляет Microsoft под названием Audit Mode. Подробнее об этом режиме можно почитать в следующей статье. Единственный нюанс, то, что в статье написано не подходит для сервера, т.к. в нем нет экрана на котором предлагают назвать компьютер и создать пользователя. Хотя на самом деле для серверной версии все оказалось на много проще. И так, потратив некоторое время на поиск решения, появился следующий сценарий.

    Теперь собственно о сценарии переноса папки Users:

    1. Необходимо создать файл ответов и положить его в корень флешки.
    2. Перед началом установки нужно правильно установить диски. Определение в системе начинается с порта с меньшим номером. На первый мы устанавливаем ОС, на втором у нас будут находиться папки профилей.
    3. Начните установку Windows server 2008 r2, на этапе настройки дисков, отформатируйте оба диска (обязательно оба!!!). И укажите установку на первый.
    4. После того как началось копирование файлов, подключаем флешку в корне которой лежит файл ответов. ( не знаю почему, но если ее подключить сразу ничего не получается)
    5. Дожидаемся окончания установки, входим в систему и видим папки Users  и ProgramData на диске который мы указали в файле ответов, в данном случае диск D:

    Для предотвращения ошибок, связанных с явным указанием прежних путей папок профилей пользователей создадим при помощи утилиты mklink две символические ссылки:

    mklink /D C:Users D:Users
    mklink /D C:ProgramData D:ProgramData

    Так как я собирал сервер на дисках SSD, то решил перенести папку временных файлов то же на диск D, по этому в настройках расположения временных папок я указал путь D:Temp и создал еще одну ссылку:

    mklink /D C:Temp D:Temp   (в принципе она не обязательна, на всякий случай)

    Таким образом теперь даже при обращении по прежним путям любая программа не заметит подмены и будет работать с папками на диске C, хотя фактически они будут расположены в настроенном Вами месторасположении.

    Ситуация 1. Переносим профили на другой сервер.

    Можно сделать через групповые политики и перемещаемые профили, но проще всего перенести ветку реестра:

    HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList

    и папки пользователей копированием.

    Ситуация 2. Переносим профили на другой диск.

    Зачем это надо? Для терминального сервера. За несколько лет размер занятого пространства диска C: (загрузочного раздела) может вырасти до сотен гигабайт и возникнут проблемы с резервным копированием, как это получилось у меня. Расчищая диск C: сразу увидел, что профили занимают больше 100GB. И квоты в общем-то тут не решат ситуацию, если квоты вообще допустимы для данной организации. Если пользователи работают с тонких клиентов и терминальный сервер получается единственным местом для хранения их информации, то объём этой информации будет расти и расти.

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

    Первый вариант

    Если система только-только установлена меняем значение ProfilesDirectory «%SystemDrive%Users» на новое расположение, в ветке реестра:

    HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList

    профиль Администратора останется на старом месте, новые уже будут созданы по новому пути. Этого вполне достаточно. Однако при таком методе возможны проблемы при обновлении системы в дальнейшем.

    Второй вариант

    Другой вариант когда система относительно свежая, но уже есть пользователи и программы. В этом случае некоторые программы, например MS Office, прописали абсолютные пути к профилям на диске C:. Тогда лучше переместить все профили скриптом и создать символическую ссылку папки Users на новое месторасположение, загрузившись с установочного диска в командную строку:

    robocopy C:Users D:Users /E /COPYALL /XJ 
    rmdir C:Users /S /Q 
    mklink /D C:Users D:Users

    если в указании пути будет пробел, то нужно заключить путь в кавычки. Можно дополнить ключом перезагрузки:

    Shutdown -r -f -t 00

    и пойти пить чай.

    В реестре при этом менять ничего не надо и в этом большой плюс этого метода — система «думает», что все по прежнему на диске C:/ и корректно работает через символическую ссылку. Проверить можно набив путь к профилю пользователя как C:Users»какой-то пользователь» и откроется он именно как C:Users….., а не как D:Users…. (при переносе на D).

    Установка разрешений

    После переноса папок профилей для каждой из них нужно обязательно отключить наследование разрешений и поменять разрешения безопасности на следующие:

    1. System — Полный доступ;
    2. Administrators — Полный доступ;
    3. Учётка пользователя — Полный доступ;
    4. Больше ничего быть не должно.

    Перенос профиля пользователя

    Для самой папки Users разрешения следующие:

    1. System — Полный доступ;
    2. Administrators — Полный доступ;
    3. Users — Чтение/Выполнение;
    4. Все — Чтение/Выполнение.

    То есть для корректной работы системы все разрешения в новом расположении должны соответствовать разрешениям, какие были на диске C:. Это важно.

    Если же система довольно старая, профили по несколько гигабайт, пользоваться скриптом не рекомендую, лучше делать руками и не копировать, а перемещать, контролируя начальный размер папки профиля и размер перенесенного. В этом случае, это понятно и очевидно, ссылку для всей папки C:/Users создать нельзя, так как в ней есть открытые файлы нашего текущего профиля. Профили переносятся отдельно. Ссылка создаётся для каждого профиля отдельно. Свой профиль либо можно оставить и не переносить, либо перенести, временно создав второго админа. Создать, залогиниться под ним, перенести свой профиль, создать ссылку, установить разрешения, разлогиниться, зайти под собой, убить второго админа.

    Одно замечание — при создании символических ссылок сразу проверяйте их работоспособность. Особенно когда ссылок создается сразу много.

    Решение проблем

    Возможные проблемы при копировании/переносе заключается в отсутствии доступа к какому-либо файлу:

    1. Нет прав на каталог;
    2. Блокировка файла процессом;
    3. Невозможность удаления файла.

    Если нет прав на каталог, тогда нужно стать владельцем контейнера и входящих в него объектов:

    Перенос профиля пользователя

    затем добавить себе полные права на контейнер и заменить наследуемые разрешения для потомков. После этого можно переносить/удалять.

    Если блокировка процессом, тогда рекомендую программу Unlocker — много вирусов под видом этой программы. Попробуйте вот эту версию, должна быть без вирусов.

    Невозможность удаления файла проявляется в основном файлами нулевого размера с точкой в конце имени файла. При попытке удаления появляется ошибка:

    Перенос профиля пользователя

    В этой ситуации отлично помогает Far Manager, находите файл и нажимаете Alt-Del, затем кнопку «Wipe».

    Перенос профиля пользователя

    Все изложенное опробовано в «боевых условиях» продакшена. Пока «полет нормальный», если возникнет ещё что-то, тогда напишу дополнение.

    Дополнение от 14.06.2016

    Оказалось, что если диск с символической ссылкой, созданной с ключом /D, открыт как сетевой на другом компьютере, то переход по данной ссылке заканчивается ошибкой: — «Символическая ссылка не может быть загружена, так как её тип отключен». Для устранения данной ошибки ссылку нужно пересоздать с ключом /J (junction).

    Дополнение от 15.06.2016

    Папка Users на диске C:/ была заменена символической ссылкой на другой диск, при этом в реестре ничего не менялось. Обновление с Windows 2008 до 2008 R2 прошло успешно. Установка заменила символическую ссылку на папку и создала в ней дефолтные профили всех пользователей. После установки удалил данную папку и пересоздал ссылку.

    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    1

    18.03.2013, 07:15. Показов 44738. Ответов 14


    Есть 2 сервера на Windows Server 2008 R2 x86 и x64
    Один сервер идет на замену другого. Старый сервер используется, как Терминал Удаленных Рабочих столов, соответственно на нем много профилей пользователей.
    Скажите пожалуйста, как правильно перенести эти профили с одного сервака на другой.

    __________________
    Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



    0



    81 / 81 / 7

    Регистрация: 07.12.2012

    Сообщений: 540

    18.03.2013, 17:52

    2

    если настройки путей будут совпадать, в чем проблема ctrl+c ctrl+v

    Если нужно сохранить ACl, воспользоваться robocopy



    1



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    18.03.2013, 20:05

     [ТС]

    3

    Да, будут совпадать. В реестре ничего дополнять ненужно?
    ACI подробнее, что это?



    0



    81 / 81 / 7

    Регистрация: 07.12.2012

    Сообщений: 540

    19.03.2013, 10:37

    4

    Цитата
    Сообщение от bandit541
    Посмотреть сообщение

    Да, будут совпадать. В реестре ничего дополнять ненужно?
    ACI подробнее, что это?

    я имел ввиду прав доступ NTFS, если не нужно, то просто копируете да и все.



    0



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    19.03.2013, 11:45

     [ТС]

    5

    Скопировал один профиль для теста. При входе говорит: «Подключение было запрещено, так как учетная запись пользователя не имеет прав для удаленного входа в систему.»



    0



    81 / 81 / 7

    Регистрация: 07.12.2012

    Сообщений: 540

    19.03.2013, 11:52

    6

    Подключение было запрещено, так как учетная запись пользователя не имеет прав для удаленного входа в систему Эта надпись лишь говорит о том, что терминальный сервер настроен не корректно, или вы не добавили пользователи на вкладке удаленный доступ. ?

    Добавлено через 2 минуты
    Я делал так, создавал группу например Terminal 1C, добавлял ее в Удаленных пользователей в свойствах системы, а в АД уже раскидывал нужную группу, нужным людям.



    0



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    19.03.2013, 11:52

     [ТС]

    7

    Есть права у этого пользователя удаленно подключатся. Он спокойно подключается на старый сервер.



    0



    81 / 81 / 7

    Регистрация: 07.12.2012

    Сообщений: 540

    19.03.2013, 11:58

    8

    Цитата
    Сообщение от bandit541
    Посмотреть сообщение

    Есть права у этого пользователя удаленно подключатся. Он спокойно подключается на старый сервер.

    и что? ну а на новый сервер прав у него значит нет…… вы сами попробуйте, комбинаторика

    Все это делать надо на новом сервере и проверять!

    удалите скопированый профиль зайдите под пользователем, сможет он зайти? ( создасцо дефолтный профиль. если не указан иной путь в свойствах учетки в АД )

    Если да? значит была проблема в правах на профиль скопированный

    Если нет? все то, что я и сказал, проблема в том, что ОН НЕ ИМЕЕТ ПРАВ НА УДАЛЕННЫЙ СЕАНС НА НОВОМ СЕРВЕРЕ! во вкладке удаленный доступ.



    0



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    19.03.2013, 13:11

     [ТС]

    9

    Все, пардон. Не добавил группу пользователей домена для удаленного подкл. Вы были правы. Сейчас заново попробую!

    Добавлено через 1 час 10 минут
    Не хочет воспринимать профили пользователей простым копированием. Создает папку с именем пользователя и дописывает через точку имя домена.



    0



    81 / 81 / 7

    Регистрация: 07.12.2012

    Сообщений: 540

    19.03.2013, 13:17

    10

    После того как скопировали профиль, выставите в свойствах безопасности доступно всем, проверьте подгрзут эту папку? могло случится так, что у пользователя элементарно, не прав на свой профиль… в логах такое бы отобразилось.

    Добавлено через 1 минуту
    И еще, это как ?

    Есть 2 сервера на Windows Server 2008 R2 x86 и x64



    0



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    19.03.2013, 13:19

     [ТС]

    11

    Это значит один сервер С Win Serv 2008 R2 x64
    Второй Win Serv 2008 R2 x86



    0



    81 / 81 / 7

    Регистрация: 07.12.2012

    Сообщений: 540

    19.03.2013, 13:25

    12

    Windows Server 2008 R2 — серверная операционная система компании «Microsoft», являющаяся усовершенствованной версией Windows Server 2008. Поступила в продажу 22 октября 2009[1]. Как и Windows 7, Windows Server 2008 R2 использует ядро Windows NT 6.1. Новые возможности включают улучшенную виртуализацию, новую версию Active Directory, Internet Information Services 7.5 и поддержку до 256 процессоров. Это первая ОС Windows, доступная только в 64-разрядном варианте.



    1



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    20.03.2013, 06:40

     [ТС]

    13

    Спасибо вам за помощь. Все получилось. Перенес профили и они заработали!

    Добавлено через 16 часов 32 минуты
    Может быть кому надо будет.
    1. Скопировал все профили из папки Users
    2. Перенести ветку реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList Для каждого профиля, который хранится локально, внутри этого раздела реестра создается подраздел. Узнать где чей профиль достаточно просто откройте любую ветку и посмотрите значение параметра ProfileImagePath.
    С которого переносите реестра, делаете Экспортировать прям всю папку ProfileList (если конечно все нужны профили) и кидаете на тот сервак где хотите её вмонтировать, далее открываете и вносятся изменения в реестр. Готово.



    1



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    21.03.2013, 07:03

     [ТС]

    14

    Может возникнуть такая трабла, вроде профили перенесены и в реестр добавлены но Винда все равно пускает с временным профилем Temp. Чтобы этого не было копируйте профили с правами NTFS.
    Если уже скопировано без прав: добавляйте права на каждого профиля (имею ввиду папку с названием профиля).



    0



    9 / 9 / 1

    Регистрация: 28.07.2011

    Сообщений: 101

    22.03.2013, 10:29

     [ТС]

    15

    Дело в следующем. 2 дня танцов с бубном по переносу профилей с одного сервера на другой.
    100 профилей т.е. 100 папок.
    Были выявлены некоторые недочеты в инструкции выше.
    Теперь все заработало. Пишу ещё раз:
    1. Грузимся в «безопасном режиме с поддержкой сетевых драйверов». Грузим тот сервак с которого хотим перенести профили.
    2. Копируем профили с правами NTFS. Легко делается в Total Commander. (TC запускаем от имени администратора). Убеждаемся что права скопировались. Правой кнопкой на любом из профилей(папка с именем профиля) жмем , свойства, безопасность в этой вкладке группа и пользователи должно находится имя профиля. Если видите значит все ОКИ Чпоки!
    3. Переносим ветку реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList Для каждого профиля, который хранится локально, внутри этого раздела реестра создается подраздел. Узнать где чей профиль достаточно просто откройте любую ветку и посмотрите значение параметра ProfileImagePath.
    С которого переносите реестра, делаете Экспортировать прям всю папку ProfileList (если конечно все нужны профили) и кидаете на тот сервак где хотите её вмонтировать, далее открываете и вносятся изменения в реестр. Готово.

    Добавлено через 1 минуту

    Цитата
    Сообщение от bandit541
    Посмотреть сообщение

    Спасибо вам за помощь. Все получилось. Перенес профили и они заработали!

    Добавлено через 16 часов 32 минуты
    Может быть кому надо будет.
    1. Скопировал все профили из папки Users
    2. Перенести ветку реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList Для каждого профиля, который хранится локально, внутри этого раздела реестра создается подраздел. Узнать где чей профиль достаточно просто откройте любую ветку и посмотрите значение параметра ProfileImagePath.
    С которого переносите реестра, делаете Экспортировать прям всю папку ProfileList (если конечно все нужны профили) и кидаете на тот сервак где хотите её вмонтировать, далее открываете и вносятся изменения в реестр. Готово.

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



    1



    Like this post? Please share to your friends:
  • Windows 2008 контроль учетных записей отключить windows
  • Windows 2008 как добавить пользователя в группу
  • Windows 2008 как включить telnet windows
  • Windows 2008 запуск от имени другого пользователя
  • Windows 2008 загрузиться в безопасном режиме