Skip to main content

Adhoc Linux OS updates

Updated yesterday

Swif MDM now lets you schedule ad‑hoc OS updates for Linux devices directly from an individual device page and from the Updates tab, similar to the existing macOS and Windows flows.

This article explains how Linux OS updates work in Swif, and how to schedule updates from:

  • The Linux Device Details page

  • The Updates tab (per‑update scheduling for a single device)

This feature is Linux‑only. macOS and Windows have their own update flows; Linux options will not appear for those platforms.


Prerequisites

  • The device must be:

    • Enrolled in Swif MDM

    • Identified as a Linux device

  • The device should be online for best results so that available updates can be refreshed.

  • Your admin role must have permission to:

    • View devices

    • Schedule OS updates

Available OS updates are provided by the backend in device.deviceRelatedInfo.availableOSUpdates, and each update includes:

  • humanReadableName (also used as the updateId)

  • Version/build (if available)

  • Download size

  • Release date

  • Status (e.g., available, installed, pending)


Where Linux OS update actions are available

Linux devices

On a Linux device, you’ll see an OS update action labeled similarly to:

  • Update OS

  • Schedule OS update

  • Or an OS update action within the Updates section

Clicking this action opens the Linux OS Update modal.


Scheduling an OS update from the Linux Device page

Use this flow when you want to schedule an OS update for a single Linux device from its details page.

1. Open the Linux device

  1. Go to Devices in the Swif WebApp.

  2. Locate and open the Linux device you want to update.

  3. Confirm that the platform is Linux in the device overview.

2. Open the Linux OS Update modal

From the Device Details page for the Linux device:

  1. Locate the OS Update / Schedule OS update action:

    • This may appear as a button, menu action, or within the Updates section.

  2. Click the action to open the Linux OS Update modal.

The modal will:

  • Fetch and list available OS updates for this specific device.

  • Use Linux‑specific wording and labels (no macOS/Windows‑specific copy).

3. Review the list of available Linux updates

In the modal, you’ll see a list of available updates for that device. Each row includes:

  • NamehumanReadableName (also used as updateId by the backend)

  • Version/Build – if available

  • Download size – shown in a human‑readable format (e.g., MB, GB)

  • Release date

  • Status – for example, available, already installed, or pending

If no updates are available, the UI will inform you that the device is already up to date or that no eligible Linux OS updates are found.

4. Select a single Linux OS update

You can schedule exactly one update per device via this modal:

  1. Use the radio button or single‑select control to choose one update.

  2. Ensure that:

    • Only one update is selected at a time.

    • You’ve reviewed the version and size before proceeding.

If required fields are missing (for example, if no update is selected), the Schedule / Confirm button will be disabled or validation errors will be shown.

5. Schedule the update

When you’re ready:

  1. Click the primary Schedule OS update (or equivalent) button.

  2. Swif WebApp will:

    • Call the Linux OS update schedule API, following the pattern:

      {
      "deviceId": ["<DEVICE-ID>"],
      "updateId": "<UPDATE-ID>"
      }
      • deviceId is the ID of the current Linux device.

      • updateId matches the humanReadableName of the selected update.

  3. Wait for the response from the MDM backend.

6. Success and error handling

On success

  • You’ll see a success toast or banner indicating that the OS update has been scheduled.

  • The Device page will:

    • Close the modal.

    • Refresh the device’s available OS updates / status.

  • In the device’s Updates section, you should now see a new OS update entry with:

    • Status: Pending or Scheduled

    • Target version

    • Created time

    • Requested by (admin who scheduled the update)

The behavior is aligned with the Apple and Windows adhoc update UX described in:

On error

If the backend returns an error (for example, insufficient disk space, invalid update ID, or other issues):

  • An error toast or in‑modal message is shown.

  • The backend’s error message is surfaced where possible (e.g., “Insufficient disk space for update”).

  • The UI remains responsive and does not schedule the update.

  • You can adjust the selection or try again after resolving the underlying issue.

No bulk/multi‑device scheduling is triggered from this per‑device flow.


Scheduling a specific Linux OS update from the Updates tab

The Updates tab (for a Linux device) also allows you to schedule a specific update directly from a row.

This is still per‑device and per‑update.

1. Go to the device’s Updates tab

  1. Open the Linux device in the WebApp.

  2. Navigate to the Updates tab for this device.

You’ll see a list of OS updates associated with that device. Each row typically mirrors the information available in the modal (name, version, size, release date, status).

2. Schedule an update from a specific row

For each Linux OS update row, you can:

  1. Locate the Schedule (or similar) action on that row.

  2. Click it to initiate scheduling of that update for this device.

Under the hood, the WebApp sends the same schedule request:

{
"deviceId": ["<DEVICE-ID>"],
"updateId": "<UPDATE-ID>"
}

Where updateId corresponds to that row’s humanReadableName.

3. Confirm result

As with the modal flow:

  • On success:

    • A success message appears.

    • The row’s status updates to Pending or Scheduled.

    • The device’s updates/status information is refreshed.

  • On error:

    • The backend error message is shown (if available).

    • No schedule is created.


Scope and limitations

  • Linux‑only

    • The adhoc OS update actions described here only appear for Linux devices.

    • macOS and Windows updates use their own flows, documented separately.

  • Single‑device only

    • There is no bulk/multi‑device or device‑group scheduling for Linux OS updates.

  • Single update per schedule

    • Each schedule request targets one device and one update.

  • Consistent UX

    • The UX, validation, and messaging are aligned with existing adhoc OS update flows for macOS and Windows (see ST‑6936 and ST‑5411), but with Linux‑specific copy and options.


Did this answer your question?