Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Ok, this may be a bit of a complicated problem, but I'll try to simplify it as much as possible. We are on a University Campus network, and I am working for a professor who wants to setup at least 3 new computers to 4 which are already existing. So I'd like to know what you all think the best way to setup these computers to work together is. Below are the requirements:

  • One computer will share the data (it has 1TB HDD)
  • The other computers will regularly be accessing and editing the data directly, so a mounted file system (NFS, SSHFS, etc) may be needed (SVN or CVS is not an option as it needs to be easy for the users and professor).
  • All computers should be capable of being used to do calculations (full use of processor/ram).

The issues I am wondering specifically about is making the shared files private enough so that only the authorized people can access it, while not having to manually make sure that all UIDs, GIDs, etc are the same across all computers (which is the current setup using NFS). Ideally any user should be able to use any computer and have the same environment, but this is not a requirement. Currently, the computers are running Fedora (not sure which version) and Ubuntu, one 8.04 and the other 9.04. If you have a recommendation of a specif OS which makes this task easy, then I would like to hear it, otherwise I am thinking of converting all of them into Ubuntu 9.04 as it is what I am the most familiar with.

Any ideas?

share|improve this question
    
You accidentally a word in the title. –  8jean May 28 '09 at 7:28

3 Answers 3

up vote 2 down vote accepted

NIS is very simple to set up and integrates identities across unix or linux machines. Conceptually, it works by 'exporting' various files such as /etc/passwd or /etc/shadow (and various others). You set up the other computers to do their authentication through NIS. This means that identity and permissions are shared across any computer using NIS.

NIS is viewed as having security issues, so you wouldn't want it running on (for example) a public web server. However for a small network within a university it is probably OK. Note that many, many universities have had or still have large NIS/NFS implementations dating back to the days of Sun workstations.

share|improve this answer
1  
NIS makes sense in legacy environments. If you're in a university environment using only modern systems, it makes sense to use LDAP. If you find important features of NIS that LDAP does not support, you should consider adding those features a more useful educational goal than learning how to maintain NIS. –  carlito Jun 5 '09 at 1:37
    
Setting up and maintaining LDAP+SASL is much, much more complex than NIS. You can figure out how to set up a basic NIS from the HOWTO in a few hours. If the posster is not familiar with OpenLDAP he could spend a long time figuring how to get it working. –  ConcernedOfTunbridgeWells Jun 5 '09 at 7:15

Look at Freenas it should do what you need it to. Just run freenas on the the computer that needs to share the data

share|improve this answer
    
yes that would work with the description I gave, however, I am at fault of not explaining everything well enough. I need all computers to be capable of running the software such as Matlab and Fortran programs with full use of the processor and ram. Also, how would FreeNAS work with the users and security that I need? –  Mike May 13 '09 at 23:20

Another similar solution would be using OpenFiler instead of Freenas. It might be a little bit much depending on exactly what you are trying to accomplish though. It would allow you to set up a datastore and control access to it however you would like. You could present it as an NFS or CIFS/Samba share. It would even allow you flexibility to later expand your storage, or even present disk to the remote systems over iSCSI.

edit

Based on your edits and comments, I would suggest simply creating a specific mount point for your shared storage, and sharing it out using Samba. The other machines can mount the share and you would not need a corresponding set of UID's and GID's.

Although, if you wanted to restrict access to specific files/directories in any way, those users would need to exist on both/all systems.

As for having the same environment for each user no matter where they logged in, you could replicate their user profiles across all of the PC's either manually or through some sort of mundane scheduled task.

I would suggest something like LDAP, but that might be a bit overcomplicated given what you want to accomplish.

Try mounting your 1TB hard drive on the machine it belongs to, and playing with Samba.

share|improve this answer
    
+1 because OpenFiler is something I can use for another project I have. However, please see my comment for trent as to why this does not work as a solution for this problem. But OpenFiler looks awesome, so I thank you greatly for that suggestion. –  Mike May 13 '09 at 23:23
    
I must not be understanding you, but, if you installed Freenas or OpenFiler on the machine which would be serving the data (the one with the 1TB hard drive in it), and mapping to a share presented by that server, how would that not fulfill your needs? You could run Openfiler on the computer to share the data, and the OS of your choice on the other machines. Do you need the machine with the shared drive also usable by a user? –  WerkkreW May 13 '09 at 23:42
    
Exactly. I edited my question and commented on trent's answer to reflect that second before or after you submitted your answer. The third bullet is what I added. –  Mike May 14 '09 at 3:31

Your Answer

 
discard

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.