KBackup — небольшая утилита резервного копирования из состава KDE Gear. Она не пытается быть корпоративной системой: это понятная графическая оболочка над tar с профилями, инкрементальными копиями и запуском из командной строки. Для домашних документов, настроек и небольших рабочих каталогов такого набора обычно достаточно. Ниже — установка, профили, инкрементальный режим, сжатие, автоматизация и проверка восстановления.
Установка и первый профиль
KBackup есть в репозиториях основных дистрибутивов. Вместе с ним установятся библиотеки KDE, но отдельный рабочий стол не требуется: приложение запускается и в GNOME, и в Xfce.
sudo apt install kbackup
sudo dnf install kbackup
sudo pacman -S kbackup
kbackup
В окне выберите каталоги в дереве слева. Выбор папки означает, что в копию попадут все файлы и подпапки; лишние элементы внутри можно снять. Затем откройте «Файл → Сохранить профиль» и укажите файл с расширением .kbp. В профиле хранятся источники, исключения, приёмник, префикс архива, размер слайса и интервал полной копии.
Приёмником может быть локальный диск или URL KIO, например sftp://user@server/backup/. Для SFTP нужен пакет kio-extras и вход по ключу; пароль в URL лучше не хранить. Профиль можно запускать двойным щелчком или передать путь в командной строке.
kbackup --help | grep -E "auto|profile"
kbackup ~/backup.kbp
Полная и инкрементальная копия
В профиле задаётся интервал полной копии в днях. Если указать, например, пять дней, KBackup раз в пять дней сохраняет все выбранные файлы, а в промежутке копирует только изменившиеся. Такие архивы получают суффикс _inc, полные — без него. Профиль хранит время последней копии, поэтому программа сама понимает, когда нужен полный проход.
Инкрементальный режим ускоряет работу, но усложняет восстановление: нужно взять последний полный архив и последовательно наложить на него все _inc-файлы. Если срочно нужна полная копия вне графика, в интерфейсе есть принудительный полный запуск, а в командной строке — ключ —forceFull. После него отсчёт интервала начинается заново.
Сжатие и размер архива
KBackup сжимает каждый файл отдельно и складывает результат в несжатый tar. В зависимости от доступных утилит выбирается xz, bzip2 или gzip; внутри архива имена получают расширение .xz, .bzip2 или .gz. Поэтому сам архив обычно называется .tar, а не .tar.gz, и проверять его нужно командой tar -tf, а не tar -tzf.
tar -tf /srv/backup/backup_2026-11-05.tar | head
tar -tf /srv/backup/backup_2026-11-05_inc.tar | wc -l
du -h /srv/backup/backup_2026-11-05.tar
df -h /srv/backup
При локальном приёмнике KBackup может разбивать копию на слайсы заданного размера: в имени появляются номера _1, _2 и так далее. Это удобно для флешек и DVD, но требует места под все части. Для восстановления нужны все слайсы одного набора, поэтому храните их вместе и не переименовывайте.
Автоматизация через cron и systemd
Встроенного планировщика нет, но есть режимы командной строки. Ключ —auto запускает копирование с видимым окном, а —autobg работает без графического интерфейса и пишет прогресс в stderr — именно его удобно вызывать из cron или systemd. Ключ —verbose добавляет имена обрабатываемых файлов.
kbackup --autobg /home/user/backup.kbp --verbose
kbackup --auto /home/user/backup.kbp
Пример задания cron: запуск каждый день в 02:15 с журналом в отдельном файле. Строку добавляют через crontab -e от того пользователя, который имеет доступ к источникам и приёмнику.
15 2 * * * /usr/bin/kbackup --autobg /home/user/backup.kbp --verbose >> /var/log/kbackup.log 2>&1
В systemd удобнее обойтись oneshot-сервисом и отдельным таймером. Оба юнита кладутся в /etc/systemd/system, после чего выполняются daemon-reload и enable —now для таймера.
# /etc/systemd/system/kbackup.service
[Unit]
Description=KBackup home profile
[Service]
Type=oneshot
ExecStart=/usr/bin/kbackup --autobg /home/user/backup.kbp --verbose
# /etc/systemd/system/kbackup.timer
[Unit]
Description=Daily KBackup run
[Timer]
OnCalendar=daily
Persistent=true
[Install]
WantedBy=timers.target
Проверьте первый запуск через systemctl status и journalctl. Если KBackup запускается от root, убедитесь, что у него есть доступ к профилю и что графические библиотеки не требуют пользовательской сессии: режим —autobg как раз для этого и предназначен.
Восстановление и проверка
В графическом интерфейсе откройте вкладку восстановления, выберите архив и целевой каталог. Сначала восстановите один файл в /tmp/restore-test, чтобы не перезаписать рабочие данные. Для инкрементального набора сначала распакуйте полный архив, затем _inc-файлы в хронологическом порядке: более новые версии файлов перезапишут старые.
mkdir -p /tmp/restore-test
tar -xf /srv/backup/backup_2026-11-05.tar -C /tmp/restore-test
tar -xf /srv/backup/backup_2026-11-05_inc.tar -C /tmp/restore-test
find /tmp/restore-test -name '*.gz' -exec gzip -t {} +
Команда gzip -t проверяет каждый сжатый файл после распаковки. Если архив создавался с xz или bzip2, используйте xz -t и bzip2 -t соответственно. Сравните содержимое с оригиналом через diff -r и посчитайте файлы: пустой или неполный набор лучше обнаружить сразу.
Типичные ошибки
- Копирование открытых баз данных без дампа: файлы меняются во время чтения.
- Хранение единственной копии на том же диске, который резервируется.
- Игнорирование кода возврата: tar возвращает 1, если файл изменился, и 2 при фатальной ошибке.
- Восстановление только последнего _inc без полного архива.
- Отсутствие теста восстановления после смены профиля.
Перед запуском проверяйте свободное место: df -h показывает остаток, а du -sh оценивает размер источников. Если места меньше двух полных копий, подключите внешний диск и не храните слайсы одного набора в разных папках. Это экономит время при восстановлении.
Для системных каталогов запускайте копирование с правами root, иначе часть файлов будет пропущена. Помните, что tar не сохраняет ACL и расширенные атрибуты без ключей —acls и —xattrs, а KBackup не заменяет специализированные средства для образов дисков. Держите две копии на разных носителях и одну — вне дома; старые архивы удаляйте только после проверки свежего.
Итог
KBackup закрывает простой сценарий: выбрать каталоги, сохранить профиль .kbp, настроить интервал полной копии и запускать —autobg из cron или systemd. Используйте сжатие с учётом того, что архив остаётся tar, проверяйте его через tar -tf и обязательно восстанавливайте полный набор вместе с _inc-файлами. Для больших объёмов и сложных политик хранения подойдут restic или PBS, но для домашних документов KBackup остаётся понятным и предсказуемым инструментом.