---
title: 'Rsnapshot на Ubuntu: практичный гайд по инкрементным бэкапам | Zomro'
description: ''
image: 'https://cdn.zomro.com/uploads/blog/a48%40server-panel.net/2025/12/29/chatgpt-image-29-2025-22_33_03_q50.jpg'
---

![opened image]()

  * [Zomro](https://zomro.com/rus/)
  * [FAQ](https://zomro.com/rus/blog/faq/)
  * Rsnapshot на Ubuntu: практичный гайд по инкрементным бэкапам 



# Rsnapshot на Ubuntu: практичный гайд по инкрементным бэкапам

17-12-2025

## ![](https://cdn.zomro.com/uploads/blog/a48%40server-panel.net/2025/12/29/chatgpt-image-29-2025-22_33_03_q50.jpg)

## 

## Что такое rsnapshot и почему его любят админы

**rsnapshot** — это «обёртка» над `rsync`, которая делает **снимки файловой системы** по расписанию. Фишка в том, что старые снимки используют **hard link** -и: если файл не менялся, он не копируется заново и почти не занимает место.

> За 20–30 минут настроить **регулярные инкрементные бэкапы** с понятной ротацией (daily/weekly/monthly), чтобы восстановление файлов было «как из папки».

В результате:

  * бэкапы получаются **инкрементными** и экономными по диску;

  * структура простая: `daily.0`, `daily.1` … — это обычные каталоги;

  * восстановление = обычное копирование файла назад.




## Предварительные требования (чек‑лист)

Перед настройкой проверь:

  * есть куда складывать бэкапы: **вторая диск/раздел/хранилище** — лучше, чем тот же системный диск;

  * файловая система бэкап‑раздела поддерживает hard links (ext4/xfs обычно ок);

  * если бэкапишь **удалённую** машину — нужен доступ по **SSH без пароля** (ключи).




**Рекомендация админа:** держать бэкапы на отдельном диске/томе (например, `/backup`), чтобы сбой системы не унёс и данные, и бэкап вместе.

## 

## Установка

На Ubuntu всё ставится из репозитория.
    
    
    sudo apt-get update
    sudo apt-get install rsnapshot
    

**Скриншот №1 (предложение):** вывод установки `apt-get install rsnapshot` (видно, что пакет установлен).

## Понимаем логику каталогов снимков

По умолчанию rsnapshot кладёт всё в:

  * `snapshot_root /var/cache/rsnapshot/`




А внутри будут появляться папки вида:

  * `daily.0` — самый свежий дневной снимок

  * `daily.1` — предыдущий и т.д.




**Важно:** rsnapshot не «архивирует» данные. Это папки и файлы.

## Настройка `/etc/rsnapshot.conf`

Сначала сделай резервную копию конфига:
    
    
    sudo cp /etc/rsnapshot.conf /etc/rsnapshot.conf.bak
    

Открой конфиг:
    
    
    sudo nano /etc/rsnapshot.conf
    

**Скриншот №2 (предложение):** открыт файл `/etc/rsnapshot.conf` в редакторе, видны ключевые строки (`snapshot_root`, `retain`, `backup`).

### 

### Где хранить снимки (snapshot_root)

Найди строку `snapshot_root` и при желании вынеси на отдельный том.

Пример (если у тебя есть смонтированный раздел `/backup`):
    
    
    snapshot_root    /backup/rsnapshot/
    

> Совет: проверь, что каталог существует и права адекватные:
    
    
    sudo mkdir -p /backup/rsnapshot
    sudo chown root:root /backup/rsnapshot
    sudo chmod 755 /backup/rsnapshot
    

### 

### Сколько хранить (retain)

В секции `BACKUP LEVELS / INTERVALS` задаём «глубину» истории.

Пример умеренной ротации:
    
    
    retain  daily     7
    retain  weekly    4
    retain  monthly   6
    

Как это читать:

  * **7 дневных** точек восстановления (примерно неделя назад)

  * **4 недельных** (примерно месяц)

  * **6 месячных** (полгода)




### 4.3) Что бэкапить локально (backup)

Если нужно сохранить текущую машину — добавь каталоги:
    
    
    backup  /etc/        localhost/
    backup  /home/       localhost/
    backup  /usr/local/  localhost/
    

**Практическая ремарка:**

  * `/etc` — конфиги

  * `/home` — данные пользователей

  * `/usr/local` — «ручные» установки




> Не бэкапь бездумно всё подряд. Например, `/proc`, `/sys`, `/dev`, `/run` обычно не нужны.

### 

### Удалённые бэкапы по SSH (опционально)

Если бэкапишь сервер `example.com`, rsnapshot может тянуть каталоги по SSH:
    
    
    backup  root@example.com:/etc/   example.com/   exclude=mtab,exclude=core
    backup  root@example.com:/home/  example.com/   +rsync_long_args=--bwlimit=16,exclude=core
    

Если SSH порт не 22:
    
    
    ssh_args  -p 22222
    

**Как сделать доступ по ключу (без пароля):**

  1. На сервере, где крутится rsnapshot (бэкап‑сервер):



    
    
    ssh-keygen -t ed25519 -a 64
    

  2. Передай публичный ключ на целевую машину:



    
    
    ssh-copy-id -i ~/.ssh/id_ed25519.pub root@example.com
    

  3. Проверь вход без пароля:



    
    
    ssh root@example.com 'hostname; whoami'
    

**Скриншот №3 (предложение):** успешный `ssh root@example.com 'hostname; whoami'` без запроса пароля.

> Админ‑совет по безопасности: лучше создавать отдельного пользователя для бэкапов (например `backup`), ограничивать ему доступ и разрешать только нужные каталоги.

## Проверяем конфиг и делаем тестовый прогон

### Проверка синтаксиса
    
    
    sudo rsnapshot configtest
    

Ожидаем что-то вроде: `Syntax OK`.

### Тест без выполнения (dry-run)
    
    
    sudo rsnapshot -t daily
    

Это покажет, что будет сделано, но **не будет реально копировать**.

### Первый реальный запуск
    
    
    sudo rsnapshot daily
    

После этого проверь, что появились каталоги снимков:
    
    
    sudo ls -la /var/cache/rsnapshot
    # или
    sudo ls -la /backup/rsnapshot
    

✅ **Скриншот №4 (предложение):** вывод `rsnapshot configtest` \+ `rsnapshot -t daily` (можно два скрина или один, если помещается).

✅ **Скриншот №5 (дополнительно, если хочешь):** список каталогов `daily.0`, `daily.1`… после первого запуска.

## Расписание: включаем автоматический запуск (cron)

На Ubuntu rsnapshot обычно поставляется с готовым cron‑файлом:

  * `/etc/cron.d/rsnapshot`




Открой его:
    
    
    sudo nano /etc/cron.d/rsnapshot
    

Там часто есть **закомментированные** примеры. Можно включить примерно так:
    
    
    0 4  * * *   root    /usr/bin/rsnapshot daily
    0 3  * * 1   root    /usr/bin/rsnapshot weekly
    0 2  1 * *   root    /usr/bin/rsnapshot monthly
    

Это означает:

  * daily — каждый день в 04:00

  * weekly — каждый понедельник в 03:00

  * monthly — 1-го числа в 02:00




**Скриншот №6 (предложение):** файл `/etc/cron.d/rsnapshot` с включёнными строками расписания.

## Как быстро восстановить файл (самая важная часть!)

Допустим, тебе нужно вернуть файл `notes.txt` из вчерашнего снимка.

  1. Найди нужную дату/снимок:



  * самый свежий — `daily.0`

  * предыдущий — `daily.1`



  2. Скопируй файл обратно:



    
    
    sudo cp -a /backup/rsnapshot/daily.1/localhost/home/user/notes.txt /home/user/notes.txt
    

> Если бэкап лежит в `/var/cache/rsnapshot`, поправь путь.

**Админ‑лайфхак:** можно восстанавливать не только файл, но и папку целиком.

## Практические советы, чтобы бэкап не подвёл

### Исключения (exclude) — экономим время и место

Добавляй исключения для «мусора» и временных файлов. Примеры:

  * кеши

  * временные каталоги

  * большие каталоги, которые проще восстановить из других источников




### Проверяй права и доступ

Частая причина провалов:

  * rsnapshot не может прочитать каталог (права)

  * нет доступа по SSH (ключи/порт/фаервол)




### Следи за логами

Если бэкап «молча не работает», смотри системные логи cron и сообщения rsnapshot.

Полезные команды:
    
    
    grep -i rsnapshot /var/log/syslog | tail -n 50
    

### Делай контрольный тест восстановления

Бэкап без теста восстановления — это **иллюзия безопасности**. Хотя бы раз:

  * восстанови пару файлов

  * убедись, что всё читается




## Мини‑шаблон “правильной” конфигурации для старта

Ниже — безопасная отправная точка (адаптируй под себя):
    
    
    snapshot_root    /backup/rsnapshot/
    
    retain  daily     7
    retain  weekly    4
    retain  monthly   6
    
    backup  /etc/        localhost/
    backup  /home/       localhost/
    backup  /usr/local/  localhost/
    

## 

## 

## Частые ошибки новичков

  * **Хранят бэкапы на том же диске** , что и данные (при падении диска — конец всему).

  * Делают бэкап «всего подряд», включая `/proc` и `/sys`.

  * Не проверяют `configtest` и сразу ставят cron.

  * Никогда не проверяют восстановление.




## Итог

rsnapshot — отличный вариант, когда нужен **простой, прозрачный и экономный** бэкап «папками», без сложных серверов и агентов.

Похожие статьи

[ISP: Как привязать DNS-хостинг к панели ISPmanager](https://zomro.com/rus/blog/faq/100-isp-kak-privjazat-dns-hosting-k-paneli-ispmanager) [Как установить и настроить MySQL на Windows Server](https://zomro.com/rus/blog/faq/364-how-to-install-and-configure-mysql-on-windows-server) [Сброс пароля администратора WordPress через консоль в Linux Ubuntu или CentOS 7](https://zomro.com/rus/blog/faq/335-resetting-wordpress-admin-password-via-console-in-linux-ubuntu-or-centos-7) [Как поднять OpenSSH на Windows 2012](https://zomro.com/rus/blog/faq/399-kak-podnyat-openssh-na-windows-2012) [Как установить и настроить fail2ban в Centos 7](https://zomro.com/rus/blog/faq/366-how-to-install-and-configure-fail2ban-in-centos-7)

[ Выделенный сервер с GPU от €174.80/мес ](/dedicated-servers/type=gpu)
