Avallach
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Stratege Да не на много сложнее и мучительнее, там описано практически то же самое но более подробно. А папки у меня не копируются потому, что это не папки, а линки (правда не пойму, то ли софт, то ли хард, имхо, что-то среднее). Если б их пересоздать чем, то песня была бы. Кстати, это только в SP1 так, или в оригинальной висте тоже было? З.Ы. Ща буду mklink мучать, может и получится что-то. Добавлено: Ну что ж. Кое-что у меня все таки получилось. Вроде работает. Расскажу как, может кому пригодится. Буду писать план, в виде действий с объяснениями. Для упрощения расскажу про перенос только одного профиля. - Перво-наперво, я включил системную запись администратора. Сделать это можно через MMC (щелчок по "Моему Компутеру" правой клавишей -> "Управление", потом выбираете в дереве "Локальные пользователи и группы", в них "Пользователи". В свойствах пользователя "Администратор" снимаете галку "Отключить пользователя".
- Потом я перезагрузился, чтобы система наверняка отпустила все файлы в каталогах пользователей и зашел под аккаунтом "Администратор".
- Запустил "Проводник" в режиме администратора и создал на диске D: папку Users.
- Поменял права на "D:\Users", исходя из прав на системный Users. Т.е. оставил только "Чтение и выполнение" для группы "Все" и "Полный доступ" для групп "Администраторы" и "System", наследование от родителя, ясен пень не нужно. Владелец папки, как ни странно, группа Администраторы. Знач, так тому и быть.
- Тем же Проводником в админ-режиме скопировал папку своего юзера в "D:\Users". А вот дальше пришлось пожариться с линками, которые виста создает на "Application Data", "Local Settings" и прочую подобную чепуху, типа "SendTo".
- Проводник не умеет копировать линки, точнее если пользоваться виндовой терминологией, то сии штуки называются "junction". Посему, я запустил cmd в админ-моде и пошел смотреть на "C:\Users\Андрей" c помощью "dir /ah". Наблюдается такая картина:
Код: C:\Users\Андрей>dir /ah Том в устройстве C не имеет метки. Серийный номер тома: CE5F-27F7 Содержимое папки C:\Users\Андрей 12.01.2009 16:20 <DIR> AppData 12.01.2009 16:21 <JUNCTION> Application Data [C:\Users\Андрей\AppData\Roaming] 12.01.2009 16:21 <JUNCTION> Cookies [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\Cookies] 12.01.2009 16:21 <JUNCTION> Local Settings [C:\Users\Андрей\AppData\Local] 12.01.2009 16:21 <JUNCTION> NetHood [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\Network Shortcuts] 12.01.2009 17:59 1 048 576 NTUSER.DAT 12.01.2009 17:59 262 144 ntuser.dat.LOG1 10.01.2009 16:25 0 ntuser.dat.LOG2 12.01.2009 16:52 65 536 NTUSER.DAT{42133cf1-6a70-11db-bbc9-fdca8d8bcc9d}.TM.blf 12.01.2009 16:52 524 288 NTUSER.DAT{42133cf1-6a70-11db-bbc9-fdca8d8bcc9d}.TMContainer00000000000000000001.regtrans-ms 10.01.2009 16:44 524 288 NTUSER.DAT{42133cf1-6a70-11db-bbc9-fdca8d8bcc9d}.TMContainer00000000000000000002.regtrans-ms 10.01.2009 16:25 20 ntuser.ini 12.01.2009 16:21 <JUNCTION> PrintHood [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\Printer Shortcuts] 12.01.2009 16:21 <JUNCTION> Recent [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\Recent] 12.01.2009 16:21 <JUNCTION> SendTo [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\SendTo] 12.01.2009 16:21 <JUNCTION> Главное меню [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\Start Menu] 12.01.2009 16:21 <JUNCTION> Мои документы [C:\Users\Андрей\Documents] 12.01.2009 16:21 <JUNCTION> Шаблоны [C:\Users\Андрей\AppData\Roaming\Microsoft\Windows\Templates] 7 файлов 2 424 852 байт 11 папок 18 808 184 832 байт свободно | - Ну,что ж тут поделаешь, создал такие же junction c помощью mklink в профиле на диске D:. Дабы долго не парится (пользователей-то целых три) написал батник (запускался из каталога профиля "D:\Users\Андрей"):
Код: mklink /J "Application Data" "AppData\Roaming" mklink /J "Cookies" "AppData\Roaming\Microsoft\Windows\Cookies" mklink /J "Local Settings" "AppData\Local" mklink /J "NetHood" "AppData\Roaming\Microsoft\Windows\Network Shortcuts" mklink /J "PrintHood" "AppData\Roaming\Microsoft\Windows\Printer Shortcuts" mklink /J "Recent" "AppData\Roaming\Microsoft\Windows\Recent" mklink /J "SendTo" "AppData\Roaming\Microsoft\Windows\SendTo" mklink /J "Главное меню" "AppData\Roaming\Microsoft\Windows\Start Menu" mklink /J "Мои документы" "Documents" mklink /J "Шаблоны" "AppData\Roaming\Microsoft\Windows\Templates" | Заодно узнал интересную вещь - чтобы русские имена нормально создавались из батника, надо его сохранять в кодировке CP866, причем обязательно, иначе будут закорючки (может я просто уже не помню? или это фича висты?). Теперь надо бы сделать эти каталоги скрытыми и системными, как в оригинале. Де-то, а-ля вот так: Код: attrib /S /D /L +H +S "Application Data" attrib /S /D /L +H +S "Cookies" attrib /S /D /L +H +S "Local Settings" attrib /S /D /L +H +S "NetHood" attrib /S /D /L +H +S "PrintHood" attrib /S /D /L +H +S "Recent" attrib /S /D /L +H +S "SendTo" attrib /S /D /L +H +S "Главное меню" attrib /S /D /L +H +S "Мои документы" attrib /S /D /L +H +S "Шаблоны" | У меня каталогов и junc'ов может быть чуть меньше, ибо все зеленые папки (там, Документы, Музыка) из домашнего каталога были перенесены до того. Внимательно изучайте вывод DIR. - Дальше я поменял значение "ProfileImagePath" в ключе
Код: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\%usersid% где %usersid% - длинный нечитаемый идентификатор пользователя | c "C:\Users\Андрей" на "D:\Users\Андрей" - Еще я переименовал каталог профиля в "C:\Users\", чтобы к нему уже никто не обращался.
- Потом был ребут, чтобы винда подхватила перемещенный кусочек реестра.
- После этого я опять залогинился под Админом, открыл regedit (с правами админа же), и начал искать все строки с путем к папке "C:\Users\Андрей" (причем искал прямо по имени пользователя "Андрей"). Поправил даже MRU и прочую несущественную информацию (кстати, в чистом профиле ничего кроме строки "ProfileImagePath" не находится).
- Оставалось еще одно - поправить права на каталог профиля в "D:\Users". Права в оригинале такие: тот пользователель, чей это профиль - Полный доступ, группа Администраторы - Полный доступ, System - Полный доступ. Наследование от родителей не нужно, наследование к дочерним объектам нужно. Владелец - System.
- Последняя перезагрузка, для верности, и можно грузится в перемещенный аккаунт.
Вобщем, как ни странно, но все заработало, только FlashGot вдруг почувствовал себя заново установленным. Хотя у меня сейчас всего не так много: Firefox, KAV, Reget, Nero, да foobar. На чистом профиле вообще все прекрасно. Так что, теперь жду ответов - все ли было сделано правильно? Сложнее и мучительнее не предлагать . Добавлено: Поправил форматирование в посте. Вобщем, мануальчик, такой, получился, не знаю, хорошо или плохо, но пока полет нормальный. | Всего записей: 80 | Зарегистр. 25-09-2004 | Отправлено: 15:36 12-01-2009 | Исправлено: Avallach, 22:27 12-01-2009 |
|