Восстановление предыдущей сессии (вкладок) в Mozilla Firefox | Windows для системных администраторов

Восстановление предыдущей сессии (вкладок) в Mozilla Firefox

Эта статья, немного выбивающая из основной концепции сайта, посвящена способам восстановления предыдущей сессии с открытыми вкладками в горячо любимом браузере  Mozilla Firefox. На данный опус меня натолкнула уже несколько раз встречающаяся проблема потери всех открытых вкладок вследствие некорректного завершения (по разным причинам: начиная от отключения электричества, кончая исчерпанием доступной памяти и зависанием системы) работы браузера Mozilla Firefox

Механизм автоматического восстановления предыдущей сессии (Session Restore) появился еще во 2-ой версии браузера. Firefox в специальном файле (sessionstore.js) сохраняет все открытые окна и вкладки, в том числе  url страницы, размер и позицию окна/вкладки и набранную в текстовых полях информацию. После аварийного завершения работы на основании данных в файле, Firefox автоматически пытается восстановить предыдущую сессию, восстанавливая все открытые окна и вкладки, которые были открыты до неожиданного падения браузера. Если падение происходит во второй раз, то при старте Firefox появляется окно с надписью:

Firefox может восстанавливать все окна и вкладки, которые были открыты при последнем закрытии или неожиданном падении Firefox.

Ой, вот ведь незадача

При восстановлении ваших окон и вкладок у Firefox возникла проблема. Обычно это вызвано недавно открытой веб-страницей.

Вы можете попытаться:

  • Удалить одну или несколько вкладок, которые, по вашему мнению, могут вызывать проблемы
  • Начать совершенно новую сессию

firefox - восстановление предыдущей сессии

Если отметить ранее открытые вкладки, которые нужно восстановить и нажать кнопку «Восстановить» Firefox откроет эти веб-страницы.

Если окно «Восстановление сессии» автоматически не появится, его можно попытаться вызвать, выбрав пункт меню Журнал -> Восстановить предыдущую сессию.

Примечание. Это же окно можно вызвать, набрав в адресной строке браузера about:sessionrestore.

about:sessionrestore в firefox

Если меню «Восстановить предыдущую сессию» неактивно (как на скриншоте), скорее всего что-то пошло не таки придется перейти к более «продвинутым» способам восстановления вкладок.

В первую очередь расскажем про механизм резервного копирования открытых вкладок и окон в Firefox.  Информацию о текущей сессии Firefox сохраняет в файле sessionstore.js, который находится в каталоге профиля пользователя (C:\Users\username\AppData\Roaming\Mozilla\Firefox\Profiles\xxx.default — в Windows 7 и 8, или c:\Documents and Settings\username\Application Data\Mozilla\Firefox\xxx.default в XP). Если в процесс работы с Firefox проследить за изменением его размера, можно заметить что при открытии новой вкладки/окна его размер увеличивается, а при закрытии – уменьшается.

После «падения» Firefox пытается автоматически загрузить информацию об открытых вкладках и окнах из файла sessionstore.js. В том случае, если файл поврежден, недоступен, имеет некорректный формат или браузер по какой-то непонятной причине его «не  видит»– Firefox запускает новую «чистую» сессию, а пункт меню «Восстановить предыдущую сессию»  становится недоступен. Однако не стоит отчаиваться – есть еще несколько способов восстановить список ранее открытых файлов.

Дело в том, что в этом же каталоге профиля находится файл sessionstore.bak, который содержит информацию о предыдущей сессии Firefox. Этот файл представляет собой копию файла sessionstore.js, который автоматически создается в том случае, если последний раз работа  Firefox была завершена с ошибкой.

Важно. Прежде чем переходить к ручным методам восстановления, обязательно создайте резервную копию файлов  и sessionstore.js и sessionstore.bak, скопировав их в произвольный каталог.

Закройте Firefox и переименуйте файл sessionstore.bak в sessionstore.js (с заменой), после этого попытайтесь запустить Firefox. Посмотрите, удалось ли восстановить данные о предыдущей сессии.

Совет. В этом же каталоге могут находится файлы sessionstore-1.js, sessionstore-2.js и т.д. – это более ранние копии открытых сессии. Посмотрите на дату создания этих файлов, если вам устроит восстановление сессии за эту дату – попробуйте переименовать файл sessionstore-1.js  в sessionstore.js  и запустить Firefox.

Если и этот способ не помог, можно попытаться извлечь список URL из файлов sessionstore.js. Формат файла довольно специфичный – при желании, конечно, можно и вручную проаналищировать содержимое файла, и найти все открытые страницы, которые содержатся в конструкциях начинающихся с «url»:»http, но этот путь довольно утомительный и трудоемкий.

Извлечение URL из файла sessionstore.js

Попытаемся немного автоматизировать методу извлечения url из файла:

  1. В первую очередь нужно установить расширение Firefox для веб-разработчиков: Firebug (Firefox -> Дополнения — > Поиск среди дополнений -> Firebug — > Установить).
  2. Затем найдите ранее скопированный файл sessionstore.js и переименуйте его в sessionstore.txt.
  3. Откройте этот файл с помощью браузера (Firefox->Новая вкладка ->Открыть файл, указываете путь к txt файлу).
  4. Запустите консоль Firebug (Firefox->Веб-разработка->Firebug-> Открыть Firebug)Firefox: запускаем Firebug
  5. В самом низу окна имеется консольная строка (на скриншоте отмечена красным прямоугольником). Скопируйте в нее следующий js код: javascript:(function(){var D=document,H,i=j=0,P=D.getElementsByTagName('PRE'),t='',R=/[^:]\{"entries":\[\{("url":"([^"]*)")\,("title":"([^"]*)"){0,1}/g,T,U;for(j=0;E=P[j];j++){H=E.innerHTML;while(R.exec(H)){U=RegExp.$2;T=RegExp.$4;if(T.length==0){T=U;}t+='<b>['+(++i)+']</b> <a href='+U+'>'+T+' ('+U+')<\/a><br>';}}with(window.open().document){write(t);close()}})(); И нажмите Enter. firebug console
  6. После чего должна открыться новая вкладка, на которой будут присутствовать все ссылки, который скрипт «вытащит» из файла восстановления сессии Firefox ( как победить кодировку с русскими title – я разобраться не смог :( ) .Список ранее открытых веб-страниц Firefox, восстановленных из файла sessionstore.js
  7. Откройте нужные вам ссылки.
Еще записи по теме: Разное
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:

Комментариев: 48

Оставить комментарий
  1. Руслан | 06.05.2014

    Спасибо, инфа довольно полезная. В свое время тоже сталкивался с проблемой потери открытых вкладок в FF — Session Manager. С его помощью можно восстановить списки открытых вкладок и окон по состоянию на любой момент времени без таких изощренных танцев с бубном

    Ответить
    • Андрей | 10.09.2014

      При одном немаловажном условии: что этот плагин уже был установлен в FF на момент потери сессии. А если нет, то упомянутое дополнение уже ничем помочь не сможет.

      Ответить
      • Владимир | 03.04.2016

        FYI
        У меня был установлен Session Manager. FF неудачно завершил работу. При перезапуске сообщил о больших проблемах и ПРЕДЛОЖИЛ для их устранения выполнить т.н. ОЧИСТКУ, причем в автоматическом режиме. При этом FF сообщал, что все открытые в последней сессии вкладки идр. данные не будут утеряны.
        В результате сессия была утеряна. Список сессий Session Manager был пуст. Т.н. группы вкладок (сотни вкладок), естественно, тоже исчезли.
        Как айтишник с многолетним стажем программирования возмущен уровнем разработчиков FF и ставлю твердую двойку.

        Ответить
  2. Сергей | 27.07.2014

    огроменное спасибо. самый четкий, краткий и !!!действующий!!! метод. спасибо!!!!!!!!

    Ответить
  3. Александр | 15.08.2014

    Огромное спасибо, я любитель открывать 100500 вкладок, так что мне очень помогло после случайного «запамятывания» лисой предыдущей сессии. Помог скрипт!
    Еще раз огромное спасибо!

    Ответить
  4. Евгений | 29.08.2014

    Спасибо!  Нужная и рабочая информация! Мне нужно было переслать пару сотен ссылок (синхронизация не вариант). В результате получил список рабочих ссылок ( вид конечно не читабельный, например ,  «http://travel.rbc.ru/news_article/43017″ rel=»nofollow»>аЁаАаМб‹аЕ аБаЕаЗбƒаМаНб‹аЕ аЖаАаЛаОаБб‹ б‚бƒб€аИбб‚аОаВ аВ аОб‚аЕаЛбб… т€“ а а‘аš.Travel (http://travel.rbc.ru/news_article/43017),  но главное что все работают).
    Успехов Вам!

    Ответить
  5. Андрей | 10.09.2014

    Благодарю за весьма полезную информацию! В моём случае, правда, вытащить все ссылки не удалось — файл sessionstore.bak оказался битым на 85% (видимо он как раз перезаписывался на момент сбоя питания), однако в будущем метод вполне может пригодиться. Часто забываешь хотя бы раз в месяц сохранять все вкладки в файл, а FF уже в который раз открывать вручную восстановленный файл sessionstore.js почему-то отказывается. А вытаскивать URL из этого файла вручную безусловно весьма и весьма трудоёмко! Особенно если как Александр открываешь вкладок по 100500 !))

    Ответить
  6. сережка | 09.10.2014

    Раньше ваш способ с заменой файла sessionstore.bak в sessionstore.js работал….но теперь разробы что то натворили и ничего не работает…хелп!

    Ответить
  7. Ильдар | 13.11.2014

    Не вижу скриншота с красным прямоугольником куда надо вставить код из п.5.
    А потому не помогло ((((

    Ответить
    • itpro | 14.11.2014

      Добавил скриншот с окном консоли Firebug

      Ответить
  8. Дмитрий | 10.12.2014

    ОГРОМНОЕ спасибо! Чего я только не читал и чего я только не перепробовал — ничего не помогло. Не получилось восстановить на 100%, но примерно 90 всё-таки восстановил. Единственная в толковая информация-инструкция инете.

    Ответить
  9. Макс | 20.12.2014

    Ctrl-Shift-K для открытия строки ввода в консоли без всякого Firebug работает, в т.ч. с русскими заголовками
     

    Ответить
    • itpro | 22.12.2014

      Спасибо, не знал :)

      Ответить
    • Михаил | 05.01.2015

      После ввода скрипта в консоль Firefox — TypeError: window.open(…) is null, в Firebug все нормально, кроме заголовков…

      Ответить
  10. Ольга | 18.01.2015

    Спасибо, друг! Вы меня очень выручили. Хоть и не удалось восстановить всё, но многое восстановилось.

    Между прочим, слетание закладок произошло после обновления скайпа. Который предложил установить Bing как поисковую систему по умолчанию и страницу msn как домашнюю. Галки, которая позволяла бы отменить это действие, там, оказывается, нет.

    Ответить
  11. Игорь | 06.02.2015

    С 33-й версии работает многократное передублирование sessionstore.js. Помогло!
    Текущее состояние сессии вкладок сохраняется в нескольких местах и файлах:
    sessionstore.js — состояние перед закрытием программы;
    sessionstore-backups/recovery.js — 15 сек до закрытия;
    sessionstore-backups/recovery.bak — 30 сек до закрытия;
    sessionstore-backups/previous.js — последнее успешное завершение.

    Ответить
  12. Алексей | 27.02.2015

    А у меня файла sessionstore.js уже не было и его бэка. Но в папке бэкапов сессии есть три файла с одинаковым размером.
    С таким же названием файл previous.js просто в папке профилей.

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

    Мне скрипт не помог, хотя я вижу ссылки в этих файликах.

    Ответить
  13. Алексей | 27.02.2015

    А можно, плиз чуток доделать скрипт до конца.

    1) Открываем файлик с сессией в браузере и запускаем скрипт
    2) Скрипт находит ссылки, после чего все их открывает тут же, в этом же браузере. Пусть хотя бы все в одном окне откроет. А то их сотни.
    И ходить никуда не надо, плз.

    У меня кракозябров нет, если включить юникод через вид.
    Но если, сделать, чтобы русские адреса отображались в строке адреса корректно, для чего нужно менять значение network.standard-url.encode-utf8 в about:config, они появляются и их не убрать. Баг лисы.

    https://toster.ru/q/34405

    Ответить
  14. Илья | 18.03.2015

    Помогло. Спасибо !!!

    Ответить
  15. rednail | 23.03.2015

    день добрый, такого файла не нашел ни его бака, но есть папка sessionstore-backups, но и в ней нет нужных файлов.
    смотрел и проводником и тотал командером, видимость системных файлов включена.

    Ответить
    • itpro | 24.03.2015

      Укажите какие версии Firefox и Windows используются?
      Также проверьте путь к каталогу с профилем: откройте страницу about:support. В таблице Сведения о приложении нажмите кнопку Показать папку в строке Папка профиля.

      Ответить
  16. Микола | 25.03.2015

    Є така чуйка що прога яка залізла в FF удалила .bak-файл. Не перший раз відновлюю, а таке вперше.

    Ответить
  17. Алексей | 08.04.2015

    Автор! 1000 раз спасибо за инфу!!! Помог вариант с кодом! Не знаю, все ли там страницы, т.к. вытащил их из файла, находящегося в папке «sessionstore-backups». То что было в файле имени sessionstore.js — не то, файлов с именем sessionstore-1.js, sessionstore-2.js и т.д почему-то вообще не было. А вот в этой папке я нашел файл upgrade.js (по дате он был последний) переименовал его в sessionstore.js и уже потом выгрузил данные из него через консольную строку! Еще раз спасибо!

    Ответить
  18. Алексей | 08.04.2015

    Остался один вопрос, что делать с этими данными из консоли, как лучше всего их сохранить

    Ответить
    • itpro | 09.04.2015

      Думаю, их можно открыть в новых вкладках либо сохранить в html/ txt файл

      Ответить
  19. Алексей | 11.04.2015

    Елки-палки.. Сегодня такая же песня с Хромом произошла, взял и не загрузил ни одну вкладку! Автор, подскажи пожалуйста, что делать, можно ли как-то аналогично с предложенным вариантом восстановления через код в Firefox (который мне помог двумя днями раньше), восстановить историю в Хроме?

    Ответить
    • itpro | 14.04.2015

      Хромом почти не пользуюсь, привык уже к Firefox-у. Но думаю, тема актуальная, в ближайшее время постараюсь изучить вопрос восстановления потерянных вкладок и для Chrome. Подписывайтесь на обновления :)

      Ответить
      • Алексей | 14.04.2015

        Автор, спасибо! Буду ждать от Вас информации!
        Вот на всякий случай ссылка на мое сообщение с описанием проблемы на форуме Google
        https://productforums.google.com/forum/#!category-topic/chrome-ru/report-an-issue/windows-vista/41-stable/UTflZR4NTCE

        Ответить
      • Алексей | 08.05.2015

        Добрый день! Удалось ли что-то придумать по восстановлению вкладок в Хроме? На форуме google мне так и ничего не ответили, последняя надежда на вас))

        Ответить
  20. Максим | 08.05.2015

    У меня firefox 37.0.2. В каталоге профиля отсутствовали файлы sessionstore.bak и sessionstore.js. Вместо них файлы с сохраненными вкладками хранятся в каталоге sessionstore-backups и называются по другому:recovery.bak, previous.js и recovery.js. В остальном инструкция отличная — вытащил список открытых ранее URL с помощью Вашего скрипта!
    Автор спасибо, выручил!

    Ответить
  21. Cubic | 01.06.2015

    Инфа помогла, спасибо, но пришлось немного адаптировать. Всё началось с вирусни (
    Поскольку мазила несколько раз была пере запущена, ни на какие sessionstore.js надежды не было. Но в папке sessionstore-backups оказалось несколько файлов вида upgrade.js-. Выбрал подходящий по дате, переименовал в sessionstore.js, скопировал в каталог на уровень выше (вместо текущего сброшенного). Открыл мазилу и «о, чудо!» — бог огненной лисы наградил меня за мои танцы с бубном :)
    Удачи!

    Ответить
    • Арыслан | 07.08.2016

      Благодарю, всё сработало! У меня FF 47.0.1.

      Ответить
  22. Динора | 26.06.2015

    Безмерно благодарна!:)

    Ответить
  23. Anton | 31.08.2015

    Спасибо!
    Теперь я могу делать бекапы вкладок Мозиллы.

    Ответить
  24. Accel | 27.10.2015

    Восстановление сессии для нового Файрфокса.
    Пройти по пути C:\Users\Имяпользовател\AppData\Roaming\Mozilla\Firefox\Profiles\
    и зайти в папку ххх.default-ххххх (имя папки может отличаться) потом в этой папке найти sessionstore-backups там найдите файлик на подобии » upgrade.js-20151121212″ далее сделайте две копии этого файла. Удалите все файлы в этой папке кроме этих двух копий. Первую переименуйте в recovery.js а вторую в previous.js. Далее запустите Файрфокс и пройдя в журнал нажмите на «Восстановить предыдущую сессию», которая теперь дожлна быть активна.

    Ответить
    • Дмитрий | 25.12.2015

      сделал несколько по другому:

      FF должен быть закрыт!!!

      — удалил sessionstore.js создавшийся при открытии FF с потерянными вкладками.
      — В папке C:\Users\Имя пользователя\AppData\Roaming\Mozilla\Firefox\Profiles\5zn8r7g8.default\sessionstore-backups оставил, как написал Accel | 27.10.2015 |, только upgrade.js-……. (см. время создание файла которое нужно вам) + он же переименованный в recovery.js, остальные удалил(или скопируйте на всякий случай).

      Ответить
    • Den | 09.04.2016

      Спасибо ваш способ помог. Firefox v 45.0.1

      Ответить
  25. Павел | 10.01.2016

    Спасибо!
    Очень помогло! Какая-то хрень потерла все вкладки, а вместо моих 493 вкладок отрылось 493 about:blank
    Сразу понял, что будет не так просто и забекапил всю папку C:\Users\Имя пользователя\AppData\Roaming\Mozilla
    Все восстановил через recovery.js

    Ответить
  26. Андрей | 04.03.2016

    Расскажу свою историю. Запарился смотреть на 150 вкладок и всегда стал не тревожа их, открывать второе окно и в пустом окне опять создавать вкладки и делать дела.
    FF в таком виде летает, 150 вкладок моих «дремлют» в другом окне, т.е. в память не загружены и не тормозят.
    Выхожу так: плавно закрываю все вкладки второго рабочего окна, а далее закрываю окно со спящими вкладками. FF ничего не предупреждает и в след раз открывает окно со 150 вкладками и загружает последнюю.
    В это раз при выходе все сделал так же как всегда, но FF предупредил что будут закрыты 150 вкладок. Оп-па, я напрягся, т.к. помнил что он предупреждает когда вкладки уходят навсегда (когда в настройках стоит удалять куки и не помнить историю). Так и получилось при повторном запуске главная мозиллы.
    Сначала колдовал сам, нашел файл где все вкладки, но они не восстанавливались.
    Нашел эту статью и стал колдовать: скопировал back, переименовал в txt, загрузил открыл Firebag, консоль (кстати, как советовал один выполнять скрипт через Ctrl+Shift+K — так скрипт не выполнялся у меня, он просто поднимался вверх становился типа логом и все. через Bag — прекрасно), скрипт.
    Далее кодировка: лечится так:
    Открыли файл -> полезли в кодировку, по умолчанию будет (Кириллица ISO-8859-5)
    Изменяем на (Юникод UTF-8)
    Только потом F12 (Firebag) и скрипт. И русские буквы на месте.
    Правда FF сука так и продолжает предупреждать перед закрытием и соответственно не восстанавливает вкладки. Думаю надо полностью его почистить типа куки и все остальное. В настройках «открывать последние закрытые» и ничего не менял. вот так

    Ответить
    • Max | 08.07.2016

      Нужно закрывать FF не на «крестик», а меню и на значок «Выйти из FF»

      Ответить
  27. Александр | 18.05.2016

    Спасибо, информация интересная. Но мне нужен способ НЕ восстановления предыдущей сессии! Принудительное закрытие при выключении компьютера Мозила воспринимает, как «crash», и, хотя в настройках стоит «при запуске — показать домашнюю страницу», после якобы «crash»-а пытается восстанавливать предыдущую сессию, о чём её никто не просил!!! В результате тормоз открытия браузера, плюс жалобы, что «не шмогла» восстановить сессию, чего мне и не надо! Помогите ради Мозилы!

    Ответить
    • itpro | 18.05.2016

      Как я понял, вы хотите отключить появления окна с предыдущей сессией.
      Для этого в браузере откройте страницу about:config, и измените значение параметра browser.sessionstore.resume_from_crash на false

      Ответить
      • Александр | 18.05.2016

        Спасибо, уважаемый itpro! Всё мгновенно сработало, долгих и весёлых Вам лет жизни! Я человек довольно старый, почти 65 лет, и не всегда умею находить нужную информацию в инете. Быть может, существует какой-то алгоритм для этого? Ваш сайт нашёл через Яндекс, чаще всего там же и нахожу всё, что надо. Ещё раз, огромное спасибо!

        Ответить
        • itpro | 19.05.2016

          Секрет в правильно сформированном запросе к любому поисковику, желательно по английски и немного интуиции ) :)

          Ответить
  28. Diabolik | 19.08.2016

    у меня получилось восстановить файл sessionstore.js через его свойства — вкладка «предыдущие версии». Откатилось за четыре дня назад, как раз до переезда :-).

    Ответить
  29. Andrew | 20.11.2016

    Большое спасибо за статью! Восстановил сессию путем замены имевшимся файлом previous.js файлов recovery.js и sessionstore
    С русскими подписями разобрался путем первоначальной смены кодировки в txt файле.

    Есть один баг в скрипте: в создаваемый файл записывается ПЕРВАЯ открытая страница из вкладки а не_ТЕКУЩАЯ. Буду благодарен, если пофиксите. Сам никогда ява-скрипты не писал, программировал -надцать лет назад и боюсь, что сам не смогу разобраться

    Ответить
  30. ben gan | 25.11.2016

    День добрый. Большое спасибо, автор! Восстановил свои вкладки по Вашим рекомендациям. FF 50.0. Довольно интересная история у меня с вкладками получилась. Закрыл FF в нормальном режиме. Минут через несколько открываю его и вместо предыдущей сессии получаю одну вкладку от команды разработчиков Mozilla с просьбой поддержать проект финансово. Так как пользуюсь лисой давно и на всех устройствах, то с удовольствием сделал это. А вот вкладка-то как была одна, так и осталась )

    Ответить
  31. Благодарный человек | 03.12.2016

    Спасибо за статью! Очень помогла!!! ^_^ Я только не знал где хранится информация о предыдущих сессиях.

    Спасло моё оперативное реагирование на исчезновение открытых вкладок. Хотя немного пришлось потанцевать с бубном, вроде использования программы EasyRecovery. Выбрал восстановление удаленных файлов… Указал маску необходимых для восстановления файлов: *.js — подождал всего чуть-чуть времени… и вуаля! ^_^ В Mozilla Firefox версии v50.0.2 (у меня на момент написания комментария 3.12.2016 года) резервные файлы сессии хранятся в C:\Users\моё-имя-пользователя\AppData\Roaming\Mozilla\Firefox\Profiles\набор-цифр-и-букв.default\sessionstore-backups\ в файле: recovery.js

    С EasyRecovery нашёл и восстановил из LOSTFILE\DIR160 старый recovery.js закрыл Mozilla Firefox (дождался полной выгрузки из ОЗУ firefox.exe, смотрел в «Диспетчере задач») и поместил в папку C:\Users\моё-имя-пользователя\AppData\Roaming\Mozilla\Firefox\Profiles\набор-цифр-и-букв.default\ затем переименовал «recovery.js» на «sessionstore.js» — запускаю Firefox, увсё работает!!! ^_^

    Ответить
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

Сказать Спасибо! можно на этой странице или (еще лучше) поделиться с друзями ссылкой на понравившуюся статью в любимой социальной сети(специально для этого на сайте присуствуют кнопки популярных соц. сетей).

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.32MB/0.00112 sec