summaryrefslogtreecommitdiffstats
path: root/rescue/tree
diff options
context:
space:
mode:
Diffstat (limited to 'rescue/tree')
-rwxr-xr-xrescue/tree/bin/insmod3
-rwxr-xr-xrescue/tree/bin/login2
-rw-r--r--rescue/tree/etc/fstab4
-rw-r--r--rescue/tree/etc/group1
-rw-r--r--rescue/tree/etc/host.conf2
-rw-r--r--rescue/tree/etc/hosts1
-rw-r--r--rescue/tree/etc/inittab14
-rw-r--r--rescue/tree/etc/issue25
-rw-r--r--rescue/tree/etc/passwd3
-rw-r--r--rescue/tree/etc/profile24
-rwxr-xr-xrescue/tree/etc/rc.reboot9
-rwxr-xr-xrescue/tree/etc/rc.sysinit28
-rw-r--r--rescue/tree/etc/resolv.conf2
-rwxr-xr-xrescue/tree/sbin/modprobe39
14 files changed, 157 insertions, 0 deletions
diff --git a/rescue/tree/bin/insmod b/rescue/tree/bin/insmod
new file mode 100755
index 000000000..717dc39e1
--- /dev/null
+++ b/rescue/tree/bin/insmod
@@ -0,0 +1,3 @@
+#!/bin/sh
+echo "Use modprobe instead"
+echo "Or even better use autoprobe"
diff --git a/rescue/tree/bin/login b/rescue/tree/bin/login
new file mode 100755
index 000000000..4b2816926
--- /dev/null
+++ b/rescue/tree/bin/login
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /bin/bash --login
diff --git a/rescue/tree/etc/fstab b/rescue/tree/etc/fstab
new file mode 100644
index 000000000..fbafb7801
--- /dev/null
+++ b/rescue/tree/etc/fstab
@@ -0,0 +1,4 @@
+/dev/ram3 / ext2 defaults 1 1
+/dev/fd0 /mnt/floppy auto defaults,noauto 0 0
+none /proc proc defaults,noauto,ro 0 0
+/dev/cdrom /mnt/cdrom auto defaults,noauto 0 0
diff --git a/rescue/tree/etc/group b/rescue/tree/etc/group
new file mode 100644
index 000000000..5ba713c83
--- /dev/null
+++ b/rescue/tree/etc/group
@@ -0,0 +1 @@
+root::0:root
diff --git a/rescue/tree/etc/host.conf b/rescue/tree/etc/host.conf
new file mode 100644
index 000000000..1a8c1e151
--- /dev/null
+++ b/rescue/tree/etc/host.conf
@@ -0,0 +1,2 @@
+order hosts,bind
+multi on
diff --git a/rescue/tree/etc/hosts b/rescue/tree/etc/hosts
new file mode 100644
index 000000000..a9bbdee7f
--- /dev/null
+++ b/rescue/tree/etc/hosts
@@ -0,0 +1 @@
+127.0.0.1 mandrake-rescue
diff --git a/rescue/tree/etc/inittab b/rescue/tree/etc/inittab
new file mode 100644
index 000000000..0ee36784f
--- /dev/null
+++ b/rescue/tree/etc/inittab
@@ -0,0 +1,14 @@
+#Inittab for Mandrake Rescue Disk
+#Author: Daouda Lo <daouda@mandrakesoft.com>
+id:3:initdefault:
+
+si::sysinit:/etc/rc.sysinit
+re:6:wait:/etc/rc.reboot
+ca:12345:ctrlaltdel:/sbin/init 6
+
+1:12345:respawn:/bin/bash --login
+2:23:respawn:/sbin/mingetty tty2
+3:23:respawn:/sbin/mingetty tty3
+4:23:respawn:/sbin/mingetty tty4
+5:23:respawn:/sbin/mingetty tty5
+6:23:respawn:/sbin/mingetty tty6
diff --git a/rescue/tree/etc/issue b/rescue/tree/etc/issue
new file mode 100644
index 000000000..8c579e127
--- /dev/null
+++ b/rescue/tree/etc/issue
@@ -0,0 +1,25 @@
+
+
+   
+           
+              
+              
+            
+  `----'         
+       
+     
+     [2[1;37;4
+     
+    
+    Mandrake Rescue Disk
+     
+     
+    
+      
+
+
+Linux Mandrake release 7.0 (Air)
+
+Use loadkeys to change your keyboard layout (eg: loadkeys fr)
+Use modprobe to load modules
+
diff --git a/rescue/tree/etc/passwd b/rescue/tree/etc/passwd
new file mode 100644
index 000000000..568451e4e
--- /dev/null
+++ b/rescue/tree/etc/passwd
@@ -0,0 +1,3 @@
+root::0:0::/:/bin/bash
+shutdown:*:6:0:shutdown:/sbin:/sbin/shutdown
+halt:*:7:0:halt:/sbin:/sbin/halt
diff --git a/rescue/tree/etc/profile b/rescue/tree/etc/profile
new file mode 100644
index 000000000..ffd2b3174
--- /dev/null
+++ b/rescue/tree/etc/profile
@@ -0,0 +1,24 @@
+# /etc/profile
+# (c) MandrakeSoft, Chmouel Boudjnah <chmouel@mandrakesoft.com>
+
+# System wide environment and startup programs
+# Functions and aliases go in /etc/bashrc
+
+PROFILE_LOADED=1
+
+export PATH=/bin:/sbin:/usr/bin:/usr/sbin
+
+PS1="[root@rescue]\\$ "
+ls () { /bin/ls --color=auto -F "$@";}
+ll () { /bin/ls --color=auto -Fl "$@";}
+d () { /bin/ls --color=auto -F "$@";}
+s () { cd .. ;}
+which () { type -p "$@" ;}
+HOSTNAME=rescue
+HISTSIZE=1000
+HISTFILESIZE=1000
+
+INPUTRC=/etc/inputrc
+export PATH PS1 USER HOSTNAME HISTSIZE HISTFILESIZE INPUTRC
+
+cat /etc/issue
diff --git a/rescue/tree/etc/rc.reboot b/rescue/tree/etc/rc.reboot
new file mode 100755
index 000000000..79318f1f7
--- /dev/null
+++ b/rescue/tree/etc/rc.reboot
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+sleep 1
+/sbin/killall5 -9
+
+umount -a -f -t noproc
+mount -n -o remount,ro /
+
+reboot -i -d
diff --git a/rescue/tree/etc/rc.sysinit b/rescue/tree/etc/rc.sysinit
new file mode 100755
index 000000000..476c9bfe9
--- /dev/null
+++ b/rescue/tree/etc/rc.sysinit
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+action() { echo $1; shift; $*; }
+
+export PATH=/bin:/sbin:/usr/bin:/usr/sbin
+
+echo -e "\t\t\tWelcome to Linux \\033[1;36mMandrake\\033[0;39m"
+
+action "Mounting proc filesystem" mount -n -t proc /proc /proc
+action "Remounting root filesystem in read-write mode" mount -n -o remount,rw /
+
+>/etc/mtab
+mount -f /
+mount -f /proc
+
+# Set the hostname.
+action "Setting hostname rescue" hostname rescue
+echo rescue > /etc/HOSTNAME
+
+load() { modprobe $* 2>/dev/null; }
+load ide-mod
+load ide-probe
+load ide-disk
+load ide-cd
+load af_packet
+
+/sbin/ifconfig lo 127.0.0.1 netmask 255.0.0.0
+/sbin/route add 127.0.0.1 lo
diff --git a/rescue/tree/etc/resolv.conf b/rescue/tree/etc/resolv.conf
new file mode 100644
index 000000000..3822939b1
--- /dev/null
+++ b/rescue/tree/etc/resolv.conf
@@ -0,0 +1,2 @@
+search foo.com
+nameserver 192.168.1.1
diff --git a/rescue/tree/sbin/modprobe b/rescue/tree/sbin/modprobe
new file mode 100755
index 000000000..494f5b2a2
--- /dev/null
+++ b/rescue/tree/sbin/modprobe
@@ -0,0 +1,39 @@
+#!/usr/bin/perl
+
+sub cat_ { local *F; open F, $_[0] or $_[1] ? die "cat of file $_[0] failed: $!\n" : return; my @l = <F>; wantarray ? @l : join '', @l }
+
+sub read_already_loaded() {
+ foreach (cat_("/proc/modules")) {
+ my ($name) = split;
+ $conf{$name}{loaded} = 1;
+ }
+}
+
+sub load_deps($) {
+ my ($file) = @_;
+
+ local *F;
+ open F, $file or log::l("error opening $file: $!"), return 0;
+ foreach (<F>) {
+ my ($f, $deps) = split ':';
+ push @{$deps{$f}}, split ' ', $deps;
+ }
+}
+
+sub load {
+ my ($name, @options) = @_;
+ $name =~ s/\.o//;
+
+ $conf{$name}{loaded} and return;
+ eval { load($_, 'prereq') } foreach @{$deps{$name}};
+
+ system("extract_archive /modules/modules.cz* /tmp $name.o >/dev/null");
+ -r "/tmp/$name.o" or die "can't find module $name\n";
+ system("/sbin/insmod -f /tmp/$name.o"); $? and die("insmod $name failed");
+}
+
+!@ARGV || $ARGV[0] =~ /-h/ and die "usage: modprobe <module> [<options...>]\n";
+
+read_already_loaded();
+load_deps("/modules/modules.dep");
+load(@ARGV);