46

Can a Mac be used by different users at the same time?

I mean to say that we have a single Mac but 3 users. Can they access the same machine remotely at the same time for developing applications on iPhone or Mac?

Does Mac OS X server allow us to do this?

If so, how do I configure it for that?

6

6 Answers 6

26

This is supported by the built-in Screen Sharing as of OS X Lion, if you have set up multiple accounts:

Per-user screen sharing

You can remotely log in to a Mac with any user account on that computer and control it, without interrupting someone else who might be using the computer under a different login.

This works fine from Mac to Mac. To control from Windows, apparently one needs to "kickstart" ARD once. This can be done using the command line, by following Apple's Apple Remote Desktop: Configuring remotely via command line (kickstart). Or: in System Preferences disable Screen Sharing, Remote Login, Remote Management and Remote Apple Events, then enable all again, and finally disable all and just enable Screen Sharing.

But even when doing the above, my tests with an old XP machine and the latest version of UltraVNC were not very successful:

  • When the Mac was at the login window, using UltraVNC would really take over control of that Mac's screen, just like in the old days. Hence: both the Mac and the XP box would show exactly the same, and share a single session.

  • When the Mac user was logged in, starting VNC would show the background of the login window, but most often empty. Moving the mouse in Windows would make the Mac cursor change into a beach ball. Whenever the login window was not empty, it would still not respond to any clicks.

  • Using Remote Management rather than Screen Sharing made no difference.

  • As I do not need this myself, I did not test a lot though. A different OS, or another viewer, might yield different results. But the following quote from the most recent RealVNC's release notes are not very hopeful:

    Connections to Screen Sharing built-in to Mac OS X 10.7 (Lion) are not supported.
    Workaround: None.
    Status: Under consideration.

As an aside: beware not to test using a remote session from your Mac to some Windows box, back to the Mac, or using something like Parallels running Windows on the very same Mac. That yields an endless loop with a Droste Effect; reboot required...


For older versions of OS X, it is possible using Vine Server (OSXvnc). I never used it, but the creators claim:

[..] in Tiger (Mac OS 10.4) all those desktops can be accessed simultaneously using Vine Server (OSXvnc). This allows multiple users to be logged in, each using his or her own desktop on the same Mac.

[..]

All they need is a computer or PDA running a VNC viewer to access Vine Server (OSXvnc). Now you have a use for all those old PC's!

However:

Each user MUST be logged in using Fast User Switching. If you reboot the computer you will need to go and log-in each user with Fast User Switching to enable access via VNC.

And using the very same software simultaneously might yield problems (like when temporary files are not stored in a user area), or might break the license agreements.

I don't know if this still works in Leopard and Snow Leopard. (But a recent post on Server Fault might indicate it's tested on a recent version of OS X, hence Snow Leopard?)

3
  • apparently it "is possible, but painful" to connect from a windows box these days: discussions.apple.com/thread/3190260?start=90&tstart=0
    – rogerdpack
    May 3, 2012 at 3:48
  • Is it possible to connect from an older version of OS X to the latest version and user multi-user VNC? It doesn't seem to work...
    – Michael
    Apr 28, 2013 at 18:11
  • 1
    I take that back - it works, but only if somebody else is logged in. If at the login screen, a remote session brings up the screen, allowing anybody at the console to see what I am typing.
    – Michael
    Apr 28, 2013 at 18:46
7

As of Lion, yes. Here's the 9to5mac article on it. From Apple:

Per-user screen sharing

You can remotely log in to a Mac with any user account on that computer and control it, without interrupting someone else who might be using the computer under a different login.

1
  • 1
    It's about time.
    – Daniel Beck
    Mar 24, 2011 at 23:49
3

I was able to run 2 simultaneous and separate sessions from 2 windows laptops to a single mac mini, using Vines server. We had to have two users logged onto the Mac, with both sessions running separate vines server exe's. By using tightvnc configured to access the IP , port and pw combo for each vines servers, it worked.

Vines server settings were configured per the websites instructions.

Its not very robust, as the vines server instances assign a port number in startup sequence (first session 5900, second 5901, etc.), but it worked.

2
  • plus I believe vine doesn't require OS X lion...
    – rogerdpack
    Apr 15, 2013 at 5:46
  • Is it still works? Dec 16, 2019 at 16:26
3

Multiple users via VNC session is supported, but as of High Sierra, Apple has imposed an arbitrary limit of five simultaneous login sessions. We've run 16+ simultaneous logins on previous versions of macOS with no issues.

These are full unique desktop login sessions, being controlled simultaneously by different VNC clients, "backgrounded" so they don't appear on the console screen.

As of High Sierra, though, macOS only allows five simultaneous login sessions, backgrounded or otherwise.

This is easy enough to try. Create multiple user accounts on a Mac. Login as one of the users on the console. From another Mac, use the "Screen Sharing" app to connect to the multiple-account Mac as one of the users that isn't logged into the console. You'll see a dialog asking if you want to share the current user's screen or login as yourself. Choose yourself, and you'll be on a backgrounded login session, independent of the console.

1
  • At the risk of asking a stupid, obvious question: can you confirm that the five users have separate sessions, and they aren’t fighting over the same desktop and the same mouse? Also, is that five remote users, or five total users (the local one and four remote)? Please do not respond in comments; edit your answer to make it clearer and more complete. Oct 21, 2018 at 19:18
2

In the past, I set up a single mac pro as follows (with the intention that other devs don't even need machines):

  • Multiple monitors
  • Multiple keyboards
  • Multiple mice

then I ran Parallels, which now allows you to virtualize OSX. I created a VM for each user.

I assigned specific keyboard and mice to each VM. The monitors all went with the main OS...so, it had the following limitations:

I had to log in, start up the VM's, move them to the correct monitor, and make that VM full-screen on that monitor.

If I accidentally (as the main user of the real machine) moved my mouse "off screen" then my mouse would appear over someone else's.

USB devices were easy enough to assign to specific VMs, but occasionally caused confusion at initial startup (e.g. same named keyboard...which one is it?).

We were doing both Android and iOS development, and this was workable. However, given the price of a mac mini vs a mac pro (and the need to buy OSX and parallels for each user), one is hard-pressed to not just buy a clump of minis. I guess if you wanted to "share" the horsepower of a beefy machine, it works out.

1

I was also considering the solution using one very powerful machine for 2-4 users. But professionally I came away from that solution because of the following reasons:

  1. If one user experiences problems and reboots, everyone will be affected - and wait for the reboot. Also those reboots will probably be more often required, when 4 users are working at the same time - compared with only 1 user.

  2. If the machine breaks down I can send the programmers back home?

Therefore: Everyone gets his own machine and outsourcing source code management and build server seems to be the professional way.

You must log in to answer this question.