From 3a5d3e83a3a32d442c294528d66adc0282013fd4 Mon Sep 17 00:00:00 2001 From: Guillaume Cottenceau Date: Wed, 12 Dec 2001 21:40:28 +0000 Subject: have a bunch of Rescue documentation directly available from the Rescue-menu following suggestions by Denis among others --- mdk-stage1/rescue-gui.c | 7 +++++- rescue/Makefile | 2 +- rescue/make_rescue_img | 1 + rescue/rescue-doc | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 67 insertions(+), 2 deletions(-) create mode 100755 rescue/rescue-doc diff --git a/mdk-stage1/rescue-gui.c b/mdk-stage1/rescue-gui.c index bed0b403c..055c680a3 100644 --- a/mdk-stage1/rescue-gui.c +++ b/mdk-stage1/rescue-gui.c @@ -144,8 +144,10 @@ int main(int argc, char **argv) char mount_parts[] = "Mount your partitions under /mnt"; char go_to_console[] = "Go to console"; char reboot_[] = "Reboot"; + char doc[] = "Doc: what's addressed by this Rescue?"; - char * actions[] = { install_bootloader, mount_parts, go_to_console, reboot_, NULL }; + + char * actions[] = { install_bootloader, mount_parts, go_to_console, reboot_, doc, NULL }; char * choice; init_frontend("Welcome to " DISTRIB_NAME " Rescue (" VERSION ") " __DATE__ " " __TIME__); @@ -170,6 +172,9 @@ int main(int argc, char **argv) sleep(2); reboot(0xfee1dead, 672274793, 0x01234567); } + if (ptr_begins_static_str(choice, doc)) { + binary = "/usr/bin/rescue-doc"; + } if (binary) { int wait_status; diff --git a/rescue/Makefile b/rescue/Makefile index d236ac579..03be9603b 100644 --- a/rescue/Makefile +++ b/rescue/Makefile @@ -7,7 +7,7 @@ ROOTDEST = /export install: rescue_stage2.bz2 cp -f $< $(ROOTDEST)/Mandrake/base -rescue_stage2.bz2: kernel_read_part list list.$(ARCH) drvinst guessmounts lsparts make_rescue_img +rescue_stage2.bz2: kernel_read_part list list.$(ARCH) drvinst guessmounts lsparts rescue-doc make_rescue_img ./make_rescue_img clean: diff --git a/rescue/make_rescue_img b/rescue/make_rescue_img index b086b996e..fa1a23591 100755 --- a/rescue/make_rescue_img +++ b/rescue/make_rescue_img @@ -88,6 +88,7 @@ installown("drvinst", "/usr/bin"); installown("guessmounts", "/usr/bin"); installown("install_bootloader", "/usr/bin"); installown("lsparts", "/usr/bin"); +installown("rescue-doc", "/usr/bin"); _ "cd ../mdk-stage1 && make rescue-gui"; installown("../mdk-stage1/rescue-gui", "/usr/bin"); diff --git a/rescue/rescue-doc b/rescue/rescue-doc new file mode 100755 index 000000000..2c8c641de --- /dev/null +++ b/rescue/rescue-doc @@ -0,0 +1,59 @@ +#!/usr/bin/perl + +sub output { my $f = shift; local *F; open F, ">$f" or die "output in file $f failed: $!\n"; print F foreach @_; } + +output('/tmp/rescue-doc-contents', q( + Information regarding problems not directly addressed + by this rescue. + + +Are you sure you need to use the rescue mode for solving your +problem? + +The rescue system aims to stay as small as possible. That's why +you won't find a usable graphical environment, for example. Same +applies for the Mandrake detection/configuration libraries: they +don't fit here. + + +Most of the problems with a linux system are much easier to solve +on a running system, than by booting in "rescue" mode. In fact, +there is hardly any problem which wouldn't be easier to solve in +a comfortable environment of a fully installed Mandrake Linux +system, than in a spartanic "rescue system" shell. Such problems +include for instance: + +- bad or missing X configuration +- adding/removing/reconfiguring hardware +- cleaning up a mess caused by installing third-party software + with --force and --nodeps options + +Rule of thumb says: "if you can boot without using rescue mode or +this CD, there is no reason for using the rescue CD". + + +If you can't boot your system anymore, then the Rescue system is +for you. + +- if you can fully solve the problem in Rescue mode, let it go. + For example, you changed some parameters in your /etc/fstab and + it won't let the system boot anymore. Change back the + offending line. + +- if you can't fully solve the problem (you need to reconfigure + the whole X system, for example), just modify what's necessary + to boot again, boot in your system, and fully fix from there. + + +In case you have found a new class of problems which must be +handled by "rescue mode", but isn't yet, please report it to +. + +For more information on problems with Mandrake Linux, please see +our manuals, documentation on mandrakelinux.com, +mandrakeuser.org, troubleshooting articles on mandrakeforum.com, +or consult our support. +)); + +exec 'less /tmp/rescue-doc-contents'; + -- cgit v1.2.1