Timeshift: различия между версиями
(→Режим RSYNC: + шаблоны) |
|||
(не показаны 4 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
Timeshift — программа для автоматического периодического создания копий системы (снимков/snapshots). | Timeshift — программа для автоматического периодического создания копий системы (снимков/snapshots). | ||
Timeshift предназначен прежде всего | Timeshift предназначен прежде всего для создания снимков системных файлов и настроек. Пользовательские данные по умолчанию не архивируются поэтому в случае сбоя системы, восстанавливаются системные файлы, а данные пользователей остаются в актуальном состоянии (конечно, если они не были повреждены). | ||
Резервные копии не могут быть восстановлены на уровне отдельных файлов, восстановление всегда происходит в полном объеме настроек Timeshift. | Резервные копии не могут быть восстановлены на уровне отдельных файлов, восстановление всегда происходит в полном объеме настроек Timeshift. | ||
Строка 27: | Строка 26: | ||
Особенности режима RSYNC: | Особенности режима RSYNC: | ||
*снимки создаются путём копирования | *снимки создаются путём копирования системных файлов при помощи rsync и создания жёстких ссылок на неизмененные файлы из предыдущего снимка; | ||
*все файлы копируются при создании первого снимка. Последующие снимки являются инкрементальными. Неизменные файлы будут связаны с предыдущим снимком, если он доступен; | *все файлы копируются при создании первого снимка. Последующие снимки являются инкрементальными. Неизменные файлы будут связаны с предыдущим снимком, если он доступен; | ||
*создание первого снимка может занять до 10 минут; | *создание первого снимка может занять до 10 минут; | ||
*системный раздел может быть отформатирован в любой файловой системе. Резервный раздел может быть | *системный раздел может быть отформатирован в любой файловой системе. Резервный раздел может быть отформатирован в любой файловой системе Linux, поддерживающей жесткие ссылки. Сохранение снимков на несистемный или внешний диск позволяет восстановить систему, даже если системный диск повреждён; | ||
*можно задать исключения для файлов и каталогов для экономии дискового пространства; | *можно задать исключения для файлов и каталогов для экономии дискового пространства; | ||
*систему необходимо перезагрузить после восстановления снимка. | *систему необходимо перезагрузить после восстановления снимка. | ||
Строка 49: | Строка 48: | ||
Снимки уровня «Загрузка» создаются при каждом запуске системы (с задержкой в 10 минут). Они выполняются в фоне и не влияют на скорость загрузки системы. | Снимки уровня «Загрузка» создаются при каждом запуске системы (с задержкой в 10 минут). Они выполняются в фоне и не влияют на скорость загрузки системы. | ||
На вкладке «Пользователи» можно указать, включать ли в резервную копию пользовательские данные. | |||
Т.к. Timeshift не предназначен для резервного копирования пользовательских данных, по умолчанию домашние каталоги пользователей не включаются в резервную копию. Это сделано для предотвращения перезаписи пользовательских данных во время восстановления, а также для уменьшения размера резервных копий. | Т.к. Timeshift не предназначен для резервного копирования пользовательских данных, по умолчанию домашние каталоги пользователей не включаются в резервную копию. Это сделано для предотвращения перезаписи пользовательских данных во время восстановления, а также для уменьшения размера резервных копий. | ||
Если выбрать опцию «Включить только скрытые файлы», будет выполнено резервное копирование и восстановление скрытых файлов и каталогов в домашнем каталоге пользователя (эти каталоги содержат пользовательские файлы конфигурации): | |||
[[File:Timeshift-rsync-04.png| | [[File:Timeshift-rsync-04.png|Вкладка «Пользователи»]] | ||
На вкладке «Фильтры» можно выборочно указать, какие файлы/каталоги включать/исключать из резервного копирования (динамические каталоги исключаются по умолчанию: {{path|/dev}}, {{path|/proc}}, …): | На вкладке «Фильтры» можно выборочно указать, какие файлы/каталоги включать/исключать из резервного копирования (динамические каталоги исключаются по умолчанию: {{path|/dev}}, {{path|/proc}}, …): | ||
Строка 60: | Строка 61: | ||
[[File:Timeshift-rsync-05.png|Вкладка «Фильтры»]] | [[File:Timeshift-rsync-05.png|Вкладка «Фильтры»]] | ||
В данном примере из | В данном примере из резервного копирования будут исключены все файлы mp3, все системные журналы, кроме журналов веб-сервера apache. | ||
Редактировать шаблон можно дважды щелкнув левой кнопкой мыши по строке шаблона. | Редактировать шаблон можно дважды щелкнув левой кнопкой мыши по строке шаблона. | ||
Строка 87: | Строка 88: | ||
{{Note|Не рекомендуется включать пользовательские данные в резервные копии, так как они будут перезаписаны при восстановлении снимка.}} | {{Note|Не рекомендуется включать пользовательские данные в резервные копии, так как они будут перезаписаны при восстановлении снимка.}} | ||
Просмотреть итоговый список исключений можно, нажав кнопку | Просмотреть итоговый список исключений можно, нажав кнопку «Итог» на вкладке «Фильтры»: | ||
[[File:Timeshift-rsync-06.png|Итоговый список исключений]] | [[File:Timeshift-rsync-06.png|Итоговый список исключений]] | ||
Строка 94: | Строка 95: | ||
Особенности режима BTRFS: | Особенности режима BTRFS: | ||
*снимки создаются с использованием встроенных средств файловой системы BTRFS | *снимки создаются с использованием встроенных средств файловой системы BTRFS; | ||
*снимки создаются и восстанавливаются мгновенно (создание снимков — это атомарная транзакция на уровне файловой системы); | *снимки создаются и восстанавливаются мгновенно (создание снимков — это атомарная транзакция на уровне файловой системы); | ||
*снимки восстанавливаются путём замены системных подразделов. Поскольку файлы никогда не копируются, не удаляются и не перезаписываются, риск потери данных отсутствует. Существующая система сохраняется как новый снимок после восстановления; | *снимки восстанавливаются путём замены системных подразделов. Поскольку файлы никогда не копируются, не удаляются и не перезаписываются, риск потери данных отсутствует. Существующая система сохраняется как новый снимок после восстановления; | ||
Строка 101: | Строка 102: | ||
*размер снимков BTRFS изначально равен нулю. При изменении системных файлов, данные записываются в новые блоки данных, которые занимают дисковое пространство (копирование при записи). Файлы в снимке продолжают указывать на исходные блоки данных; | *размер снимков BTRFS изначально равен нулю. При изменении системных файлов, данные записываются в новые блоки данных, которые занимают дисковое пространство (копирование при записи). Файлы в снимке продолжают указывать на исходные блоки данных; | ||
*ОС должна быть установлена на раздел BTRFS с разбивкой на подразделы @ и @home (см. [[Btrfs]]). Другие виды разделов не поддерживаются; | *ОС должна быть установлена на раздел BTRFS с разбивкой на подразделы @ и @home (см. [[Btrfs]]). Другие виды разделов не поддерживаются; | ||
* | *снимки можно восстановить без немедленной перезагрузки запущенной системы. | ||
На вкладке «Тип» выбрать тип снимков: | На вкладке «Тип» выбрать тип снимков: | ||
Строка 212: | Строка 213: | ||
<source lang="text" highlight="1"># timeshift --delete --snapshot '2021-12-28_17-01-26'</source> | <source lang="text" highlight="1"># timeshift --delete --snapshot '2021-12-28_17-01-26'</source> | ||
[[Категория: | [[Категория:Backup]] | ||
{{Category navigation|title= | {{Category navigation|title=Резервное копирование|category=Backup|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 13:45, 31 августа 2023
Timeshift — программа для автоматического периодического создания копий системы (снимков/snapshots).
Timeshift предназначен прежде всего для создания снимков системных файлов и настроек. Пользовательские данные по умолчанию не архивируются поэтому в случае сбоя системы, восстанавливаются системные файлы, а данные пользователей остаются в актуальном состоянии (конечно, если они не были повреждены).
Резервные копии не могут быть восстановлены на уровне отдельных файлов, восстановление всегда происходит в полном объеме настроек Timeshift.
Установка
Установить пакет timeshift:
# apt-get install timeshift
Запуск программы
Запустить Timeshift можно из «Меню запуска приложений» («Система» → «Timeshift (Программа для восстановления системы)») или из командной строки:
$ timeshift-launcher
При первом запуске будет запущен «Мастер установки». Запустить «Мастер установки» или открыть окно настроек резервного копирования также можно, нажав соответствующую кнопку на панели инструментов в окне программы Timeshift:
Настройка резервного копирования
Режим RSYNC
Особенности режима RSYNC:
- снимки создаются путём копирования системных файлов при помощи rsync и создания жёстких ссылок на неизмененные файлы из предыдущего снимка;
- все файлы копируются при создании первого снимка. Последующие снимки являются инкрементальными. Неизменные файлы будут связаны с предыдущим снимком, если он доступен;
- создание первого снимка может занять до 10 минут;
- системный раздел может быть отформатирован в любой файловой системе. Резервный раздел может быть отформатирован в любой файловой системе Linux, поддерживающей жесткие ссылки. Сохранение снимков на несистемный или внешний диск позволяет восстановить систему, даже если системный диск повреждён;
- можно задать исключения для файлов и каталогов для экономии дискового пространства;
- систему необходимо перезагрузить после восстановления снимка.
На вкладке «Тип» выбрать тип снимков:
Снимки имеют большой размер, поэтому желательно хранить их на другом диске или разделе. По умолчанию снимки сохраняются в системном (корневом) разделе в /timeshift, также можно выбрать другие разделы Linux.
На вкладке «Место» можно выбрать место, где будут храниться снимки:
На вкладке «Расписание» можно выбрать несколько уровней создания снимков (ежемесячно, еженедельно, ежедневно, ежечасно, при загрузке) и указать количество сохраняемых снимков для каждого уровня:
Снимки уровня «Загрузка» создаются при каждом запуске системы (с задержкой в 10 минут). Они выполняются в фоне и не влияют на скорость загрузки системы.
На вкладке «Пользователи» можно указать, включать ли в резервную копию пользовательские данные.
Т.к. Timeshift не предназначен для резервного копирования пользовательских данных, по умолчанию домашние каталоги пользователей не включаются в резервную копию. Это сделано для предотвращения перезаписи пользовательских данных во время восстановления, а также для уменьшения размера резервных копий.
Если выбрать опцию «Включить только скрытые файлы», будет выполнено резервное копирование и восстановление скрытых файлов и каталогов в домашнем каталоге пользователя (эти каталоги содержат пользовательские файлы конфигурации):
На вкладке «Фильтры» можно выборочно указать, какие файлы/каталоги включать/исключать из резервного копирования (динамические каталоги исключаются по умолчанию: /dev, /proc, …):
В данном примере из резервного копирования будут исключены все файлы mp3, все системные журналы, кроме журналов веб-сервера apache.
Редактировать шаблон можно дважды щелкнув левой кнопкой мыши по строке шаблона.
- '*' в шаблоне соответствует любому компоненту пути кроме "/";
- '**' в шаблоне соответствует любому компоненту пути, включая "/".
Например:
- /mydir/ — каталог mydir (но не его содержимое);
- /mydir/* — все файлы и каталоги в mydir (но не содержимое вложенных каталогов);
- /mydir/** — все файлы и каталоги в mydir (включая содержимое вложенных каталогов, рекурсивно);
- /mydir/*** — соответствует как каталогу mydir (как если бы было указано «/mydir/»), так и всему содержимому этого каталога (как если бы было указано «/mydir/**»).
Для того чтобы исключить из снимка содержимое каталога, но сам каталог оставить, нужно указать в шаблоне '/mydir/**', а не '/mydir/' (для каталога указание "/" в конце обязательно).
Шаблон не начинающийся с '/' проверяется с конца строки.
Если шаблон начинается на "+", то он рассматривается как включающий шаблон.
Подробнее см. man rsync.
Просмотреть итоговый список исключений можно, нажав кнопку «Итог» на вкладке «Фильтры»:
Режим BTRFS
Особенности режима BTRFS:
- снимки создаются с использованием встроенных средств файловой системы BTRFS;
- снимки создаются и восстанавливаются мгновенно (создание снимков — это атомарная транзакция на уровне файловой системы);
- снимки восстанавливаются путём замены системных подразделов. Поскольку файлы никогда не копируются, не удаляются и не перезаписываются, риск потери данных отсутствует. Существующая система сохраняется как новый снимок после восстановления;
- снимки сохраняются на том же диске, с которого они созданы (системном диске). Хранение на других дисках не поддерживается. Если системный диск выйдет из строя, снимки, хранящиеся на нём, будут потеряны вместе с системой;
- нет возможности исключать файлы и каталоги;
- размер снимков BTRFS изначально равен нулю. При изменении системных файлов, данные записываются в новые блоки данных, которые занимают дисковое пространство (копирование при записи). Файлы в снимке продолжают указывать на исходные блоки данных;
- ОС должна быть установлена на раздел BTRFS с разбивкой на подразделы @ и @home (см. Btrfs). Другие виды разделов не поддерживаются;
- снимки можно восстановить без немедленной перезагрузки запущенной системы.
На вкладке «Тип» выбрать тип снимков:
На вкладке «Место» указать устройство, где будут храниться снимки:
На вкладке «Расписание» можно выбрать несколько уровней создания снимков (ежемесячно, еженедельно, ежедневно, ежечасно, при загрузке) и указать количество сохраняемых снимков для каждого уровня:
Снимки уровня «Загрузка» создаются при каждом запуске системы (с задержкой в 10 минут). Они выполняются в фоне и не влияют на скорость загрузки системы.
Т.к. Timeshift не предназначен для резервного копирования пользовательских данных, по умолчанию домашние каталоги пользователей не включаются в резервную копию. На вкладке «Пользователи» можно включить подраздел @home в создаваемые снимки:
Создание снимков
Снимки будут создаваться автоматически согласно настроенному расписанию.
Для создания снимка в ручном режиме следует нажать кнопку «Создать» на панели инструментов. Создание снимка в режиме RSYNC:
Восстановление системы
Снимки можно восстановить либо из работающей системы (оперативное восстановление), либо из другой системы, на которой установлен Timeshift (автономное восстановление).
Снимки можно восстановить, выбрав снимок в главном окне и нажав кнопку «Восстановить» на панели инструментов.
Для завершения процесса восстановления требуется перезагрузка системы.
При восстановлении снимка в режиме RSYNC после нажатия кнопки «Восстановить» можно выбрать устройство, куда будут восстановлены файлы, указать нужно ли переустанавливать GRUB (кнопка «Параметры загрузчика»):
на следующем шаге будут показаны файлы, которые будут созданы/восстановлены/удалены в процессе восстановления снимка (только в режиме RSYNC):
Работа с Timeshift в командной строке
Вывод справки о команде:
$ timeshift
Если параметры не указаны, например при создании снимка, значения по умолчанию будут загружены из конфигурации приложения.
Просмотр списка снимков:
# timeshift --list
/dev/sda2 is mounted at: /run/timeshift/backup, options: rw,relatime,ssd,space_cache=v2,subvolid=5,subvol=/
Device : /dev/sda2
UUID : 9306bd96-eaee-41d9-a65d-6385c68357d2
Path : /run/timeshift/backup
Mode : BTRFS
Status : OK
5 snapshots, 107.4 GB free
Num Name Tags Description
------------------------------------------------------------------------------
0 > 2021-12-28_16-56-22 O
1 > 2021-12-28_17-01-26 O
2 > 2021-12-29_08-48-49 O
3 > 2021-12-29_15-40-02 O D
4 > 2021-12-29_15-41-48 O Before restoring '2021-12-28 17:01:26'
Создание снимка:
# timeshift --create
Пример:
# timeshift --create --comments "after update" --tags D
Using system disk as snapshot device for creating snapshots in BTRFS mode
/dev/sda2 is mounted at: /run/timeshift/backup, options: rw,relatime,ssd,space_cache=v2,subvolid=5,subvol=/
Creating new backup...(BTRFS)
Saving to device: /dev/sda2, mounted at path: /run/timeshift/backup
Created directory: /run/timeshift/backup/timeshift-btrfs/snapshots/2021-12-29_16-06-38
Created subvolume snapshot: /run/timeshift/backup/timeshift-btrfs/snapshots/2021-12-29_16-06-38/@
Created control file: /run/timeshift/backup/timeshift-btrfs/snapshots/2021-12-29_16-06-38/info.json
BTRFS Snapshot saved successfully (0s)
Tagged snapshot '2021-12-29_16-06-38': ondemand
------------------------------------------------------------------------------
Создание снимка, если он запланирован (есть в расписании):
# timeshift --check
Восстановить снимок (параметры будут запрошены в интерактивном режиме):
# timeshift --restore
Восстановить снимок:
# timeshift --restore --snapshot '2021-12-28_17-01-26'
Восстановить определенный снимок в необходимый раздел (для rsync):
# timeshift --restore --snapshot 1 --target /dev/sda2
Удалить снимок:
# timeshift --delete --snapshot '2021-12-28_17-01-26'