Настраиваем тригер для резервного копирования KeePass

Print Friendly, PDF & Email

Задача:

Настроить простое резервное копирования базы данных KeePass

---------------------------------------------------------------

KeePass — кроссплатформенная свободная распространяемая программа для хранения паролей. Существует две версии менеджера паролей:

  • Первая версия (Classic Edition) — облегчённая версия, только для хранения паролей.
  • Вторая версия (Professional Edition) — более функциональная кроссплатформенная версия, работает без перекомпиляции в ОС Windows, macOS и Linux, но требует для своей работы NET Framework.

Каждую Windows версию KeePass можно скачать в виде инсталятора или портативной.

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

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

Сервис > Триггеры

Отмечаем «Использовать триггерную систему» и нажимаем «Добавить»

  • Название: Backup database on open (можно что-то другое написать)
  • Разрешён — отмечаем
  • Включён с момента запуска KeePass — отмечаем

Переходим во вкладку «События» далее кнопка «Добавить». Выбираем «Программа запущена и готова» и нажимаем «ОК»

Во вкладке «Действия» добавляем два раза «Выполнить команду / URL»

Первое действие
%comspec%
/c copy "{DB_PATH}" "{DB_BASENAME}.{DT_SIMPLE}"

Второе действие
%comspec%
/c for /f "skip=7 tokens=*" %X in ('dir "{DB_BASENAME}.*" /b /o:-d') do del "%X"

В итоге, должно получится

Для теста я 7 раз запустил и закрыл базу. У нас создалось 6 резервных копий и каждый седьмой запуск будет перезаписываться.

Настроенный тригер для импорта

<?xml version="1.0" encoding="utf-8"?>
<TriggerCollection xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<Triggers>
		<Trigger>
			<Guid>/JtfGdYaq0ee1skhow2Xug==</Guid>
			<Name>Backup database on open</Name>
			<Events>
				<Event>
					<TypeGuid>5f8TBoW4QYm5BvaeKztApw==</TypeGuid>
					<Parameters>
						<Parameter>0</Parameter>
						<Parameter />
					</Parameters>
				</Event>
			</Events>
			<Conditions />
			<Actions>
				<Action>
					<TypeGuid>2uX4OwcwTBOe7y66y27kxw==</TypeGuid>
					<Parameters>
						<Parameter>%comspec%</Parameter>
						<Parameter>/c copy "{DB_PATH}" "{DB_BASENAME}.{DT_SIMPLE}"</Parameter>
						<Parameter>False</Parameter>
						<Parameter>0</Parameter>
						<Parameter />
					</Parameters>
				</Action>
				<Action>
					<TypeGuid>2uX4OwcwTBOe7y66y27kxw==</TypeGuid>
					<Parameters>
						<Parameter>%comspec%</Parameter>
						<Parameter>/c for /f "skip=7 tokens=*" %X in ('dir "{DB_BASENAME}.*" /b /o:-d') do del "%X"</Parameter>
						<Parameter>False</Parameter>
						<Parameter>0</Parameter>
						<Parameter />
					</Parameters>
				</Action>
			</Actions>
		</Trigger>
	</Triggers>
</TriggerCollection>
Помогла статья? Есть возможность отблагодарить автора

QR Link:

QR Code

Читайте также:

Добавить комментарий

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