Newsgroups: comp.os.linux.announce
From: dje@sspiff.cygnus.com (Doug Evans)
Subject: Xenix filesystem for Linux
Message-ID: <1993Apr26.051610.29769@klaava.Helsinki.FI>
Date: Mon, 26 Apr 1993 05:16:10 GMT
Approved: linux-announce@tc.cornell.edu (Lars Wirzenius)

I have uploaded my Xenix filesystem for Linux to tsx-11.mit.edu.
It is in /pub/linux/patches/xenixfs.99.8.tar.z.

(The number of Linux users has grown and some may see this for the first time.
Those who have Xenix, don't get your hopes up.  Divvy partition support is
still missing :-()

Here is the README.

README for Xenix(tm) filesystem.  93Apr10

Introduction
------------

This patch provides a minimal implementation of the Xenix filesystem for Linux.
The implementation isn't complete in the sense that the following things
are missing:

- divvy partition support
- badtrk table support
- mkfs
- fsck
- fsdb

To use this code with Linux, you must boot Xenix and run mkfs on a
full partition. EG: mkfs /dev/hd03 ... This code can also be used with
floppies (boot Xenix and do mkdev fd). In fact, I recommend testing
the patch out on floppies first. Note that fsck, mkfs, and fsdb can't
be run under Linux.

The restrictions make the patch not very useful to most people.
Divvy partition and badtrk table support are the most notable absentees.
If someone wants to write them, please go ahead.

The patches are, however, extremely useful to me (I get to back up my hard
disks to my Jumbo 250 tape drive - via Xenix; kind of an expensive backup
program, I know :-). So maybe there's a few people out there who can use this.


System Requirements
-------------------

This patch must be applied to Linux 0.99 Patch Level 8.


Symbolic Link Support
---------------------

I have added a simple implementation of symbolic links that won't send fsck
into fits. See fs/xenix/symlink.c for more information.  Basically, files that
only have the sticky bit set are presumed to be symbolic links. Kludgey,
I know.  If you can think of a better way, *and still allowing the existing
fsck to work (IE: not complain about them)*, please let me know.


Installation
------------

To install this code:

1) Untar the source into the directory above where the linux source lives.

   For example, if your linux kernel source lives in /usr/src/linux and
   the Xenix f/s distribution file is in /tmp/xenixfs.tar.z, do:

   cd /usr/src
   tar xvfz /tmp/xenixfs.tar.z

2) Apply patch file xenixfs.patch.

   Assuming file xenixfs.patch lives in /usr/src and you use bash, do:

   cd /usr/src
   patch <xenixfs.patch 2>&1 | tee xenpatch.log

3) Rerun `make config' and choose `y' when asked to include Xenix file
   system support.  'y' is the default, but you still need to run
   `make config'.

4) Rebuild and reinstall the kernel.


Note: This patch makes Xenix partitions the "default" root partition.
      When the system boots, it will first try to mount the root partition
      as a Xenix partition. If that fails it will try the others in
      succession. If your root Linux partition is not a Xenix partition,
      change the search order in linux/fs/filesystems.c.


General Notes
-------------

I have my Linux system running on Xenix partitions as follows:

200 MB IDE	50MB MSDOS
		50MB Xenix root + swap
		50MB Linux root
		50MB /usr/spool (Xenix + Linux)

1 GIG SCSI	200MB /home (Xenix + Linux)
		32MB Linux swap (2*16MB)
		300MB /u (Xenix + Linux)
		500MB /src (Xenix + Linux)

Despite the limitations, it's nice being able have one copy of all the
gnu sources, etc., accessable by Linux or Xenix.  And it's nice to be able
to back all this stuff up!

This patch does not provide Xenix compatibility.  Linux won't be able
to run Xenix programs and vice versa.


Complaint Department
--------------------

Doug Evans, dje@cygnus.com


Trademarks, Disclaimers, etc.
-----------------------------

This code is a derivative of the Linux Minix filesystem.  In fact, over time
I have tried to keep diffs between the two as minimal as possible.

This code is covered by the GNU General Public License, Version 2.
Please see the file COPYING in the top level kernel source directory
for more information.

(tm) Xenix is a registered trademark of Microsoft Corp.


-- 
Doug Evans               | And Life, that sets all things in rhyme,
dje@sspiff.cygnus.com    | May make you poet, too, in time -
                         | But there were days, O tender elf,
                         | When you were Poetry itself!         C. Morley
