MoleTun บน BazziteOS
BazziteOS คืออะไร?
BazziteOS เป็นดิสโทร Linux แบบ immutable ที่สร้างบน Fedora Atomic ต่างจากดิสโทร Linux ทั่วไปตรงที่ระบบไฟล์รากเป็นแบบอ่านอย่างเดียว และจัดการแพ็กเกจผ่าน rpm-ostree แทน dnf
หมายความว่าคุณ ใช้ sudo dnf install บน BazziteOS ไม่ได้ คู่มือนี้จะอธิบายวิธีติดตั้งที่ถูกต้อง
การติดตั้ง
วิธีที่ 1: rpm-ostree (แนะนำ)
วิธีนี้จะซ้อนแพ็กเกจลงบนระบบของคุณ ต้องรีบูตหลังติดตั้ง
ดาวน์โหลดแพ็กเกจ RPM
ดาวน์โหลดแพ็กเกจ RPM (.rpm) จากเว็บไซต์ MoleTun
ติดตั้งด้วย rpm-ostree
เปิดเทอร์มินัลแล้วรัน:
rpm-ostree install ~/Downloads/MoleTun_*.rpm
ถ้าเจอข้อผิดพลาดเรื่อง dependency ให้ติดตั้ง dependency ไปพร้อมกัน:
rpm-ostree install webkit2gtk4.1 libayatana-appindicator-gtk3 ~/Downloads/MoleTun_*.rpm
รีบูต
การเปลี่ยนแปลงของ rpm-ostree ต้องรีบูตถึงจะมีผล:
systemctl reboot
ให้สิทธิ์เครือข่าย
หลังรีบูต เปิดเทอร์มินัลแล้วรัน:
sudo setcap cap_net_admin=ep /usr/bin/mole
เปิด MoleTun
หา MoleTun ในเมนูแอปพลิเคชัน หรือรัน mole ในเทอร์มินัล
วิธีที่ 2: ไฟล์แบบพกพา (ไม่ต้องรีบูต)
ถ้าไม่อยากรีบูต ให้ใช้เวอร์ชันพกพาแบบ tar.gz
ดาวน์โหลดไฟล์แบบพกพา
ดาวน์โหลด Linux แบบพกพา (.tar.gz) จากเว็บไซต์ MoleTun
แตกไฟล์แล้วรัน
cd ~/Downloads
tar -xzf MoleTun_*.tar.gz
sudo setcap cap_net_admin=ep ~/Downloads/MoleTun/mole
cd MoleTun
./mole
วิธีแบบพกพาไม่ต้องใช้ rpm-ostree หรือรีบูต แต่คุณต้องจัดการอัปเดตเอง
การแก้ปัญหา
"Command not found: dnf"
เป็นเรื่องปกติบน BazziteOS ให้ใช้ rpm-ostree install แทน dnf install
MoleTun ไม่ยอมเปิด
- •ตรวจให้แน่ใจว่ารันคำสั่ง setcap แล้ว:
sudo setcap cap_net_admin=ep /usr/bin/mole - •หรือรันด้วย sudo:
sudo mole - •ตรวจหา dependency ที่ขาดโดยรัน
moleจากเทอร์มินัลเพื่อดูข้อความแจ้งข้อผิดพลาด
ข้อผิดพลาดไลบรารีขาดหาย
ถ้าเจอข้อผิดพลาดเรื่องไฟล์ .so ที่ขาดหาย (เช่น libwebkit2gtk, libxkbcommon):
rpm-ostree install webkit2gtk4.1 libayatana-appindicator-gtk3 libxkbcommon xcb-util
systemctl reboot
ติดตั้งด้วย rpm-ostree ไม่สำเร็จ
- •ตรวจให้แน่ใจว่าใช้พาธเต็มของไฟล์ RPM
- •ตรวจพื้นที่ดิสก์ที่เหลือ:
df -h - •ลองยกเลิก deployment ที่ค้างอยู่:
rpm-ostree cancel
แอปหายไปหลังอัปเดตระบบ
การอัปเดต BazziteOS บางครั้งอาจต้องซ้อนแพ็กเกจใหม่:
rpm-ostree install ~/Downloads/MoleTun_*.rpm
systemctl reboot
ทำไมใช้ dnf บน BazziteOS ไม่ได้?▼
BazziteOS เป็นดิสโทรแบบ immutable ที่อิง Fedora Atomic ระบบไฟล์รากเป็นแบบอ่านอย่างเดียว และต้องซ้อนแพ็กเกจด้วย rpm-ostree การออกแบบนี้ช่วยให้ระบบเสถียรขึ้นและย้อนกลับได้
ต้องรีบูตหลัง rpm-ostree install จริงเหรอ?▼
จริง rpm-ostree สร้าง deployment ใหม่ของระบบที่จะทำงานหลังรีบูตเท่านั้น วิธีแบบพกพา tar.gz ไม่ต้องรีบูต
ใช้ Distrobox แทนได้ไหม?▼
ไม่แนะนำให้ใช้ Distrobox กับ MoleTun เพราะมันรันใน container ที่แยกเครือข่ายออกจากระบบ MoleTun ต้องเข้าถึงอินเทอร์เฟซเครือข่ายของระบบโดยตรงเพื่อสร้าง LAN เสมือน
ใช้กับดิสโทร immutable อื่นได้ไหม?▼
วิธี rpm-ostree ใช้ได้กับทุกดิสโทรที่อิง Fedora Atomic (Universal Blue, Aurora, Bluefin) สำหรับดิสโทร immutable อื่น ให้ใช้วิธีแบบพกพา tar.gz