Distrobox 1.6์ด ์ถ์๋์์ต๋๋ค. ์ด ๋ฒ์ ์ ์ฌ์ฉํ๋ฉด ์ปจํ ์ด๋ ํ๊ฒฝ์์ ๋ชจ๋ ๋ฐฐํฌํ์ ๋น ๋ฅด๊ฒ ์ค์นํ๊ณ ์คํํ ์ ์์ต๋๋ค. Linux ๋ํ ๋ฉ์ธ ์์คํ ๊ณผ์ ํตํฉ์ ๋ณด์ฅํฉ๋๋ค. ํ๋ก์ ํธ ์ฝ๋๋ Shell ์ธ์ด๋ก ์์ฑ๋์์ผ๋ฉฐ GPLv3 ๋ผ์ด์ ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค.
์ด ํ๋ก์ ํธ๋ Docker, Podman ๋๋ Lilipod์ฉ ์ ๋์จ์ ์ ๊ณตํ๋ฉฐ, ๊ทน๋๋ก ๊ฐ์ํ๋ ์๋ ๋ฐฉ์๊ณผ ์คํ ํ๊ฒฝ์ ์์คํ ์ ๋๋จธ์ง ๋ถ๋ถ๊ณผ ํตํฉํ๋ ๊ฒ์ด ํน์ง์ ๋๋ค. ๋ค๋ฅธ ๋ฐฐํฌํ์ผ๋ก ํ๊ฒฝ์ ์์ฑํ๋ ค๋ฉด ์ธ๋ถ์ ์ธ ์ฌํญ์ ๋ํด ๊ฑฑ์ ํ ํ์ ์์ด distrobox-create ๋ช ๋ น๋ง ์คํํ๋ฉด ๋ฉ๋๋ค. ์คํ ํ Distrobox๋ ์ฌ์ฉ์์ ํ ๋๋ ํ ๋ฆฌ๋ฅผ ์ปจํ ์ด๋๋ก ์ ๋ฌํ๊ณ ์ ๊ทผ ๊ถํ์ ๊ตฌ์ฑํฉ๋๋ค. ์ฌ๊ธฐ๋ ์ฌ๋ ์ปจํ ์ด๋์์ ๊ทธ๋ํฝ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๊ธฐ ์ํ X11 ๋ฐ Wayland ์ง์, ์ธ๋ถ ๋๋ผ์ด๋ธ ์ฐ๊ฒฐ ํ์ฉ, ์ค๋์ค ์ถ๋ ฅ ์ถ๊ฐ, SSH ์์ด์ ํธ, D-Bus ๋ฐ udev ์์ค์์์ ํตํฉ ๊ตฌํ.
Distrobox๋ Alpine, Manjaro, Gentoo, EndlessOS, NixOS, Void, Arch, SUSE๋ฅผ ํฌํจํ 25๊ฐ์ง ๋ฐฐํฌํ์ ํธ์คํธ ์์คํ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค๊ณ ์ฃผ์ฅํฉ๋๋ค. Ubuntu, DebianRHEL, Fedora ๋ฑ OCI ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ ๋ฐฐํฌํ์ ์ปจํ ์ด๋์์ ์คํํ ์ ์์ต๋๋ค. ์ค์น ํ ์ฌ์ฉ์๋ ๋ฉ์ธ ์์คํ ์ ๋ฒ์ด๋์ง ์๊ณ ๋ ๋ค๋ฅธ ๋ฐฐํฌํ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ํ์ฉํ ์ ์์ต๋๋ค.
์์ฉ ํ๋ก๊ทธ๋จ์ ์ฃผ์ ์์ญ ์ค์๋ Endless OS, Fedora Silverblue, OpenSUSE MicroOS ๋ฐ SteamOS3์ ๊ฐ์ด ์์์ ์ผ๋ก ์ ๋ฐ์ดํธ๋ ๋ฐฐํฌํ์ ๋ํ ์คํ, ๋ณ๋์ ๊ฒฉ๋ฆฌ๋ ํ๊ฒฝ ์์ฑ(์: ์ ๋ฌด์ฉ ๋ฉํฑ์์ ํ ๊ตฌ์ฑ ์คํ), ์ต์ ์คํ์ ๋ฐฐํฌํ์ ์์ฉ ํ๋ก๊ทธ๋จ ๋ฒ์ .
์ ๋ฆด๋ฆฌ์ค์์:
- Distrobox์ ์ ์๊ฐ ๊ฐ๋ฐํ, ๊ฒฉ๋ฆฌ๋ ์ปจํ
์ด๋๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํ lilipod ํดํท์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ด ํดํท์ ์ฌ์ฉํ๋ฉด ๋ค์ํ ์ ์ฅ์์์ OCI ์ปจํ
์ด๋ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ์์ถ์ ํ๊ณ , ์ด๋ฏธ์ง๋ฅผ ๊ด๋ฆฌํ๊ณ , ๊ฒฐ๊ณผ ์ด๋ฏธ์ง์์ ์ปจํ
์ด๋๋ฅผ ๋ง๋ค๊ณ ์คํํ ์ ์์ต๋๋ค. lilipod ๋ช
๋ น์ค ์ธํฐํ์ด์ค๋ Podman, Docker, Nerdctl๊ณผ ์ต๋ํ ๋น์ทํ์ง๋ง ๋จ์์ฑ๊ณผ ๋ฏธ๋๋ฉ๋ฆฌ์ฆ์ ์ด์ ์ ๋ง์ท์ต๋๋ค(๊ฐ์ฅ ํ์ํ ๊ธฐ๋ฅ๋ง ์ง์).
์ปจํ ์ด๋๋ ๋ง์ดํธ ์ง์ ๋ค์์คํ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ ์์คํ ์ด ๊ฒฉ๋ฆฌ๋ ๋จ์ผ ์ฌ์ฉ์๋ก ์คํ๋๋๋ก ์์ฑ๋ฉ๋๋ค(์ ํ์ ์ผ๋ก ๋คํธ์ํฌ, pid, ipc ๋ค์์คํ์ด์ค๋ฅผ ์ฌ์ฉํ ์ ์์). seccomp, ๊ธฐ๋ฅ ๋ฐ cgroups๋ฅผ ํตํด ์ค์ ๋ ์ถ๊ฐ ์ ํ์ ์ง์๋์ง ์์ต๋๋ค. Lilipod๋ Distrobox์ ๊ธฐ๋ณธ ์ ๊ณต ๋์ฒด ๋๊ตฌ๋ก, ์์คํ ์์ ๋ ๋ง์ ๊ธฐ๋ฅ์ ๊ฐ์ถ ์ปจํ ์ด๋ ๊ด๋ฆฌ์๊ฐ ๋ถ์กฑํ ๊ฒฝ์ฐ ์ฌ์ฉ๋ฉ๋๋ค. ํดํท์ ์ ์ ๋งํฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌ์ถ๋์์ผ๋ฉฐ ์ธ๋ถ ์ข ์์ฑ์ ๋ฌถ์ด์ง ์์ต๋๋ค.
- CUDA ๋ฑ NVIDIA ๊ธฐ์ ๊ณผ์ ํตํฉ์ด ๊ฐ์ ๋์์ต๋๋ค.
- ์ด๊ธฐํ ํ๋ก์ธ์ค๊ฐ ๊ฐ์ ๋์์ต๋๋ค.
- ์ปจํ ์ด๋ ๋ด๋ถ์ ์ฌ์ฉ์ ๋ช ๋ น ์ ธ ์์ ์ด ๊ฐ์ ๋์์ต๋๋ค.
- ๋ฃจํธ ๊ถํ์ด ์๋ ์ปจํ ์ด๋์์ sudo ์ ํธ๋ฆฌํฐ๋ฅผ ์คํํ๊ธฐ ์ํ ์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
- ์์ฒด init ์์คํ (initful)์ ๊ฐ์ถ ์ปจํ ์ด๋์ ๋ํ ์ง์์ด ๊ฐ์ ๋์์ต๋๋ค. OpenRC ์ด๊ธฐํ ์์คํ ์ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. systemd ๊ธฐ๋ฐ์ ์ฌ์ฉ์ ์ธ์ ์ ๋ํ ์ง์์ ์ ๊ณตํฉ๋๋ค.
- "distrobox create" ๋ช ๋ น์ ์๋ก์ด ์ต์ "--unshare-all", "--unshare-netns", "--unshare-process", "--unshare-devsys"๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- LXC ๋ฐ Libvirt ๊ธฐ๋ฐ ํ๊ฒฝ์์ initful ๋ชจ๋์ unshare-all ๋ชจ๋๋ก ์์๋ ์ปจํ ์ด๋๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- ์ปจํ ์ด๋์์ ์ฌ์ฉํ ๋ง์ดํธ ์ง์ ์ ์ง์ ํ๊ธฐ ์ํด container_additional_volumes ๊ตฌ์ฑ ์ต์ ์ ์ถ๊ฐํ์ต๋๋ค.
- ๋ค์ํ DistroBox ํ๊ฒฝ์์ ๋ด๋ณด๋ธ ๋ฐ์ด๋๋ฆฌ๋ฅผ ์คํํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- "distrobox assemble" ๋ช ๋ น์ ์ด์ "distrobox create" ๋ช ๋ น์ ๋ชจ๋ ์ต์ ์ ์ง์ํฉ๋๋ค. ๋งค๋ํ์คํธ์์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋ฐ์ด๋๋ฆฌ๋ฅผ ์ง์ ๋ด๋ณด๋ผ ์ ์๋ ๊ธฐ๋ฅ์ ๊ตฌํํ์ต๋๋ค.
- ์๊ฐ๋ ์ค์ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru
