gBootRoot pronounced "bOOtrOOt"
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

285 lines
7.3 KiB

# -*- Mode: Fundamental -*-
#
# $Id: Sample.yard,v 1.2 2000/11/30 04:49:51 freesource Exp $
# This is Bootdisk_Contents, for use with Yard.
# This script created automatically from Bootdisk_Contents.in
#
# Tom Fawcett
# May 1996
#############################################################################
#
# Format rules:
# - Lines beginning with # or % are comments.
#
# - Blank lines and whitespace may be used freely.
#
# - Filenames may be either relative or absolute.
# Any filename not beginning with a slash is relative and
# will be resolved relative to the current directory.
#
# - Lines of the form "filename1 -> filename2" will create symbolic (soft)
# links on the root fs. Eg, if you want sh linked to bash
# in the root fs you specify: "/bin/sh -> /bin/bash"
# (There is no way to specify hardlinks, though hard linked files
# that exist on the hard disk will be hard linked on the floppy.)
#
# - Lines of the form "filename1 <= filename2"
# will cause filename2 to be copied to filename1 on the boot disk.
# This is useful for specifying trimmed-down replacements for
# /etc/passwd, /etc/inittab, etc. filename2 will be found first by
# searching PATH, then by searching relative to the current directory.
#
# - Glob designations (?, * and []) are generally allowed, eg /dev/hd[ab]*
# Wildcards are not allowed in link specs or replacement specs.
#
# - You may refer to environment variables in these specs by using
# a dollar sign. $RELEASE will be set to the release string of
# $kernel.
#
# You generally don't need to specify shared libraries or loaders.
# make_root_fs will detect necessary libraries with ldd and include
# them automatically. (But see the comment below regarding RedHat's
# libnss libraries, whose dependencies cannot be automatically detected).
#
# You don't need to explicitly specify intermediate directories
# unless you just want to make sure they exist.
#
##############################################################################
# Specify these binaries absolutely because boot scripts need them to be here.
/bin/cat
/bin/false
/bin/hostname
/bin/ln
/bin/login
/bin/ls
/bin/more
/bin/mount
/bin/mv
/bin/su
/bin/true
/bin/umount
/bin/loadkeys
##### THE DEFAULT SHELL
# (I use bash, but it's huge and requires libncurses.so.
# Most people grab a smaller lightweight shell, like ash or kiss,
# and use that instead.)
#/bin/sh -> bash
#/bin/csh -> tcsh
/bin/sh -> ash
#/sbin/halt
/sbin/init
/sbin/reboot
/sbin/shutdown
#/sbin/swapoff
/sbin/swapon
/sbin/telinit
/sbin/update
##### FILES IN /etc, TAKEN FROM YOUR SETUP
#
# The advantage of using your existing /etc/passwd file is that is has
# all the correct UIDs and GIDs, which may be useful when restoring
# files from tape. On the other hand, using a trimmed-down passwd
# allows you to use a trimmed-down shell, and avoids lots of errors
# from check_root_fs about home directories and shells not existing.
#
/etc/group
/etc/issue
/etc/profile
/etc/shells
# These get replaced with their pared-down versions
# in the Replacements subdirectory.
/etc/passwd <= ./Replacements/etc/passwd
/etc/fstab <= ./Replacements/etc/fstab
/etc/motd <= ./Replacements/etc/bootdisk_motd
/etc/rc <= ./Replacements/etc/rc
/etc/ttytype <= ./Replacements/etc/ttytype
/etc/gettydefs <= ./Replacements/etc/gettydefs
/etc/termcap <= ./Replacements/etc/termcap
# PROVISIONS FOR PAM:
/etc/pam.conf <= ./Replacements/etc/pam.conf
/lib/security/pam_permit.so
# PROVISIONS FOR GLIBC'S (LIBC6) NSS.
# If you use libc5, comment these out.
#
/etc/nsswitch.conf <= ./Replacements/etc/nsswitch.conf
/lib/libnss_files.so.2
##### INITTAB and GETTY
# Use one of these pairs, based on your distribution:
#
#==== REDHAT (5.x, 6.0) uses getty
#/etc/inittab <= Replacements/etc/inittab
#/sbin/getty
#
#
#===== MANDRAKE (7) uses mingetty
/etc/inittab <= Replacements/etc/inittab.mingetty
/sbin/mingetty
#
#
#==== SLACKWARE uses agetty:
#/etc/inittab <= Replacements/etc/inittab.agetty
#/sbin/agetty
#
#
#==== DEBIAN (1.1) uses a program called "getty" which is actually
# agetty in disguise:
#/etc/inittab <= Replacements/etc/inittab.debian
#/sbin/getty
#
#
#==== SUSE uses mingetty:
#/etc/inittab <= Replacements/etc/inittab.mingetty
#/sbin/mingetty
#
#
# If in doubt, check your /etc/inittab.
#
# In any case, check to make sure the *getty* calls in the inittab match
# the executable you're using. Yard can't check this and *getty* will
# hang if the arguments are wrong.
##### DEVICES
# Remove/prune these if you're sure you won't need them
#/dev/*tape* # Tape device links
#/dev/*rft0 # Floppy tape devices
#/dev/st? # SCSI tape drives
/dev/mem /dev/kmem
/dev/null /dev/zero
/dev/ram*
/dev/console
/dev/tty[0-9]
/dev/ttyS[0-9] # Serial ports (new style)
/dev/cua[0-9] # Callout devices corresponding to ttyS
/dev/hd[abcd]* # Hard disks
/dev/sd* # SCSI disks
/dev/fd0* # Floppy disk drives
/dev/cdrom /dev/modem # Links to real devices, which will be copied
/dev/mouse # In case you want to use a mouse
##### utmp and wtmp.
# Set up links for any old-style programs that expect them in /etc.
/etc/utmp -> /var/run/utmp
/var/run/utmp <= /dev/null # This clears utmp on the floppy
/etc/wtmp -> /var/log/wtmp
/var/log/wtmp <= /dev/null
/usr/share/terminfo/v/vt100
/usr/share/terminfo/v/vt100-am
/usr/share/terminfo/l/linux
/usr/share/terminfo/l/linux-m
/usr/share/terminfo/l/linux-nic
# If you want to load a special keytable, add the filename here:
#/usr/lib/kbd/keytables/defkeymap.map
##### Empty directories
/mnt/* # all mount points
/proc
/tmp
/var/tmp
/usr/spool/uucp
##### MODULES and support programs for them.
insmod
rmmod
lsmod
depmod
modprobe
/sbin/kerneld
/etc/conf.modules
# /lib/modules/$RELEASE/*/*.o # All modules
/lib/modules/$RELEASE/fs/{isofs,romfs,vfat}.o
/lib/modules/$RELEASE/net/{ppp*,sl*,tulip}.o
##### ESSENTIAL SYSTEM UTILITIES
# (your rescue disk may not boot if these are not present.)
chmod
chown
chroot
cp
date
df
id
mkdir
pwd
rm
shutdown
stty
sync
uname
##### NON-ESSENTIAL BUT USEFUL UTILITIES
cut
diff
dd
du
egrep fgrep grep
find
free
fuser
gunzip gzip
head tail
mkswap
mknod
ps
passwd
reboot
tar
touch
tr
whoami
wc
zcat
#### Networking
ifconfig
ping
route
rsh
##### DISK AND FILE SYSTEM UTILITIES
fdisk
e2fsck fsck fsck.ext2
mke2fs mkfs mkfs.ext2
tune2fs
mklost+found
##### FILES FOR RESTORING BACKUPS
# I use the tob package for backups, so I include everything to do
# restorations. You might want to include man pages or help files.
#tob
#afio # Needed by tob
#/usr/etc/tob.rc
#/usr/etc/tob/*
#/usr/etc/tob/lists/
#/usr/etc/tob/volumes/*
##### A basic text editor. I use jove, a light-weight emacs clone
##### which is small and requires only libc and libtermcap.
#jove
#/usr/lib/jove/jove.rc
##### For user "root".
#/root/.profile
# A generic .profile:
/root/.profile <= ./Replacements/root/.profile
/root/.*shrc
##### End of Bootdisk_Contents