cowlark.com :  Linux Binaries on Windows :  Installing Interix

Linux Binaries on Windows

Installing Interix

Published: 2016 November 3

LBW requires Interix, a.k.a. Services for Unix, a.k.a. Subsystem for Unix Applications, a.k.a. Microsoft Unix.

This is a Microsoft product that nobody's ever heard of. It provides a rather decent if dated Unix system that runs side-by-side with win32, on top of the Windows NT kernel. It comes with all the usual development tools, like gcc, make, a full set of Unix command line utilities and daemons, etc. LBW development is done on Interix.

It's free and easy to install, but it is irritatingly fiddly.

Windows XP

Download Services for Unix 3.5. It's about 220MB, but we're only going to install a small part of it.

Run the executable. It'll decompress into a folder. Then run the installer in that folder. It'll ask you a series of questions:

  • you want a custom installation.
  • when prompted as to which features you want to install, disable everything except 'Base Utilities' (inside 'Utilities'). [If you want to do LBW development, you'll need to install more than this --- ask on the mailing list.]
  • Leave case sensitive file system and setuid binaries to off.
  • You want to use local user name mapping.
  • You want to use password and group files, not NIS. When prompted for filenames, just press NEXT.
  • You want to install to the default location (C:\SFU).
  • Leave cron and the other daemons turned off.

It may take a while at the 'configuring security services' stage --- let it run, it'll get there in the end.

Once finished, it'll make you reboot.

Windows XP Home

Interix does not install out of the box on XP Home, because Microsoft apparently think you're too cheap.

However, it's trivially easy to hack the installer to work. You will need a hex editor.

First, download and decompress the Services for Unix installer as described above. Then, load the SfuSetup.msi file into your hex editor. Search for:

NOT (VersionNT = 501 AND MsiNTSuitePersonal)

Change the 501 to 510 and save.

You can now proceed with the installation as described above.

Windows Vista

I don't know --- I don't have access to a Windows Vista machine. I think it's like Windows 7 (see below). I do know that Interix is only available on Vista Pro and Vista Ultimate systems.

If you get Interix working on Vista, please let me know so I can update this page!

Windows 7

Note: LBW does not work on Windows 7 yet!

Interix is built in, but disabled.

To enable it, go to Control Panel -> Programs and Features and check the 'Subsystem for Unix-based Applications' and turn it on. You'll have to reboot.

[If you want to do LBW development, you'll need to do more than this --- ask on the mailing list.]