Mike Slinn

Ubuntu mutliseat

Published 2026-03-16.
Time to read: 2 minutes.

This page is part of the posts collection, categorized under Windows.
ubuntu octopus multiuser 2 keyboards 2 displays one system

In the Linux world, this configuration is known as Multiseat. Since Ubuntu transitioned to systemd, managing multiple independent “seats” (a combination of a display, keyboard, and mouse) has become significantly more streamlined via the loginctl command.

The Multiseat Logic

By default, Ubuntu assigns all hardware to seat0. To create a second workstation, you must “attach” specific hardware addresses to a new seat (e.g., seat1). When systemd-logind detects a graphics card and input devices assigned to seat1, it automatically spawns a second display manager (GDM/LightDM) on that monitor.

  1. Identify Your Hardware First, plug in all your peripherals. You need to find the specific hardware paths for the second keyboard, mouse, and the second video output.

List all currently recognized seats:

loginctl list-seats

List all devices and their current seat assignments:

loginctl list-devices
  1. Create and Assign Seat1 The most reliable way to do this is to assign a specific USB hub (with the keyboard and mouse plugged into it) and a specific GPU/framebuffer to the new seat.

Tip: If you are using a single dual-head graphics card, multiseat is significantly more difficult because X11/Wayland usually wants to own the entire card. Multiseat works best with two separate GPUs (even a cheap USB-to-HDMI adapter or an integrated + discrete GPU combo).

Find the device path (e.g., /sys/devices/pci…) and run:

sudo loginctl attach seat1 /sys/devices/pci0000:00/.../input/input20

Repeat this for the second mouse and the second graphics provider.

  1. Verify the Configuration Once attached, you can check the status of your new seat:
loginctl seat-status seat1

If the hardware supports it, Ubuntu should immediately trigger a login screen on the second monitor. These settings are persistent across reboots.

Hardware Considerations Input Devices: It is highly recommended to use a USB Hub for the second seat. You can then attach the entire hub to seat1, and anything plugged into it will automatically belong to that user.

Graphics

Dual GPUs: One seat per GPU is the “gold standard” for stability.

Single GPU: If you only have one card, you may need to use xephyr or a specialized X11 configuration, though this is increasingly deprecated in favor of the dual-GPU loginctl method.

Audio: Audio devices can also be assigned to specific seats so User A doesn’t hear User B’s music.

Useful Commands

Command Purpose
loginctl flush-devices Resets everything back to seat0 (The “Emergency Exit” button).
loginctl terminate-seat seat1 Force logs out the second user.
lsusb -t View the USB tree to find hub paths.

Would you like me to help you draft a small script to identify the specific /sys/ paths for your hardware?

* indicates a required field.

Please select the following to receive Mike Slinn’s newsletter:

You can unsubscribe at any time by clicking the link in the footer of emails.

Mike Slinn uses Mailchimp as his marketing platform. By clicking below to subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. Learn more about Mailchimp’s privacy practices.