Hey everyone. I was thinking of setting up two monitors, with a seperate keyboard for each running off the same computer. I want to be able to have seperate programs running on each and control them each seperatly from their respective keyboards. first of all I was wondering if this was possible. And second of all if anyone could give me some pointers on where to start.

Dani AI

Generated

Short answer: a single Windows or Linux desktop can drive two monitors in extended mode, but having two independent keyboards that control two independent, simultaneous desktops (so each user runs different programs on their own monitor) requires a multiseat or virtualization approach rather than a simple “second keyboard” trick. and were right about the single-desktop limitation; was also right that Linux/BSD can do true multiseat setups. (wiki.ubuntu.com)

Practical options (what actually works)

  • Linux multiseat: modern systemd/logind + udev lets you tag devices into seats (video device + keyboard/mouse per seat) and start an independent display server for each seat. Typical workflow: ensure each monitor/GPU and input set is attached, use loginctl / udev tags or simple loginctl attach calls to create seats, then let your display manager start a session per seat. Example commands to inspect/attach a seat:

    loginctl list-seats
    loginctl seat-status seat0
    # attach a graphics device to seat1 (use the real /sys path)
    loginctl attach seat1 /sys/bus/pci/devices/0000:03:00.0

    See freedesktop/systemd and distro multiseat docs for details and udev tagging. (freedesktop.org)

  • Windows/third-party: Microsoft provides a MultiPoint Services role (Windows Server) for multiple stations on one host; there are also commercial multiseat products that create virtual stations on Windows. Those are the supported routes on Windows — plain desktop Windows does not natively allow multiple simultaneous interactive local user seats. (learn.microsoft.com)

  • Virtualization: run separate VMs and pass each keyboard/mouse to a VM (USB passthrough). Mapping a physical monitor to a VM with good graphics (gaming / GPU-accelerated apps) usually needs PCI/GPU passthrough and is more complex. For single-application or light desktops this can be a practical alternative; for full-GPU performance expect significant setup (VFIO/PCI passthrough). (wiki.archlinux.org)

Quick cautions and tips

  • Use separate USB hubs/ports so devices get stable IDs before making udev rules.
  • Proprietary GPU drivers sometimes need manual udev tagging; prefer drivers that allow explicit seat assignment when you can. (wiki.ubuntu.com)

References above contain step details and gotchas for each route. ’s thin-client idea and ’s virtualization suggestion are both valid depending on budget and how isolated/performant each seat must be.

Recommended Answers

All 11 Replies

i know the dual monitors is possible. But you can only use it to do a super wide monitor, or use it as copy (IE it shows the same on both monitors), i dont think you can use seperate keyboards for each monitor.

Oh ok, thanks for the info

Hi,

I don't think so either. I have done the dual monitor thing, and really enjoy it, but having separate keyboards and such won't work. The serial / USB busses would have no idea which monitor belonged to what process.

Nope.

Christian

This isn't entirely correct. If you were interested in using Linux/BSD to do this, you most certainly could do this. For Windows, there's not a way that I'm aware of.

If you'd like to do this in Linux, check out this link:
http://cambuca.ldhs.cetuc.puc-rio.br/multiuser/

It also has references to other pages which discuss similar concepts. Basically, you could do a couple of things with it: You could run one instance of X, and have multiple ServerLayout options with it, or you could run multiple instances of X, one for each monitor.

If any of that went WHOOSH! over your head, feel free to check out the link that I provided. If you search on for "dual keyboard" or "multihead", or multihead+multiuser, you may come up with more results.

THANKS ALC !! you've been a great help... yeah it kinda went woosh but im gonna be checking out the link. I'll report back to tell everyone how it went

THANKS ALC !! you've been a great help... yeah it kinda went woosh but im gonna be checking out the link. I'll report back to tell everyone how it went

Great! Please let us know!

I've got a USB keyboard, and my computer is right next to my wife's desk. If I could get this up and running, both my wife and I could use the same box!

It is very possible on windows, My school has 5 monitors connected to a single cpu and they each act independant of eachother. ill pass by today to find out what the school uses

You can do the dual monitors thing. I have done that. But i dont think you can have 2 keyboards managing different programs. Its not got much point to it.

i think this might suit your needs. our school uses a single tower and runs 5 monitors from it each monitor and keyboard is independant of the other. what you are looking for is a thin client.
you will find a whole load of different options if you google thin client

this person only has 1 computer... sounds like it's for home use. vspace looks like an enterprise solution. ALC6379 was already on the right track with this one.

you know, this just occurred to me (and it's totally tangential probably) but i bet you could find a virtualization software that would only recognize 1 keyboard/mouse that was plugged into the computer, and you could get it to render fullscreen on only one screen. i was looking at my dock icons, and i realized taht i could probably get VMWare fusion to do what you're talking about. i'm assuming you're on windows, so you might try looking for some virtualization software for that.

if virtualization turns out to be viable for you, ask yourself -> why do you want to do this? is it just for email and web browsing, or are there windows-specific tasks that you need to accomplish? if it's the first, ALC's solution is probably the best. if it's the second, virtualization might be your best bet.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.