Tại sao mình chọn Distrobox thay vì cài lại máy?
Dùng Ubuntu làm hệ điều hành chính suốt nửa năm, mình cực kỳ ưng độ ổn định của nó. Thế nhưng, đời không như là mơ. Kho ứng dụng apt của Ubuntu đôi khi quá cũ so với nhu cầu thực tế. Có những lúc mình thèm cái cảm giác dùng package mới nhất trên AUR của Arch, hay cần một thư viện chỉ có trên Fedora mà Ubuntu LTS thì không hỗ trợ.
Trước đây, mình thường dựng máy ảo (VM). Tuy nhiên, một con VM chạy Arch thường ngốn ít nhất 2-4GB RAM và khởi động rất chậm. Docker là lựa chọn thứ hai, nhưng nó lại bị cô lập quá mức với file hệ thống và khó chạy ứng dụng có giao diện (GUI). Distrobox xuất hiện như một cứu cánh. Nó cho phép mình chạy bất kỳ bản phân phối Linux nào ngay trong terminal Ubuntu. Mọi thứ dùng chung thư mục Home, chung mạng, và nhẹ đến mức bạn gần như không cảm thấy sự sụt giảm hiệu năng nào.
Quick Start: Có ngay Arch Linux trên Ubuntu sau 5 phút
Nếu bạn muốn thử ngay, đây là quy trình rút gọn để đưa môi trường Arch Linux vào Ubuntu của mình.
Bước 1: Cài đặt Podman và Distrobox
Distrobox cần một “engine” để chạy container. Mình khuyên bạn nên dùng Podman thay vì Docker. Podman hoạt động ở chế độ rootless, giúp bảo mật hơn và tránh lỗi phân quyền file trong thư mục cá nhân.
sudo apt update
sudo apt install podman distrobox -y
Bước 2: Khởi tạo container mới
Hãy tạo một môi trường Arch Linux và đặt tên là my-arch:
distrobox create -n my-arch -i archlinux:latest
Hệ thống sẽ hỏi bạn có muốn tải image về không. Nhấn Y để tiếp tục (dung lượng tải về thường chỉ khoảng 150-200MB).
Bước 3: Truy cập vào môi trường mới
distrobox enter my-arch
Dấu nhắc lệnh (prompt) sẽ thay đổi ngay lập tức. Chào mừng bạn đến với Arch Linux! Giờ thì bạn có thể tha hồ pacman -S để cài những công cụ mới nhất.
Distrobox hoạt động như thế nào?
Nhiều người lầm tưởng Distrobox là một cái gì đó cao siêu, nhưng thực chất nó là một script wrapper thông minh bọc quanh Docker hoặc Podman. Điểm khác biệt nằm ở khả năng tích hợp sâu:
- Mount thư mục Home: File ở
~/Documentstrên Ubuntu cũng hiện diện y hệt trong Distrobox. - Tích hợp đồ họa: Bạn có thể mở một app GUI (như GIMP bản mới nhất từ Fedora) ngay trên desktop Ubuntu.
- Dùng chung Network: Không cần cấu hình port forwarding phức tạp như khi dùng Docker truyền thống.
Mình thường dùng cách này để test script trên nhiều môi trường khác nhau. Nó giúp con Ubuntu Server của mình luôn sạch sẽ, không bị “rác” bởi các thư viện cài thêm.
Các lệnh quản lý cần bỏ túi
Tạo container từ các distro khác
Bạn không chỉ có Arch. Bất kỳ image nào trên Docker Hub hoặc Quay.io đều dùng được:
# Tạo container Fedora mới nhất
distrobox create -n fedora-box -i fedora:latest
# Tạo container Alpine (siêu nhẹ, chỉ tốn khoảng 5MB disk)
distrobox create -n alpine-box -i alpine:latest
Xem danh sách container
distrobox list
Xóa container
distrobox rm my-arch
Mẹo hay: Đưa app từ Distrobox ra Menu ứng dụng của Ubuntu
Đây là tính năng mình tâm đắc nhất. Giả sử bạn cài vlc trong container fedora-box nhưng muốn mở nó nhanh từ thanh dock Ubuntu. Hãy dùng distrobox-export.
Đầu tiên, hãy vào container đó:
distrobox enter fedora-box
Sau đó chạy lệnh xuất ứng dụng:
distrobox-export --app vlc
Icon VLC sẽ xuất hiện trong Application Menu của Ubuntu ngay lập tức. Khi bạn click vào, Ubuntu tự khởi động container và mở app. Trải nghiệm mượt mà không khác gì app cài chính chủ qua apt.
Kinh nghiệm thực tế sau nửa năm sử dụng
Sau khi vọc vạch Distrobox trên cả laptop lẫn server, mình rút ra vài lưu ý quan trọng:
- Hãy chọn Podman: Podman chạy rootless nên file tạo ra trong container sẽ thuộc quyền sở hữu của user bạn. Dùng Docker đôi khi sẽ gây lỗi
Permission Deniedrất ức chế khi bạn sửa file bằng các app bên ngoài. - Kiểm soát dung lượng: Dù nhẹ nhưng mỗi container vẫn tốn từ vài trăm MB đến vài GB ổ cứng. Đừng tạo quá nhiều container trùng lặp chức năng nếu không muốn đầy ổ cứng.
- Cẩn thận với Dotfiles: Vì dùng chung thư mục Home, các file
.bashrchay.zshrcsẽ bị ảnh hưởng chéo. Hãy kiểm tra kỹ nếu bạn có các tùy chỉnh sâu cho shell. - Tách biệt môi trường Dev: Mình thường tạo container riêng cho mỗi dự án. Dự án A dùng Node.js 14, dự án B dùng Node.js 20. Cách này giúp hệ thống cực kỳ ngăn nắp và dễ quản lý.
Lời kết
Distrobox là công cụ tuyệt vời cho những ai thích khám phá nhưng vẫn cần sự ổn định để làm việc. Nó xóa tan rào cản giữa các bản phân phối Linux. Giờ đây, bạn có thể tận hưởng sức mạnh của Arch Linux ngay trên nền tảng vững chãi của Ubuntu.
Nếu gặp lỗi liên quan đến subuid hoặc subgid khi dùng Podman, bạn chỉ cần kiểm tra lại cấu hình user trong /etc/subuid là xong. Chúc các bạn có những trải nghiệm thú vị!

