Skip to content
LGM-OS
installation

Download and install

A single pass: it installs the whole of Debian 12 and LGM-OS, asks three questions and finishes by showing on the machine's own screen the address to go to.

What machine you need

An ordinary computer will do. No server hardware required.

PartMinimumRecommended, and why
Processor x86-64 With hardware virtualisation (VT-x / AMD-V) if you are going to use virtual machines: without it they run, but emulated and slow.
Memory 4 GB 8 GB if you are going to use ZFS or virtual machines. Updating rebuilds the interface, and that is the step that asks for memory.
System disk 32 GB 50 GB and you have room to spare. That is where Debian, the Python environment, the Docker images and the app catalogue live. With less than 16 GB updates run out of room.
Data disks None to install As many as you like, besides the system one. They are set up afterwards from the web, in a ZFS or Btrfs volume; the installer does not touch them.
Boot UEFI or BIOS The image boots either way.
Network Cable The installer downloads the Debian packages while it works.

Getting the ISO

Download it in one click, or build it yourself from the repository.

Download the installer

With its SHA-256 published alongside so you can check it arrived whole. If the page says it is not published yet, that version's image is still in the oven.

Or build it from the repository

bash deploy/build-iso.sh

It leaves nas-os-installer.iso in publicacion/. It needs xorriso, wget and sha256sum.

The image does not carry the system inside: on first boot it downloads the latest published version and installs it. That is why it does not go stale —an ISO burnt today installs what exists in two years' time— and why the machine needs a network the first time.

What it does underneath, which is worth knowing: it downloads the most recent Debian 12 netinst, checks its SHA256 against the one Debian publishes —if it does not match, it stops— and repackages it with the unattended install and the first-boot script, which downloads the published version and checks its checksum and its signature before installing it.

If somebody gave you one already built

Check it arrived whole before burning it, and compare the result with the one whoever gave it to you had:

sha256sum lgm-os-installer.iso

Writing it to a USB stick

The image is hybrid: it is copied as it is, with no odd programs.

Linux or macOS

lsblk                                    # find the USB stick: sdb, sdc…
sudo dd if=lgm-os-installer.iso of=/dev/sdX bs=4M status=progress conv=fsync
Check the of= twice. dd writes wherever you tell it without asking. If you get the letter wrong, you take out whatever disk was there. It is /dev/sdX, the whole disk, not a partition (/dev/sdX1).

Windows

With Rufus or balenaEtcher: pick the image, pick the USB stick and write. If Rufus asks, choose DD image mode.

The installation

Three questions and the rest on its own.

The disk you choose for the system is wiped entirely. If it has data on it, the installer tells you what is inside before wiping it; after that there are no more confirmations. The other disks are not touched.
  1. Boot from the USB stick

    Go into the machine's boot menu (usually F12, F11 or Esc) and choose the USB stick.

  2. Language

    Spanish, English or German. The keyboard and the time zone follow from it.

  3. Machine name

    The one it will be seen with on the network and that takes you to the panel: https://<name>.local:5001.

  4. How much disk for the system

    The whole disk, or 64 GB and the rest as a data volume if you only have one big disk. If there are several disks, it then lists them with their model and size so you can pick.

  5. Wait

    It downloads and installs Debian 12 and restarts on its own. On that first boot it downloads LGM-OS, which can take an hour or more; the machine's screen shows how it is going and, when it finishes, the address to go to. Only if your network does not hand out addresses does it also ask for the IP.

When it finishes

The first things to do, in order.

  1. Open https://<name>.local:5001

    Or the address shown on the NAS's screen. The certificate belongs to the machine itself, so the browser warns you: that is normal on a home network. Accept it, or install the NAS's one on your devices from the panel.

  2. Create the administrator

    There is no factory username or password. The first-run wizard asks you to create it with the sign-up code shown on the NAS's screen (over SSH, sudo lgm alta): that way nobody else on your network gets there first.

  3. Turn two-step verification on

    Control Panel → Security. This is a panel that can format disks: the minute it takes is worth it.

  4. Set up the alerts

    Control Panel → Alerts (email or webhook, with a test button). The firewall comes switched on: whatever you turn on from the panel opens its own port, and each application opens only to the home network (Control Panel → Security → Firewall).

  5. Create the data volume

    The first time you sign in, the wizard proposes one with the empty disks and tells you how much space it will leave. To choose yourself, Storage → Create pool: Btrfs comes selected and takes disks of different sizes; ZFS, with parity if you have three disks or more. It never offers the system disk.

Other ways to install it

On top of a Debian 12 you already have

Without going through the ISO, on an already installed system:

sudo bash deploy/install.sh

It leaves the machine exactly as the ISO would: same services, same panel, same address.

You do not need the ISO to update. Once installed, LGM-OS updates from the panel itself or with sudo lgm update, and the update rolls itself back if something goes wrong. See how it updates.