d62bbe049a
filesystems are a must. Add instructions on how to change these things after SFU is already installed (so a reinstall is not necessary).
106 lines
4 KiB
Text
106 lines
4 KiB
Text
$NetBSD: README.Interix,v 1.12 2004/08/23 20:43:13 tv Exp $
|
|
|
|
Please read the general README file as well.
|
|
|
|
Interix is a POSIX compatible subsystem for the Windows NT kernel,
|
|
providing a Unix-like environment with a tighter kernel integration than
|
|
available with Cygwin. It is part of the Windows Services for Unix
|
|
package, available for free for any licensed copy of Windows 2000, XP,
|
|
or 2003. SFU can be downloaded from:
|
|
|
|
http://www.microsoft.com/windows/sfu/
|
|
|
|
Services for Unix 3.5, current as of this writing, has been tested. 3.0
|
|
or 3.1 may work, but are not officially supported. (The main difference
|
|
in 3.0/3.1 is lack of pthreads.)
|
|
|
|
A prebuilt bootstrap kit and prebuilt binary packages for Interix 3.5 are
|
|
available from the pkgsrc information page:
|
|
|
|
http://www.netbsd.org/Documentation/software/packages.html
|
|
|
|
=====
|
|
|
|
At an absolute minimum, the following packages must be installed from
|
|
the Windows Services for Unix 3.5 distribution in order to use pkgsrc:
|
|
|
|
Utilities -> Base Utilities
|
|
Interix GNU Components -> (all)
|
|
Remote Connectivity
|
|
Interix SDK
|
|
|
|
When using pkgsrc on Interix, DO NOT install the Utilities subcomponent
|
|
"UNIX Perl". That is Perl 5.6 without shared module support, installed to
|
|
/usr/local, and will only cause confusion. Instead, install Perl 5.8 from
|
|
pkgsrc (or from a binary package available at the URL above).
|
|
|
|
The Remote Connectivity subcomponent "Windows Remote Shell Service" does
|
|
not need to be installed, but Remote Connectivity itself should be
|
|
installed in order to have a working inetd.
|
|
|
|
Finally, during installation you may be asked whether to enable setuid
|
|
behavior for Interix programs, and whether to make pathnames default to
|
|
case-sensitive. Setuid should be enabled, and case-sensitivity MUST be
|
|
enabled. (Without case-sensitivity, a large number of packages including
|
|
perl will not build.)
|
|
|
|
=====
|
|
|
|
If SFU is already installed and you wish to alter these settings to work
|
|
with pkgsrc:
|
|
|
|
* To uninstall UNIX Perl, use Add/Remove Programs, select Microsoft
|
|
Windows Services for UNIX, then click Change. In the installer, choose
|
|
Add or Remove, then uncheck Utilities->UNIX Perl.
|
|
|
|
* To enable case-sensitivity for the filesystem, run REGEDIT.EXE, and
|
|
change the following registry key:
|
|
|
|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel
|
|
|
|
Set the DWORD value "obcaseinsensitive" to 0; then reboot.
|
|
|
|
* To enable setuid binaries (optional), run REGEDIT.EXE, and change the
|
|
following registry key:
|
|
|
|
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Services for UNIX
|
|
|
|
Set the DWORD value "EnableSetuidBinaries" to 1; then reboot.
|
|
|
|
=====
|
|
|
|
IMPORTANT NOTES
|
|
|
|
* The package imanager (either the pkgsrc "su" user, or the user
|
|
running "pkg_add") must be a member of the local Administrators
|
|
group. Such a user must also be used to run the bootstrap. This is
|
|
slightly relaxed from the normal pkgsrc requirement of "root".
|
|
|
|
* The package manager should use a umask of 002. "make install" will
|
|
automatically complain if this is not the case. This ensures that
|
|
directories written in /var/db/pkg are Administrators-group writeable.
|
|
|
|
* The popular Interix binary packages from http://www.interopsystems.com/
|
|
use an older version of pkgsrc's pkg_* tools. Ideally, these should
|
|
NOT be used in conjunction with pkgsrc. If you choose to use them at
|
|
the same time as the pkgsrc packages, ensure that you use the proper
|
|
pkg_* tools for each type of binary package.
|
|
|
|
=====
|
|
|
|
KNOWN ISSUES
|
|
|
|
* It is not necessary, in general, to have a "root" user on the Windows
|
|
system; any member of the local Administrators group will suffice.
|
|
However, some packages currently assume that the user named "root" is
|
|
the privileged user (these will eventually be fixed). To accommodate
|
|
these, you may create such a user; make sure it is in the local group
|
|
Administrators.
|
|
|
|
* "pkg_add" creates directories of mode 0755, not 0775, in $PKG_DBDIR.
|
|
This will be fixed.
|
|
|
|
For the time being, install packages as Administrator, or use a
|
|
"chmod -R g+w $PKG_DBDIR" after installing a package to work around it.
|
|
|
|
=====
|