Краткая история и термины
Перед прочтением рекомендуется ознакомиться со структурой профиля Mozilla Firefox
%USERPROFILE% — путь к профилю пользователя Windows (не путать с профилем Firefox). Обычно располагается в папке C:\Documents and Settings\имя_пользователя.
%AppData% — путь к подпапке профиля пользователя Windows, в которой содержатся данные приложений. Обычно находится в папке %USERPROFILE%\Application Data\. Профили Firefox хранятся внутри папки %AppData%\MozillaFirefox\.
В: Что происходит при запуске Firefox?
О: При запуске Firefox ищет папку %AppData%\Mozilla\Firefox\, где расположен файл profiles.ini, содержащий информацию о всех имеющихся профилях: указатель на активный профиль, имена профилей и относительные пути к ним.
В: Почему нельзя просто скопировать папку %AppData%\Mozilla\Firefox?
О: Это возможно, но только если совпадают пути к %AppData% (Способ 2). К сожалению, в настоящий момент множество путей, содержащихся в файлах профиля — абсолютные, и поэтому для того, чтобы перенесённый профиль работал, требуется исправить все абсолютные пути во всех файлах профиля. Если такая операция относительно корректна по отношению к текстовым форматам, то замена строк в двоичных файлах может повредить их структуру.
Классификация операций с профилями
Резервное копирование
Клонирование:
С помощью клонирования Вы можете создать профиль-двойник и проводить над ним любые эксперименты, не затрагивая рабочий профиль.
Для создания профиля-клона проделайте следующие несложные действия:
- Создайте новый профиль
- Удалите его содержимое и скопируйте в него клонируемый профиль
- С помощью любой программы пакетного поиска и замены текста в файлах замените строку имени клонируемого профиля (например, uhxh6u8f.default) на имя клона (например, daf9u3bb.cloned). В качестве такой программы подойдут Advanced Find & Replace, EmEditor и другие.
Перенос:
Способ 1 - Если совпадают пути %AppData% на обоих компьютерах
Просто копируем папку %AppData%\Mozilla\Firefox с одного компьютера на другой. Если на целевом компьютере такая папка уже существует (и вам не важно её содержимое — уже существующие на машине профили), очистите её перед копированием.
Способ 2 - Если пути %AppData% не совпадают
Здесь возможны несколько вариантов:
Способ 2а. Символические ссылки или reparse points
Возможен на файловой системе, поддерживающей символические ссылки (reparse points): это NTFS 5.x и файловые системы Linux.
- Скопируйте папку Mozilla на её старое местоположение (например, если на исходной машине это была папка C:\Documents and Settings\имя\Application Data\Mozilla\Firefox, скопируйте её именно туда).
- Удалите папку %AppData%\Mozilla\Firefox на новом комьютере, если она существует.
- Создайте символическую ссылку (reparse point) с папки, скопированной в п.1 на папку, удалённую в п.2 (в Windows это делается с помощью утилиты NTFS Links, либо Junction).
Способ 2б. Модификация profiles.ini
Возможен, если буквы дисков, на которых находится папка Documents and Settings, совпадают, но не совпадают имена пользователей Windows.
- Скопируйте папку \Mozilla\Firefox на её старое местоположение (например, если на исходной машине это была папка C:\Documents and Settings\имя\Application Data\Mozilla\, скопируйте её именно туда).
- Скопируйте файл profiles.ini в папку %AppData%\Mozilla\Firefox
- Откройте его любым текстовым редактором и исправьте строку, содержащую путь к профилю на такую:
Path=../../../../имя_нового_пользователя/Application Data/Mozilla/Profiles/набор_символов.имя_профиля
Способ 3 - Если нет возможности для создания новых папок и путей
Скопируйте профиль поверх уже существующего (предварительно зачистив его папку) и любой программой пакетного поиска и замены строк (Advanced Find & Replace, EmEditor и т. п.) замените абсолютный путь старого профиля на новый.
Данный способ является не самым корректным из всех возможных, поэтому 100% идентичность работы перенесённого профиля не гарантируется, в отличие от способов 1 и 2. Но это единственно возможный способ переноса профиля между Windows и Linux.