Показать полную графическую версию : Перемещение пользовательских папок
PhantomLo
06-09-2009, 01:12
Как можно переместить на несистемный винт папки личных документов? И соответственно что бы они открывались при обращении к ним, а не стандарнтая папка
[hr]
Прежде чем задать вопрос, прочтите:
- Перемещаем пользовательские папки (http://paulkravchenko.wordpress.com/2008/05/21/user-shell-folders/)
- Пользовательские папки с обычными иконками (http://paulkravchenko.wordpress.com/2010/04/10/user-folders/) (описание desktop.ini)
1. Создаем на другом диске (к примеру D) папку для пользовательских данных
2. Закрываем окно проводника.
3. Нажимаем на кнопку "Пуск" и в строке поиска вводим следующее: shell:UsersFilesFolder, после чего нажимаем на enter
4. Нажимаем на правую кнопку на том каталоге, которых хотим переместить и переходим в его свойства.
5. Переходим на вкладку "Расположение" и нажимаем на кнопку "Переместить".
6. Находим созданную нами папку и нажимаем на ОК.
7. В появившемся диалоге нажимаем на "Да"
Перемещаем пользовательские папки (http://paulkravchenko.wordpress.com/2008/05/21/user-shell-folders/)
[решено] Перенос папки пользователя на другой диск в MS Vista (http://forum.oszone.net/thread-112177.html)
PhantomLo
06-09-2009, 01:50
DImaN!,
http://mediapix.ru/pics/3d4ad505d962c812e6b8e23be7fcd0ab.jpg
Почемуто папки с документами 2.
Та что слева, со свойством общего доступа. К ней можно менять путь как вы сказали
Правая же, с доступом только для меня и администратора (пользовательская), но у неё в свойствах нет инструмента указания нового пути
okshef,
в описанном способе (с применением реестра) не смог окончательно разобратся. Так как в реестре, после: HKEY_CURRENT_USER\Software\ ... ветки кончаются и далее пройти по пути HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders не видится возможным. Помоему создавать их вручную тоже не имеет смысла. Так?
BlackRaiDe, это вторая сверху ветка реестра, смотрите внимательно. Менять нужно значение
Можете написать путь к папке "Мои документы", которую можно переместить и путь к такой же папке, но которую переместить нельзя. Пример: C:\Users\User\My Documents\ и C:\Users\User\Мои документы\
PhantomLo
06-09-2009, 16:21
С документами все решено.
Но вот переместить AppDat'у не удается. Поменял все пути на новые. Устанавливаю приложение, и все файлы лезут опять в C:\User\ ...
BlackRaiDe, посомтрите также на этот раздел: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]. Здесь вы можете также кое-что сделать с перемещением каталогов.
Короче решил я изменить местоположение папки Мои видеозаписи, щелкнул по ней, выбрал путь к папке мои документы, в результате чего у меня как и на скрине у DImaN!, создалось 2 папки мои документы и папка с названием Video,зайти в которую, впрочем как и удалить нельзя. Свою ошибку я понял - я указал путь прямо в папку мои документы, т.е.она как бы должна была служить хранилищем для видео, а нужно было указывать путь к подпапке в папке мои документы, которую я не создал еще.... как убрать эту папку видео и 2 папки моих документов? В реестре по адресу HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders я все поменял как нужно
Все, проблема и 2 папками мои документы и с папкой Video неудаляемой решена. Все благодаря прописки новых путей в HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
перезалогинился, и все. Щас второй вопрос - как папке Видео вернуть прежнее название Мои видеозаписи и вернуть значек, при этом чтобы путь к ней не менялся?
http://i068.radikal.ru/0909/2c/86f2b7b8de3a.jpg
armageddon528
19-09-2009, 14:56
Не понимаю с чем это связано... Как исправить? Моя конечная цель: зайти в свойства "Мои документы" и переместить их в другой раздел.
Но вот переместить AppDat'у не удается. »
Эта папка не является пользовательской папкой оболочки (User Shell Folder). В ней содержатся параметры программ, зачастую не предназначенные для прямого редактирования. Перенести ее можно только в рамках переноса профиля, что в свою очередь делается только при установке/развертывании и сопряжено с рядом ограничений.
См. ProfilesDirectory (http://technet.microsoft.com/ru-ru/library/cc722177(WS.10).aspx), а также Relocation of the Users directory and the ProgramData directory to a disk drive other than the disk drive that contains the Windows directory on a Windows Vista-based or a Windows Server 2008-based computer (http://support.microsoft.com/kb/949977)
[hr]
armageddon528, поясните вопрос.
Trickster
25-10-2009, 16:57
Хочу перенести папку своего пользователя с диска C: на диск D:. Зачем это нужно, думаю, всем и так понятно. В Win XP вопрос решался просто прописыванием нового пути в свойствах папки "Мои документы". В Win 7 для этой папки можно сделать аналогичный финт ушами, но хочется перетащить всю папку пользователя целиком, а для нее такой возможности уже нет. Кто-то уже поборол эту проблему и если да, то как?
Trickster, изучаем, задаем вопросы и учимся пользоваться фильтрами и поиском (http://forum.oszone.net/faq.php?faq=vb_faq#faq_faq_filters)
Vancouver
25-10-2009, 18:08
mklink /? вам в руки.
neokolyan
16-11-2009, 15:54
Есть потребность в перемещении ключевых папок пользователей из папки профиля в папку на несистемном диске. Доводы "За" весьма весомые - даже при неконтролируемом процессе восстановления из образа системного диска или полной переустановке системы 95% личных данных точно не потеряются! Но, как всегда, есть ограничения:
1) процесс настройки/переноса должен быть максимально надежным и быстрым;
2) последствия переноса должны быть неразрушающими для работы программ и системы;
3) после однократной настройки всё должно работать даже при создании "в поле" новой учётки;
4) после отката из образа "чистая" система не должна подхватывать критически важные данные/настройки из "грязной" ос;
5) механизм должен работать как на доменной, так и на недоменной машине;
6) весьма желательно сохранить списки доступа к файлам (безопасность);
7...) предлагаю дополнить этот список...
Технология давно отрабатывалась в нашей компании на XP и вот что получилось:
а) папку профиля целиком переносить нельзя никоим образом (реестр, симлинки), т.к. в этом случае после отката из образа ветка реестра пользователя остаётся (не откатывается) и всё ошибки/глюки остаются. Вплоть до невозможности загрузки системы (синий экран). Т.е. надо переносить отдельные подпапки из профиля. Ветка реестра пользователя переноситься не должна.
б) Все подпапки переносить и не надо. Т.е. нужен список нужных папок:
AllUsers
Application Data
Документы
Избранное
Рабочий стол
User.Userov
Application Data
Local AppData
Избранное
Мои Документы
Рабочий стол
Список можно обсудить=)
в) изменение реестра ручками/скриптами не катит, т.к. кто это будет делать для вновь созданной учётки? Где гарантия, что скрипт не будет удалён из списка автозагрузки ретивым пользователем?
Единственное, что остаётся (имхо) - политики. Следит за их работой система своими штатными средствами. Шаблон:
CLASS MACHINE
CLASS USER
CATEGORY "User Folders"
KEYNAME "Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
POLICY "Desktop Folder"
PART "Enter Parh to Desktop Folder" COMBOBOX
VALUENAME "Desktop"
DEFAULT "%USERPROFILE%\Рабочий стол"
REQUIRED
EXPANDABLETEXT
SUGGESTIONS
"D:\Users\%USERNAME%\Рабочий стол"
END SUGGESTIONS
END PART
END POLICY
POLICY "My Documents"
PART "Enter Parh to My Documents Folder" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "Personal"
DEFAULT "%USERPROFILE%\Мои Документы"
SUGGESTIONS
"D:\Users\%USERNAME%\Мои Документы"
END SUGGESTIONS
END PART
END POLICY
POLICY "AppData"
PART "Enter Parh to AppData" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "AppData"
DEFAULT "%USERPROFILE%\Application Data"
SUGGESTIONS
"D:\Users\%USERNAME%\Application Data"
END SUGGESTIONS
END PART
END POLICY
POLICY "Favorites"
PART "Enter Parh to Favorites" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "Favorites"
DEFAULT "%USERPROFILE%\Избранное"
SUGGESTIONS
"D:\Users\%USERNAME%\Избранное"
END SUGGESTIONS
END PART
END POLICY
POLICY "Local AppData"
PART "Enter Parh to Local AppData" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "Local AppData"
DEFAULT "%USERPROFILE%\Local Settings\Application Data"
SUGGESTIONS
"D:\Users\%USERNAME%\Local Settings\Application Data"
END SUGGESTIONS
END PART
END POLICY
POLICY "My Music"
PART "Enter Parh to My Music" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "My Music"
DEFAULT "%USERPROFILE%\Мои Документы\Моя музыка"
SUGGESTIONS
"D:\Users\%USERNAME%\Мои Документы\Моя музыка"
END SUGGESTIONS
END PART
END POLICY
POLICY "My Pictures"
PART "Enter Parh to My Pictures" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "My Pictures"
DEFAULT "%USERPROFILE%\Мои Документы\Мои рисунки"
SUGGESTIONS
"D:\Users\%USERNAME%\Мои Документы\Мои рисунки"
END SUGGESTIONS
END PART
END POLICY
POLICY "My Video"
PART "Enter Parh to My Video" COMBOBOX
EXPANDABLETEXT
REQUIRED
VALUENAME "My Video"
DEFAULT "%USERPROFILE%\Мои Документы\Мои видеозаписи"
SUGGESTIONS
"D:\Users\%USERNAME%\Мои Документы\Мои видеозаписи"
END SUGGESTIONS
END PART
END POLICY
END CATEGORY
Плюс - не мешает доменной политике (перезаписывается ею) и работает локально (без домена).
Для AllUsers можно однократно подправить реестр - создание новой учётки ничто не меняет.
Самый "честный" способ их применить - загрузить шаблон из оснастки и там же его настроить. Единственный минус - процесс трудоёмкий и "обезьяний". Тупо это делать каждый раз не хочется.
Всё, что я сообразил для автоматизации, - в атаче. Для XP катит, для Seven как-то не очень. И есть один минус: если уже есть для HKCU настроенные локальные политики, то мой вариант автоматизации не катит (стирает старые).
Vista я пропустил + в 7-ке есть много чего нового. Вопрос народу: может появились штатные средства в 7-ке для этой процедуры? Уж больно это удобно было бы... Или, может, кто-то рукастый уже сваял утилиту для этих целей? Очень надо ! =)
neokolyan
17-11-2009, 17:49
Нашёл! Недавно умельцы сваяли Local Group Policy Utilities (http://blogs.technet.com/fdcc/archive/2009/09/15/new-and-updated-local-group-policy-utilities.aspx). Осталось теперь это оформить в настраиваемый скрипт=)
Что касается настройки системы вообще, то можно использовать "тихий" импорт локальных политик как универсальный и мощный инструмент настройки недоменных машин. Пригодятся и уже существующие доменные политики. Кому-нибудь это надо?.. :search: А то можно было бы это красиво оформить с проверкой, импортом, экспортом и пр.
neokolyan, Администрировать групповые политики можно также средствами PowerShell (http://technet.microsoft.com/ru-ru/magazine/2007.05.grouppolicy.aspx) . В этой статье очень доходчиво рассписано как можно это реализовать ;)
neokolyan
19-11-2009, 16:14
Найденная утилита работает, нужные мне значения куда надо записываются. Почти все папки из профиля переносятся безболезненно. Но после изменения ключа (вручную либо политиками - не важно) в ветке "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" AppData=D:%HOMEPATH%\AppData\Roaming в корне диска D: появляется папка %HOMEPATH% с содержимым: d:\%HOMEPATH%\AppData\Roaming\Microsoft\Network\Connections\Pbk\_hiddenPbk\rasphone.pbk
Аналогочно после правки Local AppData=D:%HOMEPATH%\AppData\Local я получаю ту же папку с куском ветки реестра пользователя Classes: d:\%HOMEPATH%\AppData\Local\Microsoft\Windows\UsrClass.dat + еще несколько сопутствующих файлов.
Первое "явление" с книгой я отношу к глюкам семёрки, т.к. для части профиля, которая предназначена для опционального мигрирования (roaming), возможность перемещения изначально должна существовать (в т.ч с использованием переменных среды).
А вот второе - тут сложнее... Это уже кусок реестра... Возможно, он подхватывается на этапе, когда доступно ограниченное число переменных среды? Кто-то может подсказать, чем можно пользоваться тогда? %username% тоже не катит...
Уж очень хочется перенести localappdata, т.к. именно там outlook по умолчанию хранит pst файлы, - это святое для юзеров...
neokolyan
20-11-2009, 21:10
С помощью анализа логов Procmon.exe, отработавшего с опцией "Enable boot logging", выяснил, что Win7 читает/пишет в ветку "HKEY_CURRENT_USER\Volatile Environment" гораздо позже обращения к UsrClass.dat. Это, скорее всего, означает, что переменные %homepath%, %username% вычисляются/создаются слишком поздно. Хотя, теоретически, могли бы и пораньше - сразу после считывания ProfileImagePath (а это делается как раз перед первым обращением к реестру пользователя).
Похоже, шансов переместить эти папки с помощью локальной политики нет. Значения должны быть уникальными и постоянными (почти) для каждого пользователя, что можно обеспечить только через переменные %homepath%, %username% и %userprofile%. И только последняя из них вычисляется вовремя. Жаль...
Может, кто-то предложит другой способ перенаправить папки? Есть только три основных условия:
1) файл ntuser.dat (основная ветка реестра пользователя) должен оставаться там где был, т.е. в "C:\Users\User.Userov\ntuser.dat" -> ключ ProfileImagePath трогать нельзя;
2) всё должно настраиваться по-тихому, автоматически, - даже если "в поле ночью" кто-то вошёл под новой учётной записью;
3) всё должно работать одинаково хорошо как на доменной машине, так и в рабочей группе.
neokolyan
23-11-2009, 16:01
Vancouver, есть мысль всё-таки написать скрипт, который до логона будет сканировать папки пользователей и перемещать их на новое место, оставляя на старом - ссылки. Но вот что выбрать - точки соединения или символьные ссылки? Символьная ссылка должна быть прозрачнее и универсальнее... Но, может, есть какие-то подводные камни?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC