Microsoft Windows Services for UNIX

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Windows Services for UNIX

Microsoft Windows Services for UNIX (SFU) or Subsystem for UNIX-based Applications (SUA) is a software package produced by Microsoft which provides a Unix subsystem and other parts of a full Unix environment on Windows NT and its successors. The subsystem included is called Interix.

Like the Microsoft POSIX subsystem in Windows NT, Interix is not an emulation of a Unix kernel, but rather an implementation of a user-mode subsystem running directly on top of the Windows NT kernel.

Though both Cygwin (a free alternative to Interix) and Windows Services for Unix provide header files and libraries that make it easier to recompile or port Unix applications for use on Windows, they do not make Unix binaries compatible with Windows binaries. It is best thought of as a distinct Unix-like platform.

Contents

[edit] Overview

The current version of SFU contains:

  • Over 350 Unix utilities such as vi, ksh, csh, ls, cat, awk, grep, kill, etc.
  • GCC 3.3 compiler, includes and libraries (through an MS libc)
  • A cc-like wrapper for Microsoft Visual Studio command-line C/C++ compiler
  • GDB debugger
  • NFS server and client
  • A pcnfsd daemon
  • X11 tools and libraries
  • Tools for making NFS mount points appear as Windows shares, and vice-versa (gateway services)
  • An NIS server capability linked with Active Directory (AD)
  • Some Windows/Unix authentication information synchronization tools

SFU does not contain the following (but binaries are available for a separate installation[1]):

Although X Window System client libraries and applications are provided, SFU does not contain a native X server. Any of the numerous third-party Windows X servers can be used. Fully featured free alternatives include Cygwin/X, Xming, WeirdMind and WeirdX.

[edit] Releases

[edit] SFU 1.0

There was at least one beta release of the initial version of SFU before its final release in February 1999. This release was only in English and was supported on Windows NT 4.0 SP3+ for x86 and Alpha platforms. This is the only known release to support Alpha. It included a demonstration version of the MKS Toolkit along with the following components:

  • Telnet Server
  • Telnet Client
  • UNIX Utilities (from MKS)
  • Client for NFS
  • Server for NFS
  • Server for NFS Authentication
  • Windows NT to UNIX Password Synchronization
  • Help Files and Documentation

[edit] SFU 2.0

This second installment of SFU was released April 2000 and was also for English, however it was accompanied by a Japanese language release just two months later in June 2000. Both were supported on Windows NT 4.0 SP4+ and Windows 2000 on x86 platforms with Internet Explorer 4.01+. It supported the following UNIX versions: Solaris 2.6+, HP-UX 10.2+, AIX 4.2+, Tru64 UNIX 5.0+, and Red Hat Linux 5.1+. It included the following components:

  • Server for NFS (NFSServer)
  • Client for NFS (NFSClient)
  • Gateway for NFS (NFSGateway)
  • Server for PCNFS (Pcnfsd)
  • User Name Mapping (Mapsvc)
  • Server for NFS Authentication (NFSServerAuth)
  • Server for NIS (NIS)
  • Telnet Client (TelnetClient)
  • Telnet Server (TelnetServer)
  • Password Synchronization (PasswdSync)
  • ActiveState ActivePerl (Perl)
  • UNIX Utilities (UnixUtilities)
  • Cron Service (CronSvc)
  • Rsh Service (RshSvc)

[edit] SFU 3.0

This version was released May 2002 and was the first release to include the Interix subsystem. Previously Microsoft had released Interix 2.2 (actually version 2.2.5) as a separate product around the same time frame as SFU 2.0. This SFU release included Interix release 3.0 (commonly called the "version" as reported by uname -r) with an internal Microsoft version of 7.0 that relates to internal build sequences. This Interix release contained significant technical extensions from the Interix 2.2 release such as a rooted file system and setuid functionality that were entirely based on the Softway Systems' Interix development codenamed Firebrand. This was also released in English and accompanied by a later release in Japanese in October 2002, adding internationalization support. Both supported Windows NT 4.0 SP6a+, Windows 2000, and Windows XP Professional on x86 platforms with Internet Explorer 5.0+. The MKS Toolkit was no longer included. It included the following components:

  • Base Utilities for Interix (BaseUtils; including X11R5 utilities)
  • UNIX Perl for Interix (UNIXPerl)
  • Interix SDK (InterixSDK; including headers and libraries for development and a wrapper for Visual Studio compiler)
  • GNU Utilities for Interix (GNUUtils, about 9 utilities in total)
  • GNU SDK for Interix (GNUSDK; including gcc and g++)
  • NFS Client for Windows (NFSClient)
  • NFS Gateway for Windows (NFSGateway)
  • NFS Server for Windows (NFSServer)
  • NIS Server for Windows (NIS)
  • Password Synchronization (PasswdSync)
  • Windows Remote Shell Service (RshSvc)
  • Telnet Server for Windows (TelnetServer)
  • NFS User Name Mapping (Mapsvc)
  • NFS Authentication Server (NFSServerAuth)
  • PCNFS Server (Pcnfsd)
  • ActiveState Perl (Perl)

[edit] SFU 3.5

This was the final release of SFU and the only release to be distributed free of charge. It was released January 2004 and included both English and Japanese versions for Windows 2000, Windows XP Professional, and Windows Server 2003 on x86 platforms with Internet Explorer 5.0+. It included Interix subsystem release 3.5 (build version 8.0) adding internationalization support (at least for the English version which did not have such until now) and POSIX threading. This release could only be installed to an NTFS file system (earlier versions supported FAT; this was for improved file security requirements in Interix 3.5). The following UNIX versions were supported for NFS components: Solaris 7 and 8, Red Hat Linux 8.0, AIX 5L 5.2, and HP-UX 11i. It included the following components:

  • Base Utilities for Interix (BaseUtils; including X11R6 and X11R5 utilities)
  • UNIX Perl for Interix (UNIXPerl)
  • Interix SDK (InterixSDK; including headers and libraries for development and a wrapper for Visual Studio compiler)
  • GNU Utilities for Interix (GNUUtils, again about 9 utilities)
  • GNU SDK for Interix (GNUSDK; including gcc and g++)
  • NFS Client for Windows (NFSClient)
  • NFS Gateway for Windows (NFSGateway)
  • NFS Server for Windows (NFSServer)
  • NIS Server for Windows (NIS)
  • Password Synchronization (PasswdSync)
  • Windows Remote Shell Service (RshSvc)
  • Telnet Server for Windows (TelnetServer)
  • NFS User Name Mapping (Mapsvc)
  • NFS Authentication Server (NFSServerAuth)
  • PCNFS Server (Pcnfsd)
  • ActiveState Perl (Perl)

[edit] Subsystem for UNIX-based Applications (SUA)

Windows Server 2003 R2 contains most SFU components, namely Microsoft Services for Network File System (NFS), Subsystem for UNIX-based Applications (aka Interix), and Identity Management for UNIX.[2]

Windows Vista Enterprise and Ultimate Editions also contain the Services for Unix components, now called the Subsystem for UNIX-based applications (SUA), and Client for NFS v3. The utilities and SDK are required to be downloaded separately. However, the server components from the SFU product line (namely Server for NFS, User Name Mapping, Server for NIS, Password Synchronization etc) are not included[3] - these are included in Server editions of Windows (ie Windows Server 2008).

Microsoft does not intend to produce any further standalone versions of the product. SFU will be available for download[4] until 2009; general support will continue until 2011; extended support until 2014.[5]

[edit] Known problems

Character translation must be used to accommodate filenames with a colon (:) or other characters that are not compliant with Windows file systems. Files with the same name but different cases are also not allowed by default, but can be enabled on installation with the side-effect of turning the underlying partition's filesystem to be case-sensitive[6][7], even for the Win32 subsystem. In addition, authentication for UNIX systems relies on the insecure NIS protocol (for LDAP- and Kerberos-based authentication a third party solution such as Centrify DirectControl is required).

[edit] See also

[edit] References

[edit] External links

Personal tools