αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒ LXD - αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αž»αž„αž›αžΈαž“αž»αž…

αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒ LXD - αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αž»αž„αž›αžΈαž“αž»αž…

Lxd αž‚αžΊαž‡αžΆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αž»αž„αžαžΊαž“αŸαžšαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‡αŸ†αž“αžΆαž“αŸ‹αž€αŸ’αžšαŸ„αž™ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαž“αž·αž™αžΆαž™αžαžΆ αž”αŸ’αžšαž—αž–. αžœαžΆαž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαžŸαŸ’αžšαžŠαŸ€αž„αž‘αŸ…αž“αžΉαž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž“αž·αž˜αŸ’αž˜αž·αž αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž”αŸ’αžšαžΎαž’αž»αž„αž•αŸ’αž‘αž»αž€αž›αžΈαž“αž»αž…αž‡αŸ†αž“αž½αžŸαžœαž·αž‰αŸ”

αžŸαŸ’αž“αžΌαž› LXD αž‚αžΊαž‡αžΆαžŠαŸαž˜αž·αž“αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž· (αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αžŸαž·αž‘αŸ’αž’αž·αž‡αžΆ root) αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹ REST API αžαžΆαž˜αžšαž™αŸˆαžšαž“αŸ’αž’ unix αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ αž€αŸαžŠαžΌαž…αž‡αžΆαžαžΆαž˜αžšαž™αŸˆαž”αžŽαŸ’αžαžΆαž‰ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŸαž˜αžŸαŸ’αžšαž”αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αŸ” αž’αžαž·αžαž·αž‡αž“ αžŠαžΌαž…αž‡αžΆαž§αž”αž€αžšαžŽαŸαž”αž“αŸ’αž‘αžΆαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αž‡αžΆαž˜αž½αž™ LXD αž’αŸ’αžœαžΎαžŸαŸ†αžŽαžΎαžαžΆαž˜αžšαž™αŸˆ REST API αž“αŸαŸ‡αŸ” αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆαž˜αž·αž“αžαžΆαž’αŸ’αž“αž€αž€αŸ†αž–αž»αž„αž…αžΌαž›αž”αŸ’αžšαžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž€αŸ’αž“αž»αž„αžŸαŸ’αžšαž»αž€ αž¬αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž–αžΈαž…αž˜αŸ’αž„αžΆαž™ αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡ αž™αžΎαž„αž“αžΉαž„αž˜αž·αž“αž“αž·αž™αžΆαž™αž›αž˜αŸ’αž’αž·αžαž’αŸ†αž–αžΈαž‚αŸ„αž›αž‚αŸ†αž“αž·αžαžšαž”αžŸαŸ‹ LXD αž‘αŸ αž™αžΎαž„αž“αžΉαž„αž˜αž·αž“αž–αž·αž…αžΆαžšαžŽαžΆαž–αžΈαžŸαž˜αžαŸ’αžαž—αžΆαž–αžŠαŸ‚αž›αž˜αžΆαž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš αžšαž½αž˜αž‘αžΆαŸ†αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžαŸ’αž˜αžΈαŸ—αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαŸ‚αž…αž»αž„αž€αŸ’αžšαŸ„αž™αž”αŸ†αž•αž»αžαž“αŸƒ LXD αž“αŸƒαž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž“αž·αž˜αŸ’αž˜αž·αž QEMU αžŸαŸ’αžšαž”αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž’αž»αž„αŸ” αž‡αŸ†αž“αž½αžŸαž˜αž€αžœαž·αž‰ αž™αžΎαž„αž“αžΉαž„αžŸαž·αž€αŸ’αžŸαžΆαž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αŸ’αžšαžΉαŸ‡αž“αŸƒαž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αž»αž„αžαžΊαž“αŸαžš - αžšαŸ€αž”αž…αŸ†αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž”αžŽαŸ’αžαžΆαž‰ αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž»αž„αžαžΊαž“αŸαžš αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž’αž“αž’αžΆαž“ αž“αž·αž„αžšαž”αŸ€αž”αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžšαžΌαž”αžαž αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž’αŸ†αž–αžΈ LXD αž“αž·αž„αž”αŸ’αžšαžΎαž€αž»αž„αžαžΊαž“αŸαžšαž“αŸ…αž›αžΎαž›αžΈαž“αž»αž…αŸ”

αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž–αŸαž‰αž›αŸαž‰ αžŸαžΌαž˜αž˜αžΎαž›αž”αŸ’αžšαž—αž–αž•αŸ’αž›αžΌαžœαž€αžΆαžšαŸ–

αž“αžΆαžœαžΆαž…αžšαžŽαŸαŸ”

αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ LXD ^

αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ LXD αž“αŸ…αž›αžΎαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ Ubuntu ^

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž‰αŸ’αž…αž”αŸ‹αž…αŸ‚αž€αž…αžΆαž™ Ubuntu 19.10 lxd αž˜αžΆαž“αž€αžΆαžšαž…αžΆαž€αŸ‹αž•αŸ’αžŸαžΆαž™αž“αŸ…αž›αžΎ αž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αž‘αžΆαžŸαŸ‹:

apt search lxd

lxd/eoan 1:0.7 all
  Transitional package - lxd -> snap (lxd)

αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆαž€αž‰αŸ’αž…αž”αŸ‹αž–αžΈαžšαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™ αž˜αž½αž™αž‡αžΆαž€αž‰αŸ’αž…αž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž“αž·αž„αž˜αž½αž™αž‘αŸ€αžαž‡αžΆαž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αž‘αžΆαžŸαŸ‹αŸ” αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž€αž‰αŸ’αž…αž”αŸ‹αž–αžΈαžšαž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž”αž‰αŸ’αž αžΆαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž€αž‰αŸ’αž…αž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αžΆαž…αž€αŸ’αž›αžΆαž™αž‡αžΆαž€αŸ’αž˜αŸαž„αž€αŸ†αž–αŸ’αžšαžΆ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αž‘αžΆαžŸαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαž€αž…αŸαž‰αžŠαŸ„αž™αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αž‘αžΆαžŸαŸ‹αŸ”

αžŸαŸ’αžœαŸ‚αž„αžšαž€αž€αž‰αŸ’αž…αž”αŸ‹ lxd αž“αŸ…αž€αŸ’αž“αž»αž„αžƒαŸ’αž›αžΆαŸ†αž„αžαŸ’αž‘αžΆαžŸαŸ‹αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

snap find lxd

Name             Version        Summary
lxd              3.21           System container manager and API
lxd-demo-server  0+git.6d54658  Online software demo sessions using LXD
nova             ocata          OpenStack Compute Service (nova)
nova-hypervisor  ocata          OpenStack Compute Service - KVM Hypervisor (nova)
distrobuilder    1.0            Image builder for LXC and LXD
fabrica          0.1            Build snaps by simply pointing a web form to...
satellite        0.1.2          Advanced scalable Open source intelligence platform

αžŠαŸ„αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ list αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΆαž€αžŠαžαžΆαž€αž‰αŸ’αž…αž”αŸ‹ lxd αž˜αž·αž“αž‘αžΆαž“αŸ‹αžŠαŸ†αž‘αžΎαž„αž‘αŸαŸ–

snap list

Name  Version    Rev   Tracking  Publisher   Notes
core  16-2.43.3  8689  stable    canonicalβœ“  core

αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆ LXD αž‚αžΊαž‡αžΆαž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αž‘αžΆαžŸαŸ‹αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αžαžΆαž˜αžšαž™αŸˆαž€αž‰αŸ’αž…αž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ lxdαžŠαŸ‚αž›αž“αžΉαž„αž”αž„αŸ’αž€αžΎαžαž€αŸ’αžšαž»αž˜αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ /usr/bin αž αžΎαž™αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž“αŸ…αž›αžΎαŸ”

sudo apt update
sudo apt install lxd

αž…αžΌαžšαž”αŸ’αžšαžΆαž€αžŠαžαžΆαž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αž‡αžΆαž€αž‰αŸ’αž…αž”αŸ‹αžαŸ’αž‘αžΆαžŸαŸ‹αŸ–

snap list

Name  Version    Rev    Tracking  Publisher   Notes
core  16-2.43.3  8689   stable    canonicalβœ“  core
lxd   3.21       13474  stable/…  canonicalβœ“  -

αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ LXD αž“αŸ…αž›αžΎαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ Arch Linux ^

αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αž‘αžΎαž„αž€αž‰αŸ’αž…αž”αŸ‹ LXD αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜ αž‘αžΈαž˜αž½αž™αž“αžΉαž„αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αž”αž‰αŸ’αž‡αžΈαž€αž‰αŸ’αž…αž”αŸ‹αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžƒαŸ’αž›αžΆαŸ†αž„ αž‘αžΈαž–αžΈαžšαž“αžΉαž„αžŠαŸ†αž‘αžΎαž„αž€αž‰αŸ’αž…αž”αŸ‹αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αŸ–

sudo pacman -Syyu && sudo pacman -S lxd

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžŠαŸ†αž‘αžΎαž„αž€αž‰αŸ’αž…αž”αŸ‹αžšαž½αž… αžŠαžΎαž˜αŸ’αž”αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ LXD αžŠαŸ„αž™αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž˜αŸ’αž˜αžαžΆ αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž”αž‰αŸ’αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’ lxd:

sudo usermod -a -G lxd user1

αžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΆαž€αžŠαžαžΆαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ user1 αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ…αž€αŸ’αžšαž»αž˜ lxd:

id -Gn user1

user1 adm dialout cdrom floppy sudo audio dip video plugdev netdev lxd

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αŸ’αžšαž»αž˜ lxd αž˜αž·αž“αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž”αž‰αŸ’αž‡αžΈαž‘αŸ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαž‚αŸ’αž‚αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αŸ’αžαž„αž‘αŸ€αžαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž…αŸαž‰ αž“αž·αž„αž…αžΌαž›αž€αŸ’αžšαŸ„αž˜αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”

αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαž€αž˜αŸ’αž˜αž“αŸ…αž€αŸ’αž“αž»αž„ systemd αž€αŸ†αž–αž»αž„αž•αŸ’αž‘αž»αž€αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ LXD αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ–

sudo systemctl enable lxd

αž™αžΎαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ–

sudo systemctl start lxd

αž–αž·αž“αž·αžαŸ’αž™αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ–

sudo systemctl status lxd

αž€αžΆαžšαž•αŸ’αž‘αž»αž€ LXD (αž€αžΆαžšαž•αŸ’αž‘αž»αž€) ^

αž˜αž»αž“αž–αŸαž›αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αž™αžΎαž„αžαŸ’αžšαžΌαžœαž™αž›αŸ‹αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„ LXD αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ€αž”αž…αŸ†αžŠαŸ„αž™αž‘αžΌαž‡αžΈαžαž›αŸ”

αž€αžΆαžšαž•αŸ’αž‘αž»αž€ (αž§αž”αž€αžšαžŽαŸαž•αŸ’αž‘αž»αž€) αž˜αžΆαž“ αž–αžΈαž˜αž½αž™ αž¬αž…αŸ’αžšαžΎαž“αŸ” αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αžŠαŸ‚αž›αž”αŸ’αžšαžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžšαžŠαžΌαž…αž‡αžΆ ZFS, BTRFS, LVM αž¬αžαžαž’αž˜αŸ’αž˜αžαžΆαŸ” αžšαžΆαž›αŸ‹ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αž‘αŸ…αž‡αžΆαž—αžΆαž‚ (αž”αžšαž·αž˜αžΆαžŽαž•αŸ’αž‘αž»αž€) αžŠαŸ‚αž›αž˜αžΆαž“αžšαžΌαž”αž—αžΆαž– αž’αž»αž„ αž¬αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ„αž›αž”αŸ†αžŽαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ”

  • αžšαžΌαž”αž—αžΆαž–αŸ” - αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ’αžšαž˜αžΌαž›αž•αŸ’αžαž»αŸ†αž‡αžΆαž–αž·αžŸαŸαžŸαžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αžαžΊαžŽαŸ‚αž›αž›αžΈαž“αž»αž… αž αžΎαž™αž’αžΆαž…αžšαž€αž”αžΆαž“αž–αžΈαž”αŸ’αžšαž—αž–αžαžΆαž„αž€αŸ’αžšαŸ…
  • .ΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ - αž‘αžΆαŸ†αž„αž“αŸαŸ‡β€‹αž‚αžΊβ€‹αž‡αžΆβ€‹αž€αžΆαžšβ€‹αž…αŸ‚αž€αž…αžΆαž™β€‹αž…αŸ‚αž€αž…αžΆαž™β€‹αž–αžΈβ€‹αžšαžΌαž”αž—αžΆαž–β€‹αžšαž½αž…αžšαžΆαž›αŸ‹β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšβ€‹αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹
  • αžšαžΌαž”αžαž - αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžšαžΌαž”αžαžαž“αŸƒαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž’αž»αž„αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αžαŸ’αžšαž‘αž”αŸ‹αž‘αŸ…αžœαž·αž‰αŸ”

αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒ LXD - αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αž»αž„αž›αžΈαž“αž»αž…

αžŠαžΎαž˜αŸ’αž”αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„ LXD αžŸαžΌαž˜αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc storage αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αžŠαŸ„αž™αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž‚αž“αŸ’αž›αžΉαŸ‡ - lxc storage --help

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž”αž„αŸ’αž αžΆαž‰αž”αž‰αŸ’αž‡αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž•αŸ’αž‘αž»αž€ LXDαŸ–

lxc storage list

+---------+-------------+--------+--------------------------------+---------+
|  NAME   | DESCRIPTION | DRIVER |             SOURCE             | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool |             | btrfs  | /dev/loop1                     | 2       |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool |             | btrfs  | /var/lib/lxd/disks/ssdpool.img | 4       |
+---------+-------------+--------+--------------------------------+---------+

αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž”αž‰αŸ’αž‡αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž”αžšαž·αž˜αžΆαžŽαž•αŸ’αž‘αž»αž€ αž€αŸ’αž“αž»αž„β€‹αž€αžΆαžšβ€‹αž‡αŸ’αžšαžΎαžŸβ€‹αžšαžΎαžŸ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž”αž˜αŸ’αžšαžΎαž€αŸ’αžšαž»αž˜ lxc storage volume list:

lxc storage volume list hddpool

+-------+----------------------------------+-------------+---------+
| TYPE  |          NAME                    | DESCRIPTION | USED BY |
+-------+----------------------------------+-------------+---------+
| image | ebd565585223487526ddb3607f515... |             | 1       |
+-------+----------------------------------+-------------+---------+

lxc storage volume list ssdpool

+-----------+----------------------------------+-------------+---------+
|   TYPE    |            NAME                  | DESCRIPTION | USED BY |
+-----------+----------------------------------+-------------+---------+
| container | alp3                             |             | 1       |
+-----------+----------------------------------+-------------+---------+
| container | jupyter                          |             | 1       |
+-----------+----------------------------------+-------------+---------+
| image     | ebd565585223487526ddb3607f515... |             | 1       |
+-----------+----------------------------------+-------------+---------+

αž•αž„αžŠαŸ‚αžšαž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž“αŸ…αž–αŸαž›αž”αž„αŸ’αž€αžΎαž αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžš BTRFS αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž‘αž‘αž½αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΈ αž”αžšαž·αž˜αžΆαžŽαž•αŸ’αž‘αž»αž€ ឬ αž—αžΆαž‚αžšαž„ αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž€αžŸαŸ’αžšαžΆαž™ BTRFS αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž”αŸ’αžšαž’αž”αŸ‹αž§αž”αž€αžšαžŽαŸαž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αŸ–

sudo btrfs subvolume list -p /var/lib/lxd/storage-pools/hddpool

ID 257 gen 818 parent 5 top level 5 path images/ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3

sudo btrfs subvolume list -p /var/lib/lxd/storage-pools/ssdpool

ID 257 gen 1820 parent 5 top level 5 path images/ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
ID 260 gen 1819 parent 5 top level 5 path containers/jupyter
ID 263 gen 1820 parent 5 top level 5 path containers/alp3

αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ LXD ^

αž˜αž»αž“αž–αŸαž›αž”αž„αŸ’αž€αžΎαž αž“αž·αž„αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž€αž»αž„αžαžΊαž“αŸαžš αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ LXD αž‘αžΌαž‘αŸ…αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαž αž“αž·αž„αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž”αžŽαŸ’αžαžΆαž‰ αž“αž·αž„αž€αž“αŸ’αž›αŸ‚αž„αž•αŸ’αž‘αž»αž€αŸ” αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαžŠαŸ„αž™αžŠαŸƒαžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž’αžαž·αžαž·αž‡αž“αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž”αž‰αŸ’αž‡αžΈαžŠαŸ„αž™αž αŸ…αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc --help αž¬αž”αŸ’αžšαžΎαž’αŸ’αž“αž€αž‡αŸ†αž“αž½αž™αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜ lxd init αž†αŸ’αž›αžΎαž™αžŸαŸ†αžŽαž½αžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ”

αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž”αž€αžšαžŽαŸαž•αŸ’αž‘αž»αž€ ^

αž€αŸ†αž‘αž»αž„αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ LXD αžŸαž½αžšαžŸαŸ†αžŽαž½αžšαž‡αžΆαž…αŸ’αžšαžΎαž“ αžšαž½αž˜αž‘αžΆαŸ†αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž”αŸ’αžšαž—αŸαž‘αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€. αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžš BTRFS αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαŸ” αžœαžΆαž“αžΉαž„αž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αŸ… FS αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž”αž„αŸ’αž€αžΎαž. αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ FS αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŽαŸ‚αž“αžΆαŸ† αžαžΆαžšαžΆαž„αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž›αž€αŸ’αžαžŽαŸˆ:

αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸ
ថត
Btrfs αŸ”
αž’αž·αž›αž’αž·αž˜αž’αž·αž˜
αž αŸ’αžŸαžΌαž’αŸαžŸαŸ”
CEPH

αž€αžΆαžšαž•αŸ’αž‘αž»αž€αžšαžΌαž”αž—αžΆαž–αžŠαŸ‚αž›αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘

αž€αžΆαžšβ€‹αž”αž„αŸ’αž€αžΎαžβ€‹αžœαžαŸ’αžαž»β€‹αžŠαŸ‚αž›β€‹αž”αžΆαž“β€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αž”αŸ’αžšαžŸαžΎαžšβ€‹αž‘αžΎαž„
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžšαžΌαž”αžαžαžŠαŸαž”αŸ’αžšαžŸαžΎαžšαž”αŸ†αž•αž»αžαŸ”
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘

αž€αžΆαžšαž•αŸ’αž‘αŸαžšαžšαžΌαž”αž—αžΆαž–αžŠαŸ‚αž›αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„
αž‘αŸ
αž”αžΆαž‘
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘

αž€αžΆαžšαž•αŸ’αž‘αŸαžšαžœαžαŸ’αžαž»αžŠαŸ‚αž›αž”αžΆαž“αž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžŸαžΎαžš
αž‘αŸ
αž”αžΆαž‘
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘

αž…αž˜αŸ’αž›αž„αž›αžΎαž€αžΆαžšαžŸαžšαžŸαŸαžš
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘

αž”αŸ’αž›αž»αž€αž•αŸ’αž’αŸ‚αž€αž›αžΎ
αž‘αŸ
αž‘αŸ
αž”αžΆαž‘
αž‘αŸ
αž”αžΆαž‘

αž€αžΆαžšαž€αŸ’αž›αžΌαž“αž—αŸ’αž›αžΆαž˜αŸ—
αž‘αŸ
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘

αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž‰αŸ’αž‡αžΆαž€αž“αŸ’αž›αŸ‚αž„αž•αŸ’αž‘αž»αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž’αž»αž„
αž”αžΆαž‘
αž”αžΆαž‘
αž‘αŸ
αž‘αŸ
αž‘αŸ

αžŸαŸ’αžŠαžΆαžšβ€‹αž–αžΈβ€‹αžšαžΌαž”αžαžβ€‹αž…αžΆαžŸαŸ‹ (αž˜αž·αž“β€‹αž…αž»αž„αž€αŸ’αžšαŸ„αž™β€‹αž”αŸ†αž•αž»αž)
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž‘αŸ
αž”αžΆαž‘

αž€αžΌαžαžΆαž€αžΆαžšαž•αŸ’αž‘αž»αž€
αž”αžΆαž‘(*)
αž”αžΆαž‘
αž”αžΆαž‘
αž”αžΆαž‘
αž‘αŸ

αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αžŽαŸ’αžαžΆαž‰ αž“αž·αž„ Storage Pool αžŠαŸ„αž™αž”αŸ’αžšαžΎαž’αŸ’αž“αž€αž‡αŸ†αž“αž½αž™αž€αžΆαžš ^

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž”αž“αŸ’αž‘αžΆαž”αŸ‹αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž› αžŸαŸ’αž“αžΎαž±αŸ’αž™αžŠαŸ†αž‘αžΎαž„αžŸαž˜αžΆαžŸαž—αžΆαž‚αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒ LXD αžŠαŸ„αž™αž†αŸ’αž›αžΎαž™αžŸαŸ†αžŽαž½αžšαžŸαžΆαž˜αž‰αŸ’αž‰αžŠαŸ„αž™αž”αŸ’αžšαžΎαž’αŸ’αž“αž€αž‡αŸ†αž“αž½αž™αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αŸ”

αžšαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc init αž αžΎαž™αž”αž‰αŸ’αž…αžΌαž›αž…αŸ†αž›αžΎαž™αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžŸαž‰αŸ’αž‰αžΆαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžŠαžΌαž…αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžαžΆαž„αž€αŸ’αžšαŸ„αž˜ αž¬αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžœαžΆαž‘αŸ…αžαžΆαž˜αž›αž€αŸ’αžαžαžŽαŸ’αžŒαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ–

lxd init

Would you like to use LXD clustering? (yes/no) [default=no]: 
Do you want to configure a new storage pool? (yes/no) [default=yes]: 
Name of the new storage pool [default=default]: ssdpool         
Name of the storage backend to use (lvm, btrfs, dir) [default=btrfs]: 
Create a new BTRFS pool? (yes/no) [default=yes]: 
Would you like to use an existing block device? (yes/no) [default=no]: 
Size in GB of the new loop device (1GB minimum) [default=15GB]: 10GB
Would you like to connect to a MAAS server? (yes/no) [default=no]: 
Would you like to create a new local network bridge? (yes/no) [default=yes]: 
What should the new bridge be called? [default=lxdbr0]: 
What IPv4 address should be used? (CIDR subnet notation, β€œauto” or β€œnone”) [default=auto]: 10.0.5.1/24
Would you like LXD to NAT IPv4 traffic on your bridge? [default=yes]: 
What IPv6 address should be used? (CIDR subnet notation, β€œauto” or β€œnone”) [default=auto]: none
Would you like LXD to be available over the network? (yes/no) [default=no]: 
Would you like stale cached images to be updated automatically? (yes/no) [default=yes] no
Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]: 

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž’αžΆαž„αž•αŸ’αž‘αž»αž€αž”αž“αŸ’αžαŸ‚αž˜ ^

αž“αŸ…αž‡αŸ†αž αžΆαž“αž˜αž»αž“αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαž αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αžˆαŸ’αž˜αŸ„αŸ‡ ssdpool αž“αž·αž„αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† /var/lib/lxd/disks/ssdpool.img. αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„αžŠαŸ’αžšαžΆαž™ SSD αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αŸ”

αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžαžΆαž„αž€αŸ’αžšαŸ„αž˜ αžŠαžΎαž˜αŸ’αž”αžΈαž–αž„αŸ’αžšαžΈαž€αž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αž’αŸ†αž–αžΈαžαž½αž“αžΆαž‘αžΈαžŠαŸ‚αž›αž›αŸαž„αžŠαŸ„αž™ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž“αŸ…αž€αŸ’αž“αž»αž„αžƒαŸ’αž›αžΆαŸ†αž„ αž™αžΎαž„αž“αžΉαž„αž”αž„αŸ’αž€αžΎαžαž‘αžΈαž–αžΈαžš αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αžŠαŸ‚αž›αž“αžΉαž„αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αž›αžΎαž”αŸ’αžšαž—αŸαž‘αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαž“αŸƒαžαžΆαžŸ HDD αŸ” αž”αž‰αŸ’αž αžΆαž‚αžΊαžαžΆ LXD αž˜αž·αž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαž αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž…αŸαž‰αž–αžΈαž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ /var/lib/lxd/disks/ αž αžΎαž™αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹αž“αž·αž˜αž·αžαŸ’αžαžŸαž‰αŸ’αž‰αžΆαž“αžΉαž„αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸ αž˜αžΎαž›αž€αžΆαžšαž†αŸ’αž›αžΎαž™αžαž”αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ. αž™αžΎαž„β€‹αž’αžΆαž…β€‹αžšαŸ†αž›αž„β€‹αž€αžΆαžšβ€‹αž€αŸ†αžŽαžαŸ‹β€‹αž“αŸαŸ‡β€‹αž€αŸ’αž“αž»αž„β€‹αž€αŸ†αž‘αž»αž„β€‹αž–αŸαž›β€‹αž€αžΆαžšβ€‹αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜β€‹/β€‹αž€αžΆαžšβ€‹αž’αŸ’αžœαžΎβ€‹αž‘αŸ’αžšαž„αŸ‹αž‘αŸ’αžšαžΆαž™ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αžŠαŸ„αž™αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžαž˜αŸ’αž›αŸƒαž‡αžΆαž§αž”αž€αžšαžŽαŸαž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹ αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αž―αž€αžŸαžΆαžšαžšαž„αŸ’αžœαž·αž›αž‡αž»αŸ†αžœαž·αž‰ αžŠαŸ„αž™αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ„ source.

αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž˜αž»αž“αž–αŸαž›αž”αž„αŸ’αž€αžΎαž αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ†αžŽαžαŸ‹αž―αž€αžŸαžΆαžš loopback αž¬αž—αžΆαž‚αžαžΆαžŸαžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αžœαžΆαž“αžΉαž„αž”αŸ’αžšαžΎαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž™αžΎαž„αž“αžΉαž„αž”αž„αŸ’αž€αžΎαž αž“αž·αž„αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž€αŸ†αžŽαžαŸ‹αž‘αŸ†αž αŸ†αžŠαž›αŸ‹ 10GBαŸ–

dd if=/dev/zero of=/mnt/work/lxd/hddpool.img bs=1MB count=10000

10000+0 records in
10000+0 records out
10000000000 bytes (10 GB, 9,3 GiB) copied, 38,4414 s, 260 MB/s

αžαŸ„αŸ‡αž—αŸ’αž‡αžΆαž”αŸ‹αž―αž€αžŸαžΆαžš loopback αž‘αŸ…αž§αž”αž€αžšαžŽαŸ loopback αž₯αžαž‚αž·αžαžαŸ’αž›αŸƒαŸ–

sudo losetup --find --show /mnt/work/lxd/hddpool.img

/dev/loop1

αžŸαžΌαž˜αž’αžšαž‚αž»αžŽαžŠαž›αŸ‹αž‚αž“αŸ’αž›αžΉαŸ‡ --show αž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαŸ’αžšαž‘αž”αŸ‹αž‘αŸ…αž’αŸαž€αŸ’αžšαž„αŸ‹αžˆαŸ’αž˜αŸ„αŸ‡αž§αž”αž€αžšαžŽαŸαžŠαŸ‚αž›αž―αž€αžŸαžΆαžšαžšαž„αŸ’αžœαž·αž›αž‡αž»αŸ†αžšαž”αžŸαŸ‹αž™αžΎαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αŸ” αž”αžΎαž…αžΆαŸ†αž”αžΆαž…αŸ‹ αž™αžΎαž„αž’αžΆαž…αž”αž„αŸ’αž αžΆαž‰αž”αž‰αŸ’αž‡αžΈαž§αž”αž€αžšαžŽαŸαžšαžœαž›αŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒαž”αŸ’αžšαž—αŸαž‘αž“αŸαŸ‡ αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ’αžšαžΆαž€αžŠαžαžΆαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžšαž”αžŸαŸ‹αž™αžΎαž„αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ–

losetup -l

NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE                      DIO LOG-SEC
/dev/loop1         0      0         0  0 /mnt/work/lxd/hddpool.img        0     512
/dev/loop0         0      0         1  0 /var/lib/lxd/disks/ssdpool.img   0     512

αž–αžΈαž”αž‰αŸ’αž‡αžΈαž’αŸ’αž“αž€αž’αžΆαž…αžšαž€αžƒαžΎαž‰αžαžΆαž§αž”αž€αžšαžŽαŸαž“αŸαŸ‡αž˜αžΆαž“ /dev/loop1 αž―αž€αžŸαžΆαžš loopback αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž› /mnt/work/lxd/hddpool.imgαž“αž·αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž§αž”αž€αžšαžŽαŸ /dev/loop0 αž―αž€αžŸαžΆαžš loopback αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž› /var/lib/lxd/disks/ssdpool.img αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž“αžΉαž„αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€.

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž”αž„αŸ’αž€αžΎαžαžαŸ’αž˜αžΈαž˜αž½αž™ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž“αŸ…αž€αŸ’αž“αž»αž„ LXD αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž―αž€αžŸαžΆαžšαžšαž„αŸ’αžœαž·αž›αž‡αž»αŸ†αžŠαŸ‚αž›αž™αžΎαž„αž‘αžΎαž”αžαŸ‚αžšαŸ€αž”αž…αŸ†αŸ” LXD αž“αžΉαž„αž’αŸ’αžœαžΎαž‘αŸ’αžšαž„αŸ‹αž‘αŸ’αžšαžΆαž™αž―αž€αžŸαžΆαžšαžšαž„αŸ’αžœαž·αž›αž‡αž»αŸ† /mnt/work/lxd/hddpool.img αž“αŸ…αž€αŸ’αž“αž»αž„αž§αž”αž€αžšαžŽαŸ /dev/loop1 αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžš BTRFSαŸ–

lxc storage create hddpool btrfs size=10GB source=/dev/loop1

αžαŸ„αŸ‡αž”αž„αŸ’αž αžΆαž‰αž”αž‰αŸ’αž‡αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž’αŸαž€αŸ’αžšαž„αŸ‹αŸ–

lxc storage list

+---------+-------------+--------+--------------------------------+---------+
|  NAME   | DESCRIPTION | DRIVER |             SOURCE             | USED BY |
+---------+-------------+--------+--------------------------------+---------+
| hddpool |             | btrfs  | /dev/loop1                     | 0       |
+---------+-------------+--------+--------------------------------+---------+
| ssdpool |             | btrfs  | /var/lib/lxd/disks/ssdpool.img | 0       |
+---------+-------------+--------+--------------------------------+---------+

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž“αž‘αŸ†αž αŸ†αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ ^

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž”αž„αŸ’αž€αžΎαž αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€αž”αžΎαž…αžΆαŸ†αž”αžΆαž…αŸ‹αžœαžΆαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž„αŸ’αžšαžΈαž€αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž―αž€αžŸαžΆαžš BTRFS αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

sudo truncate -s +5G /mnt/work/lxd/hddpool.img
sudo losetup -c /dev/loop1
sudo btrfs filesystem resize max /var/lib/lxd/storage-pools/hddpool

αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αŸƒαž―αž€αžŸαžΆαžšαžšαž„αŸ’αžœαž·αž›αž‡αž»αŸ†αž‘αŸ…αž€αŸ’αž“αž»αž„αžšαž“αŸ’αž’αžŠαŸ„αžαž§αž”αž€αžšαžŽαŸαžšαž„αŸ’αžœαž·αž›αž‡αž»αŸ† ^

αž™αžΎαž„αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαžαžΌαž…αž˜αž½αž™αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‘αžΎαž„αžœαž·αž‰αž‚αžΊαž―αž€αžŸαžΆαžš /mnt/work/lxd/hddpool.img αž“αžΉαž„ "αž αŸ„αŸ‡αž αžΎαžš" αž…αŸαž‰αž–αžΈαž§αž”αž€αžšαžŽαŸ /dev/loop1 αž αžΎαž™αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ LXD αž“αžΉαž„αž‚αžΆαŸ†αž„αž“αŸ…αž–αŸαž›αž•αŸ’αž‘αž»αž€αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž“αžΉαž„αž˜αž·αž“αžƒαžΎαž‰αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž§αž”αž€αžšαžŽαŸαž“αŸαŸ‡αž‘αŸαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαžαžŸαŸαžœαžΆαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž“αžΉαž„αž”αž‰αŸ’αž…αžΌαž›αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αž‘αŸ…αž€αŸ’αž“αž»αž„αž§αž”αž€αžšαžŽαŸ /dev/loop1 αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αŸ”

αžαŸ„αŸ‡αž”αž„αŸ’αž€αžΎαž αž’αž„αŸ’αž‚αž—αžΆαž– αž”αŸ’αžšαž—αŸαž‘αž―αž€αžŸαžΆαžš αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ Π² /etc/systemd/system/ αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ SystemDαŸ–

cat << EOF | sudo tee -a /etc/systemd/system/lxd-hddpool.service
[Unit]
Description=Losetup LXD Storage Pool (hddpool)
After=local-fs.target

[Service]
Type=oneshot
ExecStart=/sbin/losetup /dev/loop1 /mnt/work/lxd/hddpool.img
RemainAfterExit=true

[Install]
WantedBy=local-fs.target
EOF

αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ–

sudo systemctl enable lxd-hddpool

Created symlink /etc/systemd/system/local-fs.target.wants/lxd-hddpool.service β†’ /etc/systemd/system/lxd-hddpool.service.

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‘αžΎαž„αžœαž·αž‰ αž™αžΎαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ–

systemctl status lxd-hddpool.service 

● lxd-hddpool.service - Losetup LXD Storage Pool (hddpool)
     Loaded: loaded (/etc/systemd/system/lxd-hddpool.service; enabled; vendor preset: disabled)
     Active: active (exited) since Wed 2020-04-08 03:43:53 MSK; 1min 37s ago
    Process: 711 ExecStart=/sbin/losetup /dev/loop1 /mnt/work/lxd/hddpool.img (code=exited, status=0/SUCCESS)
   Main PID: 711 (code=exited, status=0/SUCCESS)

Π°ΠΏΡ€ 08 03:43:52 manjaro systemd[1]: Starting Losetup LXD Storage Pool (hddpool)...
Π°ΠΏΡ€ 08 03:43:53 manjaro systemd[1]: Finished Losetup LXD Storage Pool (hddpool).

αž–αžΈαž›αž‘αŸ’αž’αž•αž›αž™αžΎαž„αž’αžΆαž…αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžαžΆαžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž‚αžΊ αžŸαž€αž˜αŸ’αž˜αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαŸ’αž‚αŸ’αžšαžΈαž”αžšαž”αžŸαŸ‹αž™αžΎαž„αž–αžΈαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž˜αž½αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αž€αŸαžŠαŸ„αž™ αž‡αž˜αŸ’αžšαžΎαžŸαž”αžΆαž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡ RemainAfterExit=true.

αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αŸ” αžŸαž·αž‘αŸ’αž’αž·αž€αž»αž„αžαžΊαž“αŸαžš ^

αžŠαŸ„αž™αžŸαžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž»αž„αžαžΊαž“αŸαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž–αž·αžαž‡αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž―αž€αŸ„αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ„αž™αž”αŸ’αžšαžΎαžαžΊαžŽαŸ‚αž›αžšαž”αžŸαŸ‹αžœαžΆ αžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžšαž–αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαž“αžΌαžœαž€αžΆαžšαž…αžΌαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž»αž„αžαžΊαž“αŸαžšαž‘αŸ…αž€αžΆαž“αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ LXD αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαžŸαž·αž‘αŸ’αž’αž·αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αžŠαŸ‚αž›αŸ–

  • αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž· - αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™ UID αž“αž·αž„ GID αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„αž˜αŸ’αž…αžΆαžŸαŸ‹αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž˜αžΆαž“ UID αž“αŸƒ 0 αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž…αžΌαž›αž”αŸ’αžšαžΎαžŠαžΌαž…αž‚αŸ’αž“αžΆαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαžΌαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ‚αž›αž˜αžΆαž“ UID αž“αŸƒ 0 αŸ” αž˜αŸ’αž™αŸ‰αžΆαž„αžœαž·αž‰αž‘αŸ€αž αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ root αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž“αŸ…αž€αŸ’αž“αž»αž„ αž€αž»αž„αžαžΊαž“αŸαžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸαž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž•αž„αžŠαŸ‚αžš αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž‚αžΆαžαŸ‹αž’αžΆαž…αž…αŸαž‰αž‘αŸ…αž€αŸ’αžšαŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŠαžΆαž€αŸ‹αžˆαŸ’αž˜αŸ„αŸ‡αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αžšαž”αžŸαŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαŸ”

  • αž’αž»αž„αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž· - αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αžšαž”αžŸαŸ‹αž˜αŸ’αž…αžΆαžŸαŸ‹ UID αž“αž·αž„ GID αžŠαŸ‚αž›αž˜αžΆαž“αž›αŸαžαž–αžΈ 0 αžŠαž›αŸ‹ 65535 αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ αž˜αŸ’αž…αžΆαžŸαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘αž”αžΆαŸ†αž„αžŠαŸ„αž™αž”αŸ’αžšαžΎ SubUID αž“αž·αž„ SubGID αž”αŸŠαžΈαžαž”αž“αŸ’αžαŸ‚αž˜αžšαŸ€αž„αŸ—αžαŸ’αž›αž½αž“αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“ UID=0 αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž˜αžΎαž›αžƒαžΎαž‰αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ SubUID + UID. αžœαžΆαž€αžΆαžšαž–αžΆαžšαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŽαžΆαž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαž’αžΆαž…αž‚αŸαž…αž…αŸαž‰αž–αžΈαž…αž“αŸ’αž›αŸ„αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αžšαž”αžŸαŸ‹αžœαžΆ αžœαžΆαž’αžΆαž…αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž”αžΆαž“αžαŸ‚αž‡αžΆαž˜αž½αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‡αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™ UID/GID αžŠαŸ‚αž›αž˜αž·αž“αžŸαŸ’αž‚αžΆαž›αŸ‹ αž“αž·αž„αžαŸ’αž–αžŸαŸ‹αžŽαžΆαžŸαŸ‹αŸ”

αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžαŸ’αž˜αžΈαž˜αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž˜αž·αž“αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž· αž αžΎαž™αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž™αžΎαž„αžαŸ’αžšαžΌαžœαž€αŸ†αžŽαžαŸ‹ SubUID αž“αž·αž„ SubGID αŸ”

αžαŸ„αŸ‡αž”αž„αŸ’αž€αžΎαžαž―αž€αžŸαžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αžΈαžšαžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž€αŸ†αžŽαžαŸ‹αžšαž”αžΆαŸ†αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ SubUID αž“αž·αž„ SubGID αžšαŸ€αž„αž‚αŸ’αž“αžΆαŸ–

sudo touch /etc{/subuid,/subgid}
sudo usermod --add-subuids 1000000-1065535 root 
sudo usermod --add-subgids 1000000-1065535 root

αžŠαžΎαž˜αŸ’αž”αžΈαž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžš αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ LXD αžαŸ’αžšαžΌαžœαžαŸ‚αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‘αžΎαž„αžœαž·αž‰αŸ–

sudo systemctl restart lxd

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΆαž€αŸ‹αž”αžŽαŸ’αžαžΆαž‰αž“αž·αž˜αŸ’αž˜αž·αž ^

αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž™αžΎαž„αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αžŽαŸ’αžαžΆαž‰αž–αžΈαž˜αž»αž“αžŠαŸ„αž™αž”αŸ’αžšαžΎαž’αŸ’αž“αž€αž‡αŸ†αž“αž½αž™αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜ lxd init αž“αž·αž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰ lxdbr0αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αž“αŸαŸ‡ αž™αžΎαž„αž“αžΉαž„αžŸαŸ’αž‚αžΆαž›αŸ‹αž”αžŽαŸ’αžαžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„ LXD αž“αž·αž„αžšαž”αŸ€αž”αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž”αŸ’αžŠαžΌαžšαž“αž·αž˜αŸ’αž˜αž·αž (αžŸαŸ’αž–αžΆαž“) αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž—αŸ’αž‰αŸ€αžœαŸ”

αžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž€αž»αž„αžαžΆαž€αŸ‹ (αžŸαŸ’αž–αžΆαž“) αž—αŸ’αž‡αžΆαž”αŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ αž“αž·αž„αž€αž»αž„αžαžΊαž“αŸαžšαž‘αŸ…αž€αŸ’αž“αž»αž„αž”αžŽαŸ’αžαžΆαž‰αŸ–

αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒ LXD - αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αž»αž„αž›αžΈαž“αž»αž…

αž€αž»αž„αžαžΊαž“αŸαžšαž’αžΆαž…αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αžαžΆαž˜αžšαž™αŸˆαž”αžŽαŸ’αžαžΆαž‰αž‡αžΆαž˜αž½αž™αž’αž»αž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αž αž¬αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ‚αž›αž’αž»αž„αž‘αžΆαŸ†αž„αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž˜αŸ’αžšαžΎαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž—αŸ’αž‡αžΆαž”αŸ‹αž€αžΆαžαž”αžŽαŸ’αžαžΆαž‰αž“αž·αž˜αŸ’αž˜αž·αžαž“αŸƒαž€αž»αž„αžαžΊαž“αŸαžšαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αž»αž„αžαžΆαž€αŸ‹αž“αž·αž˜αŸ’αž˜αž·αžαŸ” αž™αžΎαž„αž“αžΉαž„αž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΆαž€αŸ‹αž‡αžΆαž˜αž»αž“αžŸαž·αž“ αž αžΎαž™αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž”αžŽαŸ’αžαžΆαž‰αžšαž”αžŸαŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž‡αŸ†αž–αžΌαž€αž‡αžΆαž”αž“αŸ’αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αž»αž„αžαžΊαž“αŸαžšαžαŸ’αž›αž½αž“αž―αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαŸ”

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΆαž€αŸ‹αž‡αžΆαž˜αž½αž™αž”αžŽαŸ’αžαžΆαž‰αžšαž„ 10.0.5.0/24 αž“αž·αž„αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IPv4 10.0.5.1/24αž“αž·αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž•αž„αžŠαŸ‚αžšαŸ” ipv4.nat αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž€αž»αž„αžαžΊαž“αŸαžšαž’αžΆαž…αž…αžΌαž›αž”αŸ’αžšαžΎαž’αŸŠαžΈαž“αž’αžΊαžŽαž·αžαžαžΆαž˜αžšαž™αŸˆαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸαžœαžΆ NATαŸ–

lxc network create lxdbr0 ipv4.address=10.0.5.1/24 ipv4.nat=true ipv6.address=none

αž–αž·αž“αž·αžαŸ’αž™αž”αž‰αŸ’αž‡αžΈαž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„ LXDαŸ–

lxc network list

+--------+----------+---------+-------------+---------+
|  NAME  |   TYPE   | MANAGED | DESCRIPTION | USED BY |
+--------+----------+---------+-------------+---------+
| eno1   | physical | NO      |             | 0       |
+--------+----------+---------+-------------+---------+
| lxdbr0 | bridge   | YES     |             | 0       |
+--------+----------+---------+-------------+---------+

αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžαžΆαž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž˜αž½αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž”αž€αžšαžŽαŸαžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαž“αŸƒαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž›αžΈαž“αž»αž… - ip link ឬ ip addr:

ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether bc:ee:7b:5a:6b:44 brd ff:ff:ff:ff:ff:ff
    altname enp0s25
    inet6 fe80::9571:11f3:6e0c:c07b/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: lxdbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether c2:38:90:df:cb:59 brd ff:ff:ff:ff:ff:ff
    inet 10.0.5.1/24 scope global lxdbr0
       valid_lft forever preferred_lft forever
    inet6 fe80::c038:90ff:fedf:cb59/64 scope link 
       valid_lft forever preferred_lft forever
5: veth3ddab174@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master lxdbr0 state UP group default qlen 1000
    link/ether ca:c3:5c:1d:22:26 brd ff:ff:ff:ff:ff:ff link-netnsid 0

αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ ^

αž€αž»αž„αžαžΊαž“αŸαžšαž“αžΈαž˜αž½αž™αŸ—αž“αŸ…αž€αŸ’αž“αž»αž„ LXD αž˜αžΆαž“αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžœαžΆ αž αžΎαž™αž’αžΆαž…αž–αž„αŸ’αžšαžΈαž€αžœαžΆαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ’αžšαž€αžΆαžŸαž‡αžΆαžŸαž€αž›αžŠαŸ‚αž›αž αŸ…αžαžΆ αž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’. αž€αžΆαžšβ€‹αž’αž“αž»αžœαžαŸ’αžβ€‹αž‘αž˜αŸ’αžšαž„αŸ‹β€‹αž€αžΆαžšβ€‹αž€αŸ†αžŽαžαŸ‹β€‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’β€‹αž‘αŸ…β€‹αž€αž»αž„αžαžΊαž“αŸαžšβ€‹αž˜αžΆαž“β€‹αž‚αŸ†αžšαžΌβ€‹αž›αŸ’αž”αžΆαž€αŸ‹ αž‡αžΆβ€‹αž§αž‘αžΆαž αžšαžŽαŸβ€‹αžαžΆαž„β€‹αž€αŸ’αžšαŸ„αž˜β€‹αž”αž„αŸ’αž αžΆαž‰β€‹αžœαžΆαŸ–

αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒ LXD - αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αž»αž„αž›αžΈαž“αž»αž…

αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαž“αŸαŸ‡ αž‘αž˜αŸ’αžšαž„αŸ‹αž”αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ LXDαŸ– default, hddpool ΠΈ hostfs. αž‘αž˜αŸ’αžšαž„αŸ‹αž‘αžΆαŸ†αž„αž”αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž…αŸ†αž–αŸ„αŸ‡αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ (αž•αŸ’αž‘αŸƒαž–αžŽαŸŒαž”αŸ’αžšαž•αŸαŸ‡)αŸ” αž”αŸ’αžšαžœαžαŸ’αžαž·αžšαžΌαž” default αž˜αžΆαž“αž§αž”αž€αžšαžŽαŸαž˜αž½αž™αŸ” root αžŠαŸ‚αž›αž˜αžΆαž“αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš pool αžŸαŸ’αž˜αžΎ ssdpoolαž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αžšαž‚αž»αžŽαž…αŸ†αž–αŸ„αŸ‡αž‚αŸ†αžšαžΌαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž›αŸ’αž”αžΆαž€αŸ‹ αž™αžΎαž„αž’αžΆαž…αž’αž“αž»αžœαžαŸ’αžαž‘αž˜αŸ’αžšαž„αŸ‹αž‘αŸ…αž€αž»αž„αžαžΊαž“αŸαžš hddpool αžŠαŸ‚αž›αž˜αžΆαž“αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš pool αž“αžΉαž„αž”αžŠαž·αžŸαŸαž’αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαžŠαžΌαž…αž‚αŸ’αž“αžΆαž–αžΈαž‘αž˜αŸ’αžšαž„αŸ‹ default αž αžΎαž™αž€αž»αž„αžαžΊαž“αŸαžšαž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž§αž”αž€αžšαžŽαŸ root αž‡αžΆαž˜αž½αž™αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš pool αžŸαŸ’αž˜αžΎ hddpoolαž“αž·αž„αž”αŸ’αžšαžœαžαŸ’αžαž·αžšαžΌαž” hostfs αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž”αž“αŸ’αžαŸ‚αž˜αž§αž”αž€αžšαžŽαŸαžαŸ’αž˜αžΈαž‘αŸ…αž€αŸ’αž“αž»αž„αž’αž»αž„αŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž”αž‰αŸ’αž‡αžΈαž“αŸƒαž‘αž˜αŸ’αžšαž„αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“ αžŸαžΌαž˜αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

lxc profile list

+---------+---------+
|  NAME   | USED BY |
+---------+---------+
| default | 1       |
+---------+---------+
| hddroot | 0       |
+---------+---------+
| ssdroot | 1       |
+---------+---------+

αž”αž‰αŸ’αž‡αžΈαž–αŸαž‰αž›αŸαž‰αž“αŸƒαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαŸ‚αž›αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž‘αž˜αŸ’αžšαž„αŸ‹αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αžŠαŸ„αž™αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αžŸαŸ„ --help:

lxc profile --help

Description:
  Manage profiles

Usage:
  lxc profile [command]

Available Commands:
  add         Add profiles to instances
  assign      Assign sets of profiles to instances
  copy        Copy profiles
  create      Create profiles
  delete      Delete profiles
  device      Manage instance devices
  edit        Edit profile configurations as YAML
  get         Get values for profile configuration keys
  list        List profiles
  remove      Remove profiles from instances
  rename      Rename profiles
  set         Set profile configuration keys
  show        Show profile configurations
  unset       Unset profile configuration keys

αž€αžΆαžšαž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›αž”αŸ’αžšαžœαžαŸ’αžαž·αžšαžΌαž”αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ” ^

αž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ default αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž€αžΆαžαž”αžŽαŸ’αžαžΆαž‰αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαž‘αŸ αž αžΎαž™αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžαŸ’αž˜αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž˜αž·αž“αž˜αžΆαž“αž”αžŽαŸ’αžαžΆαž‰αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αžœαžΆ αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ (αž§αž‘αŸ’αž‘αž·αžŸ) αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αžŸαž€αž›αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αŸ” αž€αž˜αŸ’αžšαž„αž–αŸαžαŸŒαž˜αžΆαž“αžŠαŸ‚αž›αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αžšαžœαžΆαž„αž’αž»αž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ„αž™αž”αŸ’αžšαžΎαž‘αž˜αŸ’αžšαž„αŸ‹αž“αŸαŸ‡αŸ” αžœαž·αž’αžΈαž“αŸαŸ‡αž—αŸ’αž›αžΆαž˜αŸ—αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΊαž“αŸαžšαžαŸ’αž˜αžΈαž–αž½αž€αž‚αŸαž“αžΉαž„αž˜αžΆαž“αž”αžŽαŸ’αžαžΆαž‰αžŠαŸ‚αž›αž˜αžΆαž“αž”αžŽαŸ’αžαžΆαž‰αž…αžΌαž›αŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„αž‘αŸ αž™αžΎαž„αžαŸ‚αž„αžαŸ‚αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸ…αž–αŸαž›αž€αŸ’αžšαŸ„αž™ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž…αžΆαŸ†αž”αžΆαž…αŸ‹αŸ”

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αžΉαž„αž”αž“αŸ’αžαŸ‚αž˜αž§αž”αž€αžšαžŽαŸαž‘αŸ…αž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ eth0 αžœαžΆαž™ nic αž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž”αžŽαŸ’αžαžΆαž‰ lxdbr0:

lxc profile device add default eth0 nic network=lxdbr0 name=eth0

αžœαžΆαž‡αžΆαžšαžΏαž„αžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžαžΆ αžŠαŸ„αž™αžŸαžΆαžšαž™αžΎαž„αž–αž·αžαž‡αžΆαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž§αž”αž€αžšαžŽαŸαž‘αŸ…αž‘αž˜αŸ’αžšαž„αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αž‹αž·αžαž·αžœαž“αŸ’αžαž“αŸ…αž€αŸ’αž“αž»αž„αž§αž”αž€αžšαžŽαŸαž“αŸ„αŸ‡ αž€αž»αž„αžαžΊαž“αŸαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž“αžΉαž„αž”αŸ’αžšαžΎαž‘αž˜αŸ’αžšαž„αŸ‹αž“αŸαŸ‡αž“αžΉαž„αž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž˜αžΆαž“αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αž‹αž·αžαž·αžœαž“αŸ’αžαžŠαŸ‚αž›αž”αžΆαž“αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαž“αŸ„αŸ‡ αž’αŸ’αž“αž€αž‚αž½αžšαžαŸ‚αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž€αž»αž„αžαžΊαž“αŸαžš (αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“) αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αž αžΎαž™αž˜αž·αž“αž˜αŸ‚αž“αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž‘αž˜αŸ’αžšαž„αŸ‹αž‘αŸαŸ”

αžαŸ„αŸ‡αž–αž·αž“αž·αžαŸ’αž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžšαžΌαž”αŸ–

lxc profile show default

config: {}
description: Default LXD profile
devices:
  eth0:
    name: eth0
    network: lxdbr0
    type: nic
  root:
    path: /
    pool: ssdpool
    type: disk
name: default
used_by: []

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αžšαž„αž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αžαžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž»αž„αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžαŸ’αž˜αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž§αž”αž€αžšαžŽαŸαž–αžΈαžšαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαŸ–

  • eth0 - αž”αŸ’αžšαž—αŸαž‘αž§αž”αž€αžšαžŽαŸ nic αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž€αž»αž„αžαžΆαž€αŸ‹ (αžŸαŸ’αž–αžΆαž“αž”αžŽαŸ’αžαžΆαž‰) lxdbr0
  • root - αž”αŸ’αžšαž—αŸαž‘αž§αž”αž€αžšαžŽαŸ disk αžŠαŸ‚αž›αž”αŸ’αžšαžΎαž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ ssdpool

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž‘αž˜αŸ’αžšαž„αŸ‹αžαŸ’αž˜αžΈαŸ” ^

αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ’αžšαžΎαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž–αžΈαž˜αž»αž“ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ containers αž”αž„αŸ’αž€αžΎαžαž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ ssdroot αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž”αž“αŸ’αžαŸ‚αž˜αž§αž”αž€αžšαžŽαŸαžŠαžΌαž…αž‡αžΆ disk αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž…αŸ†αžŽαž»αž…αž˜αŸ‰αŸ„αž“ / (root) αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž–αžΈαž˜αž»αž“ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ - ssdpool:

lxc profile create ssdroot
lxc profile device add ssdroot root disk path=/ pool=ssdpool

αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αžŠαŸ‚αžšαž™αžΎαž„αž”αž„αŸ’αž€αžΎαžαž§αž”αž€αžšαžŽαŸαžŠαžΌαž…αž‡αžΆ diskαž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡αžŠαŸ„αž™αž”αŸ’αžšαžΎ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ - hddpool:

lxc profile create hddroot
lxc profile device add hddroot root disk path=/ pool=hddpool

αž€αŸ†αž–αž»αž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αŸ–

lxc profile show ssdroot

config: {}
description: ""
devices:
  root:
    path: /
    pool: ssdpool
    type: disk
name: ssdroot
used_by: []

lxc profile show hddroot

config: {}
description: ""
devices:
  root:
    path: /
    pool: hddpool
    type: disk
name: hddroot
used_by: []

αžƒαŸ’αž›αžΆαŸ†αž„αžšαžΌαž”αž—αžΆαž– ^

αž€αž»αž„αžαžΊαž“αŸαžšβ€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž„αŸ’αž€αžΎαžβ€‹αž‘αžΎαž„β€‹αž–αžΈβ€‹αžšαžΌαž”αž—αžΆαž–β€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αŸ’αžšαž˜αžΌαž›β€‹αž•αŸ’αžŠαž»αŸ†β€‹αž‚αŸ’αž“αžΆβ€‹αž™αŸ‰αžΆαž„β€‹αž–αž·αžŸαŸαžŸβ€‹αžŠαŸ‚αž›β€‹αž˜αž·αž“β€‹αž˜αžΆαž“β€‹αžαžΊαžŽαŸ‚αž›β€‹αž›αžΈαž“αž»αž…αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž˜αž»αž“αž–αŸαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž»αž„αžαžΊαž“αŸαžšαžαŸ’αžšαžΌαžœαžαŸ‚αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž–αžΈαžšαžΌαž”αž—αžΆαž–αž“αŸαŸ‡αŸ” αž”αŸ’αžšαž—αž–αž“αŸƒαžšαžΌαž”αž—αžΆαž–αž‚αžΊαž‡αžΆαžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžŠαŸ‚αž›αžšαžΌαž”αž—αžΆαž–αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž‰αž™αž€αž–αžΈαžƒαŸ’αž›αžΆαŸ†αž„αžαžΆαž„αž€αŸ’αžšαŸ…αŸ”

αžƒαŸ’αž›αžΆαŸ†αž„αžšαžΌαž”αž—αžΆαž–αž–αžΈαž…αž˜αŸ’αž„αžΆαž™ ^

αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ LXD αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αžšαžΌαž”αž—αžΆαž–αž–αžΈαž”αŸ’αžšαž—αž–αž–αžΈαž…αž˜αŸ’αž„αžΆαž™αž…αŸ†αž“αž½αž“αž”αžΈαŸ–

  • αž’αŸŠαžΌαž”αŸŠαž»αž“αž‘αžΌαŸ– (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαžΌαž”αž—αžΆαž–αž’αŸŠαžΌαž”αŸŠαž»αž“αž‘αžΌαžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžαŸαžšαž—αžΆαž–)
  • ubuntu-αž”αŸ’αžšαž…αžΆαŸ†αžαŸ’αž„αŸƒαŸ– (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαžΌαž”αž—αžΆαž–αž’αŸŠαžΌαž”αŸŠαž»αž“αž‘αžΌαž”αŸ’αžšαž…αžΆαŸ†αžαŸ’αž„αŸƒ)
  • αžšαžΌαž”αž—αžΆαž–αŸ– (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ’αžšαž»αž˜αž“αŸƒαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αž)

lxc remote list

+-----------------+------------------------------------------+--------+--------+
|      NAME       |                   URL                    | PUBLIC | STATIC |
+-----------------+------------------------------------------+--------+--------+
| images          | https://images.linuxcontainers.org       | YES    | NO     |
+-----------------+------------------------------------------+--------+--------+
| local (default) | unix://                                  | NO     | YES    |
+-----------------+------------------------------------------+--------+--------+
| ubuntu          | https://cloud-images.ubuntu.com/releases | YES    | YES    |
+-----------------+------------------------------------------+--------+--------+
| ubuntu-daily    | https://cloud-images.ubuntu.com/daily    | YES    | YES    |
+-----------------+------------------------------------------+--------+--------+

αž§αž‘αžΆαž αžšαžŽαŸαžƒαŸ’αž›αžΆαŸ†αž„ ubuntu: αž˜αžΆαž“αžšαžΌαž”αž—αžΆαž–αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

lxc image -c dasut list ubuntu: | head -n 11

+----------------------------------------------+--------------+----------+------------+
|                   DESCRIPTION                | ARCHITECTURE |   SIZE   |   TYPE     |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150728)  | x86_64       | 153.72MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150819)  | x86_64       | 152.91MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150906)  | x86_64       | 154.69MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+
| ubuntu 12.04 LTS amd64 (release) (20150930)  | x86_64       | 153.86MB | CONTAINER  |
+----------------------------------------------+--------------+----------+------------+

αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž αžΆαž‰αž…αŸ†αž“αž½αž“αž‡αž½αžšαžˆαžšαž˜αžΆαž“αž€αŸ†αžŽαžαŸ‹ αž™αžΎαž„αž”αžΆαž“αž”αŸ’αžšαžΎαž‡αž˜αŸ’αžšαžΎαžŸ -c αž‡αžΆαž˜αž½αž™αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš dasutαž αžΎαž™β€‹αž€αŸβ€‹αž€αŸ†αžŽαžαŸ‹β€‹αž”αŸ’αžšαžœαŸ‚αž„β€‹αž”αž‰αŸ’αž‡αžΈβ€‹αžŠαŸ„αž™β€‹αž”αŸ’αžšαžΎβ€‹αž–αžΆαž€αŸ’αž™β€‹αž”αž‰αŸ’αž‡αžΆ head.

αž€αžΆαžšαžαŸ’αžšαž„αž˜αžΆαž“αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž αžΆαž‰αž”αž‰αŸ’αž‡αžΈαžšαžΌαž”αž—αžΆαž–αŸ” αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αžΉαž„αžšαžΆαž™αž”αž‰αŸ’αž‡αžΈαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž…αŸ‚αž€αž…αžΆαž™αžŠαŸ‚αž›αž˜αžΆαž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” Alpine αž›αžΈαž“αž»αž…:

lxc image -c ldast list images:alpine/3.11

+------------------------------+--------------------------------------+--------------+
|            ALIAS             |             DESCRIPTION              | ARCHITECTURE |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11 (3 more)         | Alpine 3.11 amd64 (20200220_13:00)   | x86_64       |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/arm64 (1 more)   | Alpine 3.11 arm64 (20200220_13:00)   | aarch64      |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/armhf (1 more)   | Alpine 3.11 armhf (20200220_13:00)   | armv7l       |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/i386 (1 more)    | Alpine 3.11 i386 (20200220_13:01)    | i686         |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/ppc64el (1 more) | Alpine 3.11 ppc64el (20200220_13:00) | ppc64le      |
+------------------------------+--------------------------------------+--------------+
| alpine/3.11/s390x (1 more)   | Alpine 3.11 s390x (20200220_13:00)   | s390x        |
+------------------------------+--------------------------------------+--------------+

αžƒαŸ’αž›αžΆαŸ†αž„αžšαžΌαž”αž—αžΆαž–αž€αŸ’αž“αž»αž„αžŸαŸ’αžšαž»αž€ ^

αžŠαžΎαž˜αŸ’αž”αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαžΎαž€αž»αž„αžαžΊαž“αŸαžš αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αžšαžΌαž”αž—αžΆαž–αž–αžΈαžƒαŸ’αž›αžΆαŸ†αž„αžŸαž€αž›αž‘αŸ…αž€αž“αŸ’αž›αŸ‚αž„αž•αŸ’αž‘αž»αž€ local:. αž₯αž‘αžΌαžœαž“αŸαŸ‡αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‚αžΊαž‘αž‘αŸ αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž“αžΉαž„αž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžΆαž€αžŠαž’αŸ†αž–αžΈαžšαžΏαž„αž“αŸαŸ‡ lxc image list. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αž list αž€αž»αŸ†αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžƒαŸ’αž›αžΆαŸ†αž„ αž“αŸ„αŸ‡αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ - local:

lxc image list local:

+-------+-------------+--------+-------------+--------------+------+------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCHITECTURE | TYPE | SIZE |
+-------+-------------+--------+-------------+--------------+------+------+

αžšαžΌαž”αž—αžΆαž–αž“αŸ…αž€αŸ’αž“αž»αž„αžƒαŸ’αž›αžΆαŸ†αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαž·αž’αžΈαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸˆ

αž€αŸ’αžšαž»αž˜αž€αžΆαžšαž„αžΆαžš
αž”αžšαž·αž™αžΆαž™

αžšαžΌαž”αž—αžΆαž– lxc αžˆαŸ’αž˜αŸ„αŸ‡αž αŸ…αž€αŸ’αžšαŸ…
αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžšαžΌαž”αž—αžΆαž–αž€αŸ’αž›αŸ‚αž„αž€αŸ’αž›αžΆαž™

αžšαžΌαž”αž—αžΆαž– lxc αž…αŸ’αž”αžΆαž”αŸ‹αž…αž˜αŸ’αž›αž„
αž…αž˜αŸ’αž›αž„αžšαžΌαž”αž—αžΆαž–αžšαžœαžΆαž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ

αžšαžΌαž”αž—αžΆαž– lxc αž›αž»αž”
αž›αž»αž”αžšαžΌαž”αž—αžΆαž–

αžšαžΌαž”αž—αžΆαž– lxc αž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›
αž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›αž›αž€αŸ’αžαžŽαŸˆαžŸαž˜αŸ’αž”αžαŸ’αžαž·αžšαžΌαž”αž—αžΆαž–

αžšαžΌαž”αž—αžΆαž– lxc αž“αžΆαŸ†αž…αŸαž‰
αž“αžΆαŸ†αž…αŸαž‰ αž“αž·αž„αž‘αžΆαž‰αž™αž€αžšαžΌαž”αž—αžΆαž–

αžšαžΌαž”αž—αžΆαž– lxc αž€αžΆαžšαž“αžΆαŸ†αž…αžΌαž›
αž“αžΆαŸ†αž…αžΌαž›αžšαžΌαž”αž—αžΆαž–αž‘αŸ…αž€αŸ’αž“αž»αž„αž αžΆαž„αžšαžΌαž”αž—αžΆαž–

αžšαžΌαž”αž—αžΆαž– lxc info
αž”αž„αŸ’αž αžΆαž‰αž–αŸαžαŸŒαž˜αžΆαž“αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž’αŸ†αž–αžΈαžšαžΌαž”αž—αžΆαž–

αžšαžΌαž”αž—αžΆαž– lxc αž”αž‰αŸ’αž‡αžΈ
αžšαžΆαž™αžšαžΌαž”αž—αžΆαž–

αžšαžΌαž”αž—αžΆαž– lxc αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαŸ’αžšαžŸαŸ‹
αž•αŸ’αž‘αž»αž€αžšαžΌαž”αž—αžΆαž–αž‘αžΎαž„αžœαž·αž‰

αžšαžΌαž”αž—αžΆαž– lxc αž”αž„αŸ’αž αžΆαž‰
αž”αž„αŸ’αž αžΆαž‰αž›αž€αŸ’αžαžŽαŸˆαžŸαž˜αŸ’αž”αžαŸ’αžαž·αžšαžΌαž”αž—αžΆαž–

αž…αž˜αŸ’αž›αž„αžšαžΌαž”αž—αžΆαž–αž‘αŸ…αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž–αžΈαžŸαž€αž› images::

lxc image copy images:alpine/3.11/amd64 local: --alias=alpine3

Image copied successfully!

αžŸαžΌαž˜αž”αž„αŸ’αž αžΆαž‰αž”αž‰αŸ’αž‡αžΈαžšαžΌαž”αž—αžΆαž–αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ local::

lxc image -c lfdatsu list local:

+---------+--------------+------------------------------------+--------------+
|  ALIAS  | FINGERPRINT  |            DESCRIPTION             | ARCHITECTURE |
+---------+--------------+------------------------------------+--------------+
| alpine3 | 73a3093d4a5c | Alpine 3.11 amd64 (20200220_13:00) | x86_64       |
+---------+--------------+------------------------------------+--------------+

αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ LXD ^

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαžšαž”αŸ€αž”αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜ LXD αž€αŸαž‚αžΆαŸ†αž‘αŸ’αžšαžšαž”αŸ€αž”αžŠαŸ†αž‘αžΎαž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž˜αž·αž“αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž•αž„αžŠαŸ‚αžš αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž–αŸαž›αžŠαŸ‚αž›αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž‡αžΆαž‘αž˜αŸ’αžšαž„αŸ‹αž―αž€αžŸαžΆαžš YAML αžŠαŸ‚αž›αž‡αžΆαž‘αž˜αŸ’αžšαž„αŸ‹αž–αž·αžŸαŸαžŸαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αžŠαŸ†αž‘αžΎαž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‘αžΆαŸ†αž„αž˜αžΌαž›αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™ αžŠαŸ„αž™αžšαŸ†αž›αž„αž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αŸ” αž“αŸƒαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž—αžΆαž€αŸ’αžŸαžΆαžαžΆαž„αž›αžΎαž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡ αžšαž½αž˜αž‘αžΆαŸ†αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž”αžŽαŸ’αžαžΆαž‰ αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‡αžΆαžŠαžΎαž˜αŸ” αž™αžΎαž„αž“αžΉαž„αž˜αž·αž“αž‚αŸ’αžšαž”αžŠαžŽαŸ’αžαž”αŸ‹αžαŸ†αž”αž“αŸ‹αž“αŸαŸ‡αž‘αŸ αž’αŸ’αž“αž€αž’αžΆαž…αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžœαžΆαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„αž”αžΆαž“αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš.

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž”αž“αŸ’αž‘αžΆαž”αŸ‹ lxc config αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž€αŸ†αžŽαžαŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαžαžΆαžšαžΌαž”αž—αžΆαž–αžŠαŸ‚αž›αž”αžΆαž“αž‘αžΆαž‰αž™αž€αž‘αŸ…αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž–αžΈαžƒαŸ’αž›αžΆαŸ†αž„αžŸαž€αž›αž‘αŸ αž™αžΎαž„αž’αžΆαž…αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸαŸ‡αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

lxc config set images.auto_update_cached=false

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž αž“αž·αž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αž»αž„αžαžΊαž“αŸαžš ^

αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΊαž“αŸαžšαž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc init αžŠαŸ‚αž›αžαž˜αŸ’αž›αŸƒαžαŸ’αžšαžΌαžœαž”αžΆαž“αž†αŸ’αž›αž„αž€αžΆαžαŸ‹ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:ΠΎΠ±Ρ€Π°Π· αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž›αŸαžαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžŠαŸ‚αž›αž…αž„αŸ‹αž”αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαŸ” αžƒαŸ’αž›αžΆαŸ†αž„αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ local: αžŸαž€αž›αž›αŸ„αž€αžŽαžΆαž˜αž½αž™αž€αŸαžŠαžΌαž…αž‚αŸ’αž“αžΆαžŠαŸ‚αžšαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžƒαŸ’αž›αžΆαŸ†αž„αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹ αž“αŸ„αŸ‡αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαžŸαŸ’αžœαŸ‚αž„αžšαž€αžšαžΌαž”αž—αžΆαž–αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžšαžΌαž”αž—αžΆαž–αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž–αžΈαžƒαŸ’αž›αžΆαŸ†αž„αžŸαž€αž› αž“αŸ„αŸ‡αžŠαŸ†αž”αžΌαž„αžšαžΌαž”αž—αžΆαž–αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž‰αž™αž€αž‘αŸ…αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΊαž“αŸαžšαŸ”

αžαŸ„αŸ‡αžšαžαŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ†αž”αžΌαž„αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ–

lxc init alpine3 alp --storage=hddpool --profile=default --profile=hddroot

αžŸαžΌαž˜αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαŸ‚αž›αž™αžΎαž„αž”αŸ’αžšαžΎαž“αŸ…αž‘αžΈαž“αŸαŸ‡αžαžΆαž˜αž›αŸ†αžŠαžΆαž”αŸ‹αž›αŸ†αžŠαŸ„αž™αŸ–

  • alpine3 - αžˆαŸ’αž˜αŸ„αŸ‡αž€αŸ’αž›αŸ‚αž„αž€αŸ’αž›αžΆαž™ (alias) αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαžΌαž”αž—αžΆαž–αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž‘αž»αž€αž‘αžΎαž„αž–αžΈαž˜αž»αž“αž‘αŸ…αž€αžΆαž“αŸ‹αžƒαŸ’αž›αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžˆαŸ’αž˜αŸ„αŸ‡αž€αŸ’αž›αŸ‚αž„αž€αŸ’αž›αžΆαž™αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαžΌαž”αž—αžΆαž–αž“αŸαŸ‡αž‘αŸ αž“αŸ„αŸ‡αž’αŸ’αž“αž€αžαŸ‚αž„αžαŸ‚αž’αžΆαž…αž™αŸ„αž„αž‘αŸ…αžšαžΌαž”αž—αžΆαž–αžŠαŸ„αž™αžšαž”αžŸαŸ‹αžœαžΆαŸ” αžŸαŸ’αž“αžΆαž˜αž˜αŸ’αžšαžΆαž˜αžŠαŸƒ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αŸ”
  • alp - αž€αŸ†αžŽαžαŸ‹αž’αžαŸ’αžαžŸαž‰αŸ’αž‰αžΆαžŽαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžš
  • --storage - αž‚αž“αŸ’αž›αžΉαŸ‡β€‹αž“αŸαŸ‡β€‹αž”αž„αŸ’αž αžΆαž‰β€‹αž–αžΈβ€‹αž…αŸ†αžŽαž»αž…β€‹αžŽαžΆβ€‹αž˜αž½αž™β€‹ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αž’αž»αž„αž˜αž½αž™αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„
  • --profile - αž‚αž“αŸ’αž›αžΉαŸ‡αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αžΈαž‘αž˜αŸ’αžšαž„αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž–αžΈαž˜αž»αž“αž‘αŸ…αž€αž»αž„αžαžΊαž“αŸαžš

αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αž»αž„αžαžΊαž“αŸαžš αžŠαŸ‚αž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αŸ’αžšαž–αŸαž“αŸ’αž’ init αž“αŸƒαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αŸ–

lxc start alp

αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž•αž„αžŠαŸ‚αžšαŸ” lxc launch αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž•αŸ’αžŸαŸ†αž€αŸ’αžšαž»αž˜ lxc init ΠΈ lxc start αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž˜αž½αž™αŸ”

αž–αž·αž“αž·αžαŸ’αž™αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž’αž»αž„αŸ–

lxc list -c ns46tb
+------+---------+------------------+------+-----------+--------------+
| NAME |  STATE  |       IPV4       | IPV6 |   TYPE    | STORAGE POOL |
+------+---------+------------------+------+-----------+--------------+
| alp  | RUNNING | 10.0.5.46 (eth0) |      | CONTAINER | hddpool      |
+------+---------+------------------+------+-----------+--------------+

αž–αž·αž“αž·αžαŸ’αž™β€‹αž€αžΆαžšβ€‹αž€αŸ†αžŽαžαŸ‹β€‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’β€‹αž€αž»αž„αžαžΊαž“αŸαžšαŸ–

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200326_13:39)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200326_13:39"
  image.type: squashfs
  volatile.base_image: ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
  volatile.eth0.host_name: vethb1fe71d8
  volatile.eth0.hwaddr: 00:16:3e:5f:73:3e
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  root:
    path: /
    pool: hddpool
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€ profiles αž™αžΎαž„αž’αžΆαž…αž”αŸ’αžšαžΆαž€αžŠαžαžΆαž€αž»αž„αžαžΊαž“αŸαžšαž“αŸαŸ‡αž”αŸ’αžšαžΎαž‘αž˜αŸ’αžšαž„αŸ‹αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αžΈαžš βˆ’ default ΠΈ hddroot. αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€ devices αž™αžΎαž„β€‹αž’αžΆαž…β€‹αžšαž€β€‹αžƒαžΎαž‰β€‹αž§αž”αž€αžšαžŽαŸβ€‹αžαŸ‚β€‹αž˜αž½αž™β€‹αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž–αŸ’αžšαŸ„αŸ‡β€‹αž§αž”αž€αžšαžŽαŸβ€‹αž”αžŽαŸ’αžαžΆαž‰β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž„αŸ’αž€αžΎαžβ€‹αž“αŸ…β€‹αž€αž˜αŸ’αžšαž·αžβ€‹αž‘αž˜αŸ’αžšαž„αŸ‹ default. αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž§αž”αž€αžšαžŽαŸαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž”αŸ’αžšαžΎαžŠαŸ„αž™αž€αž»αž„αžαžΊαž“αŸαžš αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αžŸαŸ„ --expanded:

lxc config show alp --expanded

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200326_13:39)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200326_13:39"
  image.type: squashfs
  volatile.base_image: ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
  volatile.eth0.host_name: vethb1fe71d8
  volatile.eth0.hwaddr: 00:16:3e:5f:73:3e
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  eth0:
    name: eth0
    network: lxdbr0
    type: nic
  root:
    path: /
    pool: hddpool
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

αž€αŸ†αžŽαžαŸ‹αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αž‹αž·αžαž·αžœαž“αŸ’αž ^

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž–αŸ’αž™αžΆαž™αžΆαž˜αž€αŸ†αžŽαžαŸ‹αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰ eth0 αž€αŸ’αžšαž»αž˜ lxc config device set alp αž˜αžΆαž“αž”αŸ†αžŽαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž€αž»αž„αžαžΊαž“αŸαžš αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž™αžΎαž„αž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž€αŸ†αž αž»αžŸαžŠαŸ‚αž›αž“αžΉαž„αžšαžΆαž™αž€αžΆαžšαžŽαŸαžαžΆαž§αž”αž€αžšαžŽαŸαž“αŸαŸ‡αž˜αž·αž“αž˜αžΆαž“αž‘αŸ αžŠαŸ„αž™αžŸαžΆαžšαž§αž”αž€αžšαžŽαŸαž“αŸαŸ‡ eth0 αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαŸ„αž™αž€αž»αž„αžαžΊαž“αŸαžšαž‡αžΆαž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αžšαž”αžŸαŸ‹αž‘αž˜αŸ’αžšαž„αŸ‹ default:

lxc config device set alp eth0 ipv4.address 10.0.5.5

Error: The device doesn't exist

αž™αžΎαž„αž’αžΆαž…αž€αŸ†αžŽαžαŸ‹αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αž‹αž·αžαž·αžœαž“αŸ’αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ eth0 αž§αž”αž€αžšαžŽαŸαž“αŸ…αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž“αžΉαž„αžŠαžΌαž…αž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž”αž€αžšαžŽαŸαž•αŸ’αž‘αž»αž€αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž“αžΉαž„αž”αŸ’αžšαžΎαž€αž˜αŸ’αžšαž„αž–αŸαžαŸŒαž˜αžΆαž“αž“αŸαŸ‡αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž…αžΌαžšαž™αžΎαž„αž”αž“αŸ’αžαŸ‚αž˜αž§αž”αž€αžšαžŽαŸαžŠαŸ‚αž›αž§αž‘αŸ’αž‘αž·αžŸαžŠαž›αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαŸ–

lxc config device add alp eth0 nic name=eth0 nictype=bridged parent=lxdbr0 ipv4.address=10.0.5.5

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž€αž»αž„αžαžΊαž“αŸαžšαž‘αžΎαž„αžœαž·αž‰αŸ–

lxc restart alp

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαž₯αž‘αžΌαžœαž“αŸαŸ‡ αž™αžΎαž„αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž”αŸ’αžšαžΎαž‡αž˜αŸ’αžšαžΎαžŸαž“αŸ„αŸ‡αž‘αŸαŸ” --expanded αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž§αž”αž€αžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰ eth0αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžœαžΆαž“αŸ…αž€αž˜αŸ’αžšαž·αžαž€αž»αž„αžαžΊαž“αŸαžš αž αžΎαž™αžœαžΆαž”αžΆαž“αž’αŸ’αž›αžΆαž€αŸ‹αž–αžΈαž›αžΎαž§αž”αž€αžšαžŽαŸαžŠαžΌαž…αž‚αŸ’αž“αžΆαž–αžΈαž‘αž˜αŸ’αžšαž„αŸ‹ default:

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200326_13:39)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200326_13:39"
  image.type: squashfs
  volatile.base_image: ebd565585223487526ddb3607f5156e875c15a89e21b61ef004132196da6a0a3
  volatile.eth0.host_name: veth2a1dc59d
  volatile.eth0.hwaddr: 00:16:3e:0e:e2:71
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":65536},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":65536}]'
  volatile.last_state.power: RUNNING
devices:
  eth0:
    ipv4.address: 10.0.5.5
    name: eth0
    nictype: bridged
    parent: lxdbr0
    type: nic
  root:
    path: /
    pool: hddpool
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

αž€αžΆαžšαžŠαž€αž’αž»αž„αž˜αž½αž™αŸ” ^

αžŠαžΎαž˜αŸ’αž”αžΈαž›αž»αž”αž€αž»αž„αžαžΊαž“αŸαžš αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc deleteαž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž»αž“αž–αŸαž›αž™αž€αž€αž»αž„αžαžΊαž“αŸαžšαž…αŸαž‰ αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž”αž‰αŸ’αžˆαž”αŸ‹αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc stop:

lxc stop alp

lxc list

+------+---------+-------------------+------+-----------+-----------+
| NAME |  STATE  |       IPV4        | IPV6 |   TYPE    | SNAPSHOTS |
+------+---------+-------------------+------+-----------+-----------+
| alp  | STOPPED | 10.0.5.10 (eth0)  |      | CONTAINER | 0         |
+------+---------+-------------------+------+-----------+-----------+

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž™αžΎαž„αž”αžΆαž“αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžαžΆαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαž€αž»αž„αžαžΊαž“αŸαžšαž”αžΆαž“αž€αŸ’αž›αžΆαž™αž‘αŸ…αž‡αžΆ αž”αž‰αŸ’αžˆαž”αŸ‹αŸ”αžœαžΆαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαž€αž…αŸαž‰αž–αžΈ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€:

lxc delete alp

αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž€αž»αž„αžαžΊαž“αŸαžš ^

αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹ αžŠαŸ„αž™αž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž”αžŽαŸ’αžαžΆαž‰ αžŸαžΌαž˜αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc exec αžŠαŸ‚αž›αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ„αž™αž˜αž·αž“αž”αžΎαž€αžŸαŸ‚αž›αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ‚αž›αžŠαŸ„αž™αž”αŸ’αžšαžΎαž›αŸ†αž“αžΆαŸ†αžŸαŸ‚αž› αžŠαžΌαž…αž‡αžΆαž’αžαŸαžš αž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αžαž―αž€αžŸαžΆαžš (αž”αŸ†αž–αž„αŸ‹) αž‡αžΆαžŠαžΎαž˜ αž“αŸ„αŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αžΎαž€αžŸαŸ‚αž›αž±αŸ’αž™αž…αŸ’αž”αžΆαžŸαŸ‹αž›αžΆαžŸαŸ‹ αž αžΎαž™αž”αž‰αŸ’αž‡αžΌαž“αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž‡αžΆαž‚αž“αŸ’αž›αžΉαŸ‡ αž§αž‘αžΆαž αžšαžŽαŸαŸ–

lxc exec alp -- /bin/sh -c "echo $HOME"

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž”αžΆαž“αž”αŸ’αžšαžΎαžαž½αž’αž€αŸ’αžŸαžšαž‚αŸαž…αž…αŸαž‰αž–αž·αžŸαŸαžŸ αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž½αž’αž€αŸ’αžŸαžšαž–αž·αžŸαŸαžŸ $ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž’αžαŸαžš $HOME αž˜αž·αž“β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž€αžŸαŸ’αžšαžΆαž™β€‹αž“αŸ…β€‹αž›αžΎβ€‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“β€‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“β€‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž€αžŸαŸ’αžšαžΆαž™β€‹αžαŸ‚β€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αž€αž»αž„αžαžΊαž“αŸαžšβ€‹αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ”

αžœαžΆαž€αŸαž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“αž•αž„αžŠαŸ‚αžšαžŠαžΎαž˜αŸ’αž”αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžšαž”αŸ€αž”αžŸαŸ‚αž›αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜ αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αž‰αŸ’αž…αž”αŸ‹αžœαž‚αŸ’αž‚αžŠαŸ„αž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž–αžΆαž€αŸ’αž™αž‚αž“αŸ’αž›αžΉαŸ‡ CTRL+D:

lxc exec alp -- /bin/sh

αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž’αž“αž’αžΆαž“αž€αž»αž„αžαžΊαž“αŸαžš ^

αž“αŸ…αž€αŸ’αž“αž»αž„ LXD αž’αŸ’αž“αž€αž’αžΆαž…αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž’αž“αž’αžΆαž“αž’αž»αž„αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸ†αžŽαž»αŸ†αž–αž·αžŸαŸαžŸαž“αŸƒαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αŸ” αž”αž‰αŸ’αž‡αžΈαž–αŸαž‰αž›αŸαž‰αž“αŸƒαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž€αž»αž„αžαžΊαž“αŸαžšαž’αžΆαž…αžšαž€αž”αžΆαž“ αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš.

αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž’αž“αž’αžΆαž“ RAM ^

αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš limits.memory αž€αŸ†αžŽαžαŸ‹αž…αŸ†αž“αž½αž“ RAM αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαŸ” αžαž˜αŸ’αž›αŸƒβ€‹αž‚αžΊβ€‹αž‡αžΆβ€‹αž›αŸαž αž“αž·αž„β€‹αž˜αž½αž™β€‹αž“αŸƒβ€‹ αž”αž…αŸ’αž…αŸαž™αžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“.

αž…αžΌαžšαž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ RAM αžšαž”αžŸαŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαžŠαž›αŸ‹ 256 MBαŸ–

lxc config set alp limits.memory 256MB

αžœαžΆαž€αŸαž˜αžΆαž“αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αžŽαžαŸ‹αž€αžΆαžšαž…αž„αž…αžΆαŸ†αŸ–

  • limits.memory.enforce
  • limits.memory.hugepages
  • limits.memory.swap
  • limits.memory.swap.priority

αž€αŸ’αžšαž»αž˜αž€αžΆαžšαž„αžΆαžš lxc config show αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αž„αŸ’αž αžΆαž‰αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž€αž»αž„αžαžΊαž“αŸαžšαž‘αžΆαŸ†αž„αž˜αžΌαž› αžšαž½αž˜αž‘αžΆαŸ†αž„αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž’αž“αž’αžΆαž“αžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αŸ–

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200220_13:00)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200220_13:00"
  image.type: squashfs
  limits.memory: 256MB
  volatile.base_image: 73a3093d4a5ce0148fd84b95369b3fbecd19a537ddfd2e2d20caa2eef0e8fd60
  volatile.eth0.host_name: veth75b6df07
  volatile.eth0.hwaddr: 00:16:3e:a1:e7:46
  volatile.idmap.base: "0"
  volatile.idmap.current: '[]'
  volatile.idmap.next: '[]'
  volatile.last_state.idmap: '[]'
  volatile.last_state.power: RUNNING
devices: {}
ephemeral: false
profiles:
- default
stateful: false
description: ""

αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž’αž“αž’αžΆαž“ CPU ^

αž˜αžΆαž“αžœαž·αž’αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αž’αž“αž’αžΆαž“ CPU αŸ” αž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„:

  • limit.cpu - αž—αŸ’αž‡αžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαž‘αŸ…αž“αžΉαž„αžŸαŸ’αž“αžΌαž›αžŸαŸŠαžΈαž—αžΈαž™αžΌαž˜αž½αž™ αž¬αž…αŸ’αžšαžΎαž“αŸ”
  • limits.cpu.allowance - αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‘αžΆαŸ†αž„αž€αžΌαžαžΆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž€αŸ†αžŽαžαŸ‹αž–αŸαž› CFS αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž–αŸαž›αžœαŸαž›αžΆαž€αŸ†αžŽαžαŸ‹αž”αžΆαž“αž€αž“αŸ’αž›αž„αž•αž»αžαž‘αŸ… αž¬αž™αž“αŸ’αžαž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž’αž“αž’αžΆαž“ CPU αž‡αžΆαžŸαž€αž› αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž—αžΆαž‚αžšαž™αž”αžΆαž“αž€αž“αŸ’αž›αž„αž•αž»αžαž‘αŸ…
  • limits.cpu.priority - αž’αžΆαž‘αž·αž—αžΆαž–αž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž€αŸ†αžŽαžαŸ‹αž–αŸαž›αž“αŸ…αž–αŸαž›αžŠαŸ‚αž› instances αž‡αžΆαž…αŸ’αžšαžΎαž“αž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αžŸαŸ†αžŽαž»αŸ†αž“αŸƒ processors αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž—αžΆαž‚αžšαž™αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸƒ processors

lxc config set alp limits.cpu.allowance 40%

lxc config show alp

architecture: x86_64
config:
  image.architecture: amd64
  image.description: Alpine 3.11 amd64 (20200220_13:00)
  image.os: Alpine
  image.release: "3.11"
  image.serial: "20200220_13:00"
  image.type: squashfs
  limits.cpu.allowance: 40%
  limits.memory: 256MB
  volatile.base_image: 73a3093d4a5ce0148fd84b95369b3fbecd19a537ddfd2e2d20caa2eef0e8fd60
  volatile.eth0.host_name: veth75b6df07
  volatile.eth0.hwaddr: 00:16:3e:a1:e7:46
  volatile.idmap.base: "0"
  volatile.idmap.current: '[]'
  volatile.idmap.next: '[]'
  volatile.last_state.idmap: '[]'
  volatile.last_state.power: RUNNING
devices: {}
ephemeral: false
profiles:
- default
stateful: false
description: ""

αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž‘αŸ†αž αŸ†αžαžΆαžŸ ^

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„αž”αŸ‚αž”αž“αŸαŸ‡ limits.read, limits.write αž™αžΎαž„αž€αŸαž’αžΆαž…αž€αŸ†αžŽαžαŸ‹αž‘αŸ†αž αŸ†αžαžΆαžŸαžŠαŸ‚αž›αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ„αž™αž€αž»αž„αžαžΊαž“αŸαžš (αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžαŸ‚αž‡αžΆαž˜αž½αž™ ZFS ឬ BTRFS αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡)αŸ–

lxc config device set alp root size=2GB

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„, αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš devices.root.size αž™αžΎαž„αž’αžΆαž…αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αŸ–

lxc config show alp
...
devices:
  root:
    path: /
    pool: hddpool
    size: 2GB
    type: disk
ephemeral: false
profiles:
- default
- hddroot
stateful: false
description: ""

αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž€αžΌαžαžΆαžŒαžΈαžŸαžŠαŸ‚αž›αž”αžΆαž“αž”αŸ’αžšαžΎ αž™αžΎαž„αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž–αžΈαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc info:

lxc info alp
...
Resources:
  Processes: 5
  Disk usage:
    root: 1.05GB
  CPU usage:
    CPU usage (in seconds): 1
  Memory usage:
    Memory (current): 5.46MB
  Network usage:
    eth0:
      Bytes received: 802B
      Bytes sent: 1.59kB
      Packets received: 4
      Packets sent: 14
    lo:
      Bytes received: 0B
      Bytes sent: 0B
      Packets received: 0
      Packets sent: 0

αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž™αžΎαž„αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž”αž€αžšαžŽαŸ root αž“αŸƒαž€αž»αž„αžαžΊαž“αŸαžšαžŠαž›αŸ‹ 2GB αž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαžΌαž…αž‡αžΆ df αž“αžΉαž„αž˜αž·αž“αžƒαžΎαž‰αž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„αž“αŸαŸ‡αž‘αŸαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŠαžΌαž…αž“αŸαŸ‡αž™αžΎαž„αž“αžΉαž„αž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžαžΌαž…αž˜αž½αž™αž αžΎαž™αžšαž€αž˜αžΎαž›αžαžΆαžαžΎαžœαžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž™αŸ‰αžΆαž„αžŠαžΌαž…αž˜αŸ’αžαŸαž…αŸ”

αž…αžΌαžšαž™αžΎαž„αž”αž„αŸ’αž€αžΎαžαž’αž»αž„αžŠαžΌαž…αž‚αŸ’αž“αžΆαžαŸ’αž˜αžΈαž…αŸ†αž“αž½αž“ 2 αž“αŸ…αž€αŸ’αž“αž»αž„αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ (hddpool):

lxc init alpine3 alp1 --storage=hddpool --profile=default --profile=hddroot
lxc init alpine3 alp2 --storage=hddpool --profile=default --profile=hddroot

lxc list
+------+---------+------------------+------+-----------+-----------+
| NAME |  STATE  |       IPV4       | IPV6 |   TYPE    | SNAPSHOTS |
+------+---------+------------------+------+-----------+-----------+
| alp1 | RUNNING | 10.0.5.46 (eth0) |      | CONTAINER | 0         |
+------+---------+------------------+------+-----------+-----------+
| alp2 | RUNNING | 10.0.5.30 (eth0) |      | CONTAINER | 0         |
+------+---------+------------------+------+-----------+-----------+

αžαŸ„αŸ‡αž”αž„αŸ’αž€αžΎαžαž―αž€αžŸαžΆαžš 1GB αž€αŸ’αž“αž»αž„αž’αž»αž„αž˜αž½αž™αŸ–

lxc exec alp1 -- dd if=/dev/urandom of=file.img bs=1M count=1000

αž…αžΌαžšαž”αŸ’αžšαžΆαž€αžŠαžαžΆαž―αž€αžŸαžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαŸ–

lxc exec alp1 -- ls -lh
total 1000M  
-rw-r--r--    1 root     root     1000.0M Mar 27 10:16 file.img

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αžšαž€αž˜αžΎαž›αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαž‘αžΈαž–αžΈαžš αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž’αžαŸ’αžαž·αž—αžΆαž–αž“αŸƒαž―αž€αžŸαžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž‘αžΈαžαžΆαŸ†αž„αžαŸ‚αž˜αž½αž™ αž“αŸ„αŸ‡αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αž“αžΉαž„αž˜αž·αž“αž˜αžΆαž“αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αž‘αŸ αžŠαŸ‚αž›αžšαŸ†αž–αžΉαž„αž‘αž»αž€ αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž€αž»αž„αžαžΊαž“αŸαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αž”αžšαž·αž˜αžΆαžŽαž•αŸ’αž‘αž»αž€ αžŠαžΌαž…αž‚αŸ’αž“αžΆ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€:

lxc exec alp2 -- ls -lh
total 0

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαžΌαž˜αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αžœαžΆαž•αž›αž·αž df αž“αŸ…αž›αžΎαž’αž»αž„αž˜αž½αž™αž“αž·αž„αž˜αž½αž™αž‘αŸ€αžαŸ–

lxc exec alp1 -- df -hT
Filesystem           Type            Size      Used Available Use% Mounted on
/dev/loop1           btrfs           9.3G   1016.4M      7.8G  11% /
...

lxc exec alp2 -- df -hT
Filesystem           Type            Size      Used Available Use% Mounted on
/dev/loop1           btrfs           9.3G   1016.4M      7.8G  11% /
...

αž§αž”αž€αžšαžŽαŸ /dev/loop1 αž”αžΆαž“β€‹αž˜αŸ‰αŸ„αž“β€‹αžŠαžΌαž…β€‹αž‡αžΆβ€‹αž—αžΆαž‚β€‹αžαžΆβ€‹αžŸ root αž‚αžΊβ€‹ αž’αžΆαž„αžŸαŸ’αžαž»αž€αž‘αž»αž€ αžŠαŸ‚αž›αž’αž»αž„αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž”αŸ’αžšαžΎ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž–αž½αž€αžœαžΆαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž”αžšαž·αž˜αžΆαžŽαžšαž”αžŸαŸ‹αžœαžΆαžšαžœαžΆαž„αž–αžΈαžšαŸ”

αžŸαŸ’αžαž·αžαž·αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“ ^

αž’αŸ’αž“αž€αž’αžΆαž…αž˜αžΎαž›αžŸαŸ’αžαž·αžαž·αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαŸ–

lxc info alp

Name: alp
Location: none
Remote: unix://
Architecture: x86_64
Created: 2020/04/08 18:05 UTC
Status: Running
Type: container
Profiles: default, hddroot
Pid: 19219
Ips:
  eth0: inet    10.0.5.5        veth2a1dc59d
  eth0: inet6   fe80::216:3eff:fe0e:e271        veth2a1dc59d
  lo:   inet    127.0.0.1
  lo:   inet6   ::1
Resources:
  Processes: 5
  Disk usage:
    root: 495.62kB
  CPU usage:
    CPU usage (in seconds): 1
  Memory usage:
    Memory (current): 4.79MB
  Network usage:
    eth0:
      Bytes received: 730B
      Bytes sent: 1.59kB
      Packets received: 3
      Packets sent: 14
    lo:
      Bytes received: 0B
      Bytes sent: 0B
      Packets received: 0
      Packets sent: 0

αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžšαžΌαž”αžαž ^

LXD αž˜αžΆαž“αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžšαžΌαž”αžαž αž“αž·αž„αžŸαŸ’αžŠαžΆαžšαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž€αž»αž„αžαžΊαž“αŸαžšαž–αžΈαž–αž½αž€αž‚αŸαŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαžšαžΌαž”αžαž αžŸαžΌαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

lxc snapshot alp snapshot1

αž€αŸ’αžšαž»αž˜ lxc snapshot αž˜αž·αž“αž˜αžΆαž“αžŸαŸ„ listαžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž”αž‰αŸ’αž‡αžΈαžšαžΌαž”αžαž αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αž–αŸαžαŸŒαž˜αžΆαž“αž‘αžΌαž‘αŸ…αž’αŸ†αž–αžΈαž€αž»αž„αžαžΊαž“αŸαžšαŸ–

lxc info alp
...
...
Snapshots:
  snapshot1 (taken at 2020/04/08 18:18 UTC) (stateless)

αž’αŸ’αž“αž€αž’αžΆαž…αžŸαŸ’αžŠαžΆαžšαž€αž»αž„αžαžΊαž“αŸαžšαž–αžΈαžšαžΌαž”αžαžαž˜αž½αž™αžŸαž“αŸ’αž›αžΉαž€αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ lxc restore αž”αž‰αŸ’αž‡αžΆαž€αŸ‹β€‹αž€αž»αž„αžαžΊαž“αŸαžšβ€‹αžŠαŸ‚αž›β€‹αž€αžΆαžšβ€‹αžŸαŸ’αžŠαžΆαžšβ€‹αž‘αžΎαž„αžœαž·αž‰β€‹αž“αžΉαž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž’αž“αž»αžœαžαŸ’αž αž“αž·αž„β€‹αžˆαŸ’αž˜αŸ„αŸ‡β€‹αž€αŸ’αž›αŸ‚αž„αž€αŸ’αž›αžΆαž™αŸ–

lxc restore alp snapshot1

αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαž›αž»αž”αžšαžΌαž”αžαžαŸ” αžŸαžΌαž˜αž…αŸ†αžŽαžΆαŸ†αžαžΆαžœαžΆαž€αŸ’αž™αžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž˜αž·αž“αžŸαŸ’αžšαžŠαŸ€αž„αž“αžΉαž„αž’αŸ’αžœαžΈαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‘αŸ αž“αŸ…αž‘αžΈαž“αŸαŸ‡αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžŸαž‰αŸ’αž‰αžΆαž€αžΆαžαŸ‹αž‘αŸ…αž˜αž»αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžˆαŸ’αž˜αŸ„αŸ‡αž€αž»αž„αžαžΊαž“αŸαžšαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαž‰αŸ’αž‰αžΆαžŠαž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αž»αž”αž…αŸ„αž› αž“αŸ„αŸ‡αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαžΎαž˜αŸ’αž”αžΈαž›αž»αž”αžšαžΌαž”αžαžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž€αžŸαŸ’αžšαžΆαž™αžαžΆαž‡αžΆαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαžΎαž˜αŸ’αž”αžΈαž›αž»αž”αž€αž»αž„αžαžΊαž“αŸαžš!

lxc delete alp/snapshot1

αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžαžΆαž„αž›αžΎ αž™αžΎαž„αž”αžΆαž“αž˜αžΎαž›αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αŸαž αŸ…αžαžΆ αžšαžΌαž”αžαžαž‚αŸ’αž˜αžΆαž“αžšαžŠαŸ’αž‹αŸ” LXD αž˜αžΆαž“αž”αŸ’αžšαž—αŸαž‘αžšαžΌαž”αžαžαž•αŸ’αžŸαŸαž„αž‘αŸ€αž - stateful αžŠαŸ‚αž›αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž»αž„αžαžΊαž“αŸαžšαŸ” αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸ αž“αž·αž„αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αžšαžΌαž”αžαžαžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αž±αŸ’αž™αžƒαžΎαž‰αŸ”

αžαžΎβ€‹αž˜αžΆαž“β€‹αž’αŸ’αžœαžΈβ€‹αž•αŸ’αžŸαŸαž„β€‹αž‘αŸ€αž? ^

  • αž˜αŸ‰αžΌαžŒαž»αž›αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ Python PyLXD αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹ API αžŠαž›αŸ‹ LXD

αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžαŸ’αž„αŸƒαž‘αžΈ 10.04.2020/15/00 αž˜αŸ‰αŸ„αž„ XNUMX:XNUMXαŸ– αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαžšαž»αž€αžšαž€

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹