summaryrefslogtreecommitdiffstats
path: root/source/installer/sources/initrd/etc
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2018-06-06 22:19:01 +0000
committer Eric Hameleers <alien@slackware.com>2018-06-07 08:58:09 +0200
commit6e00c56127b4fa2328e596ac18647fb7f27b674d (patch)
treed9cb5f96f79880fb29e1875aa169336346d94989 /source/installer/sources/initrd/etc
parentec4fd2d70a99a651f8498ce4c1ca8b38b9583c39 (diff)
downloadcurrent-6e00c56127b4fa2328e596ac18647fb7f27b674d.tar.gz
current-6e00c56127b4fa2328e596ac18647fb7f27b674d.tar.xz
Wed Jun 6 22:19:01 UTC 201820180606221901
a/bash-4.4.023-x86_64-1.txz: Upgraded. a/kernel-firmware-20180604_1fa9ce3-noarch-1.txz: Upgraded. a/kernel-generic-4.14.48-x86_64-1.txz: Upgraded. a/kernel-huge-4.14.48-x86_64-1.txz: Upgraded. a/kernel-modules-4.14.48-x86_64-1.txz: Upgraded. ap/cups-2.2.8-x86_64-1.txz: Upgraded. ap/ghostscript-fonts-std-8.11-noarch-3.txz: Rebuilt. Rebuilt this and many other font packages or packages with build scripts that call mkfontdir or mkfontscale to suppress any error messages caused by collisions if another package installation is writing files to the same font directories when those utilities are run. In that case, the other package will also be running mkfontdir/mkfontscale after the files are installed, so any issues will be cleaned up then. Last one out turn off the lights, so to speak. ap/sqlite-3.24.0-x86_64-1.txz: Upgraded. ap/terminus-font-4.40-noarch-3.txz: Rebuilt. d/kernel-headers-4.14.48-x86-1.txz: Upgraded. d/rust-1.26.2-x86_64-1.txz: Upgraded. k/kernel-source-4.14.48-noarch-1.txz: Upgraded. l/elfutils-0.171-x86_64-1.txz: Upgraded. l/harfbuzz-1.7.7-x86_64-1.txz: Upgraded. l/mozilla-nss-3.37.3-x86_64-1.txz: Upgraded. l/readline-7.0.005-x86_64-1.txz: Upgraded. x/dejavu-fonts-ttf-2.37-noarch-4.txz: Rebuilt. x/font-adobe-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-adobe-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-adobe-utopia-100dpi-1.0.4-noarch-3.txz: Rebuilt. x/font-adobe-utopia-75dpi-1.0.4-noarch-3.txz: Rebuilt. x/font-adobe-utopia-type1-1.0.4-noarch-3.txz: Rebuilt. x/font-arabic-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-lucidatypewriter-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-lucidatypewriter-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-ttf-1.0.3-noarch-3.txz: Rebuilt. x/font-bh-type1-1.0.3-noarch-3.txz: Rebuilt. x/font-bitstream-100dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bitstream-75dpi-1.0.3-noarch-3.txz: Rebuilt. x/font-bitstream-speedo-1.0.2-noarch-3.txz: Rebuilt. x/font-bitstream-type1-1.0.3-noarch-3.txz: Rebuilt. x/font-cronyx-cyrillic-1.0.3-noarch-3.txz: Rebuilt. x/font-cursor-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-daewoo-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-dec-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-ibm-type1-1.0.3-noarch-3.txz: Rebuilt. x/font-isas-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-jis-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-micro-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-cyrillic-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-ethiopic-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-meltho-1.0.3-noarch-3.txz: Rebuilt. x/font-misc-misc-1.1.2-noarch-3.txz: Rebuilt. x/font-mutt-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-schumacher-misc-1.1.2-noarch-3.txz: Rebuilt. x/font-screen-cyrillic-1.0.4-noarch-3.txz: Rebuilt. x/font-sony-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-sun-misc-1.0.3-noarch-3.txz: Rebuilt. x/font-winitzki-cyrillic-1.0.3-noarch-3.txz: Rebuilt. x/font-xfree86-type1-1.0.4-noarch-3.txz: Rebuilt. x/liberation-fonts-ttf-2.00.1-noarch-3.txz: Rebuilt. x/libinput-1.11.0-x86_64-1.txz: Upgraded. x/sazanami-fonts-ttf-20040629-noarch-3.txz: Rebuilt. x/sinhala_lklug-font-ttf-20060929-noarch-3.txz: Rebuilt. x/tibmachuni-font-ttf-1.901b-noarch-3.txz: Rebuilt. x/ttf-indic-fonts-0.5.14-noarch-3.txz: Rebuilt. x/ttf-tlwg-0.6.4-noarch-3.txz: Rebuilt. x/urw-core35-fonts-otf-20170801_91edd6e_git-noarch-2.txz: Rebuilt. x/wqy-zenhei-font-ttf-0.8.38_1-noarch-6.txz: Rebuilt. xap/mozilla-firefox-60.0.2-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/security/known-vulnerabilities/firefox.html (* Security fix *) xap/x3270-3.3.12ga7-x86_64-5.txz: Rebuilt. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
Diffstat (limited to 'source/installer/sources/initrd/etc')
-rw-r--r--source/installer/sources/initrd/etc/DIR_COLORS166
-rw-r--r--source/installer/sources/initrd/etc/HOSTNAME1
-rwxr-xr-xsource/installer/sources/initrd/etc/dhcpc/dhcpcd.exe-sample49
-rw-r--r--source/installer/sources/initrd/etc/disk27
-rw-r--r--source/installer/sources/initrd/etc/dnsmasq.conf0
-rw-r--r--source/installer/sources/initrd/etc/fstab3
-rw-r--r--source/installer/sources/initrd/etc/group44
-rw-r--r--source/installer/sources/initrd/etc/host.conf2
-rw-r--r--source/installer/sources/initrd/etc/hosts21
-rw-r--r--source/installer/sources/initrd/etc/inittab40
-rw-r--r--source/installer/sources/initrd/etc/installer1
-rw-r--r--source/installer/sources/initrd/etc/issue25
-rw-r--r--source/installer/sources/initrd/etc/keymaps.tarbin0 -> 573440 bytes
-rw-r--r--source/installer/sources/initrd/etc/ld.so.cachebin0 -> 4468 bytes
-rw-r--r--source/installer/sources/initrd/etc/ld.so.conf2
-rw-r--r--source/installer/sources/initrd/etc/localtimebin0 -> 118 bytes
-rw-r--r--source/installer/sources/initrd/etc/login.defs68
-rw-r--r--source/installer/sources/initrd/etc/lvm/lvm.conf411
-rw-r--r--source/installer/sources/initrd/etc/mdev.conf0
-rw-r--r--source/installer/sources/initrd/etc/mke2fs.conf44
-rw-r--r--source/installer/sources/initrd/etc/motd0
-rw-r--r--source/installer/sources/initrd/etc/mtab0
-rw-r--r--source/installer/sources/initrd/etc/mtools.conf64
-rw-r--r--source/installer/sources/initrd/etc/networks10
-rw-r--r--source/installer/sources/initrd/etc/nsswitch.conf42
-rw-r--r--source/installer/sources/initrd/etc/passwd21
-rw-r--r--source/installer/sources/initrd/etc/pcmcia/config.opts71
-rw-r--r--source/installer/sources/initrd/etc/profile35
-rwxr-xr-xsource/installer/sources/initrd/etc/profile.d/coreutils-dircolors.sh55
-rwxr-xr-xsource/installer/sources/initrd/etc/profile.d/glibc.sh8
-rw-r--r--source/installer/sources/initrd/etc/protocols146
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.S250
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.dropbear58
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.font45
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.ieee139448
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.inet128
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.pcmcia65
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.udev133
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.usb71
-rw-r--r--source/installer/sources/initrd/etc/scsi_id.config17
-rw-r--r--source/installer/sources/initrd/etc/securetty20
-rw-r--r--source/installer/sources/initrd/etc/shadow17
-rw-r--r--source/installer/sources/initrd/etc/shells2
-rw-r--r--source/installer/sources/initrd/etc/syslog.conf4
-rw-r--r--source/installer/sources/initrd/etc/termcap238
45 files changed, 2332 insertions, 0 deletions
diff --git a/source/installer/sources/initrd/etc/DIR_COLORS b/source/installer/sources/initrd/etc/DIR_COLORS
new file mode 100644
index 000000000..13a21dfc0
--- /dev/null
+++ b/source/installer/sources/initrd/etc/DIR_COLORS
@@ -0,0 +1,166 @@
+# Configuration file for dircolors, a utility to help you set the
+# LS_COLORS environment variable used by GNU ls with the --color option.
+
+# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
+# slackware version of dircolors) are recognized but ignored.
+# (see the scripts in /etc/profile.d/coreutils-dircolors.* to change default
+# options in the Slackware aliases)
+
+# Below, there should be one TERM entry for each termtype that is colorizable
+TERM linux
+TERM linux-c
+TERM mach-color
+TERM console
+TERM con132x25
+TERM con132x30
+TERM con132x43
+TERM con132x60
+TERM con80x25
+TERM con80x28
+TERM con80x30
+TERM con80x43
+TERM con80x50
+TERM con80x60
+TERM cygwin
+TERM dtterm
+TERM putty
+TERM xterm
+TERM xterm-color
+TERM xterm-debian
+TERM rxvt
+TERM screen
+TERM screen-bce
+TERM screen-w
+TERM vt100
+TERM Eterm
+
+# Below are the color init strings for the basic file types. A color init
+# string consists of one or more of the following numeric codes:
+# Attribute codes:
+# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
+# Text color codes:
+# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
+# Background color codes:
+# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
+NORMAL 00 # global default, although everything should be something.
+FILE 00 # normal file
+DIR 01;34 # directory
+LINK 01;36 # symbolic link. (If you set this to 'target' instead of a
+ # numerical value, the color is as for the file pointed to.)
+FIFO 40;33 # pipe
+SOCK 01;35 # socket
+DOOR 01;35 # door
+BLK 40;33;01 # block device driver
+CHR 40;33;01 # character device driver
+ORPHAN 40;31;01 # symlink to nonexistent file
+SETUID 37;41 # file that is setuid (u+s)
+SETGID 30;43 # file that is setgid (g+s)
+STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w)
+OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
+STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable
+EXEC 01;32 # This is for files with execute permission:
+
+# List any file extensions like '.gz' or '.tar' that you would like ls
+# to colorize below. Put the extension, a space, and the color init string.
+# (and any comments you want to add after a '#')
+
+# DOS-style executables (bright green)
+.bat 01;32
+.BAT 01;32
+.btm 01;32
+.BTM 01;32
+.cmd 01;32
+.CMD 01;32
+.com 01;32
+.COM 01;32
+.dll 01;32
+.DLL 01;32
+.exe 01;32
+.EXE 01;32
+
+# archives or compressed (bright red)
+.arj 01;31
+.bz2 01;31
+.deb 01;31
+.gz 01;31
+.lzh 01;31
+.rar 01;31
+.RAR 01;31
+.rpm 01;31
+.tar 01;31
+.taz 01;31
+.tb2 01;31
+.tbz2 01;31
+.tbz 01;31
+.tgz 01;31
+.tz2 01;31
+.z 01;31
+.Z 01;31
+.zip 01;31
+.ZIP 01;31
+.zoo 01;31
+
+# multimedia (video/image/sound) file formats
+.asf 01;35
+.ASF 01;35
+.avi 01;35
+.AVI 01;35
+.bmp 01;35
+.BMP 01;35
+.flac 01;35
+.FLAC 01;35
+.gif 01;35
+.GIF 01;35
+.jpg 01;35
+.JPG 01;35
+.jpeg 01;35
+.JPEG 01;35
+.m2a 01;35
+.M2A 01;35
+.m2v 01;35
+.M2V 01;35
+.m4a 01;35
+.M4A 01;35
+.m4p 01;35
+.M4P 01;35
+.m4v 01;35
+.M4V 01;35
+.mov 01;35
+.MOV 01;35
+.mp3 01;35
+.MP3 01;35
+.mpc 01;35
+.MPC 01;35
+.mpeg 01;35
+.MPEG 01;35
+.mpg 01;35
+.MPG 01;35
+.ogg 01;35
+.OGG 01;35
+.pbm 01;35
+.pgm 01;35
+.png 01;35
+.PNG 01;35
+.ppm 01;35
+.ram 01;35
+.RAM 01;35
+.rm 01;35
+.RM 01;35
+.tga 01;35
+.TGA 01;35
+.tif 01;35
+.TIF 01;35
+.tiff 01;35
+.TIFF 01;35
+.wav 01;35
+.WAV 01;35
+.wma 01;35
+.WMA 01;35
+.wmv 01;35
+.WMV 01;35
+.xbm 01;35
+.xcf 01;35
+.xpm 01;35
+.xwd 01;35
+.XWD 01;35
+
diff --git a/source/installer/sources/initrd/etc/HOSTNAME b/source/installer/sources/initrd/etc/HOSTNAME
new file mode 100644
index 000000000..23169fd62
--- /dev/null
+++ b/source/installer/sources/initrd/etc/HOSTNAME
@@ -0,0 +1 @@
+slackware.example.net
diff --git a/source/installer/sources/initrd/etc/dhcpc/dhcpcd.exe-sample b/source/installer/sources/initrd/etc/dhcpc/dhcpcd.exe-sample
new file mode 100755
index 000000000..f49cffdd0
--- /dev/null
+++ b/source/installer/sources/initrd/etc/dhcpc/dhcpcd.exe-sample
@@ -0,0 +1,49 @@
+#!/bin/sh
+#
+# This is a sample /etc/dhcpc/dhcpcd.exe script.
+# /etc/dhcpc/dhcpcd.exe script is executed by dhcpcd daemon
+# any time it configures or shuts down interface.
+# The following parameters are passed to dhcpcd.exe script:
+# $1 = HostInfoFilePath, e.g "/etc/dhcpc/dhcpcd-eth0.info"
+# $2 = "up" if interface has been configured with the same
+# IP address as before reboot;
+# $2 = "down" if interface has been shut down;
+# $2 = "new" if interface has been configured with new IP address;
+# $3 (optional) = "-d" debug flag passed if dhcpcd daemon has been
+# invoked with "-d" flag
+#
+# Sanity checks
+
+if [ $# -lt 2 ]; then
+ logger -s -p local0.err -t dhcpcd.exe "wrong usage"
+ exit 1
+fi
+
+hostinfo="$1"
+state="$2"
+debug="$3"
+
+# Reading HostInfo file for configuration parameters
+. "${hostinfo}"
+
+case "${state}" in
+ up)
+ logger -s -p local0.info -t dhcpcd.exe \
+ "interface ${INTERFACE} has been configured with old IP=${IPADDR}"
+ # Put your code here for when the interface has been brought up with an
+ # old IP address here
+ ;;
+
+ new)
+ logger -s -p local0.info -t dhcpcd.exe \
+ "interface ${INTERFACE} has been configured with new IP=${IPADDR}"
+ # Put your code here for when the interface has been brought up with a
+ # new IP address
+ ;;
+
+ down) logger -s -p local0.info -t dhcpcd.exe \
+ "interface ${INTERFACE} has been brought down"
+ # Put your code here for the when the interface has been shut down
+ ;;
+esac
+exit 0
diff --git a/source/installer/sources/initrd/etc/disk2 b/source/installer/sources/initrd/etc/disk2
new file mode 100644
index 000000000..6a80aac22
--- /dev/null
+++ b/source/installer/sources/initrd/etc/disk2
@@ -0,0 +1,7 @@
+Hi there. :-)
+
+This file is used to determine if the second install "disk"
+is already loaded or not... if it's not found in /etc, then
+the boot scripts will ask you to insert the second install
+floppy.
+
diff --git a/source/installer/sources/initrd/etc/dnsmasq.conf b/source/installer/sources/initrd/etc/dnsmasq.conf
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/source/installer/sources/initrd/etc/dnsmasq.conf
diff --git a/source/installer/sources/initrd/etc/fstab b/source/installer/sources/initrd/etc/fstab
new file mode 100644
index 000000000..0fdb74a70
--- /dev/null
+++ b/source/installer/sources/initrd/etc/fstab
@@ -0,0 +1,3 @@
+devpts /dev/pts devpts gid=5,mode=620 0 0
+proc /proc proc defaults 0 0
+tmpfs /dev/shm tmpfs defaults 0 0
diff --git a/source/installer/sources/initrd/etc/group b/source/installer/sources/initrd/etc/group
new file mode 100644
index 000000000..8e9154a19
--- /dev/null
+++ b/source/installer/sources/initrd/etc/group
@@ -0,0 +1,44 @@
+root:x:0:root
+bin:x:1:root,bin
+daemon:x:2:root,bin,daemon
+sys:x:3:root,bin,adm
+adm:x:4:root,adm,daemon
+tty:x:5:
+disk:x:6:root,adm
+lp:x:7:lp
+mem:x:8:
+kmem:x:9:
+wheel:x:10:root
+floppy:x:11:root
+mail:x:12:mail
+news:x:13:news
+uucp:x:14:uucp
+man:x:15:
+dialout:x:16:uucp
+audio:x:17:root
+video:x:18:root
+cdrom:x:19:root
+games:x:20:
+slocate:x:21:
+utmp:x:22:
+smmsp:x:25:smmsp
+tape:x:26:root
+mysql:x:27:
+rpc:x:32:
+sshd:x:33:sshd
+gdm:x:42:
+shadow:x:43:
+ftp:x:50:
+oprofile:x:51:
+apache:x:80:
+messagebus:x:81:
+haldaemon:x:82:
+plugdev:x:83:root
+power:x:84:
+netdev:x:86:
+pop:x:90:pop
+scanner:x:93:
+nobody:x:98:nobody
+nogroup:x:99:
+users:x:100:
+console:x:101:
diff --git a/source/installer/sources/initrd/etc/host.conf b/source/installer/sources/initrd/etc/host.conf
new file mode 100644
index 000000000..a659e913a
--- /dev/null
+++ b/source/installer/sources/initrd/etc/host.conf
@@ -0,0 +1,2 @@
+order hosts, bind
+multi on
diff --git a/source/installer/sources/initrd/etc/hosts b/source/installer/sources/initrd/etc/hosts
new file mode 100644
index 000000000..bc4ad4f13
--- /dev/null
+++ b/source/installer/sources/initrd/etc/hosts
@@ -0,0 +1,21 @@
+#
+# hosts This file describes a number of hostname-to-address
+# mappings for the TCP/IP subsystem. It is mostly
+# used at boot time, when no name servers are running.
+# On small systems, this file can be used instead of a
+# "named" name server. Just add the names, addresses
+# and any aliases to this file...
+#
+# By the way, Arnt Gulbrandsen <agulbra@nvg.unit.no> says that 127.0.0.1
+# should NEVER be named with the name of the machine. It causes problems
+# for some (stupid) programs, irc and reputedly talk. :^)
+#
+
+# For loopbacking.
+127.0.0.1 localhost
+# This next entry is technically wrong, but good enough to get TCP/IP apps
+# to quit complaining that they can't verify the hostname on a loopback-only
+# Linux box.
+127.0.0.1 slackware.example.net slackware
+
+# End of hosts.
diff --git a/source/installer/sources/initrd/etc/inittab b/source/installer/sources/initrd/etc/inittab
new file mode 100644
index 000000000..2695f00e0
--- /dev/null
+++ b/source/installer/sources/initrd/etc/inittab
@@ -0,0 +1,40 @@
+# /etc/inittab
+# Boot-time system configuration/initialization script.
+# This is run first except when booting in single-user mode.
+::sysinit:/etc/rc.d/rc.S
+
+# Login /bin/sh invocations on selected ttys.
+#
+# Start a shell on the console
+::respawn:-/bin/sh
+# Start an "askfirst" shell on tty2 and tty3
+tty2::askfirst:-/bin/sh
+tty3::askfirst:-/bin/sh
+
+# /sbin/getty invocations for selected ttys.
+#
+#tty1::respawn:/sbin/getty 38400 tty1
+#tty2::respawn:/sbin/getty 38400 tty2
+
+# Example of how to put a getty on a serial line (for a terminal)
+#
+#ttyS0::respawn:/sbin/getty -L ttyS0 9600 vt100
+#ttyS1::respawn:/sbin/getty -L ttyS1 9600 vt100
+#
+# Example how to put a getty on a modem line.
+#ttyS2::respawn:/sbin/getty -x0 -s 57600 ttyS2
+
+# Reboot when ctrl-alt-del keys are pressed.
+::ctrlaltdel:/sbin/reboot
+#::ctrlaltdel:/sbin/brc
+
+# Stuff to do before halting or rebooting.
+# Hopefully it does these things in order, so that we can fake the
+# system date one last time before umounting:
+::shutdown:/bin/sh /sbin/fakedate
+::shutdown:/sbin/swapoff -a >/dev/null 2>&1
+::shutdown:/bin/umount -a -r >/dev/null 2>&1
+::shutdown:/sbin/vgchange -an --ignorelockingfailure >/dev/null 2>&1
+# Otherwise SSH logins are left lingering:
+::shutdown:/bin/killall dropbear > /dev/null 2>&1
+::shutdown:/bin/sh /sbin/fixdate
diff --git a/source/installer/sources/initrd/etc/installer b/source/installer/sources/initrd/etc/installer
new file mode 100644
index 000000000..e2af85b91
--- /dev/null
+++ b/source/installer/sources/initrd/etc/installer
@@ -0,0 +1 @@
+If /etc/installer exists, it's a cue to scripts that we're on the installer.
diff --git a/source/installer/sources/initrd/etc/issue b/source/installer/sources/initrd/etc/issue
new file mode 100644
index 000000000..8b2ac3360
--- /dev/null
+++ b/source/installer/sources/initrd/etc/issue
@@ -0,0 +1,25 @@
+
+
+
+
+Welcome to the Slackware Linux installation disk! (version 12.2)
+
+###### IMPORTANT! READ THE INFORMATION BELOW CAREFULLY. ######
+
+- You will need one or more partitions of type 'Linux' prepared. It is also
+ recommended that you create a swap partition (type 'Linux swap') prior
+ to installation. For more information, run 'setup' and read the help file.
+
+- If you're having problems that you think might be related to low memory, you
+ can try activating a swap partition before you run setup. After making a
+ swap partition (type 82) with cfdisk or fdisk, activate it like this:
+ mkswap /dev/<partition> ; swapon /dev/<partition>
+
+- Once you have prepared the disk partitions for Linux, type 'setup' to begin
+ the installation process.
+
+- If you do not have a color monitor, type: TERM=vt100
+ before you start 'setup'.
+
+You may now login as 'root'.
+
diff --git a/source/installer/sources/initrd/etc/keymaps.tar b/source/installer/sources/initrd/etc/keymaps.tar
new file mode 100644
index 000000000..2ae6004b7
--- /dev/null
+++ b/source/installer/sources/initrd/etc/keymaps.tar
Binary files differ
diff --git a/source/installer/sources/initrd/etc/ld.so.cache b/source/installer/sources/initrd/etc/ld.so.cache
new file mode 100644
index 000000000..ea1fb85b3
--- /dev/null
+++ b/source/installer/sources/initrd/etc/ld.so.cache
Binary files differ
diff --git a/source/installer/sources/initrd/etc/ld.so.conf b/source/installer/sources/initrd/etc/ld.so.conf
new file mode 100644
index 000000000..61b171c81
--- /dev/null
+++ b/source/installer/sources/initrd/etc/ld.so.conf
@@ -0,0 +1,2 @@
+/lib
+/usr/lib
diff --git a/source/installer/sources/initrd/etc/localtime b/source/installer/sources/initrd/etc/localtime
new file mode 100644
index 000000000..5583f5b0c
--- /dev/null
+++ b/source/installer/sources/initrd/etc/localtime
Binary files differ
diff --git a/source/installer/sources/initrd/etc/login.defs b/source/installer/sources/initrd/etc/login.defs
new file mode 100644
index 000000000..bcbdb2f0f
--- /dev/null
+++ b/source/installer/sources/initrd/etc/login.defs
@@ -0,0 +1,68 @@
+#
+# /etc/login.defs - Configuration control definitions for the login package.
+#
+# $Id: login.defs.linux,v 1.10 1999/03/07 19:14:33 marekm Exp $
+FAIL_DELAY 3
+DIALUPS_CHECK_ENAB yes
+FAILLOG_ENAB yes
+LOG_UNKFAIL_ENAB no
+LOG_OK_LOGINS no
+LASTLOG_ENAB yes
+MAIL_CHECK_ENAB no
+OBSCURE_CHECKS_ENAB yes
+PORTTIME_CHECKS_ENAB yes
+QUOTAS_ENAB yes
+SYSLOG_SU_ENAB yes
+SYSLOG_SG_ENAB yes
+CONSOLE /etc/securetty
+#CONSOLE console:tty01:tty02:tty03:tty04
+#SULOG_FILE /var/log/sulog
+MOTD_FILE /etc/motd
+#MOTD_FILE /etc/motd:/usr/lib/news/news-motd
+#ISSUE_FILE /etc/issue
+#TTYTYPE_FILE /etc/ttytype
+FTMP_FILE /var/log/btmp
+NOLOGINS_FILE /etc/nologin
+SU_NAME su
+#QMAIL_DIR Maildir
+MAIL_DIR /var/spool/mail
+#MAIL_FILE .mail
+HUSHLOGIN_FILE .hushlogin
+#HUSHLOGIN_FILE /etc/hushlogins
+NOLOGIN_STR NOLOGIN
+#ENV_TZ TZ=CST6CDT
+#ENV_TZ /etc/tzname
+ENV_HZ HZ=100
+#ENV_HZ HZ=1024
+ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin
+ENV_PATH PATH=/usr/local/bin:/bin:/usr/bin
+TTYGROUP tty
+TTYPERM 0620
+ERASECHAR 0177
+KILLCHAR 025
+UMASK 022
+#ULIMIT 2097152
+PASS_MAX_DAYS 99999
+PASS_MIN_DAYS 0
+PASS_MIN_LEN 5
+PASS_WARN_AGE 7
+SU_WHEEL_ONLY no
+#CRACKLIB_DICTPATH /var/cache/cracklib/cracklib_dict
+UID_MIN 1000
+UID_MAX 60000
+GID_MIN 100
+GID_MAX 60000
+LOGIN_RETRIES 5
+LOGIN_TIMEOUT 60
+PASS_CHANGE_TRIES 5
+PASS_ALWAYS_WARN yes
+#PASS_MAX_LEN 8
+CHFN_AUTH yes
+CHFN_RESTRICT frwh
+#LOGIN_STRING "%s's Password: "
+MD5_CRYPT_ENAB yes
+#CONSOLE_GROUPS floppy:audio:cdrom
+DEFAULT_HOME yes
+ENVIRON_FILE /etc/environment
+#USERDEL_CMD /usr/sbin/userdel_local
+#NO_PASSWORD_CONSOLE tty1:tty2:tty3:tty4:tty5:tty6
diff --git a/source/installer/sources/initrd/etc/lvm/lvm.conf b/source/installer/sources/initrd/etc/lvm/lvm.conf
new file mode 100644
index 000000000..16cefb2f1
--- /dev/null
+++ b/source/installer/sources/initrd/etc/lvm/lvm.conf
@@ -0,0 +1,411 @@
+# This is an example configuration file for the LVM2 system.
+# It contains the default settings that would be used if there was no
+# /etc/lvm/lvm.conf file.
+#
+# Refer to 'man lvm.conf' for further information including the file layout.
+#
+# To put this file in a different directory and override /etc/lvm set
+# the environment variable LVM_SYSTEM_DIR before running the tools.
+
+
+# This section allows you to configure which block devices should
+# be used by the LVM system.
+devices {
+
+ # Where do you want your volume groups to appear ?
+ dir = "/dev"
+
+ # An array of directories that contain the device nodes you wish
+ # to use with LVM2.
+ scan = [ "/dev" ]
+
+ # If several entries in the scanned directories correspond to the
+ # same block device and the tools need to display a name for device,
+ # all the pathnames are matched against each item in the following
+ # list of regular expressions in turn and the first match is used.
+ preferred_names = [ ]
+
+ # Try to avoid using undescriptive /dev/dm-N names, if present.
+ # preferred_names = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ]
+
+ # A filter that tells LVM2 to only use a restricted set of devices.
+ # The filter consists of an array of regular expressions. These
+ # expressions can be delimited by a character of your choice, and
+ # prefixed with either an 'a' (for accept) or 'r' (for reject).
+ # The first expression found to match a device name determines if
+ # the device will be accepted or rejected (ignored). Devices that
+ # don't match any patterns are accepted.
+
+ # Be careful if there there are symbolic links or multiple filesystem
+ # entries for the same device as each name is checked separately against
+ # the list of patterns. The effect is that if any name matches any 'a'
+ # pattern, the device is accepted; otherwise if any name matches any 'r'
+ # pattern it is rejected; otherwise it is accepted.
+
+ # Don't have more than one filter line active at once: only one gets used.
+
+ # Run vgscan after you change this parameter to ensure that
+ # the cache file gets regenerated (see below).
+ # If it doesn't do what you expect, check the output of 'vgscan -vvvv'.
+
+
+ # By default we accept every block device:
+ filter = [ "a/.*/" ]
+
+ # Exclude the cdrom drive
+ # filter = [ "r|/dev/cdrom|" ]
+
+ # When testing I like to work with just loopback devices:
+ # filter = [ "a/loop/", "r/.*/" ]
+
+ # Or maybe all loops and ide drives except hdc:
+ # filter =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ]
+
+ # Use anchors if you want to be really specific
+ # filter = [ "a|^/dev/hda8$|", "r/.*/" ]
+
+ # The results of the filtering are cached on disk to avoid
+ # rescanning dud devices (which can take a very long time).
+ # By default this cache is stored in the /etc/lvm/cache directory
+ # in a file called '.cache'.
+ # It is safe to delete the contents: the tools regenerate it.
+ # (The old setting 'cache' is still respected if neither of
+ # these new ones is present.)
+ cache_dir = "/etc/lvm/cache"
+ cache_file_prefix = ""
+
+ # You can turn off writing this cache file by setting this to 0.
+ write_cache_state = 1
+
+ # Advanced settings.
+
+ # List of pairs of additional acceptable block device types found
+ # in /proc/devices with maximum (non-zero) number of partitions.
+ # types = [ "fd", 16 ]
+
+ # If sysfs is mounted (2.6 kernels) restrict device scanning to
+ # the block devices it believes are valid.
+ # 1 enables; 0 disables.
+ sysfs_scan = 1
+
+ # By default, LVM2 will ignore devices used as components of
+ # software RAID (md) devices by looking for md superblocks.
+ # 1 enables; 0 disables.
+ md_component_detection = 1
+
+ # By default, if a PV is placed directly upon an md device, LVM2
+ # will align its data blocks with the the chunk_size exposed in sysfs.
+ # 1 enables; 0 disables.
+ md_chunk_alignment = 1
+
+ # If, while scanning the system for PVs, LVM2 encounters a device-mapper
+ # device that has its I/O suspended, it waits for it to become accessible.
+ # Set this to 1 to skip such devices. This should only be needed
+ # in recovery situations.
+ ignore_suspended_devices = 0
+}
+
+# This section that allows you to configure the nature of the
+# information that LVM2 reports.
+log {
+
+ # Controls the messages sent to stdout or stderr.
+ # There are three levels of verbosity, 3 being the most verbose.
+ verbose = 0
+
+ # Should we send log messages through syslog?
+ # 1 is yes; 0 is no.
+ syslog = 1
+
+ # Should we log error and debug messages to a file?
+ # By default there is no log file.
+ #file = "/var/log/lvm2.log"
+
+ # Should we overwrite the log file each time the program is run?
+ # By default we append.
+ overwrite = 0
+
+ # What level of log messages should we send to the log file and/or syslog?
+ # There are 6 syslog-like log levels currently in use - 2 to 7 inclusive.
+ # 7 is the most verbose (LOG_DEBUG).
+ level = 0
+
+ # Format of output messages
+ # Whether or not (1 or 0) to indent messages according to their severity
+ indent = 1
+
+ # Whether or not (1 or 0) to display the command name on each line output
+ command_names = 0
+
+ # A prefix to use before the message text (but after the command name,
+ # if selected). Default is two spaces, so you can see/grep the severity
+ # of each message.
+ prefix = " "
+
+ # To make the messages look similar to the original LVM tools use:
+ # indent = 0
+ # command_names = 1
+ # prefix = " -- "
+
+ # Set this if you want log messages during activation.
+ # Don't use this in low memory situations (can deadlock).
+ # activation = 0
+}
+
+# Configuration of metadata backups and archiving. In LVM2 when we
+# talk about a 'backup' we mean making a copy of the metadata for the
+# *current* system. The 'archive' contains old metadata configurations.
+# Backups are stored in a human readeable text format.
+backup {
+
+ # Should we maintain a backup of the current metadata configuration ?
+ # Use 1 for Yes; 0 for No.
+ # Think very hard before turning this off!
+ backup = 1
+
+ # Where shall we keep it ?
+ # Remember to back up this directory regularly!
+ backup_dir = "/etc/lvm/backup"
+
+ # Should we maintain an archive of old metadata configurations.
+ # Use 1 for Yes; 0 for No.
+ # On by default. Think very hard before turning this off.
+ archive = 1
+
+ # Where should archived files go ?
+ # Remember to back up this directory regularly!
+ archive_dir = "/etc/lvm/archive"
+
+ # What is the minimum number of archive files you wish to keep ?
+ retain_min = 10
+
+ # What is the minimum time you wish to keep an archive file for ?
+ retain_days = 30
+}
+
+# Settings for the running LVM2 in shell (readline) mode.
+shell {
+
+ # Number of lines of history to store in ~/.lvm_history
+ history_size = 100
+}
+
+
+# Miscellaneous global LVM2 settings
+global {
+
+ # The file creation mask for any files and directories created.
+ # Interpreted as octal if the first digit is zero.
+ umask = 077
+
+ # Allow other users to read the files
+ #umask = 022
+
+ # Enabling test mode means that no changes to the on disk metadata
+ # will be made. Equivalent to having the -t option on every
+ # command. Defaults to off.
+ test = 0
+
+ # Default value for --units argument
+ units = "h"
+
+ # Whether or not to communicate with the kernel device-mapper.
+ # Set to 0 if you want to use the tools to manipulate LVM metadata
+ # without activating any logical volumes.
+ # If the device-mapper kernel driver is not present in your kernel
+ # setting this to 0 should suppress the error messages.
+ activation = 1
+
+ # If we can't communicate with device-mapper, should we try running
+ # the LVM1 tools?
+ # This option only applies to 2.4 kernels and is provided to help you
+ # switch between device-mapper kernels and LVM1 kernels.
+ # The LVM1 tools need to be installed with .lvm1 suffices
+ # e.g. vgscan.lvm1 and they will stop working after you start using
+ # the new lvm2 on-disk metadata format.
+ # The default value is set when the tools are built.
+ # fallback_to_lvm1 = 0
+
+ # The default metadata format that commands should use - "lvm1" or "lvm2".
+ # The command line override is -M1 or -M2.
+ # Defaults to "lvm1" if compiled in, else "lvm2".
+ # format = "lvm1"
+
+ # Location of proc filesystem
+ proc = "/proc"
+
+ # Type of locking to use. Defaults to local file-based locking (1).
+ # Turn locking off by setting to 0 (dangerous: risks metadata corruption
+ # if LVM2 commands get run concurrently).
+ # Type 2 uses the external shared library locking_library.
+ # Type 3 uses built-in clustered locking.
+ locking_type = 1
+
+ # If using external locking (type 2) and initialisation fails,
+ # with this set to 1 an attempt will be made to use the built-in
+ # clustered locking.
+ # If you are using a customised locking_library you should set this to 0.
+ fallback_to_clustered_locking = 1
+
+ # If an attempt to initialise type 2 or type 3 locking failed, perhaps
+ # because cluster components such as clvmd are not running, with this set
+ # to 1 an attempt will be made to use local file-based locking (type 1).
+ # If this succeeds, only commands against local volume groups will proceed.
+ # Volume Groups marked as clustered will be ignored.
+ fallback_to_local_locking = 1
+
+ # Local non-LV directory that holds file-based locks while commands are
+ # in progress. A directory like /tmp that may get wiped on reboot is OK.
+ locking_dir = "/var/lock/lvm"
+
+ # Other entries can go here to allow you to load shared libraries
+ # e.g. if support for LVM1 metadata was compiled as a shared library use
+ # format_libraries = "liblvm2format1.so"
+ # Full pathnames can be given.
+
+ # Search this directory first for shared libraries.
+ # library_dir = "/lib"
+
+ # The external locking library to load if locking_type is set to 2.
+ # locking_library = "liblvm2clusterlock.so"
+}
+
+activation {
+ # How to fill in missing stripes if activating an incomplete volume.
+ # Using "error" will make inaccessible parts of the device return
+ # I/O errors on access. You can instead use a device path, in which
+ # case, that device will be used to in place of missing stripes.
+ # But note that using anything other than "error" with mirrored
+ # or snapshotted volumes is likely to result in data corruption.
+ missing_stripe_filler = "error"
+
+ # How much stack (in KB) to reserve for use while devices suspended
+ reserved_stack = 256
+
+ # How much memory (in KB) to reserve for use while devices suspended
+ reserved_memory = 8192
+
+ # Nice value used while devices suspended
+ process_priority = -18
+
+ # If volume_list is defined, each LV is only activated if there is a
+ # match against the list.
+ # "vgname" and "vgname/lvname" are matched exactly.
+ # "@tag" matches any tag set in the LV or VG.
+ # "@*" matches if any tag defined on the host is also set in the LV or VG
+ #
+ # volume_list = [ "vg1", "vg2/lvol1", "@tag1", "@*" ]
+
+ # Size (in KB) of each copy operation when mirroring
+ mirror_region_size = 512
+
+ # Setting to use when there is no readahead value stored in the metadata.
+ #
+ # "none" - Disable readahead.
+ # "auto" - Use default value chosen by kernel.
+ readahead = "auto"
+
+ # 'mirror_image_fault_policy' and 'mirror_log_fault_policy' define
+ # how a device failure affecting a mirror is handled.
+ # A mirror is composed of mirror images (copies) and a log.
+ # A disk log ensures that a mirror does not need to be re-synced
+ # (all copies made the same) every time a machine reboots or crashes.
+ #
+ # In the event of a failure, the specified policy will be used to
+ # determine what happens:
+ #
+ # "remove" - Simply remove the faulty device and run without it. If
+ # the log device fails, the mirror would convert to using
+ # an in-memory log. This means the mirror will not
+ # remember its sync status across crashes/reboots and
+ # the entire mirror will be re-synced. If a
+ # mirror image fails, the mirror will convert to a
+ # non-mirrored device if there is only one remaining good
+ # copy.
+ #
+ # "allocate" - Remove the faulty device and try to allocate space on
+ # a new device to be a replacement for the failed device.
+ # Using this policy for the log is fast and maintains the
+ # ability to remember sync state through crashes/reboots.
+ # Using this policy for a mirror device is slow, as it
+ # requires the mirror to resynchronize the devices, but it
+ # will preserve the mirror characteristic of the device.
+ # This policy acts like "remove" if no suitable device and
+ # space can be allocated for the replacement.
+ # Currently this is not implemented properly and behaves
+ # similarly to:
+ #
+ # "allocate_anywhere" - Operates like "allocate", but it does not
+ # require that the new space being allocated be on a
+ # device is not part of the mirror. For a log device
+ # failure, this could mean that the log is allocated on
+ # the same device as a mirror device. For a mirror
+ # device, this could mean that the mirror device is
+ # allocated on the same device as another mirror device.
+ # This policy would not be wise for mirror devices
+ # because it would break the redundant nature of the
+ # mirror. This policy acts like "remove" if no suitable
+ # device and space can be allocated for the replacement.
+
+ mirror_log_fault_policy = "allocate"
+ mirror_device_fault_policy = "remove"
+}
+
+
+####################
+# Advanced section #
+####################
+
+# Metadata settings
+#
+# metadata {
+ # Default number of copies of metadata to hold on each PV. 0, 1 or 2.
+ # You might want to override it from the command line with 0
+ # when running pvcreate on new PVs which are to be added to large VGs.
+
+ # pvmetadatacopies = 1
+
+ # Approximate default size of on-disk metadata areas in sectors.
+ # You should increase this if you have large volume groups or
+ # you want to retain a large on-disk history of your metadata changes.
+
+ # pvmetadatasize = 255
+
+ # List of directories holding live copies of text format metadata.
+ # These directories must not be on logical volumes!
+ # It's possible to use LVM2 with a couple of directories here,
+ # preferably on different (non-LV) filesystems, and with no other
+ # on-disk metadata (pvmetadatacopies = 0). Or this can be in
+ # addition to on-disk metadata areas.
+ # The feature was originally added to simplify testing and is not
+ # supported under low memory situations - the machine could lock up.
+ #
+ # Never edit any files in these directories by hand unless you
+ # you are absolutely sure you know what you are doing! Use
+ # the supplied toolset to make changes (e.g. vgcfgrestore).
+
+ # dirs = [ "/etc/lvm/metadata", "/mnt/disk2/lvm/metadata2" ]
+#}
+
+# Event daemon
+#
+# dmeventd {
+ # mirror_library is the library used when monitoring a mirror device.
+ #
+ # "libdevmapper-event-lvm2mirror.so" attempts to recover from
+ # failures. It removes failed devices from a volume group and
+ # reconfigures a mirror as necessary. If no mirror library is
+ # provided, mirrors are not monitored through dmeventd.
+
+ # mirror_library = "libdevmapper-event-lvm2mirror.so"
+
+ # snapshot_library is the library used when monitoring a snapshot device.
+ #
+ # "libdevmapper-event-lvm2snapshot.so" monitors the filling of
+ # snapshots and emits a warning through syslog, when the use of
+ # snapshot exceedes 80%. The warning is repeated when 85%, 90% and
+ # 95% of the snapshot are filled.
+
+ # snapshot_library = "libdevmapper-event-lvm2snapshot.so"
+#}
+
diff --git a/source/installer/sources/initrd/etc/mdev.conf b/source/installer/sources/initrd/etc/mdev.conf
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/source/installer/sources/initrd/etc/mdev.conf
diff --git a/source/installer/sources/initrd/etc/mke2fs.conf b/source/installer/sources/initrd/etc/mke2fs.conf
new file mode 100644
index 000000000..3795b1ed6
--- /dev/null
+++ b/source/installer/sources/initrd/etc/mke2fs.conf
@@ -0,0 +1,44 @@
+[defaults]
+ base_features = sparse_super,filetype,resize_inode,dir_index,ext_attr
+ blocksize = 4096
+ inode_size = 256
+ inode_ratio = 16384
+
+[fs_types]
+ ext3 = {
+ features = has_journal
+ }
+ ext4 = {
+ features = has_journal,extents,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
+ inode_size = 256
+ }
+ ext4dev = {
+ features = has_journal,extents,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
+ inode_size = 256
+ options = test_fs=1
+ }
+ small = {
+ blocksize = 1024
+ inode_size = 128
+ inode_ratio = 4096
+ }
+ floppy = {
+ blocksize = 1024
+ inode_size = 128
+ inode_ratio = 8192
+ }
+ news = {
+ inode_ratio = 4096
+ }
+ largefile = {
+ inode_ratio = 1048576
+ blocksize = -1
+ }
+ largefile4 = {
+ inode_ratio = 4194304
+ blocksize = -1
+ }
+ hurd = {
+ blocksize = 4096
+ inode_size = 128
+ }
diff --git a/source/installer/sources/initrd/etc/motd b/source/installer/sources/initrd/etc/motd
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/source/installer/sources/initrd/etc/motd
diff --git a/source/installer/sources/initrd/etc/mtab b/source/installer/sources/initrd/etc/mtab
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/source/installer/sources/initrd/etc/mtab
diff --git a/source/installer/sources/initrd/etc/mtools.conf b/source/installer/sources/initrd/etc/mtools.conf
new file mode 100644
index 000000000..b528c01d6
--- /dev/null
+++ b/source/installer/sources/initrd/etc/mtools.conf
@@ -0,0 +1,64 @@
+# Example mtools.conf files. Uncomment the lines which correspond to
+# your architecture and comment out the "SAMPLE FILE" line below
+#SAMPLE FILE
+
+# # Linux floppy drives
+drive a: file="/dev/fd0" exclusive
+drive b: file="/dev/fd1" exclusive
+
+# # First SCSI hard disk partition
+# drive c: file="/dev/sda1"
+
+# # First IDE hard disk partition
+# drive c: file="/dev/hda1"
+
+# # dosemu floppy image
+# drive m: file="/var/lib/dosemu/diskimage"
+
+# # dosemu hdimage
+# drive n: file="/var/lib/dosemu/diskimage" offset=3840
+
+# # Atari ramdisk image
+# drive o: file="/tmp/atari_rd" offset=136
+
+# # ZIP disk for Solaris:
+# Drive X is ZIP-100 at target 5
+# drive X: file="/dev/rdsk/c0t5d0s2" partition=4 scsi=1 nodelay
+
+# # ZIP disk for SunOS:
+# # Zip drive is at target 5, which default kernel calls tape st1 !!
+# drive Y: file="/dev/rsd5c" partition=4 scsi=1 nodelay
+
+# # autoselect zip drive/floppy on HP-UX 9/10
+# drive a: file="/dev/rdsk/c201d5" exclusive partition=4
+# drive a: file="/dev/rdsk/c201d5s0" exclusive partition=4
+# drive a: file="/dev/rfloppy/c201d0s0" exclusive
+
+# A/UX target 5 on 1st scsi bus jaz or zip
+# drive X: file="/dev/rdsk/c105d0s31" partition=4
+
+
+# Some examples for BeOS.
+# floppy drive. hardcoded in devices.c, so no real need to define it here
+#drive a: file="/dev/floppy_disk" exclusive
+# ZIP drive on SCSI ID 6
+#drive z: file="/dev/scsi_disk_060" offset=16384 fat_bits=16
+
+# SCO Unix 3.2v4
+# # Floppy disk drives
+#
+# drive a: file="/dev/install" exclusive
+# drive b: file="/dev/install1" exclusive
+#
+# # SCSI hard disk partitions
+#
+# drive c: file="/dev/dsk/0sC"
+# drive d: file="/dev/dsk/0sD"
+# drive e: file="/dev/dsk/0sE"
+# drive f: file="/dev/dsk/0sF"
+# drive g: file="/dev/dsk/0sG"
+# drive h: file="/dev/dsk/0sH"
+
+# # uncomment the following line to display all file names in lower
+# # case by default
+# mtools_lower_case=1
diff --git a/source/installer/sources/initrd/etc/networks b/source/installer/sources/initrd/etc/networks
new file mode 100644
index 000000000..50d5162ee
--- /dev/null
+++ b/source/installer/sources/initrd/etc/networks
@@ -0,0 +1,10 @@
+#
+# networks This file describes a number of netname-to-address
+# mappings for the TCP/IP subsystem. It is mostly
+# used at boot time, when no name servers are running.
+#
+
+loopback 127.0.0.0
+localnet 127.0.0.0
+
+# End of networks.
diff --git a/source/installer/sources/initrd/etc/nsswitch.conf b/source/installer/sources/initrd/etc/nsswitch.conf
new file mode 100644
index 000000000..b21796bba
--- /dev/null
+++ b/source/installer/sources/initrd/etc/nsswitch.conf
@@ -0,0 +1,42 @@
+#
+# /etc/nsswitch.conf
+#
+# An example Name Service Switch config file. This file should be
+# sorted with the most-used services at the beginning.
+#
+# The entry '[NOTFOUND=return]' means that the search for an
+# entry should stop if the search in the previous entry turned
+# up nothing. Note that if the search failed due to some other reason
+# (like no NIS server responding) then the search continues with the
+# next entry.
+#
+# Legal entries are:
+#
+# nisplus or nis+ Use NIS+ (NIS version 3)
+# nis or yp Use NIS (NIS version 2), also called YP
+# dns Use DNS (Domain Name Service)
+# files Use the local files
+# [NOTFOUND=return] Stop searching if not found so far
+#
+
+passwd: files
+shadow: files
+group: files
+
+hosts: files dns
+
+services: [NOTFOUND=return] files
+networks: [NOTFOUND=return] files
+protocols: [NOTFOUND=return] files
+rpc: [NOTFOUND=return] files
+ethers: [NOTFOUND=return] files
+netmasks: [NOTFOUND=return] files
+bootparams: [NOTFOUND=return] files
+
+netgroup:
+
+publickey:
+
+automount: files
+aliases: files
+
diff --git a/source/installer/sources/initrd/etc/passwd b/source/installer/sources/initrd/etc/passwd
new file mode 100644
index 000000000..d89e1ba5f
--- /dev/null
+++ b/source/installer/sources/initrd/etc/passwd
@@ -0,0 +1,21 @@
+root:x:0:0::/root:/bin/bash
+bin:x:1:1:bin:/bin:
+daemon:x:2:2:daemon:/sbin:
+adm:x:3:4:adm:/var/log:
+lp:x:4:7:lp:/var/spool/lpd:
+sync:x:5:0:sync:/sbin:/bin/sync
+shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
+halt:x:7:0:halt:/sbin:/sbin/halt
+mail:x:8:12:mail:/:
+news:x:9:13:news:/usr/lib/news:
+uucp:x:10:14:uucp:/var/spool/uucppublic:
+operator:x:11:0:operator:/root:/bin/bash
+games:x:12:100:games:/usr/games:
+ftp:x:14:50::/home/ftp:
+smmsp:x:25:25:smmsp:/var/spool/clientmqueue:
+mysql:x:27:27:MySQL:/var/lib/mysql:/bin/bash
+rpc:x:32:32:RPC portmap user:/:/bin/false
+sshd:x:33:33:sshd:/:
+gdm:x:42:42:GDM:/var/state/gdm:/bin/bash
+pop:x:90:90:POP:/:
+nobody:x:99:99:nobody:/:
diff --git a/source/installer/sources/initrd/etc/pcmcia/config.opts b/source/installer/sources/initrd/etc/pcmcia/config.opts
new file mode 100644
index 000000000..5b8d5faf3
--- /dev/null
+++ b/source/installer/sources/initrd/etc/pcmcia/config.opts
@@ -0,0 +1,71 @@
+#
+# Local PCMCIA Configuration File
+#
+#----------------------------------------------------------------------
+#
+# System resources available for PCMCIA cards
+#
+# NOTE: these settings have no effect on resources assigned to a
+# CardBus bridge device itself; this file only affects resources
+# assigned to cards. Also, interrupt settings here will only affect
+# ISA bus interrupts assigned to 16-bit cards. PCI interrupts
+# generally can't be reconfigured.
+#
+# With the kernel PCMCIA subsystem, these settings also have no effect
+# at all on resources used for 32-bit CardBus cards. Those are set by
+# the PCI hotplug subsystem.
+#
+
+# These are the official ports to use from pcmcia-cs:
+#include port 0x100-0x4ff, port 0x800-0x8ff, port 0xc00-0xcff
+# However, ports 0x810-0x81f hurt on some DELL machines and
+# ports 0x3b0-0x3df hurt on some FSC machines, so we use this port
+# list instead:
+include port 0x100-0x3af, port 0x3e0-0x4ff, port 0xc00-0xcff
+
+include memory 0xc0000-0xfffff
+include memory 0xa0000000-0xa0ffffff, memory 0x60000000-0x60ffffff
+
+# High port numbers do not always work...
+# include port 0x1000-0x17ff
+
+# Extra port range for IBM Token Ring
+include port 0xa00-0xaff
+
+# Resources we should not use, even if they appear to be available
+
+# First built-in serial port
+exclude irq 4
+# Second built-in serial port
+#exclude irq 3
+# First built-in parallel port
+exclude irq 7
+
+#----------------------------------------------------------------------
+
+# Examples of options for loadable modules
+
+# To fix sluggish network with IBM ethernet adapter...
+#module "pcnet_cs" opts "mem_speed=600"
+
+# Options for IBM Token Ring adapters
+#module "ibmtr_cs" opts "mmiobase=0xd0000 srambase=0xd4000"
+
+# Options for Raylink/WebGear driver: uncomment only one line...
+# These are the default settings for use with the WebGear Windows driver:
+#module "ray_cs" opts "essid=NETWORK_NAME hop_dwell=128 beacon_period=256 translate=0"
+# Generic ad-hoc network
+#module "ray_cs" opts "essid=ADHOC_ESSID hop_dwell=128 beacon_period=256 translate=1"
+# Infrastructure network for older cards
+#module "ray_cs" opts "net_type=1 essid=ESSID1"
+# Infrastructure network for WebGear
+#module "ray_cs" opts "net_type=1 essid=ESSID1 translate=1 hop_dwell=128 beacon_period=256"
+
+# Options for WaveLAN/IEEE driver (AccessPoint mode)...
+#module "wvlan_cs" opts "station_name=MY_PC"
+# Options for WaveLAN/IEEE driver (ad-hoc mode)...
+#module "wvlan_cs" opts "port_type=3 channel=1 station_name=MY_PC"
+
+# Options for Xircom Netwave driver...
+#module "netwave_cs" opts "domain=0x100 scramble_key=0x0"
+
diff --git a/source/installer/sources/initrd/etc/profile b/source/installer/sources/initrd/etc/profile
new file mode 100644
index 000000000..c728b165b
--- /dev/null
+++ b/source/installer/sources/initrd/etc/profile
@@ -0,0 +1,35 @@
+# commands common to all logins
+PATH="$PATH:/bin:/sbin:/usr/bin:/usr/lib/setup"
+PATH="$PATH:/mnt/usr/local/bin:/mnt/usr/bin:/mnt/bin"
+PATH="$PATH:/mnt/usr/local/sbin:/mnt/usr/sbin:/mnt/sbin"
+PATH="$PATH:/mnt/linux/usr/local/bin:/mnt/linux/usr/bin:/mnt/linux/bin"
+PATH="$PATH:/mnt/linux/usr/local/sbin:/mnt/linux/usr/sbin:/mnt/linux/sbin"
+
+# Allow a user to set the default TERM entry by specifying TERM=<name>
+# as a kernel command line parameter:
+if cat /proc/cmdline | grep "TERM=[a-zA-Z0-9]" 1> /dev/null 2> /dev/null ; then
+ export TERM=$( sed 's/.*TERM=\([^ ]*\).*/\1/' < /proc/cmdline )
+elif cat /proc/cmdline | grep console=ttyS 1> /dev/null 2> /dev/null ; then
+ export TERM=vt100
+else
+ export TERM=linux
+fi
+HOME=/root
+LESS=-MM
+
+# Set command line prompt:
+PS1='\u@\h:\w# '
+PS2='> '
+
+ignoreeof=10
+export HOME PATH DISPLAY LESS TERM PS1 PS2 ignoreeof
+umask 022
+
+# Append any additional sh scripts found in /etc/profile.d/:
+for profile_script in /etc/profile.d/*.sh ; do
+ if [ -x $profile_script ]; then
+ . $profile_script
+ fi
+done
+unset profile_script
+
diff --git a/source/installer/sources/initrd/etc/profile.d/coreutils-dircolors.sh b/source/installer/sources/initrd/etc/profile.d/coreutils-dircolors.sh
new file mode 100755
index 000000000..57670d6ef
--- /dev/null
+++ b/source/installer/sources/initrd/etc/profile.d/coreutils-dircolors.sh
@@ -0,0 +1,55 @@
+# Slackware color ls profile script for /bin/sh-like shells.
+
+# Set up LS_OPTIONS environment variable.
+# This contains extra command line options to use with ls.
+# The default ones are:
+# -F = show '/' for dirs, '*' for executables, etc.
+# -T 0 = don't trust tab spacing when formatting ls output.
+# -b = better support for special characters
+OPTIONS="-F -b -T 0"
+
+# COLOR needs one of these arguments:
+# 'auto' colorizes output to ttys, but not pipes.
+# 'always' adds color characters to all output.
+# 'never' shuts colorization off.
+COLOR=auto
+
+# This section shouldn't require any user adjustment since it is
+# simply setting the LS_OPTIONS variable using the information
+# already given above:
+LS_OPTIONS=" $OPTIONS --color=$COLOR ";
+export LS_OPTIONS;
+unset COLOR
+unset OPTIONS
+
+# Set up aliases to use color ls by default. A few additional
+# aliases like 'dir', 'vdir', etc, are some ancient artifacts
+# from 1992 or so... possibly they should be disabled, but maybe
+# someone out there is actually using them? :-)
+# Assume shell aliases are supported. Ash is going to freak out
+# when it sees zsh syntax anyway, so whatever.
+alias ls='/bin/ls $LS_OPTIONS';
+alias dir='/bin/ls $LS_OPTIONS --format=vertical';
+alias vdir='/bin/ls $LS_OPTIONS --format=long';
+alias d=dir;
+alias v=vdir;
+
+# Just for fun, here are the old sh/ash style shell functions.
+# this script isn't currently working with ash (and makes some noisy
+# error messages), but perhaps these will still be of use to
+# someone...
+#ls () { /bin/ls $LS_OPTIONS "$@" ; };
+#dir () { /bin/ls $LS_OPTIONS --format=vertical "$@" ; };
+#vdir () { /bin/ls $LS_OPTIONS --format=long "$@" ; };
+#d () { dir "$@" ; };
+#v () { vdir "$@" ; };
+
+# Set up the LS_COLORS environment:
+if [ -f $HOME/.dir_colors ]; then
+ eval `/bin/dircolors -b $HOME/.dir_colors`
+elif [ -f /etc/DIR_COLORS ]; then
+ eval `/bin/dircolors -b /etc/DIR_COLORS`
+else
+ eval `/bin/dircolors -b`
+fi
+
diff --git a/source/installer/sources/initrd/etc/profile.d/glibc.sh b/source/installer/sources/initrd/etc/profile.d/glibc.sh
new file mode 100755
index 000000000..979f4879e
--- /dev/null
+++ b/source/installer/sources/initrd/etc/profile.d/glibc.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+# Set more relaxed (glibc-2.3.5 like) malloc() checking.
+#
+# This relaxes the default paranoia level so that it reports
+# bugs, but does not kill the questionable process. You can
+# get away with running broken programs with this setting,
+# but at a possible performance and security cost.
+#export MALLOC_CHECK_=1
diff --git a/source/installer/sources/initrd/etc/protocols b/source/installer/sources/initrd/etc/protocols
new file mode 100644
index 000000000..db3254c97
--- /dev/null
+++ b/source/installer/sources/initrd/etc/protocols
@@ -0,0 +1,146 @@
+#
+# Internet protocols
+#
+# $FreeBSD: src/etc/protocols,v 1.16 2002/02/10 08:19:58 dd Exp $
+# from: @(#)protocols 5.1 (Berkeley) 4/17/89
+#
+# See also http://www.iana.org/assignments/protocol-numbers
+#
+ip 0 IP # internet protocol, pseudo protocol number
+#hopopt 0 HOPOPT # hop-by-hop options for ipv6
+icmp 1 ICMP # internet control message protocol
+igmp 2 IGMP # internet group management protocol
+ggp 3 GGP # gateway-gateway protocol
+ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'')
+st2 5 ST2 # ST2 datagram mode (RFC 1819)
+tcp 6 TCP # transmission control protocol
+cbt 7 CBT # CBT, Tony Ballardie <A.Ballardie@cs.ucl.ac.uk>
+egp 8 EGP # exterior gateway protocol
+igp 9 IGP # any private interior gateway (Cisco: for IGRP)
+bbn-rcc 10 BBN-RCC-MON # BBN RCC Monitoring
+nvp 11 NVP-II # Network Voice Protocol
+pup 12 PUP # PARC universal packet protocol
+argus 13 ARGUS # ARGUS
+emcon 14 EMCON # EMCON
+xnet 15 XNET # Cross Net Debugger
+chaos 16 CHAOS # Chaos
+udp 17 UDP # user datagram protocol
+mux 18 MUX # Multiplexing protocol
+dcn 19 DCN-MEAS # DCN Measurement Subsystems
+hmp 20 HMP # host monitoring protocol
+prm 21 PRM # packet radio measurement protocol
+xns-idp 22 XNS-IDP # Xerox NS IDP
+trunk-1 23 TRUNK-1 # Trunk-1
+trunk-2 24 TRUNK-2 # Trunk-2
+leaf-1 25 LEAF-1 # Leaf-1
+leaf-2 26 LEAF-2 # Leaf-2
+rdp 27 RDP # "reliable datagram" protocol
+irtp 28 IRTP # Internet Reliable Transaction Protocol
+iso-tp4 29 ISO-TP4 # ISO Transport Protocol Class 4
+netblt 30 NETBLT # Bulk Data Transfer Protocol
+mfe-nsp 31 MFE-NSP # MFE Network Services Protocol
+merit-inp 32 MERIT-INP # MERIT Internodal Protocol
+sep 33 SEP # Sequential Exchange Protocol
+3pc 34 3PC # Third Party Connect Protocol
+idpr 35 IDPR # Inter-Domain Policy Routing Protocol
+xtp 36 XTP # Xpress Tranfer Protocol
+ddp 37 DDP # Datagram Delivery Protocol
+idpr-cmtp 38 IDPR-CMTP # IDPR Control Message Transport Proto
+tp++ 39 TP++ # TP++ Transport Protocol
+il 40 IL # IL Transport Protocol
+ipv6 41 IPV6 # ipv6
+sdrp 42 SDRP # Source Demand Routing Protocol
+ipv6-route 43 IPV6-ROUTE # routing header for ipv6
+ipv6-frag 44 IPV6-FRAG # fragment header for ipv6
+idrp 45 IDRP # Inter-Domain Routing Protocol
+rsvp 46 RSVP # Resource ReSerVation Protocol
+gre 47 GRE # Generic Routing Encapsulation
+mhrp 48 MHRP # Mobile Host Routing Protocol
+bna 49 BNA # BNA
+esp 50 ESP # encapsulating security payload
+ah 51 AH # authentication header
+i-nlsp 52 I-NLSP # Integrated Net Layer Security TUBA
+swipe 53 SWIPE # IP with Encryption
+narp 54 NARP # NBMA Address Resolution Protocol
+mobile 55 MOBILE # IP Mobility
+tlsp 56 TLSP # Transport Layer Security Protocol
+skip 57 SKIP # SKIP
+ipv6-icmp 58 IPV6-ICMP # ICMP for IPv6
+ipv6-nonxt 59 IPV6-NONXT # no next header for ipv6
+ipv6-opts 60 IPV6-OPTS # destination options for ipv6
+# 61 # any host internal protocol
+cftp 62 CFTP # CFTP
+# 63 # any local network
+sat-expak 64 SAT-EXPAK # SATNET and Backroom EXPAK
+kryptolan 65 KRYPTOLAN # Kryptolan
+rvd 66 RVD # MIT Remote Virtual Disk Protocol
+ippc 67 IPPC # Internet Pluribus Packet Core
+# 68 # any distributed file system
+sat-mon 69 SAT-MON # SATNET Monitoring
+visa 70 VISA # VISA Protocol
+ipcv 71 IPCV # Internet Packet Core Utility
+cpnx 72 CPNX # Computer Protocol Network Executive
+cphb 73 CPHB # Computer Protocol Heart Beat
+wsn 74 WSN # Wang Span Network
+pvp 75 PVP # Packet Video Protocol
+br-sat-mon 76 BR-SAT-MON # Backroom SATNET Monitoring
+sun-nd 77 SUN-ND # SUN ND PROTOCOL-Temporary
+wb-mon 78 WB-MON # WIDEBAND Monitoring
+wb-expak 79 WB-EXPAK # WIDEBAND EXPAK
+iso-ip 80 ISO-IP # ISO Internet Protocol
+vmtp 81 VMTP # Versatile Message Transport
+secure-vmtp 82 SECURE-VMTP # SECURE-VMTP
+vines 83 VINES # VINES
+ttp 84 TTP # TTP
+nsfnet-igp 85 NSFNET-IGP # NSFNET-IGP
+dgp 86 DGP # Dissimilar Gateway Protocol
+tcf 87 TCF # TCF
+eigrp 88 EIGRP # Enhanced Interior Routing Protocol (Cisco)
+ospf 89 OSPFIGP # Open Shortest Path First IGP
+sprite-rpc 90 Sprite-RPC # Sprite RPC Protocol
+larp 91 LARP # Locus Address Resolution Protocol
+mtp 92 MTP # Multicast Transport Protocol
+ax.25 93 AX.25 # AX.25 Frames
+ipip 94 IPIP # Yet Another IP encapsulation
+micp 95 MICP # Mobile Internetworking Control Pro.
+scc-sp 96 SCC-SP # Semaphore Communications Sec. Pro.
+etherip 97 ETHERIP # Ethernet-within-IP Encapsulation
+encap 98 ENCAP # Yet Another IP encapsulation
+# 99 # any private encryption scheme
+gmtp 100 GMTP # GMTP
+ifmp 101 IFMP # Ipsilon Flow Management Protocol
+pnni 102 PNNI # PNNI over IP
+pim 103 PIM # Protocol Independent Multicast
+aris 104 ARIS # ARIS
+scps 105 SCPS # SCPS
+qnx 106 QNX # QNX
+a/n 107 A/N # Active Networks
+ipcomp 108 IPComp # IP Payload Compression Protocol
+snp 109 SNP # Sitara Networks Protocol
+compaq-peer 110 Compaq-Peer # Compaq Peer Protocol
+ipx-in-ip 111 IPX-in-IP # IPX in IP
+vrrp 112 VRRP # Virtual Router Redundancy Protocol
+pgm 113 PGM # PGM Reliable Transport Protocol
+# 114 # any 0-hop protocol
+l2tp 115 L2TP # Layer Two Tunneling Protocol
+ddx 116 DDX # D-II Data Exchange
+iatp 117 IATP # Interactive Agent Transfer Protocol
+st 118 ST # Schedule Transfer
+srp 119 SRP # SpectraLink Radio Protocol
+uti 120 UTI # UTI
+smp 121 SMP # Simple Message Protocol
+sm 122 SM # SM
+ptp 123 PTP # Performance Transparency Protocol
+isis 124 ISIS # ISIS over IPv4
+fire 125 FIRE
+crtp 126 CRTP # Combat Radio Transport Protocol
+crudp 127 CRUDP # Combat Radio User Datagram
+sscopmce 128 SSCOPMCE
+iplt 129 IPLT
+sps 130 SPS # Secure Packet Shield
+pipe 131 PIPE # Private IP Encapsulation within IP
+sctp 132 SCTP # Stream Control Transmission Protocol
+fc 133 FC # Fibre Channel
+# 134-254 # Unassigned
+divert 254 DIVERT # Divert pseudo-protocol [non IANA]
+# 255 # Reserved
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.S b/source/installer/sources/initrd/etc/rc.d/rc.S
new file mode 100755
index 000000000..38317b4df
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.S
@@ -0,0 +1,250 @@
+#!/bin/sh
+# rc.S: Basic system initialization.
+
+# Any /etc/mtab that exists here is old, so we start with a new one:
+/bin/rm -f /etc/mtab{,~,.tmp} && /bin/touch /etc/mtab
+
+# Add (fake) entry for / to /etc/mtab:
+/sbin/mount -f -w /dev/initramfs / -t tmpfs 1> /dev/null
+
+# Mount /proc:
+/sbin/mount -v proc /proc -t proc 1> /dev/null
+
+# Mount sysfs next:
+/sbin/mount -v sysfs /sys -t sysfs 1> /dev/null
+
+# Activate swap:
+/sbin/swapon -a 1> /dev/null
+
+if [ -x /sbin/ldconfig ]; then
+ /sbin/ldconfig 1> /dev/null
+fi
+
+## Detect serial console from kernel command line:
+#if cat /proc/cmdline | grep console=ttyS 1> /dev/null 2> /dev/null ; then
+# SERIAL_CONSOLE="true"
+#fi
+
+# System logger (mostly to eat annoying messages):
+/sbin/syslogd 2> /dev/null
+sleep 1
+/sbin/klogd -c 3 1> /dev/null
+
+# Try to load the loop module:
+modprobe loop 1> /dev/null 2> /dev/null
+
+# Run udev:
+if ! grep -wq noudev /proc/cmdline ; then
+ /bin/bash /etc/rc.d/rc.udev start
+
+ # Re-assemble RAID volumes:
+ /sbin/mdadm -E -s > /etc/mdadm.conf
+ /sbin/mdadm -S -s
+ /sbin/mdadm -A -s
+ # This seems to make the kernel see partitions more reliably:
+ fdisk -l /dev/md* 1> /dev/null 2> /dev/null
+else
+ # Run our old detection routines:
+
+ # Look for USB keyboard or storage:
+ /etc/rc.d/rc.usb start
+ sleep 3
+
+ # Look for IEEE1394 devices:
+ if grep 1394 /proc/pci 1> /dev/null 2> /dev/null ; then
+ /etc/rc.d/rc.ieee1394 start
+ #sleep 3
+ fi
+
+ # Load additional install floppies:
+ for NEWDISK in 2 ; do
+ if [ ! -r /etc/disk${NEWDISK} ]; then
+ while [ 0 ]; do
+ echo
+ echo -n "Insert install.${NEWDISK} floppy disk to be loaded into RAM disk and press ENTER"
+ read readfoo;
+ if [ "$readfoo" = "Q" -o "$readfoo" = "q" ]; then
+ break;
+ fi
+ echo -n "Loading install.${NEWDISK} floppy into RAM disk... "
+ ( cd / ; cat /dev/fd0 | zcat 2> /dev/null | tar xf - )
+ if [ -r /etc/disk${NEWDISK} ]; then
+ echo "done."
+ echo
+ break;
+ else
+ echo "Error. (reload or enter Q)"
+ echo
+ continue;
+ fi
+ done
+ fi
+ done
+
+ ### PROBABLY USELESS WITHOUT SOME TIMED DELAY ABOVE
+ ## Start USB again (in case we missed a USB keyboard)
+ #/etc/rc.d/rc.usb start
+
+ # Make detected partitions:
+ /dev/makedevs.sh
+
+ ## Not needed with CONFIG_SCSI_MULTI_LUN=y
+ #unset SCAN
+ ## Now we should rescan the "SCSI" bus to look for new USB or firewire devices
+ ## that look like SCSI devices:
+ #if [ -r /proc/bus/usb/devices ]; then
+ # if cat /proc/bus/usb/devices | grep -w usb-storage 1> /dev/null 2> /dev/null ; then
+ # SCAN="true"
+ # fi
+ #fi
+ #if [ -r /proc/bus/ieee1394/devices ]; then
+ # if cat /proc/bus/ieee1394/devices | grep -w SBP2 1> /dev/null 2> /dev/null ; then
+ # SCAN="true"
+ # fi
+ #fi
+ #if [ "$SCAN" = "true" ]; then
+ # if ! cat /proc/cmdline | grep -q noscanluns 2> /dev/null ; then
+ # echo "Detected new USB/IEEE1394 storage devices... scanning all LUNs."
+ # echo "(to skip, give a 'noscanluns' kernel option at boot)"
+ # #sleep 5
+ # sh /sbin/rescan-scsi-bus -l
+ # #sleep 1
+ # fi
+ #fi
+ #unset SCAN
+
+ # Re-assemble RAID volumes:
+ /sbin/mdadm -E -s > /etc/mdadm.conf
+ /sbin/mdadm -S -s
+ /sbin/mdadm -A -s
+ # This seems to make the kernel see partitions more reliably:
+ fdisk -l /dev/md* 1> /dev/null 2> /dev/null
+
+ # Check /proc/partitions again:
+ /dev/makedevs.sh
+
+ # Create LVM nodes:
+ /dev/devmap_mknod.sh
+
+fi # End Run udev:
+
+# Here's the situation. Because of the practice of keeping the local
+# time (rather than UTC) in the system's clock, at any given time half
+# of the people doing an install will be creating files that upon
+# reboot will appear to have been created in the future.
+#
+# There are a lot of things that aren't happy when that happens. The
+# one that screams the most loudly is e2fsck, and we don't want to
+# anger that! Sometimes it even proceeds to check the partitions just
+# to be sure the user is fully punished.
+#
+# But, there's a simple solution. If we set the (temporary) Linux clock
+# to yesterday (-24h), then there's no way that could occur. Everything
+# on the system will be in the past (but not too far in the past).
+# Since files will quickly be put into use and given the correct after
+# reboot, this really shouldn't have a negative impact. Plus, it affects
+# only newly created files during installation -- any file shipped in a
+# package will have an accurate time of creation. (for its timezone ;-)
+#
+# Update: We have to use 2 days ago, or chroot()+timezone offset might
+# still be in the future... <sigh>
+#
+touch /.today
+/bin/sh /sbin/fakedate
+
+if [ -x /etc/rc.d/rc.inet1 ]; then
+ /bin/sh /etc/rc.d/rc.inet1
+fi
+
+# pcmciautils is installing rc.pcmcia as chmod 644, so we'll change that.
+# It won't be run at boot time, but it'll make it easy for the pcmcia script
+# or to run it from the command line.
+chmod 755 /etc/rc.d/rc.pcmcia
+
+# Scan for existing LVM partitions:
+# We will run 'vgscan -ay' in the setup to prevent a 10 second sleep;
+vgscan --mknodes 2> /tmp/foo
+cat /tmp/foo | uniq
+rm -f /tmp/foo
+
+if [ -x /etc/rc.d/rc.font ]; then
+ /bin/sh /etc/rc.d/rc.font
+fi
+
+# Don't automatically blank the screen, or it will go black during the install
+# process when stray keystrokes might be dangerous:
+/bin/setterm -blank 0
+
+echo > /etc/motd
+echo "`/bin/uname -a | /bin/cut -d\ -f1,3`." >> /etc/motd
+echo >> /etc/motd
+cat << EOF >> /etc/motd
+If you're upgrading an existing Slackware system, you might want to
+remove old packages before you run 'setup' to install the new ones. If
+you don't, your system will still work but there might be some old files
+left laying around on your drive.
+
+Just mount your Linux partitions under /mnt and type 'pkgtool'. If you
+don't know how to mount your partitions, type 'pkgtool' and it will tell
+you how it's done.
+
+To partition your hard drive(s), use 'cfdisk' or 'fdisk'.
+To start the main installation (after partitioning), type 'setup'.
+
+EOF
+
+# Dropbear seems to handle the $PATH correctly now...
+#echo > /etc/motd.net
+#echo "First command to run is 'source /etc/profile'." >> /etc/motd.net
+#echo "This will setup the PATH for you." >> /etc/motd.net
+#echo >> /etc/motd.net
+
+# If possible, figure out what kernel we just booted with:
+unset SLACK_KERNEL
+for ARG in `cat /proc/cmdline` ; do
+ if [ "`echo $ARG | cut -f 1 -d =`" = "SLACK_KERNEL" ]; then
+ IMAGE="`echo $ARG | cut -f 2 -d =`"
+ SLACK_KERNEL=$IMAGE
+ fi
+done
+export SLACK_KERNEL
+
+. /etc/profile
+
+clear
+if ! cat /proc/cmdline | grep -q 'kbd=' 2> /dev/null ; then
+ echo
+ echo
+ echo "<OPTION TO LOAD SUPPORT FOR NON-US KEYBOARD>"
+ echo
+ echo "If you are not using a US keyboard, you may now load a different"
+ echo "keyboard map. To select a different keyboard map, please enter 1"
+ echo "now. To continue using the US map, just hit enter."
+ echo
+ echo -n "Enter 1 to select a keyboard map: "
+ read ONE
+ if [ "$ONE" = "1" ]; then
+ /usr/lib/setup/SeTkeymap
+ fi
+else
+ for ARG in `cat /proc/cmdline` ; do
+ if [ "`echo $ARG | cut -f1 -d=`" = "kbd" ]; then
+ BMAP="`echo $ARG | cut -f2 -d=`.bmap"
+ fi
+ done
+ tar xzOf /etc/keymaps.tar.gz $BMAP | loadkmap
+ unset BMAP
+fi
+clear
+
+# Provision for unattended network configuration:
+/usr/lib/setup/SeTnet boot
+# Start dropbear ssh server (only if a configured interface is present):
+/etc/rc.d/rc.dropbear start
+
+# Fake login: (fooled ya! ;^)
+
+cat /etc/issue
+echo -n "slackware login: "
+read BOGUS_LOGIN
+cat /etc/motd
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.dropbear b/source/installer/sources/initrd/etc/rc.d/rc.dropbear
new file mode 100755
index 000000000..a9ed47fd5
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.dropbear
@@ -0,0 +1,58 @@
+#!/bin/sh
+# Start/stop/restart the dropbear secure shell server:
+
+# Terminate the script now if we have no interface with an IP address:
+if ! `ip -f inet -o addr show | grep -v " lo " 1>/dev/null 2>/dev/null` ; then
+ exit 1
+fi
+
+dropbear_start() {
+ # Create host keys if needed.
+ if [ ! -f /etc/dropbear/dropbear_rsa_host_key ]; then
+ /bin/dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
+ fi
+ if [ ! -f /etc/dropbear/dropbear_dss_host_key ]; then
+ /bin/dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key
+ fi
+ touch /var/log/lastlog # The file is missing in the installer
+ /sbin/dropbear 2>> /var/log/dropbear.log
+}
+
+dropbear_stop() {
+ killall dropbear
+}
+
+dropbear_restart() {
+ if [ -r /var/run/dropbear.pid ]; then
+ echo "WARNING: killing listener process only. To kill every dropbear process, you "
+ echo " must use 'rc.dropbear stop'. 'rc.dropbear restart' kills only the "
+ echo " parent dropbear to allow an admin logged in through dropbear to use "
+ echo " 'rc.dropbear restart' without being cut off. If dropbear has been "
+ echo " upgraded, new connections will now use the new version, which should "
+ echo " be a safe enough approach."
+ kill `cat /var/run/dropbear.pid`
+ else
+ echo "WARNING: There does not appear to be a parent instance of dropbear running."
+ echo " If you really want to kill all running instances of dropbear "
+ echo " (including any sessions currently in use), run "
+ echo " '/etc/rc.d/rc.dropbear stop' instead."
+ exit 1
+ fi
+ sleep 1
+ dropbear_start
+}
+
+case "$1" in
+'start')
+ dropbear_start
+ ;;
+'stop')
+ dropbear_stop
+ ;;
+'restart')
+ dropbear_restart
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
+
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.font b/source/installer/sources/initrd/etc/rc.d/rc.font
new file mode 100755
index 000000000..69e69baaa
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.font
@@ -0,0 +1,45 @@
+#!/bin/sh
+# Load terminus font. This is either to resize the terminal to be close to default,
+# or to simply load a better looking font for the installer.
+
+# In case udev has not yet prepared the tty devices, create them:
+create_tty() {
+ if [ ! -r /dev/tty1 ]; then
+ mknod /dev/tty1 c 4 1
+ chown root:tty /dev/tty1
+ chmod 620 /dev/tty1
+ fi
+ if [ ! -r /dev/tty2 ]; then
+ mknod /dev/tty2 c 4 2
+ chown root:tty /dev/tty2
+ chmod 620 /dev/tty2
+ fi
+ if [ ! -r /dev/tty3 ]; then
+ mknod /dev/tty3 c 4 3
+ chown root:tty /dev/tty3
+ chmod 620 /dev/tty3
+ fi
+ if [ ! -r /dev/tty4 ]; then
+ mknod /dev/tty4 c 4 4
+ chown root:tty /dev/tty4
+ chmod 620 /dev/tty4
+ fi
+}
+
+if ! grep -wq nofont /proc/cmdline ; then
+ if [ ! "$(cat /proc/fb)" = "" ] ; then
+ if [ -r /usr/share/kbd/consolefonts/ter-120b.psf.gz ]; then
+ create_tty
+ for tty in /dev/tty{1,2,3,4} ; do
+ setfont -C $tty /usr/share/kbd/consolefonts/ter-120b.psf.gz
+ done
+ fi
+ else
+ if [ -r /usr/share/kbd/consolefonts/ter-c14v.psf.gz ]; then
+ create_tty
+ for tty in /dev/tty{1,2,3,4} ; do
+ setfont -C $tty /usr/share/kbd/consolefonts/ter-c14v.psf.gz
+ done
+ fi
+ fi
+fi
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.ieee1394 b/source/installer/sources/initrd/etc/rc.d/rc.ieee1394
new file mode 100755
index 000000000..2701229dc
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.ieee1394
@@ -0,0 +1,48 @@
+#!/bin/sh
+# rc.ieee1394: search for IEEE1394 (firewire) devices needed for installation.
+
+# This is a function to unload the IEEE1394 (firewire) modules:
+ieee1394_stop() {
+ modprobe -r sbp2 ohci1394
+ modprobe -r ieee1394
+}
+
+# This is a function to attempt to enable a IEEE1394 storage device.
+# If this causes problems for you, use "noieee1394" as a kernel
+# command line option at boot time.
+ieee1394_start() {
+ # If noieee1394 was given at boot, skip.
+ if ! cat /proc/cmdline | grep noieee1394 1> /dev/null 2> /dev/null ; then
+ # If there aren't even any modules for this kernel, skip.
+ if [ -d /lib/modules/`uname -r` ]; then
+ # If ieee1394 is already loaded, skip.
+ if ! grep ieee1394 /proc/modules 1> /dev/null 2> /dev/null ; then
+ echo "Probing for IEEE1394 (Firewire) controllers."
+ echo "(to skip, give a 'noieee1394' kernel option at boot)"
+ #sleep 5
+ modprobe -q ieee1394 >/dev/null 2>&1
+ # Try to load hub module:
+ modprobe -q ohci1394 >/dev/null 2>&1
+ # Attempt to load storage support.
+ modprobe -q sbp2 >/dev/null 2>&1
+ fi
+ fi
+ fi
+}
+
+case "$1" in
+'start')
+ ieee1394_start
+ ;;
+'stop')
+ ieee1394_stop
+ ;;
+'restart')
+ ieee1394_stop
+ sleep 5
+ ieee1394_start
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
+
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.inet1 b/source/installer/sources/initrd/etc/rc.d/rc.inet1
new file mode 100755
index 000000000..370de0061
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.inet1
@@ -0,0 +1,28 @@
+#! /bin/sh
+#
+# rc.inet1 This shell script boots up the base INET system.
+#
+# Version: @(#)/etc/rc.d/rc.inet1 1.01 05/27/93
+#
+
+TMP=/var/log/setup/tmp
+mkdir -p $TMP/dhcpc
+
+HOSTNAME=`cat /etc/HOSTNAME`
+/bin/hostname `cat /etc/HOSTNAME | cut -f1 -d .`
+
+# Attach the loopback device.
+/sbin/ifconfig lo 127.0.0.1
+/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
+
+# In case we use udev -
+# Try to get information from a local DHCP server and store that for later:
+if ! grep -wq nodhcp /proc/cmdline ; then
+ for EDEV in $(cat /proc/net/dev | grep ':' | sed -e "s/^ *//" | cut -f1 -d: | grep -v lo) ; do
+ if grep -q $(echo ${EDEV}: | cut -f 1 -d :): /proc/net/wireless ; then
+ continue # skip wireless interfaces
+ fi
+ /sbin/dhcpcd -t 35 -L -T $EDEV 1>/etc/dhcpc/dhcpcd-${EDEV}.info 2>/dev/null &
+ done
+fi
+
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.pcmcia b/source/installer/sources/initrd/etc/rc.d/rc.pcmcia
new file mode 100755
index 000000000..1f21be84e
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.pcmcia
@@ -0,0 +1,65 @@
+#!/bin/sh
+#
+# rc.pcmcia: Script to initialize PCMCIA subsystem.
+# Based in an example found in cardmgr-to-pcmciautils.txt
+# and in Slackware rc.pcmcia found in pcmcia-cs package.
+#
+
+# Set this to the driver to use, one of:
+# probe, yenta_socket, i82365, i82092, pd6729, tcic, etc.
+#
+DRIVER=probe
+DRIVER_OPTS=
+
+case "$1" in
+ start)
+ echo "Starting PCMCIA services:"
+ fgrep -q pcmcia /proc/devices
+ if [ $? -ne 0 ] ; then
+ if [ "$DRIVER" = "probe" ]; then
+ echo " <Probing for PCIC: edit /etc/rc.d/rc.pcmcia>"
+ for DRV in yenta_socket i82365 tcic ; do
+ /sbin/modprobe $DRV > /dev/null 2>&1
+ /sbin/pccardctl status | grep -q Socket && break
+ /sbin/modprobe -r $DRV > /dev/null 2>&1
+ done
+ else
+ echo " <Loading PCIC: $DRIVER>"
+ /sbin/modprobe $DRIVER $DRIVER_OPTS > /dev/null 2>&1
+ fi
+ /sbin/modprobe pcmcia > /dev/null 2>&1 # just in case it's not auto-loaded
+ else
+ echo " <PCIC already loaded>"
+ fi
+ ;;
+
+ stop)
+ echo -n "Shutting down PCMCIA services: "
+ echo -n "cards "
+ /sbin/pccardctl eject
+ MODULES=`/sbin/lsmod | grep "pcmcia " | awk '{print $4}' | tr , ' '`
+ for i in $MODULES ; do
+ echo -n "$i "
+ /sbin/modprobe -r $i > /dev/null 2>&1
+ done
+ echo -n "pcmcia "
+ /sbin/modprobe -r pcmcia > /dev/null 2>&1
+ if [ "$DRIVER" = "probe" ]; then
+ for DRV in yenta_socket i82365 tcic ; do
+ grep -qw $DRV /proc/modules && modprobe -r $DRV && \
+ echo -n "$DRV " && break
+ done
+ else
+ /sbin/modprobe -r $DRIVER > /dev/null 2>&1
+ fi
+ echo -n "rsrc_nonstatic "
+ /sbin/modprobe -r rsrc_nonstatic > /dev/null 2>&1
+ echo "pcmcia_core"
+ /sbin/modprobe -r pcmcia_core > /dev/null 2>&1
+ ;;
+
+ restart)
+ $0 stop
+ $0 start
+ ;;
+esac
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.udev b/source/installer/sources/initrd/etc/rc.d/rc.udev
new file mode 100755
index 000000000..8c238b0dd
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.udev
@@ -0,0 +1,133 @@
+#!/bin/sh
+# This is a script to initialize udev, which populates the /dev
+# directory with device nodes, scans for devices, loads the
+# appropriate kernel modules, and configures the devices.
+
+PATH="/sbin:/bin"
+OPT=""
+
+. /etc/udev/udev.conf
+
+# remove trailing slash from udev_root
+UDEV_ROOT=$(echo "${udev_root}" |sed 's/\/*$//')
+
+case "$1" in
+ start)
+ # Sanity check #1, udev requires that the kernel support tmpfs:
+ if ! grep -wq tmpfs /proc/filesystems ; then
+ echo "Sorry, but you need tmpfs support in the kernel to use udev."
+ echo
+ echo "FATAL: Refusing to run /etc/rc.d/rc.udev."
+ exit 1
+ fi
+
+ # Sanity check #2, make sure that a 2.6.x kernel is new enough:
+ if [ "$(uname -r | cut -f 1,2 -d .)" = "2.6" ]; then
+ if [ "$(uname -r | cut -f 3 -d . | sed 's/[^[:digit:]].*//')" -lt "15" ]; then
+ echo "Sorry, but you need a 2.6.15+ kernel to use udev."
+ echo "Your kernel version is only $(uname -r)."
+ echo
+ echo "FATAL: Refusing to run /etc/rc.d/rc.udev."
+ exit 1
+ fi
+ fi
+
+ # Sanity check #3, make sure the udev package was not removed. If udevd
+ # is not there, this will also shut off this script to prevent further
+ # problems:
+ if [ ! -x /sbin/udevd ]; then
+ chmod 644 /etc/rc.d/rc.udev
+ echo "No udevd daemon found."
+ echo "Turning off udev: chmod 644 /etc/rc.d/rc.udev"
+ echo "FATAL: Refusing to run /etc/rc.d/rc.udev."
+ exit 1
+ fi
+
+ # Disable hotplug helper since udevd listens to netlink:
+ if [ -e /proc/sys/kernel/hotplug ]; then
+ echo "" > /proc/sys/kernel/hotplug
+ fi
+
+ # if udevd is already running, rc.udev start will try to re-run
+ # failed events. Else, it will start udevd.
+ if ps axc | grep -q udevd ; then
+ OPT="--type=failed $OPT"
+ ( cd ${UDEV_ROOT}/.udev
+ for TMPFILE in tmp-rules-*.rules ; do
+ mv $TMPFILE /etc/udev/rules.d/${TMPFILE/tmp-rules--/} 2>/dev/null
+ done
+ )
+ else
+ # Mount tmpfs on $UDEV_ROOT:
+ if ! grep -E -q "^[^[:space:]]+ $UDEV_ROOT tmpfs" /proc/mounts; then
+ # umount shm if needed
+ if grep -E -q "^[^[:space:]]+ $UDEV_ROOT/shm tmpfs" /proc/mounts; then
+ umount -l $UDEV_ROOT/shm
+ fi
+
+ # Umount pts if needed, we will remount it later:
+ if grep -E -q "^[^[:space:]]+ $UDEV_ROOT/pts devpts" /proc/mounts; then
+ umount -l $UDEV_ROOT/pts
+ fi
+
+ # Mount tmpfs on $UDEV_ROOT:
+ # the -n is because we don't want $UDEV_ROOT umounted when
+ # someone (rc.[06]) calls umount -a
+ mount -n -o mode=0755 -t tmpfs tmpfs $UDEV_ROOT
+
+ # Remount pts:
+ mkdir $UDEV_ROOT/pts 2> /dev/null
+ mount -n -o mode=0620,gid=5 -t devpts devpts $UDEV_ROOT/pts
+ fi
+
+ # Add the static nodes to $UDEV_ROOT:
+ cp --preserve=all --recursive --remove-destination /lib/udev/devices/* $UDEV_ROOT
+
+ # Start udevd:
+ echo "Starting udevd: /sbin/udevd --daemon"
+ /sbin/udevd --daemon
+
+ # Create rootdev rules
+ DEVICENUMBER=$( /bin/stat -c %d / )
+ MAJORNUMBER=$(($DEVICENUMBER / 256))
+ MINORNUMBER=$(($DEVICENUMBER % 256))
+
+ echo 'ACTION=="add|change", SUBSYSTEM=="block", ENV{MAJOR}=="'$MAJORNUMBER'", ENV{MINOR}=="'$MINORNUMBER'", SYMLINK+="root"' > /dev/.udev/rules.d/61-dev-root-link.rules
+
+ fi
+
+ echo "Triggering udev events: /sbin/udevadm trigger $OPT"
+ # Call udevtrigger and udevsettle to do the device configuration:
+ /sbin/udevadm trigger $OPT && /sbin/udevadm settle --timeout=120
+
+ ;;
+ stop)
+ echo "Stopping udevd"
+ if [ -e /proc/sys/kernel/hotplug ]; then
+ echo /sbin/hotplug > /proc/sys/kernel/hotplug
+ fi
+ killall udevd
+ ;;
+ restart)
+ echo "Restarting udevd"
+ killall udevd
+ sleep 5
+ udevd --daemon
+ ;;
+ reload)
+ echo "Reloading udev rules"
+ udevadm control --reload-rules
+ cp --preserve=all --recursive --update /lib/udev/devices/* $UDEV_ROOT
+ ;;
+ force-reload)
+ echo "Updating all available device nodes in $UDEV_ROOT"
+ udevadm control --reload-rules
+ rm -rf $UDEV_ROOT/.udev $UDEV_ROOT/disk
+ cp --preserve=all --recursive --update /lib/udev/devices/* $UDEV_ROOT
+ ;;
+
+ *)
+ echo "Usage: $0 {start|stop|restart|reload|force-reload}"
+ exit 1
+ ;;
+esac
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.usb b/source/installer/sources/initrd/etc/rc.d/rc.usb
new file mode 100755
index 000000000..0c40b5b46
--- /dev/null
+++ b/source/installer/sources/initrd/etc/rc.d/rc.usb
@@ -0,0 +1,71 @@
+#!/bin/sh
+# rc.usb: search for USB devices needed for installation.
+
+# This is a function to unload the USB modules:
+usb_stop() {
+ modprobe -r usb-storage keybdev mousedev usbmouse hid usbkbd \
+ input uhci usb-uhci usb-ohci uhci-hcd ohci-hcd ehci-hcd 2> /dev/null
+ umount usbfs 2> /dev/null
+ modprobe -r usbcore 2> /dev/null
+}
+
+# This is a function to attempt to enable a USB keyboard,
+# mouse, and storage (CD or hard drive).
+# If this causes problems for you, use "nousb" as a kernel
+# command line option at boot time.
+usb_start() {
+ # If nousb was given at boot, skip.
+ if ! cat /proc/cmdline | grep nousb 1> /dev/null 2> /dev/null ; then
+ # If there aren't even any modules for this kernel, skip.
+ if [ -d /lib/modules/`uname -r` ]; then
+ # If usbcore is already loaded, skip.
+ if ! grep usbcore /proc/modules 1> /dev/null 2> /dev/null ; then
+ echo "Probing for USB controllers."
+ echo "(to skip, give a 'nousb' kernel option at boot)"
+ #sleep 5
+ modprobe -q usbcore >/dev/null 2>&1
+ # Try to mount usbfs:
+ if [ -d /proc/bus/usb -a ! -f /proc/bus/usb/devices ]; then
+ mount -t usbfs usbfs /proc/bus/usb
+ fi
+ # Try to load all the hub modules:
+ modprobe -q ehci-hcd >/dev/null 2>&1
+ modprobe -q ohci-hcd >/dev/null 2>&1
+ modprobe -q uhci-hcd >/dev/null 2>&1
+ modprobe -q usb-ohci >/dev/null 2>&1
+ # NOTE: this prefers "uhci"; you may prefer "usb-uhci".
+ #modprobe -q usb-uhci >/dev/null 2>&1 || modprobe -q uhci >/dev/null 2>&1
+ modprobe -q uhci >/dev/null 2>&1 || modprobe -q usb-uhci >/dev/null 2>&1
+ # Load input core:
+ modprobe -q input >/dev/null 2>&1
+ # Load USB keyboard:
+ modprobe -q usbkbd >/dev/null 2>&1
+ # Load Human Interface Device (HID) USB module:
+ modprobe -q hid >/dev/null 2>&1
+ # Load mouse (just in case (TM)) and keyboard USB input modules:
+ modprobe -q mousedev >/dev/null 2>&1
+ modprobe -q keybdev >/dev/null 2>&1
+ # Attempt to load storage support. Some funny USB ports (non-0 LUN) might not work
+ # so well, but most are well-behaved.
+ modprobe -q usb-storage >/dev/null 2>&1
+ fi
+ fi
+ fi
+}
+
+case "$1" in
+'start')
+ usb_start
+ ;;
+'stop')
+ usb_stop
+ ;;
+'restart')
+ usb_stop
+ sleep 5
+ usb_start
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
+
diff --git a/source/installer/sources/initrd/etc/scsi_id.config b/source/installer/sources/initrd/etc/scsi_id.config
new file mode 100644
index 000000000..d2a10a5f7
--- /dev/null
+++ b/source/installer/sources/initrd/etc/scsi_id.config
@@ -0,0 +1,17 @@
+#
+# scsi_id configuration
+#
+# lower or upper case has no effect on the left side. Quotes (") are
+# required for spaces in values. Model is the same as the SCSI
+# INQUIRY product identification field. Per the SCSI INQUIRY, the vendor
+# is limited to 8 bytes, model to 16 bytes.
+#
+# The first matching line found is used. Short matches match longer ones,
+# if you do not want such a match space fill the extra bytes. If no model
+# is specified, only the vendor string need match.
+#
+# options=<any scsi_id command line options>
+# vendor=string[,model=string],options=<per-device scsi_id options>
+
+# some libata drives require vpd page 0x80
+vendor="ATA",options=-p 0x80
diff --git a/source/installer/sources/initrd/etc/securetty b/source/installer/sources/initrd/etc/securetty
new file mode 100644
index 000000000..e4b461401
--- /dev/null
+++ b/source/installer/sources/initrd/etc/securetty
@@ -0,0 +1,20 @@
+# This file defines which devices root can log in on.
+
+# These are the ttys on the physical console:
+console
+tty1
+tty2
+tty3
+tty4
+tty5
+tty6
+
+# These are remote ttys, and uncommenting them might be less than fully secure:
+ttyS0
+ttyS1
+ttyS2
+ttyS3
+#ttyp0
+#ttyp1
+#ttyp2
+#ttyp3
diff --git a/source/installer/sources/initrd/etc/shadow b/source/installer/sources/initrd/etc/shadow
new file mode 100644
index 000000000..577b5d0f5
--- /dev/null
+++ b/source/installer/sources/initrd/etc/shadow
@@ -0,0 +1,17 @@
+root:joFWnPF2bJhPc:9797:0:::::
+halt:*:9797:0:::::
+operator:*:9797:0:::::
+shutdown:*:9797:0:::::
+sync:*:9797:0:::::
+bin:*:9797:0:::::
+ftp:*:9797:0:::::
+daemon:*:9797:0:::::
+adm:*:9797:0:::::
+lp:*:9797:0:::::
+mail:*:9797:0:::::
+news:*:9797:0:::::
+uucp:*:9797:0:::::
+man:*:9797:0:::::
+games:*:9797:0:::::
+guest:*:9797:0:::::
+nobody:*:9797:0:::::
diff --git a/source/installer/sources/initrd/etc/shells b/source/installer/sources/initrd/etc/shells
new file mode 100644
index 000000000..de0249b3b
--- /dev/null
+++ b/source/installer/sources/initrd/etc/shells
@@ -0,0 +1,2 @@
+/bin/sh
+/bin/bash
diff --git a/source/installer/sources/initrd/etc/syslog.conf b/source/installer/sources/initrd/etc/syslog.conf
new file mode 100644
index 000000000..055ab1c27
--- /dev/null
+++ b/source/installer/sources/initrd/etc/syslog.conf
@@ -0,0 +1,4 @@
+# Write any informational messages on virtual console 4:
+*.=info;*.=notice /dev/tty4
+*.=debug /dev/tty4
+*.warn;*.err /dev/tty4
diff --git a/source/installer/sources/initrd/etc/termcap b/source/installer/sources/initrd/etc/termcap
new file mode 100644
index 000000000..6fcd14ade
--- /dev/null
+++ b/source/installer/sources/initrd/etc/termcap
@@ -0,0 +1,238 @@
+# [Slackware note: If you're looking for a big, full-featured termcap,
+# use /etc/termcap-BSD instead ]
+#
+# From: miquels@drinkel.ow.org (Miquel van Smoorenburg)
+#
+# Okay guys, here is a shorter termcap that does have most
+# capabilities and is ncurses compatible. If it works for you
+# I'd like to hear about it.
+#
+# Some entries in termcap 2.0.7 are too long and your programs
+# may complain "tgetent: warning: termcap entry too long". Here is
+# a smaller termcap. But it may not cover as many terminals as the one
+# in termcap 2.0.7. You can install it as /etc/termcap.
+#
+# termcap Termcap entries for the VT family.
+# All termcap entries have been freed of the 'ks' and
+# 'ke' entries, that put the keypad into applications
+# mode. This is a generally misused entry, not ment
+# for the vt100 "applications" mode. Now cursor and
+# function keys will work in all programs.
+#
+# Also, there is a "generic" vt entry with common
+# entries for all terminals, on which all other entries
+# are built.
+#
+# Version: @(#) vt-termcap 1.37 12-Mar-1996 MvS
+#
+
+# Generic VT entry.
+vg|vt-generic|Generic VT entries:\
+ :bs:mi:ms:pt:xn:xo:it#8:\
+ :RA=\E[?7l:SA=\E?7h:\
+ :bl=^G:cr=^M:ta=^I:\
+ :cm=\E[%i%d;%dH:\
+ :le=^H:up=\E[A:do=\E[B:nd=\E[C:\
+ :LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:DO=\E[%dB:\
+ :ho=\E[H:cl=\E[H\E[2J:ce=\E[K:cb=\E[1K:cd=\E[J:sf=\ED:sr=\EM:\
+ :ct=\E[3g:st=\EH:\
+ :cs=\E[%i%d;%dr:sc=\E7:rc=\E8:\
+ :ei=\E[4l:ic=\E[@:IC=\E[%d@:al=\E[L:AL=\E[%dL:\
+ :dc=\E[P:DC=\E[%dP:dl=\E[M:DL=\E[%dM:\
+ :so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\
+ :mb=\E[5m:mh=\E[2m:md=\E[1m:mr=\E[7m:me=\E[m:\
+ :sc=\E7:rc=\E8:kb=\177:\
+ :ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:
+
+## Linux console. One should really set TERM=linux instead of TERM=console.
+#lx|linux|console|con80x25|LINUX System Console:\
+# :co#80:li#25:am:\
+# :is=\E[m\E[?1l\E>\E[10m:\
+# :rs=\E[m\E[?1l\E>\E[10m:\
+# :ch=\E[%i%dG:cv=\E[%i%dd:\
+# :eA=\E)0:as=^N:ae=^O:ac=aaffggjjkkllmmnnooqqssttuuvvwwxx:\
+# :ve=\E[?25h:vi=\E[?25l:\
+# :se=\E[27m:ue=\E[24m:mh=\E[2m:\
+# :ks=:ke=:\
+# :kh=\E[1~:kH=\E[4~:kI=\E[2~:kD=\E[3~:kP=\E[5~:kN=\E[6~:\
+# :k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:\
+# :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k0=\E[21~:\
+# :F1=\E[23~:F2=\E[24~:\
+# :tc=vt-generic:
+
+# Slackware 3.1 linux termcap entry (Sat Apr 27 23:03:58 CDT 1996):
+lx|linux|console|con80x25|LINUX System Console:\
+ :do=^J:co#80:li#25:cl=\E[H\E[J:sf=\ED:sb=\EM:\
+ :le=^H:bs:am:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\
+ :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[27m:us=\E[36m:ue=\E[m:\
+ :md=\E[1m:mr=\E[7m:mb=\E[5m:me=\E[m:is=\E[1;25r\E[25;1H:\
+ :ll=\E[1;25r\E[25;1H:al=\E[L:dc=\E[P:dl=\E[M:\
+ :it#8:ku=\E[A:kd=\E[B:kr=\E[C:kl=\E[D:kb=^H:ti=\E[r\E[H:\
+ :ho=\E[H:kP=\E[5~:kN=\E[6~:kH=\E[4~:kh=\E[1~:kD=\E[3~:kI=\E[2~:\
+ :k1=\E[[A:k2=\E[[B:k3=\E[[C:k4=\E[[D:k5=\E[[E:k6=\E[17~:\
+ :k7=\E[18~:k8=\E[19~:k9=\E[20~:k0=\E[21~:K1=\E[1~:K2=\E[5~:\
+ :K4=\E[4~:K5=\E[6~:\
+ :pt:sr=\EM:vt#3:xn:km:bl=^G:vi=\E[?25l:ve=\E[?25h:vs=\E[?25h:\
+ :sc=\E7:rc=\E8:cs=\E[%i%d;%dr:\
+ :r1=\Ec:r2=\Ec:r3=\Ec:
+
+# Some other, commonly used linux console entries.
+lx|con80x28:co#80:li#28:tc=linux:
+lx|con80x43:co#80:li#43:tc=linux:
+lx|con80x50:co#80:li#50:tc=linux:
+lx|con100x37:co#100:li#37:tc=linux:
+lx|con100x40:co#100:li#40:tc=linux:
+lx|con132x43:co#132:li#43:tc=linux:
+
+# vt102 - vt100 + insert line etc. VT102 does not have insert character.
+v2|vt102|DEC vt102 compatible:\
+ :co#80:li#24:\
+ :ic@:IC@:\
+ :is=\E[m\E[?1l\E>:\
+ :rs=\E[m\E[?1l\E>:\
+ :eA=\E)0:as=^N:ae=^O:ac=aaffggjjkkllmmnnooqqssttuuvvwwxx:\
+ :ks=:ke=:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
+ :tc=vt-generic:
+
+# vt100 - really vt102 without insert line, insert char etc.
+vt|vt100|DEC vt100 compatible:\
+ :im@:mi@:al@:dl@:ic@:dc@:AL@:DL@:IC@:DC@:\
+ :tc=vt102:
+
+# Standard vt320 (based on my own digital vt320)
+v3|vt320|DEC vt320:\
+ :co#80:li#24:hs:es:\
+ :is=\E[m\E[2$~\E[?1l\E>:\
+ :rs=\E[m\E[?1l\E>:\
+ :ve=\E[?25h:vi=\E[?25l:\
+ :se=\E[27m:ue=\E[24m:mh=\E[2m:\
+ :eA=\E)0:as=^N:ae=^O:ac=aaffggjjkkllmmnnooqqssttuuvvwwxx:\
+ :ts=\E[1$}\E[1;%i%dH:fs=\E[0$}:ds=\E[1$}\r\E[m\E[K\E[0$}:\
+ :ks=:ke=:\
+ :kI=\E[2~:kD=\E[3~:kP=\E[5~:kN=\E[6~:\
+ :@4=\E[29~:@0=\E[1~:*6=\E[4~:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\E[16~\
+ :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k0=\E[21~:\
+ :F1=\E[23~:F2=\E[24~:F3=\E[25~:F4=\E[26~:F5=\E[28~:\
+ :F6=\E[29~:F7=\E[31~:F8=\E[32~:\
+ :tc=vt-generic:
+
+v8|vt320-8|DEC vt320 in 8-bit mode:\
+ :kI=\2332~:kD=\2333~:kP=\2335~:kN=\2336~:\
+ :@4=\23329~:@0=\2331~:*6=\2334~:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\23316~\
+ :k6=\23317~:k7=\23318~:k8=\23319~:k9=\23320~:k0=\23321~:\
+ :F1=\23323~:F2=\23324~:F3=\23325~:F4=\23326~:F5=\23328~:\
+ :F6=\23329~:F7=\23331~:F8=\23332~:\
+ :ku=\233A:kd=\233B:kr=\233C:kl=\233D:\
+ :tc=vt320:
+
+# Entry for minicom so it uses the PC (IBM) character set.
+# If this doesn't work for kernels between 1.1.18 and 1.1.80,
+# change \E(U -> \E[11m (enter ANSI mode)
+# and \E(B -> \E[10m (leave ANSI mode)
+mc|minicom|ansi-mc|termcap entry for minicom on the console:\
+ :is=\E[m\E>\E(U:\
+ :rs=\E[m\E>\E(B:\
+ :as@:ae@:eA@:ac@:\
+ :bl=\E(B\007\E(U:\
+ :vb=\E(B\007\E(U:\
+ :tc=linux:
+
+# Entry for an xterm. Insert mode has been disabled.
+vs|xterm|xterm-color|vs100|xterm terminal emulator (X Window System):\
+ :am:bs:mi@:km:co#80:li#55:\
+ :im@:ei@:\
+ :ct=\E[3k:ue=\E[m:\
+ :is=\E[m\E[?1l\E>:\
+ :rs=\E[m\E[?1l\E>:\
+ :eA=\E)0:as=^N:ae=^O:ac=aaffggjjkkllmmnnooqqssttuuvvwwxx:\
+ :kI=\E[2~:kD=\177:kP=\E[5~:kN=\E[6~:\
+ :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
+ :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:k0=\E[21~:\
+ :F1=\E[23~:F2=\E[24~:\
+ :kh=\E[H:kH=\EOw:\
+ :ks=:ke=:\
+ :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:\
+ :tc=vt-generic:
+
+# Some other entries for the same xterm.
+v2|xterms|vs100s|xterm small window:\
+ :co#80:li#24:tc=xterm:
+vb|xterm-bold|xterm with bold instead of underline:\
+ :us=\E[1m:tc=xterm:
+vi|xterm-ins|xterm with insert mode:\
+ :mi:im=\E[4h:ei=\E[4l:tc=xterm:
+
+Eterm|Eterm Terminal Emulator (X11 Window System):\
+ :am:bw:eo:km:mi:ms:xn:xo:\
+ :co#80:it#8:li#24:lm#0:pa#64:Co#8:AF=\E[3%dm:AB=\E[4%dm:op=\E[39m\E[49m:\
+ :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
+ :K1=\E[7~:K2=\EOu:K3=\E[5~:K4=\E[8~:K5=\E[6~:LE=\E[%dD:\
+ :RI=\E[%dC:UP=\E[%dA:ae=^O:al=\E[L:as=^N:bl=^G:cd=\E[J:\
+ :ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=^M:\
+ :cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=\E[B:\
+ :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E>\E[?1l:ic=\E[@:\
+ :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
+ :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
+ :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
+ :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=^H:kd=\E[B:ke=:kh=\E[7~:\
+ :kl=\E[D:kr=\E[C:ks=:ku=\E[A:le=^H:mb=\E[5m:md=\E[1m:\
+ :me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
+ :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
+ :te=\E[2J\E[?47l\E8:ti=\E7\E[?47h:ue=\E[24m:up=\E[A:\
+ :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
+ :ac=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~:
+
+# DOS terminal emulator such as Telix or TeleMate.
+# This probably also works for the SCO console, though it's incomplete.
+an|ansi|ansi-bbs|ANSI terminals (emulators):\
+ :co#80:li#24:am:\
+ :is=:rs=\Ec:kb=^H:\
+ :as=\E[m:ae=:eA=:\
+ :ac=0\333+\257,\256.\031-\030a\261f\370g\361j\331k\277l\332m\300n\305q\304t\264u\303v\301w\302x\263~\025:\
+ :kD=\177:kH=\E[Y:kN=\E[U:kP=\E[V:kh=\E[H:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\
+ :k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:k0=\EOY:\
+ :tc=vt-generic:
+
+# This seems to be an entry for other x86 based unices.
+at|at386-m|386AT-M|386at-m|at/386 console:\
+ :am:bw:eo:xt:co#80:li#25:\
+ :ae=\E[10m:as=\E[12m:\
+ :is=\E[0;10;38m:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\
+ :k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:\
+ :kh=\E[H:us=\E[4m:vb=^G:nl=\E[B:kb=^H:\
+ :tc=vt-generic:
+
+# Yeah - Minix still lives :)
+ma|minix|minix-am|minix-vcam|MINIX 1.5 Virtual Console:\
+ :am:bs:co#80:li#25:km:ms:\
+ :is=\E[0m\EPlinewrap.on\E\\:\
+ :rs=\Ec\EPlinewrap.on\E\\:\
+ :as=:ae=:eA=:\
+ :ac=0\333+\257,\256.\031-\030a\261f\370g\361j\331k\277l\332m\300n\305q\304t\264u\303v\301w\302x\263~\025:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOT:\
+ :k6=\EOU:k7=\EOV:k8=\EOW:k9=\EOX:k0=\EOY:\
+ :kD=\177:kH=\E[Y:kN=\E[U:kP=\E[V:kh=\E[H:kb=^H:\
+ :ve=\EPcursor.on\E\\:vi=\EPcursor.off\E\\:\
+ :tc=vt-generic:
+
+# Some obligatory historic entries.
+sa|network|ethernet|arpanet:co#80:os:am:
+su|dumb|un|unknown:co#80:os:am:
+sd|du|dialup:co#80:os:am:
+t7|37|tty37|model 37 teletype:\
+ :cr=^M:do=^J:nl=^J:bl=^G:le=^H:bs:hc:hu=\E8:hd=\E9:up=\E7:os:
+
+# Yes, there really are people that login from a Sun Console.
+mu|sun|Sun Microsystems Workstation console:\
+ :am:bs:km:mi:ms:pt:\
+ :li#34:co#80:cl=^L:cm=\E[%i%d;%dH:nd=\E[C:up=\E[A:\
+ :ce=\E[K:cd=\E[J:so=\E[7m:se=\E[m:\
+ :kd=\E[B:kl=\E[D:ku=\E[A:kr=\E[C:kh=\E[H:\
+ :k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
+ :al=\E[L:dl=\E[M:im=:ei=:ic=\E[@:dc=\E[P:\
+ :rs=\E[s: