SaputraBudi Cloud

Tips & Trick

Tutorial Instalasi MiniOS dan GenieACS

17 Februari 2026

130 views

🚀 Tutorial Instalasi MiniOS dan GenieACS

MiniOS Logo
GenieACS Badge
License
Language


📖 Panduan lengkap untuk menginstall MiniOS di USB Flash Drive dan menginstall GenieACS di sistem MiniOS

GitHub
Documentation


📑 Daftar Isi


🖥️ Instalasi MiniOS di USB Flash Drive

    ┌─────────────────────────────────────┐
    │  🖥️  MiniOS Installation Guide  💿  │
    └─────────────────────────────────────┘

1️⃣ Download File ISO MiniOS

Step 1 Download Requirements

  • Download file ISO MiniOS dari website resmi MiniOS.

2️⃣ Membuat USB Drive yang Bootable

Step 2 Pilihan Metode Instalasi

🥇 Metode Utama (Windows/Linux/MacOS)

Rekomendasi: Metode ini mendukung fitur persistence

  1. Copy folder /minios/ ke root directory disk Anda (contoh: E:\minios\).
  2. Navigasi ke directory /minios/boot/ di USB device atau hard disk Anda.
  3. Cari file bootinst.bat (untuk Windows) atau bootinst.sh (untuk Linux dan MacOS).
  4. Jalankan file tersebut dengan double-click untuk melakukan perubahan yang diperlukan pada master boot record device Anda.

🔸 Menggunakan Rufus (Windows)

Windows

Rufus adalah utility yang membantu format dan membuat USB flash drive yang bootable.

  1. 📥 Buka Rufus.
  2. 🖱️ Pilih USB drive Anda.
  3. 📁 Pilih file ISO MiniOS.
  4. ▶️ Mulai proses.

🔸 Menggunakan UNetbootin (Windows/Linux/MacOS)

Cross Platform

UNetbootin dapat membuat bootable Live USB drive.

  1. 📥 Buka UNetbootin.
  2. 📁 Pilih file ISO MiniOS.
  3. 🖱️ Pilih USB drive Anda.
  4. ✅ Klik 'OK'.

🔸 Menggunakan Ventoy (Windows/Linux)

Ventoy

Ventoy adalah tool open-source yang memungkinkan Anda membuat bootable USB drive dengan hanya menyalin file ISO ke dalamnya.

  1. ⬇️ Install Ventoy ke USB drive Anda.
  2. 📋 Copy file ISO MiniOS langsung ke USB.

🔸 Menggunakan Balena Etcher (Windows/Linux/MacOS)

Balena Etcher

Balena Etcher adalah utility cross-platform yang menulis images ke drives.

  1. 📁 Pilih file ISO MiniOS.
  2. 🖱️ Pilih USB drive Anda.
  3. ⚡ Klik "Flash!".

🔸 Menggunakan dd (Linux)

Linux

  1. Identifikasi USB drive Anda dengan lsblk.
  2. Unmount disk dengan umount /dev/sdX.
  3. Jalankan:
sudo dd if=/path/to/minios.iso of=/dev/sdX bs=4M; sync

🔸 Menggunakan dd (MacOS)

macOS

  1. 🔍 Identifikasi USB drive Anda dengan diskutil list.
  2. 📤 Unmount disk dengan diskutil unmountDisk /dev/diskX.
  3. ⚡ Jalankan:
sudo dd if=/path/to/minios.iso of=/dev/rdiskX bs=1m

3️⃣ Booting dari USB Drive

Step 3 Boot Process

  1. 🔄 Restart komputer Anda.
  2. ⌨️ Pilih USB drive di boot menu komputer Anda untuk boot dari USB tersebut.

4️⃣ Catatan Penting

Important Requirements & Limitations

  • 🚫 Boot installer tidak mendukung multiboot; hanya MiniOS yang akan bootable dari drive tersebut.
  • 🔧 Disk Anda harus menggunakan partition scheme msdos (gunakan MBR, bukan GPT).
  • 💾 Drive harus diformat dengan salah satu file system yang didukung: FAT32, NTFS, ext2, ext3, ext4, btrfs.

💡 Pengingat: Metode instalasi utama adalah rekomendasi utama, tetapi Anda juga bisa menggunakan Rufus, UNetbootin, Ventoy, Balena Etcher, atau dd sebagai alternatif di Windows, Linux, dan MacOS. Namun, perlu diingat bahwa fitur persistence tidak akan berfungsi ketika menggunakan Ventoy, Balena Etcher, atau dd.


⚙️ Instalasi GenieACS di MiniOS

    ┌───────────────────────────────────────┐
    │  ⚙️  GenieACS Installation Guide  🖥️  │
    └───────────────────────────────────────┘

GenieACS
Node.js
MongoDB

📋 Prerequisites

🟢 Node.js

Node.js

GenieACS memerlukan Node.js 12.13 ke atas. Untuk instalasi di MiniOS:

# Update package manager
sudo apt update

# Install Node.js
sudo apt install nodejs npm

# Verifikasi instalasi
node --version
npm --version

🟢 MongoDB

MongoDB

GenieACS memerlukan MongoDB 3.6 ke atas:

# Install MongoDB
sudo apt install mongodb

# Start dan enable MongoDB service
sudo systemctl start mongodb
sudo systemctl enable mongodb

# Verifikasi status MongoDB
sudo systemctl status mongodb

📦 Install GenieACS

🚀 Instalasi dari NPM:

NPM

sudo npm install -g genieacs@1.2.13

🔧 Konfigurasi systemd

👤 Buat system user untuk menjalankan GenieACS daemons

System User

sudo useradd --system --no-create-home --user-group genieacs

📁 Buat directory untuk menyimpan extensions dan environment file

Directory

mkdir /opt/genieacs
mkdir /opt/genieacs/ext
chown genieacs:genieacs /opt/genieacs/ext

📝 Buat file konfigurasi

Config

Buat file /opt/genieacs/genieacs.env untuk menyimpan opsi konfigurasi:

sudo tee /opt/genieacs/genieacs.env > /dev/null <<EOF
GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.log
GENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.log
GENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.log
GENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.log
GENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yaml
NODE_OPTIONS=--enable-source-maps
GENIEACS_EXT_DIR=/opt/genieacs/ext
EOF

Generate JWT secret yang aman:

node -e "console.log(\"GENIEACS_UI_JWT_SECRET=\" + require('crypto').randomBytes(128).toString('hex'))" >> /opt/genieacs/genieacs.env

Set file ownership dan permissions:

sudo chown genieacs:genieacs /opt/genieacs/genieacs.env
sudo chmod 600 /opt/genieacs/genieacs.env

Buat logs directory

mkdir /var/log/genieacs
chown genieacs:genieacs /var/log/genieacs

Buat systemd unit files

Service genieacs-cwmp:

sudo systemctl edit --force --full genieacs-cwmp

Masukkan konfigurasi berikut:

[Unit]
Description=GenieACS CWMP
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-cwmp

[Install]
WantedBy=default.target

Service genieacs-nbi:

sudo systemctl edit --force --full genieacs-nbi

Masukkan konfigurasi berikut:

[Unit]
Description=GenieACS NBI
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-nbi

[Install]
WantedBy=default.target

Service genieacs-fs:

sudo systemctl edit --force --full genieacs-fs

Masukkan konfigurasi berikut:

[Unit]
Description=GenieACS FS
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-fs

[Install]
WantedBy=default.target

Service genieacs-ui:

sudo systemctl edit --force --full genieacs-ui

Masukkan konfigurasi berikut:

[Unit]
Description=GenieACS UI
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/bin/genieacs-ui

[Install]
WantedBy=default.target

Konfigurasi log rotation

Simpan konfigurasi berikut sebagai /etc/logrotate.d/genieacs:

sudo tee /etc/logrotate.d/genieacs > /dev/null <<EOF
/var/log/genieacs/*.log /var/log/genieacs/*.yaml {
    daily
    rotate 30
    compress
    delaycompress
    dateext
}
EOF

Enable dan start services

# Enable dan start genieacs-cwmp
sudo systemctl enable genieacs-cwmp
sudo systemctl start genieacs-cwmp
sudo systemctl status genieacs-cwmp

# Enable dan start genieacs-nbi
sudo systemctl enable genieacs-nbi
sudo systemctl start genieacs-nbi
sudo systemctl status genieacs-nbi

# Enable dan start genieacs-fs
sudo systemctl enable genieacs-fs
sudo systemctl start genieacs-fs
sudo systemctl status genieacs-fs

# Enable dan start genieacs-ui
sudo systemctl enable genieacs-ui
sudo systemctl start genieacs-ui
sudo systemctl status genieacs-ui

Verifikasi Instalasi

Setelah semua service berjalan, Anda dapat mengakses GenieACS UI melalui web browser di:

http://localhost:3000

Catatan Keamanan

⚠️ Penting untuk deployment production:

  • Pastikan untuk mengkonfigurasi TLS/HTTPS
  • Ubah UI_JWT_SECRET ke string yang unik dan aman
  • Rujuk ke dokumentasi HTTPS untuk mengaktifkan TLS untuk enkripsi traffic

🛠️ Troubleshooting

    ┌─────────────────────────────────────┐
    │  🛠️  Troubleshooting Guide  🔍  │
    └─────────────────────────────────────┘

🖥️ Masalah Umum MiniOS

🚨 Masalah 💡 Solusi
🚫 USB tidak bootable Pastikan menggunakan MBR (bukan GPT) dan format yang didukung
💾 Persistence tidak bekerja Gunakan metode instalasi utama, bukan Ventoy/Etcher/dd

⚙️ Masalah Umum GenieACS

🚨 Masalah 💡 Solusi
🔴 Service tidak start Periksa logs dengan journalctl -u <service-name>
🔒 Permission denied Pastikan ownership file/directory sudah benar untuk user genieacs
🗄️ MongoDB connection error Pastikan MongoDB service berjalan

📊 Melihat Logs

Logs

# Logs GenieACS services
journalctl -u genieacs-cwmp -f
journalctl -u genieacs-nbi -f
journalctl -u genieacs-fs -f
journalctl -u genieacs-ui -f

# Access logs
tail -f /var/log/genieacs/genieacs-*.log

📚 Referensi

📖 Resource 🔗 Link 📝 Description
MiniOS Installing MiniOS on a USB Flash Drive Tutorial resmi instalasi MiniOS
GenieACS GenieACS Installation Guide Panduan instalasi GenieACS
MiniOS MiniOS Official Website Website resmi MiniOS
GenieACS GenieACS Official Website Website resmi GenieACS

🤝 Kontribusi

Contributions Welcome

Jika Anda menemukan kesalahan atau ingin menambahkan informasi, silakan buat issue atau pull request.

📄 Lisensi

License

Tutorial ini tersedia secara bebas untuk digunakan dan dimodifikasi.


⭐ Jika tutorial ini membantu, berikan star pada repository ini! ⭐

by Saputra Budi