Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We have 10+ public windows computers in a dormitory and we want to be able to create login names for everyone living here. The idea is this: anyone could login with her/his username and access her/his files, while maintaining the integrity of the computers: so the users should not be able to install programs/modify the system.

Can I accomplish this using a Linux server? If yes, how?

share|improve this question

The obvious answer is to install Samba to make the Linux server be a "Primary Domain Controller", or PDC. The longer answer (which I have no doubt that someone is vainly trying to write even now) is really not suited to this format, and I would really prefer that someone wanting to do this read the actual manual - not too much to ask, I think.

share|improve this answer
Basically you want to make a Samba PDC: – churnd Sep 15 '09 at 11:36

An alternative approach, if everyone is using Windows 7 (yes, yes, I know) is to use the new homegroup feature of Win7.

But I prefer the PDC solution with Samba. You could also do the same with a Windows server - Windows 2008 Foundation should be affordable at academic prices (it's about $250 commercial, so I'd expect it to come under $50 academic) and even Small Business Server (which bundles in Exchange) may not be out of the question.

Of course, if you have other reasons to prefer a Linux server, or your experience is with Linux rather than Windows, then go with your preference; I'm just suggesting an alternative.

share|improve this answer

If you want to lock out local system changes on the clients, look at a product like Faronics Deep Freeze. You reboot, the computer goes back to the state it was in when last "frozen". I find it cathartic to delete the Windows subdirectory until it crashes then reboot...

You don't mention how you're handling login authentication, but I would agree that for file serving you can use Linux with Samba or use a more all-in-one approach of something like FreeNAS. Makes creating software RAID arrays and sharing files a snap.

share|improve this answer
An alternative to Deep Freeze, Windows Steady State is free – prestomation Sep 15 '09 at 12:09
Cathartic, indeed! – Kara Marfia Sep 15 '09 at 12:11
@prestomation: True, DF is more an all-or-nothing and simpler to use though at a low price. We use it in the schools here without issue. – Bart Silverstrim Sep 15 '09 at 12:13

You would use LDAP for logins, authentication, and privileges. Then samba would handle file storage once people are logged in.

share|improve this answer

The best option would be to use windows steady state in conjunction with a windows fileserver/domain controller. Another benefit to that approach is that users that want to use their personal machines but share files have that ability

share|improve this answer

IMO the best option in this situation is to use Windows Steady State to manage the PCs, and require the users to manage their own files on removable media. Have a single, automatic "guest" login that doesn't allow installing applications, and schedule the pc to reboot every night. Steady State will wioe any changes to the system.

Yes, you can configure a PDC, Active Directory domain, etc. However, trying to manage user accounts for what I infer to be limited-duration users incurs a lot of overhead that you probably don't need (or really want). If you do, however, decide to do this, I highly suggest configuring an Active Directory based domain. This will give you the most flexibility in managing the clients via Group Policy.

share|improve this answer

Have you considered using a terminal server (Linux or Windows) instead? The clients could then be thin clients, perhaps using something like ThinStation, with a configuration that will only allow connection to your TS server.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.