Vivaldi

  • Browser
  • Mail
  • News
  • Community
  • About

Navigation

    • Browser
    • Mail
    • News
    • Community
    • About
    • Register
    • Login
    • Search
    HomeBlogsForumHelpThemes
    • Home
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    1. Home
    2. Local Forum
    3. Русский (Russian)
    4. Профиль: Резервное копирование или Синхронизация?

    Профиль: Резервное копирование или Синхронизация?

    Русский (Russian)
    backup profile restore sync
    3
    9
    1984
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • coleslaw
      coleslaw last edited by coleslaw

      0_1560030475427_backup.jpg

      Так синхронизация, или же резервное копирование?
      Мой выбор очевиден, и к тому же, начало уже было положено здесь, а спустя год снова решали проблему.
      Для понимания того о чем далее пойдёт речь, советую прочесть: Резервное копирование и перенос данных в браузере Vivaldi,
      не забудьте про официальную страницу справки Full reset of Vivaldi, и вот этот пост, так же обязателен к прочтению Manually Backup/Restore.

      Видео, как это работает:
      Импорт профиля из архива в браузер + импорт пароля.
      Экспорт профиля в архив, как работает сценарий.

      Внимание ! Прежде чем, что либо удалить, всегда делайте Резервные копии.

      Предложенный ниже код, это сценарий, запустив который, вы сможете облегчить задачу сбора и архивации файлов дефолтного профиля браузера.
      Работоспособность кода зависит от установленных в вашей системе программ-архиваторов. Наличие «WinRAR» или «7-ZIP» приветствуется,
      поскольку код писался и тестировался только для этой "парочки". Если у вас другой софт, придётся скачать пакет 7z1900-extra.7z.
      Это автономный «7-ZIP», работает без установки в систему. Распакуйте архив, вам будет нужен файл 7za.exe, а его разрядность на ваше усмотрение.
      Вы можете ни чего не скачивать, и продолжать использовать свой штатный архиватор. Но тогда нужно будет, чуть подправить код сценария.
      Все команды прокомментированы, и в принципе должно быть понятно - что, где и когда. Используемая мной ОСь Windows 7, на Win 8,10 - не тестировал.

      cls
      @echo off
      title Backup profile Vivaldi
      setlocal
      rem Принудительно "гасим" процессы браузера
      set "Apps=update_notifier.exe,vivaldi.exe"
      :stop
      for %%a in (%Apps%) do tasklist | findstr /irc:"^%%a" && (taskkill /f /t /im "%%a"& goto stop)
      rem Задаём переменные, Vivaldi - каталог юзер-профиля, vPatch - путь к exe(шнику) браузера
      set "Vivaldi=%LocalAppData%\Vivaldi"
      set "vPatch=%LocalAppData%\Vivaldi\Application\vivaldi.exe"
      rem Задаём переменную End, куда будет помещён архив (здесь"C:\Users\XXXXX\Documents")
      set "End=%UserProfile%\Documents"
      rem Задаём переменную UserD и создаём каталог сбора файлов (здесь системная "Temp")
      set "UserD=%Temp%\Vivaldi\User Data"
      mkdir "%UserD%\Default"
      rem Копируем Папки (расширения, их настройки, настройки браузера)
      xcopy "%Vivaldi%\User Data\Default\databases" "%UserD%\Default\databases" /s /q /i /v
      xcopy "%Vivaldi%\User Data\Default\Extension Rules" "%UserD%\Default\Extension Rules" /s /q /i /v
      xcopy "%Vivaldi%\User Data\Default\Extensions" "%UserD%\Default\Extensions" /s /q /i /v
      xcopy "%Vivaldi%\User Data\Default\Local App settings" "%UserD%\Default\Local App settings" /s /q /i /v
      xcopy "%Vivaldi%\User Data\Default\Local Extension settings" "%UserD%\Default\Local Extension settings" /s /q /i /v
      xcopy "%Vivaldi%\User Data\Default\Local Storage" "%UserD%\Default\Local Storage" /s /q /i /v
      rem Копируем кастомные логотипы Экспресс-панели (задайте свой путь)
      xcopy "%Vivaldi%\User Data\myLogo" "%UserD%\myLogo" /s /q /i /v
      rem Копируем Файлы (закладки, логины-пароли, настройки профиля)
      copy /v "%Vivaldi%\User Data\Default\file_mapping.json" "%UserD%\Default\file_mapping.json"
      copy /v "%Vivaldi%\User Data\Default\Bookmarks" "%UserD%\Default\Bookmarks"
      copy /v "%Vivaldi%\User Data\Default\Login Data" "%UserD%\Default\Login Data"
      copy /v "%Vivaldi%\User Data\Default\Preferences" "%UserD%\Default\Preferences"
      copy /v "%Vivaldi%\User Data\Default\Secure Preferences" "%UserD%\Default\Secure Preferences"
      rem Оптимизация (удаление *.ldb - обновляемые данные расширений, сайтов и настроек  пользователя) 
      rem erase "%UserD%\*.ldb" /f /s /q
      rem Копируем "First Run" (маркер - первый запуск и настройка произведены)
      copy /v "%Vivaldi%\User Data\First Run" "%UserD%\First Run"
      rem Задаём переменные для создания имени файла архива - из билда, даты и времени
      set "vBuild=%vPatch:\=\\%"
      wmic Datafile where name="%vBuild%" get Version /format:Textvaluelist >"%UserD%\First Run"
      <"%UserD%\First Run" (for /f "tokens=2 delims==" %%a in ('more') do set "outBuild=%%a")
      rem set "arcDT=%date: =0% %time: =0%"
      rem for /f "tokens=1-7 delims=/-:., " %%a in ("%arcDT%") do (set arcDT=%%c-%%b-%%a_%%d.%%e.%%f)
      for /f "delims=." %%i in ('wmic OS get LocalDateTime ^| find "."') do set osDT=%%i
      set "aYear=%osDT:~0,4%"
      set "aMonth=%osDT:~4,2%"
      set "aDay=%osDT:~6,2%"
      set "aHour=%osDT:~8,2%"
      set "aMin=%osDT:~10,2%"
      set "aSec=%osDT:~12,2%"
      set "arcDT=%aYear%-%aMonth%-%aDay%_%aHour%.%aMin%.%aSec%"
      set "arcName=Default [%outBuild%] %arcDT%"
      rem Определяем разрядность системы, ищем архиватор "7-Zip" или "WinRar"
      if %Processor_Architecture% == x86 (if not defined Processor_ArchiteW6432 goto bit32)
      goto bit64
      :bit32
      path "%ProgramFiles%\7-Zip\";"%ProgramFiles%\WinRAR\"
      goto cont
      :bit64
      path "%ProgramW6432%\7-Zip\";"%ProgramFiles(x86)%\7-Zip\";"%ProgramW6432%\WinRAR\";"%ProgramFiles(x86)%\WinRAR\"
      :cont
      rem Запускаем процесс создания и перемещения архива, с переименованием в каталог юзера
      7z a -t7z "%Temp%\backup.7z" "%Temp%\Vivaldi" && move "%Temp%\backup.7z" "%End%\%arcName%.7z" 
      if errorlevel 1 (Rar a -ep1 -r "%Temp%\backup.rar" "%Temp%\Vivaldi" && move "%Temp%\backup.rar" "%End%\%arcName%.rar") ^
      || (7za a -tzip "%Temp%\backup.zip" "%Temp%\Vivaldi" && move "%Temp%\backup.zip" "%End%\%arcName%.zip")
      path; 
      rem Удаляем каталог сбора файлов
      rmdir /s /q "%Temp%\Vivaldi"
      endlocal
      rem Сигнал завершения  =))
      rundll32 user32,MessageBeep
      rem Открытие папки с готовым архивом
      explorer "%UserProfile%\Documents"
      timeout 3
      exit
      

      Копируем, вставляем, сохраняем документ, меняем расширение на bat. Если будете использовать 7za.exe, то он должен лежать рядом с bat-ником.
      В коде сценария, пути к файлам браузера взяты от режима установки "Install per user", и задействованы системные переменные.
      Вы можете менять пути, (я же не могу знать как и куда вы установили браузер) но обязательно заключайте всё в двойные кавычки.
      Текущий сценарий, выполнит архивацию только "в моей" комплектации. Хотите "всё включено" - читайте публикации по ссылкам, и правьте код.
      Будут минимально заархивированы: Настройки браузера, Настройки профиля, Расширения и их настройки, Закладки, Логины-пароли.
      Так как я использую кастомные логотипы сайтов на экспресс-панели, код их копирования включен (плюс файл "file_mapping.json", в нём пути к лого).

      Немного о коде.
      Строка, начинающаяся с REM (rem), НЕ обрабатывается и может использоваться для пояснений, заметок и т.п.
      стр.8 - принудительно завершит всё процессы браузера. Перед резервированием закройте браузер, иначе это сделает bat-ник.
      стр.33 - оптимизация размера архива, не рекомендуется использовать (закомментирована т.к. пока в режиме тестирования).
      стр.35 - команда копирования маркерного файла, самое главное действие в этом сценарии. Проверяйте наличие в архиве файла "First Run"
      стр.50 - задаётся переменная имени архива, она же в свою очередь состоит из маски + две переменные - версия браузера и текущая дата.
      Форма текущей даты: год-месяц-день_часы.минуты.секунды. Пример конечного результата: Default [2.5.1525.48] 2019-05-30_23.59.59
      стр.49 - вы можете сформировать шаблон Дата_Время, в зависимости от ваших собственных предпочтений.
      В генерации данных для переменных, в шаблон имени архива, задействована консольная утилита wmic.exe, из WMI.
      Если "wmic" не отработает, что мало вероятно, то есть резерв - снять REM со строк 40 и 41, тогда как строки 42-49 закомментировать,
      также присутствует шаблон дата_время, в конце стр.41 (c-b-a_d.e.f)

      Статья по списку запросов Useful WMIC Queries
      Желающим потестировать, оптимизировать код или портировать на другие скриптовые языки - Велкам.

      © "Я не волшебник. Я еще только учусь ..."

      H 1 Reply Last reply Reply Quote 9
      • V
        vladimirf last edited by

        Отличная тема!
        Подскажите, можно ли таким образом ещё историю браузера сохранить? И как сделать такой архив автоматически под паролем?

        coleslaw 1 Reply Last reply Reply Quote 0
        • coleslaw
          coleslaw @vladimirf last edited by

          @vladimirf said in Профиль: Резервное копирование или Синхронизация?:

          Подскажите, можно ли таким образом ещё историю браузера сохранить?

          Можно, прочтите Full reset of Vivaldi, и узнаете какие ещё файлы-папки можно-нужно бекапить. И добавьте код, в блок копирования файлов.

          copy /v "%Vivaldi%\User Data\Default\History" "%UserD%\Default\History"
          

          И как сделать такой архив автоматически под паролем?

          Прочтите справку к вашему архиватору.

          Ключи «7-ZIP» (7za) для архива c расширением 7z : -p123 и -mhe
          -p ключ, а 123 ваш пароль - можно посмотреть содержимое архива, а чтение и излечение только по паролю.
          -mhe шифрует заголовки файлов - просмотр и извлечение только по паролю.
          Ключ для архива c расширением zip : только -p123
          пример команды: 7z a -t7z -p123 -mhe

          Ключи «WinRAR» для архивов c расширением rar и zip одинаковы.
          -p123 - можно посмотреть содержимое архива, а чтение и излечение только по паролю.
          -hp123- шифрует заголовки файлов, просмотр и извлечение только по паролю.
          пример команды: Rar a -ep1 -r -hp123

          1 Reply Last reply Reply Quote 1
          • coleslaw
            coleslaw last edited by

            Ну вот, уже это, кое что.

            0_1561327593324_00.png

            H 1 Reply Last reply Reply Quote 2
            • H
              HellGerhard @coleslaw last edited by

              @coleslaw said in Профиль: Резервное копирование или Синхронизация?:

              Ну вот, уже это, кое что.

              Вообще бессмысленно, настроек бэкапа нет, расписание тоже, с тем же успехом можно и в ручную профиль в архив пихать

              coleslaw 1 Reply Last reply Reply Quote 1
              • coleslaw
                coleslaw @HellGerhard last edited by coleslaw

                @HellGerhard Поэтому и написал - "кое что".
                Для одно-кнопочного продукта, самое то.

                UPD: 2022-05-14
                OS: Win 8.1(Build 9600.20207)| Vivaldi: 5.1.2567.73

                cls
                @echo off
                title Backup profile Vivaldi
                setlocal
                rem Принудительно "гасим" процессы браузера
                set "Apps=update_notifier.exe,vivaldi.exe"
                :stop
                for %%a in (%Apps%) do tasklist | findstr /irc:"^%%a" && (taskkill /f /t /im "%%a"& goto stop)
                rem Задаём переменные, Vivaldi - каталог юзер-профиля, vPatch - путь к exe(шнику) браузера
                set "Vivaldi=%LocalAppData%\Vivaldi"
                set "vPatch=%ProgramW6432%\Vivaldi\Application\vivaldi.exe"
                rem set "vPatch=%LocalAppData%\Vivaldi\Application\vivaldi.exe"
                rem Задаём переменную End, куда будет помещён архив (здесь"C:\Users\XXXXX\Documents")
                set "End=%UserProfile%\Documents"
                rem Задаём переменную UserD и создаём каталог сбора файлов (здесь системная "Temp")
                set "UserD=%Temp%\Vivaldi\User Data"
                mkdir "%UserD%\Default"
                rem Копируем папки (расширения, их настройки, настройки браузера)
                xcopy "%Vivaldi%\User Data\Default\databases" "%UserD%\Default\databases" /s /q /i /v
                xcopy "%Vivaldi%\User Data\Default\Extension Rules" "%UserD%\Default\Extension Rules" /s /q /i /v
                xcopy "%Vivaldi%\User Data\Default\Extensions" "%UserD%\Default\Extensions" /s /q /i /v
                xcopy "%Vivaldi%\User Data\Default\Local App settings" "%UserD%\Default\Local App settings" /s /q /i /v
                xcopy "%Vivaldi%\User Data\Default\Local Extension settings" "%UserD%\Default\Local Extension settings" /s /q /i /v
                xcopy "%Vivaldi%\User Data\Default\Local Storage" "%UserD%\Default\Local Storage" /s /q /i /v
                xcopy "%Vivaldi%\User Data\Default\VivaldiThumbnails" "%UserD%\Default\VivaldiThumbnails" /s /q /i /v
                rem Копируем кастомные логотипы Экспресс-панели (задайте свой путь)
                xcopy "%Vivaldi%\User Data\myCSS" "%UserD%\myCSS" /s /q /i /v
                xcopy "%Vivaldi%\User Data\myLogo" "%UserD%\myLogo" /s /q /i /v
                rem Копируем файлы (закладки, логины-пароли, настройки профиля)
                copy /v "%Vivaldi%\User Data\Default\Favicons" "%UserD%\Default\Favicons"
                copy /v "%Vivaldi%\User Data\Default\file_mapping.json" "%UserD%\Default\file_mapping.json"
                copy /v "%Vivaldi%\User Data\Default\contextmenu.json" "%UserD%\Default\contextmenu.json"
                copy /v "%Vivaldi%\User Data\Default\Bookmarks" "%UserD%\Default\Bookmarks"
                copy /v "%Vivaldi%\User Data\Default\Login Data" "%UserD%\Default\Login Data"
                copy /v "%Vivaldi%\User Data\Default\Preferences" "%UserD%\Default\Preferences"
                copy /v "%Vivaldi%\User Data\Default\Secure Preferences" "%UserD%\Default\Secure Preferences"
                rem Оптимизация (удаление *.ldb - обновляемые данные расширений, сайтов и настроек  пользователя) 
                erase "%UserD%\Default\Local Extension settings\*.ldb" /f /s /q
                erase "%UserD%\Default\Local Storage\*.ldb" /f /s /q
                rem Копируем "First Run" (маркер - первый запуск произведен) + "Local State" (данные расширений)
                copy /v "%Vivaldi%\User Data\Local State" "%UserD%\Local State"
                copy /v "%Vivaldi%\User Data\First Run" "%UserD%\First Run"
                rem Задаём переменные для создания имени файла архива - из билда, даты и времени
                set "vBuild=%vPatch:\=\\%"
                wmic Datafile where name="%vBuild%" get Version /format:Textvaluelist >"%UserD%\First Run"
                <"%UserD%\First Run" (for /f "tokens=2 delims==" %%a in ('more') do set "outBuild=%%a")
                for /f "delims=." %%i in ('wmic OS get LocalDateTime ^| find "."') do set osDT=%%i
                set "aYear=%osDT:~0,4%"
                set "aMonth=%osDT:~4,2%"
                set "aDay=%osDT:~6,2%"
                set "aHour=%osDT:~8,2%"
                set "aMin=%osDT:~10,2%"
                set "aSec=%osDT:~12,2%"
                set "arcDT=%aYear%-%aMonth%-%aDay%_%aHour%.%aMin%.%aSec%"
                set "arcName=Default [%outBuild%] %arcDT%"
                rem Определяем разрядность системы, ищем архиватор "7-Zip" или "WinRar"
                if %Processor_Architecture% == x86 (if not defined Processor_ArchiteW6432 goto bit32)
                goto bit64
                :bit32
                path "%ProgramFiles%\7-Zip\";"%ProgramFiles%\WinRAR\"
                goto cont
                :bit64
                path "%ProgramW6432%\7-Zip\";"%ProgramFiles(x86)%\7-Zip\";"%ProgramW6432%\WinRAR\";"%ProgramFiles(x86)%\WinRAR\"
                :cont
                rem Запускаем процесс создания и перемещения архива, с переименованием в каталог юзера
                7z a -t7z "%Temp%\backup.7z" "%Temp%\Vivaldi" && move "%Temp%\backup.7z" "%End%\%arcName%.7z" 
                if errorlevel 1 (Rar a -ep1 -r "%Temp%\backup.rar" "%Temp%\Vivaldi" && move "%Temp%\backup.rar" "%End%\%arcName%.rar") ^
                || (7za a -tzip "%Temp%\backup.zip" "%Temp%\Vivaldi" && move "%Temp%\backup.zip" "%End%\%arcName%.zip")
                path; 
                rem Удаляем каталог сбора файлов
                rmdir /s /q "%Temp%\Vivaldi"
                endlocal
                rem Сигнал завершения  =))
                rundll32 user32,MessageBeep
                rem Открытие папки с готовым архивом
                explorer "%UserProfile%\Documents"
                timeout 3
                exit
                

                Теперь Vivaldi установлен в "Program Files", путь "%LocalAppData%" оставлен, но закомментирован.
                Добавлена в копирование папка "VivaldiThumbnails" - изображения от сторонних тем для экспресс-панели.
                Добавлены в копирование папка "myCSS", файлы "contextmenu.json" и "Favicons"
                Включена оптимизация для уменьшения размера архива (бывшая строка 33, сейчас 38,39).
                Добавлен в копирование файл "Local State" - отвечает за сохранность установленных расширений.
                Генерация имени архива оставлена за WMIC, простые CMD-команды убраны.

                1 Reply Last reply Reply Quote 1
                • H
                  HellGerhard @coleslaw last edited by

                  @coleslaw А где после последних изменений хранятся куки?

                  coleslaw 1 Reply Last reply Reply Quote 0
                  • coleslaw
                    coleslaw @HellGerhard last edited by

                    @HellGerhard said in >>:

                    А где после последних изменений хранятся куки?

                    О, во как - переехали. Спасибо что напомнили.
                    На работе v2.6.1566.49 (т.к флэш нужен), дома откатился до v4.3.2439.65, а пятёрка так, без дела болтается.

                    Сейчас глянул - всё на скриншоте:
                    coo

                    Проверил на ру.трекере - работает. Удалял и восстанавливал всю папку "Network",
                    ну а так, по хорошему, нужно подробней разбираться, что ещё и куда распихали.

                    H 1 Reply Last reply Reply Quote 0
                    • H
                      HellGerhard @coleslaw last edited by

                      @coleslaw said in Профиль: Резервное копирование или Синхронизация?:

                      О, во как - переехали. Спасибо что напомнили.

                      Да не, гугл же вообще хочет их выпилить (
                      Так что пока только экспорт/импорт в json спасает

                      1 Reply Last reply Reply Quote 0
                      Loading More Posts
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes
                      • Reply as topic
                      Log in to reply
                      • 1 / 1
                      • First post
                        Last post

                      Looks like your connection to Vivaldi Forum was lost, please wait while we try to reconnect.

                      Copyright © Vivaldi Technologies™ — All rights reserved. Privacy Policy | Code of conduct | Terms of use | Vivaldi Status