Понять структуру данных профиля пользователя Chrome для переноса на новый ПК / ОС и избежать повреждения настроек Ошибка?


12

Старые ответы не работают, поэтому я включаю вещи, которые могут работать по частям.
Версия Chrome: 44.0.2403.155 м - 44.0.2403.157 м

Раньше я мог копировать весь профиль пользователя Chrome \ Default из ОС в ОС и с ПК на ПК.

C: \ Users \\ AppData \ Local \ Google \ Chrome \ User Data \ Default

Chrome 44 Stable более строгий. Я обновил Chrome на обоих экземплярах Win 8.1 (фактических клонах) до последней стабильной версии Chrome. Я сделал копию + перезаписать по умолчанию "Профиль пользователя", и он не работает.

Решение / ответ заключается в выяснении структуры данных профиля пользователя (папок и файлов) и того, какие их части следует оставить после v / s, какие из них необходимо перенести.

Эта ошибка возникает из-за изменений в Chrome, но, как ни странно, она не возникает на исходном ПК / ОС.

http://www.ghacks.net/2014/04/18/google-chrome-changing-browser-settings-automatically/

http://cdn.ghacks.net/wp-content/uploads/2014/04/chrome-automatic-browser-reset.png

Chrome обнаружил, что некоторые ваши настройки были повреждены другой программой, и восстановил их исходные значения по умолчанию.

| Узнать больше | Сбросить все настройки | войти в систему

Цитата из Узнайте больше :

Настройки, которые Chrome защищает от изменения

  • Поисковая система по умолчанию
  • домашняя страница
  • Начальные страницы
  • Закрепленные вкладки
  • расширения

Если Chrome сбрасывает ваши настройки и вы не вошли в Chrome, ваши настройки будут сброшены до значений по умолчанию. Если вы вошли в Chrome, вы все равно увидите свои индивидуальные настройки.

Иногда программы будут пытаться изменить ваши настройки. В этом случае Chrome будет продолжать сбрасывать настройки браузера при каждом запуске. Вы всегда сможете увидеть свои индивидуальные настройки, войдя в Chrome.

Очевидно, что согласно этой теме , последние версии Chrome (но не Chromium), кажется, делают некоторую дополнительную «необоснованную защиту» и сбрасывают все, не спрашивая пользователя.

Можно ли выяснить, какая часть настроек (файлы, папки) вызывает эту ошибку?

  • Чтобы игнорировать эти части и / или
  • Выберите части данных профиля пользователя, которые будут мигрировать без ошибок?

Вещь, которую я хотел бы перенести, мигрируют наверняка:

  • Закладки (я думаю, это синхронизируется через профиль Google)
  • История (понятия не имею, что синхронизирует - я использую месяцы и годы истории, чтобы отслеживать и вспоминать вещи)
  • Пароли (частично синхронизируются через профиль Google)
  • Файлы cookie (не синхронизируются) (важно для форумов, которые я часто посещаю)
  • Расширения (синхронизированы, но данные или настройки не синхронизированы)
    - Конфигурации расширений / Настройки + Расширение локальных сохраненных данных (очень важно)
    • (Особенно в таких расширениях, как Session Buddy, я хранил вещи уже несколько лет)

(Некоторые из них легко синхронизируются через учетную запись Google, но все это не проходит)

Некоторая индивидуальная, но более старая информация о переносе / копировании определенных предметов:

Расширения:

.. \ AppData \ Google \ Chrome \ Данные пользователя \ По умолчанию \ Расширения

Печенье:

C: \ Users \ Ваше имя пользователя \ AppData \ Local \ Google \ Chrome \ User Data \ Default \ Local Storage

% localappdata% \ Google \ Chrome \ Данные пользователя \ По умолчанию \ Cookies

хром: // хром / настройки / печенье

Некоторые примеры этого не работают или люди сталкиваются с проблемами здесь:

Некоторые устаревшие методы: я нашел несколько соответствующих методов, статей и ответов, которые я использовал ранее. Я считаю, что они уже устарели, учитывая, что Chrome изменил то, как он работает с / блокирует профили пользователей.


Мне интересно, как мне переписать название, чтобы быть более подходящим? Ошибка связана с тем, что изменения в Chrome становятся более строгими, но решение / ответ заключается в определении данных UserProfile и того, какие их части следует оставить после v / s, какие из них необходимо перенести. @Ramhound - Предложения по вопросу и названию?
Алекс С

Что касается названия, я бы начал с того, чтобы сформулировать его как вопрос, а не фрагмент предложения, у которого в конце стоит вопросительный знак. На самом деле, возможно, вы можете сказать это так же, как старые вопросы, на которые вы ссылались, если вы поместите заметку вверху поста, чтобы обратить внимание на тот факт, что эти другие вопросы не дают решения, из-за последующих изменений в Chrome, и поэтому этот вопрос не следует закрывать как их дубликат.
Дэн Хендерсон

@DanHenderson - Пожалуйста, посмотрите на количество изменений, которые претерпели заголовок и вопрос. Пожалуйста, сделайте предложение о лучшем названии, и я также рассмотрю вашу заявку :)
Alex S

Ответы:


4

Я нашел способ переноса без сброса. Как вы можете догадаться, Chrome хранит контрольную сумму / хэш в профиле пользователя.

Я нашел файл User Data\Default\Secure Preferences. Это текстовый файл JSON, поэтому мы можем посмотреть на него. В этом файле есть this protectionи super_mac, в котором хранятся HMAC_SHA256 других объектов. Если проверка не удалась, сбрасывается. Эта функция реализована в Chromium, поэтому, если вам интересно, вы можете прочитать их исходный код.

Я иду по этому пути:

  1. Убедитесь, что вы сделали резервную копию старого профиля, прежде чем что-либо. Убедитесь, что у вас User Data\Default\Extensionsвсе еще есть все каталоги расширений.
  2. Убедитесь, что вы также синхронизируете все, что вам нужно, с учетной записью Google. Обратите внимание, что даже если вы это сделаете, многие локальные настройки расширений не синхронизируются (расширение не поддерживается). Вот почему нам нужны следующие шаги.
  3. Создать новый профиль. Затем синхронизируйте с учетной записью Google. Это позволит загрузить каждое расширение в новый профиль. Этот шаг, чтобы получить хороший новый Secure Preferencesфайл.
  4. Закрыть Chrome. Найдите Secure Preferencesфайл из нового профиля. Используйте его, чтобы заменить тот в вашем старом профиле. Удалите новый профиль и замените его старым. Теперь вы должны восстановить почти все.
  5. Есть вероятность, что некоторые из ваших расширений (их настройки по-прежнему не изменены) отсутствуют. Это связано с тем, что путь к каталогу расширения является версионным, а на шаге 3 Chrome создал другой путь. Вам нужно переименовать те из старого профиля в новый. Не вмешивайся Secure Preferences.

Удачи. Я действительно надеюсь, что Google передумает разрешить пользователям передавать профиль, поскольку они не могут гарантировать, что каждое расширение будет реализовывать синхронизацию предпочтений.

В настоящее время этот метод работает в Chrome 49.0.2623.75. Google может изменить метод проверки в будущем.


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

Конечно. Я рад помочь. Я не знаю, сколько людей имеют этот вариант использования. Если их много, Google должен повысить осведомленность. Или, по крайней мере, некоторые из нас должны внимательно прочитать исходный код и разработать инструмент, чтобы помочь другим.
Crend King

Только что натолкнулся на это через некоторые комментарии на сайте Chromium Woolsys - возможно, связанные - adlice.com/google-chrome-secure-preferences
Alex S


2

Я сделал несколько улучшений после ответа Crend King и нашел способ переноса профиля пользователя локально без необходимости синхронизации с учетной записью Google и без отсутствующих расширений .

Я использовал эти шаги для переноса сборки Chromium 59.0.3071.115 с https://chromium.woolyss.com из Windows 7 в Windows 10. Однако различия между Chrome и Chromium, описанные на этой странице, указывают на то, что пока путь к пользовательским данным каталог будет другим, его содержимое совместимо и может даже использоваться для перехода непосредственно из Chrome в Chromium.

Некоторые примеры путей здесь:

  • Chrome на Windows %APPDATA%/Local/Google/Chrome/User Data
  • Хром на Windows %APPDATA%/Local/Chromium/User Data
  • Хром в Linux $HOME/.config/chromium/user data

Эти шаги будут мигрировать Defaultпрофиль найти на User Data/Default, но также будет работать для других профилей найти на User Data/Profile 1, User Data/Profile 2и так далее.

  1. Сделайте резервную копию своего старого профиля и убедитесь, что ваши расширения все еще находятся под User Data/Default/Extensions. Вам нужно будет переустановить все свои расширения из интернет-магазина Chrome, и содержимое этого каталога поможет вам найти, какие у вас были расширения, если у вас больше нет доступа к вашей предыдущей ОС или вы не можете вспомнить их все.

  2. Удалите существующий Chromium/User Dataкаталог и запустите Chromium, чтобы воссоздать его.

  3. Установите все ваши расширения. Самый простой способ сделать это - посмотреть на каталоги User Data/Default/Extensionsиз вашей резервной копии. Например, если у вас установлен HTTPS Everywhere, будет каталог User Data/Default/Extensions/gcbommkclmclpchllfjekcdonpmejbdp. Затем Chrome Интернет - магазин URL является https://chrome.google.com/webstore/detail/gcbommkclmclpchllfjekcdonpmejbdp.

  4. Если вы Settings -> On startup -> Continue where you left offустановили ранее, установите его снова.

  5. Закройте Chromium и удалите все, User Data/Defaultкроме Extensionsи Secure Preferences. Затем скопируйте все из резервной копии, User Data/Defaultкроме Extensionsи Secure Preferences.

Причина сохранения Extensionsзаключается в том, что, как отмечает Crend King, каталоги расширений имеют версии. Я обнаружил, что содержимое этих каталогов проверено, и если расширение обновлялось с момента создания резервной копии, то Chromium будет считать расширение поврежденным, и ваши настройки будут сожжены после восстановления.

Они будут перенесены точно:

  • закладки
  • история
  • Расширения и все настройки расширений / конфиги / локальные данные
  • История загрузок
  • Большинство настроек хрома, в том числе большинство элементов под Privacy and security, Content settingsиDownloads
  • Вкладки сессий, если вы сохраните их

Не мигрировал:

  • Настройки, chrome://extensions/такие как включение или отключение определенного расширения в режиме инкогнито. Я считаю, что это часть Secure Preferences.

  • Имя профиля и значок, который по умолчанию Person 1и серый значок. Эта информация, а также список доступных профилей хранятся в нем, Chromium/User Data/Local Stateи, кажется, нетрудно скопировать соответствующие части.

Не проверено:

  • Печенье
  • Пароли
  • Сохраненные формы

Я отпустил пароли / файлы cookie, с тех пор перенес мои пароли в LastPass и аналогичные инструменты. Моя ключевая боль заключалась в том, что «Данные / Информация / Настройки» хранятся в расширениях INSIDE - я использую такие расширения, как Session Buddy, которые сохраняют большую часть информации внутри. Так как вы можете сделать это, я обязательно проверю это. Я буду пинговать вас по поводу некоторых точек миграции "Chrome to Chromium", если это не слишком большая проблема.
Алекс С

Конечно, это не будет проблемой. Я рад, что вы все еще нашли это полезным даже после пары лет с момента публикации вопроса.
STW

Пока нет, но я буду в ближайшие / следующие выходные, поскольку у меня есть копия Chrome, сидящая на старом разделе и ожидающая этой процедуры (после обновлений Chrome) PS: Если я перейду с Chrome на Chromium, какие шаги мне придется изменить ( PS: обновить в ответ, если применимо).
Алекс С

Добавлены некоторые дополнительные сведения о Chrome. Не должно быть совсем иначе, чтобы перейти от Chrome к Chromium.
17

Только что натолкнулся на это через некоторые комментарии на сайте Chromium Woolsys - возможно, связанные - adlice.com/google-chrome-secure-preferences
Alex S

0

Я знаю, что это не определенный ответ. Я недавно получил свой новый ПК с Windows 8. Я скопировал старую папку по умолчанию на новый компьютер и запустил Chrome, но он сказал, что профиль был поврежден.

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

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

У меня нет объяснения истинной причины, но это был мой опыт.


Ericcire - Спасибо за публикацию. Я создал новый пустой профиль - по умолчанию. Удалил папку и заменил ее на Default из резервного раздела. Мне интересно, что вы сделали немного по-другому? Вы удалили и заменили или перезаписали новый по умолчанию на старый по умолчанию? Мне интересно, если некоторые файлы из NEW не должны быть заменены, и что вызывает ошибку профиля? Пожалуйста, посмотрите, можете ли вы указать некоторые из этих особенностей.
Алекс С

> Свежий профиль по умолчанию> Вы выполнили вход и синхронизировали с Google и синхронизировали «вещи» до того, как скопировали и перезаписали старый по умолчанию поверх нового по умолчанию?
Алекс С

Я не могу вспомнить точно, что я сделал, как это было некоторое время. IIRC, я не входил. Не уверен. Но я совершенно уверен, что я не удалил новую папку по умолчанию. Я просто скопировал старую папку по умолчанию поверх нее.
ericcire

Вы можете сделать мне одолжение? Можете ли вы создать 2 новых «профиля пользователя» в дополнение к стандартным и попробовать скопировать + перезаписать оба с одним основным отличием. Один вошел перед копированием + перезаписал, а другой нет. И посмотрите, как работают эти профили? Таким образом, мы можем быть уверены в том, что может работать. PS: я полагаю, вы работаете на Windows 8.1 с Chrome 44?
Алекс С

Вы смогли попробовать это?
Алекс С
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.