PVE Adopt a Native LXD/LXC: Difference between revisions

From WikiMLT
mNo edit summary
Line 4: Line 4:
== Export the Container ==
== Export the Container ==
Go into the instance where the LXD is installed and create a backup of the LXC you want to clone. If the container is installed within LVM you need to mount the root filesystem somewhere and create the archive from inside the mount point. I will going to play the other scenario where the LXC is installed within a directory on Ubuntu 22.04.
Go into the instance where the LXD is installed and create a backup of the LXC you want to clone. If the container is installed within LVM you need to mount the root filesystem somewhere and create the archive from inside the mount point. I will going to play the other scenario where the LXC is installed within a directory on Ubuntu 22.04.
<syntaxhighlight lang="shell" line="1" class="root-prompt">
lxc config show --expanded webserver | grep 'privileged'
  security.privileged: "false"
</syntaxhighlight>
<syntaxhighlight lang="shell" line="1" class="root-prompt">
security.privileged: "false"
</syntaxhighlight>
<syntaxhighlight lang="shell" line="1" class="root-prompt">
<syntaxhighlight lang="shell" line="1" class="root-prompt">
cd /var/snap/lxd/common/lxd/storage-pools/default/containers/webserver/rootfs
cd /var/snap/lxd/common/lxd/storage-pools/default/containers/webserver/rootfs
tar --exclude=dev --exclude=sys --exclude=proc --exclude=tmp/* \
-czvf /home/backups/lxc-webserver.tar.gz ./
</syntaxhighlight>
</syntaxhighlight>


Note in the commands above:
* <code>webserver</code> is the name of the container.
* <code>lxc-webserver.tar.gz</code> is the name of the archive file of that container.
====== References ======


For details read the relevant section [[LXD/LXC Basic Setup#Backup LXC Containers|"Backup LXC Containers" from the guide "LXC Basic Setup"]].
*
* Mi blog lah!: [https://blog.simos.info/how-to-view-the-files-of-your-lxd-container-from-the-host/ How to view the files of your LXD container from the host]


'''2.''' Copy the backup of an LXD/LXC container to a ProxmoxVM's template directory within its storage. In my case I'm using a command as the shown below.<syntaxhighlight lang="shell" line="1">
'''2.''' Copy the backup of an LXD/LXC container to a ProxmoxVM's template directory within its storage. In my case I'm using a command as the shown below.<syntaxhighlight lang="shell" line="1">

Revision as of 19:19, 23 September 2022

Con­vert­ing an LXD/LXC to a ProxmoxVE/​​​LXC is pret­ty easy, be­cause the are (al­most) the same thing.

Ex­port the Con­tain­er

Go in­to the in­stance where the LXD is in­stalled and cre­ate a back­up of the LXC you want to clone. If the con­tain­er is in­stalled with­in LVM you need to mount the root filesys­tem some­where and cre­ate the archive from in­side the mount point. I will go­ing to play the oth­er sce­nario where the LXC is in­stalled with­in a di­rec­to­ry on Ubun­tu 22.04.

lxc config show --expanded webserver | grep 'privileged'
  security.privileged: "false"
security.privileged: "false"
cd /var/snap/lxd/common/lxd/storage-pools/default/containers/webserver/rootfs
tar --exclude=dev --exclude=sys --exclude=proc --exclude=tmp/* \
-czvf /home/backups/lxc-webserver.tar.gz ./

Note in the com­mands above:

  • web­serv­er is the name of the con­tain­er.
  • lxc-webserver.tar.gz is the name of the archive file of that con­tain­er.
Ref­er­ences

2. Copy the back­up of an LXD/LXC con­tain­er to a ProxmoxVM's tem­plate di­rec­to­ry with­in its stor­age. In my case I'm us­ing a com­mand as the shown be­low.

rsync --progress \
remote.host:/mnt/backups/lxc-webserver-backup-2022-09-23.tar.gz \
/mnt/pve/ssd-1TB/template/cache/

3.A. Af­ter that you can use