Расширение прав в Linux с помощью Posix ACL
На Ubuntu 18.04 desktop:
$ sudo apt install acl
$ sudo -i
# cd /
# getfacl -R / > acl.save
Действия на хосте с lxd
Остановить Ubuntu 18.04 desktop (который хотим перенести)
средствами virtualbox клонировать диск,
средствами virtualbox подключить клонировонанный диск к системе с lxd
Запустить систему с lxd
Примонтировать диск
$ sudo mount /dev/sdb1 /mnt/
Создаем контейнер ud1804
$ lxc launch ubuntu:18.04 ud1804
$ lxc config set ud1804 security.privileged true
$ lxc stop ud1804
Удалить файловую систему контейнера:
$ sudo rm -rf /var/lib/lxd/containers/ud1804/rootfs/*
$ sudo -i
Примонтировать файловую систему переносимого Ubuntu 18.04 desktop
# sudo mount /dev/sdb1 /mnt/
# cd /mnt
Скопировать файловую систему в контейнер
# cp -R * /var/lib/lxd/containers/ud1804/rootfs/
# exit
$ lxc start ud1804
$ lxc list
$ lxc exec ud1804 /bin/bash
Внутри контейнера восстановить права
# cd /
# setfacl --restore=acl.save
# exit
Перезапустить контейнер
$ lxc restart ud1804
Зайти по ssh:
Скачать nomachine
$ wget https://download.nomachine.com/download/6.8/Linux/nomachine_6.8.1_1_amd64.deb
$ sudo dpkg -i nomachine_6.8.1_1_amd64.deb
Зайти по nomachine.
Перенос на другой сервер с lxd
$ nano backup_lxd.sh
#!/usr/bin/env bash
set -ex
BACKUP_DIR=~/backup
HOSTS=$(lxc list -c n --format csv)
for HOST in ${HOSTS}
do
BACKUP_NAME=${HOST}-$(date +"%Y-%m-%d")
lxc snapshot ${HOST} auto-backup
lxc publish ${HOST}/auto-backup --alias ${BACKUP_NAME}
lxc image export ${BACKUP_NAME} ${BACKUP_DIR}/${BACKUP_NAME}.tar.gz
lxc image delete ${BACKUP_NAME}
lxc delete ${HOST}/auto-backup
done
Сохранить.
$ sh backup_lxd.sh
+ date +%Y-%m-%d
+ BACKUP_NAME=ud1804-2019-11-10
+ lxc snapshot ud1804 auto-backup
+ lxc publish ud1804/auto-backup --alias ud1804-2019-11-10
Контейнер публикуется с отпечатком: b900ce0db69f0a57afd52af682f8a47229b5ea8fcdfa2a566af2034a6f6766a2
+ lxc image export ud1804-2019-11-10 /home/user/backup/ud1804-2019-11-10.tar.gz
Image exported successfully!
+ lxc image delete ud1804-2019-11-10
+ lxc delete ud1804/auto-backup
Восстановление на другом компьютере:
$ lxc image import ud1804-2019-11-10.tar.gz.tar.gz --alias ud1804-backup
Образ, импортирован с снимком: b900ce0db69f0a57afd52af682f8a47229b5ea8fcdfa2a566af2034a6f6766a2
$ lxc launch ud1804-backup ud1804
#lxc image delete ud1804-backup
$ lxc snapshot test auto-backup
$ lxc publish test/auto-backup --alias test-2019-11-12
Контейнер публикуется с отпечатком: f442e1c60b9c1353f3d665a61e67bb7c13d383fe65af530fbe7f482699233d56
$ lxc image export test-2019-11-12 /home/user/backup/test-2019-11-12.tar.gz
На Ubuntu 18.04 desktop:
$ sudo apt install acl
$ sudo -i
# cd /
# getfacl -R / > acl.save
Действия на хосте с lxd
Остановить Ubuntu 18.04 desktop (который хотим перенести)
средствами virtualbox клонировать диск,
средствами virtualbox подключить клонировонанный диск к системе с lxd
Запустить систему с lxd
Примонтировать диск
$ sudo mount /dev/sdb1 /mnt/
Создаем контейнер ud1804
$ lxc launch ubuntu:18.04 ud1804
$ lxc config set ud1804 security.privileged true
$ lxc stop ud1804
Удалить файловую систему контейнера:
$ sudo rm -rf /var/lib/lxd/containers/ud1804/rootfs/*
$ sudo -i
Примонтировать файловую систему переносимого Ubuntu 18.04 desktop
# sudo mount /dev/sdb1 /mnt/
# cd /mnt
Скопировать файловую систему в контейнер
# cp -R * /var/lib/lxd/containers/ud1804/rootfs/
# exit
$ lxc start ud1804
$ lxc list
$ lxc exec ud1804 /bin/bash
Внутри контейнера восстановить права
# cd /
# setfacl --restore=acl.save
# exit
Перезапустить контейнер
$ lxc restart ud1804
Зайти по ssh:
Скачать nomachine
$ wget https://download.nomachine.com/download/6.8/Linux/nomachine_6.8.1_1_amd64.deb
$ sudo dpkg -i nomachine_6.8.1_1_amd64.deb
Зайти по nomachine.
Перенос на другой сервер с lxd
$ nano backup_lxd.sh
#!/usr/bin/env bash
set -ex
BACKUP_DIR=~/backup
HOSTS=$(lxc list -c n --format csv)
for HOST in ${HOSTS}
do
BACKUP_NAME=${HOST}-$(date +"%Y-%m-%d")
lxc snapshot ${HOST} auto-backup
lxc publish ${HOST}/auto-backup --alias ${BACKUP_NAME}
lxc image export ${BACKUP_NAME} ${BACKUP_DIR}/${BACKUP_NAME}.tar.gz
lxc image delete ${BACKUP_NAME}
lxc delete ${HOST}/auto-backup
done
Сохранить.
$ sh backup_lxd.sh
+ date +%Y-%m-%d
+ BACKUP_NAME=ud1804-2019-11-10
+ lxc snapshot ud1804 auto-backup
+ lxc publish ud1804/auto-backup --alias ud1804-2019-11-10
Контейнер публикуется с отпечатком: b900ce0db69f0a57afd52af682f8a47229b5ea8fcdfa2a566af2034a6f6766a2
+ lxc image export ud1804-2019-11-10 /home/user/backup/ud1804-2019-11-10.tar.gz
Image exported successfully!
+ lxc image delete ud1804-2019-11-10
+ lxc delete ud1804/auto-backup
Восстановление на другом компьютере:
$ lxc image import ud1804-2019-11-10.tar.gz.tar.gz --alias ud1804-backup
Образ, импортирован с снимком: b900ce0db69f0a57afd52af682f8a47229b5ea8fcdfa2a566af2034a6f6766a2
$ lxc launch ud1804-backup ud1804
#lxc image delete ud1804-backup
$ lxc snapshot test auto-backup
$ lxc publish test/auto-backup --alias test-2019-11-12
Контейнер публикуется с отпечатком: f442e1c60b9c1353f3d665a61e67bb7c13d383fe65af530fbe7f482699233d56
$ lxc image export test-2019-11-12 /home/user/backup/test-2019-11-12.tar.gz
Комментариев нет:
Отправить комментарий