Other names | SFU |
---|---|
Original author(s) | MKS Inc. (SFU 1.0 / 2.0), Softway Systems, Inc. (SFU 3.0 / 3.5) |
Developer(s) | Microsoft |
Initial release | February 1999 |
Final release | 3.5 / January 2004 |
Operating system | Microsoft Windows |
Platform | IA-32 and x86-64 |
Predecessor | Microsoft POSIX subsystem |
Successor | Windows Subsystem for Linux |
Type | Compatibility layer |
Website | Windows Services for Unix at the Wayback Machine (archived 2017-08-26) |
Windows Services for UNIX (SFU) is a discontinued software package produced by Microsoft which provided a Unix environment on Windows NT and some of its immediate successor operating-systems.
SFU 1.0 and 2.0 used the MKS Toolkit; starting with SFU 3.0, SFU included the Interix subsystem, [1] which was acquired by Microsoft in 1999 from US-based Softway Systems as part of an asset acquisition. [2] SFU 3.5 was the last release and was available as a free download from Microsoft. Windows Server 2003 R2 included most of the former SFU components (on Disk 2), naming the Interix subsystem component Subsystem for UNIX-based Applications (SUA). [3] In Windows Server 2008 and high-end versions of both Windows Vista and Windows 7 (Enterprise and Ultimate), a minimal Interix SUA was included, but most of the other SFU utilities had to be downloaded separately from Microsoft's web site. [1]
The Interix subsystem included in SFU 3.0 and 3.5 and later released as SUA Windows components provided header files and libraries that made it easier to recompile or port Unix applications for use on Windows; they did not make Linux or other Unix binaries (BSD, Solaris, Xenix etc) compatible with Windows binaries. Like the Microsoft POSIX subsystem that Interix replaced, it is best thought of as a distinct Unix-like platform.
It is replaced by Windows Subsystem for Linux in Windows 10 and Windows Server 2019.
As of SFU 3.5, it contained:
SFU did not contain the following:
Although SFU includes X Window System client libraries and applications, it does not contain a native X server. Administrators may configure any of the numerous third-party Windows X servers. Fully featured free options include Cygwin/X, Xming and WeirdX.
Microsoft produced at least one beta release of the initial version of SFU before its final release in February 1999. This release, in English only, was supported on the 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:
This second installment of SFU was released April 2000 and was also for English; however, a Japanese-language release appeared just two months later in June 2000. Both ran on Windows NT 4.0 SP4+ and Windows 2000 on x86 platforms with Internet Explorer 4.01+. SFU 2.0 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:
There were subsequent updated OEM releases SFU 2.1, SFU 2.2, and SFU 2.3.
This version, released in May 2002, 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 followed 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:
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 (original release only [lower-alpha 1] ) 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:
Microsoft does not intend to produce any further standalone versions of SFU, opting instead for the integrated SUA. As of August 18, 2016, v3.5 is unavailable from the provided Microsoft Link. [4] General support continued until 2011; extended support until 2014. [5]
Character translation must be used to accommodate filenames which include a colon (:) or other characters that do not comply with the naming conventions of 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 making the underlying partition's filesystem case-sensitive, [6] [7] even for the Win32 subsystem.
Network authentication for UNIX systems relies on the insecure NIS protocol (LDAP- and Kerberos-based authentication require a third-party solution). Microsoft has released several hotfixes for Windows Services for UNIX, and at least one Security Update (KB939778). The GNU Project utilities are several versions older than the latest ones. A separate port of the up-to-date Debian utilities was started in 2007, but apparently abandoned in 2009. [8] Several of the text processing utilities in SUA (e.g. awk) are not compatible with Unicode or wide character text files.
No version of Windows Services for UNIX is available for Windows XP Professional x64 Edition. [9]
Windows Server 2003 R2 contains most SFU components, namely Microsoft Services for Network File System (NFS), Subsystem for UNIX-based Applications (SUA, a.k.a. Interix), and Identity Management for UNIX. [10] The July 2007 SFU 3.5 Security Update updated posix.exe and related files to match the SUA version. [11]
Unlike the SFU, the SUA version included in Windows Server 2003 R2 (and subsequent versions) has 64-bit support and allows linking of Win32 libraries to SUA applications. [12]
Windows Vista and Windows 7 Enterprise and Ultimate Editions also contain the Services for Unix components, now called the Subsystem for UNIX-based applications (SUA), [3] and Client for NFS v3. Users must download the utilities and SDK 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 [13] – these are included in Server editions of Windows (i.e. Windows Server 2008).
SUA was deprecated in Windows 8 Enterprise [14] and Windows Server 2012, [15] and completely removed in Windows 8.1 and Windows Server 2012 R2. [16] The NFS server is still supported in Windows Server 2012 R2. [17] [18]
The NFS client feature and server features are separate from the SUA in Windows 7 and 2008, [19] and remained supported until Windows Subsystem for Linux replaced it. On desktop (Windows 7), NFS is only available in the Enterprise and Ultimate editions. [20] The free reference implementation of NFS 4.1 for Windows (by UMICH CITI), the development of which was sponsored by Microsoft, [21] does work on lower-end versions of Windows 7, but requires more involved installation. [22]
In Windows 8, the NFS client gained krb5p (Kerberos 5 with full data encryption) support. In Windows 7, Kerberos 5 was supported for authentication, but only packet integrity checking was available for data. The maximum block/buffer size was also increased from 32 KB to 1 MB in Windows 8. [23]
Windows Server 2012 added support for NFS 4.1 server. [24] [25] The new implementation is kernel-based (RPC/XDR-wise) but many optional features from NFS4 are not implemented, including ACLs, pNFS etc. There is however support in PowerShell for mapping user identities. [26]
The Portable Operating System Interface is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines both the system and user-level application programming interfaces (APIs), along with command line shells and utility interfaces, for software compatibility (portability) with variants of Unix and other operating systems. POSIX is also a trademark of the IEEE. POSIX is intended to be used by both application and system developers.
The Secure Shell Protocol (SSH) is a cryptographic network protocol for operating network services securely over an unsecured network. Its most notable applications are remote login and command-line execution.
Telnet is a client/server application protocol that provides access to virtual terminals of remote systems on local area networks or the Internet. It is a protocol for bidirectional 8-bit communications. Its main goal was to connect terminal devices and terminal-oriented processes.
Network File System (NFS) is a distributed file system protocol originally developed by Sun Microsystems (Sun) in 1984, allowing a user on a client computer to access files over a computer network much like local storage is accessed. NFS, like many other protocols, builds on the Open Network Computing Remote Procedure Call system. NFS is an open IETF standard defined in a Request for Comments (RFC), allowing anyone to implement the protocol.
The Network Information Service, or NIS, is a client–server directory service protocol for distributing system configuration data such as user and host names between computers on a computer network. Sun Microsystems developed the NIS; the technology is licensed to virtually all other Unix vendors.
Server Message Block (SMB) is a communication protocol used to share files, printers, serial ports, and miscellaneous communications between nodes on a network. On Microsoft Windows, the SMB implementation consists of two vaguely named Windows services: "Server" and "Workstation". It uses NTLM or Kerberos protocols for user authentication. It also provides an authenticated inter-process communication (IPC) mechanism.
In computing, X-Win32 is a proprietary implementation of the X Window System for Microsoft Windows, produced by StarNet Communications. It is based on X11R7.4.
PuTTY is a free and open-source terminal emulator, serial console and network file transfer application. It supports several network protocols, including SCP, SSH, Telnet, rlogin, and raw socket connection. It can also connect to a serial port. The name "PuTTY" has no official meaning.
Remote Desktop Protocol (RDP) is a proprietary protocol developed by Microsoft Corporation which provides a user with a graphical interface to connect to another computer over a network connection. The user employs RDP client software for this purpose, while the other computer must run RDP server software.
Windows NT 3.1 is the first major release of the Windows NT operating system developed by Microsoft, released on July 27, 1993.
File locking is a mechanism that restricts access to a computer file, or to a region of a file, by allowing only one user or process to modify or delete it at a specific time and to prevent reading of the file while it's being modified or deleted.
Interix was an optional, POSIX-conformant Unix subsystem for Windows NT operating systems. Interix was a component of Windows Services for UNIX, and a superset of the Microsoft POSIX subsystem. Like the POSIX subsystem, Interix was an environment subsystem for the NT kernel. It included numerous open source utility software programs and libraries. Interix was originally developed and sold as OpenNT until purchased by Microsoft in 1999.
The architecture of Windows NT, a line of operating systems produced and sold by Microsoft, is a layered design that consists of two main components, user mode and kernel mode. It is a preemptive, reentrant multitasking operating system, which has been designed to work with uniprocessor and symmetrical multiprocessor (SMP)-based computers. To process input/output (I/O) requests, it uses packet-driven I/O, which utilizes I/O request packets (IRPs) and asynchronous I/O. Starting with Windows XP, Microsoft began making 64-bit versions of Windows available; before this, there were only 32-bit versions of these operating systems.
Microsoft Data Access Components is a framework of interrelated Microsoft technologies that allows programmers a uniform and comprehensive way of developing applications that can access almost any data store. Its components include: ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC). There have been several deprecated components as well, such as the Jet Database Engine, MSDASQL, and Remote Data Services (RDS). Some components have also become obsolete, such as the former Data Access Objects API and Remote Data Objects.
Windows Vista contains a range of new technologies and features that are intended to help network administrators and power users better manage their systems. Notable changes include a complete replacement of both the Windows Setup and the Windows startup processes, completely rewritten deployment mechanisms, new diagnostic and health monitoring tools such as random access memory diagnostic program, support for per-application Remote Desktop sessions, a completely new Task Scheduler, and a range of new Group Policy settings covering many of the features new to Windows Vista. Subsystem for UNIX Applications, which provides a POSIX-compatible environment is also introduced.
Security Support Provider Interface (SSPI) is a component of Windows API that performs security-related operations such as authentication.
Remote Desktop Services (RDS), known as Terminal Services in Windows Server 2008 and earlier, is one of the components of Microsoft Windows that allow a user to initiate and control an interactive session on a remote computer or virtual machine over a network connection. RDS was first released in 1998 as Terminal Server in Windows NT 4.0 Terminal Server Edition, a stand-alone edition of Windows NT 4.0 Server that allowed users to log in remotely. Starting with Windows 2000, it was integrated under the name of Terminal Services as an optional component in the server editions of the Windows NT family of operating systems, receiving updates and improvements with each version of Windows. Terminal Services were then renamed to Remote Desktop Services with Windows Server 2008 R2 in 2009.
Microsoft POSIX subsystem is one of four subsystems shipped with the first versions of Windows NT, the other three being the Win32 subsystem which provided the primary API for Windows NT, plus the OS/2 and security subsystems.
A Unix-like operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-like application is one that behaves like the corresponding Unix command or shell. Although there are general philosophies for Unix design, there is no technical standard defining the term, and opinions can differ about the degree to which a particular operating system or application is Unix-like.
Windows 8, a major release of the Microsoft Windows operating system, was available in four different editions: Windows 8 (Core), Pro, Enterprise, and RT. Only Windows 8 (Core) and Pro were widely available at retailers. The other editions focus on other markets, such as embedded systems or enterprise. All editions support 32-bit IA-32 CPUs and x64 CPUs.
SUA is deprecated starting with [the Windows 8 M3 Developer Preview] release and will be completely removed from the next release.