I had mentioned few weird looking acronyms in my last post and had said those were what I worked on. To give you guys some history; SFU (Services for UNIX) is a hugely successful product and can be downloaded free of cost from Microsoft.com. SFU was not part of OS but can be installed on Windows XP, Windows 2000 and Windows Server 2003.
During the development of Windows Server 2003 R2(referred as R2 from here on), we took most of the components and technologies that made up SFU, enhanced those technologies in more than one ways and integrated them in to the OS. In addition to enhancing the capabilities of the components we also gave them new names. Don’t ask me why. All I can say is there were enough reasons to do soJ.
Lots of folks have asked me – How can I get functionality X of SFU on R2? Below is what various technologies of SFU are reincarnated as
Subsystem for UNIX based Applications (SUA) - (yeah, I know it’s a bit long and wordy). Not many in my team are good with tongue twisters. We call it ‘SUA’ or simply, ‘subsystem’. SUA is the successor to the Interix subsystem of SFU world. As the name indicates, SUA is capable of running UNIX “like” applications. It can’t run UNIX applications – you can just drop a UNIX binary and expect it to run. But what you can do is take the source code and compile it for SUA and run it on windows machine with SUA installed. I’ll talk about architecture of SUA and in what way it is related to its cousin, windows subsystem, in a later post.
Utilities and SDK for SUA – This package, which can be downloaded for free, contains around 350 UNIX like utilities, libraries, compilers etc. Go here to download the package and read more about it.
Identity management for UNIX (IDMU) – This component enables you to ingrate management of UNIX identities with AD. It has a feature called password synchronization that one can setup to automatically sync passwords of his UNIX and windows Identity. Using Sever for NIS (SNIS) you can obviate the need for a separate UNIX identity server – you can have a windows Active Directory server manage the UNIX Identities. Read this paper to learn more.
Server for NFS and Client for NFS: I guess the names of these components are self explanatory, unlike the above ones :).
Those of you that are familiar with SFU might think the above said could be achieved with SFU. So why would anyone go for Windows Server 2003 R2 instead of SFU? Well, there is more than one reason why one should use R2.
- Database (OCI/ODBC) library connectivity SUA supports connectivity to Oracle and SQL Server from database applications by using the Oracle Call Interface (OCI) and the Open Database Connectivity (ODBC) standard.
- Microsoft Visual Studio® Debugger Extension for debugging POSIX applications SUA includes support for debugging your POSIX processes by using the Visual Studio integrated development environment (IDE).
- Utilities based on SVR-5 and BSD UNIX environments The SUA download package supports two different UNIX environments: SVR-5 and BSD.
- Support for 64-bit applications: R2 SUA, IDMU are available for X64 platforms as well. ( SFU is available only for X86)
- Integration with Windows updates: SUA subsystem components, IDMU and NFS in R2 will be serviced by windows updates. This makes keeping you installations secure easier.
- Mixed-mode: SUA enables you to build an application that leverage both SUA Subsystem functionality and windows subsystem functionality. Mixed mode deserves more attention and so, more in a later blog.
- The AD Schema in R2 is RFC 2307 compliant.
- R2 IDMU has psadmin, a command line utility, to administer password synchronization settings.
- R2 Server for NFS can do a direct “Active Directory” lookup for UID/GID – no need for a User Name Mapping server.
In the past, there have been articles claiming that Microsoft is stopping support for SFU. My opinion is that those articles are way off reflecting the reality. As I explained, most of the SFU technologies have a new home. SFU 3.5 is supported for a long time to come.