root filesystem notes

General NOTES/Caveats

    Name resolution works, but only if you supply an /etc/resolv.conf file
    with settings appropriate for your environment.
    
    There are 2 accounts enabled: root and default. default is unprivileged.
    Both accounts have an empty password initially.

Linux NOTES/Caveats
    System initialization is now handled by SysVinit, not busybox. Only 
    network, random, rawdevices, sshd, syslog, and xinetd are started 
    automatically at boot time. Other services, found in /etc/rc.d/init.d,
    can be started and stopped using /sbin/service.

    System services known to have problems:
	<none>

    Packages known to have problems:
	<none>
      	
    Untested packages:
	<none>

    Missing packages:
	<none>

uClinux NOTES/Caveats
    Sshd only runs via inetd. 

    The included shell, msh, has limited support for complex commands.

    The following daemons/services do not background themselves in uClinux 
    as they do on Linux due to design limitations:
	boa
	ntpd
	rpc.lockd
	rpc.mountd
	rpc.nfsd
	rpc.rquotad
	rpc.statd
	snmpd
	smbmount

How to build the root filesystem from source

    Move into a suitable directory

      $ cd /var/tmp

    Unpack the source tarball

      $ tar -xjvf /tmp/rootfs-src.tar.bz2

    Move into the directory created in unpacking the sources

      $ cd rootfs-src

    Building the root filesystem 

      NOTE: If you wish to build a glibc-based root filesystem, change
            the value of USE_GLIBC to true in Makefile.

      NOTE: If you wish to build a fr400-uclinux root filesystem,
            change the value of ARCH to frv400 in Makefile.

      Ensure that the new copy of the compiler is the first frv*linux
      compiler in your search path, but after all other paths

         $ PATH=$PATH:`pwd`/frv-<release>/H-i686-pc-linux-gnulibc2.2/bin
         $ export PATH

      Build the root filesystem packages

         $ make

      The root filesystem will be in build_*linux_frv*/root

    Installing the root filesystem

      After building the root filesystem, the new root filesystem must
      be installed to a final destination directory with the correct
      permissions, device nodes, etc.

         $ make install DESTDIR=path

      where 'path' is the absolute path to the final destination of
      the root filesystem (such as /nfsroots/frv/rootfs).

      If the build is being done as a non-root user, the non-root user
      must have 'sudo' access for the "make install" step.

      Once the root filesystem has been built there will be a copy of
      the toolchain in build_*linux_frv*/frv-<release>.  That
      toolchain will have access to the libraries and headers provided
      by the various packages in the root filesystem.
