File: Yard_doc-6.html

package info (click to toggle)
yard 1.17.patch1-5
  • links: PTS
  • area: main
  • in suites: potato
  • size: 600 kB
  • ctags: 74
  • sloc: perl: 1,729; sh: 250; makefile: 176; asm: 32
file content (215 lines) | stat: -rw-r--r-- 7,776 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
 <TITLE>Yard Documentation: Troubleshooting</TITLE>
 <LINK HREF="Yard_doc-7.html" REL=next>
 <LINK HREF="Yard_doc-5.html" REL=previous>
 <LINK HREF="Yard_doc.html#toc6" REL=contents>
</HEAD>
<BODY>
<A HREF="Yard_doc-7.html">Next</A>
<A HREF="Yard_doc-5.html">Previous</A>
<A HREF="Yard_doc.html#toc6">Contents</A>
<HR>
<H2><A NAME="s6">6. Troubleshooting</A></H2>

<P>
<P>If you followed the instructions and your disk won't boot, the first
step is to determine where the boot is failing.  In general, the
further along it gets the easier it is to diagnose (though not
necessarily to fix!).  These steps are arranged more-or-less
chronologically.
<P>
<H2><A NAME="ss6.1">6.1 Configuration problems</A>
</H2>

<P>
<P>These should be explained in the doc subdirectory.  I try to catch as
many problems as I can in the <CODE>configure</CODE> script, but Yard relies
on many external programs, which change occasionally and introduce bugs.
<P>
<H2><A NAME="ss6.2">6.2 Problems building the root filesystem</A>
</H2>

<P>
<P>
<UL>
<LI> If you're using /dev/ram0 as <CODE>$device</CODE> and Yard
produces the error:

<BLOCKQUOTE><CODE>
<PRE>
        Error: You've declared file system size ($fs_size) to be 4096 K
        but Linux says /dev/ram0 may only hold 0 K
</PRE>
</CODE></BLOCKQUOTE>


Check your /etc/lilo.conf file for a line like:
<BLOCKQUOTE><CODE>
<PRE>
        ramsize = 0
</PRE>
</CODE></BLOCKQUOTE>

and increase it to something more reasonable, like 4096.  
Remember to run lilo and reboot.
</LI>
<LI>If you're using a loopback device, occasionally the ext2
filesystem seems to get corrupted for no apparent reason.  If you
start getting errors in the middle of <CODE>make_root_fs</CODE> from the sys()
complaining that a directory doesn't exist, this may be what is
happening.  I don't know why this happens and I can't reproduce it
consistently.  If it happens, try unmounting, deleting and re-creating
the file.  This seems to get rid of the problem.
</LI>
</UL>
<P>
<H2><A NAME="ss6.3">6.3 Problems in kernel loading</A>
</H2>

<P>
<P>In the normal boot process you will see a message sequence like:
<P>
<BLOCKQUOTE><CODE>
<PRE>
        LILO loading floppylinux...
        Uncompressing...done
        Now booting the kernel
</PRE>
</CODE></BLOCKQUOTE>
<P>If the sequence halts or displays an error somewhere in this sequence,
the problem is with LILO.
<BLOCKQUOTE>Not necessarily <EM>in</EM> LILO, but
with LILO.</BLOCKQUOTE>
 With some exotic floppy disk geometries (usually
involving disk capacities greater than 1440K) LILO's map compaction
won't work, causing the LILO boot sequence to halt.  If LILO halts and
you're using a non-1440K floppy, this is likely the problem.
<P>The fix is to remove the <CODE>COMPACT</CODE> line from your bootdisk's
lilo.conf, and run Yard again.  This will simply turn off
LILO's map compaction which should fix the problem (although kernel loading
will slow down somewhat).
<P>If that doesn't work, switch to a 1440K floppy and try again.  If you
really want to puzzle it out, go read the section ``Disk Geometry'' in
LILO's README file -- and good luck.
<P>If 1440K doesn't work, something is very broken.  Make sure LILO has
been installed correctly.  If you don't normally use LILO to boot,
re-install a recent version.  As a last resort, remake your kernel
with ``make mrproper''.
<P>If you're using a <EM>double</EM>-disk rescue set, both floppies <EM>must</EM> be
formatted identically.  The boot loader becomes confused otherwise.
<P>
<H2><A NAME="ss6.4">6.4 Problems finding the compressed root filesystem</A>
</H2>

<P>
<P>If the loader tells you it can't find a compressed root image, make
sure you gave Yard the correct floppy device (eg,
/dev/fd0H1722 for 1722K).  If you've constructed a
<EM>single</EM>-disk rescue set and it prompts you to insert a root floppy
disk, that's probably a Yard problem (the rdev in
write_rescue_disk has failed for some reason and the
failure wasn't caught by Yard).  Go back and look over
write_rescue_disk.log to make sure nothing failed.
<P>
<H2><A NAME="ss6.5">6.5 Problems with init or login</A>
</H2>

<P>
<P>
<OL>
<LI>If the system repeatedly accepts a login name then offers the login
prompt again, this is a sign that the NSS is not configured.  On systems
using the GNU Name Service Switch (NSS), you must include explicitly in
Bootdisk_Contents a selected set of /lib/libnss_* shared
libraries, as well as an /etc/nsswitch.conf file.
</LI>
<LI>If you get a message like:
        
<BLOCKQUOTE>
Id xxx respawning too fast: disabled for n minutes
</BLOCKQUOTE>


This comes from init, usually indicating that your *getty* 
<BLOCKQUOTE>The
notation *getty* will be used to mean some getty-like program, eg getty,
agetty, mgetty or getty_ps.</BLOCKQUOTE>
 or login is dying as soon as
it starts up.  Check the *getty* and login executables, and the libraries
they depend upon.  Make sure the invocations in /etc/inittab are correct.
</LI>
<LI>If halting occurs <EM>after</EM> the root filesystem is loaded, the
problem is in Yard or in you.  The first step is to check
<CODE>write_rescue_disk.log</CODE> to make sure nothing failed.
If you ignored warnings from <CODE>make_root_fs</CODE> or
<CODE>check_root_fs</CODE>, look at them again.  You should
probably look over all three log files to make sure things are as they
should be.  <CODE>make_root_fs.log</CODE> has a listing of where
each file was taken from -- make sure all your system files are coming
from the right places on your hard disk.
</LI>
<LI>If you get strange messages from *getty*, it may mean the calling form
in /etc/inittab is wrong.  <CODE>check_root_fs</CODE>
does not perform much inittab call checking because the options are so
variable among the different *getty* programs
<BLOCKQUOTE>Different
versions of agetty are reported to have different incompatible calling
forms.</BLOCKQUOTE>
.  If you're using a different call and/or program
from what you use in your hard disk /etc/inittab, double
check it.
</LI>
<LI>When you login, you may get errors about commands that aren't present.
This usually happens when an rc file uses a builtin command that does not
exist in the rescue disk's shell, but did exist in the shell used to run
Yard.
</LI>
</OL>
<P>
<P>
<H2><A NAME="ss6.6">6.6 And if none of that works...</A>
</H2>

<P>Check the Yard webpage:
http://www.croftj.net/~fawcett/yard/
<P>On that page I'll put notes people have sent me about problems they've run
into, before I've had a chance to fix and re-release Yard.
<P>
<P>
<H2><A NAME="ss6.7">6.7 Suggestions</A>
</H2>

<P>
<P>If you find a problem that that Yard didn't catch, but which it could
have caught, please let me know and I'll try to add a check to
<CODE>check_root_fs</CODE>.
<P>
<P>
<P>If you think it's a Yard problem you can try diagnosing it yourself.
In fact, you may have better luck since you're more familiar with your
setup.  Otherwise, package up the three .log files along with your
Bootdisk_Contents, Config.pl and Bootdisk_Contents.ls
and send them to me with a reasonable description of what went wrong.
This command should work:
<P>
<BLOCKQUOTE><CODE>
<PRE>
        tar cvzf yard_bug.tgz *.log *.ls \
            /etc/yard/Bootdisk_Contents /etc/yard/Config.pl
</PRE>
</CODE></BLOCKQUOTE>
<P>Be sure to let me know which Yard version you're using.  You might check the
<A HREF="http://www.croftj.net/~fawcett/yard/">yard webpage</A> to make sure there isn't already a newer version of Yard
that fixes your problem, or a note added there.
<P>
<P>
<P>
<HR>
<A HREF="Yard_doc-7.html">Next</A>
<A HREF="Yard_doc-5.html">Previous</A>
<A HREF="Yard_doc.html#toc6">Contents</A>
</BODY>
</HTML>