Страница 1 из 1

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 16 май 2024, 20:17
sasha300
:hi2:
Сегодня утром экспериментировал со Snapper, делал сравнение образов и прочие ништяки, которые может выполнять данная программулина. Точно помню, что выполнил команду:

Код: Выделить всё

sudo snapper --ambit classic rollback
потестил еще какое-то время и уехал на работу.
Сейчас, c помощью Timeshift, решил восстановить снапшот, который был до установки Snapper. Захожу и охулицезрею:
Снимок экрана_2024-05-16_19-57-19.png
перезарузил комп и снова нет снимков, Timeshift субтома не видит .
Зато SnapperGUI выдает:
Снимок экрана_2024-05-16_20-00-19.png
У меня появилось кучу вопросов, но основые это:
- со снапшотами Timeshift можно попрощаться или все-таки их можно восстановить?
- т.е. как говорил ув. Slant, Timeshift фиговенько реализует работу с btrfs, и на эти грабли я попал?

Заранее :hshake: и респект за подсказки!

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 17 май 2024, 01:24
slant
sasha300 писал(а):
16 май 2024, 20:17
- т.е. как говорил ув. Slant, Timeshift фиговенько реализует работу с btrfs, и на эти грабли я попал?
Угу. Нормально файловую систему оно не сканирует о фактическом положении дел, и полагается только на собственные записки.

А на счет снапшотов - 95% вероятности, что они физически никуда не делись, просто теперь не там, где timeshift их хочет видеть. Подходы к их размещению у timeshift и snapper разные. Timeshift с какой-то дури хранит их в подкаталоге на текущем @ (системном подразделе). Snapper же - в отдельном собственном каталоге/подразделе на корневом подразделе FS (там еще @ и @home рядом) - и большую часть времени они вне смонтированного дерева каталогов системы. Этим достигается во первых защита от случайного вмешательства из системы (не смонтированное место нельзя тупо случайно удалить или еще чего), а во вторых путь к санпшотам не меняется при замене системного подтома на другой снапшот. А именно это, судя по всему, со снапшотами Timeshift и вышло - они в другом подтоме теперь, неактивном.
Для подробностей надо посмотреть напрямую btrfs:
sudo btrfs sub li /
И вообще - крайне рекомендую почитать документацию btrfs про ее субтома/снапшоты. Т.к. по большому счету, все что работает с ними - это лишь обертка над родными командами btrfs subvolume ...
Будучи с ними знакомым - не будешь бояться потерять снапшоты и сумеешь сделать откат/преключение вообще без дополнительных программ. Благо синтаксис там несложный, а операции не деструктивные, за исключением явной команды удаления субтома.

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 17 май 2024, 07:40
sasha300
slant писал(а):
17 май 2024, 01:24
sudo btrfs sub li /

Код: Выделить всё

sas@NB264:~$ sudo btrfs sub li /
ID 258 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-03-31_16-27-42/@
ID 259 gen 13819 top level 5 path timeshift-btrfs/snapshots/2024-03-31_16-27-42/@home
ID 260 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-03-31_20-40-55/@
ID 261 gen 177 top level 5 path timeshift-btrfs/snapshots/2024-03-31_20-40-55/@home
ID 262 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-02-18/@
ID 263 gen 250 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-02-18/@home
ID 264 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-31-04/@
ID 265 gen 319 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-31-04/@home
ID 266 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-26-49/@
ID 267 gen 901 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-26-49/@home
ID 268 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-32-02/@
ID 269 gen 911 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-32-02/@home
ID 270 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-42-13/@
ID 271 gen 6566 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-42-13/@home
ID 302 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-21_00-45-56/@
ID 303 gen 7681 top level 5 path timeshift-btrfs/snapshots/2024-04-21_00-45-56/@home
ID 304 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-21_13-00-53/@
ID 305 gen 7764 top level 5 path timeshift-btrfs/snapshots/2024-04-21_13-00-53/@home
ID 306 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-21_17-47-26/@
ID 307 gen 8730 top level 5 path timeshift-btrfs/snapshots/2024-04-21_17-47-26/@home
ID 308 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-22_23-59-27/@
ID 309 gen 7709 top level 5 path timeshift-btrfs/snapshots/2024-04-22_23-59-27/@home
ID 322 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-31-28/@
ID 323 gen 7802 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-31-28/@home
ID 326 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-56-11/@
ID 327 gen 9592 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-56-11/@home
ID 357 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_00-21-17/@
ID 358 gen 9554 top level 5 path timeshift-btrfs/snapshots/2024-04-29_00-21-17/@home
ID 361 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_02-06-02/@
ID 362 gen 9521 top level 5 path timeshift-btrfs/snapshots/2024-04-29_02-06-02/@home
ID 369 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_11-10-13/@
ID 370 gen 9601 top level 5 path timeshift-btrfs/snapshots/2024-04-29_11-10-13/@home
ID 371 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_19-36-37/@
ID 372 gen 11400 top level 5 path timeshift-btrfs/snapshots/2024-04-29_19-36-37/@home
ID 377 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-05_12-39-40/@
ID 378 gen 13313 top level 5 path timeshift-btrfs/snapshots/2024-05-05_12-39-40/@home
ID 381 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-09_20-37-07/@
ID 382 gen 13953 top level 5 path timeshift-btrfs/snapshots/2024-05-09_20-37-07/@home
ID 385 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-09_21-12-31/@
ID 386 gen 13909 top level 5 path timeshift-btrfs/snapshots/2024-05-09_21-12-31/@home
ID 393 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-12_20-29-56/@
ID 394 gen 16857 top level 5 path timeshift-btrfs/snapshots/2024-05-12_20-29-56/@home
ID 397 gen 17694 top level 5 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@home
ID 398 gen 17695 top level 5 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@
ID 399 gen 17785 top level 5 path timeshift-btrfs/snapshots/2024-05-14_18-58-06/@
ID 400 gen 17784 top level 5 path timeshift-btrfs/snapshots/2024-05-14_18-58-06/@home
ID 401 gen 17650 top level 397 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@home/.snapshots
ID 402 gen 17685 top level 398 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots
ID 403 gen 17672 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/1/snapshot
ID 404 gen 17675 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/2/snapshot
ID 405 gen 17677 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/3/snapshot
ID 406 gen 17680 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/4/snapshot
ID 407 gen 17788 top level 5 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@home
ID 408 gen 17788 top level 5 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@
ID 409 gen 17755 top level 408 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots
ID 410 gen 17740 top level 407 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@home/.snapshots
ID 411 gen 17727 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/1/snapshot
ID 412 gen 17737 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/2/snapshot
ID 413 gen 17738 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/3/snapshot
ID 414 gen 17740 top level 410 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@home/.snapshots/1/snapshot
ID 415 gen 17741 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/4/snapshot
ID 416 gen 17749 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/5/snapshot
ID 417 gen 18203 top level 5 path @home
ID 418 gen 18206 top level 5 path @
ID 419 gen 18200 top level 418 path .snapshots
ID 420 gen 18185 top level 417 path @home/.snapshots
ID 421 gen 17826 top level 419 path .snapshots/1/snapshot
ID 422 gen 17869 top level 420 path @home/.snapshots/1/snapshot
ID 423 gen 17870 top level 419 path .snapshots/2/snapshot
ID 424 gen 17907 top level 419 path .snapshots/3/snapshot
ID 425 gen 17908 top level 419 path .snapshots/4/snapshot
ID 426 gen 17913 top level 419 path .snapshots/5/snapshot
ID 427 gen 17924 top level 419 path .snapshots/6/snapshot
ID 428 gen 17925 top level 419 path .snapshots/7/snapshot
ID 429 gen 17926 top level 419 path .snapshots/8/snapshot
ID 430 gen 17929 top level 419 path .snapshots/9/snapshot
ID 431 gen 17951 top level 419 path .snapshots/10/snapshot
ID 432 gen 17952 top level 419 path .snapshots/11/snapshot
ID 433 gen 17965 top level 419 path .snapshots/12/snapshot
ID 434 gen 18103 top level 419 path .snapshots/13/snapshot
ID 435 gen 17976 top level 419 path .snapshots/14/snapshot
ID 436 gen 17981 top level 420 path @home/.snapshots/2/snapshot
ID 437 gen 17982 top level 419 path .snapshots/15/snapshot
ID 438 gen 18032 top level 420 path @home/.snapshots/3/snapshot
ID 439 gen 18033 top level 419 path .snapshots/16/snapshot
ID 440 gen 18043 top level 419 path .snapshots/17/snapshot
ID 441 gen 18108 top level 420 path @home/.snapshots/4/snapshot
ID 442 gen 18108 top level 419 path .snapshots/18/snapshot
ID 443 gen 18185 top level 420 path @home/.snapshots/5/snapshot
ID 444 gen 18185 top level 419 path .snapshots/19/snapshot
ID 445 gen 18199 top level 419 path .snapshots/20/snapshot
sas@NB264:~$ 
Как видно из вывода команды, снапшоты Timeshift сохранились, что несомненно радует =) Другой вопрос, что надо сделать, чтобы Timeshift их увидел?
slant писал(а):
17 май 2024, 01:24
все что работает с ними - это лишь обертка над родными командами btrfs subvolume
я примерно так и представлял, даже и подумать не мог, что будет конфликт приложений.. Так бы сначала ставил эксперименты на другом ноуте, предназначенный для тестирования различных осей на Linux.

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 18 май 2024, 00:53
sasha300
Походу не нужны мне снимки Timeshift, так как у Snapper покруче реализован механизм работы с субтомами.
Но я не понимаю, если Timeshift после восстановления снапшота писал, что требуется перезагрузка, то Snapper этого не просит. Причем экспериментировал с субтомом / (ну или с @, но в Snapper субтом не отображается как @, во всяком случае в конфигах).
Получить конфиги с помощью команды:

Код: Выделить всё

sudo snapper list-configs
Ушел малеха от сути, пишу:

Код: Выделить всё

sudo snapper -v undochange 1..2
восстанавливается снапшот, из корня удаляется тестовая директория (была создана для теста, после созданного снапшота 1) и все, работаю дальше, никаких "требуется перезагрузка" и прочих телодвижений.
Или всё-таки стоит перезагружаться после восстановления снапшота?

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 18 май 2024, 15:17
slant
Номинально - не требуется, но чтобы избежать нежданчиков - лучше сделать перезагрузку.

Тут, для понимания вопроса, нужно знать как linux работает с открытыми файлами. В отличии от винды, здесь практически нет полностью блокируемых операций. В частности: что произойдет если файл открыт на запись/реактирование (скажем в текстовом редакторе) а мы его из другой консоли возьмем и удалим? Ошибка записи? Как бы не так.
При открытии система выделяет операции файловый дескриптор, который и становится "документом" данной операции и в котором хранятся все ссылки на нужные этой операции ресурсы. И пока операция не завершена - "документ" будет действующим. На практике это обозначает вот что:
1. Открываем файл на запись. Получили дескриптор (первый).
2. Удаляем файл из другой консоли - получили собственный дескриптор этой второй операции.
3. Система отработала удаление, убрала упоминание о файле из каталога FS. НО!
4. Первый дескриптор то еще действует! И сохраняет все данные нужные чтобы в уже "не существующий" файл успешно писать. (Т.к. тело файла и выделенные для него кластеры еще не очищены - существующий дескриптор не дает.)
5. Завершаем запись. Успешно. Дескриптор операции закрывается.
6. Ядро удовлетворенно вздыхает... и помечает все сектора принадлежавшие телу файла как свободные. Потому что у файла не осталось ни имен (в каталогах FS) ни открытых дескрипторов. Т.е. больше эти данные не доступны, а значит - это просто свободное место. (Это касается всех UNIX-based файловых систем, но на btrfs используется особо широко.)

Вообще в линуксе файл является существующим, пока соблюдается условие: <количество имен файла> >= 1 && <количество дескрипторов> >= 1
При этом открыть новые дескрипторы можно только если имя еще существует. Но уже открытые - независимы.

Точно так же как в вышеописанном примере - можно параллельно переименовать уже открытый ранее на запись файл. И запись пройдет успешно. И изменения будут видны в файле с новым именем (винда же тупо не даст переименовать или удалить в подобном случае).

В случае же манипуляций со снапшотами btrfs (допустим - сделано переключение на новый), это обозначает что все файлы которые уже открыты - будут продолжать использоваться. Т.е. это будут файлы на старом субразделе. А вот вновь открываемый файлы будут уже на новом месте. Это действует даже при ОТМОНТИРОВАНИИ субраздела. Т.е. можно примонтировать субраздел, начать копировать туда файл, и сразу отмонтировать субраздел... а файл все равно будет дописан. :)

P.S. на этих же особенностях основаны способности пакетных менеджеров APT, Pacman, RPM, и т.д. обновлять систему без перезагрузок во время работы. :) Пофигу что программа запущена, а нужно переписать ее бинарник из нового пакета - перепишем без вопросов. Пока текущий экземпляр выполняется, его дескриптор существует, и старый файл тоже доступен.

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 19 май 2024, 03:02
sasha300
Дальнейшее изучение Snapper порождает вопросы, но лучше создам отдельноый топик, а то спросил одно, а затем перескочил на совершенно другую тему..
Возвращаясь к сабжу - удалось воспроизвести ситуацию, при которой Timeshift перестает видеть субтом @: необходимо поставить систему так, чтобы /home находился на одном разделе с корнем (фс btrfs). Оба приложения (Timeshift и Snapper) прекрасно создают и восстанавливают снапшоты до тех пор, пока в терминале не выполнить команду:

Код: Выделить всё

sudo snapper --ambit classic rollback
после чего Timeshift резко забывает субтом @:
Снимок экрана_2024-05-19_02-35-18.png
Хотелось бы понять причину такого поведения.
Если же с помощью Snapper восстановить снапшоты, сделанные до ввода вышеприведенной команды, то на ситуацию это никак не влияет.
ну и выкладка blkid (сама система на разделе mmcblk0p2):

Код: Выделить всё

/dev/mmcblk0p5: BLOCK_SIZE="512" UUID="310DDB0123FEDB0A" TYPE="ntfs" PARTUUID="88691d70-f618-4367-8b40-8ec89f3a5d43"
/dev/mmcblk0p1: UUID="A144-24C8" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="b5958587-1b3f-4fd3-99ac-3a337e584543"
/dev/mmcblk0p4: UUID="60b96543-dddd-4f87-986b-70275fdb9bac" TYPE="swap" PARTUUID="2e3009b4-f705-49bf-8491-b928233515c0"
/dev/mmcblk0p2: UUID="1d3ac214-f639-46c2-9039-9ca38585eb88" UUID_SUB="f8cc9de0-e2da-41a0-b230-266bb18ba421" BLOCK_SIZE="4096" TYPE="btrfs" PARTUUID="0fdd3ec8-0721-46f8-9d11-7a61b689d1a0"
/dev/sda1: LABEL="sd_32GB" UUID="6d2db28c-5a65-4724-9ae0-31e9627270b5" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="ea66b5d4-01"
cat /etc/fstab:

Код: Выделить всё

sas@NB264:~$ cat /etc/fstab 
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk0p2 during installation
UUID=1d3ac214-f639-46c2-9039-9ca38585eb88 /               btrfs   defaults,subvol=@ 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=A144-24C8  /boot/efi       vfat    umask=0077      0       1
# /home was on /dev/mmcblk0p2 during installation
UUID=1d3ac214-f639-46c2-9039-9ca38585eb88 /home           btrfs   defaults,subvol=@home 0       2
# swap was on /dev/mmcblk0p4 during installation
UUID=60b96543-dddd-4f87-986b-70275fdb9bac none            swap    sw              0       0
snapper list:

Код: Выделить всё

sas@NB264:~$ sudo snapper list
  # | Тип    | № предварительного снимка | Дата                    | Пользователь | Очистка  | Описание        | Данные       
----+--------+---------------------------+-------------------------+--------------+----------+-----------------+--------------
 0  | single |                           |                         | root         |          | current         |              
 1  | single |                           | Чт 16 мая 2024 07:31:16 | root         |          |                 |              
 2  | single |                           | Чт 16 мая 2024 08:00:31 | root         | timeline | timeline        |              
 3  | pre    |                           | Чт 16 мая 2024 08:23:49 | root         | number   | apt             |              
 4  | post   |                         3 | Чт 16 мая 2024 08:23:52 | root         | number   | apt             |              
 5  | single |                           | Чт 16 мая 2024 08:25:39 | root         |          | 123             |              
 6  | single |                           | Чт 16 мая 2024 08:32:13 | root         | number   | without apache  |              
 7  | pre    |                           | Чт 16 мая 2024 08:32:43 | root         | number   | apt             |              
 8  | post   |                         7 | Чт 16 мая 2024 08:32:59 | root         | number   | apt             |              
 9  | single |                           | Чт 16 мая 2024 08:33:32 | root         | number   | after apache    |              
10  | pre    |                           | Чт 16 мая 2024 08:45:19 | root         | number   | apt             |              
11  | post   |                        10 | Чт 16 мая 2024 08:45:31 | root         | number   | apt             |              
12  | single |                           | Чт 16 мая 2024 08:52:15 | root         | number   | rollback backup | important=yes
13+ | single |                           | Чт 16 мая 2024 08:52:15 | root         |          | writable copy   |              
14  | single |                           | Чт 16 мая 2024 17:57:19 | root         | number   | boot            |              
17  | single |                           | Чт 16 мая 2024 19:04:26 | root         | number   | boot            |              
18  | single |                           | Чт 16 мая 2024 20:00:03 | root         | timeline | timeline        |              
19  | single |                           | Чт 16 мая 2024 21:00:27 | root         | timeline | timeline        |              
20  | single |                           | Пт 17 мая 2024 07:28:10 | root         | number   | boot            |              
21  | single |                           | Пт 17 мая 2024 08:00:49 | root         | timeline | timeline        |              
22  | single |                           | Пт 17 мая 2024 20:20:42 | root         | number   | boot            |              
23  | single |                           | Пт 17 мая 2024 22:17:24 | root         | timeline | timeline        |              
24  | single |                           | Пт 17 мая 2024 23:20:02 | root         | timeline | timeline        |              
25  | single |                           | Сб 18 мая 2024 10:32:47 | root         | timeline | timeline        |              
26  | single |                           | Сб 18 мая 2024 11:00:05 | root         | timeline | timeline        |              
27  | single |                           | Сб 18 мая 2024 14:10:49 | root         | timeline | timeline        |              
28  | single |                           | Сб 18 мая 2024 21:48:56 | root         | timeline | timeline        |              
29  | single |                           | Сб 18 мая 2024 21:52:27 | root         | number   | boot            |              
30  | single |                           | Сб 18 мая 2024 22:00:01 | root         | timeline | timeline        |              
31  | single |                           | Сб 18 мая 2024 23:00:05 | root         | timeline | timeline        |              
32  | single |                           | Вс 19 мая 2024 00:00:07 | root         | timeline | timeline        |              
33  | pre    |                           | Вс 19 мая 2024 00:07:48 | root         | number   | apt             |              
34  | post   |                        33 | Вс 19 мая 2024 00:07:54 | root         | number   | apt             |              
35  | pre    |                           | Вс 19 мая 2024 00:09:08 | root         | number   | apt             |              
36  | post   |                        35 | Вс 19 мая 2024 00:09:11 | root         | number   | apt             |              
37  | single |                           | Вс 19 мая 2024 01:00:07 | root         | timeline | timeline        |              
38  | single |                           | Вс 19 мая 2024 02:10:08 | root         | timeline | timeline        |              
39  | single |                           | Вс 19 мая 2024 02:55:09 | root         | number   | boot            |   
btrfs subvolume get-default / :

Код: Выделить всё

sas@NB264:~$ sudo btrfs subvolume get-default /
ID 434 gen 18527 top level 419 path @/.snapshots/13/snapshot
btrfs subvolume list / :

Код: Выделить всё

sas@NB264:~$ sudo btrfs subvolume list /
ID 258 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-03-31_16-27-42/@
ID 259 gen 13819 top level 5 path timeshift-btrfs/snapshots/2024-03-31_16-27-42/@home
ID 260 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-03-31_20-40-55/@
ID 261 gen 177 top level 5 path timeshift-btrfs/snapshots/2024-03-31_20-40-55/@home
ID 262 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-02-18/@
ID 263 gen 250 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-02-18/@home
ID 264 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-31-04/@
ID 265 gen 319 top level 5 path timeshift-btrfs/snapshots/2024-04-01_00-31-04/@home
ID 266 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-26-49/@
ID 267 gen 901 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-26-49/@home
ID 268 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-32-02/@
ID 269 gen 911 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-32-02/@home
ID 270 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-42-13/@
ID 271 gen 6566 top level 5 path timeshift-btrfs/snapshots/2024-04-04_20-42-13/@home
ID 302 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-21_00-45-56/@
ID 303 gen 7681 top level 5 path timeshift-btrfs/snapshots/2024-04-21_00-45-56/@home
ID 304 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-21_13-00-53/@
ID 305 gen 7764 top level 5 path timeshift-btrfs/snapshots/2024-04-21_13-00-53/@home
ID 306 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-21_17-47-26/@
ID 307 gen 8730 top level 5 path timeshift-btrfs/snapshots/2024-04-21_17-47-26/@home
ID 308 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-22_23-59-27/@
ID 309 gen 7709 top level 5 path timeshift-btrfs/snapshots/2024-04-22_23-59-27/@home
ID 322 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-31-28/@
ID 323 gen 7802 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-31-28/@home
ID 326 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-56-11/@
ID 327 gen 9592 top level 5 path timeshift-btrfs/snapshots/2024-04-23_00-56-11/@home
ID 357 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_00-21-17/@
ID 358 gen 9554 top level 5 path timeshift-btrfs/snapshots/2024-04-29_00-21-17/@home
ID 361 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_02-06-02/@
ID 362 gen 9521 top level 5 path timeshift-btrfs/snapshots/2024-04-29_02-06-02/@home
ID 369 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_11-10-13/@
ID 370 gen 9601 top level 5 path timeshift-btrfs/snapshots/2024-04-29_11-10-13/@home
ID 371 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-04-29_19-36-37/@
ID 372 gen 11400 top level 5 path timeshift-btrfs/snapshots/2024-04-29_19-36-37/@home
ID 377 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-05_12-39-40/@
ID 378 gen 13313 top level 5 path timeshift-btrfs/snapshots/2024-05-05_12-39-40/@home
ID 381 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-09_20-37-07/@
ID 382 gen 13953 top level 5 path timeshift-btrfs/snapshots/2024-05-09_20-37-07/@home
ID 385 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-09_21-12-31/@
ID 386 gen 13909 top level 5 path timeshift-btrfs/snapshots/2024-05-09_21-12-31/@home
ID 393 gen 17690 top level 5 path timeshift-btrfs/snapshots/2024-05-12_20-29-56/@
ID 394 gen 16857 top level 5 path timeshift-btrfs/snapshots/2024-05-12_20-29-56/@home
ID 397 gen 17694 top level 5 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@home
ID 398 gen 17695 top level 5 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@
ID 399 gen 17785 top level 5 path timeshift-btrfs/snapshots/2024-05-14_18-58-06/@
ID 400 gen 17784 top level 5 path timeshift-btrfs/snapshots/2024-05-14_18-58-06/@home
ID 401 gen 17650 top level 397 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@home/.snapshots
ID 402 gen 17685 top level 398 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots
ID 403 gen 17672 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/1/snapshot
ID 404 gen 17675 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/2/snapshot
ID 405 gen 17677 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/3/snapshot
ID 406 gen 17680 top level 402 path timeshift-btrfs/snapshots/2024-05-15_19-41-34/@/.snapshots/4/snapshot
ID 407 gen 17788 top level 5 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@home
ID 408 gen 17788 top level 5 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@
ID 409 gen 17755 top level 408 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots
ID 410 gen 17740 top level 407 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@home/.snapshots
ID 411 gen 17727 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/1/snapshot
ID 412 gen 17737 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/2/snapshot
ID 413 gen 17738 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/3/snapshot
ID 414 gen 17740 top level 410 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@home/.snapshots/1/snapshot
ID 415 gen 17741 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/4/snapshot
ID 416 gen 17749 top level 409 path timeshift-btrfs/snapshots/2024-05-15_20-25-03/@/.snapshots/5/snapshot
ID 417 gen 18684 top level 5 path @home
ID 418 gen 18684 top level 5 path @
ID 419 gen 18684 top level 418 path .snapshots
ID 420 gen 18683 top level 417 path @home/.snapshots
ID 421 gen 17826 top level 419 path .snapshots/1/snapshot
ID 422 gen 17869 top level 420 path @home/.snapshots/1/snapshot
ID 423 gen 17870 top level 419 path .snapshots/2/snapshot
ID 424 gen 17907 top level 419 path .snapshots/3/snapshot
ID 425 gen 17908 top level 419 path .snapshots/4/snapshot
ID 426 gen 17913 top level 419 path .snapshots/5/snapshot
ID 427 gen 17924 top level 419 path .snapshots/6/snapshot
ID 428 gen 17925 top level 419 path .snapshots/7/snapshot
ID 429 gen 17926 top level 419 path .snapshots/8/snapshot
ID 430 gen 17929 top level 419 path .snapshots/9/snapshot
ID 431 gen 17951 top level 419 path .snapshots/10/snapshot
ID 432 gen 17952 top level 419 path .snapshots/11/snapshot
ID 433 gen 17965 top level 419 path .snapshots/12/snapshot
ID 434 gen 18527 top level 419 path .snapshots/13/snapshot
ID 435 gen 17976 top level 419 path .snapshots/14/snapshot
ID 440 gen 18043 top level 419 path .snapshots/17/snapshot
ID 441 gen 18108 top level 420 path @home/.snapshots/4/snapshot
ID 442 gen 18108 top level 419 path .snapshots/18/snapshot
ID 443 gen 18185 top level 420 path @home/.snapshots/5/snapshot
ID 444 gen 18185 top level 419 path .snapshots/19/snapshot
ID 445 gen 18199 top level 419 path .snapshots/20/snapshot
ID 446 gen 18234 top level 420 path @home/.snapshots/6/snapshot
ID 447 gen 18234 top level 419 path .snapshots/21/snapshot
ID 448 gen 18254 top level 419 path .snapshots/22/snapshot
ID 449 gen 18291 top level 420 path @home/.snapshots/7/snapshot
ID 450 gen 18292 top level 419 path .snapshots/23/snapshot
ID 451 gen 18295 top level 420 path @home/.snapshots/8/snapshot
ID 452 gen 18296 top level 419 path .snapshots/24/snapshot
ID 453 gen 18298 top level 420 path @home/.snapshots/9/snapshot
ID 454 gen 18299 top level 419 path .snapshots/25/snapshot
ID 455 gen 18335 top level 420 path @home/.snapshots/10/snapshot
ID 456 gen 18335 top level 419 path .snapshots/26/snapshot
ID 457 gen 18350 top level 420 path @home/.snapshots/11/snapshot
ID 458 gen 18350 top level 419 path .snapshots/27/snapshot
ID 459 gen 18390 top level 420 path @home/.snapshots/12/snapshot
ID 460 gen 18390 top level 419 path .snapshots/28/snapshot
ID 461 gen 18397 top level 419 path .snapshots/29/snapshot
ID 462 gen 18408 top level 420 path @home/.snapshots/13/snapshot
ID 463 gen 18408 top level 419 path .snapshots/30/snapshot
ID 464 gen 18450 top level 420 path @home/.snapshots/14/snapshot
ID 465 gen 18450 top level 419 path .snapshots/31/snapshot
ID 466 gen 18520 top level 420 path @home/.snapshots/15/snapshot
ID 467 gen 18521 top level 419 path .snapshots/32/snapshot
ID 468 gen 18533 top level 419 path .snapshots/33/snapshot
ID 469 gen 18534 top level 419 path .snapshots/34/snapshot
ID 470 gen 18538 top level 419 path .snapshots/35/snapshot
ID 471 gen 18539 top level 419 path .snapshots/36/snapshot
ID 472 gen 18588 top level 420 path @home/.snapshots/16/snapshot
ID 473 gen 18589 top level 419 path .snapshots/37/snapshot
ID 474 gen 18621 top level 420 path @home/.snapshots/17/snapshot
ID 475 gen 18622 top level 419 path .snapshots/38/snapshot
ID 476 gen 18672 top level 419 path .snapshots/39/snapshot
ID 477 gen 18683 top level 420 path @home/.snapshots/18/snapshot
ID 478 gen 18683 top level 419 path .snapshots/40/snapshot

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 20 май 2024, 16:49
Dja
sasha300 писал(а):
19 май 2024, 03:02
ID 419 gen 18684 top level 418 path .snapshots
ID 420 gen 18683 top level 417 path @home/.snapshots
ID 421 gen 17826 top level 419 path .snapshots/1/snapshot
ID 422 gen 17869 top level 420 path @home/.snapshots/1/snapshot
А зачем он по 2 раза то повторяет? :hoho:

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 20 май 2024, 17:22
rogoznik
Dja, xnj что повторяет? Пути разные показывает

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 20 май 2024, 19:14
slant
sasha300,
Timeshift при работе со снапшотами переименовывает @ и снапшот, насколько я помню.

Snapper работает по другому. Он просто выставляет default маркер на нужный subvolume(сабраздел/снапшот).

По умолчанию оный маркер стоит на сабтоме с ID 5. Смысл маркера - он указывает ядру и системе какой сабраздел монтировать во время выполнения mount для btrfs если не было опции "subvol="
Т.е. ставя маркер - указываем где именно у нас будет корневой раздел. Это сильно облегчает вопросы запуска системы из загрузчика - поменяв маркер default более не нужно править никаких конфигов или обновлять загрузчик чтобы загрузился уже новый снапшот кореня системы. Проблема же в том, что timeshift, если я правильно помню, подразумевает сохранение default маркера на subvolume с именем/путем @ или ID 5. Хотя это не то, что просто не нужно для нормальной работы системы на btrfs, а как-бы вообще противоречит ее (btrfs) принципам. :)
По сути, при полностью "академической" установке системы на btrfs, опция subvol=@ вообще не нужна нигде, для указания сабтома где находится корень системы. Ни в загрузчике ни fstab. Корнем будет default сабтом. (Вот про @home отдельно - там опция ставится.)

При rollback - snapper тоже меняет default маркер, и откатывает его на предыдущий сабтом. Который получается не @ и не с ID 5. Смотрите текущее состояние через sudo btrfs sub get-default / Там же и установить можно вручную через set-default

ID - это абсолютные номера сущностей на btrfs, они никогда не меняются. Самый первый сабтом btrfs при ее создании получает ID 5, и метку default. Это изначальный корень btrfs (не имеющий символьного имени!).
В дальнейшем он может быть спокойно удален как любой другой. А в процессе установки Ubuntu/Mint создают на этом сабтоме с ID 5 два других сабтома - @ для корня системы, и @home для хомяков.
Имена же, в отличии от ID - могут быть изменены, как имя каталога. А кроме того они еще и могут быть вложенными - т.е. сабтом может быть вида @/.snaps - здесь внутри сабтома @ находится сабтом .snaps
И при переименовании @ во что-то еще такой путь тоже поменяется! Только ID неизменны, а маркеру default на имена тоже пофиг - он тоже на ID завязан. Отсюда и косяки timeshift который с именами работает а не с ID. С учетом того, что он еще и хранит снапшоты на другом сабтоме (текущем @) с доступом по имени и жонглирует ими во время смены снапшота - понимаете теперь откуда весь этот бардак?

В случае нормальной конфигурации под snapper структура диска должна выглядеть примерно так:

Код: Выделить всё

(ID 5)/
     /@
     /@home
     /snapshots
Где в snapshots оные и живут. Здесь на всякий случай напоминаю - символ @ - это не технический признак сабтома, а лишь общеиспользуемое соглашение (как у программистов про имена переменных). Однако вышеописанная структура именно такова: @ - изначальный корень системы, а дальше он может быть переключен на любой снапшот через set-default (что snapper и делает). После чего в сохранении /@ смысла уже не так много, но оно удобно для ручного манипулирования через "sudo btrfs sub ..." если до такого когда-то доходит.
На практике - Ubuntu\Mint слишком завязаны на имя @ как корень системы, потому snapper его обычно тоже поддерживает связанным с нужным снапшотом. Вообще - там возможности конфигурации довольно гибкие, и все это можно в конфигах задать.

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 21 май 2024, 23:31
sasha300
slant, Респект за такой развернутый ответ, проводил различные манипуляции на тестовом ноутбуке, в итоге понял, что это целая наука и сразу учесть все тонкости не получиться (у меня Timeshift так и не увидел субтома).
slant писал(а):
20 май 2024, 19:14
Отсюда и косяки timeshift который с именами работает а не с ID. С учетом того, что он еще и хранит снапшоты на другом сабтоме (текущем @) с доступом по имени и жонглирует ими во время смены снапшота
За пару дней экспериментов пришло явное осознание того, что использование BTRFS в связке с Timeshift не самое лучшее решение. Найти нужный субтом, поставить его дефолтным, загрузится с него и т.д. и т.п., короче нафиг. В дальнейшем юзаю true приложение для Btrfs - Snapper.

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 02 авг 2024, 08:50
Dja
rogoznik писал(а):
20 май 2024, 17:22
Dja, xnj что повторяет? Пути разные показывает
Всё равно странно.
dja@dja-work:~$ sudo btrfs sub list /
ID 304 gen 57466 top level 5 path @
ID 306 gen 57462 top level 304 path .snapshots
ID 334 gen 56635 top level 306 path .snapshots/1/snapshot
ID 335 gen 56638 top level 306 path .snapshots/2/snapshot
ID 336 gen 56750 top level 306 path .snapshots/3/snapshot
ID 337 gen 56805 top level 306 path .snapshots/4/snapshot
ID 338 gen 56807 top level 306 path .snapshots/5/snapshot
ID 339 gen 56812 top level 306 path .snapshots/6/snapshot
ID 340 gen 56815 top level 306 path .snapshots/7/snapshot
ID 341 gen 56924 top level 306 path .snapshots/8/snapshot
ID 342 gen 56926 top level 306 path .snapshots/9/snapshot
ID 343 gen 56927 top level 306 path .snapshots/10/snapshot
ID 344 gen 56929 top level 306 path .snapshots/11/snapshot
dja@dja-work:~$ sudo snapper -c root list
  # | Тип    | № предварительного снимка | Дата                    | Пользователь | Очистка | Описание | Данные
----+--------+---------------------------+-------------------------+--------------+---------+----------+-------
 0  | single |                           |                         | root         |         | current  |       
 1  | pre    |                           | Чт 01 авг 2024 12:54:10 | root         | number  | apt      |       
 2  | post   |                         1 | Чт 01 авг 2024 12:54:39 | root         | number  | apt      |       
 3  | single |                           | Чт 01 авг 2024 15:00:08 | root         | number  | boot     |       
 4  | pre    |                           | Чт 01 авг 2024 15:43:49 | root         | number  | apt      |       
 5  | post   |                         4 | Чт 01 авг 2024 15:44:08 | root         | number  | apt      |       
 6  | pre    |                           | Чт 01 авг 2024 15:47:00 | root         | number  | apt      |       
 7  | post   |                         6 | Чт 01 авг 2024 15:47:11 | root         | number  | apt      |       
 8  | pre    |                           | Чт 01 авг 2024 17:41:36 | root         | number  | apt      |       
 9  | post   |                         8 | Чт 01 авг 2024 17:41:42 | root         | number  | apt      |       
10  | pre    |                           | Чт 01 авг 2024 17:41:55 | root         | number  | apt      |       
11  | post   |                        10 | Чт 01 авг 2024 17:42:01 | root         | number  | apt      |       
dja@dja-work:~$ sudo btrfs sub list /home/
ID 262 gen 131529 top level 5 path @home
ID 264 gen 129235 top level 262 path .snapshots
dja@dja-work:~$ sudo snapper -c home list
 # | Тип    | № предварительного снимка | Дата | Пользователь | Очистка | Описание | Данные
---+--------+---------------------------+------+--------------+---------+----------+-------
0  | single |                           |      | root         |         | current  |       
dja@dja-work:~$ 
Кстати, почему кол-во снимков в snapper и напрямую отличается на один?

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 02 авг 2024, 09:18
rogoznik
Dja писал(а):
02 авг 2024, 08:50
почему кол-во снимков в snapper и напрямую отличается на один?
Не вижу отличий

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 02 авг 2024, 12:16
Dja
Корень
dja@dja-work:~$ sudo snapper -c root list
[sudo] пароль для dja:           
  # | Тип    | № предварительного снимка | Дата                    | Пользователь | Очистка | Описание | Данные
----+--------+---------------------------+-------------------------+--------------+---------+----------+-------
 0  | single |                           |                         | root         |         | current  |       
 3  | single |                           | Чт 01 авг 2024 15:00:08 | root         | number  | boot     |       
 4  | pre    |                           | Чт 01 авг 2024 15:43:49 | root         | number  | apt      |       
 5  | post   |                         4 | Чт 01 авг 2024 15:44:08 | root         | number  | apt      |       
 6  | pre    |                           | Чт 01 авг 2024 15:47:00 | root         | number  | apt      |       
 7  | post   |                         6 | Чт 01 авг 2024 15:47:11 | root         | number  | apt      |       
 8  | pre    |                           | Чт 01 авг 2024 17:41:36 | root         | number  | apt      |       
 9  | post   |                         8 | Чт 01 авг 2024 17:41:42 | root         | number  | apt      |       
10  | pre    |                           | Чт 01 авг 2024 17:41:55 | root         | number  | apt      |       
11  | post   |                        10 | Чт 01 авг 2024 17:42:01 | root         | number  | apt      |       
12  | single |                           | Пт 02 авг 2024 09:21:17 | root         | number  | boot     |  
11
dja@dja-work:~$ sudo btrfs subvolume list /
ID 304 gen 57613 top level 5 path @
ID 306 gen 57527 top level 304 path .snapshots
ID 336 gen 56750 top level 306 path .snapshots/3/snapshot
ID 337 gen 56805 top level 306 path .snapshots/4/snapshot
ID 338 gen 56807 top level 306 path .snapshots/5/snapshot
ID 339 gen 56812 top level 306 path .snapshots/6/snapshot
ID 340 gen 56815 top level 306 path .snapshots/7/snapshot
ID 341 gen 56924 top level 306 path .snapshots/8/snapshot
ID 342 gen 56926 top level 306 path .snapshots/9/snapshot
ID 343 gen 56927 top level 306 path .snapshots/10/snapshot
ID 344 gen 56929 top level 306 path .snapshots/11/snapshot
ID 345 gen 57514 top level 306 path .snapshots/12/snapshot
12
dja@dja-work:~$ sudo ls -ll /.snapshots/
итого 4
drwxr-xr-x 1 root root 32 авг 1 17:41 10
drwxr-xr-x 1 root root 62 авг 1 17:42 11
drwxr-xr-x 1 root root 32 авг 2 09:21 12
drwxr-xr-x 1 root root 32 авг 1 15:00 3
drwxr-xr-x 1 root root 32 авг 1 15:43 4
drwxr-xr-x 1 root root 60 авг 1 15:44 5
drwxr-xr-x 1 root root 32 авг 1 15:47 6
drwxr-xr-x 1 root root 60 авг 1 15:47 7
drwxr-xr-x 1 root root 32 авг 1 17:41 8
drwxr-xr-x 1 root root 60 авг 1 17:41 9
10
что соответствует прописанному лимиту
# limit for number cleanup
NUMBER_MIN_AGE="1800"
NUMBER_LIMIT="10"
NUMBER_LIMIT_IMPORTANT="10"
хомяк
dja@dja-work:~$ sudo snapper -c home list
[sudo] пароль для dja:           
 # | Тип    | № предварительного снимка | Дата | Пользователь | Очистка | Описание | Данные
---+--------+---------------------------+------+--------------+---------+----------+-------
0  | single |                           |      | root         |         | current  |       
1
dja@dja-work:~$ sudo btrfs subvolume list /home/
ID 262 gen 131835 top level 5 path @home
ID 264 gen 129235 top level 262 path .snapshots
2
dja@dja-work:~$ sudo ls -ll /home/.snapshots/
итого 0
0

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 02 авг 2024, 13:17
slant
1. .snapshots - это у тебя сам по себе снапшот. Их имена могут быть в файловой системе вложенными - как каталоги, но по факту - это плоская структура. ID - первичен, а они одноранговые.

2. snapper свои собственные id (столбец #) не привязывает к id btrfs - по дурацки сделано, я знаю. Но факт. Этот id - исключительно его собственный. Проявляется в каталоге который часть имени снапшота в выводе btrfs sub list.

3. Если у тебя с хомяка не делаются снапшоты - проверь скрипты cron-а - снаппер через него работает, нет никакой скрытой магии в нем. Все на глазах - скорее всего просто команды делать такой снапшот нету.

Timeshift не видит фс btrfs, после экспериментов со snapper, как починить?:

Добавлено: 05 авг 2024, 08:50
Dja
slant, в кроне тишина
dja@dja-work:~$ crontab -l
no crontab for dja
dja@dja-work:~$ sudo crontab -l
no crontab for root
dja@dja-work:~$
Думаю дело в самих конфигах napper
upd... хотя нет... конфиги одинаковые...
Но опять-таки если включить ежечасные - то делает.
А при буте в юните прописано только рут. Что вобщем-то устраивает.
dja@dja-work:~$ cat /lib/systemd/system/snapper-boot.service
[Unit]
Description=Take snapper snapshot of root on boot
ConditionPathExists=/etc/snapper/configs/root
Documentation=man:snapper(8)

[Service]
Type=oneshot
ExecStart=/usr/bin/snapper --config root create --cleanup-algorithm number --description "boot"
dja@dja-work:~$