# Ubuntu Server 25.10

- [Ubuntu Server 25.10](#ubuntu-server-2510)
  - [Install](#install)
  - [Automatic Updates](#automatic-updates)
  - [Disable Swap](#disable-swap)
  - [Base Software](#base-software)
  - [Podman](#podman)
  - [Troubleshooting](#troubleshooting)
    - [nmcli device unmanaged](#nmcli-device-unmanaged)

Note these instructions differentiate between an `operator` and a `server`. The operator can be
any machine that configure the server. A pipeline, laptop, dedicated server, etc. are all options.
The server can be its own operator, though that's not recommended since servers should be ephemeral
and the operator will store information about each server.

## Install

1. Walk through the normal installation up to disks
2. Select custom
3. Select /dev/vda and select use as boot
4. Select "free space" and create a new gpt ext4 "/boot" partition
5. Select "free space" and create a new gpt btrfs "/" partition
6. Continue

## Automatic Updates

On the server:

```bash
apt install -y unattended-upgrades

systemctl enable --now unattended-upgrades.service
```

## Disable Swap

```bash
swapoff -a
```

## Base Software

On the server:

```bash
# Install btop for system monitoring
apt install -y btop net-tools vim tmux cockpit python3-venv python3-pip cifs-utils

# Cockpit
systemctl enable --now cockpit
```

## Podman

```bash
apt install -y podman
```

## Troubleshooting

### nmcli device unmanaged

Ubuntu installs a config file that sets most devices unmanaged:

/usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf:

[keyfile]
unmanaged-devices=*,except:type:wifi,except:type:gsm,except:type:cdma

To disable this, You can create a blank file with the same name in /etc:

sudo touch /etc/NetworkManager/conf.d/10-globally-managed-devices.conf
sudo systemctl restart NetworkManager

Then `nmcli device set <device-name> managed yes`

Then turn on "Connect Automatically" in Cockpit.
