diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 1996-08-24 22:08:58 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 1996-08-24 22:08:58 +0000 |
commit | eb4a0a442351491de444491546bb3b4cb1c9b6aa (patch) | |
tree | 5e10ff118a4df721cd8340e0ef5ce41db9427bb7 | |
parent | 3a7c49f28f64d3492435c3d94758c269ad0e4243 (diff) |
compat_svr4 from christos
-rw-r--r-- | share/man/man8/Makefile | 4 | ||||
-rw-r--r-- | share/man/man8/compat_svr4.8 | 120 |
2 files changed, 122 insertions, 2 deletions
diff --git a/share/man/man8/Makefile b/share/man/man8/Makefile index 47877442feb..a4f8f54b4a5 100644 --- a/share/man/man8/Makefile +++ b/share/man/man8/Makefile @@ -1,9 +1,9 @@ -# $OpenBSD: Makefile,v 1.6 1996/08/09 16:43:26 deraadt Exp $ +# $OpenBSD: Makefile,v 1.7 1996/08/24 22:08:56 deraadt Exp $ # $NetBSD: Makefile,v 1.13 1996/03/28 21:36:40 mark Exp $ # @(#)Makefile 8.1 (Berkeley) 6/5/93 MAN= adduser_proc.8 compat_freebsd.8 compat_linux.8 compat_sunos.8 \ - diskless.8 intro.8 rc.8 \ + compat_svr4.8 diskless.8 intro.8 rc.8 \ sticky.8 update.8 yp.8 SUBDIR= man8.amiga man8.arm32 man8.atari man8.hp300 man8.i386 man8.mac68k \ man8.sparc man8.sun3 man8.tahoe man8.vax diff --git a/share/man/man8/compat_svr4.8 b/share/man/man8/compat_svr4.8 new file mode 100644 index 00000000000..e42f728f2b4 --- /dev/null +++ b/share/man/man8/compat_svr4.8 @@ -0,0 +1,120 @@ +.\" $OpenBSD: compat_svr4.8,v 1.1 1996/08/24 22:08:57 deraadt Exp $ +.\" $NetBSD: compat_svr4.8,v 1.1 1996/07/06 17:14:50 christos Exp $ +.\" +.\" Copyright (c) 1996 Christos Zoulas +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgment: +.\" This product includes software developed for the NetBSD Project +.\" by Christos Zoulas +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" Stolen from compat_linux.8,v 1.2 1995/10/16 20:17:59 fvdl +.\" +.Dd July 6, 1996 +.Dt COMPAT_SVR4 8 +.Os BSD 4 +.Sh NAME +.Nm COMPAT_SVR4 +.Nd setup procedure for running SVR4/iBCS2 binaries +.Sh DESCRIPTION +OpenBSD supports running SVR4/iBCS2 binaries. This code has been tested on +i386 and sparc systems. Most programs should work, but not ones that use +the /proc filesystem, sound, or threads (unfortunately ttsession uses threads). +.\" XXX: What else? + +The SVR4 compatibility feature is active +for kernels compiled with the +.Nm COMPAT_SVR4 +option enabled. + +Most SVR4 programs are dynamically linked. This means that you will +also need the shared libraries that the program depends on and the +runtime linker. Also, you will need to create a "shadow root" +directory for SVR4 binaries on your OpenBSD system. This directory +is named /emul/svr4. Any file operations done by SVR4 programs +run under OpenBSD will look in this directory first. So, if a SVR4 +program opens, for example, /etc/passwd, OpenBSD will +first try to open /emul/svr4/etc/passwd, and if that does not exist +open the 'real' /etc/passwd file. It is recommended that you install +SVR4 packages that include configuration files, etc under /emul/svr4, +to avoid naming conflicts with possible OpenBSD counterparts. Shared +libraries should also be installed in the shadow tree. +.Pp +The simplest way to setup your system for SVR4 biraries is: + +.Bl -tag -width 123 -compact +.It 1. +Make the necessary directories: +.Pp +.Bl -tag -width 123 -compact -offset indent +.It (me@openbsd) mkdir -p /emul/svr4/{dev,etc} +.br +.It (me@openbsd) mkdir -p /emul/svr4/usr/{bin,lib} +.br +.It (me@openbsd) mkdir -p /emul/svr4/usr/openwin/{bin,lib} +.El +.Pp +.It 2. +Copy files from an svr4 system: +.Pp +.Bl -tag -width 123 -compact -offset indent +.It (me@svr4) cd /usr/lib +.br +.It (me@svr4) tar -cf -\ . | \e +.in +5 +.It rsh openbsd 'cd /emul/svr4/usr/lib; tar -xpf -' +.in -5 +.El +.Pp +If you are running openwindows: +.Pp +.Bl -tag -width 123 -compact -offset indent +.It (me@svr4) cd /usr/openwin/lib +.br +.It (me@svr4) tar -cf -\ . | \e +.in +5 +.It rsh openbsd 'cd /emul/svr4/usr/openwin/lib; tar -xpf -' +.in -5 +.El +.Pp +.It 3. +Setup the configuration files and devices: +.Pp +.Bl -tag -width 123 -compact -offset indent +.It (me@openbsd) cd /usr/src/etc/etc.svr4 +.br +.It (me@openbsd) cp netconfig nsswitch.conf /emul/svr4/etc +.br +.It (me@openbsd) cp SVR4_MAKEDEV /emul/svr4/dev +.br +.It (me@openbsd) cd /emul/svr4/dev; ./SVR4_MAKEDEV all +.El +.El +.Pp +An alternative method is to mount a whole svr4 partition in /emul/svr4 +and then override with other mounts /emul/svr4/etc and /emul/svr4/dev. +.Sh BUGS +Many system calls are still not emulated. + |