Копирование BTRFS на другой компьютер

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

Аватара пользователя
Фантом
Сообщения: 452
ОС: openSUSE

Копирование BTRFS на другой компьютер

Сообщение Фантом »

Есть задача: имеется настроенная система на BTRFS (без /home), которую надо скопировать на другой - идентичный первому - компьютер. Перекидывать данные по сети можно (сеть гигабитная), физически переставлять диски из одной машины в другую - нет.

Не будет ли любезен кто-нибудь ткнуть меня носом в описание решения именно этой задачи? По итогам чтения всяческих текстов про BTRFS создалось впечатление, что то ли это никому конкретно не надо, то ли я чего-то не понимаю, но набор действий кажется каким-то неестественно сложным...
Спасибо сказали:
Аватара пользователя
RusWolf
Сообщения: 604
ОС: Arch Linux x64 на BTRFS

Re: Копирование BTRFS на другой компьютер

Сообщение RusWolf »

Что тут сложного сделать снапшот только для чтения, а потом его по сети передать по ssh ?
Для примера:
btrfs send /mnt/arch/@_BACKUP | ssh -p 22 test@192.168.100.51 "btrfs receive /mnt/backups"
Спасибо сказали:
Аватара пользователя
olecya
Сообщения: 900
ОС: debian, fedora (i3-wm)

Re: Копирование BTRFS на другой компьютер

Сообщение olecya »

Фантом
Бтрфс наверное единственная система которая может монтироваться не с корня. Возможно вы не видите субтома потому что установлен set-default на определенный субтом? Тогда подмонтируйте свой собственный корень раздела btrfs в /mnt директорию:

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

mount -t btrfs -o subvolid=5 /dev/sd? /mnt
Где /dev/sd? ваш раздел. Все, теперь можете посмотреть все субтома, сделать снэпшот и скопировать его куда хотите:

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

btrfs subvolume list /mnt
Однако замечу этим моим заметкам уже много времени, возможно они успели устареть.
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2576
ОС: Gentoo

Re: Копирование BTRFS на другой компьютер

Сообщение ormorph »

Есть универсальный способ копирования rsync -av, ФС в данном случае не сильно то и влияет.
А так не все используют subvolume в btrfs, так как для grub - os-prober, не работает с subvolume и конфиг
нужно править в ручную. По этому и не везде можно делать снимки.
Спасибо сказали:
Аватара пользователя
RusWolf
Сообщения: 604
ОС: Arch Linux x64 на BTRFS

Re: Копирование BTRFS на другой компьютер

Сообщение RusWolf »

ormorph писал(а):
13.09.2022 22:09
Tак как для grub - os-prober, не работает с subvolume и конфиг
нужно править в ручную.
Прекрасно всё работает.
А где не работает, это проблема местного значения.
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2576
ОС: Gentoo

Re: Копирование BTRFS на другой компьютер

Сообщение ormorph »

Хм, а у меня не работает. Какая то засада в скрипте. Не пойму прикола, почему в скрипте не работает а вручную работает:
В скрипте команда:

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

LINUXPROBED="`linux-boot-prober btrfs ${BTRFSuuid} ${BTRFSsubvol}  2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
Выводит:
Spoiler

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

/dev/sda6:/dev/sda6:Debian^GNU/Linux:/boot/vmlinuz-5.10.0-17-amd64:/boot/initrd.img-5.10.0-17-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^rootflags=subvol=@rootfs^quiet /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-17-amd64:/boot/vmlinuz-5.10.0-17-amd64:/boot/initrd.img-5.10.0-17-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^rootflags=subvol=@rootfs^quiet /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-17-amd64^(recovery^mode):/boot/vmlinuz-5.10.0-17-amd64:/boot/initrd.img-5.10.0-17-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^single^rootflags=subvol=@rootfs /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-16-amd64:/boot/vmlinuz-5.10.0-16-amd64:/boot/initrd.img-5.10.0-16-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^rootflags=subvol=@rootfs^quiet /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-16-amd64^(recovery^mode):/boot/vmlinuz-5.10.0-16-amd64:/boot/initrd.img-5.10.0-16-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^single^rootflags=subvol=@rootfs
А вручную команда:

Shell

# linux-boot-prober btrfs UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7 subvol=@rootfs 2> /dev/null | tr ' ' '^' | paste -s -d ' '
выводит:
Spoiler

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

/dev/sda6:/dev/sda6:Debian^GNU/Linux:/@rootfs/boot/vmlinuz-5.10.0-17-amd64:/@rootfs/boot/initrd.img-5.10.0-17-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^rootflags=subvol=@rootfs^quiet /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-17-amd64:/@rootfs/boot/vmlinuz-5.10.0-17-amd64:/@rootfs/boot/initrd.img-5.10.0-17-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^rootflags=subvol=@rootfs^quiet /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-17-amd64^(recovery^mode):/@rootfs/boot/vmlinuz-5.10.0-17-amd64:/@rootfs/boot/initrd.img-5.10.0-17-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^single^rootflags=subvol=@rootfs /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-16-amd64:/@rootfs/boot/vmlinuz-5.10.0-16-amd64:/@rootfs/boot/initrd.img-5.10.0-16-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^rootflags=subvol=@rootfs^quiet /dev/sda6:/dev/sda6:Debian^GNU/Linux,^with^Linux^5.10.0-16-amd64^(recovery^mode):/@rootfs/boot/vmlinuz-5.10.0-16-amd64:/@rootfs/boot/initrd.img-5.10.0-16-amd64:root=UUID=244c5bdf-e5e4-4e21-ad79-2869726911a7^ro^single^rootflags=subvol=@rootfs
Пути к образам отличаются, похоже дело в каких то переменных, так как одна и та же команда не должна показывать разный вывод.
Спасибо сказали:
Аватара пользователя
RusWolf
Сообщения: 604
ОС: Arch Linux x64 на BTRFS

Re: Копирование BTRFS на другой компьютер

Сообщение RusWolf »

ormorph писал(а):
14.09.2022 10:03
так как одна и та же команда не должна показывать разный вывод.
Это да, так точно не должно быть.
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 2306
ОС: gentoo fluxbox

Re: Копирование BTRFS на другой компьютер

Сообщение yoricI »

Чтo-то я не пойму. Почему бы не cp || rsync || scp etc? btrfs там или ещё что. Это вы пытаетесь сделать внутренними способами btrfs-специфичными? А зачем?
Кто пользуется btrfs - тот в БТР-е (в танке, кто не понял))
Спасибо сказали:
Аватара пользователя
Фантом
Сообщения: 452
ОС: openSUSE

Re: Копирование BTRFS на другой компьютер

Сообщение Фантом »

Скажем так - это результат создавшегося впечатления, что с BTRFS это делается как-то проще, чем обычно. Варианты с rsync и т.п. понятны, я обычно подобные вещи так и делал, но захотелось попробовать новое. :wacko:

А за советы всем спасибо, возможно, действительно нужно дополнительное монтирование. На днях попробую реализовать.
Спасибо сказали:
Kopilov
Сообщения: 946
ОС: [K]Ubuntu, Debian

Re: Копирование BTRFS на другой компьютер

Сообщение Kopilov »

Фантом писал:
15.09.2022 00:18
с BTRFS это делается как-то проще, чем обычно
Чтобы как по маслу?
Спасибо сказали: