top of page

Ubuntu Minimal Setup on Intel Atom (16GB Disk)

  • Writer: Rajamohan Rajendran
    Rajamohan Rajendran
  • 17 hours ago
  • 3 min read

Installing Ubuntu Minimal on Intel Atom with 16GB Storage – Complete Practical Guide


Introduction


This guide explains how to install and optimize Ubuntu Minimal on an Intel Atom system with only 16GB disk space. This setup is suitable for edge devices, SBC simulations, IoT gateways, and lightweight DevOps labs.


Hardware Assumption:

Processor: Intel Atom

RAM: 4GB–8GB

Disk: 16GB SATA / eMMC

Use case: Lightweight server / container host / edge gateway


Goal:

• Install Ubuntu minimal

• Keep disk usage under control

• Disable unnecessary services

• Prepare system for Docker or microservices





STEP 1 – Download Ubuntu Minimal ISO



Download Ubuntu Server LTS (Minimal install during setup)


Recommended:

Ubuntu Server 22.04 LTS or 24.04 LTS


Create bootable USB using:


On Windows:

Use Rufus


On Linux:

sudo dd if=ubuntu.iso of=/dev/sdX bs=4M status=progress





STEP 2 – Installation Settings (VERY IMPORTANT for 16GB)



During installation:


  1. Choose “Ubuntu Server (minimal installation)”

  2. DO NOT select:


    • Snap packages

    • OpenSSH (if not required immediately)

    • Any extra features


  3. Manual partitioning (Recommended)



Partition Layout for 16GB Disk:


/ (root)      → 14GB   ext4

swap          → 1GB    swap

/boot/efi     → 512MB  (if UEFI)


This keeps system small and manageable.





STEP 3 – First Boot Cleanup



After login:


Check disk usage:


df -h


Check installed packages:


dpkg –list | wc -l


Remove unwanted packages:


sudo apt purge snapd -y

sudo apt autoremove -y

sudo apt clean


Disable snap completely:


sudo systemctl disable snapd

sudo systemctl stop snapd





STEP 4 – Reduce Journald Log Size



By default logs can grow large.


Create limit file:


sudo mkdir -p /etc/systemd/journald.conf.d


sudo nano /etc/systemd/journald.conf.d/size.conf


Add:


[Journal]

SystemMaxUse=100M

RuntimeMaxUse=50M


Restart journald:


sudo systemctl restart systemd-journald


Verify:


journalctl –disk-usage





STEP 5 – Install Only Required Utilities



Minimal required packages:


sudo apt update


sudo apt install -y

curl

ca-certificates

gnupg

lsb-release

ufw

nano

htop


Avoid installing:

• build-essential

• large desktop packages

• full monitoring stacks





STEP 6 – Enable Basic Security



Enable firewall:


sudo ufw default deny incoming

sudo ufw default allow outgoing

sudo ufw allow 22/tcp   (only if SSH required)

sudo ufw enable


Check:


sudo ufw status





STEP 7 – Optional: Install Docker (Lightweight)



If using for containers:


Install Docker:


curl -fsSL https://get.docker.com | sudo sh


Check:


docker –version


Disable docker logging growth:


Create:


sudo nano /etc/docker/daemon.json


Add:


{

“log-driver”: “json-file”,

“log-opts”: {

“max-size”: “10m”,

“max-file”: “3”

}

}


Restart:


sudo systemctl restart docker





STEP 8 – Disk Space Monitoring



Check large folders:


sudo du -h –max-depth=1 / | sort -hr


Check apt cache:


sudo du -sh /var/cache/apt


Clean cache:


sudo apt clean





Expected Disk Usage After Setup



Fresh minimal install:        2.0GB – 2.5GB

After utilities installed:    3GB – 3.5GB

With Docker installed:        4GB – 5GB


Remaining usable space:       ~10GB


This is sufficient for:

• Lightweight microservices

• MQTT broker

• Redis

• Small Postgres

• Edge gateway stack





Performance Tips for Intel Atom



  1. Disable unnecessary services:


    sudo systemctl list-unit-files –type=service


    sudo systemctl disable

  2. Reduce swappiness:


    sudo nano /etc/sysctl.conf


    Add:


    vm.swappiness=10


    Apply:


    sudo sysctl -p

  3. Avoid heavy databases unless external storage available.






Final Notes



This setup is ideal for:

• Edge computing

• SBC lab simulation

• IoT gateway

• Lightweight Docker host

• DevOps learning lab


For production:

Use external storage or at least 32GB disk.

Recent Posts

See All

Comments


bottom of page