diff options
Diffstat (limited to 'sag-0.6.1-www')
281 files changed, 33576 insertions, 0 deletions
diff --git a/sag-0.6.1-www/Invisible/sag-0.6-ANNOUNCE b/sag-0.6.1-www/Invisible/sag-0.6-ANNOUNCE new file mode 100644 index 0000000..a7a4643 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6-ANNOUNCE @@ -0,0 +1,75 @@ +Lars Wirzenius + loudly resents + + a Linux Documentation Project + production + + of the least selling book + by the same name + + the Linux System Administrators' Guide 0.6 + just when you thought your system was safe + + starring Super User as Mr. Root + + introducing Lasu as Luser + + special effects by Don Knuth and Leslie Lamport + + music by Crash and Burn + + coming soon to an + ftp://sunsite.unc.edu/pub/Linux/docs/LDP/sysadmin-guide/ near you + + + +Yes, it's that time of the year again, when Lasu thinks he's an +author! The new version features several new spelling errors for readers +to report, a brand new chapter on init, and an announcement text ripped +of an earlier one. Get your copy today, while the supplies last! Two for +the price of one! No system crash is complete without the SAG! + + + -x-X-x- + +Table of contents: + + * Introduction + * Overview of a Linux System + * Overview of the Directory Tree + * Using Disks and Other Storage Media + * Allocating disk space + * Memory Management + * Boots And Shutdowns + * init + * Logging In And Out + * Managing user accounts + * Backups + * Keeping Time + * Measuring Holes + * Glossary (DRAFT) + * References + * Index + +The files are: + + sag-0.6.tar.gz source code (no formatted versions) + sag-0.6-html.tar.gz HTML + sag-0.6-letter.ps.gz Postscript for letter paper + sag-0.6-letter.dvi.gz DVI for letter apper (no figures) + +Most people will probably only need to download the PS version. +It is all you need if you have a PS printer. And happen to use +letter size paper (200 million Americans can't be wrong). + +No text version is available, I do not have the time to produce +one. Don't ask me to. (I'll make one for 1.0.) + +The SAG home page is still at <URL:http://www.iki.fi/liw/linux/sag/>. +All the files are there, including an unpacked, browsable version of +the HTML version. + +As usual, feedback is more than welcome. + +I plan to to call the next version 1.0. It'll follow the grand tradition +of version 1.0 being _almost_ useful, but still crashing your system. :) diff --git a/sag-0.6.1-www/Invisible/sag-0.6-html.tar.gz b/sag-0.6.1-www/Invisible/sag-0.6-html.tar.gz Binary files differnew file mode 100644 index 0000000..f0e0c44 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6-html.tar.gz diff --git a/sag-0.6.1-www/Invisible/sag-0.6-letter.dvi.gz b/sag-0.6.1-www/Invisible/sag-0.6-letter.dvi.gz Binary files differnew file mode 100644 index 0000000..ef0d585 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6-letter.dvi.gz diff --git a/sag-0.6.1-www/Invisible/sag-0.6-letter.ps.gz b/sag-0.6.1-www/Invisible/sag-0.6-letter.ps.gz Binary files differnew file mode 100644 index 0000000..7adc5ae --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6-letter.ps.gz diff --git a/sag-0.6.1-www/Invisible/sag-0.6.tar.gz b/sag-0.6.1-www/Invisible/sag-0.6.tar.gz Binary files differnew file mode 100644 index 0000000..d003679 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6.tar.gz diff --git a/sag-0.6.1-www/Invisible/sag-0.6/.ID_MAP.dir b/sag-0.6.1-www/Invisible/sag-0.6/.ID_MAP.dir Binary files differnew file mode 100755 index 0000000..d7cde34 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/.ID_MAP.dir diff --git a/sag-0.6.1-www/Invisible/sag-0.6/.ID_MAP.pag b/sag-0.6.1-www/Invisible/sag-0.6/.ID_MAP.pag Binary files differnew file mode 100755 index 0000000..d7cde34 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/.ID_MAP.pag diff --git a/sag-0.6.1-www/Invisible/sag-0.6/.IMG_PARAMS.dir b/sag-0.6.1-www/Invisible/sag-0.6/.IMG_PARAMS.dir Binary files differnew file mode 100755 index 0000000..58a9ee1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/.IMG_PARAMS.dir diff --git a/sag-0.6.1-www/Invisible/sag-0.6/.IMG_PARAMS.pag b/sag-0.6.1-www/Invisible/sag-0.6/.IMG_PARAMS.pag Binary files differnew file mode 100755 index 0000000..58a9ee1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/.IMG_PARAMS.pag diff --git a/sag-0.6.1-www/Invisible/sag-0.6/.ORIG_MAP.dir b/sag-0.6.1-www/Invisible/sag-0.6/.ORIG_MAP.dir Binary files differnew file mode 100755 index 0000000..95e4c00 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/.ORIG_MAP.dir diff --git a/sag-0.6.1-www/Invisible/sag-0.6/.ORIG_MAP.pag b/sag-0.6.1-www/Invisible/sag-0.6/.ORIG_MAP.pag Binary files differnew file mode 100755 index 0000000..95e4c00 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/.ORIG_MAP.pag diff --git a/sag-0.6.1-www/Invisible/sag-0.6/blank.pbm b/sag-0.6.1-www/Invisible/sag-0.6/blank.pbm new file mode 100644 index 0000000..3c72463 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/blank.pbm @@ -0,0 +1,4 @@ +P4 +# CREATOR: XV Version 3.00 Rev: 3/30/93 +1 1 +
\ No newline at end of file diff --git a/sag-0.6.1-www/Invisible/sag-0.6/blueball.gif b/sag-0.6.1-www/Invisible/sag-0.6/blueball.gif Binary files differnew file mode 100644 index 0000000..c481395 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/blueball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/change_begin.gif b/sag-0.6.1-www/Invisible/sag-0.6/change_begin.gif Binary files differnew file mode 100644 index 0000000..dbe8d7e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/change_begin.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/change_delete.gif b/sag-0.6.1-www/Invisible/sag-0.6/change_delete.gif Binary files differnew file mode 100644 index 0000000..63398f5 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/change_delete.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/change_end.gif b/sag-0.6.1-www/Invisible/sag-0.6/change_end.gif Binary files differnew file mode 100644 index 0000000..8f1e455 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/change_end.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/contents.xbm b/sag-0.6.1-www/Invisible/sag-0.6/contents.xbm new file mode 100644 index 0000000..a3aed9f --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/contents.xbm @@ -0,0 +1,12 @@ +#define contents_width 63 +#define contents_height 16 +static char contents_bits[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xc0,0x01,0x00,0x08,0x00,0x00,0x01,0x00,0x20,0x02,0x00,0x08,0x00, + 0x00,0x01,0x00,0x20,0xe2,0x74,0x7c,0x9c,0x8e,0x8f,0x03,0x20,0x10,0x99,0x08, + 0x22,0x13,0x41,0x04,0x20,0x10,0x89,0x08,0x3e,0x11,0x81,0x03,0x20,0x12,0x89, + 0x08,0x02,0x11,0x01,0x04,0x20,0x12,0x89,0x88,0x22,0x11,0x51,0x04,0xc0,0xe1, + 0x9c,0x71,0x9c,0x33,0x8e,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; diff --git a/sag-0.6.1-www/Invisible/sag-0.6/contents_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/contents_motif.gif Binary files differnew file mode 100644 index 0000000..7b3c904 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/contents_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/cross_ref_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/cross_ref_motif.gif Binary files differnew file mode 100644 index 0000000..4c074e1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/cross_ref_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/foot_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/foot_motif.gif Binary files differnew file mode 100644 index 0000000..f29222a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/foot_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/footnode.html b/sag-0.6.1-www/Invisible/sag-0.6/footnode.html new file mode 100644 index 0000000..a0226cf --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/footnode.html @@ -0,0 +1,1378 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Footnotes</TITLE> +<META NAME="description" CONTENT="Footnotes"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > +<DL> <DT><A NAME="79">...simple.</A><DD>There are some people who <EM>do</EM> + call it that, but that's just because they have never + read this manual, poor things. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="74">...chapter.</A><DD>If you happen to be reading a version that + has a chapter on backups, that is. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="78">...work</A><DD>A comparison between the xia and ext2 + filesystems, the device list and a description of the + ext2 filesystem. These aren't part of the book any + more. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="111">...Rhyme</A><DD>The author + wishes to remain anonymous. It was posted to the + LDP mailing list by Matt Welsh. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="125">...system</A><DD>In fact, it is often mistakenly considered to be the + operating system itself, but it is not. An operating system + provides many more services than a plain kernel. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="231">...these</A><DD>Well, at least + there can be many. Network bandwidth still being a scarce + resource, there is still some practical upper limit to the + number of concurrent logins via one network connection. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="296">...printer.</A><DD>Instead, + they form a new queue <em>at</em> the printer, waiting for their + printouts, since no one ever seems to be able to get the queue + software to know exactly when anyone's printout is really finished. + This is a great boost to intra-office social relations. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1028">...<b>platters</b>,</A><DD>The platters are made of + a hard substance, e.g., aluminium, which gives the hard disk its + name. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1045">...BIOS</A><DD>The BIOS is some built-in software + stored on ROM chips. It takes care, among other things, of the + initial stages of booting. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1047">...track</A><DD>The numbers are + completely imaginary. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1067">...disk</A><DD>That is, the surface inside the disk, on the + metal disk inside the plastic coating. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1070">...similar</A><DD>But completely + different, of course. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1120">...primary</A><DD>Illogical? +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1299">...everyone.</A><DD>It requires several seconds of hard + thinking on the users' behalf. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1275">...magic.</A><DD>For more + information, see the kernel source or the Kernel Hackers' + Guide. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1431">...NAME="1651"></A></A><DD>It should of course be + <tt>unmount</tt><A NAME="1653"> </A>, but the <TT>n</TT> mysteriously disappeared in + the 70's, and hasn't been seen since. Please return it to Bell + Labs, NJ, if you find it. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1409">...disk.</A><DD>Sic transit discus mundi. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1820">...anyway.</A><DD>Thus quite needlessly + annoying a number of computer scientists something horrible. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1836">...2 GB.</A><DD>A gigabyte here, a gigabyte there, pretty soon + we start talking about real memory. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1869">...disk</A><DD>Except a RAM disk, for obvious + reasons. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="1961">...loaded</A><DD>On early computers, it wasn't enough + to merely turn on the computer, you had to manually load the + operating system as well. These new-fangled thing-a-ma-jigs do + it all by themselves. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2102">...right,</A><DD>This is called + the <b>power on self test</b>, or <b>POST</b> for short. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2110">...NAME="2155"></A></A><DD><tt>sync</tt><A NAME="2157"> </A> flushes the buffer cache. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2308">...graphs.</A><DD><tt>init</tt><A NAME="2363"> </A> itself is not allowed + to die. You can't kill <tt>init</tt><A NAME="2365"> </A> even with SIGKILL. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2310">...signal;</A><DD>Using the command + <tt>kill -HUP 1</tt><A NAME="2387"> </A> as root, for example +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2311">...terminal.</A><DD>Different versions + of <tt>getty</tt><A NAME="2411"> </A> are run differently. Consult your manual page-and + make sure it is the correct manual page. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2312">...<tt>emergency</tt>.</A><DD>Kernel + command line arguments can be given via LILO, for example. See + section <A HREF="node78.html#secsingleusermode">7.5</A>. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2314">...location.</A><DD>Or to start <tt>nethack</tt><A NAME="2466"> </A>. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2315">...tasks,</A><DD>It probably shouldn't be used for playing + <tt>nethack</tt><A NAME="2473"> </A>. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2559">...it.</A><DD>Good Linux distributions do this out + of the box. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2722">...microcomputers.</A><DD>It might be quite embarrassing + if my sister could read my love letters. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2816">...password.</A><DD>Yes, this means + that the password file has all the information about a + user <em>except</em> his password. The wonder of development. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2772">...accounts</A><DD>Surreal users? +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2790">...alias.</A><DD>The + user's name might change due to marriage, for example, and + he might want to have his username reflect his new name. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2818">...work.</A><DD>But they can be <em>so</em> fun, if you're + a BOFH. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2915">...disasters.</A><DD>The fifth reason is ``something else''. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2916">...work.</A><DD>Don't laugh. This has happened to several people. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="2917">...work.</A><DD>Been there, done that... +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="3001">...reinstalled,</A><DD>You get + to decide what's easy. Some people consider installing from + dozens of floppies easy. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="3016">...drive.</A><DD>If a tape + drive doesn't data fast enough, it has to stop; this makes backups + even slower, and can be bad for the tape and the drive. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="3113">...round,</A><DD>According to + recent research. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE><DT><A NAME="3157">...time.</A><DD>Beware of the <tt>time</tt><A NAME="3167"> </A> command, which does + <em>not</em> show the current time. +<PRE>. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +. +</PRE> </DL> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/greenball.gif b/sag-0.6.1-www/Invisible/sag-0.6/greenball.gif Binary files differnew file mode 100644 index 0000000..2ffbb22 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/greenball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/icons.html b/sag-0.6.1-www/Invisible/sag-0.6/icons.html new file mode 100644 index 0000000..d6b38c3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/icons.html @@ -0,0 +1,42 @@ + +<FORM METHOD="POST" > +<INPUT TYPE="submit" VALUE="Next"> + <P> +<INPUT TYPE="submit" VALUE="Previous"> + <P> +<INPUT TYPE="submit" VALUE="Up"> + <P> +<INPUT TYPE="submit" VALUE="Next Group"> + <P> +<INPUT TYPE="submit" VALUE="Previous Group"> + <P> +<INPUT TYPE="submit" VALUE="Contents"> + <P> +<INPUT TYPE="submit" VALUE="Index"> + <P> +<INPUT TYPE="submit" VALUE=" New "> + <P> +<INPUT TYPE="submit" VALUE=" Deleted "> + <P> +<INPUT TYPE="submit" VALUE="Browse"> + <P> +<INPUT TYPE="submit" VALUE="Search"> + <P> +<INPUT TYPE="submit" VALUE="Home"> + <P> +<INPUT TYPE="submit" VALUE="Image"> + <P> +<INPUT TYPE="submit" VALUE="a"> + + <P> + +<INPUT TYPE="checkbox" NAME="xx" VALUE="nil"> +<INPUT TYPE="checkbox" NAME="xx" VALUE="nil"> +<INPUT TYPE="checkbox" NAME="xx" VALUE="nil"> + + +</FORM> + +<IMG ALIGN=MIDDLE SRC="changebegin.gif" ALT="changeend"><P> + +<P><IMG ALIGN=MIDDLE SRC="changeend.gif" ALT="changeend"> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/image.gif b/sag-0.6.1-www/Invisible/sag-0.6/image.gif Binary files differnew file mode 100644 index 0000000..7e6cb1a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/image.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/images.aux b/sag-0.6.1-www/Invisible/sag-0.6/images.aux new file mode 100644 index 0000000..8f6adaa --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/images.aux @@ -0,0 +1,13 @@ +\relax +\newlabel{fig:kernel-overview}{{}{2}} +\newlabel{fig:fstree}{{}{3}} +\newlabel{fig:hd-schematic}{{}{4}} +\newlabel{fig:hard-disk-layout}{{}{5}} +\newlabel{tab:partition-ids}{{}{6}} +\newlabel{fig:hd-mount-root}{{}{7}} +\newlabel{fig:hd-mount-all}{{}{8}} +\newlabel{fig:dumpe2fs-output}{{}{9}} +\newlabel{tab:run-levels}{{}{12}} +\newlabel{fig:terminal-logins}{{}{13}} +\newlabel{fig:backup-history-timeline}{{}{14}} +\newlabel{tab:efficient-backup-levels}{{}{15}} diff --git a/sag-0.6.1-www/Invisible/sag-0.6/images.bbl b/sag-0.6.1-www/Invisible/sag-0.6/images.bbl new file mode 100644 index 0000000..678c847 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/images.bbl @@ -0,0 +1,39 @@ +\begin{thebibliography}{Qui95} + +\bibitem[Anv]{device-list} +Peter Anvin. +\newblock Linux device list. +\newblock A list of major and minor device numbers for Linux devices. \ Now + included in the kernel sources. + +\bibitem[Cha]{bootdisk-howto} +Graham Chapman. +\newblock Bootdisk howto. +\newblock Available with other Linux HOWTO's. + +\bibitem[Kir]{network-admin-guide} +Olaf Kirch. +\newblock Linux network administrators' guide. + +\bibitem[Qui95]{fsstnd-1.2} +Daniel Quinlan. +\newblock {\em Linux Filesystem Structure---Release 1.2}, March 1995. +\newblock A description of and a proposal for a standard Linux directory tree, + with the intention is to make it easier to package software and administer + Linux systems by making files appear in standard places. Follows fairly + closely traditional Unix practice, and has got support from most Linux + distributions. Available via FTP from \texttt{ftp.funet.fi}, directory + \texttt{/pub/Linux/doc/fsstnd}. + +\bibitem[TV]{ext2-defrag} +Stephen Tweedie and Alexei Vovenko. +\newblock Linux filesystem defragmenter. +\newblock Available electronically from \ + \texttt{ftp://sunsite.unc.edu/pub/Linux/system/Filesystems/defrag-0.6.tar.gz% +}. + +\bibitem[Wel]{getting-started} +Matt Welsh. +\newblock Installation and getting started guide. + +\end{thebibliography} diff --git a/sag-0.6.1-www/Invisible/sag-0.6/images.idx b/sag-0.6.1-www/Invisible/sag-0.6/images.idx new file mode 100644 index 0000000..df0a2d5 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/images.idx @@ -0,0 +1,2 @@ +\indexentry{/usr}{10} +\indexentry{/home}{10} diff --git a/sag-0.6.1-www/Invisible/sag-0.6/images.log b/sag-0.6.1-www/Invisible/sag-0.6/images.log new file mode 100644 index 0000000..4a58761 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/images.log @@ -0,0 +1,141 @@ +This is TeX, Version 3.14159 (C version 6.1) (format=latex 97.5.30) 15 NOV 1997 02:32 +**./images.tex +(images.tex +LaTeX2e <1996/12/01> +Babel <v3.6h> and hyphenation patterns for american, german, loaded. + +(/usr/lib/texmf/tex/latex/base/report.cls +Document Class: report 1996/10/31 v1.3u Standard LaTeX document class +(/usr/lib/texmf/tex/latex/base/size10.clo +File: size10.clo 1996/10/31 v1.3u Standard LaTeX file (size option) +) +\c@part=\count79 +\c@chapter=\count80 +\c@section=\count81 +\c@subsection=\count82 +\c@subsubsection=\count83 +\c@paragraph=\count84 +\c@subparagraph=\count85 +\c@figure=\count86 +\c@table=\count87 +\abovecaptionskip=\skip41 +\belowcaptionskip=\skip42 +\bibindent=\dimen102 +) (../linuxdoc.sty +Linux Documentation Style `linuxdoc', version 0.40 <7 Oct 93> +) (/usr/lib/texmf/tex/latex/graphics/graphics.sty +Package: graphics 1996/10/31 v1.0c Standard LaTeX Graphics (DPC,SPQR) +(/usr/lib/texmf/tex/latex/graphics/trig.sty +Package: trig 1994/10/16 v1.08 sin cos tan (DPC) +) (/usr/lib/texmf/tex/latex/config/graphics.cfg) +Package graphics Info: Driver file: dvips.def on input line 82. +(/usr/lib/texmf/tex/latex/graphics/dvips.def +File: dvips.def 1996/12/12 v3.0d Driver-dependant file (DPC,SPQR) +)) (/usr/lib/texmf/tex/latex/base/makeidx.sty +Package: makeidx 1995/04/19 v1.0j Standard LaTeX package +) (/usr/lib/texmf/tex/latex/base/t1enc.sty +Package: t1enc 1994/06/01 Standard LaTeX package +) +\@indexfile=\write3 +Writing index file images.idx +\lthtmlwrite=\write4 +\sizebox=\box26 +(images.aux) +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 45. +LaTeX Font Info: ... okay on input line 45. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 45. +LaTeX Font Info: ... okay on input line 45. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 45. +LaTeX Font Info: ... okay on input line 45. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 45. +LaTeX Font Info: ... okay on input line 45. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 45. +LaTeX Font Info: ... okay on input line 45. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 45. +LaTeX Font Info: ... okay on input line 45. +File: linux-logo.ps Graphic file (type eps) +<linux-logo.ps> +Runaway argument? +! Paragraph ended before \setcounter was complete. +<to be read again> + \par +l.52 + +I suspect you've forgotten a `}', causing me to apply this +control sequence to too much text. How can we recover? +My plan is to forget the whole thing and hope for the best. + +[1 + + +] +File: overview/overview-kernel.ps Graphic file (type eps) +<overview/overview-kernel.ps> [2 + +] +File: walkabout/fstree.ps Graphic file (type eps) +<walkabout/fstree.ps> [3 + +] +File: disks/hd-schematic.ps Graphic file (type eps) +<disks/hd-schematic.ps> [4 + +] +File: disks/hd-layout.ps Graphic file (type eps) +<disks/hd-layout.ps> [5 + +] +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <7> on input line 128. +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <5> on input line 128. +[6 + +] +File: disks/hd-mount-separate.ps Graphic file (type eps) +<disks/hd-mount-separate.ps> [7 + +] +File: disks/hd-mount-mounted.ps Graphic file (type eps) +<disks/hd-mount-mounted.ps> [8 + +] +LaTeX Font Info: Try loading font information for T1+cmtt on input line 182. + +(/usr/lib/texmf/tex/latex/base/t1cmtt.fd +File: t1cmtt.fd 1997/01/14 v2.5a Standard LaTeX font definitions +) [9 + +] [10 + +] +latex2htmlSize :tex2html_wrap_inline4269: 7.5pt::2.5pt. +[11 + +] [12 + +] +File: logins/logins-via-terminals.ps Graphic file (type eps) +<logins/logins-via-terminals.ps> [13 + +] +File: backups/backup-timeline.ps Graphic file (type eps) +<backups/backup-timeline.ps> [14 + +] [15 + +] (images.aux) + +LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right. + + ) +Here is how much of TeX's memory you used: + 639 strings out of 10907 + 6846 string characters out of 72326 + 51228 words of memory out of 262141 + 3493 multiletter control sequences out of 9500 + 5794 words of font info for 18 fonts, out of 150000 for 255 + 14 hyphenation exceptions out of 607 + 23i,8n,18p,219b,451s stack positions out of 300i,40n,60p,3000b,4000s + +Output written on images.dvi (15 pages, 5432 bytes). diff --git a/sag-0.6.1-www/Invisible/sag-0.6/images.pl b/sag-0.6.1-www/Invisible/sag-0.6/images.pl new file mode 100644 index 0000000..2e9fb5d --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/images.pl @@ -0,0 +1,36 @@ +# LaTeX2HTML 96.1-h (September 30, 1996) +# Associate images original text with physical files. + +$key = q/{figure}[htb]centerincludegraphicsoverviewoverview-kernel.pscenterlabelfig:kernel-overview{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=626 HEIGHT=547 ALIGN=BOTTOM ALT="figure147" SRC="img2.gif">|; +$key = q/{table}[h]labeltab:run-levelscentertabularllhline0;SPMamp;Haltthesystem.1;SPMamp;Single-usermode(forspecialadministration).2--5;SPMamp;Normaloperation(userdefined).6;SPMamp;Reboot.hlinetabularcenter{table}/; +$cached_env_img{$key} = q|<IMG WIDTH=381 HEIGHT=89 ALIGN=BOTTOM ALT="table2241" SRC="img12.gif">|; +$key = q/{}includegraphicslinux-logo.ps{}/; +$cached_env_img{$key} = q|<IMG WIDTH=194 HEIGHT=169 ALIGN=BOTTOM ALT="tex2html_wrap4243" SRC="img1.gif">|; +$key = q/{figure}[thb]centerincludegraphicsdiskshd-schematic.pscenterlabelfig:hd-schematic{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=367 HEIGHT=410 ALIGN=BOTTOM ALT="figure1034" SRC="img4.gif">|; +$key = q/{figure}[t]centerincludegraphicsbackupsbackup-timeline.pscenterlabelfig:backup-history-timeline{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=592 HEIGHT=96 ALIGN=BOTTOM ALT="figure2979" SRC="img14.gif">|; +$key = q/{tabular}rl5MB;SPMamp;rootfilesystem10MB;SPMamp;swappartition180MB;SPMamp;textttusrindexusrfilesystem120MB;SPMamp;texttthomeindexhomefilesystem15MB;SPMamp;scratchpartition{tabular}/; +$cached_env_img{$key} = q|<IMG WIDTH=189 HEIGHT=102 ALIGN=BOTTOM ALT="tabular1415" SRC="img10.gif">|; +$key = q/{_inline}$(4096-10)times8times4096=133890048${_inline}/; +$cached_env_img{$key} = q|<IMG WIDTH=78 HEIGHT=12 ALIGN=MIDDLE ALT="tex2html_wrap_inline4269" SRC="img11.gif">|; +$key = q/{figure}[thb]centerincludegraphicsdiskshd-mount-mounted.pscenterlabelfig:hd-mount-all{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=371 HEIGHT=185 ALIGN=BOTTOM ALT="figure1233" SRC="img8.gif">|; +$key = q/{figure}[htb]labeltab:efficient-backup-levelscentertabularrlllTape;SPMamp;Level;SPMamp;Backup;SPMamp;Restore;SPMamp;;SPMamp;(days);SPMamp;tapeshline1;SPMamp;0;SPMamp;na;SPMamp;12;SPMamp;3;SPMamp;1;SPMamp;1,23;SPMamp;2;SPMamp;2;SPMamp;1,34;SPMamp;5;SPMamp;1;SPMamp;1,2,45;SPMamp;4;SPMamp;2;SPMamp;1,2,56;SPMamp;7;SPMamp;1;SPMamp;1,2,5,67;SPMamp;6;SPMamp;2;SPMamp;1,2,5,78;SPMamp;9;SPMamp;1;SPMamp;1,2,5,7,89;SPMamp;8;SPMamp;2;SPMamp;1,2,5,7,910;SPMamp;9;SPMamp;1;SPMamp;1,2,5,7,9,1011;SPMamp;9;SPMamp;1;SPMamp;1,2,5,7,9,10,11dots;SPMamp;9;SPMamp;1;SPMamp;1,2,5,7,9,10,11,dotshlinetabularcenter{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=360 HEIGHT=302 ALIGN=BOTTOM ALT="figure2988" SRC="img15.gif">|; +$key = q/{figure}[htb]centerincludegraphicsloginslogins-via-terminals.pscenterlabelfig:terminal-logins{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=461 HEIGHT=734 ALIGN=BOTTOM ALT="figure2514" SRC="img13.gif">|; +$key = q/{figure}[thb]centerincludegraphicsdiskshd-layout.pscenterlabelfig:hard-disk-layout{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=281 HEIGHT=276 ALIGN=BOTTOM ALT="figure1122" SRC="img5.gif">|; +$key = q/{figure}[t]centersmall<verbatim_mark>verbatim3centerlabelfig:dumpe2fs-output{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=421 HEIGHT=569 ALIGN=BOTTOM ALT="figure1374" SRC="img9.gif">|; +$key = q/{figure}[thb]centerincludegraphicsdiskshd-mount-separate.pscenterlabelfig:hd-mount-root{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=680 HEIGHT=99 ALIGN=BOTTOM ALT="figure1226" SRC="img7.gif">|; +$key = q/{table}[ht]centertabularrlrlrlrlhline0;SPMamp;Empty;SPMamp;40;SPMamp;Venix80286;SPMamp;94;SPMamp;AmoebaBBT1;SPMamp;DOS12-bitFAT;SPMamp;51;SPMamp;Novell?;SPMamp;a5;SPMamp;BSD3862;SPMamp;XENIXroot;SPMamp;52;SPMamp;Microport;SPMamp;b7;SPMamp;BSDIfs3;SPMamp;XENIXusr;SPMamp;63;SPMamp;GNUHURD;SPMamp;b8;SPMamp;BSDIswap4;SPMamp;DOS16-bit_inline$;SPMlt;$_inline32M;SPMamp;64;SPMamp;Novell;SPMamp;c7;SPMamp;Syrinx5;SPMamp;Exted;SPMamp;75;SPMamp;PCIX;SPMamp;db;SPMamp;CPM6;SPMamp;DOS16-bit_inline$ge$_inline32M;SPMamp;80;SPMamp;OldMINIX;SPMamp;e1;SPMamp;DOSaccess7;SPMamp;OS2HPFS;SPMamp;81;SPMamp;LinuxMINIX;SPMamp;e3;SPMamp;DOSRO8;SPMamp;AIX;SPMamp;82;SPMamp;Linuxswap;SPMamp;f2;SPMamp;DOSsecondary9;SPMamp;AIXbootable;SPMamp;83;SPMamp;Linuxnative;SPMamp;ff;SPMamp;BBTa;SPMamp;OS2BootManag;SPMamp;93;SPMamp;Amoeba;SPMamp;;SPMamp;hlinetabularcenterlabeltab:partition-ids{table}/; +$cached_env_img{$key} = q|<IMG WIDTH=491 HEIGHT=241 ALIGN=BOTTOM ALT="table1132" SRC="img6.gif">|; +$key = q/{figure}[htb]centerincludegraphicswalkaboutfstree.pscenterlabelfig:fstree{figure}/; +$cached_env_img{$key} = q|<IMG WIDTH=438 HEIGHT=220 ALIGN=BOTTOM ALT="figure424" SRC="img3.gif">|; + +1; + diff --git a/sag-0.6.1-www/Invisible/sag-0.6/images.tex b/sag-0.6.1-www/Invisible/sag-0.6/images.tex new file mode 100644 index 0000000..91e7660 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/images.tex @@ -0,0 +1,353 @@ +\batchmode + + +\documentclass{report} +\makeatletter + + + + + + +\usepackage{linuxdoc} +\usepackage{graphics} +\usepackage{makeidx} +\usepackage{t1enc} +\makeindex + + + + + + + + + + +\newcommand {\defin}[1]{\textbf{#1}} + +\newcommand {\cmd}[1]{\texttt{#1}\index{#1}} + +\newcommand {\fn}[1]{\texttt{#1}\index{#1}} + +\newcommand {\man}[1]{\emph{#1}\index{#1}} + +\newenvironment {chapterquote}{\begin{raggedleft}\it}{\end{raggedleft}\vspace{2em}} + +\newcommand {\meta}{\large\textbf{META:\ }} + +\makeatother +\newenvironment{tex2html_wrap}{}{} +\newwrite\lthtmlwrite +\def\lthtmltypeout#1{{\let\protect\string\immediate\write\lthtmlwrite{#1}}}% +\newbox\sizebox +\textheight 50cm +\begin{document} +\pagestyle{empty} +{\newpage\clearpage\samepage +\includegraphics{linux-logo.ps}}\hbox{}\vfil + + +\setcounter{tocdepth}% + +\stepcounter{chapter} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +{\newpage\clearpage\samepage +\begin{figure}[htb] +\begin{center} +\includegraphics{overview/overview-kernel.ps} +\end{center} + +\label{fig:kernel-overview} +\end{figure}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +{\newpage\clearpage\samepage +\begin{figure}[htb] + \begin{center} + \includegraphics{walkabout/fstree.ps} + \end{center} + + \label{fig:fstree} + \end{figure}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +{\newpage\clearpage\samepage +\begin{figure}[thb] + \begin{center} + \includegraphics{disks/hd-schematic.ps} + \end{center} + + \label{fig:hd-schematic} + \end{figure}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +{\newpage\clearpage\samepage +\begin{figure}[thb] + \begin{center} + \includegraphics{disks/hd-layout.ps} + \end{center} + + \label{fig:hard-disk-layout} + \end{figure}}\hbox{}\vfil + +\stepcounter{subsection} +{\newpage\clearpage\samepage +\begin{table}[ht] + +\begin{center} +\begin{tabular}{rl rl rl rl} +\hline +0 & Empty & 40 & Venix 80286 & 94 & Amoeba BBT \\ +1 & DOS 12-bit FAT & 51 & Novell? & a5 & BSD/386 \\ +2 & XENIX root & 52 & Microport & b7 & BSDI fs \\ +3 & XENIX usr & 63 & GNU HURD & b8 & BSDI swap \\ +4 & DOS 16-bit $<$32M & 64 & Novell & c7 & Syrinx \\ +5 & Extended & 75 & PC/IX & db & CP/M \\ +6 & DOS 16-bit $\ge$32M & 80 & Old MINIX & e1 & DOS access \\ +7 & OS/2 HPFS & 81 & Linux/MINIX & e3 & DOS R/O \\ +8 & AIX & 82 & Linux swap & f2 & DOS secondary \\ +9 & AIX bootable & 83 & Linux native & ff & BBT \\ +a & OS/2 Boot Manag & 93 & Amoeba & & \\ +\hline +\end{tabular} +\end{center} +\label{tab:partition-ids} +\end{table}}\hbox{}\vfil + +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +{\newpage\clearpage\samepage +\begin{figure}[thb] + \begin{center} + \includegraphics{disks/hd-mount-separate.ps} + \end{center} + + \label{fig:hd-mount-root} + \end{figure}}\hbox{}\vfil + +{\newpage\clearpage\samepage +\begin{figure}[thb] + \begin{center} + \includegraphics{disks/hd-mount-mounted.ps} + \end{center} + + \label{fig:hd-mount-all} + \end{figure}}\hbox{}\vfil + +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +{\newpage\clearpage\samepage +\begin{figure}[t] +\begin{center} +\small +\begin{verbatim}dumpe2fs 0.5b, 11-Mar-95 for EXT2 FS 0.5a, 94/10/23 +Filesystem magic number: 0xEF53 +Filesystem state: clean +Errors behavior: Continue +Inode count: 360 +Block count: 1440 +Reserved block count: 72 +Free blocks: 1133 +Free inodes: 326 +First block: 1 +Block size: 1024 +Fragment size: 1024 +Blocks per group: 8192 +Fragments per group: 8192 +Inodes per group: 360 +Last mount time: Tue Aug 8 01:52:52 1995 +Last write time: Tue Aug 8 01:53:28 1995 +Mount count: 3 +Maximum mount count: 20 +Last checked: Tue Aug 8 01:06:31 1995 +Check interval: 0 +Reserved blocks uid: 0 (user root) +Reserved blocks gid: 0 (group root) + +Group 0: + Block bitmap at 3, Inode bitmap at 4, Inode table at 5 + 1133 free blocks, 326 free inodes, 2 directories + Free blocks: 307-1439 + Free inodes: 35-360\end{verbatim} +\end{center} + +\label{fig:dumpe2fs-output} +\end{figure}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +{\newpage\clearpage\samepage +\begin{tabular}{r l} + 5 MB & root filesystem \\ + 10 MB & swap partition \\ + 180 MB & \texttt{/usr}\index{/usr} filesystem \\ + 120 MB & \texttt{/home}\index{/home} filesystem \\ + 15 MB & scratch partition + \end{tabular}}\hbox{}\vfil + +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +{\newpage\clearpage\samepage +\setbox\sizebox=\hbox{$(4096-10)\times 8\times 4096 = 133890048$}\lthtmltypeout{latex2htmlSize :tex2html_wrap_inline4269: \the\ht\sizebox::\the\dp\sizebox.}\box\sizebox}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +{\newpage\clearpage\samepage +\begin{table}[h] + + \label{tab:run-levels} + \begin{center} + \begin{tabular}{ll} + \hline + 0 & Halt the system. \\ + 1 & Single-user mode (for special administration). \\ + 2--5 & Normal operation (user defined). \\ + 6 & Reboot. \\ + \hline + \end{tabular} + \end{center} + \end{table}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +{\newpage\clearpage\samepage +\begin{figure}[htb] +\begin{center} +\includegraphics{logins/logins-via-terminals.ps} +\end{center} + +\label{fig:terminal-logins} +\end{figure}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{subsection} +\stepcounter{subsection} +\stepcounter{section} +{\newpage\clearpage\samepage +\begin{figure}[t] + \begin{center} + \includegraphics{backups/backup-timeline.ps} + \end{center} + + \label{fig:backup-history-timeline} + \end{figure}}\hbox{}\vfil + +{\newpage\clearpage\samepage +\begin{figure}[htb] + +\label{tab:efficient-backup-levels} +\begin{center} +\begin{tabular}{r l l l} +Tape & Level & Backup& Restore \\ +& & (days)& tapes \\ +\hline +1 & 0 & n/a & 1 \\ +2 & 3 & 1 & 1, 2 \\ +3 & 2 & 2 & 1, 3 \\ +4 & 5 & 1 & 1, 2, 4 \\ +5 & 4 & 2 & 1, 2, 5 \\ +6 & 7 & 1 & 1, 2, 5, 6 \\ +7 & 6 & 2 & 1, 2, 5, 7 \\ +8 & 9 & 1 & 1, 2, 5, 7, 8 \\ +9 & 8 & 2 & 1, 2, 5, 7, 9 \\ +10 & 9 & 1 & 1, 2, 5, 7, 9, 10 \\ +11 & 9 & 1 & 1, 2, 5, 7, 9, 10, 11 \\ +\dots & 9 & 1 & 1, 2, 5, 7, 9, 10, 11, \dots \\ +\hline +\end{tabular} +\end{center} +\end{figure}}\hbox{}\vfil + +\stepcounter{section} +\stepcounter{section} +\stepcounter{chapter} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\stepcounter{section} +\appendix +\stepcounter{chapter} +\stepcounter{chapter} +\stepcounter{chapter} + +\clearpage +\end{document} diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img1.gif b/sag-0.6.1-www/Invisible/sag-0.6/img1.gif Binary files differnew file mode 100644 index 0000000..6eafa6e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img1.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img10.gif b/sag-0.6.1-www/Invisible/sag-0.6/img10.gif Binary files differnew file mode 100644 index 0000000..4a35e50 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img10.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img11.gif b/sag-0.6.1-www/Invisible/sag-0.6/img11.gif Binary files differnew file mode 100644 index 0000000..26de186 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img11.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img12.gif b/sag-0.6.1-www/Invisible/sag-0.6/img12.gif Binary files differnew file mode 100644 index 0000000..6622be7 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img12.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img13.gif b/sag-0.6.1-www/Invisible/sag-0.6/img13.gif Binary files differnew file mode 100644 index 0000000..d37fa38 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img13.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img14.gif b/sag-0.6.1-www/Invisible/sag-0.6/img14.gif Binary files differnew file mode 100644 index 0000000..245b3ff --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img14.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img15.gif b/sag-0.6.1-www/Invisible/sag-0.6/img15.gif Binary files differnew file mode 100644 index 0000000..c8f5f15 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img15.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img2.gif b/sag-0.6.1-www/Invisible/sag-0.6/img2.gif Binary files differnew file mode 100644 index 0000000..b4b3bf8 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img2.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img3.gif b/sag-0.6.1-www/Invisible/sag-0.6/img3.gif Binary files differnew file mode 100644 index 0000000..389a0c2 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img3.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img4.gif b/sag-0.6.1-www/Invisible/sag-0.6/img4.gif Binary files differnew file mode 100644 index 0000000..47832e3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img4.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img5.gif b/sag-0.6.1-www/Invisible/sag-0.6/img5.gif Binary files differnew file mode 100644 index 0000000..951fa4c --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img5.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img6.gif b/sag-0.6.1-www/Invisible/sag-0.6/img6.gif Binary files differnew file mode 100644 index 0000000..fd2d8f1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img6.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img7.gif b/sag-0.6.1-www/Invisible/sag-0.6/img7.gif Binary files differnew file mode 100644 index 0000000..b7d97b5 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img7.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img8.gif b/sag-0.6.1-www/Invisible/sag-0.6/img8.gif Binary files differnew file mode 100644 index 0000000..7337e93 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img8.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/img9.gif b/sag-0.6.1-www/Invisible/sag-0.6/img9.gif Binary files differnew file mode 100644 index 0000000..cf34235 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/img9.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/index.html b/sag-0.6.1-www/Invisible/sag-0.6/index.html new file mode 100644 index 0000000..d39d103 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/index.html @@ -0,0 +1,76 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<!--Then manually edited by Lars Wirzenius --> +<HTML> +<HEAD> +<TITLE>Linux System Administrators' Guide 0.6</TITLE> +<META NAME="description" CONTENT="Linux System Administrators' Guide 0.6"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> + +<BODY LANG="EN" > + +<h1>Linux System Administrators' Guide 0.6</h1> + +<p>Lars Wirzenius + +<p><IMG WIDTH=97 ALIGN=BOTTOM ALT="[Linux logo]" SRC="linux-logo.gif"> +The Linux Documentation Project + +<P>This is version 0.6 of the Linux System Administrators' Guide. <BR> +Published November 15, 1997. + +<hr> + +<a href="node1.html">Contents</a> + +<hr> + +<P>The LaTeX source code and other machine readable formats +can be found on the Internet via anonymous ftp on +<a href="ftp://sunsite.unc.edu/pub/Linux/docs/LDP/"><tt>sunsite.unc.edu</tt>, +in the directory <tt>/pub/Linux/docs/LDP</tt></a>. +Also available are at least Postscript and TeX .DVI formats. +The official home page for the book is +\texttt{http://www.iki.fi/liw/linux/sag/}. The current version can always +be found at that location. + +<P>Copyright © 1993-1997 Lars Wirzenius. + +<P>Trademarks are owned by their owners. + +<P>Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. + +<P>Permission is granted to process the document source code +through TeX or other formatters and print the +results, and distribute the printed document, +provided the printed document carries copying permission +notice identical to this one, including the references to where +the source code can be found and the official home page. + +<P>Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the entire +resulting derived work is distributed under the terms of a permission +notice identical to this one. + +<P>Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions. + +<P>The author would appreciate a notification of modifications, translations, +and printed versions. Thank you. + +<P> +<hr> + +<P>This page is dedicated to a future dedication. + +<P>In the mean time...I'd like someone who knows him let Terry +Pratchett know that his way of using footnotes is rather inspiring. + +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/index_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/index_motif.gif Binary files differnew file mode 100644 index 0000000..b9b3108 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/index_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/internals.pl b/sag-0.6.1-www/Invisible/sag-0.6/internals.pl new file mode 100644 index 0000000..b09dd03 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/internals.pl @@ -0,0 +1,117 @@ +# LaTeX2HTML 96.1-h (September 30, 1996) +# Associate internals original text with physical files. + +$key = q/secswapalloc/; +$ref_files{$key} = "$dir".q|node64.html|; +$noresave{$key} = "$nosave"; +$key = q/secsingleusermode/; +$ref_files{$key} = "$dir".q|node78.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_bootdisk-howto/; +$ref_files{$key} = "$dir".q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/chapbackups/; +$ref_files{$key} = "$dir".q|node96.html|; +$noresave{$key} = "$nosave"; +$key = q/chapwalkabout/; +$ref_files{$key} = "$dir".q|node20.html|; +$noresave{$key} = "$nosave"; +$key = q/secbootcloseup/; +$ref_files{$key} = "$dir".q|node68.html|; +$noresave{$key} = "$nosave"; +$key = q/subsecmanualadduser/; +$ref_files{$key} = "$dir".q|node92.html|; +$noresave{$key} = "$nosave"; +$key = q/fighdmountall/; +$ref_files{$key} = "$dir".q|node46.html|; +$noresave{$key} = "$nosave"; +$key = q/fighdschematic/; +$ref_files{$key} = "$dir".q|node30.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_fsstnd-1.2/; +$ref_files{$key} = "$dir".q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/chlogins/; +$ref_files{$key} = "$dir".q|node79.html|; +$noresave{$key} = "$nosave"; +$key = q/fighdmountroot/; +$ref_files{$key} = "$dir".q|node46.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_device-list/; +$ref_files{$key} = "$dir".q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/figterminallogins/; +$ref_files{$key} = "$dir".q|node80.html|; +$noresave{$key} = "$nosave"; +$key = q/figharddisklayout/; +$ref_files{$key} = "$dir".q|node37.html|; +$noresave{$key} = "$nosave"; +$key = q/chinit/; +$ref_files{$key} = "$dir".q|node73.html|; +$noresave{$key} = "$nosave"; +$key = q/secNFS/; +$ref_files{$key} = "$dir".q|node16.html|; +$noresave{$key} = "$nosave"; +$key = q/chapuseradmin/; +$ref_files{$key} = "$dir".q|node86.html|; +$noresave{$key} = "$nosave"; +$key = q/tabefficientbackuplevels/; +$ref_files{$key} = "$dir".q|node103.html|; +$noresave{$key} = "$nosave"; +$key = q/chboothalt/; +$ref_files{$key} = "$dir".q|node66.html|; +$noresave{$key} = "$nosave"; +$key = q/secbuffercache/; +$ref_files{$key} = "$dir".q|node65.html|; +$noresave{$key} = "$nosave"; +$key = q/chapmeasureholes/; +$ref_files{$key} = "$dir".q|node111.html|; +$noresave{$key} = "$nosave"; +$key = q/chaptime/; +$ref_files{$key} = "$dir".q|node106.html|; +$noresave{$key} = "$nosave"; +$key = q/secmkfs/; +$ref_files{$key} = "$dir".q|node45.html|; +$noresave{$key} = "$nosave"; +$key = q/figdumpe2fsoutput/; +$ref_files{$key} = "$dir".q|node51.html|; +$noresave{$key} = "$nosave"; +$key = q/figkerneloverview/; +$ref_files{$key} = "$dir".q|node7.html|; +$noresave{$key} = "$nosave"; +$key = q/tabpartitionids/; +$ref_files{$key} = "$dir".q|node38.html|; +$noresave{$key} = "$nosave"; +$key = q/secfilesystems/; +$ref_files{$key} = "$dir".q|node41.html|; +$noresave{$key} = "$nosave"; +$key = q/chapoverview/; +$ref_files{$key} = "$dir".q|node5.html|; +$noresave{$key} = "$nosave"; +$key = q/figbackuphistorytimeline/; +$ref_files{$key} = "$dir".q|node103.html|; +$noresave{$key} = "$nosave"; +$key = q/tabrunlevels/; +$ref_files{$key} = "$dir".q|node76.html|; +$noresave{$key} = "$nosave"; +$key = q/subsecmount/; +$ref_files{$key} = "$dir".q|node46.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_getting-started/; +$ref_files{$key} = "$dir".q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/chapmem/; +$ref_files{$key} = "$dir".q|node59.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_ext2-defrag/; +$ref_files{$key} = "$dir".q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/figfstree/; +$ref_files{$key} = "$dir".q|node21.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_network-admin-guide/; +$ref_files{$key} = "$dir".q|node113.html|; +$noresave{$key} = "$nosave"; + +1; + diff --git a/sag-0.6.1-www/Invisible/sag-0.6/invis_anchor.xbm b/sag-0.6.1-www/Invisible/sag-0.6/invis_anchor.xbm new file mode 100644 index 0000000..cc208a3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/invis_anchor.xbm @@ -0,0 +1,4 @@ +#define dot_anchor_width 1 +#define dot_anchor_height 1 +static char dot_anchor_bits[] = { + 0xfe}; diff --git a/sag-0.6.1-www/Invisible/sag-0.6/labels.pl b/sag-0.6.1-www/Invisible/sag-0.6/labels.pl new file mode 100644 index 0000000..2321c62 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/labels.pl @@ -0,0 +1,117 @@ +# LaTeX2HTML 96.1-h (September 30, 1996) +# Associate labels original text with physical files. + +$key = q/secswapalloc/; +$external_labels{$key} = "$URL/" . q|node64.html|; +$noresave{$key} = "$nosave"; +$key = q/secsingleusermode/; +$external_labels{$key} = "$URL/" . q|node78.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_bootdisk-howto/; +$external_labels{$key} = "$URL/" . q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/chapbackups/; +$external_labels{$key} = "$URL/" . q|node96.html|; +$noresave{$key} = "$nosave"; +$key = q/chapwalkabout/; +$external_labels{$key} = "$URL/" . q|node20.html|; +$noresave{$key} = "$nosave"; +$key = q/secbootcloseup/; +$external_labels{$key} = "$URL/" . q|node68.html|; +$noresave{$key} = "$nosave"; +$key = q/subsecmanualadduser/; +$external_labels{$key} = "$URL/" . q|node92.html|; +$noresave{$key} = "$nosave"; +$key = q/fighdmountall/; +$external_labels{$key} = "$URL/" . q|node46.html|; +$noresave{$key} = "$nosave"; +$key = q/fighdschematic/; +$external_labels{$key} = "$URL/" . q|node30.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_fsstnd-1.2/; +$external_labels{$key} = "$URL/" . q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/chlogins/; +$external_labels{$key} = "$URL/" . q|node79.html|; +$noresave{$key} = "$nosave"; +$key = q/fighdmountroot/; +$external_labels{$key} = "$URL/" . q|node46.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_device-list/; +$external_labels{$key} = "$URL/" . q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/figterminallogins/; +$external_labels{$key} = "$URL/" . q|node80.html|; +$noresave{$key} = "$nosave"; +$key = q/figharddisklayout/; +$external_labels{$key} = "$URL/" . q|node37.html|; +$noresave{$key} = "$nosave"; +$key = q/chinit/; +$external_labels{$key} = "$URL/" . q|node73.html|; +$noresave{$key} = "$nosave"; +$key = q/secNFS/; +$external_labels{$key} = "$URL/" . q|node16.html|; +$noresave{$key} = "$nosave"; +$key = q/chapuseradmin/; +$external_labels{$key} = "$URL/" . q|node86.html|; +$noresave{$key} = "$nosave"; +$key = q/tabefficientbackuplevels/; +$external_labels{$key} = "$URL/" . q|node103.html|; +$noresave{$key} = "$nosave"; +$key = q/chboothalt/; +$external_labels{$key} = "$URL/" . q|node66.html|; +$noresave{$key} = "$nosave"; +$key = q/secbuffercache/; +$external_labels{$key} = "$URL/" . q|node65.html|; +$noresave{$key} = "$nosave"; +$key = q/chapmeasureholes/; +$external_labels{$key} = "$URL/" . q|node111.html|; +$noresave{$key} = "$nosave"; +$key = q/chaptime/; +$external_labels{$key} = "$URL/" . q|node106.html|; +$noresave{$key} = "$nosave"; +$key = q/secmkfs/; +$external_labels{$key} = "$URL/" . q|node45.html|; +$noresave{$key} = "$nosave"; +$key = q/figdumpe2fsoutput/; +$external_labels{$key} = "$URL/" . q|node51.html|; +$noresave{$key} = "$nosave"; +$key = q/figkerneloverview/; +$external_labels{$key} = "$URL/" . q|node7.html|; +$noresave{$key} = "$nosave"; +$key = q/tabpartitionids/; +$external_labels{$key} = "$URL/" . q|node38.html|; +$noresave{$key} = "$nosave"; +$key = q/secfilesystems/; +$external_labels{$key} = "$URL/" . q|node41.html|; +$noresave{$key} = "$nosave"; +$key = q/chapoverview/; +$external_labels{$key} = "$URL/" . q|node5.html|; +$noresave{$key} = "$nosave"; +$key = q/figbackuphistorytimeline/; +$external_labels{$key} = "$URL/" . q|node103.html|; +$noresave{$key} = "$nosave"; +$key = q/tabrunlevels/; +$external_labels{$key} = "$URL/" . q|node76.html|; +$noresave{$key} = "$nosave"; +$key = q/subsecmount/; +$external_labels{$key} = "$URL/" . q|node46.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_getting-started/; +$external_labels{$key} = "$URL/" . q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/chapmem/; +$external_labels{$key} = "$URL/" . q|node59.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_ext2-defrag/; +$external_labels{$key} = "$URL/" . q|node113.html|; +$noresave{$key} = "$nosave"; +$key = q/figfstree/; +$external_labels{$key} = "$URL/" . q|node21.html|; +$noresave{$key} = "$nosave"; +$key = q/cite_network-admin-guide/; +$external_labels{$key} = "$URL/" . q|node113.html|; +$noresave{$key} = "$nosave"; + +1; + diff --git a/sag-0.6.1-www/Invisible/sag-0.6/linux-logo.gif b/sag-0.6.1-www/Invisible/sag-0.6/linux-logo.gif Binary files differnew file mode 100644 index 0000000..5161948 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/linux-logo.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/long-contents.html b/sag-0.6.1-www/Invisible/sag-0.6/long-contents.html new file mode 100644 index 0000000..879a95f --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/long-contents.html @@ -0,0 +1,174 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Contents</TITLE> +<META NAME="description" CONTENT="Contents"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html180" HREF="node2.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html178" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html172" HREF="sag.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html182" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html181" HREF="node2.html">Introduction</A> +<B>Up:</B> <A NAME="tex2html179" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html173" HREF="sag.html">Linux System Administrators' Guide </A> +<BR> <P> +<P><H2><A NAME="SECTION00100000000000000000">Contents</A></H2> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html183" HREF="node2.html#SECTION00200000000000000000">Introduction</A> +<LI> <A NAME="tex2html184" HREF="node5.html#SECTION00300000000000000000">Overview of a Linux System</A> +<UL> +<LI> <A NAME="tex2html185" HREF="node6.html#SECTION00310000000000000000">Various parts of an operating system</A> +<LI> <A NAME="tex2html186" HREF="node7.html#SECTION00320000000000000000">Important parts of the kernel</A> +<LI> <A NAME="tex2html187" HREF="node8.html#SECTION00330000000000000000">Major services in a UNIX system</A> +<UL> +<LI> <A NAME="tex2html188" HREF="node9.html#SECTION00331000000000000000"><tt>init</tt></A> +<LI> <A NAME="tex2html189" HREF="node10.html#SECTION00332000000000000000">Logins from terminals</A> +<LI> <A NAME="tex2html190" HREF="node11.html#SECTION00333000000000000000">Syslog</A> +<LI> <A NAME="tex2html191" HREF="node12.html#SECTION00334000000000000000">Periodic command execution: <tt>cron</tt> and <tt>at</tt></A> +<LI> <A NAME="tex2html192" HREF="node13.html#SECTION00335000000000000000">Graphical user interface</A> +<LI> <A NAME="tex2html193" HREF="node14.html#SECTION00336000000000000000">Networking</A> +<LI> <A NAME="tex2html194" HREF="node15.html#SECTION00337000000000000000">Network logins</A> +<LI> <A NAME="tex2html195" HREF="node16.html#SECTION00338000000000000000">Network file systems</A> +<LI> <A NAME="tex2html196" HREF="node17.html#SECTION00339000000000000000">Mail</A> +<LI> <A NAME="tex2html197" HREF="node18.html#SECTION003310000000000000000">Printing</A> +</UL> +<LI> <A NAME="tex2html198" HREF="node19.html#SECTION00340000000000000000">The filesystem layout</A> +</UL> +<LI> <A NAME="tex2html199" HREF="node20.html#SECTION00400000000000000000">Overview of the Directory Tree</A> +<UL> +<LI> <A NAME="tex2html200" HREF="node21.html#SECTION00410000000000000000">Background</A> +<LI> <A NAME="tex2html201" HREF="node22.html#SECTION00420000000000000000">The root filesystem</A> +<UL> +<LI> <A NAME="tex2html202" HREF="node23.html#SECTION00421000000000000000">The <tt>/etc</tt> directory</A> +<LI> <A NAME="tex2html203" HREF="node24.html#SECTION00422000000000000000">The <tt>/dev</tt> directory</A> +</UL> +<LI> <A NAME="tex2html204" HREF="node25.html#SECTION00430000000000000000">The <tt>/usr</tt> filesystem</A> +<LI> <A NAME="tex2html205" HREF="node26.html#SECTION00440000000000000000">The <tt>/var</tt> filesystem</A> +<LI> <A NAME="tex2html206" HREF="node27.html#SECTION00450000000000000000">The <tt>/proc</tt> filesystem</A> +</UL> +<LI> <A NAME="tex2html207" HREF="node28.html#SECTION00500000000000000000">Using Disks and Other Storage Media</A> +<UL> +<LI> <A NAME="tex2html208" HREF="node29.html#SECTION00510000000000000000">Two kinds of devices</A> +<LI> <A NAME="tex2html209" HREF="node30.html#SECTION00520000000000000000">Hard disks</A> +<LI> <A NAME="tex2html210" HREF="node31.html#SECTION00530000000000000000">Floppies</A> +<LI> <A NAME="tex2html211" HREF="node32.html#SECTION00540000000000000000">CD-ROM's</A> +<LI> <A NAME="tex2html212" HREF="node33.html#SECTION00550000000000000000">Tapes</A> +<LI> <A NAME="tex2html213" HREF="node34.html#SECTION00560000000000000000">Formatting</A> +<LI> <A NAME="tex2html214" HREF="node35.html#SECTION00570000000000000000">Partitions</A> +<UL> +<LI> <A NAME="tex2html215" HREF="node36.html#SECTION00571000000000000000">The MBR, boot sectors and partition table</A> +<LI> <A NAME="tex2html216" HREF="node37.html#SECTION00572000000000000000">Extended and logical partitions</A> +<LI> <A NAME="tex2html217" HREF="node38.html#SECTION00573000000000000000">Partition types</A> +<LI> <A NAME="tex2html218" HREF="node39.html#SECTION00574000000000000000">Partitioning a hard disk</A> +<LI> <A NAME="tex2html219" HREF="node40.html#SECTION00575000000000000000">Device files and partitions</A> +</UL> +<LI> <A NAME="tex2html220" HREF="node41.html#SECTION00580000000000000000">Filesystems</A> +<UL> +<LI> <A NAME="tex2html221" HREF="node42.html#SECTION00581000000000000000">What are filesystems?</A> +<LI> <A NAME="tex2html222" HREF="node43.html#SECTION00582000000000000000">Filesystems galore</A> +<LI> <A NAME="tex2html223" HREF="node44.html#SECTION00583000000000000000">Which filesystem should be used?</A> +<LI> <A NAME="tex2html224" HREF="node45.html#SECTION00584000000000000000">Creating a filesystem</A> +<LI> <A NAME="tex2html225" HREF="node46.html#SECTION00585000000000000000">Mounting and unmounting</A> +<LI> <A NAME="tex2html226" HREF="node47.html#SECTION00586000000000000000">Checking filesystem integrity with <tt>fsck</tt></A> +<LI> <A NAME="tex2html227" HREF="node48.html#SECTION00587000000000000000">Checking for disk errors with <tt>badblocks</tt></A> +<LI> <A NAME="tex2html228" HREF="node49.html#SECTION00588000000000000000">Fighting fragmentation</A> +<LI> <A NAME="tex2html229" HREF="node50.html#SECTION00589000000000000000">Other tools for all filesystems</A> +<LI> <A NAME="tex2html230" HREF="node51.html#SECTION005810000000000000000">Other tools for the ext2 filesystem</A> +</UL> +<LI> <A NAME="tex2html231" HREF="node52.html#SECTION00590000000000000000">Disks without filesystems</A> +<LI> <A NAME="tex2html232" HREF="node53.html#SECTION005100000000000000000">Allocating disk space</A> +<UL> +<LI> <A NAME="tex2html233" HREF="node54.html#SECTION005101000000000000000">Partitioning schemes</A> +<LI> <A NAME="tex2html234" HREF="node55.html#SECTION005102000000000000000">Space requirements</A> +<LI> <A NAME="tex2html235" HREF="node56.html#SECTION005103000000000000000">Examples of hard disk allocation</A> +<LI> <A NAME="tex2html236" HREF="node57.html#SECTION005104000000000000000">Adding more disk space for Linux</A> +<LI> <A NAME="tex2html237" HREF="node58.html#SECTION005105000000000000000">Tips for saving disk space</A> +</UL> +</UL> +<LI> <A NAME="tex2html238" HREF="node59.html#SECTION00600000000000000000">Memory Management</A> +<UL> +<LI> <A NAME="tex2html239" HREF="node60.html#SECTION00610000000000000000">What is virtual memory?</A> +<LI> <A NAME="tex2html240" HREF="node61.html#SECTION00620000000000000000">Creating a swap space</A> +<LI> <A NAME="tex2html241" HREF="node62.html#SECTION00630000000000000000">Using a swap space</A> +<LI> <A NAME="tex2html242" HREF="node63.html#SECTION00640000000000000000">Sharing swap spaces with other operating systems</A> +<LI> <A NAME="tex2html243" HREF="node64.html#SECTION00650000000000000000">Allocating swap space</A> +<LI> <A NAME="tex2html244" HREF="node65.html#SECTION00660000000000000000">The buffer cache</A> +</UL> +<LI> <A NAME="tex2html245" HREF="node66.html#SECTION00700000000000000000">Boots And Shutdowns</A> +<UL> +<LI> <A NAME="tex2html246" HREF="node67.html#SECTION00710000000000000000">An overview of boots and shutdowns</A> +<LI> <A NAME="tex2html247" HREF="node68.html#SECTION00720000000000000000">The boot process in closer look</A> +<LI> <A NAME="tex2html248" HREF="node69.html#SECTION00730000000000000000">More about shutdowns</A> +<LI> <A NAME="tex2html249" HREF="node70.html#SECTION00740000000000000000">Rebooting</A> +<LI> <A NAME="tex2html250" HREF="node71.html#SECTION00750000000000000000">Single user mode</A> +<LI> <A NAME="tex2html251" HREF="node72.html#SECTION00760000000000000000">Emergency boot floppies</A> +</UL> +<LI> <A NAME="tex2html252" HREF="node73.html#SECTION00800000000000000000"><tt>init</tt></A> +<UL> +<LI> <A NAME="tex2html253" HREF="node74.html#SECTION00810000000000000000"><tt>init</tt> comes first</A> +<LI> <A NAME="tex2html254" HREF="node75.html#SECTION00820000000000000000">Configuring <tt>init</tt>: the <tt>/etc/inittab</tt> file</A> +<LI> <A NAME="tex2html255" HREF="node76.html#SECTION00830000000000000000">Run levels</A> +<LI> <A NAME="tex2html256" HREF="node77.html#SECTION00840000000000000000">Special configuration in <tt>/etc/inittab</tt></A> +<LI> <A NAME="tex2html257" HREF="node78.html#SECTION00850000000000000000">Booting in single user mode</A> +</UL> +<LI> <A NAME="tex2html258" HREF="node79.html#SECTION00900000000000000000">Logging In And Out</A> +<UL> +<LI> <A NAME="tex2html259" HREF="node80.html#SECTION00910000000000000000">Logins via terminals</A> +<LI> <A NAME="tex2html260" HREF="node81.html#SECTION00920000000000000000">Logins via the network</A> +<LI> <A NAME="tex2html261" HREF="node82.html#SECTION00930000000000000000">What <tt>login</tt> does</A> +<LI> <A NAME="tex2html262" HREF="node83.html#SECTION00940000000000000000">X and xdm</A> +<LI> <A NAME="tex2html263" HREF="node84.html#SECTION00950000000000000000">Access control</A> +<LI> <A NAME="tex2html264" HREF="node85.html#SECTION00960000000000000000">Shell startup</A> +</UL> +<LI> <A NAME="tex2html265" HREF="node86.html#SECTION001000000000000000000">Managing user accounts</A> +<UL> +<LI> <A NAME="tex2html266" HREF="node87.html#SECTION001010000000000000000">What's an account?</A> +<LI> <A NAME="tex2html267" HREF="node88.html#SECTION001020000000000000000">Creating a user</A> +<UL> +<LI> <A NAME="tex2html268" HREF="node89.html#SECTION001021000000000000000"><tt>/etc/passwd</tt> and other informative files</A> +<LI> <A NAME="tex2html269" HREF="node90.html#SECTION001022000000000000000">Picking numeric user and group ids</A> +<LI> <A NAME="tex2html270" HREF="node91.html#SECTION001023000000000000000">Initial environment: <tt>/etc/skel</tt></A> +<LI> <A NAME="tex2html271" HREF="node92.html#SECTION001024000000000000000">Creating a user by hand</A> +</UL> +<LI> <A NAME="tex2html272" HREF="node93.html#SECTION001030000000000000000">Changing user properties</A> +<LI> <A NAME="tex2html273" HREF="node94.html#SECTION001040000000000000000">Removing a user</A> +<LI> <A NAME="tex2html274" HREF="node95.html#SECTION001050000000000000000">Disabling a user temporarily</A> +</UL> +<LI> <A NAME="tex2html275" HREF="node96.html#SECTION001100000000000000000">Backups</A> +<UL> +<LI> <A NAME="tex2html276" HREF="node97.html#SECTION001110000000000000000">On the importance of being backed up</A> +<LI> <A NAME="tex2html277" HREF="node98.html#SECTION001120000000000000000">Selecting the backup medium</A> +<LI> <A NAME="tex2html278" HREF="node99.html#SECTION001130000000000000000">Selecting the backup tool</A> +<LI> <A NAME="tex2html279" HREF="node100.html#SECTION001140000000000000000">Simple backups</A> +<UL> +<LI> <A NAME="tex2html280" HREF="node101.html#SECTION001141000000000000000">Making backups with <tt>tar</tt></A> +<LI> <A NAME="tex2html281" HREF="node102.html#SECTION001142000000000000000">Restoring files with <tt>tar</tt></A> +</UL> +<LI> <A NAME="tex2html282" HREF="node103.html#SECTION001150000000000000000">Multilevel backups</A> +<LI> <A NAME="tex2html283" HREF="node104.html#SECTION001160000000000000000">What to back up</A> +<LI> <A NAME="tex2html284" HREF="node105.html#SECTION001170000000000000000">Compressed backups</A> +</UL> +<LI> <A NAME="tex2html285" HREF="node106.html#SECTION001200000000000000000">Keeping Time</A> +<UL> +<LI> <A NAME="tex2html286" HREF="node107.html#SECTION001210000000000000000">Time zones</A> +<LI> <A NAME="tex2html287" HREF="node108.html#SECTION001220000000000000000">The hardware and software clocks</A> +<LI> <A NAME="tex2html288" HREF="node109.html#SECTION001230000000000000000">Showing and setting time</A> +<LI> <A NAME="tex2html289" HREF="node110.html#SECTION001240000000000000000">When the clock is wrong</A> +</UL> +<LI> <A NAME="tex2html290" HREF="node111.html#SECTION001300000000000000000">Measuring Holes</A> +<LI> <A NAME="tex2html291" HREF="node112.html#SECTION001400000000000000000">Glossary (DRAFT)</A> +<LI> <A NAME="tex2html292" HREF="node113.html#SECTION001500000000000000000">References</A> +<LI> <A NAME="tex2html293" HREF="node114.html#SECTION001600000000000000000">Index</A> +<LI> <A NAME="tex2html294" HREF="node115.html#SECTION001700000000000000000"> About this document ... </A> +</UL> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/missfont.log b/sag-0.6.1-www/Invisible/sag-0.6/missfont.log new file mode 100644 index 0000000..8b4f02e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/missfont.log @@ -0,0 +1 @@ +MakeTeXPK cmr10 600 600 1+0/600 ljfour diff --git a/sag-0.6.1-www/Invisible/sag-0.6/next_group_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/next_group_motif.gif Binary files differnew file mode 100644 index 0000000..833af4d --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/next_group_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/next_group_motif_gr.gif b/sag-0.6.1-www/Invisible/sag-0.6/next_group_motif_gr.gif Binary files differnew file mode 100644 index 0000000..c04fec3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/next_group_motif_gr.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/next_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/next_motif.gif Binary files differnew file mode 100644 index 0000000..7a2dbe9 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/next_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/next_motif_gr.gif b/sag-0.6.1-www/Invisible/sag-0.6/next_motif_gr.gif Binary files differnew file mode 100644 index 0000000..1416b1c --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/next_motif_gr.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node1.html b/sag-0.6.1-www/Invisible/sag-0.6/node1.html new file mode 100644 index 0000000..a762486 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node1.html @@ -0,0 +1,22 @@ +<html><head><title>Short Contents</title></head><body> +<p><a href="long-contents.html">To detailed contents</a></p> +<h1>Short Contents</h1> +<ul> +<LI> <A NAME="tex2html183" HREF="node2.html#SECTION00200000000000000000">Introduction</A> +<LI> <A NAME="tex2html184" HREF="node5.html#SECTION00300000000000000000">Overview of a Linux System</A> +<LI> <A NAME="tex2html199" HREF="node20.html#SECTION00400000000000000000">Overview of the Directory Tree</A> +<LI> <A NAME="tex2html207" HREF="node28.html#SECTION00500000000000000000">Using Disks and Other Storage Media</A> +<LI> <A NAME="tex2html232" HREF="node53.html#SECTION005100000000000000000">Allocating disk space</A> +<LI> <A NAME="tex2html238" HREF="node59.html#SECTION00600000000000000000">Memory Management</A> +<LI> <A NAME="tex2html245" HREF="node66.html#SECTION00700000000000000000">Boots And Shutdowns</A> +<LI> <A NAME="tex2html252" HREF="node73.html#SECTION00800000000000000000"><tt>init</tt></A> +<LI> <A NAME="tex2html258" HREF="node79.html#SECTION00900000000000000000">Logging In And Out</A> +<LI> <A NAME="tex2html265" HREF="node86.html#SECTION001000000000000000000">Managing user accounts</A> +<LI> <A NAME="tex2html275" HREF="node96.html#SECTION001100000000000000000">Backups</A> +<LI> <A NAME="tex2html285" HREF="node106.html#SECTION001200000000000000000">Keeping Time</A> +<LI> <A NAME="tex2html290" HREF="node111.html#SECTION001300000000000000000">Measuring Holes</A> +<LI> <A NAME="tex2html291" HREF="node112.html#SECTION001400000000000000000">Glossary (DRAFT)</A> +<LI> <A NAME="tex2html292" HREF="node113.html#SECTION001500000000000000000">References</A> +<LI> <A NAME="tex2html293" HREF="node114.html#SECTION001600000000000000000">Index</A> +<LI> <A NAME="tex2html294" HREF="node115.html#SECTION001700000000000000000"> About this document ... </A> +</ul></body></html> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node10.html b/sag-0.6.1-www/Invisible/sag-0.6/node10.html new file mode 100644 index 0000000..a17b90a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node10.html @@ -0,0 +1,43 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Logins from terminals</TITLE> +<META NAME="description" CONTENT="Logins from terminals"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html421" HREF="node11.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html419" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html413" HREF="node9.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html423" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html424" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html422" HREF="node11.html">Syslog</A> +<B>Up:</B> <A NAME="tex2html420" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html414" HREF="node9.html">init</A> +<BR> <P> +<H2><A NAME="SECTION00332000000000000000">Logins from terminals</A></H2> +<P> + Logins from terminals (via serial lines) and the console (when not + running X) are provided by the <tt>getty</tt><A NAME="331"> </A> program. <tt>init</tt><A NAME="333"> </A> + starts a separate instance of <tt>getty</tt><A NAME="335"> </A> for each terminal for + which logins are to be allowed. <tt>getty</tt><A NAME="337"> </A> reads the username + and runs the <tt>login</tt><A NAME="339"> </A> program, which reads the password. If + the username and password are correct, + <tt>login</tt><A NAME="341"> </A> runs the shell. When + the shell terminates, i.e., the user logs out, or when <tt>login</tt><A NAME="343"> </A> + terminated because the username and password didn't match, + <tt>init</tt><A NAME="345"> </A> notices this and starts a new instance of <tt>getty</tt><A NAME="347"> </A>. + The kernel has no notion of logins, this is all handled by the + system programs. +<A NAME="197"> </A> +<A NAME="198"> </A> +<A NAME="199"> </A> +<A NAME="200"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node100.html b/sag-0.6.1-www/Invisible/sag-0.6/node100.html new file mode 100644 index 0000000..d8d2c7b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node100.html @@ -0,0 +1,67 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Simple backups</TITLE> +<META NAME="description" CONTENT="Simple backups"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1577" HREF="node101.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1575" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1569" HREF="node99.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1579" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1580" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1578" HREF="node101.html">Making backups with tar</A> +<B>Up:</B> <A NAME="tex2html1576" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1570" HREF="node99.html">Selecting the backup tool</A> +<BR> <P> +<H1><A NAME="SECTION001140000000000000000">Simple backups</A></H1> +<P> + A simple backup scheme is to back up everything once, then back + up everything that has been modified since the previous backup. + The first backup is called a <b>full backup</b>, the subsequent + ones are <b>incremental backups</b>. A full backup is often + more laborius than incremental ones, since there is more data + to write to the tape and a full backup might not fit onto one + tape (or floppy). Restoring from incremental backups can be + many times more work than from a full one. Restoration + can be optimized so that you always back up everything since the + previous full backup; this way, backups are a bit more work, + but there should never be a need to restore more than a full + backup and an incremental backup. +<P> + If you want to make backups every day and have six tapes, you could + use tape 1 for the first full backup (say, on a Friday), and + tapes 2 to 5 for the incremental backups (Monday through Thursday). + Then you make a new full backup on tape 6 (second Friday), + and start doing incremental ones with + tapes 2-5 again. You don't want to overwrite tape 1 with + until you've got a new full backup, lest something happens + while you're making the full backup. After you've made a + full backup to tape 6, you want to keep tape 1 somewhere + else, so that when your other backup tapes are destroyed in + the fire, you still have at least something left. When you + need to make the next full backup, you fetch tape 1 and leave + tape 6 in its place. +<P> + If you have more than six tapes, you can use the extra ones for + full backups. Each time you make a full backup, you use the oldest + tape. This way you can have full backups from several previous + weeks, which is good if you want to find an old, now deleted file, + or an old version of a file. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1581" HREF="node101.html#SECTION001141000000000000000">Making backups with <tt>tar</tt></A> +<LI> <A NAME="tex2html1582" HREF="node102.html#SECTION001142000000000000000">Restoring files with <tt>tar</tt></A> +</UL> +<HR><A NAME="tex2html1577" HREF="node101.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1575" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1569" HREF="node99.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1579" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1580" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1578" HREF="node101.html">Making backups with tar</A> +<B>Up:</B> <A NAME="tex2html1576" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1570" HREF="node99.html">Selecting the backup tool</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node101.html b/sag-0.6.1-www/Invisible/sag-0.6/node101.html new file mode 100644 index 0000000..0f72190 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node101.html @@ -0,0 +1,93 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Making backups with tar</TITLE> +<META NAME="description" CONTENT="Making backups with tar"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1591" HREF="node102.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1589" HREF="node100.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1583" HREF="node100.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1593" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1594" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1592" HREF="node102.html">Restoring files with tar</A> +<B>Up:</B> <A NAME="tex2html1590" HREF="node100.html">Simple backups</A> +<B> Previous:</B> <A NAME="tex2html1584" HREF="node100.html">Simple backups</A> +<BR> <P> +<A NAME="3054"> </A><H2><A NAME="SECTION001141000000000000000">Making backups with <tt>tar</tt></A></H2> +<P> + A full backup can easily be made with <tt>tar</tt><A NAME="3056"> </A>: + <BLOCKQUOTE> <TT> +# tar -create -file /dev/ftape /usr/src <BR> +tar: Removing leading / from absolute path names in the archive <BR> +# + </TT></BLOCKQUOTE> + The example above uses the GNU version of <tt>tar</tt><A NAME="3058"> </A> and its long option + names. The traditional version of <tt>tar</tt><A NAME="3060"> </A> only understands single + character options. The GNU version can also handle + backups that don't fit on one tape or floppy, and also very long + paths; not all traditional versions can do these things. (Linux + only uses GNU <tt>tar</tt><A NAME="3062"> </A>.) +<P> + If your backup doesn't fit on one tape, you need to use the + <tt>-multi-volume</tt> (<tt>-M</tt>) option: + <BLOCKQUOTE> <TT> +# tar -cMf /dev/fd0H1440 /usr/src <BR> +tar: Removing leading / from absolute path names in the archive <BR> +Prepare volume #2 for /dev/fd0H1440 and hit return: <BR> +# + </TT></BLOCKQUOTE> + Note that you should format the floppies before you begin the backup, + or else use another window or virtual terminal and do it when <tt>tar</tt><A NAME="3064"> </A> + asks for a new floppy. +<P> + After you've made a backup, you should check that it is OK, using + the <tt>-compare</tt> (<tt>-d</tt>) option: + <BLOCKQUOTE> <TT> +# tar -compare -verbose -f /dev/ftape <BR> +usr/src/ <BR> +usr/src/linux <BR> +usr/src/linux-1.2.10-includes/ <BR> +.... <BR> +# + </TT></BLOCKQUOTE> + Failing to check a backup means that you will not notice that your + backups aren't working until after you've lost the original data. +<P> + An incremental backup can be done with <tt>tar</tt><A NAME="3066"> </A> using the + <tt>-newer</tt> (<tt>-N</tt>) option: + <BLOCKQUOTE> <TT> +# tar -create -newer '8 Sep 1995' -file /dev/ftape /usr/src -verbose <BR> +tar: Removing leading / from absolute path names in the archive <BR> +usr/src/ <BR> +usr/src/linux-1.2.10-includes/ <BR> +usr/src/linux-1.2.10-includes/include/ <BR> +usr/src/linux-1.2.10-includes/include/linux/ <BR> +usr/src/linux-1.2.10-includes/include/linux/modules/ <BR> +usr/src/linux-1.2.10-includes/include/asm-generic/ <BR> +usr/src/linux-1.2.10-includes/include/asm-i386/ <BR> +usr/src/linux-1.2.10-includes/include/asm-mips/ <BR> +usr/src/linux-1.2.10-includes/include/asm-alpha/ <BR> +usr/src/linux-1.2.10-includes/include/asm-m68k/ <BR> +usr/src/linux-1.2.10-includes/include/asm-sparc/ <BR> +usr/src/patch-1.2.11.gz <BR> +# + </TT></BLOCKQUOTE> + Unfortunately, <tt>tar</tt><A NAME="3068"> </A> can't notice when a file's inode information + has changed, for example, that it's permission bits have been + changed, or when its name has been changed. This can be worked + around using <tt>find</tt><A NAME="3070"> </A> and comparing current filesystem state with + lists of files that have been previously backed up. Scripts and + programs for doing this can be found on Linux ftp sites. +<P> +<HR><A NAME="tex2html1591" HREF="node102.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1589" HREF="node100.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1583" HREF="node100.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1593" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1594" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1592" HREF="node102.html">Restoring files with tar</A> +<B>Up:</B> <A NAME="tex2html1590" HREF="node100.html">Simple backups</A> +<B> Previous:</B> <A NAME="tex2html1584" HREF="node100.html">Simple backups</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node102.html b/sag-0.6.1-www/Invisible/sag-0.6/node102.html new file mode 100644 index 0000000..a811e6c --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node102.html @@ -0,0 +1,72 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Restoring files with tar</TITLE> +<META NAME="description" CONTENT="Restoring files with tar"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1601" HREF="node103.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1599" HREF="node100.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1595" HREF="node101.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1603" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1604" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1602" HREF="node103.html">Multilevel backups</A> +<B>Up:</B> <A NAME="tex2html1600" HREF="node100.html">Simple backups</A> +<B> Previous:</B> <A NAME="tex2html1596" HREF="node101.html">Making backups with tar</A> +<BR> <P> +<A NAME="3072"> </A><H2><A NAME="SECTION001142000000000000000">Restoring files with <tt>tar</tt></A></H2> +<P> + The <tt>-extract</tt> (<tt>-x</tt>) option for <tt>tar</tt><A NAME="3074"> </A> extracts files: + <BLOCKQUOTE> <TT> +# tar -extract -same-permissions -verbose -file /dev/fd0H1440 <BR> +usr/src/ <BR> +usr/src/linux <BR> +usr/src/linux-1.2.10-includes/ <BR> +usr/src/linux-1.2.10-includes/include/ <BR> +usr/src/linux-1.2.10-includes/include/linux/ <BR> +usr/src/linux-1.2.10-includes/include/linux/hdreg.h <BR> +usr/src/linux-1.2.10-includes/include/linux/kernel.h <BR> +... <BR> +# + </TT></BLOCKQUOTE> + You also extract only specific files or directories (which includes + all their files and subdirectories) by naming on the command line: + <BLOCKQUOTE> <TT> +# tar xpvf /dev/fd0H1440 usr/src/linux-1.2.10-includes/include/linux/hdreg.h <BR> +usr/src/linux-1.2.10-includes/include/linux/hdreg.h <BR> +# + </TT></BLOCKQUOTE> + Use the <tt>-list</tt> (<tt>-t</tt>) option, if you just want to see + what files are on a backup volume: + <BLOCKQUOTE> <TT> +# tar -list -file /dev/fd0H1440 <BR> +usr/src/ <BR> +usr/src/linux <BR> +usr/src/linux-1.2.10-includes/ <BR> +usr/src/linux-1.2.10-includes/include/ <BR> +usr/src/linux-1.2.10-includes/include/linux/ <BR> +usr/src/linux-1.2.10-includes/include/linux/hdreg.h <BR> +usr/src/linux-1.2.10-includes/include/linux/kernel.h <BR> +... <BR> +# + </TT></BLOCKQUOTE> + Note that <tt>tar</tt><A NAME="3076"> </A> always reads the backup volume sequentially, + so for large volumes it is rather slow. It is not possible, + however, to use random access database techniques when using + a tape drive or some other sequential medium. +<P> + <tt>tar</tt><A NAME="3078"> </A> doesn't handle deleted files properly. If you need + to restore a filesystem from a full and an incremental backup, + and you have deleted a file between the two backups, it will + exist again after you have done the restore. This can be a + big problem, if the file has sensitive data that should no + longer be available. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node103.html b/sag-0.6.1-www/Invisible/sag-0.6/node103.html new file mode 100644 index 0000000..ffd932b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node103.html @@ -0,0 +1,101 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Multilevel backups</TITLE> +<META NAME="description" CONTENT="Multilevel backups"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1613" HREF="node104.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1611" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1605" HREF="node102.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1615" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1616" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1614" HREF="node104.html">What to back up</A> +<B>Up:</B> <A NAME="tex2html1612" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1606" HREF="node102.html">Restoring files with tar</A> +<BR> <P> +<H1><A NAME="SECTION001150000000000000000">Multilevel backups</A></H1> +<P> + The simple backup method outlined in the previous section + is often quite adequate for personal use or small sites. + For more heavy duty use, multilevel backups are more + appropriate. +<P> + The simple method has two backup levels: full and incremental + backups. This can be generalized to any number of levels. + A full backup would be level 0, and the different levels of + incremental backups levels 1, 2, 3, ...At each incremental + backup level you back up everything that has changed since + the previous backup at the same or a previous level. +<P> + The purpose for doing this is that it allows a longer + <b>backup history</b> cheaply. In the example in the previous + section, the backup history went back to the previous full backup. + This could be extended by having more tapes, but only a week + per new tape, which might be too expensive. A longer backup + history is useful, since deleted or corrupted files are often + not noticed for a long time. Even a version of a file that is + not very up to date is better than no file at all. +<P> + With multiple levels the backup history can be extended + more cheaply. For example, if we buy ten tapes, we could use + tapes 1 and 2 for monthly backups (first Friday each month), + tapes 3 to 6 for weekly backups (other Fridays; note that + there can be five Fridays in one month, so we need four more + tapes), and tapes 7 to 10 for daily backups (Monday to Thursday). + With only four more tapes, we've been able to extend the backup + history from two weeks (after all daily tapes have been + used) to two months. It is true that we can't restore every + version of each file during those two months, but what we can + restore is often good enough. +<P> + Figure <A HREF="node103.html#figbackuphistorytimeline">10.1</A> shows which backup level + is used each day, and which backups can be restored from + at the end of the month. +<P> + <P><A NAME="2983"> </A><A NAME="figbackuphistorytimeline"> </A><IMG WIDTH=592 HEIGHT=96 ALIGN=BOTTOM ALT="figure2979" SRC="img14.gif"><BR> +<STRONG>Figure 10.1:</STRONG> A sample multilevel backup schedule.<BR> +<P> +<P> + Backup levels can also be used to keep filesystem restoration + time to a minimum. If you have many incremental backups with + monotonously growing level numbers, you need to restore all + of them if you need to rebuild the whole filesystem. Instead + you can use level numbers that aren't monotonous, and keep down the + number of backups to restore. +<P> + To minimize the number of tapes needed to restore, you could + use a smaller level for each incremental tape. However, then + the time to make the backups increases (each backup copies + everything since the previous full backup). A better scheme + is suggested by the <tt>dump</tt><A NAME="3081"> </A> manual page and described by the + table <A HREF="node103.html#tabefficientbackuplevels">10.2</A>. Use the following + succession of backup levels: 3, 2, 5, 4, 7, 6, 9, 8, 9...This + keeps both the backup and restore times low. The most you + have to backup is two day's worth of work. The number of tapes + for a restore depends on how long you keep between full backups, + but it is less than in the simple schemes. +<P> +<P><A NAME="2989"> </A><A NAME="tabefficientbackuplevels"> </A><IMG WIDTH=360 HEIGHT=302 ALIGN=BOTTOM ALT="figure2988" SRC="img15.gif"><BR> +<STRONG>Figure 10.2:</STRONG> Efficient backup scheme using many backup levels<BR> +<P> +<P> + A fancy scheme can reduce the amount of labor needed, but it + does mean there are more things to keep track of. You must + decide if it is worth it. +<P> + <tt>dump</tt><A NAME="3083"> </A> has built-in support for backup levels. For + <tt>tar</tt><A NAME="3085"> </A> and <tt>cpio</tt><A NAME="3087"> </A> it must be implemented with shell + scripts. +<P> +<HR><A NAME="tex2html1613" HREF="node104.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1611" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1605" HREF="node102.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1615" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1616" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1614" HREF="node104.html">What to back up</A> +<B>Up:</B> <A NAME="tex2html1612" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1606" HREF="node102.html">Restoring files with tar</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node104.html b/sag-0.6.1-www/Invisible/sag-0.6/node104.html new file mode 100644 index 0000000..8191564 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node104.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>What to back up</TITLE> +<META NAME="description" CONTENT="What to back up"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1625" HREF="node105.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1623" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1617" HREF="node103.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1627" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1628" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1626" HREF="node105.html">Compressed backups</A> +<B>Up:</B> <A NAME="tex2html1624" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1618" HREF="node103.html">Multilevel backups</A> +<BR> <P> +<H1><A NAME="SECTION001160000000000000000">What to back up</A></H1> +<P> + You want to back up as much as possible. The major exception + is software that can be easily reinstalled,<A NAME="tex2html51" HREF="footnode.html#3001"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> but even they may have configuration + files that it is important to back up, lest you need to do + all the work to configure them all over again. Another major + exception is the <tt>/proc</tt><A NAME="3089"> </A> filesystem; since that only + contains data that the kernel always generates automatically, + it is <em>never</em> a good idea to back it up. Expecially + the <tt>/proc/kcore</tt><A NAME="3091"> </A> file is unnecessary, since it is just + an image of your current physical memory; it's pretty large + as well. +<P> + Gray areas include the news spool, log files, and many other + things in <tt>/var</tt><A NAME="3093"> </A>. You must decide what you consider + important. +<P> + The obvious things to back up are user files (<tt>/home</tt><A NAME="3095"> </A>) and + system configuration files (<tt>/etc</tt><A NAME="3097"> </A>, but possibly other things + scattered all over the filesystem). +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node105.html b/sag-0.6.1-www/Invisible/sag-0.6/node105.html new file mode 100644 index 0000000..89f5c84 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node105.html @@ -0,0 +1,57 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Compressed backups</TITLE> +<META NAME="description" CONTENT="Compressed backups"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1635" HREF="node106.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1633" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1629" HREF="node104.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1637" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1638" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1636" HREF="node106.html">Keeping Time</A> +<B>Up:</B> <A NAME="tex2html1634" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1630" HREF="node104.html">What to back up</A> +<BR> <P> +<H1><A NAME="SECTION001170000000000000000">Compressed backups</A></H1> +<P> + Backups take a lot of space, which can cost quite a lot of money. + To reduce the space needed, the backups can be compressed. There + are several ways of doing this. Some programs have support for + for compression built in; for example, the <tt>-gzip</tt> (<tt>-z</tt>) + option for GNU <tt>tar</tt><A NAME="3099"> </A> pipes the whole backup through the + <tt>gzip</tt><A NAME="3101"> </A> compression program, before writing it to the backup + medium. +<P> + Unfortunately, compressed backups can cause trouble. Due to the + nature of how compression works, if a single bit is + wrong, all the rest of the compressed data will be unusable. Some + backup programs have some built in error correction, but no method + can handle a large number of errors. This means that if the + backup is compressed the way GNU <tt>tar</tt><A NAME="3103"> </A> does it, with the + whole output compressed as a unit, a single error makes all the + rest of the backup lost. Backups must be reliable, and this + method of compression is not a good idea. +<P> + An alternative way is to compress each file separately. This still + means that the one file is lost, but all other files are unharmed. + The lost file would have been corrupted anyway, so this situation + is not much worse than not using compression at all. The <tt>afio</tt><A NAME="3105"> </A> + program (a variant of <tt>cpio</tt><A NAME="3107"> </A>) can do this. +<P> + Compression takes some time, which may make the backup program + unable to write data fast enough for a tape drive.<A NAME="tex2html52" HREF="footnode.html#3016"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> This can be + avoided by buffering the output (either internally, if the backup + program if smart enough, or by using another program), but even that + might not work well enough. This should only be a problem on slow + computers. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node106.html b/sag-0.6.1-www/Invisible/sag-0.6/node106.html new file mode 100644 index 0000000..090d2cc --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node106.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Keeping Time</TITLE> +<META NAME="description" CONTENT="Keeping Time"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1647" HREF="node107.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1645" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1639" HREF="node105.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1649" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1650" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1648" HREF="node107.html">Time zones</A> +<B>Up:</B> <A NAME="tex2html1646" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1640" HREF="node105.html">Compressed backups</A> +<BR> <P> +<H1><A NAME="SECTION001200000000000000000">Keeping Time</A></H1> + <A NAME="chaptime"> </A> +<P> + <P> +<I> + Time is an illusion. Lunchtime double so. <BR> + (Douglas Adams.) <BR> + </I><P> +<P> + This chapter explains how a Linux system keeps time, + and what you need to do to avoid causing trouble. + Usually, you don't need to do anything about time, but + it is good to understand it. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1651" HREF="node107.html#SECTION001210000000000000000">Time zones</A> +<LI> <A NAME="tex2html1652" HREF="node108.html#SECTION001220000000000000000">The hardware and software clocks</A> +<LI> <A NAME="tex2html1653" HREF="node109.html#SECTION001230000000000000000">Showing and setting time</A> +<LI> <A NAME="tex2html1654" HREF="node110.html#SECTION001240000000000000000">When the clock is wrong</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node107.html b/sag-0.6.1-www/Invisible/sag-0.6/node107.html new file mode 100644 index 0000000..22006ec --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node107.html @@ -0,0 +1,87 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Time zones</TITLE> +<META NAME="description" CONTENT="Time zones"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1663" HREF="node108.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1661" HREF="node106.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1655" HREF="node106.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1665" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1666" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1664" HREF="node108.html">The hardware and software </A> +<B>Up:</B> <A NAME="tex2html1662" HREF="node106.html">Keeping Time</A> +<B> Previous:</B> <A NAME="tex2html1656" HREF="node106.html">Keeping Time</A> +<BR> <P> +<H1><A NAME="SECTION001210000000000000000">Time zones</A></H1> +<P> + Time measurement is based on mostly regular natural + phenomena, such as alternating light and dark periods + caused by the rotation of the planet. The total time + taken by two successive periods is constant, but the + lengths of the light and dark period vary. One simple + constant is noon. +<P> + Noon is the time of the day when the Sun is at its highest + position. Since the Earth is round,<A NAME="tex2html53" HREF="footnode.html#3113"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> noon happens at different times in + different places. This leads to the concept of <b>local + time</b>. Humans measure time in many units, most of which are + tied to natural phenomena like noon. As long as you stay in + the same place, it doesn't matter that local times differ. +<P> + As soon as you need to communicate with distant places, you'll + notice the need for a common time. In modern times, most of + the places in the world communicate with most other places in + the world, so a global standard for measuring time has been defined. + This time is called <b>universal time</b> (UT or UTC, formerly + known as Greenwich Mean Time or GMT, since it used to be local + time in Greenwich, England). When people with different local + times need to communicate, they can express times in universal + time, so that there is no confusion about when things should happen. +<P> + Each local time is called a time zone. While geography would + allow all places that have noon at the same time + have the same time zone, + politics makes it difficult. For various reasons, many countries + use <b>daylight savings time</b>, that is, they move their + clocks to have more natural light while they work, and then move + the clocks back during winter. Other + countries do not do this. Those that do, do not agree + when the clocks should be moved, and they change the rules + from year to year. This makes time zone conversions definitely + non-trivial. +<P> + Time zones are best named by the location or by telling the + difference between local and universal time. In the US and + some other countries, the + local time zones have a name and a three letter abbreviation. + The abbreviations are not unique, however, and should not be + used unless the country is also named. It is better to talk + about the local time in, say, Helsinki, than about East + European time, since not all countries in Eastern Europe follow + the same rules. +<P> + Linux has a time zone package that knows about all + existing time zones, and that can easily be updated when the + rules change. All the system administrator needs to do is to + select the appropriate time zone. Also, each user can set + his own time zone--this is important since many people work + with computers in different countries over the Internet. + When the rules for daylight savings time change in your local + time zone, make sure you'll upgrade at least that part of your + Linux system. Other than setting the system time zone and + upgrading the time zone data files, there is little need to + bother about time. +<P> +<HR><A NAME="tex2html1663" HREF="node108.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1661" HREF="node106.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1655" HREF="node106.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1665" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1666" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1664" HREF="node108.html">The hardware and software </A> +<B>Up:</B> <A NAME="tex2html1662" HREF="node106.html">Keeping Time</A> +<B> Previous:</B> <A NAME="tex2html1656" HREF="node106.html">Keeping Time</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node108.html b/sag-0.6.1-www/Invisible/sag-0.6/node108.html new file mode 100644 index 0000000..262a902 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node108.html @@ -0,0 +1,56 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The hardware and software clocks</TITLE> +<META NAME="description" CONTENT="The hardware and software clocks"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1675" HREF="node109.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1673" HREF="node106.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1667" HREF="node107.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1677" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1678" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1676" HREF="node109.html">Showing and setting time</A> +<B>Up:</B> <A NAME="tex2html1674" HREF="node106.html">Keeping Time</A> +<B> Previous:</B> <A NAME="tex2html1668" HREF="node107.html">Time zones</A> +<BR> <P> +<H1><A NAME="SECTION001220000000000000000">The hardware and software clocks</A></H1> +<P> + A personal computer has a battery driven hardware clock. The + battery ensures that the clock will work even if the rest of + the computer is without electricity. The hardware clock can + be set from the BIOS setup screen or from whatever operating + system is running. +<P> + The Linux kernel keeps track of time independently from the + hardware clock. During the + boot, Linux sets its own clock to the same time as the hardware + clock. After this, both clocks run independently. Linux + maintains its own clock because looking at the hardware is + slow and complicated. +<P> + The kernel clock always shows universal time. This way, the + kernel does not need to know about time zones at all--the simplicity + results in higher reliability and makes it easier to update the + time zone information. Each process handles time zone conversions + itself (using standard tools that are part of the time zone + package). +<P> + The hardware clock can be in local time or in universal time. + It is usually better to have it in universal time, because + then you don't need to change the hardware clock when daylight + savings time begins or ends (UTC does not have DST). Unfortunately, + some PC operating systems--including MS-DOS, Windows, OS/2--assume + the hardware clock shows local time. Linux can handle either, but + if the hardware clock shows local time, then it must be modified + when daylight savings time begins or ends (otherwise it wouldn't + show local time). +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node109.html b/sag-0.6.1-www/Invisible/sag-0.6/node109.html new file mode 100644 index 0000000..b7b2d30 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node109.html @@ -0,0 +1,94 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Showing and setting time</TITLE> +<META NAME="description" CONTENT="Showing and setting time"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1687" HREF="node110.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1685" HREF="node106.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1679" HREF="node108.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1689" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1690" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1688" HREF="node110.html">When the clock is </A> +<B>Up:</B> <A NAME="tex2html1686" HREF="node106.html">Keeping Time</A> +<B> Previous:</B> <A NAME="tex2html1680" HREF="node108.html">The hardware and software </A> +<BR> <P> +<H1><A NAME="SECTION001230000000000000000">Showing and setting time</A></H1> +<P> + In the Debian system, the system time zone is determined by the + symbolic link <tt>/etc/localtime</tt><A NAME="3159"> </A>. This link points at a time + zone data file that describes the local time zone. The time + zone data files are stored in <tt>/usr/lib/zoneinfo</tt><A NAME="3161"> </A>. + Other Linux distributions may do this differently. +<P> + A user can change his private time zone by setting the + TZ environment variable. If it is unset, the system time zone + is assumed. The syntax of the TZ variable is described in + the <em>tzset</em><A NAME="3163"> </A>(3) manual page. +<P> + The <tt>date</tt><A NAME="3165"> </A> command shows the current date and + time.<A NAME="tex2html54" HREF="footnode.html#3157"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> For example: +<BLOCKQUOTE> <TT> +<code>$</code> <i>date</i> <BR> +<code>Sun Jul 14 21:53:41 EET DST 1996</code> <BR> +<code>$</code> +</TT></BLOCKQUOTE> + That time is Sunday, 14th of July, 1996, at about ten before + ten at the evening, in the time zone called ``EET DST'' + (which might be East European Daylight Savings Time). + <tt>date</tt><A NAME="3169"> </A> can also show the univeral time: +<BLOCKQUOTE> <TT> +<code>$</code> <i>date -u</i> <BR> +<code>Sun Jul 14 18:53:42 UTC 1996</code> <BR> +<code>$</code> +</TT></BLOCKQUOTE> + <tt>date</tt><A NAME="3171"> </A> is also used to set the kernel's software clock: +<BLOCKQUOTE> <TT> +<code>#</code> <i>date 07142157</i> <BR> +<code>Sun Jul 14 21:57:00 EET DST 1996</code> <BR> +<code>#</code> <i>date</i> <BR> +<code>Sun Jul 14 21:57:02 EET DST 1996</code> <BR> +<code>#</code> +</TT></BLOCKQUOTE> + See the <tt>date</tt><A NAME="3173"> </A> manual page for more details--the syntax + is a bit arcane. Only <tt>root</tt> can set the time. While + each user can have his own time zone, the clock is the same for + everyone. +<P> + <tt>date</tt><A NAME="3175"> </A> only shows or sets the software clock. + The <tt>clock</tt><A NAME="3177"> </A> commands syncronizes the hardware and + software clocks. + It is used when the system boots, to read the hardware clock + and set the software clock. If you need to set both clocks, you + first set the software clock with <tt>date</tt><A NAME="3179"> </A>, and then the + hardware clock with <tt>clock -w</tt>. +<P> + The <tt>-u</tt> option to <tt>clock</tt><A NAME="3181"> </A> tells it that the + hardware clock is in universal time. + You <em>must</em> use the <tt>-u</tt> option correctly. If you + don't, your computer will be quite confused about what the + time is. +<P> + The clocks should be changed with care. Many parts of + a Unix system require the clocks to work correctly. For example, + the <tt>cron</tt><A NAME="3183"> </A> daemon runs commands periodically. If you change + the clock, it can be confused of whether it needs to run the + commands or not. On one early Unix system, someone set the + clock twenty years into the future, and <tt>cron</tt><A NAME="3185"> </A> wanted to + run all the periodic commands for twenty years all at once. + Current versions of <tt>cron</tt><A NAME="3187"> </A> can handle this correctly, but + you should still be careful. Big jumps or backward jumps are + more dangeours than smaller or forward ones. +<P> +<HR><A NAME="tex2html1687" HREF="node110.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1685" HREF="node106.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1679" HREF="node108.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1689" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1690" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1688" HREF="node110.html">When the clock is </A> +<B>Up:</B> <A NAME="tex2html1686" HREF="node106.html">Keeping Time</A> +<B> Previous:</B> <A NAME="tex2html1680" HREF="node108.html">The hardware and software </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node11.html b/sag-0.6.1-www/Invisible/sag-0.6/node11.html new file mode 100644 index 0000000..f4d2848 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node11.html @@ -0,0 +1,39 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Syslog</TITLE> +<META NAME="description" CONTENT="Syslog"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html433" HREF="node12.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html431" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html425" HREF="node10.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html435" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html436" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html434" HREF="node12.html">Periodic command execution: cron </A> +<B>Up:</B> <A NAME="tex2html432" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html426" HREF="node10.html">Logins from terminals</A> +<BR> <P> +<H2><A NAME="SECTION00333000000000000000">Syslog</A></H2> +<P> + The kernel and many system programs produce error, warning, and + other messages. It is often important that these messages can + be viewed later, even much later, so they should be written to + a file. The program doing this is <tt>syslog</tt><A NAME="349"> </A>. It can be + configured to sort the messages to different files according to + writer or degree of importance. For example, kernel messages + are often directed to a separate file from the others, since + kernel messages are often more important and need to be read + regularly to spot problems. +<A NAME="203"> </A> +<A NAME="204"> </A> +<A NAME="205"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node110.html b/sag-0.6.1-www/Invisible/sag-0.6/node110.html new file mode 100644 index 0000000..bf24203 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node110.html @@ -0,0 +1,59 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>When the clock is wrong</TITLE> +<META NAME="description" CONTENT="When the clock is wrong"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1697" HREF="node111.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1695" HREF="node106.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1691" HREF="node109.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1699" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1700" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1698" HREF="node111.html">Measuring Holes</A> +<B>Up:</B> <A NAME="tex2html1696" HREF="node106.html">Keeping Time</A> +<B> Previous:</B> <A NAME="tex2html1692" HREF="node109.html">Showing and setting time</A> +<BR> <P> +<H1><A NAME="SECTION001240000000000000000">When the clock is wrong</A></H1> +<P> + The Linux software clock is not always accurate. It is kept + running by a periodic <b>timer interrupt</b> generated by + PC hardware. If the + system has too many processes running, it may take too long to + service the timer interrupt, and the software clock starts + slipping behind. + The hardware clock runs independently and is usually more + accurate. If you boot your computer + often (as is the case for most systems that aren't servers), + it will usually keep fairly accurate time. +<P> + If you need to adjust the hardware clock, it is usually simplest + to reboot, go into the BIOS setup screen, and do it from there. + This avoids all trouble that changing system time might + cause. + If doing it via BIOS is not an option, set + the new time with <tt>date</tt><A NAME="3189"> </A> and <tt>clock</tt><A NAME="3191"> </A> (in that order), + but be prepared to reboot, if some part of the system starts + acting funny. +<P> + A networked computer (even if just over the modem) can check + its own clock automatically, by comparing it to some other + computer's time. If the other computer is known to keep + very accurate time, then both computers will keep accurate time. + This can be done by using the <tt>rdate</tt><A NAME="3193"> </A> + and <tt>netdate</tt><A NAME="3195"> </A> commands. + Both check the time of a remote computer (<tt>netdate</tt><A NAME="3197"> </A> can + handle several remote computers), and set the local computer's + time to that. By running one these commands regularly, your + computer will keep as accurate time as the remote computer. +<P> + <b>META: </b> say something intelligent about NTP +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node111.html b/sag-0.6.1-www/Invisible/sag-0.6/node111.html new file mode 100644 index 0000000..d40ca5a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node111.html @@ -0,0 +1,61 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Measuring Holes</TITLE> +<META NAME="description" CONTENT="Measuring Holes"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1709" HREF="node112.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1707" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1701" HREF="node110.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1711" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1712" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1710" HREF="node112.html">Glossary (DRAFT)</A> +<B>Up:</B> <A NAME="tex2html1708" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1702" HREF="node110.html">When the clock is </A> +<BR> <P> +<H1><A NAME="SECTION001300000000000000000">Measuring Holes</A></H1> + <A NAME="chapmeasureholes"> </A> +<P> +This appendix contains the interesting part of the program used to measure +the potential for holes in a filesystem. The source distribution of +the book contains the full source code +(<tt>sag/measure-holes/measure-holes.c</tt>). +<P> +<BLOCKQUOTE> +<PRE>int process(FILE *f, char *filename) { + static char *buf = NULL; + static long prev_block_size = -1; + long zeroes; + char *p; + + if (buf == NULL || prev_block_size != block_size) { + free(buf); + buf = xmalloc(block_size + 1); + buf[block_size] = 1; + prev_block_size = block_size; + } + zeroes = 0; + while (fread(buf, block_size, 1, f) == 1) { + for (p = buf; *p == '\0'; ) + ++p; + if (p == buf+block_size) + zeroes += block_size; + } + if (zeroes > 0) + printf("%ld %s\n", zeroes, filename); + if (ferror(f)) { + errormsg(0, -1, "read failed for `%s'", filename); + return -1; + } + return 0; +}</PRE> + +</BLOCKQUOTE><BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node112.html b/sag-0.6.1-www/Invisible/sag-0.6/node112.html new file mode 100644 index 0000000..f9ef889 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node112.html @@ -0,0 +1,107 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Glossary (DRAFT)</TITLE> +<META NAME="description" CONTENT="Glossary (DRAFT)"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1721" HREF="node113.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1719" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1713" HREF="node111.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1723" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1724" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1722" HREF="node113.html">References</A> +<B>Up:</B> <A NAME="tex2html1720" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1714" HREF="node111.html">Measuring Holes</A> +<BR> <P> +<H1><A NAME="SECTION001400000000000000000">Glossary (DRAFT)</A></H1> +<P> +<P> +<I> +The Librarian of the Unseen University <BR> +had unilaterally decided to aid comprehension <BR> +by producing an Orang-utan/Human Dictionary. <BR> +He'd been working on it for three months. +<P> +It wasn't easy. He'd got as far as `Oook.' +<P> +(Terry Pratchett, ``Men At Arms'') <BR> +</I><P> +<P> +This is a short list of word definitions for concepts relating to +Linux and system administration. The page references are to the +first or most important place where the word is used. +<P> +<DL ><DT><STRONG>ambition</STRONG> +<DD> + The act of writing funny sentences in the hope of getting them + into the Linux cookie file. +<P> +<DT><STRONG>application program</STRONG> +<DD> (p. <A HREF="node5.html#chapoverview"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>) + Software that does something useful. The results of using an + application program is what the computer was bought for. + See also system program, operating system. +<P> +<DT><STRONG>daemon</STRONG> +<DD> A process lurking in the background, usually unnoticed, until + something triggers it into action. For example, the <tt>update</tt><A NAME="3232"> </A> + daemon wakes up every thirty seconds or so to flush the buffer + cache, and the <tt>sendmail</tt><A NAME="3234"> </A> daemon awakes whenever someone sends + mail. +<P> +<DT><STRONG>file system</STRONG> +<DD> (p. <A HREF="node41.html#secfilesystems"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>) + The methods and data structures that an operating + system uses to keep track of files on a disk or partition; + the way the files are organized on the disk. Also used about + a partition or disk that is used to store the files + or the type of the filesystem. +<P> +<DT><STRONG>glossary</STRONG> +<DD> + A list of words and explanations of what they do. Not + to be confused with a dictionary, which is also a list of + words and explanations. +<P> +<DT><STRONG>kernel</STRONG> +<DD> (p. <A HREF="node5.html#chapoverview"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>) + Part of an operating system that implements the interaction with + hardware and the sharing of resources. See also system program. +<P> +<DT><STRONG>operating system</STRONG> +<DD> (p. <A HREF="node5.html#chapoverview"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>) + Software that shares a computer system's resources (processor, + memory, disk space, network bandwidth, and so on) between + users and the application programs they run. Controls access + to the system to provide security. See also kernel, system program, + application program. +<P> +<DT><STRONG>system call</STRONG> +<DD> (p. <A HREF="node5.html#chapoverview"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>) + The services provided by the kernel to application programs, + and the way in which they are invoked. See section 2 of the + manual pages. +<P> +<DT><STRONG>system program</STRONG> +<DD> (p. <A HREF="node5.html#chapoverview"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>) + Programs that implement high level functionality of an operating + system, i.e., things that aren't directly dependent on the + hardware. May sometimes require special privileges to run + (e.g., for delivering electronic mail), but often just commonly + thought of as part of the system (e.g., a compiler). See also + application program, kernel, operating system. +<P> +</DL> +<P> +<HR><A NAME="tex2html1721" HREF="node113.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1719" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1713" HREF="node111.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1723" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1724" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1722" HREF="node113.html">References</A> +<B>Up:</B> <A NAME="tex2html1720" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1714" HREF="node111.html">Measuring Holes</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node113.html b/sag-0.6.1-www/Invisible/sag-0.6/node113.html new file mode 100644 index 0000000..cbbcd3c --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node113.html @@ -0,0 +1,62 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>References</TITLE> +<META NAME="description" CONTENT="References"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1733" HREF="node114.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1731" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1725" HREF="node112.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1735" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1736" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1734" HREF="node114.html">Index</A> +<B>Up:</B> <A NAME="tex2html1732" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1726" HREF="node112.html">Glossary (DRAFT)</A> +<BR> <P> +<P><A NAME="SECTIONREF"><H2>References</H2></A><P> +<DL COMPACT> +<DT><A NAME="device-list"><STRONG>Anv</STRONG></A><DD> +Peter Anvin. +Linux device list. +A list of major and minor device numbers for Linux devices. Now + included in the kernel sources. +<P> +<DT><A NAME="bootdisk-howto"><STRONG>Cha</STRONG></A><DD> +Graham Chapman. +Bootdisk howto. +Available with other Linux HOWTO's. +<P> +<DT><A NAME="network-admin-guide"><STRONG>Kir</STRONG></A><DD> +Olaf Kirch. +Linux network administrators' guide. +<P> +<DT><A NAME="fsstnd-1.2"><STRONG>Qui95</STRONG></A><DD> +Daniel Quinlan. +<EM>Linux Filesystem Structure--Release 1.2</EM>, March 1995. +A description of and a proposal for a standard Linux directory tree, + with the intention is to make it easier to package software and administer + Linux systems by making files appear in standard places. Follows fairly + closely traditional Unix practice, and has got support from most Linux + distributions. Available via FTP from <tt>ftp.funet.fi</tt>, directory + <tt>/pub/Linux/doc/fsstnd</tt>. +<P> +<DT><A NAME="ext2-defrag"><STRONG>TV</STRONG></A><DD> +Stephen Tweedie and Alexei Vovenko. +Linux filesystem defragmenter. +Available electronically from \ + <tt>ftp://sunsite.unc.edu/pub/Linux/system/Filesystems/defrag-0.6.tar.gz</tt>. +<P> +<DT><A NAME="getting-started"><STRONG>Wel</STRONG></A><DD> +Matt Welsh. +Installation and getting started guide. +</DL> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node114.html b/sag-0.6.1-www/Invisible/sag-0.6/node114.html new file mode 100644 index 0000000..c1ba6a9 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node114.html @@ -0,0 +1,789 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Index</TITLE> +<META NAME="description" CONTENT="Index"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1745" HREF="node115.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1743" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1737" HREF="node113.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1747" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1746" HREF="node115.html"> About this document </A> +<B>Up:</B> <A NAME="tex2html1744" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1738" HREF="node113.html">References</A> +<BR> <P> +<P><H2><A NAME="SECTION001600000000000000000">Index</A></H2> +<DL COMPACT> +<DT><STRONG>.hushlogin</STRONG> +<DD><A HREF="node82.html#2652">What <tt>login</tt> does</A> +<DT><STRONG>.profile</STRONG> +<DD><A HREF="node85.html#2712">Shell startup</A> | <A HREF="node85.html#2716">Shell startup</A> | <A HREF="node91.html#2851">Initial environment: <tt>/etc/skel</tt></A> +<DT><STRONG>/bin</STRONG> +<DD><A HREF="node19.html#401">The filesystem layout</A> | <A HREF="node22.html#688">The root filesystem</A> | <A HREF="node22.html#692">The root filesystem</A> | <A HREF="node25.html#865">The <tt>/usr</tt> filesystem</A> | <A HREF="node54.html#1776">Partitioning schemes</A> +<DT><STRONG>/bin/sh</STRONG> +<DD><A HREF="node46.html#1659">Mounting and unmounting</A> | <A HREF="node74.html#2347"><tt>init</tt> comes first</A> | <A HREF="node85.html#2708">Shell startup</A> +<DT><STRONG>/boot</STRONG> +<DD><A HREF="node22.html#710">The root filesystem</A> +<DT><STRONG>/dev</STRONG> +<DD><A HREF="node19.html#407">The filesystem layout</A> | <A HREF="node22.html#702">The root filesystem</A> | <A HREF="node24.html#833">The \texttt/dev\index/dev directory</A> | <A HREF="node24.html#835">The <tt>/dev</tt> directory</A> | <A HREF="node29.html#1439">Two kinds of devices</A> | <A HREF="node54.html#1780">Partitioning schemes</A> +<DT><STRONG>/dev/fd0</STRONG> +<DD><A HREF="node31.html#1474">Floppies</A> | <A HREF="node34.html#1491">Formatting</A> +<DT><STRONG>/dev/fd0H1440</STRONG> +<DD><A HREF="node31.html#1472">Floppies</A> +<DT><STRONG>/dev/fd1</STRONG> +<DD><A HREF="node31.html#1476">Floppies</A> +<DT><STRONG>/dev/hda</STRONG> +<DD><A HREF="node30.html#1460">Hard disks</A> +<DT><STRONG>/dev/hda1</STRONG> +<DD><A HREF="node40.html#1545">Device files and partitions</A> +<DT><STRONG>/dev/hda2</STRONG> +<DD><A HREF="node46.html#1596">Mounting and unmounting</A> | <A HREF="node46.html#1603">Mounting and unmounting</A> +<DT><STRONG>/dev/hdb</STRONG> +<DD><A HREF="node30.html#1462">Hard disks</A> +<DT><STRONG>/dev/hdc</STRONG> +<DD><A HREF="node30.html#1464">Hard disks</A> +<DT><STRONG>/dev/hdd</STRONG> +<DD><A HREF="node30.html#1466">Hard disks</A> +<DT><STRONG>/dev/MAKEDEV</STRONG> +<DD><A HREF="node24.html#837">The <tt>/dev</tt> directory</A> +<DT><STRONG>/dev/MAKEDEV.local</STRONG> +<DD><A HREF="node24.html#839">The <tt>/dev</tt> directory</A> +<DT><STRONG>/dev/sda</STRONG> +<DD><A HREF="node29.html#1447">Two kinds of devices</A> | <A HREF="node30.html#1468">Hard disks</A> +<DT><STRONG>/dev/sdb</STRONG> +<DD><A HREF="node30.html#1470">Hard disks</A> +<DT><STRONG>/dev/sdb7</STRONG> +<DD><A HREF="node40.html#1547">Device files and partitions</A> +<DT><STRONG>/dev/tty</STRONG> +<DD><A HREF="node75.html#2401">Configuring <tt>init</tt> to </A> +<DT><STRONG>/dev/tty1</STRONG> +<DD><A HREF="node75.html#2405">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2407">Configuring <tt>init</tt> to </A> +<DT><STRONG>/etc</STRONG> +<DD><A HREF="node19.html#405">The filesystem layout</A> | <A HREF="node22.html#694">The root filesystem</A> | <A HREF="node23.html#730">The \texttt/etc\index/etc directory</A> | <A HREF="node23.html#732">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#734">The <tt>/etc</tt> directory</A> | <A HREF="node54.html#1778">Partitioning schemes</A> | <A HREF="node104.html#3097">What to back up</A> +<DT><STRONG>/etc/csh.cshrc</STRONG> +<DD><A HREF="node23.html#811">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/csh.login</STRONG> +<DD><A HREF="node23.html#809">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/fastboot</STRONG> +<DD><A HREF="node47.html#1693">Checking filesystem integrity with </A> | <A HREF="node47.html#1699">Checking filesystem integrity with </A> +<DT><STRONG>/etc/fdprm</STRONG> +<DD><A HREF="node23.html#748">The <tt>/etc</tt> directory</A> | <A HREF="node31.html#1480">Floppies</A> +<DT><STRONG>/etc/fstab</STRONG> +<DD><A HREF="node23.html#754">The <tt>/etc</tt> directory</A> | <A HREF="node46.html#1667">Mounting and unmounting</A> | <A HREF="node46.html#1647">Mounting and unmounting</A> | <A HREF="node46.html#1669">Mounting and unmounting</A> | <A HREF="node46.html#1679">Mounting and unmounting</A> | <A HREF="node57.html#1804">Adding more disk space </A> | <A HREF="node62.html#1906">Using a swap space</A> | <A HREF="node62.html#1908">Using a swap space</A> | <A HREF="node62.html#1922">Using a swap space</A> +<DT><STRONG>/etc/group</STRONG> +<DD><A HREF="node23.html#760">The <tt>/etc</tt> directory</A> | <A HREF="node84.html#2700">Access control</A> | <A HREF="node92.html#2861">Creating a user by </A> | <A HREF="node93.html#2889">Changing user properties</A> | <A HREF="node94.html#2899">Removing a user</A> +<DT><STRONG>/etc/init.d/rc</STRONG> +<DD><A HREF="node76.html#2440">Run levels</A> +<DT><STRONG>/etc/inittab</STRONG> +<DD><A HREF="node23.html#766">The <tt>/etc</tt> directory</A> | <A HREF="node75.html#2381">Configuring \textttinit\indexinit to start </A> | <A HREF="node75.html#2385">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2391">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2395">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2397">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2413">Configuring <tt>init</tt> to </A> | <A HREF="node76.html#2434">Run levels</A> | <A HREF="node76.html#2444">Run levels</A> | <A HREF="node76.html#2452">Run levels</A> | <A HREF="node77.html#2454">Special configuration in \texttt/etc/inittab\index/etc/inittab</A> | <A HREF="node77.html#2456">Special configuration in <tt>/etc/inittab</tt></A> +<DT><STRONG>/etc/issue</STRONG> +<DD><A HREF="node23.html#770">The <tt>/etc</tt> directory</A> | <A HREF="node80.html#2597">Logins via terminals</A> +<DT><STRONG>/etc/localtime</STRONG> +<DD><A HREF="node109.html#3159">Showing and setting time</A> +<DT><STRONG>/etc/login.defs</STRONG> +<DD><A HREF="node23.html#799">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/magic</STRONG> +<DD><A HREF="node23.html#774">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/motd</STRONG> +<DD><A HREF="node23.html#784">The <tt>/etc</tt> directory</A> | <A HREF="node82.html#2650">What <tt>login</tt> does</A> +<DT><STRONG>/etc/mtab</STRONG> +<DD><A HREF="node23.html#787">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/nologin</STRONG> +<DD><A HREF="node82.html#2654">What <tt>login</tt> does</A> +<DT><STRONG>/etc/passwd</STRONG> +<DD><A HREF="node23.html#744">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#762">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#795">The <tt>/etc</tt> directory</A> | <A HREF="node78.html#2497">Booting in single user </A> | <A HREF="node84.html#2689">Access control</A> | <A HREF="node89.html#2828">\texttt/etc/passwd\index/etc/passwd and other informative </A> | <A HREF="node89.html#2830"><tt>/etc/passwd</tt> and other informative </A> | <A HREF="node89.html#2838"><tt>/etc/passwd</tt> and other informative </A> | <A HREF="node92.html#2855">Creating a user by </A> | <A HREF="node93.html#2875">Changing user properties</A> | <A HREF="node93.html#2885">Changing user properties</A> | <A HREF="node94.html#2897">Removing a user</A> +<DT><STRONG>/etc/printcap</STRONG> +<DD><A HREF="node23.html#803">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/profile</STRONG> +<DD><A HREF="node23.html#807">The <tt>/etc</tt> directory</A> | <A HREF="node85.html#2710">Shell startup</A> | <A HREF="node85.html#2714">Shell startup</A> | <A HREF="node91.html#2853">Initial environment: <tt>/etc/skel</tt></A> +<DT><STRONG>/etc/rc</STRONG> +<DD><A HREF="node23.html#736">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#756">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/rc.d</STRONG> +<DD><A HREF="node23.html#738">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/rc?.d</STRONG> +<DD><A HREF="node23.html#740">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/securetty</STRONG> +<DD><A HREF="node23.html#813">The <tt>/etc</tt> directory</A> | <A HREF="node84.html#2704">Access control</A> +<DT><STRONG>/etc/shadow</STRONG> +<DD><A HREF="node23.html#793">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#797">The <tt>/etc</tt> directory</A> | <A HREF="node84.html#2692">Access control</A> | <A HREF="node89.html#2836"><tt>/etc/passwd</tt> and other informative </A> +<DT><STRONG>/etc/shadow.group</STRONG> +<DD><A HREF="node84.html#2702">Access control</A> +<DT><STRONG>/etc/shells</STRONG> +<DD><A HREF="node23.html#815">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#821">The <tt>/etc</tt> directory</A> +<DT><STRONG>/etc/skel</STRONG> +<DD><A HREF="node91.html#2841">Initial environment: \texttt/etc/skel\index/etc/skel</A> | <A HREF="node91.html#2843">Initial environment: <tt>/etc/skel</tt></A> | <A HREF="node91.html#2845">Initial environment: <tt>/etc/skel</tt></A> | <A HREF="node91.html#2849">Initial environment: <tt>/etc/skel</tt></A> | <A HREF="node92.html#2867">Creating a user by </A> +<DT><STRONG>/etc/skel/.profile</STRONG> +<DD><A HREF="node91.html#2847">Initial environment: <tt>/etc/skel</tt></A> +<DT><STRONG>/etc/termcap</STRONG> +<DD><A HREF="node23.html#805">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#823">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#825">The <tt>/etc</tt> directory</A> +<DT><STRONG>/extra-swap</STRONG> +<DD><A HREF="node61.html#1893">Creating a swap space</A> +<DT><STRONG>/home</STRONG> +<DD><A HREF="node19.html#413">The filesystem layout</A> | <A HREF="node21.html#660">Background</A> | <A HREF="node21.html#662">Background</A> | <A HREF="node21.html#664">Background</A> | <A HREF="node21.html#642">Background</A> | <A HREF="node22.html#728">The root filesystem</A> | <A HREF="node46.html#1586">Mounting and unmounting</A> | <A HREF="node46.html#1586">Mounting and unmounting</A> | <A HREF="node46.html#1582">Mounting and unmounting</A> | <A HREF="node46.html#1592">Mounting and unmounting</A> | <A HREF="node46.html#1599">Mounting and unmounting</A> | <A HREF="node46.html#1605">Mounting and unmounting</A> | <A HREF="node54.html#1788">Partitioning schemes</A> | <A HREF="node56.html#1798">Examples of hard disk </A> | <A HREF="node104.html#3095">What to back up</A> +<DT><STRONG>/home/staff</STRONG> +<DD><A HREF="node21.html#668">Background</A> +<DT><STRONG>/home/students</STRONG> +<DD><A HREF="node21.html#666">Background</A> +<DT><STRONG>/lib</STRONG> +<DD><A HREF="node19.html#403">The filesystem layout</A> | <A HREF="node22.html#698">The root filesystem</A> | <A HREF="node54.html#1782">Partitioning schemes</A> +<DT><STRONG>/lib/modules</STRONG> +<DD><A HREF="node22.html#700">The root filesystem</A> +<DT><STRONG>/mnt</STRONG> +<DD><A HREF="node22.html#712">The root filesystem</A> | <A HREF="node22.html#714">The root filesystem</A> | <A HREF="node22.html#716">The root filesystem</A> +<DT><STRONG>/mnt/dosa</STRONG> +<DD><A HREF="node22.html#718">The root filesystem</A> +<DT><STRONG>/mnt/exta</STRONG> +<DD><A HREF="node22.html#720">The root filesystem</A> +<DT><STRONG>/proc</STRONG> +<DD><A HREF="node22.html#722">The root filesystem</A> | <A HREF="node27.html#943">The \texttt/proc\index/proc filesystem</A> | <A HREF="node27.html#953">The <tt>/proc</tt> filesystem</A> | <A HREF="node27.html#969">The <tt>/proc</tt> filesystem</A> | <A HREF="node27.html#987">The <tt>/proc</tt> filesystem</A> | <A HREF="node27.html#989">The <tt>/proc</tt> filesystem</A> | <A HREF="node27.html#945">The <tt>/proc</tt> filesystem</A> | <A HREF="node27.html#947">The <tt>/proc</tt> filesystem</A> | <A HREF="node43.html#1559">Filesystems galore</A> | <A HREF="node104.html#3089">What to back up</A> +<DT><STRONG>/proc/1</STRONG> +<DD><A HREF="node27.html#951">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/cpuinfo</STRONG> +<DD><A HREF="node27.html#955">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/devices</STRONG> +<DD><A HREF="node27.html#957">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/dma</STRONG> +<DD><A HREF="node27.html#959">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/filesystems</STRONG> +<DD><A HREF="node27.html#961">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/interrupts</STRONG> +<DD><A HREF="node27.html#963">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/ioports</STRONG> +<DD><A HREF="node27.html#965">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/kcore</STRONG> +<DD><A HREF="node27.html#967">The <tt>/proc</tt> filesystem</A> | <A HREF="node43.html#1561">Filesystems galore</A> | <A HREF="node104.html#3091">What to back up</A> +<DT><STRONG>/proc/kmsg</STRONG> +<DD><A HREF="node27.html#971">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/ksyms</STRONG> +<DD><A HREF="node27.html#975">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/loadavg</STRONG> +<DD><A HREF="node27.html#977">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/meminfo</STRONG> +<DD><A HREF="node27.html#979">The <tt>/proc</tt> filesystem</A> | <A HREF="node27.html#999">The <tt>/proc</tt> filesystem</A> | <A HREF="node62.html#1916">Using a swap space</A> +<DT><STRONG>/proc/modules</STRONG> +<DD><A HREF="node27.html#981">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/net</STRONG> +<DD><A HREF="node27.html#983">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/self</STRONG> +<DD><A HREF="node27.html#985">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/stat</STRONG> +<DD><A HREF="node27.html#991">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/uptime</STRONG> +<DD><A HREF="node27.html#993">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/proc/version</STRONG> +<DD><A HREF="node27.html#995">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>/root</STRONG> +<DD><A HREF="node22.html#696">The root filesystem</A> +<DT><STRONG>/sbin</STRONG> +<DD><A HREF="node22.html#690">The root filesystem</A> +<DT><STRONG>/sbin/getty</STRONG> +<DD><A HREF="node10.html#197">Logins from terminals</A> +<DT><STRONG>/sbin/init</STRONG> +<DD><A HREF="node9.html#166"><tt>init</tt></A> | <A HREF="node68.html#2131">The boot process in </A> | <A HREF="node73.html#2173"><tt>init</tt></A> | <A HREF="node74.html#2343"><tt>init</tt> comes first</A> +<DT><STRONG>/sbin/update</STRONG> +<DD><A HREF="node65.html#1953">The buffer cache</A> +<DT><STRONG>/tmp</STRONG> +<DD><A HREF="node12.html#355">Periodic command execution: <tt>cron</tt><A </A> | <A HREF="node22.html#704">The root filesystem</A> | <A HREF="node22.html#708">The root filesystem</A> | <A HREF="node26.html#939">The <tt>/var</tt> filesystem</A> | <A HREF="node46.html#1612">Mounting and unmounting</A> | <A HREF="node46.html#1616">Mounting and unmounting</A> | <A HREF="node54.html#1784">Partitioning schemes</A> | <A HREF="node74.html#2351"><tt>init</tt> comes first</A> | <A HREF="node77.html#2468">Special configuration in <tt>/etc/inittab</tt></A> +<DT><STRONG>/usr</STRONG> +<DD><A HREF="node19.html#409">The filesystem layout</A> | <A HREF="node21.html#644">Background</A> | <A HREF="node21.html#646">Background</A> | <A HREF="node21.html#648">Background</A> | <A HREF="node21.html#650">Background</A> | <A HREF="node21.html#656">Background</A> | <A HREF="node21.html#658">Background</A> | <A HREF="node21.html#638">Background</A> | <A HREF="node21.html#672">Background</A> | <A HREF="node22.html#724">The root filesystem</A> | <A HREF="node25.html#843">The \texttt/usr\index/usr filesystem</A> | <A HREF="node25.html#857">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#845">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#847">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#851">The <tt>/usr</tt> filesystem</A> | <A HREF="node46.html#1588">Mounting and unmounting</A> | <A HREF="node46.html#1588">Mounting and unmounting</A> | <A HREF="node46.html#1584">Mounting and unmounting</A> | <A HREF="node46.html#1594">Mounting and unmounting</A> | <A HREF="node46.html#1601">Mounting and unmounting</A> | <A HREF="node46.html#1620">Mounting and unmounting</A> | <A HREF="node46.html#1624">Mounting and unmounting</A> | <A HREF="node54.html#1786">Partitioning schemes</A> | <A HREF="node54.html#1790">Partitioning schemes</A> | <A HREF="node54.html#1792">Partitioning schemes</A> | <A HREF="node54.html#1794">Partitioning schemes</A> | <A HREF="node56.html#1796">Examples of hard disk </A> | <A HREF="node78.html#2477">Booting in single user </A> | <A HREF="node78.html#2487">Booting in single user </A> +<DT><STRONG>/usr/adm/messages</STRONG> +<DD><A HREF="node34.html#1501">Formatting</A> +<DT><STRONG>/usr/bin</STRONG> +<DD><A HREF="node25.html#863">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/doc</STRONG> +<DD><A HREF="node25.html#875">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/include</STRONG> +<DD><A HREF="node25.html#877">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/info</STRONG> +<DD><A HREF="node25.html#873">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/lib</STRONG> +<DD><A HREF="node25.html#879">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#881">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#883">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/lib/libc.a</STRONG> +<DD><A HREF="node21.html#674">Background</A> +<DT><STRONG>/usr/lib/zoneinfo</STRONG> +<DD><A HREF="node109.html#3161">Showing and setting time</A> +<DT><STRONG>/usr/local</STRONG> +<DD><A HREF="node25.html#885">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#849">The <tt>/usr</tt> filesystem</A> | <A HREF="node26.html#905">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/usr/local/bin</STRONG> +<DD><A HREF="node25.html#867">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/man</STRONG> +<DD><A HREF="node25.html#871">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/man/cat*</STRONG> +<DD><A HREF="node26.html#895">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/usr/man/man*</STRONG> +<DD><A HREF="node26.html#893">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/usr/sbin</STRONG> +<DD><A HREF="node25.html#869">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/var</STRONG> +<DD><A HREF="node21.html#680">Background</A> | <A HREF="node21.html#684">Background</A> +<DT><STRONG>/usr/X11R6</STRONG> +<DD><A HREF="node25.html#853">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#855">The <tt>/usr</tt> filesystem</A> | <A HREF="node25.html#861">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/usr/X386</STRONG> +<DD><A HREF="node25.html#859">The <tt>/usr</tt> filesystem</A> +<DT><STRONG>/var</STRONG> +<DD><A HREF="node19.html#411">The filesystem layout</A> | <A HREF="node21.html#652">Background</A> | <A HREF="node21.html#654">Background</A> | <A HREF="node21.html#640">Background</A> | <A HREF="node21.html#670">Background</A> | <A HREF="node21.html#678">Background</A> | <A HREF="node21.html#682">Background</A> | <A HREF="node22.html#726">The root filesystem</A> | <A HREF="node26.html#887">The \texttt/var\index/var filesystem</A> | <A HREF="node26.html#907">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#889">The <tt>/var</tt> filesystem</A> | <A HREF="node46.html#1630">Mounting and unmounting</A> | <A HREF="node104.html#3093">What to back up</A> +<DT><STRONG>/var/adm/messages</STRONG> +<DD><A HREF="node21.html#676">Background</A> +<DT><STRONG>/var/catman</STRONG> +<DD><A HREF="node26.html#891">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#899">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/lib</STRONG> +<DD><A HREF="node26.html#901">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/local</STRONG> +<DD><A HREF="node26.html#903">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/lock</STRONG> +<DD><A HREF="node26.html#909">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#911">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#913">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/log</STRONG> +<DD><A HREF="node26.html#915">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#925">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/log/messages</STRONG> +<DD><A HREF="node26.html#923">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/log/wtmp</STRONG> +<DD><A HREF="node26.html#919">The <tt>/var</tt> filesystem</A> | <A HREF="node82.html#2674">What <tt>login</tt> does</A> +<DT><STRONG>/var/man</STRONG> +<DD><A HREF="node26.html#897">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/run</STRONG> +<DD><A HREF="node26.html#927">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/run/utmp</STRONG> +<DD><A HREF="node26.html#929">The <tt>/var</tt> filesystem</A> | <A HREF="node82.html#2666">What <tt>login</tt> does</A> +<DT><STRONG>/var/spool</STRONG> +<DD><A HREF="node26.html#931">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#933">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/spool/mail</STRONG> +<DD><A HREF="node17.html#397">Mail</A> | <A HREF="node26.html#935">The <tt>/var</tt> filesystem</A> +<DT><STRONG>/var/tmp</STRONG> +<DD><A HREF="node12.html#357">Periodic command execution: <tt>cron</tt><A </A> | <A HREF="node22.html#706">The root filesystem</A> | <A HREF="node26.html#937">The <tt>/var</tt> filesystem</A> | <A HREF="node26.html#941">The <tt>/var</tt> filesystem</A> | <A HREF="node46.html#1614">Mounting and unmounting</A> | <A HREF="node46.html#1618">Mounting and unmounting</A> | <A HREF="node46.html#1622">Mounting and unmounting</A> | <A HREF="node46.html#1626">Mounting and unmounting</A> | <A HREF="node46.html#1628">Mounting and unmounting</A> +<DT><STRONG>/vmlinuz</STRONG> +<DD><A HREF="node22.html#686">The root filesystem</A> +<DT><STRONG>active partition</STRONG> +<DD><A HREF="node68.html#1991">The boot process in </A> +<DT><STRONG>adduser</STRONG> +<DD><A HREF="node88.html#2824">Creating a user</A> +<DT><STRONG>afio</STRONG> +<DD><A HREF="node105.html#3105">Compressed backups</A> +<DT><STRONG>application program</STRONG> +<DD><A HREF="node6.html#130">Various parts of an </A> +<DT><STRONG>at</STRONG> +<DD><A HREF="node12.html#353">Periodic command execution: \textttcron\indexcron </A> | <A HREF="node12.html#365">Periodic command execution: <tt>cron</tt><A </A> | <A HREF="node94.html#2895">Removing a user</A> +<DT><STRONG>Athena</STRONG> +<DD><A HREF="node13.html#223">Graphical user interface</A> +<DT><STRONG>axe</STRONG> +<DD><A HREF="node69.html#2067">More about shutdowns</A> +<DT><STRONG>background processes</STRONG> +<DD><DL COMPACT> +<DT><STRONG>and shutting down</STRONG> +<DD><A HREF="node69.html#2040">More about shutdowns</A> +</DL> +<DT><STRONG>backups</STRONG> +<DD><A HREF="node72.html#2094">Emergency boot floppies</A> +<DT><STRONG>badblocks</STRONG> +<DD><A HREF="node34.html#1505">Formatting</A> | <A HREF="node34.html#1507">Formatting</A> | <A HREF="node34.html#1511">Formatting</A> | <A HREF="node45.html#1569">Creating a filesystem</A> | <A HREF="node45.html#1571">Creating a filesystem</A> | <A HREF="node45.html#1575">Creating a filesystem</A> | <A HREF="node45.html#1577">Creating a filesystem</A> | <A HREF="node45.html#1579">Creating a filesystem</A> | <A HREF="node48.html#1715">Checking for disk errors </A> | <A HREF="node48.html#1717">Checking for disk errors </A> +<DT><STRONG>bdflush</STRONG> +<DD><A HREF="node50.html#1734">Other tools for all </A> | <A HREF="node65.html#1943">The buffer cache</A> | <A HREF="node65.html#1947">The buffer cache</A> | <A HREF="node65.html#1951">The buffer cache</A> +<DT><STRONG>BIOS</STRONG> +<DD><A HREF="node68.html#1980">The boot process in </A> +<DT><STRONG>boot process</STRONG> +<DD><A HREF="node9.html#168"><tt>init</tt></A> +<DT><STRONG>boot record</STRONG> +<DD><DL COMPACT> +<DT><STRONG>master</STRONG> +<DD><i>see </i> MBR +<DT><STRONG>partition</STRONG> +<DD><i>see </i> partition boot record +</DL> +<DT><STRONG>boot sector</STRONG> +<DD><A HREF="node67.html#1968">An overview of boots </A> +<DT><STRONG>booting</STRONG> +<DD><A HREF="node67.html#1963">An overview of boots </A> +<DL COMPACT> +<DT><STRONG>from emergency floppy</STRONG> +<DD><A HREF="node72.html#2091">Emergency boot floppies</A> +<DT><STRONG>from floppy</STRONG> +<DD><A HREF="node68.html#1986">The boot process in </A> +<DT><STRONG>from hard disk</STRONG> +<DD><A HREF="node68.html#1988">The boot process in </A> +<DT><STRONG>messages</STRONG> +<DD><A HREF="node68.html#2008">The boot process in </A> +</DL> +<DT><STRONG>bootstrap loader</STRONG> +<DD><A HREF="node67.html#1966">An overview of boots </A> +<DT><STRONG>BSD</STRONG> +<DD><A HREF="node7.html#159">Important parts of the </A> +<DT><STRONG>buffer cache</STRONG> +<DD><A HREF="node7.html#155">Important parts of the </A> | <A HREF="node67.html#1971">An overview of boots </A> | <A HREF="node69.html#2037">More about shutdowns</A> | <A HREF="node69.html#2068">More about shutdowns</A> +<DT><STRONG>C compiler</STRONG> +<DD><A HREF="node6.html#137">Various parts of an </A> +<DT><STRONG>cache</STRONG> +<DD><A HREF="node69.html#2038">More about shutdowns</A> +<DT><STRONG>centralized computing</STRONG> +<DD><A HREF="node14.html#227">Networking</A> +<DT><STRONG>cfdisk</STRONG> +<DD><A HREF="node39.html#1537">Partitioning a hard disk</A> +<DT><STRONG>checking a filesystem</STRONG> +<DD><A HREF="node68.html#2019">The boot process in </A> +<DT><STRONG>chfn</STRONG> +<DD><A HREF="node93.html#2877">Changing user properties</A> +<DT><STRONG>chmod</STRONG> +<DD><A HREF="node92.html#2871">Creating a user by </A> | <A HREF="node93.html#2883">Changing user properties</A> +<DT><STRONG>chown</STRONG> +<DD><A HREF="node92.html#2869">Creating a user by </A> +<DT><STRONG>chsh</STRONG> +<DD><A HREF="node23.html#817">The <tt>/etc</tt> directory</A> | <A HREF="node93.html#2879">Changing user properties</A> +<DT><STRONG>cleaning temporary files</STRONG> +<DD><A HREF="node12.html#212">Periodic command execution: <tt>cron</tt><A </A> +<DT><STRONG>clock</STRONG> +<DD><A HREF="node109.html#3177">Showing and setting time</A> | <A HREF="node109.html#3181">Showing and setting time</A> | <A HREF="node110.html#3191">When the clock is </A> +<DT><STRONG>communication</STRONG> +<DD><A HREF="node17.html#248">Mail</A> +<DT><STRONG>compression of kernel</STRONG> +<DD><A HREF="node68.html#1999">The boot process in </A> +<DT><STRONG>console</STRONG> +<DD><A HREF="node68.html#2031">The boot process in </A> +<DT><STRONG>cpio</STRONG> +<DD><A HREF="node99.html#3022">Selecting the backup tool</A> | <A HREF="node99.html#3028">Selecting the backup tool</A> | <A HREF="node99.html#3032">Selecting the backup tool</A> | <A HREF="node99.html#3038">Selecting the backup tool</A> | <A HREF="node99.html#3042">Selecting the backup tool</A> | <A HREF="node99.html#3050">Selecting the backup tool</A> | <A HREF="node103.html#3087">Multilevel backups</A> | <A HREF="node105.html#3107">Compressed backups</A> +<DT><STRONG>crack</STRONG> +<DD><A HREF="node84.html#2694">Access control</A> | <A HREF="node84.html#2696">Access control</A> +<DT><STRONG>crash</STRONG> +<DD><A HREF="node69.html#2063">More about shutdowns</A> +<DT><STRONG>cron</STRONG> +<DD><A HREF="node12.html#351">Periodic command execution: \textttcron\indexcron </A> | <A HREF="node12.html#359">Periodic command execution: <tt>cron</tt><A </A> | <A HREF="node12.html#363">Periodic command execution: <tt>cron</tt><A </A> | <A HREF="node12.html#367">Periodic command execution: <tt>cron</tt><A </A> | <A HREF="node82.html#2676">What <tt>login</tt> does</A> | <A HREF="node94.html#2893">Removing a user</A> | <A HREF="node109.html#3183">Showing and setting time</A> | <A HREF="node109.html#3185">Showing and setting time</A> | <A HREF="node109.html#3187">Showing and setting time</A> +<DT><STRONG>crontab</STRONG> +<DD><A HREF="node12.html#361">Periodic command execution: <tt>cron</tt><A </A> +<DT><STRONG>crying</STRONG> +<DD><A HREF="node66.html#1959">Boots And Shutdowns</A> +<DT><STRONG>ctrl-alt-del</STRONG> +<DD><A HREF="node70.html#2082">Rebooting</A> +<DT><STRONG>curs_termcap</STRONG> +<DD><A HREF="node23.html#829">The <tt>/etc</tt> directory</A> +<DT><STRONG>daemons</STRONG> +<DD><DL COMPACT> +<DT><STRONG>at</STRONG> +<DD><i>see </i> at +<DT><STRONG>cron</STRONG> +<DD><i>see </i> cron +<DT><STRONG>init</STRONG> +<DD><i>see </i> /sbin/init +<DT><STRONG>rlogin</STRONG> +<DD><i>see </i> rlogin +<DT><STRONG>starting</STRONG> +<DD><A HREF="node68.html#2025">The boot process in </A> +<DT><STRONG>telnet</STRONG> +<DD><i>see </i> telnet +</DL> +<DT><STRONG>data loss</STRONG> +<DD><A HREF="node67.html#1972">An overview of boots </A> +<DT><STRONG>date</STRONG> +<DD><A HREF="node109.html#3165">Showing and setting time</A> | <A HREF="node109.html#3169">Showing and setting time</A> | <A HREF="node109.html#3171">Showing and setting time</A> | <A HREF="node109.html#3173">Showing and setting time</A> | <A HREF="node109.html#3175">Showing and setting time</A> | <A HREF="node109.html#3179">Showing and setting time</A> | <A HREF="node110.html#3189">When the clock is </A> +<DT><STRONG>dd</STRONG> +<DD><A HREF="node52.html#1770">Disks without filesystems</A> | <A HREF="node52.html#1772">Disks without filesystems</A> +<DT><STRONG>debugfs</STRONG> +<DD><A HREF="node47.html#1711">Checking filesystem integrity with </A> | <A HREF="node51.html#1756">Other tools for the </A> | <A HREF="node51.html#1760">Other tools for the </A> +<DT><STRONG>deluser</STRONG> +<DD><A HREF="node94.html#2903">Removing a user</A> +<DT><STRONG>device driver</STRONG> +<DD><A HREF="node7.html#144">Important parts of the </A> +<DT><STRONG>device driver configuration</STRONG> +<DD><A HREF="node68.html#2006">The boot process in </A> +<DT><STRONG>df</STRONG> +<DD><A HREF="node23.html#791">The <tt>/etc</tt> directory</A> | <A HREF="node50.html#1724">Other tools for all </A> +<DT><STRONG>disk cache</STRONG> +<DD><A HREF="node69.html#2039">More about shutdowns</A> +<DT><STRONG>distributed computing</STRONG> +<DD><A HREF="node14.html#228">Networking</A> +<DT><STRONG>documentation</STRONG> +<DD><A HREF="node6.html#138">Various parts of an </A> +<DT><STRONG>DouBle</STRONG> +<DD><A HREF="node58.html#1812">Tips for saving disk </A> +<DT><STRONG>du</STRONG> +<DD><A HREF="node50.html#1726">Other tools for all </A> +<DT><STRONG>dump</STRONG> +<DD><A HREF="node46.html#1671">Mounting and unmounting</A> | <A HREF="node51.html#1762">Other tools for the </A> | <A HREF="node99.html#3024">Selecting the backup tool</A> | <A HREF="node99.html#3034">Selecting the backup tool</A> | <A HREF="node99.html#3044">Selecting the backup tool</A> | <A HREF="node99.html#3046">Selecting the backup tool</A> | <A HREF="node103.html#3081">Multilevel backups</A> | <A HREF="node103.html#3083">Multilevel backups</A> +<DT><STRONG>dumpe2fs</STRONG> +<DD><A HREF="node51.html#1754">Other tools for the </A> | <A HREF="node51.html#1754">Other tools for the </A> | <A HREF="node51.html#1752">Other tools for the </A> +<DT><STRONG>e-mail</STRONG> +<DD><i>see </i> electronic mail +<DT><STRONG>e2fsck</STRONG> +<DD><A HREF="node47.html#1695">Checking filesystem integrity with </A> | <A HREF="node47.html#1701">Checking filesystem integrity with </A> | <A HREF="node47.html#1703">Checking filesystem integrity with </A> | <A HREF="node47.html#1705">Checking filesystem integrity with </A> | <A HREF="node48.html#1721">Checking for disk errors </A> | <A HREF="node51.html#1746">Other tools for the </A> | <A HREF="node51.html#1748">Other tools for the </A> | <A HREF="node51.html#1742">Other tools for the </A> +<DT><STRONG>electronic mail</STRONG> +<DD><A HREF="node17.html#251">Mail</A> +<DT><STRONG>elm</STRONG> +<DD><A HREF="node17.html#395">Mail</A> +<DT><STRONG>emergency floppy</STRONG> +<DD><DL COMPACT> +<DT><STRONG>making</STRONG> +<DD><A HREF="node72.html#2099">Emergency boot floppies</A> +<DT><STRONG>using</STRONG> +<DD><A HREF="node72.html#2096">Emergency boot floppies</A> +</DL> +<DT><STRONG>emergency shutdown</STRONG> +<DD><i>see </i> shutdown, emergency +<DT><STRONG>error messages</STRONG> +<DD><A HREF="node11.html#203">Syslog</A> +<DT><STRONG>exec</STRONG> +<DD><A HREF="node80.html#2623">Logins via terminals</A> +<DT><STRONG>fault tolerance</STRONG> +<DD><A HREF="node14.html#229">Networking</A> +<DT><STRONG>fdformat</STRONG> +<DD><A HREF="node34.html#1489">Formatting</A> | <A HREF="node34.html#1495">Formatting</A> | <A HREF="node34.html#1497">Formatting</A> | <A HREF="node34.html#1503">Formatting</A> +<DT><STRONG>fdisk</STRONG> +<DD><A HREF="node36.html#1522">The MBRboot sectors </A> | <A HREF="node38.html#1531">Partition types</A> | <A HREF="node38.html#1531">Partition types</A> | <A HREF="node38.html#1529">Partition types</A> | <A HREF="node39.html#1533">Partitioning a hard disk</A> | <A HREF="node39.html#1535">Partitioning a hard disk</A> | <A HREF="node39.html#1539">Partitioning a hard disk</A> | <A HREF="node39.html#1541">Partitioning a hard disk</A> +<DT><STRONG>fdisk -l</STRONG> +<DD><A HREF="node36.html#1524">The MBRboot sectors </A> +<DT><STRONG>file</STRONG> +<DD><A HREF="node23.html#776">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#778">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#782">The <tt>/etc</tt> directory</A> +<DT><STRONG>filesystem driver</STRONG> +<DD><A HREF="node7.html#145">Important parts of the </A> +<DT><STRONG>Filesystem Standard</STRONG> +<DD><i>see </i> FSSTND +<DT><STRONG>filesystems</STRONG> +<DD><DL COMPACT> +<DT><STRONG>root</STRONG> +<DD><A HREF="node68.html#2013">The boot process in </A> +</DL> +<DT><STRONG>find</STRONG> +<DD><A HREF="node94.html#2901">Removing a user</A> | <A HREF="node101.html#3070">Making backups with <tt>tar</tt></A> +<DT><STRONG>fips</STRONG> +<DD><A HREF="node39.html#1543">Partitioning a hard disk</A> +<DT><STRONG>floppy</STRONG> +<DD><DL COMPACT> +<DT><STRONG>booting from</STRONG> +<DD><i>see </i> booting +</DL> +<DT><STRONG>floppy drive</STRONG> +<DD><A HREF="node72.html#2092">Emergency boot floppies</A> +<DT><STRONG>floppy-image</STRONG> +<DD><A HREF="node52.html#1774">Disks without filesystems</A> +<DT><STRONG>fork</STRONG> +<DD><A HREF="node80.html#2617">Logins via terminals</A> +<DT><STRONG>free</STRONG> +<DD><A HREF="node27.html#997">The <tt>/proc</tt> filesystem</A> | <A HREF="node62.html#1912">Using a swap space</A> | <A HREF="node62.html#1920">Using a swap space</A> | <A HREF="node64.html#1924">Allocating swap space</A> +<DT><STRONG>fsck</STRONG> +<DD><A HREF="node34.html#1513">Formatting</A> | <A HREF="node34.html#1517">Formatting</A> | <A HREF="node46.html#1638">Mounting and unmounting</A> | <A HREF="node46.html#1641">Mounting and unmounting</A> | <A HREF="node46.html#1643">Mounting and unmounting</A> | <A HREF="node46.html#1645">Mounting and unmounting</A> | <A HREF="node46.html#1673">Mounting and unmounting</A> | <A HREF="node47.html#1685">Checking filesystem integrity with </A> | <A HREF="node47.html#1687">Checking filesystem integrity with </A> | <A HREF="node47.html#1689">Checking filesystem integrity with </A> | <A HREF="node47.html#1691">Checking filesystem integrity with </A> | <A HREF="node47.html#1697">Checking filesystem integrity with </A> | <A HREF="node47.html#1707">Checking filesystem integrity with </A> | <A HREF="node47.html#1709">Checking filesystem integrity with </A> | <A HREF="node47.html#1713">Checking filesystem integrity with </A> | <A HREF="node48.html#1719">Checking for disk errors </A> | <A HREF="node51.html#1758">Other tools for the </A> | <A HREF="node68.html#2020">The boot process in </A> | <A HREF="node78.html#2475">Booting in single user </A> | <A HREF="node78.html#2485">Booting in single user </A> | <A HREF="node78.html#2489">Booting in single user </A> | <A HREF="node78.html#2493">Booting in single user </A> | <A HREF="node78.html#2495">Booting in single user </A> +<DT><STRONG>FSSTND</STRONG> +<DD><A HREF="node19.html#282">The filesystem layout</A> +<DT><STRONG>fstab</STRONG> +<DD><A HREF="node46.html#1649">Mounting and unmounting</A> +<DT><STRONG>ftpd</STRONG> +<DD><A HREF="node23.html#819">The <tt>/etc</tt> directory</A> +<DT><STRONG>games</STRONG> +<DD><A HREF="node6.html#139">Various parts of an </A> +<DT><STRONG>GCC</STRONG> +<DD><A HREF="node6.html#135">Various parts of an </A> +<DT><STRONG>getty</STRONG> +<DD><A HREF="node9.html#327"><tt>init</tt></A> | <A HREF="node10.html#331">Logins from terminals</A> | <A HREF="node10.html#335">Logins from terminals</A> | <A HREF="node10.html#337">Logins from terminals</A> | <A HREF="node10.html#347">Logins from terminals</A> | <A HREF="node15.html#369">Network logins</A> | <A HREF="node15.html#375">Network logins</A> | <A HREF="node15.html#381">Network logins</A> | <A HREF="node23.html#772">The <tt>/etc</tt> directory</A> | <A HREF="node68.html#2137">The boot process in </A> | <A HREF="node68.html#2139">The boot process in </A> | <A HREF="node73.html#2323"><tt>init</tt></A> | <A HREF="node74.html#2353"><tt>init</tt> comes first</A> | <A HREF="node74.html#2357"><tt>init</tt> comes first</A> | <A HREF="node75.html#2379">Configuring \textttinit\indexinit to start </A> | <A HREF="node75.html#2399">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2411">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2393">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2403">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2409">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2419">Configuring <tt>init</tt> to </A> | <A HREF="node80.html#2611">Logins via terminals</A> | <A HREF="node80.html#2611">Logins via terminals</A> | <A HREF="node80.html#2591">Logins via terminals</A> | <A HREF="node80.html#2593">Logins via terminals</A> | <A HREF="node80.html#2595">Logins via terminals</A> | <A HREF="node80.html#2607">Logins via terminals</A> | <A HREF="node80.html#2619">Logins via terminals</A> | <A HREF="node80.html#2625">Logins via terminals</A> | <A HREF="node80.html#2627">Logins via terminals</A> | <A HREF="node80.html#2631">Logins via terminals</A> | <A HREF="node81.html#2636">Logins via the network</A> | <A HREF="node81.html#2638">Logins via the network</A> +<DT><STRONG>graphical user interface</STRONG> +<DD><A HREF="node13.html#221">Graphical user interface</A> +<DT><STRONG>group</STRONG> +<DD><A HREF="node23.html#764">The <tt>/etc</tt> directory</A> +<DT><STRONG>gzexe</STRONG> +<DD><A HREF="node58.html#1810">Tips for saving disk </A> +<DT><STRONG>gzip</STRONG> +<DD><A HREF="node58.html#1806">Tips for saving disk </A> | <A HREF="node105.html#3101">Compressed backups</A> +<DT><STRONG>hard disk</STRONG> +<DD><DL COMPACT> +<DT><STRONG>booting from</STRONG> +<DD><i>see </i> booting +</DL> +<DT><STRONG>hardware configuration</STRONG> +<DD><A HREF="node68.html#2005">The boot process in </A> +<DT><STRONG>improper shutdown</STRONG> +<DD><i>see </i> shutdown, emergency +<DT><STRONG>incoming mailbox</STRONG> +<DD><A HREF="node17.html#255">Mail</A> +<DT><STRONG>inetd</STRONG> +<DD><A HREF="node81.html#2644">Logins via the network</A> +<DT><STRONG>init</STRONG> +<DD><A HREF="node9.html#308">\textttinit\indexinit</A> | <A HREF="node9.html#310"><tt>init</tt></A> | <A HREF="node9.html#312"><tt>init</tt></A> | <A HREF="node9.html#314"><tt>init</tt></A> | <A HREF="node9.html#316"><tt>init</tt></A> | <A HREF="node9.html#318"><tt>init</tt></A> | <A HREF="node9.html#325"><tt>init</tt></A> | <A HREF="node9.html#329"><tt>init</tt></A> | <A HREF="node10.html#333">Logins from terminals</A> | <A HREF="node10.html#345">Logins from terminals</A> | <A HREF="node23.html#742">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#768">The <tt>/etc</tt> directory</A> | <A HREF="node67.html#2115">An overview of boots </A> | <A HREF="node67.html#2117">An overview of boots </A> | <A HREF="node68.html#2129">The boot process in </A> | <A HREF="node68.html#2133">The boot process in </A> | <A HREF="node68.html#2135">The boot process in </A> | <A HREF="node68.html#2141">The boot process in </A> | <A HREF="node69.html#2149">More about shutdowns</A> | <A HREF="node73.html#2317">\textttinit\indexinit</A> | <A HREF="node73.html#2319"><tt>init</tt></A> | <A HREF="node73.html#2321"><tt>init</tt></A> | <A HREF="node73.html#2325"><tt>init</tt></A> | <i>see </i> /sbin/init | <A HREF="node74.html#2327">\textttinit\indexinit comes first</A> | <A HREF="node74.html#2363"><tt>init</tt> comes first</A> | <A HREF="node74.html#2365"><tt>init</tt> comes first</A> | <A HREF="node74.html#2329"><tt>init</tt> comes first</A> | <A HREF="node74.html#2331"><tt>init</tt> comes first</A> | <A HREF="node74.html#2333"><tt>init</tt> comes first</A> | <A HREF="node74.html#2335"><tt>init</tt> comes first</A> | <A HREF="node74.html#2337"><tt>init</tt> comes first</A> | <A HREF="node74.html#2339"><tt>init</tt> comes first</A> | <A HREF="node74.html#2341"><tt>init</tt> comes first</A> | <A HREF="node74.html#2345"><tt>init</tt> comes first</A> | <A HREF="node74.html#2349"><tt>init</tt> comes first</A> | <A HREF="node74.html#2355"><tt>init</tt> comes first</A> | <A HREF="node74.html#2359"><tt>init</tt> comes first</A> | <A HREF="node74.html#2361"><tt>init</tt> comes first</A> | <A HREF="node74.html#2367"><tt>init</tt> comes first</A> | <A HREF="node74.html#2371"><tt>init</tt> comes first</A> | <A HREF="node74.html#2373"><tt>init</tt> comes first</A> | <A HREF="node75.html#2377">Configuring \textttinit\indexinit to start </A> | <A HREF="node75.html#2383">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2389">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2415">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2421">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2423">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2425">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2427">Configuring <tt>init</tt> to </A> | <A HREF="node75.html#2429">Configuring <tt>init</tt> to </A> | <A HREF="node76.html#2432">Run levels</A> | <A HREF="node76.html#2436">Run levels</A> | <A HREF="node76.html#2438">Run levels</A> | <A HREF="node76.html#2442">Run levels</A> | <A HREF="node76.html#2446">Run levels</A> | <A HREF="node76.html#2450">Run levels</A> | <A HREF="node77.html#2460">Special configuration in <tt>/etc/inittab</tt></A> | <A HREF="node77.html#2462">Special configuration in <tt>/etc/inittab</tt></A> | <A HREF="node77.html#2464">Special configuration in <tt>/etc/inittab</tt></A> | <A HREF="node77.html#2458">Special configuration in <tt>/etc/inittab</tt></A> | <A HREF="node78.html#2481">Booting in single user </A> | <A HREF="node78.html#2483">Booting in single user </A> | <A HREF="node78.html#2491">Booting in single user </A> | <A HREF="node80.html#2609">Logins via terminals</A> | <A HREF="node80.html#2609">Logins via terminals</A> | <A HREF="node80.html#2589">Logins via terminals</A> | <A HREF="node80.html#2605">Logins via terminals</A> | <A HREF="node80.html#2615">Logins via terminals</A> | <A HREF="node80.html#2629">Logins via terminals</A> | <A HREF="node80.html#2633">Logins via terminals</A> +<DL COMPACT> +<DT><STRONG>and ctrl-alt-del</STRONG> +<DD><A HREF="node70.html#2083">Rebooting</A> +<DT><STRONG>single user mode</STRONG> +<DD><A HREF="node71.html#2089">Single user mode</A> +</DL> +<DT><STRONG>inittab</STRONG> +<DD><A HREF="node75.html#2417">Configuring <tt>init</tt> to </A> | <A HREF="node77.html#2470">Special configuration in <tt>/etc/inittab</tt></A> +<DT><STRONG>installation disks</STRONG> +<DD><A HREF="node72.html#2095">Emergency boot floppies</A> +<DT><STRONG>kernel</STRONG> +<DD><A HREF="node6.html#127">Various parts of an </A> +<DT><STRONG>kernel compression</STRONG> +<DD><A HREF="node68.html#1998">The boot process in </A> +<DT><STRONG>kernel configuration</STRONG> +<DD><A HREF="node68.html#2002">The boot process in </A> +<DT><STRONG>kernel panic</STRONG> +<DD><A HREF="node68.html#2016">The boot process in </A> +<DT><STRONG>killing processes</STRONG> +<DD><A HREF="node9.html#184"><tt>init</tt></A> +<DT><STRONG>kill -HUP 1</STRONG> +<DD><A HREF="node75.html#2387">Configuring <tt>init</tt> to </A> +<DT><STRONG>last</STRONG> +<DD><A HREF="node82.html#2678">What <tt>login</tt> does</A> +<DT><STRONG>letter</STRONG> +<DD><i>see </i> electronic mail +<DT><STRONG>LILO</STRONG> +<DD><A HREF="node68.html#2015">The boot process in </A> | <A HREF="node68.html#1992">The boot process in </A> +<DT><STRONG>Linux Filesystem Standard</STRONG> +<DD><i>see </i> FSSTND +<DT><STRONG>log files</STRONG> +<DD><A HREF="node11.html#205">Syslog</A> +<DT><STRONG>logging in</STRONG> +<DD><A HREF="node10.html#198">Logins from terminals</A> +<DT><STRONG>logging out</STRONG> +<DD><A HREF="node10.html#199">Logins from terminals</A> +<DT><STRONG>login</STRONG> +<DD><A HREF="node10.html#339">Logins from terminals</A> | <A HREF="node10.html#341">Logins from terminals</A> | <A HREF="node10.html#343">Logins from terminals</A> | <A HREF="node23.html#801">The <tt>/etc</tt> directory</A> | <A HREF="node26.html#917">The <tt>/var</tt> filesystem</A> | <A HREF="node80.html#2613">Logins via terminals</A> | <A HREF="node80.html#2613">Logins via terminals</A> | <A HREF="node80.html#2599">Logins via terminals</A> | <A HREF="node80.html#2601">Logins via terminals</A> | <A HREF="node80.html#2603">Logins via terminals</A> | <A HREF="node80.html#2621">Logins via terminals</A> | <A HREF="node82.html#2646">What \textttlogin\indexlogin does</A> | <A HREF="node82.html#2648">What <tt>login</tt> does</A> | <A HREF="node82.html#2658">What <tt>login</tt> does</A> | <A HREF="node82.html#2660">What <tt>login</tt> does</A> | <A HREF="node82.html#2662">What <tt>login</tt> does</A> +<DT><STRONG>lpr</STRONG> +<DD><A HREF="node29.html#1437">Two kinds of devices</A> +<DT><STRONG>ls</STRONG> +<DD><A HREF="node29.html#1441">Two kinds of devices</A> | <A HREF="node29.html#1445">Two kinds of devices</A> | <A HREF="node65.html#1928">The buffer cache</A> +<DT><STRONG>ls -l</STRONG> +<DD><A HREF="node29.html#1443">Two kinds of devices</A> +<DT><STRONG>lseek</STRONG> +<DD><A HREF="node42.html#1557">What are filesystems?</A> +<DT><STRONG>magic</STRONG> +<DD><A HREF="node23.html#780">The <tt>/etc</tt> directory</A> +<DT><STRONG>mail, electronic</STRONG> +<DD><i>see </i> electronic mail +<DT><STRONG>mailbox</STRONG> +<DD><A HREF="node17.html#254">Mail</A> +<DT><STRONG>MAKEDEV</STRONG> +<DD><A HREF="node24.html#841">The <tt>/dev</tt> directory</A> +<DT><STRONG>master boot record</STRONG> +<DD><A HREF="node68.html#1981">The boot process in </A> +<DT><STRONG>MBR</STRONG> +<DD><A HREF="node68.html#1982">The boot process in </A> +<DT><STRONG>memory management</STRONG> +<DD><A HREF="node7.html#143">Important parts of the </A> +<DT><STRONG>mkdir</STRONG> +<DD><A HREF="node92.html#2865">Creating a user by </A> +<DT><STRONG>mke2fs</STRONG> +<DD><A HREF="node51.html#1740">Other tools for the </A> +<DT><STRONG>mkfs</STRONG> +<DD><A HREF="node34.html#1509">Formatting</A> | <A HREF="node34.html#1515">Formatting</A> | <A HREF="node45.html#1563">Creating a filesystem</A> | <A HREF="node45.html#1565">Creating a filesystem</A> | <A HREF="node45.html#1567">Creating a filesystem</A> | <A HREF="node45.html#1573">Creating a filesystem</A> +<DT><STRONG>mkfs)</STRONG> +<DD><A HREF="node2.html#81">Introduction</A> +<DT><STRONG>mkswap</STRONG> +<DD><A HREF="node61.html#1900">Creating a swap space</A> | <A HREF="node61.html#1891">Creating a swap space</A> | <A HREF="node61.html#1896">Creating a swap space</A> | <A HREF="node61.html#1898">Creating a swap space</A> | <A HREF="node61.html#1902">Creating a swap space</A> +<DT><STRONG>Motif</STRONG> +<DD><A HREF="node13.html#224">Graphical user interface</A> +<DT><STRONG>mount</STRONG> +<DD><A HREF="node23.html#758">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#789">The <tt>/etc</tt> directory</A> | <A HREF="node46.html#1590">Mounting and unmounting</A> | <A HREF="node46.html#1608">Mounting and unmounting</A> | <A HREF="node46.html#1610">Mounting and unmounting</A> | <A HREF="node46.html#1632">Mounting and unmounting</A> | <A HREF="node46.html#1683">Mounting and unmounting</A> +<DT><STRONG>mount -a</STRONG> +<DD><A HREF="node46.html#1675">Mounting and unmounting</A> +<DT><STRONG>mounting</STRONG> +<DD><DL COMPACT> +<DT><STRONG>root filesystem</STRONG> +<DD><A HREF="node68.html#2014">The boot process in </A> +</DL> +<DT><STRONG>mounting filesystems</STRONG> +<DD><A HREF="node9.html#167"><tt>init</tt></A> +<DT><STRONG>mtools</STRONG> +<DD><A HREF="node46.html#1665">Mounting and unmounting</A> +<DT><STRONG>multitasking</STRONG> +<DD><A HREF="node7.html#156">Important parts of the </A> +<DT><STRONG>multiuser mode</STRONG> +<DD><A HREF="node9.html#177"><tt>init</tt></A> +<DT><STRONG>netdate</STRONG> +<DD><A HREF="node110.html#3195">When the clock is </A> | <A HREF="node110.html#3197">When the clock is </A> +<DT><STRONG>nethack</STRONG> +<DD><A HREF="node77.html#2466">Special configuration in <tt>/etc/inittab</tt></A> | <A HREF="node78.html#2473">Booting in single user </A> +<DT><STRONG>Network File System</STRONG> +<DD><i>see </i> NFS +<DT><STRONG>network file systems</STRONG> +<DD><A HREF="node16.html#245">Network file systems</A> +<DT><STRONG>network management</STRONG> +<DD><A HREF="node7.html#146">Important parts of the </A> +<DT><STRONG>NFS</STRONG> +<DD><A HREF="node16.html#244">Network file systems</A> +<DT><STRONG>now</STRONG> +<DD><A HREF="node50.html#1736">Other tools for all </A> +<DT><STRONG>Open Look</STRONG> +<DD><A HREF="node13.html#225">Graphical user interface</A> +<DT><STRONG>operating system</STRONG> +<DD><A HREF="node6.html#128">Various parts of an </A> +<DT><STRONG>panic</STRONG> +<DD><A HREF="node68.html#2017">The boot process in </A> +<DT><STRONG>partition boot record</STRONG> +<DD><A HREF="node68.html#1983">The boot process in </A> +<DT><STRONG>partition table</STRONG> +<DD><A HREF="node68.html#1990">The boot process in </A> +<DT><STRONG>passwd</STRONG> +<DD><A HREF="node23.html#746">The <tt>/etc</tt> directory</A> | <A HREF="node84.html#2698">Access control</A> | <A HREF="node89.html#2833"><tt>/etc/passwd</tt> and other informative </A> | <A HREF="node92.html#2873">Creating a user by </A> | <A HREF="node93.html#2881">Changing user properties</A> +<DT><STRONG>periodic command execution</STRONG> +<DD><i>see </i> cron and at +<DT><STRONG>pine</STRONG> +<DD><A HREF="node17.html#393">Mail</A> +<DT><STRONG>printer queue</STRONG> +<DD><A HREF="node18.html#268">Printing</A> +<DT><STRONG>proc</STRONG> +<DD><A HREF="node27.html#949">The <tt>/proc</tt> filesystem</A> +<DT><STRONG>process management</STRONG> +<DD><A HREF="node7.html#142">Important parts of the </A> +<DT><STRONG>programming languages</STRONG> +<DD><A HREF="node6.html#136">Various parts of an </A> +<DT><STRONG>ps</STRONG> +<DD><A HREF="node64.html#1926">Allocating swap space</A> +<DT><STRONG>ramdisk</STRONG> +<DD><A HREF="node72.html#2100">Emergency boot floppies</A> +<DT><STRONG>rdate</STRONG> +<DD><A HREF="node110.html#3193">When the clock is </A> +<DT><STRONG>rdev</STRONG> +<DD><A HREF="node46.html#1636">Mounting and unmounting</A> | <A HREF="node68.html#2125">The boot process in </A> | <A HREF="node68.html#2127">The boot process in </A> +<DT><STRONG>read-only root filesystem</STRONG> +<DD><A HREF="node68.html#2018">The boot process in </A> +<DT><STRONG>rebooting</STRONG> +<DD><A HREF="node70.html#2080">Rebooting</A> +<DT><STRONG>restore</STRONG> +<DD><A HREF="node51.html#1764">Other tools for the </A> +<DT><STRONG>rlogin</STRONG> +<DD><A HREF="node15.html#373">Network logins</A> | <A HREF="node15.html#379">Network logins</A> | <A HREF="node81.html#2642">Logins via the network</A> +<DT><STRONG>root</STRONG> +<DD><A HREF="node9.html#321"><tt>init</tt></A> | <A HREF="node46.html#1661">Mounting and unmounting</A> | <A HREF="node46.html#1657">Mounting and unmounting</A> +<DT><STRONG>root filesystem</STRONG> +<DD><A HREF="node68.html#2012">The boot process in </A> +<DT><STRONG>run level</STRONG> +<DD><A HREF="node9.html#175"><tt>init</tt></A> +<DT><STRONG>sendmail</STRONG> +<DD><A HREF="node17.html#387">Mail</A> | <A HREF="node112.html#3234">Glossary (DRAFT)</A> +<DT><STRONG>serial terminal</STRONG> +<DD><A HREF="node68.html#2033">The boot process in </A> +<DT><STRONG>setfdprm</STRONG> +<DD><A HREF="node23.html#750">The <tt>/etc</tt> directory</A> | <A HREF="node23.html#752">The <tt>/etc</tt> directory</A> | <A HREF="node31.html#1478">Floppies</A> | <A HREF="node31.html#1482">Floppies</A> | <A HREF="node34.html#1493">Formatting</A> +<DT><STRONG>sharing printers</STRONG> +<DD><A HREF="node18.html#269">Printing</A> +<DT><STRONG>shutdown</STRONG> +<DD><A HREF="node69.html#2143">More about shutdowns</A> | <A HREF="node69.html#2145">More about shutdowns</A> | <A HREF="node69.html#2047">More about shutdowns</A> | <A HREF="node69.html#2159">More about shutdowns</A> | <A HREF="node70.html#2161">Rebooting</A> | <A HREF="node82.html#2656">What <tt>login</tt> does</A> +<DL COMPACT> +<DT><STRONG>actions</STRONG> +<DD><A HREF="node69.html#2060">More about shutdowns</A> +<DT><STRONG>emergency</STRONG> +<DD><A HREF="node69.html#2065">More about shutdowns</A> +<DT><STRONG>triple syncs</STRONG> +<DD><A HREF="node69.html#2074">More about shutdowns</A> +<DT><STRONG>using</STRONG> +<DD><A HREF="node69.html#2042">More about shutdowns</A> +</DL> +<DT><STRONG>shutdown message</STRONG> +<DD><A HREF="node69.html#2057">More about shutdowns</A> +<DT><STRONG>shutting down</STRONG> +<DD><A HREF="node69.html#2036">More about shutdowns</A> +<DT><STRONG>single user mode</STRONG> +<DD><A HREF="node9.html#176"><tt>init</tt></A> | <A HREF="node71.html#2088">Single user mode</A> +<DT><STRONG>smail</STRONG> +<DD><A HREF="node17.html#389">Mail</A> +<DT><STRONG>social relations</STRONG> +<DD><A HREF="node18.html#270">Printing</A> +<DT><STRONG>socket</STRONG> +<DD><A HREF="node7.html#160">Important parts of the </A> +<DT><STRONG>spooling</STRONG> +<DD><A HREF="node18.html#272">Printing</A> +<DT><STRONG>starting a computer</STRONG> +<DD><A HREF="node67.html#1964">An overview of boots </A> +<DT><STRONG>startup messages</STRONG> +<DD><A HREF="node68.html#2007">The boot process in </A> +<DT><STRONG>stopping the processor</STRONG> +<DD><A HREF="node9.html#186"><tt>init</tt></A> +<DT><STRONG>su</STRONG> +<DD><A HREF="node84.html#2706">Access control</A> | <A HREF="node95.html#2909">Disabling a user temporarily</A> +<DT><STRONG>sudo</STRONG> +<DD><A HREF="node46.html#1663">Mounting and unmounting</A> +<DT><STRONG>swap space</STRONG> +<DD><A HREF="node7.html#154">Important parts of the </A> +<DT><STRONG>swapoff</STRONG> +<DD><A HREF="node62.html#1918">Using a swap space</A> +<DT><STRONG>swapon</STRONG> +<DD><A HREF="node62.html#1904">Using a swap space</A> | <A HREF="node62.html#1910">Using a swap space</A> +<DT><STRONG>sync</STRONG> +<DD><A HREF="node50.html#1728">Other tools for all </A> | <A HREF="node65.html#1934">The buffer cache</A> | <A HREF="node65.html#1939">The buffer cache</A> | <A HREF="node65.html#1941">The buffer cache</A> | <A HREF="node65.html#1945">The buffer cache</A> | <A HREF="node69.html#2157">More about shutdowns</A> | <A HREF="node69.html#2155">More about shutdowns</A> +<DT><STRONG>syslog</STRONG> +<DD><A HREF="node11.html#349">Syslog</A> | <A HREF="node26.html#921">The <tt>/var</tt> filesystem</A> | <A HREF="node27.html#973">The <tt>/proc</tt> filesystem</A> | <A HREF="node34.html#1499">Formatting</A> | <A HREF="node82.html#2664">What <tt>login</tt> does</A> +<DT><STRONG>system call</STRONG> +<DD><A HREF="node6.html#131">Various parts of an </A> +<DT><STRONG>system crash</STRONG> +<DD><A HREF="node69.html#2064">More about shutdowns</A> +<DT><STRONG>system program</STRONG> +<DD><A HREF="node6.html#129">Various parts of an </A> +<DT><STRONG>sysvinit</STRONG> +<DD><A HREF="node74.html#2369"><tt>init</tt> comes first</A> | <A HREF="node74.html#2375"><tt>init</tt> comes first</A> +<DT><STRONG>tail</STRONG> +<DD><A HREF="node95.html#2907">Disabling a user temporarily</A> +<DT><STRONG>tar</STRONG> +<DD><A HREF="node52.html#1766">Disks without filesystems</A> | <A HREF="node52.html#1768">Disks without filesystems</A> | <A HREF="node99.html#3020">Selecting the backup tool</A> | <A HREF="node99.html#3026">Selecting the backup tool</A> | <A HREF="node99.html#3030">Selecting the backup tool</A> | <A HREF="node99.html#3036">Selecting the backup tool</A> | <A HREF="node99.html#3040">Selecting the backup tool</A> | <A HREF="node99.html#3048">Selecting the backup tool</A> | <A HREF="node101.html#3054">Making backups with \texttttar\indextar</A> | <A HREF="node101.html#3056">Making backups with <tt>tar</tt></A> | <A HREF="node101.html#3058">Making backups with <tt>tar</tt></A> | <A HREF="node101.html#3060">Making backups with <tt>tar</tt></A> | <A HREF="node101.html#3062">Making backups with <tt>tar</tt></A> | <A HREF="node101.html#3064">Making backups with <tt>tar</tt></A> | <A HREF="node101.html#3066">Making backups with <tt>tar</tt></A> | <A HREF="node101.html#3068">Making backups with <tt>tar</tt></A> | <A HREF="node102.html#3072">Restoring files with \texttttar\indextar</A> | <A HREF="node102.html#3074">Restoring files with <tt>tar</tt></A> | <A HREF="node102.html#3076">Restoring files with <tt>tar</tt></A> | <A HREF="node102.html#3078">Restoring files with <tt>tar</tt></A> | <A HREF="node103.html#3085">Multilevel backups</A> | <A HREF="node105.html#3099">Compressed backups</A> | <A HREF="node105.html#3103">Compressed backups</A> +<DT><STRONG>telinit</STRONG> +<DD><A HREF="node76.html#2448">Run levels</A> | <A HREF="node78.html#2479">Booting in single user </A> +<DT><STRONG>telnet</STRONG> +<DD><A HREF="node6.html#305">Various parts of an </A> | <A HREF="node15.html#371">Network logins</A> | <A HREF="node15.html#377">Network logins</A> | <A HREF="node81.html#2640">Logins via the network</A> +<DT><STRONG>temporary files</STRONG> +<DD><A HREF="node12.html#211">Periodic command execution: <tt>cron</tt><A </A> +<DT><STRONG>termcap</STRONG> +<DD><A HREF="node23.html#827">The <tt>/etc</tt> directory</A> +<DT><STRONG>terminal</STRONG> +<DD><A HREF="node68.html#2032">The boot process in </A> +<DT><STRONG>terminfo</STRONG> +<DD><A HREF="node23.html#831">The <tt>/etc</tt> directory</A> +<DT><STRONG>text mode</STRONG> +<DD><A HREF="node68.html#2004">The boot process in </A> +<DT><STRONG>time</STRONG> +<DD><A HREF="node109.html#3167">Showing and setting time</A> +<DT><STRONG>top</STRONG> +<DD><A HREF="node62.html#1914">Using a swap space</A> +<DT><STRONG>tune2fs</STRONG> +<DD><A HREF="node51.html#1744">Other tools for the </A> | <A HREF="node51.html#1750">Other tools for the </A> +<DT><STRONG>tzset</STRONG> +<DD><A HREF="node109.html#3163">Showing and setting time</A> +<DT><STRONG>umask</STRONG> +<DD><A HREF="node46.html#1681">Mounting and unmounting</A> +<DT><STRONG>umount</STRONG> +<DD><A HREF="node46.html#1651">Mounting and unmounting</A> | <A HREF="node46.html#1655">Mounting and unmounting</A> | <A HREF="node46.html#1677">Mounting and unmounting</A> +<DT><STRONG>unmount</STRONG> +<DD><A HREF="node46.html#1653">Mounting and unmounting</A> +<DT><STRONG>unmounting filesystems</STRONG> +<DD><A HREF="node9.html#185"><tt>init</tt></A> +<DT><STRONG>update</STRONG> +<DD><A HREF="node50.html#1730">Other tools for all </A> | <A HREF="node50.html#1732">Other tools for all </A> | <A HREF="node50.html#1738">Other tools for all </A> | <A HREF="node65.html#1937">The buffer cache</A> | <A HREF="node65.html#1949">The buffer cache</A> | <A HREF="node69.html#2151">More about shutdowns</A> | <A HREF="node69.html#2153">More about shutdowns</A> | <A HREF="node112.html#3232">Glossary (DRAFT)</A> +<DT><STRONG>user authentication</STRONG> +<DD><A HREF="node10.html#200">Logins from terminals</A> +<DT><STRONG>user mode</STRONG> +<DD><A HREF="node6.html#134">Various parts of an </A> +<DT><STRONG>useradd</STRONG> +<DD><A HREF="node88.html#2826">Creating a user</A> +<DT><STRONG>userdel</STRONG> +<DD><A HREF="node94.html#2905">Removing a user</A> +<DT><STRONG>utmp</STRONG> +<DD><A HREF="node82.html#2672">What <tt>login</tt> does</A> | <A HREF="node82.html#2682">What <tt>login</tt> does</A> | <A HREF="node82.html#2686">What <tt>login</tt> does</A> +<DT><STRONG>video card</STRONG> +<DD><A HREF="node68.html#2001">The boot process in </A> +<DT><STRONG>video mode</STRONG> +<DD><A HREF="node68.html#2003">The boot process in </A> +<DT><STRONG>vigr</STRONG> +<DD><A HREF="node92.html#2863">Creating a user by </A> | <A HREF="node93.html#2891">Changing user properties</A> +<DT><STRONG>vipw</STRONG> +<DD><A HREF="node92.html#2857">Creating a user by </A> | <A HREF="node92.html#2859">Creating a user by </A> | <A HREF="node93.html#2887">Changing user properties</A> +<DT><STRONG>virtual console</STRONG> +<DD><A HREF="node68.html#2030">The boot process in </A> +<DT><STRONG>virtual filesystem</STRONG> +<DD><A HREF="node7.html#158">Important parts of the </A> +<DT><STRONG>w</STRONG> +<DD><A HREF="node82.html#2670">What <tt>login</tt> does</A> +<DT><STRONG>warning messages</STRONG> +<DD><A HREF="node11.html#204">Syslog</A> +<DT><STRONG>who</STRONG> +<DD><A HREF="node82.html#2668">What <tt>login</tt> does</A> +<DT><STRONG>Windows 95</STRONG> +<DD><i>see </i> crying +<DT><STRONG>wtmp</STRONG> +<DD><A HREF="node82.html#2680">What <tt>login</tt> does</A> | <A HREF="node82.html#2684">What <tt>login</tt> does</A> +<DT><STRONG>X Window System</STRONG> +<DD><A HREF="node9.html#178"><tt>init</tt></A> | <A HREF="node13.html#222">Graphical user interface</A> +<DT><STRONG>xterm</STRONG> +<DD><A HREF="node69.html#2147">More about shutdowns</A> +<DT><STRONG>zip</STRONG> +<DD><A HREF="node58.html#1808">Tips for saving disk </A> +<P> +</DL><BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node115.html b/sag-0.6.1-www/Invisible/sag-0.6/node115.html new file mode 100644 index 0000000..3edb344 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node115.html @@ -0,0 +1,27 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE> About this document ... </TITLE> +<META NAME="description" CONTENT=" About this document ... "> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"> <A NAME="tex2html1752" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1748" HREF="node114.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1754" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1755" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B>Up:</B> <A NAME="tex2html1753" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1749" HREF="node114.html">Index</A> +<BR> <P> +<H1><A NAME="SECTION001700000000000000000"> About this document ... </A></H1> +<P> + <STRONG>Linux System Administrators' Guide 0.6</STRONG><P> +This document was generated using the <A HREF="http://www-dsed.llnl.gov/files/programs/unix/latex2html/manual/"><STRONG>LaTeX</STRONG>2<tt>HTML</tt></A> translator Version 96.1-h (September 30, 1996) Copyright © 1993, 1994, 1995, 1996, <A HREF="http://cbl.leeds.ac.uk/nikos/personal.html">Nikos Drakos</A>, Computer Based Learning Unit, University of Leeds. <P> The command line arguments were: <BR> +<STRONG>latex2html</STRONG> <tt>sag</tt>. <P>The translation was initiated by Lars Wirzenius on Sat Nov 15 02:32:11 EET 1997<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node12.html b/sag-0.6.1-www/Invisible/sag-0.6/node12.html new file mode 100644 index 0000000..df1afab --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node12.html @@ -0,0 +1,47 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Periodic command execution: cron and at</TITLE> +<META NAME="description" CONTENT="Periodic command execution: cron and at"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html445" HREF="node13.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html443" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html437" HREF="node11.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html447" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html448" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html446" HREF="node13.html">Graphical user interface</A> +<B>Up:</B> <A NAME="tex2html444" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html438" HREF="node11.html">Syslog</A> +<BR> <P> +<A NAME="353"> </A><H2><A NAME="SECTION00334000000000000000">Periodic command execution: <tt>cron</tt><A NAME="351"> </A> and <tt>at</tt></A></H2> +<P> + Both users and system administrators often need to run + commands periodically. For example, the system + administrator might want to run a command to clean the + directories with temporary files (<tt>/tmp</tt><A NAME="355"> </A> and <tt>/var/tmp</tt><A NAME="357"> </A>) + from old files, to keep the disks from filling up, since not + all programs clean up after themselves correctly. +<A NAME="287"> </A> +<A NAME="211"> </A> +<A NAME="212"> </A> +<P> + The <tt>cron</tt><A NAME="359"> </A> service is set up to do this. Each user has + a <tt>crontab</tt><A NAME="361"> </A>, where he lists the commands he wants to + execute and the times they should be executed. The <tt>cron</tt><A NAME="363"> </A> + daemon takes care of starting the commands when specified. +<A NAME="288"> </A> +<P> + The <tt>at</tt><A NAME="365"> </A> service is similar to <tt>cron</tt><A NAME="367"> </A>, but it is + once only: the command is executed at the given time, but it + is not repeated. +<A NAME="289"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node13.html b/sag-0.6.1-www/Invisible/sag-0.6/node13.html new file mode 100644 index 0000000..413ef3f --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node13.html @@ -0,0 +1,48 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Graphical user interface</TITLE> +<META NAME="description" CONTENT="Graphical user interface"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html457" HREF="node14.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html455" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html449" HREF="node12.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html459" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html460" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html458" HREF="node14.html">Networking</A> +<B>Up:</B> <A NAME="tex2html456" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html450" HREF="node12.html">Periodic command execution: cron </A> +<BR> <P> +<H2><A NAME="SECTION00335000000000000000">Graphical user interface</A></H2> +<P> + UNIX and Linux don't incorporate the user interface into the + kernel; instead, they let it be implemented by user level + programs. This applies for both text mode and graphical + environments. +<P> + This arrangement makes the system more flexible, but has + the disadvantage that it is simple to implement a different + user interface for each program, making the system + harder to learn. +<P> + The graphical environment primarily used with Linux is called + the X Window System (X for short). X also does not implement + a user interface; it only implements a window system, i.e., tools + with which a graphical user interface can be implemented. + The three most popular user interface styles implemented over + X are Athena, Motif, and Open Look. +<A NAME="221"> </A> +<A NAME="222"> </A> +<A NAME="223"> </A> +<A NAME="224"> </A> +<A NAME="225"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node14.html b/sag-0.6.1-www/Invisible/sag-0.6/node14.html new file mode 100644 index 0000000..0553103 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node14.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Networking</TITLE> +<META NAME="description" CONTENT="Networking"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html469" HREF="node15.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html467" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html461" HREF="node13.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html471" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html472" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html470" HREF="node15.html">Network logins</A> +<B>Up:</B> <A NAME="tex2html468" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html462" HREF="node13.html">Graphical user interface</A> +<BR> <P> +<H2><A NAME="SECTION00336000000000000000">Networking</A></H2> +<P> + Networking is the act of connecting two or more computers so that + they can communicate with each other. The actual methods of + connecting and communicating are slightly complicated, + but the end result is very useful. +<P> + UNIX operating systems have many networking features. Most basic + services--filesystems, printing, backups, etc--can be done + over the network. This can make system administration easier, + since it allows centralized administration, while still reaping + in the benefits of microcomputing and distributed computing, such + as lower costs and better fault tolerance. +<A NAME="227"> </A> +<A NAME="228"> </A> +<A NAME="229"> </A> +<P> + However, this book merely glances at networking; see the + Linux Network Administrators' Guide for more information, + including a basic description of how networks operate. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node15.html b/sag-0.6.1-www/Invisible/sag-0.6/node15.html new file mode 100644 index 0000000..ae4955a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node15.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Network logins</TITLE> +<META NAME="description" CONTENT="Network logins"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html481" HREF="node16.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html479" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html473" HREF="node14.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html483" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html484" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html482" HREF="node16.html">Network file systems</A> +<B>Up:</B> <A NAME="tex2html480" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html474" HREF="node14.html">Networking</A> +<BR> <P> +<H2><A NAME="SECTION00337000000000000000">Network logins</A></H2> +<P> + Network logins work a little differently than normal logins. + There is a separate physical serial line for each terminal via + which it is possible to log in. For each person logging in via + the network, there is a separate virtual network connection, + and there can be any number of these<A NAME="tex2html7" HREF="footnode.html#231"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A>. It is + therefore not possible to run a separate <tt>getty</tt><A NAME="369"> </A> for each + possible virtual connection. There are also several different + ways to log in via a network, <tt>telnet</tt><A NAME="371"> </A> and <tt>rlogin</tt><A NAME="373"> </A> being + the major ones in TCP/IP networks. +<P> + Network logins have, instead of a herd of <tt>getty</tt><A NAME="375"> </A>s, a + single daemon per way of logging in (<tt>telnet</tt><A NAME="377"> </A> and <tt>rlogin</tt><A NAME="379"> </A> + have separate daemons) that listens for all incoming login attempts. + When it notices one, it starts a new instance of itself to handle that + single attempt; the original instance continues to listen for + other attempts. The new instance works similarly to <tt>getty</tt><A NAME="381"> </A>. +<A NAME="290"> </A> +<A NAME="291"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node16.html b/sag-0.6.1-www/Invisible/sag-0.6/node16.html new file mode 100644 index 0000000..437afda --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node16.html @@ -0,0 +1,43 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Network file systems</TITLE> +<META NAME="description" CONTENT="Network file systems"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html493" HREF="node17.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html491" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html485" HREF="node15.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html495" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html496" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html494" HREF="node17.html">Mail</A> +<B>Up:</B> <A NAME="tex2html492" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html486" HREF="node15.html">Network logins</A> +<BR> <P> +<H2><A NAME="SECTION00338000000000000000">Network file systems</A></H2> +<P> +<A NAME="secNFS"> </A> +<P> + One of the more useful things that can be done with networking + services is sharing files via a <b>network file system</b>. The + one usually used is called the Network File System, or NFS, + developed by Sun. +<A NAME="244"> </A> +<A NAME="245"> </A> +<A NAME="292"> </A> +<P> + With a network file system any file operations done by a program + on one machine are sent over the network to another computer. + This fools the program to think that all the files on the other + computer are actually on the computer the program is running on. + This makes information sharing extremely simple, since it requires + no modifications to programs. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node17.html b/sag-0.6.1-www/Invisible/sag-0.6/node17.html new file mode 100644 index 0000000..fb2ffd3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node17.html @@ -0,0 +1,54 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Mail</TITLE> +<META NAME="description" CONTENT="Mail"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html505" HREF="node18.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html503" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html497" HREF="node16.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html507" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html508" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html506" HREF="node18.html">Printing</A> +<B>Up:</B> <A NAME="tex2html504" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html498" HREF="node16.html">Network file systems</A> +<BR> <P> +<H2><A NAME="SECTION00339000000000000000">Mail</A></H2> +<P> + Electronic mail is usually the most important method for + communicating via computer. An electronic letter is stored + in a file using a special format, and special mail programs + are used to send and read the letters. +<A NAME="248"> </A> +<A NAME="293"> </A> +<A NAME="294"> </A> +<A NAME="251"> </A> +<A NAME="295"> </A> +<P> + Each user has an <b>incoming mailbox</b> (a file in the + special format), where all new mail + is stored. When someone sends mail, the mail program + locates the receiver's mailbox and appends the letter to the + mailbox file. If the receiver's mailbox is in another + machine, the letter is sent to the other machine, which delivers + it to the mailbox as it best sees fit. +<A NAME="254"> </A> +<A NAME="255"> </A> +<P> + The mail system consists of many programs. The delivery of mail + to local or remote mailboxes is done by one program (the + <b>mail transfer agent</b> or <b>MTA</b>, e.g., + <tt>sendmail</tt><A NAME="387"> </A> or <tt>smail</tt><A NAME="389"> </A>), while the programs users use + are many and varied (<b>mail user agent</b> or <b>MUA</b>, + e.g., <tt>pine</tt><A NAME="393"> </A> or <tt>elm</tt><A NAME="395"> </A>). The + mailboxes are usually stored in <tt>/var/spool/mail</tt><A NAME="397"> </A>. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node18.html b/sag-0.6.1-www/Invisible/sag-0.6/node18.html new file mode 100644 index 0000000..b2678fd --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node18.html @@ -0,0 +1,47 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Printing</TITLE> +<META NAME="description" CONTENT="Printing"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html515" HREF="node19.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html513" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html509" HREF="node17.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html517" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html518" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html516" HREF="node19.html">The filesystem layout</A> +<B>Up:</B> <A NAME="tex2html514" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html510" HREF="node17.html">Mail</A> +<BR> <P> +<H2><A NAME="SECTION003310000000000000000">Printing</A></H2> +<P> + Only one person can use a printer at one time, but it is + uneconomical not to share printers between users. The printer + is therefore managed by software that implements a <b>print + queue</b>: all print jobs are put into a queue and whenever the + printer is done with one job, the next one is sent to it + automatically. This relieves the users from organizing the + print queue and fighting over control of the printer.<A NAME="tex2html8" HREF="footnode.html#296"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<A NAME="268"> </A> +<A NAME="269"> </A> +<A NAME="270"> </A> +<P> + The print queue software also <b>spools</b> the printouts on + disk, i.e., the text is kept in a file while the job is in the + queue. This allows an application program to spit out the + print jobs quickly to the print queue software; the application + does not have to wait until the job is actually printed to + continue. This is really convenient, since it allows one to + print out one version, and not have to wait for it to be printed + before one can make a completely revised new version. +<A NAME="272"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node19.html b/sag-0.6.1-www/Invisible/sag-0.6/node19.html new file mode 100644 index 0000000..1535583 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node19.html @@ -0,0 +1,43 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The filesystem layout</TITLE> +<META NAME="description" CONTENT="The filesystem layout"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html525" HREF="node20.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html523" HREF="node5.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html519" HREF="node18.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html527" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html528" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html526" HREF="node20.html">Overview of the Directory </A> +<B>Up:</B> <A NAME="tex2html524" HREF="node5.html">Overview of a Linux </A> +<B> Previous:</B> <A NAME="tex2html520" HREF="node18.html">Printing</A> +<BR> <P> +<H1><A NAME="SECTION00340000000000000000">The filesystem layout</A></H1> +<P> + The filesystem is divided into many parts; usually along + the lines of a root filesystem with <tt>/bin</tt><A NAME="401"> </A>, <tt>/lib</tt><A NAME="403"> </A>, + <tt>/etc</tt><A NAME="405"> </A>, <tt>/dev</tt><A NAME="407"> </A>, and a few others; a <tt>/usr</tt><A NAME="409"> </A> filesystem + with programs and unchanging data; a <tt>/var</tt><A NAME="411"> </A> filesystem with + changing data (such as log files); and a <tt>/home</tt><A NAME="413"> </A> filesystem + for everyone's personal files. Depending on the hardware + configuration and the decisions of the system administrator, + the division can be different; it can even be all in one + filesystem. +<P> + Chapter <A HREF="node20.html#chapwalkabout">3</A> describes the filesystem layout + in some detail; the Linux Filesystem Standard covers it + in somewhat more detail. +<A NAME="282"> </A> +<A NAME="297"> </A> +<A NAME="298"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node2.html b/sag-0.6.1-www/Invisible/sag-0.6/node2.html new file mode 100644 index 0000000..1b9a53e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node2.html @@ -0,0 +1,168 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Introduction</TITLE> +<META NAME="description" CONTENT="Introduction"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html303" HREF="node3.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html301" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html295" HREF="node1.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html305" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html306" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html304" HREF="node3.html">Typographical conventions</A> +<B>Up:</B> <A NAME="tex2html302" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html296" HREF="node1.html">Contents</A> +<BR> <P> +<H1><A NAME="SECTION00200000000000000000">Introduction</A></H1> +<P> + <P> +<I> + In the beginning, the file was without form, and void; and <BR> + emptiness was upon the face of the bits. And the Fingers of <BR> + the Author moved upon the face of the keyboard. And the Author <BR> + said, Let there be words, and there were words. <BR> + </I><P> +<P> + This manual, the Linux System Administrators' + Guide, describes the system administration aspects of + using Linux. It is intended for people who know next + to nothing about system administration (as in ``what + is it?''), but who have already mastered at least the + basics of normal usage. This manual also doesn't tell + you how to install Linux; that is described in the + Installation and Getting Started document. See below + for more information about Linux manuals. +<P> + System administration is all the things that one has + to do to keep a computer system in a useable shape. + It includes things like backing up files (and restoring + them if necessary), installing new programs, creating + accounts for users (and deleting them when no longer + needed), making certain that the filesystem is not + corrupted, and so on. If a computer were, say, a house, + system administration would be called maintenance, + and would include cleaning, fixing broken windows, + and other such things. System administration is + not called maintenance, because that would be too + simple.<A NAME="tex2html1" HREF="footnode.html#79"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> + The structure of this manual is such that many of the chapters + should be usable independently, so that if you need + information about, say, backups, you can read just that + chapter.<A NAME="tex2html2" HREF="footnode.html#74"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> + This hopefully makes the book easier to use as a + reference manual, and makes it possible to read just a small + part when needed, instead of having to read everything. + However, this manual is first and foremost a + tutorial, and a reference manual only as a lucky coincidence. +<P> + This manual is not intended to be used completely by itself. + Plenty of the rest of the Linux documentation is also + important for system administrators. After all, a system + administrator is just a user with special privileges and + duties. A very important resource are the manual pages, which + should always be consulted when a command is not familiar. +<P> + While this manual is targeted at Linux, a general principle + has been that it should be useful with other UNIX based + operating systems as well. Unfortunately, since there is so + much variance between different versions of UNIX in + general, and in system administration in particular, there is + little hope to cover all variants. Even covering all + possibilities for Linux is difficult, due to the nature of + its development. +<P> + There is no one official Linux distribution, so different + people have different setups, and many people have + a setup they have built up themselves. This book is + not targeted at any one distribution, even though I + use the Debian GNU/Linux system almost exclusively. + When possible, I have tried to point out differences, + and explain several alternatives. +<P> + I have tried to describe how things work, rather + than just listing ``five easy steps'' for each task. + This means that there is much information here that is + not necessary for everyone, but those parts are marked + as such and can be skipped if you use a preconfigured + system. Reading everything will, naturally, increase + your understanding of the system and should make using + and administering it more pleasant. +<P> + +<P> + Like all other Linux related development, the + work was done on a volunteer basis: I did it because I + thought it might be fun and because I felt it should be + done. However, like all volunteer work, there is a limit to + how much effort I have been able to spend, and + also on how much knowledge and experience I have. This means + that the manual is not necessarily as good as it would be if a + wizard had been paid handsomely to write it and had spent a + few years to perfect it. I think, of course, that it is + pretty nice, but be warned. +<P> + One particular point where I have cut corners + is that I have not covered very thoroughly many + things that are already well documented in other freely + available manuals. This applies especially to program + specific documentation, such as all the details of using + <tt>mkfs)</tt><A NAME="81"> </A>. I only describe the purpose of the program, + and as much of its usage as is necessary for the purposes of + this manual. For further information, I refer the gentle + reader to these other manuals. Usually, all of the referred + to documentation is part of the full Linux documentation + set. +<P> + While I have tried to make this manual as good as possible, + I would really like to hear from you if you have any ideas on + how to make it better. Bad language, factual errors, ideas + for new areas to cover, rewritten sections, information about + how various UNIX versions do things, I am interested in + all of it. + My contact information is available via the World Wide + Web at <tt>http://www.iki.fi/liw/mail-to-lasu.html</tt>. + You need to read this web page to bypass my junkmail filters. +<P> + Many people have helped me with this book, directly or indirectly. + I would like to especially thank Matt Welsh for inspiration and + LDP leadership, Andy Oram for + getting me to work again with much-valued feedback, Olaf Kirch + for showing me that it can be done, and Adam Richter at Yggdrasil + and others for showing me that other people can find it interesting + as well. +<P> + Stephen Tweedie, H. Peter Anvin, Rémy Card, Theodore + Ts'o, and Stephen Tweedie have let me borrow their + work<A NAME="tex2html3" HREF="footnode.html#78"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> (and thus make the book look thicker and much + more impressive). I am most grateful for this, and + very apologetic for the earlier versions that sometimes + lacked proper attribution. +<P> + In addition, I would like to thank Mark Komarinski for sending his + material in 1993 and the many system administration columns + in Linux Journal. They are quite informative and inspirational. +<P> + Many useful comments have been sent by a large number + of people. My miniature black hole of an archive + doesn't let me find all their names, but some of them + are, in alphabetical order: Paul Caprioli, Ales Cepek, + Marie-France Declerfayt, Dave Dobson, Olaf Flebbe, Helmut + Geyer, Larry Greenfield and his father, Stephen Harris, + Jyrki Havia, Jim Haynes, York Lam, Timothy Andrew Lister, + Jim Lynch, Michael J. Micek, Jacob Navia, Dan Poirier, + Daniel Quinlan, Jouni K Seppänen, Philippe Steindl, + G.B. Stotte. My apologies to anyone I have forgotten. +<P> +<HR><A NAME="tex2html303" HREF="node3.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html301" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html295" HREF="node1.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html305" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html306" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html304" HREF="node3.html">Typographical conventions</A> +<B>Up:</B> <A NAME="tex2html302" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html296" HREF="node1.html">Contents</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node20.html b/sag-0.6.1-www/Invisible/sag-0.6/node20.html new file mode 100644 index 0000000..f876658 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node20.html @@ -0,0 +1,55 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Overview of the Directory Tree</TITLE> +<META NAME="description" CONTENT="Overview of the Directory Tree"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html537" HREF="node21.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html535" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html529" HREF="node19.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html539" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html540" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html538" HREF="node21.html">Background</A> +<B>Up:</B> <A NAME="tex2html536" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html530" HREF="node19.html">The filesystem layout</A> +<BR> <P> +<H1><A NAME="SECTION00400000000000000000">Overview of the Directory Tree</A></H1> + <A NAME="chapwalkabout"> </A> +<P> + <P> +<I> + Two days later, there was Pooh, <BR> + sitting on his branch, dangling his <BR> + legs, and there, beside him, were four <BR> + pots of honey...<BR> + (A.A. Milne) <BR> + </I><P> +<P> + This chapter describes the important parts of a standard + Linux directory tree, based on the FSSTND filesystem + standard. It outlines the normal way of breaking the directory + tree into separate filesystems with different purposes and gives + the motivation behind this particular split. Some alternative + ways of splitting are also described. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html541" HREF="node21.html#SECTION00410000000000000000">Background</A> +<LI> <A NAME="tex2html542" HREF="node22.html#SECTION00420000000000000000">The root filesystem</A> +<UL> +<LI> <A NAME="tex2html543" HREF="node23.html#SECTION00421000000000000000">The <tt>/etc</tt> directory</A> +<LI> <A NAME="tex2html544" HREF="node24.html#SECTION00422000000000000000">The <tt>/dev</tt> directory</A> +</UL> +<LI> <A NAME="tex2html545" HREF="node25.html#SECTION00430000000000000000">The <tt>/usr</tt> filesystem</A> +<LI> <A NAME="tex2html546" HREF="node26.html#SECTION00440000000000000000">The <tt>/var</tt> filesystem</A> +<LI> <A NAME="tex2html547" HREF="node27.html#SECTION00450000000000000000">The <tt>/proc</tt> filesystem</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node21.html b/sag-0.6.1-www/Invisible/sag-0.6/node21.html new file mode 100644 index 0000000..c0e68cf --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node21.html @@ -0,0 +1,138 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Background</TITLE> +<META NAME="description" CONTENT="Background"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html556" HREF="node22.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html554" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html548" HREF="node20.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html558" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html559" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html557" HREF="node22.html">The root filesystem</A> +<B>Up:</B> <A NAME="tex2html555" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html549" HREF="node20.html">Overview of the Directory </A> +<BR> <P> +<H1><A NAME="SECTION00410000000000000000">Background</A></H1> +<P> + This chapter is loosely based on the Linux filesystem + standard, FSSTND, version 1.2 (see the bibliography, + [<A HREF="node113.html#fsstnd-1.2">Qui95</A>]), which attempts + to set a standard for how the directory tree in a Linux system + is organized. Such a standard has the advantage that + it will be easier to + write or port software for Linux, and to administer Linux + machines, since everything will be in their usual places. There + is no authority behind the standard that forces anyone to comply + with it, but it has got the support of most, if not all, Linux + distributions. It is not a good idea to break with the FSSTND + without very compelling reasons. The FSSTND attempts to follow + Unix tradition and current trends, making Linux systems familiar + to those with experience with other Unix systems, and vice + versa. +<P> + This chapter is not as detailed as the FSSTND. A system + administrator should also read the FSSTND for a complete + understanding. +<P> + This chapter does not explain all files in detail. The intention + is not to describe every file, but to give an overview of the + system from a filesystem point of view. Further information on + each file is available elsewhere in this manual or the manual + pages. +<P> + The full directory tree is intended to be breakable into smaller + parts, each on its own disk or partition, to accomodate to disk + size limits and to ease backup and other system administration. + The major parts are the root, <tt>/usr</tt><A NAME="638"> </A>, <tt>/var</tt><A NAME="640"> </A>, and + <tt>/home</tt><A NAME="642"> </A> filesystems (see figure <A HREF="node21.html#figfstree">3.1</A>). + Each part has a different purpose. + The directory tree has been designed so that it works well in a + network of Linux machines which may share some parts of the + filesystems over a read-only device (e.g., a CD-ROM), or + over the network with NFS. +<P> + <P><A NAME="428"> </A><A NAME="figfstree"> </A><IMG WIDTH=438 HEIGHT=220 ALIGN=BOTTOM ALT="figure424" SRC="img3.gif"><BR> +<STRONG>Figure 3.1:</STRONG> Parts of a Unix directory tree. + Dashed lines indicate partition limits.<BR> +<P> +<P> + The roles of the different parts of the directory tree are + described below. + <UL> +<LI> + The root filesystem is specific for each machine (it is generally + stored on a local disk, although it could be a ramdisk or network + drive as well) and contains the + files that are necessary for booting the system up, and to bring + it up to such a state that the other filesystems may be mounted. + The contents of the root filesystem will therefore be sufficient + for the single user state. It will also contain tools for + fixing a broken system, and for recovering lost files from backups. +<LI> + The <tt>/usr</tt><A NAME="644"> </A> filesystem contains all commands, libraries, manual + pages, and other unchanging files needed during normal operation. + No files in <tt>/usr</tt><A NAME="646"> </A> should be specific for any given machine, + nor should they be modified during normal use. This allows the + files to be shared over the network, which can be cost-effective + since it saves disk space (there can easily be hundreds of + megabytes in <tt>/usr</tt><A NAME="648"> </A>), and can make administration easier + (only the master <tt>/usr</tt><A NAME="650"> </A> needs to be changed when updating + an application, not each machine separately). Even if the + filesystem is on a local disk, it could be mounted read-only, + to lessen the chance of filesystem corruption during a crash. +<LI> + The <tt>/var</tt><A NAME="652"> </A> filesystem contains files that change, such as + spool directories (for mail, news, printers, etc), log files, + formatted manual pages, and temporary files. Traditionally + everything in <tt>/var</tt><A NAME="654"> </A> has been somewhere below <tt>/usr</tt><A NAME="656"> </A>, + but that made it impossible to mount <tt>/usr</tt><A NAME="658"> </A> read-only. +<LI> + The <tt>/home</tt><A NAME="660"> </A> filesystem contains the users' home directories, + i.e., all the real data on the system. Separating home directories + to their own directory tree or filesystem makes backups easier; + the other parts often do not have to be backed up, or at least not + as often (they seldom change). A big <tt>/home</tt><A NAME="662"> </A> might have to + be broken on several filesystems, which requires adding an extra + naming level below <tt>/home</tt><A NAME="664"> </A>, e.g., <tt>/home/students</tt><A NAME="666"> </A> and + <tt>/home/staff</tt><A NAME="668"> </A>. + </UL> + Although the different parts have been called filesystems above, + there is no requirement that they actually be on separate filesystems. + They could easily be kept in a single one if the system is + a small single-user system and the user wants to keep things simple. + The directory tree might also be divided into filesystems differently, + depending on how large the disks are, and how space is allocated + for various purposes. + The important part, though, is that all the standard <em>names</em> + work; even if, say, <tt>/var</tt><A NAME="670"> </A> and <tt>/usr</tt><A NAME="672"> </A> are actually on the + same partition, the names <tt>/usr/lib/libc.a</tt><A NAME="674"> </A> and + <tt>/var/adm/messages</tt><A NAME="676"> </A> must work, for example by moving files + below <tt>/var</tt><A NAME="678"> </A> into <tt>/usr/var</tt><A NAME="680"> </A>, and making <tt>/var</tt><A NAME="682"> </A> a symlink + to <tt>/usr/var</tt><A NAME="684"> </A>. +<P> + The Unix filesystem structure groups files according to purpose, + i.e., all commands are in one place, all data files in another, + documentation in a third, and so on. An alternative would be to + group files files according to the program they belong to, i.e., + all Emacs files would be in one directory, all TeX in another, + and so on. The problem with the latter approach is that it + makes it difficult to share files (the program directory often + contains both static and shareable and changing and + non-shareable files), and sometimes to even find the files + (e.g., manual pages in a huge number of places, and making the + manual page programs find all of them is a maintenance + nightmare). +<P> +<HR><A NAME="tex2html556" HREF="node22.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html554" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html548" HREF="node20.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html558" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html559" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html557" HREF="node22.html">The root filesystem</A> +<B>Up:</B> <A NAME="tex2html555" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html549" HREF="node20.html">Overview of the Directory </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node22.html b/sag-0.6.1-www/Invisible/sag-0.6/node22.html new file mode 100644 index 0000000..3c8d1fd --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node22.html @@ -0,0 +1,98 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The root filesystem</TITLE> +<META NAME="description" CONTENT="The root filesystem"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html568" HREF="node23.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html566" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html560" HREF="node21.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html570" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html571" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html569" HREF="node23.html">The /etc directory</A> +<B>Up:</B> <A NAME="tex2html567" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html561" HREF="node21.html">Background</A> +<BR> <P> +<H1><A NAME="SECTION00420000000000000000">The root filesystem</A></H1> +<P> + The root filesystem should generally be small, since it contains + very critical files and a small, infrequently modified + filesystem has a better chance of not getting corrupted. A + corrupted root filesystem will generally mean that the system + becomes unbootable except with special measures (e.g., from a + floppy), so you don't want to risk it. +<P> + The root directory generally doesn't contain any files, except + perhaps the standard boot image for the system, usually called + <tt>/vmlinuz</tt><A NAME="686"> </A>. All other files are in subdirectories in the + root filesystems: + <DL ><DT><STRONG><tt>/bin</tt><A NAME="688"> </A></STRONG> +<DD> + Commands needed during bootup that might be used + by normal users (probably after bootup). + <DT><STRONG><tt>/sbin</tt><A NAME="690"> </A></STRONG> +<DD> + Like <tt>/bin</tt><A NAME="692"> </A>, but the commands are not intended + for normal users, although they may use them if necessary + and allowed. + <DT><STRONG><tt>/etc</tt><A NAME="694"> </A></STRONG> +<DD> + Configuration files specific to the machine. + <DT><STRONG><tt>/root</tt><A NAME="696"> </A></STRONG> +<DD> + The home directory for user <tt>root</tt>. + <DT><STRONG><tt>/lib</tt><A NAME="698"> </A></STRONG> +<DD> + Shared libraries needed by the programs on the root + filesystem. + <DT><STRONG><tt>/lib/modules</tt><A NAME="700"> </A></STRONG> +<DD> + Loadable kernel modules, especially those that are needed + to boot the system when recovering from disasters (e.g., + network and filesystem drivers). + <DT><STRONG><tt>/dev</tt><A NAME="702"> </A></STRONG> +<DD> + Device files. + <DT><STRONG><tt>/tmp</tt><A NAME="704"> </A></STRONG> +<DD> + Temporary files. Programs running after bootup should + use <tt>/var/tmp</tt><A NAME="706"> </A>, not <tt>/tmp</tt><A NAME="708"> </A>, since the former + is probably on a disk with more space. + <DT><STRONG><tt>/boot</tt><A NAME="710"> </A></STRONG> +<DD> + Files used by the bootstrap loader, e.g., LILO. Kernel + images are often kept here instead of in the root + directory. If there are many kernel images, the directory + can easily grow rather big, and it might be better to + keep it in a separate filesystem. Another reason would + be to make sure the kernel images are within the first + 1024 cylinders of an IDE disk. + <DT><STRONG><tt>/mnt</tt><A NAME="712"> </A></STRONG> +<DD> + Mount point for temporary mounts by the system administrator. + Programs aren't supposed to mount on <tt>/mnt</tt><A NAME="714"> </A> automatically. + <tt>/mnt</tt><A NAME="716"> </A> might be divided into subdirectories (e.g., + <tt>/mnt/dosa</tt><A NAME="718"> </A> might be the floppy drive using an MS-DOS + filesystem, and <tt>/mnt/exta</tt><A NAME="720"> </A> might be the same with an ext2 + filesystem). + <DT><STRONG><tt>/proc</tt><A NAME="722"> </A>, <tt>/usr</tt><A NAME="724"> </A>, <tt>/var</tt><A NAME="726"> </A>, <tt>/home</tt><A NAME="728"> </A></STRONG> +<DD> + Mount points for the other filesystems. +<P> +</DL><BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html572" HREF="node23.html#SECTION00421000000000000000">The <tt>/etc</tt> directory</A> +<LI> <A NAME="tex2html573" HREF="node24.html#SECTION00422000000000000000">The <tt>/dev</tt> directory</A> +</UL> +<HR><A NAME="tex2html568" HREF="node23.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html566" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html560" HREF="node21.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html570" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html571" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html569" HREF="node23.html">The /etc directory</A> +<B>Up:</B> <A NAME="tex2html567" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html561" HREF="node21.html">Background</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node23.html b/sag-0.6.1-www/Invisible/sag-0.6/node23.html new file mode 100644 index 0000000..609e3c3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node23.html @@ -0,0 +1,153 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The /etc directory</TITLE> +<META NAME="description" CONTENT="The /etc directory"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html582" HREF="node24.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html580" HREF="node22.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html574" HREF="node22.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html584" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html585" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html583" HREF="node24.html">The /dev directory</A> +<B>Up:</B> <A NAME="tex2html581" HREF="node22.html">The root filesystem</A> +<B> Previous:</B> <A NAME="tex2html575" HREF="node22.html">The root filesystem</A> +<BR> <P> +<A NAME="730"> </A><H2><A NAME="SECTION00421000000000000000">The <tt>/etc</tt> directory</A></H2> +<P> + The <tt>/etc</tt><A NAME="732"> </A> directory contains a lot of files. Some of them + are described below. For others, you should determine which + program they belong to and read the manual page for that program. + Many networking configuration files are in <tt>/etc</tt><A NAME="734"> </A> as well, + and are described in the Networking Administrators' Guide. + <DL ><DT><STRONG><tt>/etc/rc</tt><A NAME="736"> </A> or <tt>/etc/rc.d</tt><A NAME="738"> </A> or <tt>/etc/rc?.d</tt><A NAME="740"> </A></STRONG> +<DD> + Scripts or directories of scripts to run at startup or when + changing the run level. + See the chapter on <tt>init</tt><A NAME="742"> </A> for further information. +<P> + <DT><STRONG><tt>/etc/passwd</tt><A NAME="744"> </A></STRONG> +<DD> + The user database, with fields giving the username, real name, + home directory, encrypted password, and other information about + each user. The format is documented in the <em>passwd</em><A NAME="746"> </A> + manual page. +<P> + <DT><STRONG><tt>/etc/fdprm</tt><A NAME="748"> </A></STRONG> +<DD> + Floppy disk parameter table. Describes what different floppy + disk formats look like. Used by <tt>setfdprm</tt><A NAME="750"> </A>. See + the <em>setfdprm</em><A NAME="752"> </A> manual page for more information. +<P> + <DT><STRONG><tt>/etc/fstab</tt><A NAME="754"> </A></STRONG> +<DD> + Lists the filesystems mounted automatically at startup + by the <tt>mount -a</tt> command (in <tt>/etc/rc</tt><A NAME="756"> </A> or equivalent + startup file). Under Linux, also contains information about swap + areas used automatically by <tt>swapon -a</tt>. + See section <A HREF="node46.html#subsecmount">4.8.5</A> and the + <em>mount</em><A NAME="758"> </A> manual page for more information. +<P> + <DT><STRONG><tt>/etc/group</tt><A NAME="760"> </A></STRONG> +<DD> + Similar to <tt>/etc/passwd</tt><A NAME="762"> </A>, but describes + groups instead of users. See the <em>group</em><A NAME="764"> </A> manual page for + more information. +<P> + <DT><STRONG><tt>/etc/inittab</tt><A NAME="766"> </A></STRONG> +<DD> + Configuration file for <tt>init</tt><A NAME="768"> </A>. +<P> + <DT><STRONG><tt>/etc/issue</tt><A NAME="770"> </A></STRONG> +<DD> + Output by <tt>getty</tt><A NAME="772"> </A> before the login prompt. Usually contains + a short description or welcoming message to the system. The + contents are up to the system administrator. +<P> + <DT><STRONG><tt>/etc/magic</tt><A NAME="774"> </A></STRONG> +<DD> + The configuration file for <tt>file</tt><A NAME="776"> </A>. Contains + the descriptions of various file formats based on which + <tt>file</tt><A NAME="778"> </A> guesses the type of the file. See the <em>magic</em><A NAME="780"> </A> + and <em>file</em><A NAME="782"> </A> manual pages for more information. +<P> + <DT><STRONG><tt>/etc/motd</tt><A NAME="784"> </A></STRONG> +<DD> + The <b>message of the day</b>, automatically output after + a successful login. Contents are up to the system administrator. + Often used for getting information to every user, such as + warnings about planned downtimes. +<P> + <DT><STRONG><tt>/etc/mtab</tt><A NAME="787"> </A></STRONG> +<DD> + List of currently mounted filesystems. Initially set up by + the scripts, and updated automatically by the <tt>mount</tt><A NAME="789"> </A> command. + Used when a list of mounted filesystems is needed, e.g., by + the <tt>df</tt><A NAME="791"> </A> command. +<P> + <DT><STRONG><tt>/etc/shadow</tt><A NAME="793"> </A></STRONG> +<DD> + Shadow password file on systems with shadow password software + installed. Shadow passwords move the encrypted password from + <tt>/etc/passwd</tt><A NAME="795"> </A> into <tt>/etc/shadow</tt><A NAME="797"> </A>; the latter is not + readable by anyone except <tt>root</tt>. This makes it harder + to crack passwords. +<P> + <DT><STRONG><tt>/etc/login.defs</tt><A NAME="799"> </A></STRONG> +<DD> + Configuration file for the <tt>login</tt><A NAME="801"> </A> command. +<P> + <DT><STRONG><tt>/etc/printcap</tt><A NAME="803"> </A></STRONG> +<DD> + Like <tt>/etc/termcap</tt><A NAME="805"> </A>, but intended for printers. Different + syntax. +<P> + <DT><STRONG><tt>/etc/profile</tt><A NAME="807"> </A>, <tt>/etc/csh.login</tt><A NAME="809"> </A>, <tt>/etc/csh.cshrc</tt><A NAME="811"> </A></STRONG> +<DD> + Files executed at login or startup time by the Bourne or + C shells. These allow the system administrator to set global + defaults for all users. + See the manual pages for the respective shells. +<P> + <DT><STRONG><tt>/etc/securetty</tt><A NAME="813"> </A></STRONG> +<DD> + Identifies secure terminals, i.e., the terminals from which + <tt>root</tt> is allowed to log in. + Typically only the virtual + consoles are listed, so that it becomes impossible (or at + least harder) to gain superuser privileges by breaking into a + system over a modem or a network. +<P> + <DT><STRONG><tt>/etc/shells</tt><A NAME="815"> </A></STRONG> +<DD> + Lists trusted shells. The <tt>chsh</tt><A NAME="817"> </A> command allows users + to change their login shell only to shells listed in this + file. <tt>ftpd</tt><A NAME="819"> </A>, the server process that provides FTP + services for a machine, will check that the user's shell is + listed in <tt>/etc/shells</tt><A NAME="821"> </A> and will not let people log in + unles the shell is listed there. +<P> + <DT><STRONG><tt>/etc/termcap</tt><A NAME="823"> </A></STRONG> +<DD> + The terminal capability database. Describes by what ``escape + sequences'' various terminals can be controlled. Programs are + written so that instead of directly outputting an escape + sequence that only works on a particular brand of terminal, + they look up the correct sequence to do whatever it is they + want to do in <tt>/etc/termcap</tt><A NAME="825"> </A>. As a result most programs + work with most kinds of terminals. See the + <em>termcap</em><A NAME="827"> </A>, <em>curs_termcap</em><A NAME="829"> </A>, and <em>terminfo</em><A NAME="831"> </A> + manual pages for more information. +<P> +</DL><HR><A NAME="tex2html582" HREF="node24.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html580" HREF="node22.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html574" HREF="node22.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html584" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html585" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html583" HREF="node24.html">The /dev directory</A> +<B>Up:</B> <A NAME="tex2html581" HREF="node22.html">The root filesystem</A> +<B> Previous:</B> <A NAME="tex2html575" HREF="node22.html">The root filesystem</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node24.html b/sag-0.6.1-www/Invisible/sag-0.6/node24.html new file mode 100644 index 0000000..8f9f69f --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node24.html @@ -0,0 +1,36 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The /dev directory</TITLE> +<META NAME="description" CONTENT="The /dev directory"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html592" HREF="node25.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html590" HREF="node22.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html586" HREF="node23.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html594" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html595" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html593" HREF="node25.html">The /usr filesystem</A> +<B>Up:</B> <A NAME="tex2html591" HREF="node22.html">The root filesystem</A> +<B> Previous:</B> <A NAME="tex2html587" HREF="node23.html">The /etc directory</A> +<BR> <P> +<A NAME="833"> </A><H2><A NAME="SECTION00422000000000000000">The <tt>/dev</tt> directory</A></H2> +<P> + The <tt>/dev</tt><A NAME="835"> </A> directory contains the special device files for + all the devices. The device files are named using special + conventions; these are described in the Device list (see [<A HREF="node113.html#device-list">Anv</A>]). + The device files are created during installation, and later with + the <tt>/dev/MAKEDEV</tt><A NAME="837"> </A> script. The <tt>/dev/MAKEDEV.local</tt><A NAME="839"> </A> is + a script written by the system administrator that creates local-only + device files or links (i.e., those that are not part of the + standard <tt>MAKEDEV</tt><A NAME="841"> </A>, such as device files for some non-standard + device driver). +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node25.html b/sag-0.6.1-www/Invisible/sag-0.6/node25.html new file mode 100644 index 0000000..aedc858 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node25.html @@ -0,0 +1,73 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The /usr filesystem</TITLE> +<META NAME="description" CONTENT="The /usr filesystem"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html604" HREF="node26.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html602" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html596" HREF="node24.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html606" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html607" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html605" HREF="node26.html">The /var filesystem</A> +<B>Up:</B> <A NAME="tex2html603" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html597" HREF="node24.html">The /dev directory</A> +<BR> <P> +<A NAME="843"> </A><H1><A NAME="SECTION00430000000000000000">The <tt>/usr</tt> filesystem</A></H1> +<P> + The <tt>/usr</tt><A NAME="845"> </A> filesystem is often large, since all programs + are installed there. All files in <tt>/usr</tt><A NAME="847"> </A> usually come from + a Linux distribution; locally installed programs and other + stuff goes below <tt>/usr/local</tt><A NAME="849"> </A>. This makes it possible to + update the system from a new version of the distribution, or even + a completely new distribution, without having to install all programs + again. + Some of the subdirectories of <tt>/usr</tt><A NAME="851"> </A> are listed below (some of + the less important directories have been dropped; see the FSSTND + for more information). + <DL ><DT><STRONG><tt>/usr/X11R6</tt><A NAME="853"> </A></STRONG> +<DD> + The X Window System, all files. To simplify the development + and installation of X, the X files have not been + integrated into the rest of the system. There is a + directory tree below <tt>/usr/X11R6</tt><A NAME="855"> </A> similar to that below + <tt>/usr</tt><A NAME="857"> </A> itself. + <DT><STRONG><tt>/usr/X386</tt><A NAME="859"> </A></STRONG> +<DD> + Similar to <tt>/usr/X11R6</tt><A NAME="861"> </A>, but for X11 Release 5. + <DT><STRONG><tt>/usr/bin</tt><A NAME="863"> </A></STRONG> +<DD> + Almost all user commands. Some commands are in + <tt>/bin</tt><A NAME="865"> </A> or in <tt>/usr/local/bin</tt><A NAME="867"> </A>. + <DT><STRONG><tt>/usr/sbin</tt><A NAME="869"> </A></STRONG> +<DD> + System administration commands that are not needed on + the root filesystem, e.g., most server programs. + <DT><STRONG><tt>/usr/man</tt><A NAME="871"> </A>, <tt>/usr/info</tt><A NAME="873"> </A>, <tt>/usr/doc</tt><A NAME="875"> </A></STRONG> +<DD> + Manual pages, GNU Info documents, and miscellaneous + other documentation files, respectively. + <DT><STRONG><tt>/usr/include</tt><A NAME="877"> </A></STRONG> +<DD> + Header files for the C programming language. This should + actually be below <tt>/usr/lib</tt><A NAME="879"> </A> for consistency, but + the tradition is overwhelmingly in support for this name. + <DT><STRONG><tt>/usr/lib</tt><A NAME="881"> </A></STRONG> +<DD> + Unchanging data files for programs and subsystems, including + some site-wide configuration files. The name <tt>lib</tt> + comes from library; originally libraries of programming + subroutines were stored in <tt>/usr/lib</tt><A NAME="883"> </A>. + <DT><STRONG><tt>/usr/local</tt><A NAME="885"> </A></STRONG> +<DD> + The place for locally installed software and other files. +<P> +</DL><BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node26.html b/sag-0.6.1-www/Invisible/sag-0.6/node26.html new file mode 100644 index 0000000..0a1508c --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node26.html @@ -0,0 +1,88 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The /var filesystem</TITLE> +<META NAME="description" CONTENT="The /var filesystem"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html616" HREF="node27.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html614" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html608" HREF="node25.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html618" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html619" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html617" HREF="node27.html">The /proc filesystem</A> +<B>Up:</B> <A NAME="tex2html615" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html609" HREF="node25.html">The /usr filesystem</A> +<BR> <P> +<A NAME="887"> </A><H1><A NAME="SECTION00440000000000000000">The <tt>/var</tt> filesystem</A></H1> +<P> + The <tt>/var</tt><A NAME="889"> </A> contains data that is changed when the system is + running normally. It is specific for each system, i.e., not + shared over the network with other computers. + <DL ><DT><STRONG><tt>/var/catman</tt><A NAME="891"> </A></STRONG> +<DD> + A cache for man pages that are formatted on demand. + The source for manual pages is usually stored in + <tt>/usr/man/man*</tt><A NAME="893"> </A>; some manual pages might come with + a pre-formatted version, which is stored in <tt>/usr/man/cat*</tt><A NAME="895"> </A>. + Other manual pages need to be formatted when they are + first viewed; the formatted version is then stored + in <tt>/var/man</tt><A NAME="897"> </A> so that the next person to view the + same page won't have to wait for it to be formatted. + (<tt>/var/catman</tt><A NAME="899"> </A> is often cleaned in the same way + temporary directories are cleaned.) + <DT><STRONG><tt>/var/lib</tt><A NAME="901"> </A></STRONG> +<DD> + Files that change while the system is running normally. + <DT><STRONG><tt>/var/local</tt><A NAME="903"> </A></STRONG> +<DD> + Variable data for programs that are installed in + <tt>/usr/local</tt><A NAME="905"> </A> (i.e., programs that have been installed + by the system administrator). Note that even locally + installed programs should use the other <tt>/var</tt><A NAME="907"> </A> directories + if they are appropriate, e.g., <tt>/var/lock</tt><A NAME="909"> </A>. + <DT><STRONG><tt>/var/lock</tt><A NAME="911"> </A></STRONG> +<DD> + Lock files. Many programs follow a convention to + create a lock file in <tt>/var/lock</tt><A NAME="913"> </A> to indicate that + they are using a particular device or file. Other + programs will notice the lock file and won't attempt + to use the device or file. + <DT><STRONG><tt>/var/log</tt><A NAME="915"> </A></STRONG> +<DD> + Log files from various programs, especially <tt>login</tt><A NAME="917"> </A> + (<tt>/var/log/wtmp</tt><A NAME="919"> </A>, which logs all logins and logouts + into the system) and <tt>syslog</tt><A NAME="921"> </A> (<tt>/var/log/messages</tt><A NAME="923"> </A>, + where all kernel and system program message are usually + stored). Files in <tt>/var/log</tt><A NAME="925"> </A> can often grow indefinitely, + and may require cleaning at regular intervals. + <DT><STRONG><tt>/var/run</tt><A NAME="927"> </A></STRONG> +<DD> + Files that contain information about the system that is + valid until the system is next booted. For example, + <tt>/var/run/utmp</tt><A NAME="929"> </A> contains information about people + currently logged in. + <DT><STRONG><tt>/var/spool</tt><A NAME="931"> </A></STRONG> +<DD> + Directories for mail, news, printer queues, and other + queued work. Each different spool has its own + subdirectory below <tt>/var/spool</tt><A NAME="933"> </A>, e.g., the mailboxes + of the users are in <tt>/var/spool/mail</tt><A NAME="935"> </A>. + <DT><STRONG><tt>/var/tmp</tt><A NAME="937"> </A></STRONG> +<DD> + Temporary files that are large or that need to exist + for a longer time than what is allowed for <tt>/tmp</tt><A NAME="939"> </A>. + (Although the system administrator might not allow + very old files in <tt>/var/tmp</tt><A NAME="941"> </A> either.) +<P> +</DL><HR><A NAME="tex2html616" HREF="node27.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html614" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html608" HREF="node25.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html618" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html619" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html617" HREF="node27.html">The /proc filesystem</A> +<B>Up:</B> <A NAME="tex2html615" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html609" HREF="node25.html">The /usr filesystem</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node27.html b/sag-0.6.1-www/Invisible/sag-0.6/node27.html new file mode 100644 index 0000000..a0c8c03 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node27.html @@ -0,0 +1,118 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The /proc filesystem</TITLE> +<META NAME="description" CONTENT="The /proc filesystem"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html626" HREF="node28.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html624" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html620" HREF="node26.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html628" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html629" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html627" HREF="node28.html">Using Disks and Other </A> +<B>Up:</B> <A NAME="tex2html625" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html621" HREF="node26.html">The /var filesystem</A> +<BR> <P> +<A NAME="943"> </A><H1><A NAME="SECTION00450000000000000000">The <tt>/proc</tt> filesystem</A></H1> +<P> + The <tt>/proc</tt><A NAME="945"> </A> filesystem contains a illusionary filesystem. + It does not exist on a disk. Instead, the kernel creates it + in memory. It is used to provide information about the + system (originally about processes, hence the name). Some + of the more important files and directories are explained + below. The <tt>/proc</tt><A NAME="947"> </A> filesystem is described in more detail + in the <em>proc</em><A NAME="949"> </A> manual page. + <DL ><DT><STRONG><tt>/proc/1</tt><A NAME="951"> </A></STRONG> +<DD> + A directory with information about process number 1. + Each process has a directory below <tt>/proc</tt><A NAME="953"> </A> with + the name being its process identification number. + <DT><STRONG><tt>/proc/cpuinfo</tt><A NAME="955"> </A></STRONG> +<DD> + Information about the processor, such as its type, make, + model, and perfomance. + <DT><STRONG><tt>/proc/devices</tt><A NAME="957"> </A></STRONG> +<DD> + List of device drivers configured into the currently + running kernel. + <DT><STRONG><tt>/proc/dma</tt><A NAME="959"> </A></STRONG> +<DD> + Shows which DMA channels are being used at the moment. + <DT><STRONG><tt>/proc/filesystems</tt><A NAME="961"> </A></STRONG> +<DD> + Filesystems configured into the kernel. + <DT><STRONG><tt>/proc/interrupts</tt><A NAME="963"> </A></STRONG> +<DD> + Shows which interrupts are in use, and how many of each + there have been. + <DT><STRONG><tt>/proc/ioports</tt><A NAME="965"> </A></STRONG> +<DD> + Which I/O ports are in use at the moment. + <DT><STRONG><tt>/proc/kcore</tt><A NAME="967"> </A></STRONG> +<DD> + An image of the physical memory of the system. This + is exactly the same size as your physical memory, but + does not really take up that much memory; it is generated + on the fly as programs access it. (Remember: unless you + copy it elsewhere, nothing under <tt>/proc</tt><A NAME="969"> </A> takes up + any disk space at all.) + <DT><STRONG><tt>/proc/kmsg</tt><A NAME="971"> </A></STRONG> +<DD> + Messages output by the kernel. These are also routed + to <tt>syslog</tt><A NAME="973"> </A>. + <DT><STRONG><tt>/proc/ksyms</tt><A NAME="975"> </A></STRONG> +<DD> + Symbol table for the kernel. + <DT><STRONG><tt>/proc/loadavg</tt><A NAME="977"> </A></STRONG> +<DD> + The `load average' of the system; three meaningless + indicators of how much work the system has to do at + the moment. + <DT><STRONG><tt>/proc/meminfo</tt><A NAME="979"> </A></STRONG> +<DD> + Information about memory usage, both physical and swap. + <DT><STRONG><tt>/proc/modules</tt><A NAME="981"> </A></STRONG> +<DD> + Which kernel modules are loaded at the moment. + <DT><STRONG><tt>/proc/net</tt><A NAME="983"> </A></STRONG> +<DD> + Status information about network protocols. + <DT><STRONG><tt>/proc/self</tt><A NAME="985"> </A></STRONG> +<DD> + A symbolic link to the process directory of the program + that is looking at <tt>/proc</tt><A NAME="987"> </A>. When two processes look + at <tt>/proc</tt><A NAME="989"> </A>, they get different links. This is mainly + a convenience to make it easier for programs to get + at their process directory. + <DT><STRONG><tt>/proc/stat</tt><A NAME="991"> </A></STRONG> +<DD> + Various statistics about the system, such as the number + of page faults since the system was booted. + <DT><STRONG><tt>/proc/uptime</tt><A NAME="993"> </A></STRONG> +<DD> + The time the system has been up. + <DT><STRONG><tt>/proc/version</tt><A NAME="995"> </A></STRONG> +<DD> + The kernel version. +<P> +</DL> + Note that while the above files tend to be easily readable text + files, they can sometimes be formatted in a way that is not + easily digestable. There are many commands that do little more + than read the above files and format them for easier understanding. + For example, the <tt>free</tt><A NAME="997"> </A> program reads <tt>/proc/meminfo</tt><A NAME="999"> </A> + and converts the amounts given in bytes to kilobytes (and adds + a little more information, as well). +<P> +<HR><A NAME="tex2html626" HREF="node28.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html624" HREF="node20.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html620" HREF="node26.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html628" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html629" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html627" HREF="node28.html">Using Disks and Other </A> +<B>Up:</B> <A NAME="tex2html625" HREF="node20.html">Overview of the Directory </A> +<B> Previous:</B> <A NAME="tex2html621" HREF="node26.html">The /var filesystem</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node28.html b/sag-0.6.1-www/Invisible/sag-0.6/node28.html new file mode 100644 index 0000000..d9eb402 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node28.html @@ -0,0 +1,117 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Using Disks and Other Storage Media</TITLE> +<META NAME="description" CONTENT="Using Disks and Other Storage Media"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html638" HREF="node29.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html636" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html630" HREF="node27.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html640" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html641" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html639" HREF="node29.html">Two kinds of devices</A> +<B>Up:</B> <A NAME="tex2html637" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html631" HREF="node27.html">The /proc filesystem</A> +<BR> <P> +<H1><A NAME="SECTION00500000000000000000">Using Disks and Other Storage Media</A></H1> +<P> + <P> +<I> + On a clear disk you can seek forever. <BR> + </I><P> +<P> + When you install or upgrade your system, you need to do a fair + amount of work on your disks. You have to make filesystems on + your disks so that files can be + stored on them and reserve space for the different parts of + your system. +<P> + This chapter explains all these initial activities. Usually, + once you get your system set up, you won't have to go through + the work again, except for using floppies. You'll need to come + back to this chapter if you add a new disk or want to fine-tune + your disk usage. +<P> + The basic tasks in administering disks are: + <UL> +<LI> + Format your disk. This does various things to prepare it for + use, such as checking for bad sectors. (Formatting is nowadays + not necessary for most hard disks.) +<LI> + Partition a hard disk, if you want to use it for several + activities that aren't supposed to interfere with one another. + One reason for partitioning is to store different operating + systems on the same disk. Another reason is to keep user + files separate from system files, which simplifies back-ups + and helps protect the system files from corruption. +<LI> + Make a filesystem (of a suitable type) on each disk or partition. + The disk means + nothing to Linux until you make a filesystem; then files can + be created and accessed on it. +<LI> + Mount different filesystems to form a single tree structure, either + automatically, or manually as needed. (Manually mounted filesystems + usually need to be unmounted manually as well.) +<P> + </UL> +<P> + Chapter <A HREF="node59.html#chapmem">5</A> contains information about virtual memory + and disk caching, of which you also need to be aware when using + disks. +<P> + This chapter explains what you need to know for hard disks, + floppies, CD-ROM's, and tape drives. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html642" HREF="node29.html#SECTION00510000000000000000">Two kinds of devices</A> +<LI> <A NAME="tex2html643" HREF="node30.html#SECTION00520000000000000000">Hard disks</A> +<LI> <A NAME="tex2html644" HREF="node31.html#SECTION00530000000000000000">Floppies</A> +<LI> <A NAME="tex2html645" HREF="node32.html#SECTION00540000000000000000">CD-ROM's</A> +<LI> <A NAME="tex2html646" HREF="node33.html#SECTION00550000000000000000">Tapes</A> +<LI> <A NAME="tex2html647" HREF="node34.html#SECTION00560000000000000000">Formatting</A> +<LI> <A NAME="tex2html648" HREF="node35.html#SECTION00570000000000000000">Partitions</A> +<UL> +<LI> <A NAME="tex2html649" HREF="node36.html#SECTION00571000000000000000">The MBR, boot sectors and partition table</A> +<LI> <A NAME="tex2html650" HREF="node37.html#SECTION00572000000000000000">Extended and logical partitions</A> +<LI> <A NAME="tex2html651" HREF="node38.html#SECTION00573000000000000000">Partition types</A> +<LI> <A NAME="tex2html652" HREF="node39.html#SECTION00574000000000000000">Partitioning a hard disk</A> +<LI> <A NAME="tex2html653" HREF="node40.html#SECTION00575000000000000000">Device files and partitions</A> +</UL> +<LI> <A NAME="tex2html654" HREF="node41.html#SECTION00580000000000000000">Filesystems</A> +<UL> +<LI> <A NAME="tex2html655" HREF="node42.html#SECTION00581000000000000000">What are filesystems?</A> +<LI> <A NAME="tex2html656" HREF="node43.html#SECTION00582000000000000000">Filesystems galore</A> +<LI> <A NAME="tex2html657" HREF="node44.html#SECTION00583000000000000000">Which filesystem should be used?</A> +<LI> <A NAME="tex2html658" HREF="node45.html#SECTION00584000000000000000">Creating a filesystem</A> +<LI> <A NAME="tex2html659" HREF="node46.html#SECTION00585000000000000000">Mounting and unmounting</A> +<LI> <A NAME="tex2html660" HREF="node47.html#SECTION00586000000000000000">Checking filesystem integrity with <tt>fsck</tt></A> +<LI> <A NAME="tex2html661" HREF="node48.html#SECTION00587000000000000000">Checking for disk errors with <tt>badblocks</tt></A> +<LI> <A NAME="tex2html662" HREF="node49.html#SECTION00588000000000000000">Fighting fragmentation</A> +<LI> <A NAME="tex2html663" HREF="node50.html#SECTION00589000000000000000">Other tools for all filesystems</A> +<LI> <A NAME="tex2html664" HREF="node51.html#SECTION005810000000000000000">Other tools for the ext2 filesystem</A> +</UL> +<LI> <A NAME="tex2html665" HREF="node52.html#SECTION00590000000000000000">Disks without filesystems</A> +<LI> <A NAME="tex2html666" HREF="node53.html#SECTION005100000000000000000">Allocating disk space</A> +<UL> +<LI> <A NAME="tex2html667" HREF="node54.html#SECTION005101000000000000000">Partitioning schemes</A> +<LI> <A NAME="tex2html668" HREF="node55.html#SECTION005102000000000000000">Space requirements</A> +<LI> <A NAME="tex2html669" HREF="node56.html#SECTION005103000000000000000">Examples of hard disk allocation</A> +<LI> <A NAME="tex2html670" HREF="node57.html#SECTION005104000000000000000">Adding more disk space for Linux</A> +<LI> <A NAME="tex2html671" HREF="node58.html#SECTION005105000000000000000">Tips for saving disk space</A> +</UL> +</UL> +<HR><A NAME="tex2html638" HREF="node29.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html636" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html630" HREF="node27.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html640" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html641" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html639" HREF="node29.html">Two kinds of devices</A> +<B>Up:</B> <A NAME="tex2html637" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html631" HREF="node27.html">The /proc filesystem</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node29.html b/sag-0.6.1-www/Invisible/sag-0.6/node29.html new file mode 100644 index 0000000..6d65ed2 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node29.html @@ -0,0 +1,83 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Two kinds of devices</TITLE> +<META NAME="description" CONTENT="Two kinds of devices"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html680" HREF="node30.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html678" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html672" HREF="node28.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html682" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html683" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html681" HREF="node30.html">Hard disks</A> +<B>Up:</B> <A NAME="tex2html679" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html673" HREF="node28.html">Using Disks and Other </A> +<BR> <P> +<H1><A NAME="SECTION00510000000000000000">Two kinds of devices</A></H1> +<P> + UNIX, and therefore Linux, recognizes two different + kinds of device: random-access block devices (such as disks), + and character devices (such as tapes and serial lines), + some of which may be serial, and some random-access. Each + supported device is represented in the filesystem as a + <b>device file</b>. When you read or write a device file, the + data comes from or goes to the device it represents. This way + no special programs (and no special application programming + methodology, such as catching interrupts or polling a serial + port) are necessary to access devices; for example, to send a + file to the printer, one could just say + <BLOCKQUOTE> <TT> +<code>$</code> <I>cat filename > /dev/lp1</I> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + and the contents of the file are printed (the file must, of + course, be in a form that the printer understands). However, + since it is not a good idea to have several people cat their + files to the printer at the same time, one usually uses a special + program to send the files to be printed (usually <tt>lpr</tt><A NAME="1437"> </A>). + This program makes sure that only one file is being printed + at a time, and will automatically send files to the printer as + soon as it finishes with the previous file. Something similar + is needed for most devices. In fact, one seldom needs to worry + about device files at all. +<P> + Since devices show up as files in the filesystem (in the + <tt>/dev</tt><A NAME="1439"> </A> directory), it is easy + to see just what device files exist, using <tt>ls</tt><A NAME="1441"> </A> or + another suitable command. In the output of <tt>ls -l</tt><A NAME="1443"> </A>, the + first column contains the type of the file and its + permissions. For example, inspecting a serial device + gives on my system + <BLOCKQUOTE> <TT> +<code>$</code> <I>ls -l /dev/cua0</I> <BR> +<code>crw-rw-rw- 1 root uucp 5, 64 Nov 30 1993 /dev/cua0</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + The first character in the first column, i.e., `<TT>c</TT>' in + <TT>crw-rw-rw-</TT> above, tells an informed user the type of the file, + in this case a character device. For + ordinary files, the first character is `<TT>-</TT>', for + directories it is `<TT>d</TT>', and for block devices `<TT>b</TT>'; + see the <tt>ls</tt><A NAME="1445"> </A> man page for further information. +<P> + Note that usually all device files exist even though the + device itself might be not be installed. So just because you + have a file <tt>/dev/sda</tt><A NAME="1447"> </A>, it doesn't mean that you really do + have an SCSI hard disk. + Having all the device files makes the installation programs + simpler, and makes it easier to add new hardware (there is no + need to find out the correct parameters for and create the device + files for the new device). +<P> +<HR><A NAME="tex2html680" HREF="node30.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html678" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html672" HREF="node28.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html682" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html683" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html681" HREF="node30.html">Hard disks</A> +<B>Up:</B> <A NAME="tex2html679" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html673" HREF="node28.html">Using Disks and Other </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node3.html b/sag-0.6.1-www/Invisible/sag-0.6/node3.html new file mode 100644 index 0000000..6cf9bd3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node3.html @@ -0,0 +1,54 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Typographical conventions</TITLE> +<META NAME="description" CONTENT="Typographical conventions"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html315" HREF="node4.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html313" HREF="node2.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html307" HREF="node2.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html317" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html318" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html316" HREF="node4.html">The Linux Documentation Project</A> +<B>Up:</B> <A NAME="tex2html314" HREF="node2.html">Introduction</A> +<B> Previous:</B> <A NAME="tex2html308" HREF="node2.html">Introduction</A> +<BR> <P> +<H1><A NAME="SECTION00210000000000000000">Typographical conventions</A></H1> +<P> +<DL ><DT><STRONG><B>Bold</B></STRONG> +<DD> Used to mark <B>new concepts</B>, <B>WARNINGS</B>, +and <B>keywords</B> in a language. +<P> +<DT><STRONG><EM>italics</EM></STRONG> +<DD> Used for <EM>emphasis</EM> in text, and +occasionally for quotes or introductions at the beginning of a section. +<P> +<DT><STRONG><I>slanted</I></STRONG> +<DD> Used to mark <B>meta-variables</B> in the text, +especially in representations of the command line. For example, +<BLOCKQUOTE> <TT>ls -l</TT> <I>foo</I></BLOCKQUOTE> +where <I>foo</I> would ``stand for'' a filename, such as <TT>/bin/cp</TT>. +<P> +<DT><STRONG><TT>Typewriter</TT></STRONG> +<DD> Used to represent screen interaction, as in +<BLOCKQUOTE> <PRE>$ ls -l /bin/cp +-rwxr-xr-x 1 root wheel 12104 Sep 25 15:53 /bin/cp</PRE></BLOCKQUOTE> +<P> +Also used for code examples, whether it is C code, a shell script, or +something else, and to display general files, such as configuration +files. When necessary for clarity's sake, these examples or figures +will be enclosed in thin boxes. +<P> +<DT><STRONG><TT>Key</TT></STRONG> +<DD> Represents a key to press. You will often see it +in this form: +<BLOCKQUOTE> Press <TT>Return</TT> to continue.</BLOCKQUOTE> +</DL><BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node30.html b/sag-0.6.1-www/Invisible/sag-0.6/node30.html new file mode 100644 index 0000000..49dc7ab --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node30.html @@ -0,0 +1,150 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Hard disks</TITLE> +<META NAME="description" CONTENT="Hard disks"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html692" HREF="node31.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html690" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html684" HREF="node29.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html694" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html695" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html693" HREF="node31.html">Floppies</A> +<B>Up:</B> <A NAME="tex2html691" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html685" HREF="node29.html">Two kinds of devices</A> +<BR> <P> +<H1><A NAME="SECTION00520000000000000000">Hard disks</A></H1> +<P> + This subsection introduces terminology related to hard disks. + If you already know the terms and concepts, you can skip this + subsection. +<P> + See figure <A HREF="node30.html#fighdschematic">4.1</A> for a schematic picture of the + important parts in a hard disk. A hard disk consists of one or + more circular <b>platters</b>,<A NAME="tex2html11" HREF="footnode.html#1028"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> of which either or both <b>surfaces</b> are coated with a + magnetic substance used for recording the data. For each + surface, there is a <b>read-write head</b> that examines or + alters the recorded data. The platters rotate on a common axis; + a typical rotation speed is 3600 rotations per minute, + although high-performance hard disks have higher speeds. The + heads move along the radius of the platters; this movement + combined with the rotation of the platters allows the head to + access all parts of the surfaces. +<P> + The processor (CPU) and the actual disk communicate through + a <b>disk controller</b>. This relieves the rest of the computer + from knowing how to use the drive, since the controllers for + different types of disks can be made to use the same interface towards + the rest of the computer. Therefore, the computer can say just + ``hey disk, gimme what I want'', instead of a long and complex + series of electric signals to move the head to the proper location + and waiting for the correct position to come under the head + and doing all the + other unpleasant stuff necessary. (In reality, the interface + to the controller is still complex, but much less so than it would + otherwise be.) The controller can also do some other stuff, + such as caching, or automatic bad sector replacement. +<P> + The above is usually all one needs to understand about the + hardware. There is also a bunch of other stuff, such as the + motor that rotates the platters and moves the heads, and the + electronics that control the operation of the mechanical + parts, but that is mostly not relevant for understanding the + working principle of a hard disk. +<P> + The surfaces are usually divided into concentric rings, called + <b>tracks</b>, and these in turn are divided into <b>sectors</b>. + This division is used to specify locations + on the hard disk and to allocate disk space to files. To find + a given place on the hard disk, one might say ``surface 3, + track 5, sector 7''. Usually the number of sectors is the + same for all tracks, but some hard disks put more sectors in + outer tracks (all sectors are of the same physical size, so + more of them fit in the longer outer tracks). Typically, a + sector will hold 512 bytes of data. The disk itself can't + handle smaller amounts of data than one sector. +<P> + <P><A NAME="1038"> </A><A NAME="fighdschematic"> </A><IMG WIDTH=367 HEIGHT=410 ALIGN=BOTTOM ALT="figure1034" SRC="img4.gif"><BR> +<STRONG>Figure 4.1:</STRONG> A schematic picture of a hard disk.<BR> +<P> +<P> + Each surface is divided into tracks (and sectors) in the same + way. This means that when the head for one surface is on a + track, the heads for the other surfaces are also on the + corresponding tracks. All the corresponding tracks taken + together are called a <b>cylinder</b>. It takes time to move + the heads from one track (cylinder) to another, so by placing + the data that is often accessed together (say, a file) so that + it is within one cylinder, it is not necessary to move the + heads to read all of it. This improves performance. It is + not always possible to place files like this; files that are + stored in several places on the disk are called <b>fragmented</b>. +<P> + The number of surfaces (or heads, which is the same thing), + cylinders, and sectors vary a lot; the specification of the + number of each is called the <b>geometry</b> of a hard disk. The + geometry is usually stored in a special, battery-powered memory + location called the <b>CMOS RAM</b>, from where the operating + system can fetch it during bootup or driver initialization. +<P> + Unfortunately, the BIOS<A NAME="tex2html12" HREF="footnode.html#1045"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> has a design limitation, which makes it + impossible to specify a track number that is larger than 1024 in + the CMOS RAM, + which is too little for a large hard disk. To overcome this, + the hard disk controller lies about the geometry, and + <b>translates the addresses</b> given by the computer into something + that fits reality. For example, a hard disk might have 8 heads, + 2048 tracks, and 35 sectors per track<A NAME="tex2html13" HREF="footnode.html#1047"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A>. Its controller could lie to the + computer and claim that it has 16 heads, 1024 tracks, and 35 + sectors per track, thus not exceeding the limit on tracks, and + translates the address that the computer gives it by halving the + head number, and doubling the track number. The math can be + more complicated in reality, because the numbers are not as nice + as here (but again, the details are not relevant for + understanding the principle). This translation distorts the + operating system's view of how the disk is organized, thus making it + impractical to use the all-data-on-one-cylinder trick to boost + performance. +<P> + The translation is only a problem for IDE disks. SCSI disks + use a sequential sector number (i.e., the controller translates + a sequential sector number to a head, cylinder, and sector + triplet), and a completely different method for the CPU to talk + with the controller, so they are insulated from the problem. + Note, however, that the computer might not know the real geometry + of an SCSI disk either. +<P> + Since Linux often will not know the real geometry of a disk, + its filesystems don't even try to keep files within a single cylinder. + Instead, it tries to assign sequentially numbered sectors to + files, which almost always gives similar performance. The issue + is further complicated by on-controller caches, and automatic + prefetches done by the controller. +<P> + Each hard disk is represented by a separate device file. + There can (usually) be only two or four IDE hard disks. + These are known as <tt>/dev/hda</tt><A NAME="1460"> </A>, <tt>/dev/hdb</tt><A NAME="1462"> </A>, + <tt>/dev/hdc</tt><A NAME="1464"> </A>, and <tt>/dev/hdd</tt><A NAME="1466"> </A>, respectively. SCSI + hard disks are known as <tt>/dev/sda</tt><A NAME="1468"> </A>, <tt>/dev/sdb</tt><A NAME="1470"> </A>, and + so on. Similar naming conventions exist for other hard + disk types; see [<A HREF="node113.html#device-list">Anv</A>] for more information. + Note that the device files for the hard disks give access + to the entire disk, with no regard to partitions (which + will be discussed below), and it's easy to mess up the + partitions or the data in them if you aren't careful. + The disks' device files are usually used only to get + access to the master boot record (which will also be + discussed below). +<P> +<HR><A NAME="tex2html692" HREF="node31.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html690" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html684" HREF="node29.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html694" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html695" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html693" HREF="node31.html">Floppies</A> +<B>Up:</B> <A NAME="tex2html691" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html685" HREF="node29.html">Two kinds of devices</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node31.html b/sag-0.6.1-www/Invisible/sag-0.6/node31.html new file mode 100644 index 0000000..473e354 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node31.html @@ -0,0 +1,86 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Floppies</TITLE> +<META NAME="description" CONTENT="Floppies"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html704" HREF="node32.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html702" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html696" HREF="node30.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html706" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html707" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html705" HREF="node32.html">CD-ROM's</A> +<B>Up:</B> <A NAME="tex2html703" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html697" HREF="node30.html">Hard disks</A> +<BR> <P> +<H1><A NAME="SECTION00530000000000000000">Floppies</A></H1> +<P> + A floppy disk consists of a flexible membrane covered on one + or both sides with similar magnetic substance as a hard disk. + The floppy disk itself doesn't have a read-write head, that is + included in the drive. A floppy corresponds to one platter in + a hard disk, but is removable and one drive can be used to + access different floppies, whereas the hard disk is one + indivisible unit. +<P> + Like a hard disk, a floppy is divided into tracks and sectors + (and the two corresponding tracks on either side of a floppy + form a cylinder), but there are many fewer of them than on a + hard disk. +<P> + A floppy drive can usually use several different types of disks; + for example, a 3.5 inch drive can use both 720 kB and + 1.44 MB disks. Since the drive has to operate a bit differently + and the operating system must know how big the disk is, there + are many device files for floppy drives, one per combination of + drive and disk type. + Therefore, <tt>/dev/fd0H1440</tt><A NAME="1472"> </A> is the first floppy drive (<tt>fd0</tt>), + which must be a 3.5 inch drive, + using a 3.5 inch, high density disk (<tt>H</tt>) of + size 1440 kB (<tt>1440</tt>), i.e., a normal 3.5 inch HD floppy. + For more information on the naming conventions for the floppy + devices, see [<A HREF="node113.html#device-list">Anv</A>]. +<P> + The names for floppy drives are complex, however, and Linux + therefore has a special floppy device type that automatically + detects the type of the disk in the drive. It works by trying + to read the first sector of a newly inserted floppy using different + floppy types until it finds the correct one. This naturally requires + that the floppy is formatted first. The automatic devices are + called <tt>/dev/fd0</tt><A NAME="1474"> </A>, <tt>/dev/fd1</tt><A NAME="1476"> </A>, and so on. +<P> + The parameters the automatic device uses to access a disk can + also be set using the program <tt>setfdprm</tt><A NAME="1478"> </A>. This can be + useful if you need to use disks that do not follow any usual + floppy sizes, e.g., if they have an unusual number of sectors, + or if the autodetecting for some reason fails and the proper + device file is missing. +<P> + Linux can handle many nonstandard floppy disk formats in + addition to all the standard ones. Some of these require + using special formatting programs. + We'll skip these disk types for now, but in the mean time + you can examine the <tt>/etc/fdprm</tt><A NAME="1480"> </A> file. It specifies + the settings that <tt>setfdprm</tt><A NAME="1482"> </A> recognizes. +<P> + The operating system must know when a disk has been changed in + a floppy drive, for example, in order to avoid using cached + data from the previous disk. Unfortunately, the signal line + that is used for this is sometimes broken, and worse, this won't + always be noticeable when using the drive from within MS-DOS. + If you are experiencing weird problems using floppies, this might + be the reason. The only way to correct it is to repair the + floppy drive. +<P> +<HR><A NAME="tex2html704" HREF="node32.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html702" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html696" HREF="node30.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html706" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html707" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html705" HREF="node32.html">CD-ROM's</A> +<B>Up:</B> <A NAME="tex2html703" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html697" HREF="node30.html">Hard disks</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node32.html b/sag-0.6.1-www/Invisible/sag-0.6/node32.html new file mode 100644 index 0000000..906fe80 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node32.html @@ -0,0 +1,81 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>CD-ROM's</TITLE> +<META NAME="description" CONTENT="CD-ROM's"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html716" HREF="node33.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html714" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html708" HREF="node31.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html718" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html719" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html717" HREF="node33.html">Tapes</A> +<B>Up:</B> <A NAME="tex2html715" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html709" HREF="node31.html">Floppies</A> +<BR> <P> +<H1><A NAME="SECTION00540000000000000000">CD-ROM's</A></H1> +<P> + A CD-ROM drive uses an optically read, plastic coated disk. + The information is recorded on the surface of the + disk<A NAME="tex2html14" HREF="footnode.html#1067"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> in small `holes' + aligned along a spiral from the center to the edge. The + drive directs a laser beam along the spiral to read the disk. + When the laser hits a hole, the laser is reflected in one way; + when it hits smooth surface, it is reflected in another way. + This makes it easy to code bits, and therefore information. + The rest is easy, mere mechanics. +<P> + CD-ROM drives are slow compared to hard disks. Whereas a + typical hard disk will have an average seek time less than + 15 milliseconds, a fast CD-ROM drive can use tenths of a second + for seeks. The actual data transfer rate is fairly high at + hundreds of kilobytes per second. The slowness means that + CD-ROM drives are not as pleasant to use instead of hard disks + (some Linux distributions provide `live' filesystems on CD-ROM's, + making it unnecessary to copy the files to the hard disk, making + installation easier and saving a lot of hard disk space), although + it is still possible. For installing new software, CD-ROM's are + very good, since it maximum speed is not essential during + installation. +<P> + There are several ways to arrange data on a CD-ROM. The most + popular one is specified by the international standard ISO 9660. + This standard specifies a very minimal filesystem, which is + even more crude than the one MS-DOS uses. On the other hand, + it is so minimal that every operating system should be able to + map it to its native system. +<P> + For normal UNIX use, the ISO 9660 filesystem is not usable, so + an extension to the standard has been developed, called + the Rock Ridge extension. Rock Ridge allows longer filenames, + symbolic links, and a lot of other goodies, making a CD-ROM + look more or less like any contemporary UNIX filesystem. + Even better, a Rock Ridge filesystem is still a valid ISO 9660 + filesystem, making it usable by non-UNIX systems as well. + Linux supports both ISO 9660 and the Rock Ridge extensions; + the extensions are recognized and used automatically. +<P> + The filesystem is only half the battle, however. Most CD-ROM's + contain data that requires a special program to access, and + most of these programs do not run under Linux (except, possibly, + under dosemu, the Linux MS-DOS emulator). +<P> + A CD-ROM drive is accessed via the corresponding device file. + There are several ways to connect a CD-ROM drive to the computer: + via SCSI, via a sound card, or via EIDE. The hardware hacking + needed to do this is outside the scope of this book, but the + type of connection decides the device file. See [<A HREF="node113.html#device-list">Anv</A>] + for enlightment. +<P> +<HR><A NAME="tex2html716" HREF="node33.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html714" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html708" HREF="node31.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html718" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html719" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html717" HREF="node33.html">Tapes</A> +<B>Up:</B> <A NAME="tex2html715" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html709" HREF="node31.html">Floppies</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node33.html b/sag-0.6.1-www/Invisible/sag-0.6/node33.html new file mode 100644 index 0000000..8ada116 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node33.html @@ -0,0 +1,40 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Tapes</TITLE> +<META NAME="description" CONTENT="Tapes"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html728" HREF="node34.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html726" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html720" HREF="node32.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html730" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html731" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html729" HREF="node34.html">Formatting</A> +<B>Up:</B> <A NAME="tex2html727" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html721" HREF="node32.html">CD-ROM's</A> +<BR> <P> +<H1><A NAME="SECTION00550000000000000000">Tapes</A></H1> +<P> + A tape drive uses a tape, similar<A NAME="tex2html15" HREF="footnode.html#1070"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> to cassettes used for music. A tape is + serial in nature, which means that in order to get to any given + part of it, you first have to go through all the parts in between. + A disk can be accessed randomly, i.e., you can jump directly + to any place on the disk. The serial access of tapes makes them + slow. +<P> + On the other hand, tapes are relatively cheap to make, + since they do not need to be fast. They can also easily be made + quite long, and can therefore contain a large amount of data. + This makes tapes very suitable for things like archiving and + backups, which do not require large speeds, but benefit from + low costs and large storage capacities. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node34.html b/sag-0.6.1-www/Invisible/sag-0.6/node34.html new file mode 100644 index 0000000..881fcbc --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node34.html @@ -0,0 +1,151 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Formatting</TITLE> +<META NAME="description" CONTENT="Formatting"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html740" HREF="node35.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html738" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html732" HREF="node33.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html742" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html743" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html741" HREF="node35.html">Partitions</A> +<B>Up:</B> <A NAME="tex2html739" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html733" HREF="node33.html">Tapes</A> +<BR> <P> +<H1><A NAME="SECTION00560000000000000000">Formatting</A></H1> +<P> + <b>Formatting</b> is the process of writing marks on the + magnetic media that are used to mark tracks and sectors. + Before a disk is formatted, its magnetic surface is a complete + mess of magnetic signals. When it is formatted, some order is + brought into the chaos by essentially drawing lines where the + tracks go, and where they are divided into sectors. The + actual details are not quite exactly like this, but that is + irrelevant. What is important is that a disk cannot be used + unless it has been formatted. +<P> + The terminology is a bit confusing here: in MS-DOS, the word + formatting is used to cover also the process of creating a + filesystem (which will be discussed below). There, the two + processes are often combined, especially for floppies. When + the distinction needs to be made, the real formatting is + called <b>low-level formatting</b>, while making the filesystem + is called <b>high-level formatting</b>. In UNIX circles, + the two are called formatting and making a filesystem, so + that's what is used in this book as well. +<P> + For IDE and some SCSI disks the formatting is actually + done at the factory and doesn't need to be repeated; hence + most people rarely need to worry about it. In fact, + formatting a hard disk can cause it to work less well, for + example because a disk might need to be formatted in some very + special way to allow automatic bad sector replacement to work. +<P> + Disks that need to be or can be formatted often require a special + program anyway, because the interface to the formatting logic + inside the drive is different from drive to drive. The + formatting program is often either on the controller BIOS, or + is supplied as an MS-DOS program; neither of these can easily be used + from within Linux. +<P> + During formatting one might encounter bad spots on the disk, + called <b>bad blocks</b> or <b>bad sectors</b>. These are sometimes + handled by the drive itself, + but even then, if more of them develop, something needs to be + done to avoid using those parts of the disk. The logic to do + this is built into the filesystem; how to add the information + into the filesystem is described below. Alternatively, one + might create a small partition that covers just the bad part + of the disk; this approach might be a good idea if the bad + spot is very large, since filesystems can sometimes have + trouble with very large bad areas. +<P> + Floppies are formatted with <tt>fdformat</tt><A NAME="1489"> </A>. The floppy device + file to use is given as the parameter. For example, the + following command would format a high density, + 3.5 inch floppy in the first floppy drive: + <BLOCKQUOTE> <TT> +<code>$</code> <I>fdformat /dev/fd0H1440</I> <BR> +<code>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</code> <BR> +<code>Formatting ... done</code> <BR> +<code>Verifying ... done</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + Note that if you want to use an autodetecting device (e.g., + <tt>/dev/fd0</tt><A NAME="1491"> </A>), you <EM>must</EM> set the parameters of the device + with <tt>setfdprm</tt><A NAME="1493"> </A> first. To achieve the same effect as + above, one would have to do the following: + <BLOCKQUOTE> <TT> +<code>$</code> <I>setfdprm /dev/fd0 1440/1440</I> <BR> +<code>$</code> <I>fdformat /dev/fd0</I> <BR> +<code>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</code> <BR> +<code>Formatting ... done</code> <BR> +<code>Verifying ... done</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + It is usually more convenient to choose the correct device file + that matches the type of the floppy. Note that it is unwise to + format floppies to contain more information than what they are + designed for. +<P> + <tt>fdformat</tt><A NAME="1495"> </A> will also validate the floppy, i.e., check it + for bad blocks. It will try a bad block several times (you + can usually hear this, the drive noise changes dramatically). + If the floppy is only marginally bad (due to dirt on the + read/write head, some errors are false signals), <tt>fdformat</tt><A NAME="1497"> </A> won't + complain, but a real error will abort the validation process. + The kernel will print log messages for each I/O error it + finds; these will go to the console or, if <tt>syslog</tt><A NAME="1499"> </A> + is being used, to the file <tt>/usr/adm/messages</tt><A NAME="1501"> </A>. <tt>fdformat</tt><A NAME="1503"> </A> + itself won't tell where the error is (one usually doesn't care, + floppies are cheap enough that a bad one is automatically thrown + away). + <BLOCKQUOTE> <TT> +<code>$</code> <I>fdformat /dev/fd0H1440</I> <BR> +<code>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</code> <BR> +<code>Formatting ... done</code> <BR> +<code>Verifying ... read: Unknown error</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> +<P> + The <tt>badblocks</tt><A NAME="1505"> </A> command can be used to search any disk or + partition for bad blocks (including a floppy). It does not + format the disk, so it can be used to check even existing + filesystems. The example below checks a 3.5 inch + floppy with two bad blocks. + <BLOCKQUOTE> <TT> +<code>$</code> <I>badblocks /dev/fd0H1440 1440</I> <BR> +<code>718</code> <BR> +<code>719</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + <tt>badblocks</tt><A NAME="1507"> </A> outputs the block numbers of the bad blocks it finds. + Most filesystems can avoid such bad blocks. They maintain a list + of known bad blocks, which is initialized when the filesystem is + made, and can be modified later. The initial search for bad + blocks can be done by the <tt>mkfs</tt><A NAME="1509"> </A> command (which initializes + the filesystem), but later checks should be done with + <tt>badblocks</tt><A NAME="1511"> </A> and the new blocks should be added with + <tt>fsck</tt><A NAME="1513"> </A>. We'll describe <tt>mkfs</tt><A NAME="1515"> </A> and <tt>fsck</tt><A NAME="1517"> </A> later. +<P> + Many modern disks automatically notice bad blocks, and attempt + to fix them by using a special, reserved good block instead. + This is invisible to the operating system. This feature should + be documented in the disk's manual, if you're curious if it + is happening. Even such disks can fail, if the number of bad + blocks grows too large, although chances are that by then the disk + will be so rotten as to be unusable. +<P> +<HR><A NAME="tex2html740" HREF="node35.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html738" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html732" HREF="node33.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html742" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html743" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html741" HREF="node35.html">Partitions</A> +<B>Up:</B> <A NAME="tex2html739" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html733" HREF="node33.html">Tapes</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node35.html b/sag-0.6.1-www/Invisible/sag-0.6/node35.html new file mode 100644 index 0000000..5b24447 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node35.html @@ -0,0 +1,51 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Partitions</TITLE> +<META NAME="description" CONTENT="Partitions"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html752" HREF="node36.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html750" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html744" HREF="node34.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html754" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html755" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html753" HREF="node36.html">The MBRboot sectors </A> +<B>Up:</B> <A NAME="tex2html751" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html745" HREF="node34.html">Formatting</A> +<BR> <P> +<H1><A NAME="SECTION00570000000000000000">Partitions</A></H1> +<P> + A hard disk can be divided into several <b>partitions</b>. + Each partition functions as if it were a separate hard disk. + The idea is that if you have one hard disk, and want to have, + say, two operating systems on it, you can divide the disk into + two partitions. Each operating system uses its partition as + it wishes and doesn't touch the other one's. This way the two + operating systems can co-exist peacefully on the same hard + disk. Without partitions one would have to buy a hard disk for + each operating system. +<P> + Floppies are not partitioned. There is no technical reason + against this, but since they're so small, partitions would be + useful only very rarely. CD-ROM's are usually also not + partitioned, since it's easier to use them as one big + disk, and there is seldom a need to have several operating + systems on one. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html756" HREF="node36.html#SECTION00571000000000000000">The MBR, boot sectors and partition table</A> +<LI> <A NAME="tex2html757" HREF="node37.html#SECTION00572000000000000000">Extended and logical partitions</A> +<LI> <A NAME="tex2html758" HREF="node38.html#SECTION00573000000000000000">Partition types</A> +<LI> <A NAME="tex2html759" HREF="node39.html#SECTION00574000000000000000">Partitioning a hard disk</A> +<LI> <A NAME="tex2html760" HREF="node40.html#SECTION00575000000000000000">Device files and partitions</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node36.html b/sag-0.6.1-www/Invisible/sag-0.6/node36.html new file mode 100644 index 0000000..788a4f5 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node36.html @@ -0,0 +1,74 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The MBR, boot sectors and partition table</TITLE> +<META NAME="description" CONTENT="The MBR, boot sectors and partition table"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html769" HREF="node37.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html767" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html761" HREF="node35.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html771" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html772" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html770" HREF="node37.html">Extended and logical partitions</A> +<B>Up:</B> <A NAME="tex2html768" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html762" HREF="node35.html">Partitions</A> +<BR> <P> +<H2><A NAME="SECTION00571000000000000000">The MBR, boot sectors and partition table</A></H2> +<P> + The information about how a hard disk has been partitioned is + stored in its first sector (that is, the first sector of the + first track on the first disk surface). The first sector is the + <b>master boot record</b> (MBR) of the disk; this is the sector + that the BIOS reads in and starts when the machine is first + booted. The master boot record contains a small program that + reads the partition table, checks which partition is active + (that is, marked bootable), and reads the first sector of that + partition, the partition's <b>boot sector</b> (the MBR is also a + boot sector, but it has a special status and therefore a special + name). This boot sector contains another small program that + reads the first part of the operating system stored on that + partition (assuming it is bootable), and then starts it. +<P> + The partitioning scheme is not built into the hardware, or + even into the BIOS. It is only a convention that many + operating systems follow. Not all operating systems do follow + it, but they are the exceptions. Some operating + systems support partitions, but they occupy one partition on + the hard disk, and use their internal partitioning method + within that partition. The latter type exists peacefully + with other operating systems (including Linux), and does not + require any special measures, but an operating system + that doesn't support partitions cannot co-exist on the same + disk with any other operating system. +<P> + As a safety precaution, it is a good idea to write down the + partition table on a piece of paper, so that if it ever corrupts + you don't have to lose all your files. (A bad partition table + can be fixed with <tt>fdisk</tt><A NAME="1522"> </A>). The relevant information + is given by the <tt>fdisk -l</tt><A NAME="1524"> </A> command: + <BLOCKQUOTE> <TT> +<code>$</code> <i>fdisk -l /dev/hda</i> <BR> +<code></code> <BR> +<code>Disk /dev/hda: 15 heads, 57 sectors, 790 cylinders</code> <BR> +<code>Units = cylinders of 855 * 512 bytes</code> <BR> +<code></code> <BR> +<code> Device Boot Begin Start End Blocks Id System</code> <BR> +<code>/dev/hda1 1 1 24 10231+ 82 Linux swap</code> <BR> +<code>/dev/hda2 25 25 48 10260 83 Linux native</code> <BR> +<code>/dev/hda3 49 49 408 153900 83 Linux native</code> <BR> +<code>/dev/hda4 409 409 790 163305 5 Extended</code> <BR> +<code>/dev/hda5 409 409 744 143611+ 83 Linux native</code> <BR> +<code>/dev/hda6 745 745 790 19636+ 83 Linux native</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE><HR><A NAME="tex2html769" HREF="node37.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html767" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html761" HREF="node35.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html771" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html772" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html770" HREF="node37.html">Extended and logical partitions</A> +<B>Up:</B> <A NAME="tex2html768" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html762" HREF="node35.html">Partitions</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node37.html b/sag-0.6.1-www/Invisible/sag-0.6/node37.html new file mode 100644 index 0000000..843dc3e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node37.html @@ -0,0 +1,53 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Extended and logical partitions</TITLE> +<META NAME="description" CONTENT="Extended and logical partitions"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html781" HREF="node38.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html779" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html773" HREF="node36.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html783" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html784" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html782" HREF="node38.html">Partition types</A> +<B>Up:</B> <A NAME="tex2html780" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html774" HREF="node36.html">The MBRboot sectors </A> +<BR> <P> +<H2><A NAME="SECTION00572000000000000000">Extended and logical partitions</A></H2> +<P> + The original partitioning scheme for PC hard disks allowed + only four partitions. This quickly turned out to be too little + in real life, partly because some people want more than four + operating systems (Linux, MS-DOS, OS/2, Minix, FreeBSD, NetBSD, or + Windows/NT, to name a few), but primarily because sometimes it + is a good idea to have several partitions for one + operating system. For example, swap space is usually best put + in its own partition for Linux instead of in the main + Linux partition for reasons of speed (see below). +<P> + To overcome this design problem, <b>extended partitions</b> were + invented. This trick allows partitioning a <b>primary + partition</b> into sub-partitions. The + primary partition thus subdivided is the extended partition; the + subpartitions are <b>logical partitions</b>. They behave + like primary<A NAME="tex2html17" HREF="footnode.html#1120"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> partitions, but are created + differently. There is no speed difference between them. +<P> + The partition structure of a hard disk might look like that in + figure <A HREF="node37.html#figharddisklayout">4.2</A>. The disk is divided into + three primary partitions, the second of which is divided into + two logical partitions. Part of the disk is not partitioned at + all. The disk as a whole and each primary partition has a boot + sector. +<P> + <P><A NAME="1126"> </A><A NAME="figharddisklayout"> </A><IMG WIDTH=281 HEIGHT=276 ALIGN=BOTTOM ALT="figure1122" SRC="img5.gif"><BR> +<STRONG>Figure 4.2:</STRONG> A sample hard disk partitioning.<BR> +<P><BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node38.html b/sag-0.6.1-www/Invisible/sag-0.6/node38.html new file mode 100644 index 0000000..ff99643 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node38.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Partition types</TITLE> +<META NAME="description" CONTENT="Partition types"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html793" HREF="node39.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html791" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html785" HREF="node37.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html795" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html796" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html794" HREF="node39.html">Partitioning a hard disk</A> +<B>Up:</B> <A NAME="tex2html792" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html786" HREF="node37.html">Extended and logical partitions</A> +<BR> <P> +<H2><A NAME="SECTION00573000000000000000">Partition types</A></H2> +<P> + The partition tables (the one in the MBR, and the ones for + extended partitions) contain one byte per partition that + identifies the type of that partition. This attempts to + identify the operating system that uses the partition, or what + it uses it for. The purpose is to make it possible to avoid + having two operating systems accidentally using the same + partition. However, in reality, operating systems do not + really care about the partition type byte; e.g., Linux + doesn't care at all what it is. Worse, some of them use it + incorrectly; e.g., at least some versions of DR-DOS ignore the + most significant bit of the byte, while others don't. +<P> + There is no standardization agency to specify what each byte + value means, but some commonly accepted ones are included in + in table <A HREF="node38.html#tabpartitionids">4.1</A>. The same list is + available in the Linux <tt>fdisk</tt><A NAME="1529"> </A> program. +<P> +<P><A NAME="1429"> </A><A NAME="tabpartitionids"> </A><IMG WIDTH=491 HEIGHT=241 ALIGN=BOTTOM ALT="table1132" SRC="img6.gif"><BR> +<STRONG>Table 4.1:</STRONG> Partition types (from the Linux <tt>fdisk</tt><A NAME="1531"> </A> program).<BR> +<P><BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node39.html b/sag-0.6.1-www/Invisible/sag-0.6/node39.html new file mode 100644 index 0000000..e7433dd --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node39.html @@ -0,0 +1,84 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Partitioning a hard disk</TITLE> +<META NAME="description" CONTENT="Partitioning a hard disk"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html805" HREF="node40.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html803" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html797" HREF="node38.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html807" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html808" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html806" HREF="node40.html">Device files and partitions</A> +<B>Up:</B> <A NAME="tex2html804" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html798" HREF="node38.html">Partition types</A> +<BR> <P> +<H2><A NAME="SECTION00574000000000000000">Partitioning a hard disk</A></H2> +<P> + There are many programs for creating and removing partitions. + Most operating systems have their own, and it can be a good + idea to use each operating system's own, just in case it does + something unusual that the others can't. Many of the programs + are called <tt>fdisk</tt><A NAME="1533"> </A>, including the Linux one, or + variations thereof. Details on using the Linux <tt>fdisk</tt><A NAME="1535"> </A> + are given on its man page. The <tt>cfdisk</tt><A NAME="1537"> </A> command is similar + to <tt>fdisk</tt><A NAME="1539"> </A>, but has a nicer (full screen) user interface. +<P> + When using IDE disks, the boot partition (the partition + with the bootable kernel image files) must be completely + within the first 1024 cylinders. This is because the disk is + used via the BIOS during boot (before the system goes into + protected mode), and BIOS can't handle more than 1024 cylinders. + It is sometimes possible to use a boot partition that is only + partly within the first 1024 cylinders. This works as long + as all the files that are read with the BIOS are within the + first 1024 cylinders. Since this is difficult to arrange, + it is <em>a very bad idea</em> to do it; you never know when + a kernel update or disk defragmentation will result in an + unbootable system. Therefore, make sure your boot partition + is completely within the first 1024 cylinders. +<P> + Some newer versions of the BIOS and IDE disks can, in fact, + handle disks with more than 1024 cylinders. If you have such + a system, you can forget about the problem; if you aren't + quite sure of it, put it within the first 1024 cylinders. +<P> + Each partition should have an even number of sectors, since + the Linux filesystems use a 1 kB block size, i.e., two + sectors. An odd number of sectors will result in the last + sector being unused. This won't result in any problems, but + it is ugly, and some versions of <tt>fdisk</tt><A NAME="1541"> </A> will warn about + it. +<P> + Changing a partition's size usually requires first backing up + everything you want to save from that partition (preferably the + whole disk, just in case), deleting the partition, creating + new partition, then restoring everything to the new partition. + If the partition is growing, you may need to adjust the sizes + (and backup and restore) of the adjoining partitions as well. +<P> + Since changing partition sizes is painful, it is preferable to + get the partitions right + the first time, or have an effective and easy to use backup + system. If you're installing from a media that does not require + much human intervention (say, from CD-ROM, as opposed to floppies), + it is often easy to play with different configuration at first. + Since you don't already have data to back up, it is not so + painful to modify partition sizes several times. +<P> + There is a program for MS-DOS, called <tt>fips</tt><A NAME="1543"> </A>, which resizes + an MS-DOS partition without requiring the backup and restore, but + for other filesystems it is still necessary. +<P> +<HR><A NAME="tex2html805" HREF="node40.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html803" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html797" HREF="node38.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html807" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html808" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html806" HREF="node40.html">Device files and partitions</A> +<B>Up:</B> <A NAME="tex2html804" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html798" HREF="node38.html">Partition types</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node4.html b/sag-0.6.1-www/Invisible/sag-0.6/node4.html new file mode 100644 index 0000000..37e434e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node4.html @@ -0,0 +1,132 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The Linux Documentation Project</TITLE> +<META NAME="description" CONTENT="The Linux Documentation Project"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html325" HREF="node5.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html323" HREF="node2.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html319" HREF="node3.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html327" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html328" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html326" HREF="node5.html">Overview of a Linux </A> +<B>Up:</B> <A NAME="tex2html324" HREF="node2.html">Introduction</A> +<B> Previous:</B> <A NAME="tex2html320" HREF="node3.html">Typographical conventions</A> +<BR> <P> +<H1><A NAME="SECTION00220000000000000000">The Linux Documentation Project</A></H1> +<P> +The Linux Documentation Project, or LDP, is a loose team of writers, +proofreaders, and editors who are working together to provide complete +documentation for the Linux operating system. The overall +coordinator of the project is Greg Hankins. +<P> +This manual is one in a set of several being distributed by the LDP, +including a Linux Users' Guide, System Administrators' Guide, Network +Administrators' Guide, and Kernel Hackers' Guide. These manuals are +all available in LaTeX source format, .dvi format, and postscript +output by anonymous FTP from <TT>sunsite.unc.edu</TT>, in the directory <TT> +/pub/Linux/docs/LDP</TT>. +<P> +We encourage anyone with a penchant for writing or editing to join us in +improving Linux documentation. If you have Internet e-mail access, you can +contact Greg Hankins at <tt>gregh@sunsite.unc.edu</tt>. +<P> + +<P> + <P> +<B>The LDP Rhyme<A NAME="tex2html4" HREF="footnode.html#111"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A></B> <BR> + <P><P> +<P> + A wondrous thing, <BR> + and beautiful, <BR> + 'tis to write, <BR> + a book. <BR> + <P><P> +<P> + I'd like to sing, <BR> + of the sweat, <BR> + the blood and tear, <BR> + which it also took. <BR> + <P><P> +<P> + It started back in, <BR> + nineteen-ninety-two, <BR> + when users whined, <BR> + "we can nothing do!" <BR> + <P><P> +<P> + They wanted to know, <BR> + what their problem was, <BR> + and how to fix it <BR> + (by yesterday). <BR> + <P><P> +<P> + We put the answers in, <BR> + a Linux f-a-q, <BR> + hoped to get away, <BR> + from any more writin'. <BR> + <P><P> +<P> + "That's too long, <BR> + it's hard to search, <BR> + and we don't read it, <BR> + any-which-way!" <BR> + <P><P> +<P> + Then a few of us, <BR> + joined together <BR> + (virtually, you know), <BR> + to start the LDP. <BR> +<P> + +<P> + <P><P> + We started to write, <BR> + or plan, at least, <BR> + several books, <BR> + one for every need. <BR> + <P><P> +<P> + The start was fun, <BR> + a lot of talk, <BR> + an outline, <BR> + then a slew. <BR> + <P><P> +<P> + Then silence came,<BR> + the work began,<BR> + some wrote less,<BR> + others more. <BR> + <P><P> +<P> + A blank screen,<BR> + oh its horrible,<BR> + it sits there,<BR> + laughs in the face. <BR> + <P><P> +<P> + We still await,<BR> + the final day,<BR> + when everything,<BR> + will be done. <BR> + <P><P> +<P> + Until then,<BR> + all we have,<BR> + is a draft,<BR> + for you to comment on. + <P> + +<P> +<HR><A NAME="tex2html325" HREF="node5.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html323" HREF="node2.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html319" HREF="node3.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html327" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html328" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html326" HREF="node5.html">Overview of a Linux </A> +<B>Up:</B> <A NAME="tex2html324" HREF="node2.html">Introduction</A> +<B> Previous:</B> <A NAME="tex2html320" HREF="node3.html">Typographical conventions</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node40.html b/sag-0.6.1-www/Invisible/sag-0.6/node40.html new file mode 100644 index 0000000..0e74e36 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node40.html @@ -0,0 +1,39 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Device files and partitions</TITLE> +<META NAME="description" CONTENT="Device files and partitions"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html815" HREF="node41.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html813" HREF="node35.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html809" HREF="node39.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html817" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html818" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html816" HREF="node41.html">Filesystems</A> +<B>Up:</B> <A NAME="tex2html814" HREF="node35.html">Partitions</A> +<B> Previous:</B> <A NAME="tex2html810" HREF="node39.html">Partitioning a hard disk</A> +<BR> <P> +<H2><A NAME="SECTION00575000000000000000">Device files and partitions</A></H2> +<P> + Each partition and extended partition has its own device file. + The naming convention for these files is that a partition's + number is appended after the name of the whole disk, with the + convention that 1-4 are primary partitions (regardless of + how many primary partitions there are) and 5-8 + are logical partitions (regardless of within which primary + partition they reside). For example, <tt>/dev/hda1</tt><A NAME="1545"> </A> is the + first primary partition on the first IDE hard disk, and + <tt>/dev/sdb7</tt><A NAME="1547"> </A> is the third extended partition on the second + SCSI hard disk. + The device list in [<A HREF="node113.html#device-list">Anv</A>] + gives more information. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node41.html b/sag-0.6.1-www/Invisible/sag-0.6/node41.html new file mode 100644 index 0000000..bfaecbf --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node41.html @@ -0,0 +1,41 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Filesystems</TITLE> +<META NAME="description" CONTENT="Filesystems"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html827" HREF="node42.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html825" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html819" HREF="node40.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html829" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html830" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html828" HREF="node42.html">What are filesystems?</A> +<B>Up:</B> <A NAME="tex2html826" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html820" HREF="node40.html">Device files and partitions</A> +<BR> <P> +<H1><A NAME="SECTION00580000000000000000">Filesystems</A></H1> +<P> +<A NAME="secfilesystems"> </A> +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html831" HREF="node42.html#SECTION00581000000000000000">What are filesystems?</A> +<LI> <A NAME="tex2html832" HREF="node43.html#SECTION00582000000000000000">Filesystems galore</A> +<LI> <A NAME="tex2html833" HREF="node44.html#SECTION00583000000000000000">Which filesystem should be used?</A> +<LI> <A NAME="tex2html834" HREF="node45.html#SECTION00584000000000000000">Creating a filesystem</A> +<LI> <A NAME="tex2html835" HREF="node46.html#SECTION00585000000000000000">Mounting and unmounting</A> +<LI> <A NAME="tex2html836" HREF="node47.html#SECTION00586000000000000000">Checking filesystem integrity with <tt>fsck</tt></A> +<LI> <A NAME="tex2html837" HREF="node48.html#SECTION00587000000000000000">Checking for disk errors with <tt>badblocks</tt></A> +<LI> <A NAME="tex2html838" HREF="node49.html#SECTION00588000000000000000">Fighting fragmentation</A> +<LI> <A NAME="tex2html839" HREF="node50.html#SECTION00589000000000000000">Other tools for all filesystems</A> +<LI> <A NAME="tex2html840" HREF="node51.html#SECTION005810000000000000000">Other tools for the ext2 filesystem</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node42.html b/sag-0.6.1-www/Invisible/sag-0.6/node42.html new file mode 100644 index 0000000..3a78689 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node42.html @@ -0,0 +1,91 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>What are filesystems?</TITLE> +<META NAME="description" CONTENT="What are filesystems?"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html849" HREF="node43.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html847" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html841" HREF="node41.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html851" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html852" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html850" HREF="node43.html">Filesystems galore</A> +<B>Up:</B> <A NAME="tex2html848" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html842" HREF="node41.html">Filesystems</A> +<BR> <P> +<H2><A NAME="SECTION00581000000000000000">What are filesystems?</A></H2> +<P> + A <b>filesystem</b> is the methods and data structures that an + operating system uses to keep track of files on a disk or partition; + that is, the way the + files are organized on the disk. The word is also used to + refer to a partition or disk that is used to store the files + or the type of the filesystem. Thus, one might say ``I have + two filesystems'' meaning one has two partitions on which one + stores files, or that one is using the ``extended + filesystem'', meaning the type of the filesystem. +<P> + The difference between a disk or partition and the filesystem + it contains is important. A few programs (including, + reasonably enough, programs that create filesystems) operate + directly on the raw sectors of a disk or partition; if there + is an existing file system there it will be destroyed or + seriously corrupted. Most programs operate on a filesystem, + and therefore won't work on a partition that doesn't contain + one (or that contains one of the wrong type). +<P> + Before a partition or disk can be used as a filesystem, it + needs to be initialized, and the bookkeeping data structures need + to be written to the disk. This process is called + <b>making a filesystem</b>. +<P> + Most UNIX filesystem types have a similar general structure, + although the exact details vary quite a bit. The central + concepts are <b>superblock</b>, <b>inode</b>, <b>data block</b>, + <b>directory block</b>, and <b>indirection block</b>. The + superblock contains information about the filesystem as a + whole, such as its size (the exact information here depends + on the filesystem). An inode contains all information about + a file, except its name. The name is stored in the directory, + together with the number of the inode. A directory entry consists + of a filename and the number of the inode which represents the + file. The inode contains the numbers of several data blocks, + which are used to store the data in the file. There is space + only for a few data block numbers in the inode, however, and if more + are needed, more space for pointers to the data blocks is allocated + dynamically. These dynamically allocated blocks are indirect + blocks; the name indicates that in order to find the data block, + one has to find its number in the indirect block first. +<P> + UNIX filesystems usually allow one to create a <b>hole</b> + in a file (this is done with <tt>lseek</tt><A NAME="1557"> </A>; check the manual + page), which means that the filesystem just pretends that at a + particular place in the file there is just zero bytes, but no + actual disk sectors are reserved for that place in the file + (this means that the file will use a bit less disk + space). This happens especially often for small binaries, Linux + shared libraries, some databases, and a few other special cases. + (Holes are + implemented by storing a special value as the address of the + data block in the indirect block or inode. This special address + means that no data block is allocated for that part of the file, + ergo, there is a hole in the file.) +<P> + Holes are moderately useful. On the author's system, a simple + measurement showed a potential for about 4 MB of savings through + holes of about 200 MB total used disk space. That system, however, + contains relatively few programs and no database files. The + measurement tool is described in appendix <A HREF="node111.html#chapmeasureholes">A</A>. +<P> +<HR><A NAME="tex2html849" HREF="node43.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html847" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html841" HREF="node41.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html851" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html852" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html850" HREF="node43.html">Filesystems galore</A> +<B>Up:</B> <A NAME="tex2html848" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html842" HREF="node41.html">Filesystems</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node43.html b/sag-0.6.1-www/Invisible/sag-0.6/node43.html new file mode 100644 index 0000000..d699677 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node43.html @@ -0,0 +1,146 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Filesystems galore</TITLE> +<META NAME="description" CONTENT="Filesystems galore"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html861" HREF="node44.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html859" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html853" HREF="node42.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html863" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html864" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html862" HREF="node44.html">Which filesystem should be </A> +<B>Up:</B> <A NAME="tex2html860" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html854" HREF="node42.html">What are filesystems?</A> +<BR> <P> +<H2><A NAME="SECTION00582000000000000000">Filesystems galore</A></H2> +<P> + Linux supports several types of filesystems. As of this + writing the most important ones are: + <DL ><DT><STRONG>minix</STRONG> +<DD> + The oldest, presumed to be the most reliable, but quite + limited in features (some time stamps are missing, at + most 30 character filenames) and restricted in + capabilities (at most 64 MB per filesystem). + <DT><STRONG>xia</STRONG> +<DD> + A modified version of the minix filesystem that lifts + the limits on the filenames and filesystem sizes, + but does not otherwise introduce new features. It is + not very popular, but is reported to work very well. + <DT><STRONG>ext2</STRONG> +<DD> + The most featureful of the native Linux filesystems, + currently also the most popular one. It is designed to + be easily upwards compatible, so that new versions + of the filesystem code do not require re-making the + existing filesystems. + <DT><STRONG>ext</STRONG> +<DD> + An older version of <tt>ext2</tt> that wasn't upwards + compatible. It is hardly ever used in new installations + any more, and most people have converted to <tt>ext2</tt>. +<P> +</DL> + In addition, support for several foreign filesystem exists, + to make it easier to exchange files with other operating + systems. These foreign filesystems work just like native + ones, except that they may be lacking in some usual UNIX + features, or have curious limitations, or other oddities. + <DL ><DT><STRONG>msdos</STRONG> +<DD> + Compatibility with MS-DOS (and OS/2 and Windows NT) + FAT filesystems. + <DT><STRONG>umsdos</STRONG> +<DD> + Extends the <tt>msdos</tt> filesystem driver under + Linux to get long filenames, owners, + permissions, links, and device files. This allows a normal + <tt>msdos</tt> filesystem to be used as if it were a + Linux one, thus removing the need for a separate + partition for Linux. + <DT><STRONG>iso9660</STRONG> +<DD> + The standard CD-ROM filesystem; the popular Rock Ridge + extension to the CD-ROM standard that allows longer file + names is supported automatically. + <DT><STRONG>nfs</STRONG> +<DD> + A networked filesystem that allows sharing a filesystem + between many computers to allow easy access to the + files from all of them. + <DT><STRONG>hpfs</STRONG> +<DD> + The OS/2 filesystem. + <DT><STRONG>sysv</STRONG> +<DD> + SystemV/386, Coherent, and Xenix filesystems. +<P> +</DL> + The choice of filesystem to use depends on the situation. If + compatibility or other reasons make one of the non-native + filesystems necessary, then that one must be used. If one can + choose freely, then it is probably wisest to use ext2, since + it has all the features but does not suffer from lack of + performance. +<P> + There is also the <tt>proc</tt> filesystem, usually accessible as + the <tt>/proc</tt><A NAME="1559"> </A> directory, which is not really a + filesystem at all, even though it looks like one. The + <tt>proc</tt> filesystem makes it easy to access certain kernel + data structures, such as the process list (hence the name). + It makes these + data structures look like a filesystem, and that filesystem + can be manipulated with all the usual file tools. For example, + to get a listing of all processes one might use the + command + <BLOCKQUOTE> <TT> +<code>$ </code> <I>ls -l /proc</I> <BR> +<code>total 0</code> <BR> +<code>dr-xr-xr-x 4 root root 0 Jan 31 20:37 1</code> <BR> +<code>dr-xr-xr-x 4 liw users 0 Jan 31 20:37 63</code> <BR> +<code>dr-xr-xr-x 4 liw users 0 Jan 31 20:37 94</code> <BR> +<code>dr-xr-xr-x 4 liw users 0 Jan 31 20:37 95</code> <BR> +<code>dr-xr-xr-x 4 root users 0 Jan 31 20:37 98</code> <BR> +<code>dr-xr-xr-x 4 liw users 0 Jan 31 20:37 99</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 devices</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 dma</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 filesystems</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 interrupts</code> <BR> +<code>-r-------- 1 root root 8654848 Jan 31 20:37 kcore</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 11:50 kmsg</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 ksyms</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 11:51 loadavg</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 meminfo</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 modules</code> <BR> +<code>dr-xr-xr-x 2 root root 0 Jan 31 20:37 net</code> <BR> +<code>dr-xr-xr-x 4 root root 0 Jan 31 20:37 self</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 stat</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 uptime</code> <BR> +<code>-r--r--r-- 1 root root 0 Jan 31 20:37 version</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + (There will be a few extra files that don't correspond to + processes, though. The above example has been shortened.) +<P> + Note that even though it is called a filesystem, no part of + the <tt>proc</tt> filesystem touches any disk. It exists only in the + kernel's imagination. Whenever anyone tries to look at any + part of the <tt>proc</tt> filesystem, the kernel makes it look as if + the part existed somewhere, even though it doesn't. So, even + though there is a multi-megabyte <tt>/proc/kcore</tt><A NAME="1561"> </A> file, + it doesn't take any disk space. +<P> +<HR><A NAME="tex2html861" HREF="node44.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html859" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html853" HREF="node42.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html863" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html864" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html862" HREF="node44.html">Which filesystem should be </A> +<B>Up:</B> <A NAME="tex2html860" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html854" HREF="node42.html">What are filesystems?</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node44.html b/sag-0.6.1-www/Invisible/sag-0.6/node44.html new file mode 100644 index 0000000..1de8c1d --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node44.html @@ -0,0 +1,33 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Which filesystem should be used?</TITLE> +<META NAME="description" CONTENT="Which filesystem should be used?"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html873" HREF="node45.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html871" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html865" HREF="node43.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html875" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html876" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html874" HREF="node45.html">Creating a filesystem</A> +<B>Up:</B> <A NAME="tex2html872" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html866" HREF="node43.html">Filesystems galore</A> +<BR> <P> +<H2><A NAME="SECTION00583000000000000000">Which filesystem should be used?</A></H2> +<P> + There is usually little point in using many different filesystems. + Currently, ext2fs is the most popular one, and it is probably + the wisest choice. Depending on the overhead for bookkeeping + structures, speed, (perceived) reliability, compatibility, + and various other reasons, it may be advisable to use another file + system. This needs to be decided on a case-by-case basis. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node45.html b/sag-0.6.1-www/Invisible/sag-0.6/node45.html new file mode 100644 index 0000000..80a3f00 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node45.html @@ -0,0 +1,106 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Creating a filesystem</TITLE> +<META NAME="description" CONTENT="Creating a filesystem"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html885" HREF="node46.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html883" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html877" HREF="node44.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html887" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html888" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html886" HREF="node46.html">Mounting and unmounting</A> +<B>Up:</B> <A NAME="tex2html884" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html878" HREF="node44.html">Which filesystem should be </A> +<BR> <P> +<H2><A NAME="SECTION00584000000000000000">Creating a filesystem</A></H2> +<A NAME="secmkfs"> </A> +<P> + Filesystems are created, i.e., initialized, with the <tt>mkfs</tt><A NAME="1563"> </A> + command. There is actually a separate program for each filesystem + type. <tt>mkfs</tt><A NAME="1565"> </A> is just a front end that runs the appropriate + program depending on the desired filesystem type. The type is + selected with the <tt>-t fstype</tt> option. +<P> + The programs called by <tt>mkfs</tt><A NAME="1567"> </A> have slightly different + command line interfaces. + The common and most important options are summarized below; see + the manual pages for more. + <BLOCKQUOTE> <DL ><DT><STRONG><TT>-t</TT> <I>fstype</I></STRONG> +<DD> Select the type of the filesystem. + <DT><STRONG><TT>-c</TT></STRONG> +<DD> Search for bad blocks and initialize the bad + block list accordingly. + <DT><STRONG><TT>-l</TT> <I>filename</I></STRONG> +<DD> Read the initial bad block list + from the file <I>filename</I>. +<P> +</DL></BLOCKQUOTE> + To create an ext2 filesystem on a floppy, one would give the + following commands: + <BLOCKQUOTE> <TT> +<code>$</code> <I>fdformat -n /dev/fd0H1440 </I> <BR> +<code>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</code> <BR> +<code>Formatting ... done</code> <BR> +<code>$</code> <I>badblocks /dev/fd0H1440 1440 > bad-blocks</I> <BR> +<code>$</code> <I>mkfs -t ext2 -l bad-blocks /dev/fd0H1440</I> <BR> +<code>mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10</code> <BR> +<code>360 inodes, 1440 blocks</code> <BR> +<code>72 blocks (5.00%) reserved for the super user</code> <BR> +<code>First data block=1</code> <BR> +<code>Block size=1024 (log=0)</code> <BR> +<code>Fragment size=1024 (log=0)</code> <BR> +<code>1 block group</code> <BR> +<code>8192 blocks per group, 8192 fragments per group</code> <BR> +<code>360 inodes per group</code> <BR> +<code></code><BR> +<code>Writing inode tables: done </code> <BR> +<code>Writing superblocks and filesystem accounting information: done</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + First, the floppy was formatted (the <tt>-n</tt> option prevents + validation, i.e., bad block checking). Then bad blocks were + searched with <tt>badblocks</tt><A NAME="1569"> </A>, with the output redirected to + a file, <tt>bad-blocks</tt>. Finally, the filesystem was created, + with the bad block list initialized by whatever <tt>badblocks</tt><A NAME="1571"> </A> + found. +<P> + The <TT>-c</TT> option could have been used with <tt>mkfs</tt><A NAME="1573"> </A> + instead of <tt>badblocks</tt><A NAME="1575"> </A> and a separate file. The example + below does that. + <BLOCKQUOTE> <TT> +<code>$</code> <I>mkfs -t ext2 -c /dev/fd0H1440</I> <BR> +<code>mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10</code> <BR> +<code>360 inodes, 1440 blocks</code> <BR> +<code>72 blocks (5.00%) reserved for the super user</code> <BR> +<code>First data block=1</code> <BR> +<code>Block size=1024 (log=0)</code> <BR> +<code>Fragment size=1024 (log=0)</code> <BR> +<code>1 block group</code> <BR> +<code>8192 blocks per group, 8192 fragments per group</code> <BR> +<code>360 inodes per group</code> <BR> +<code> </code> <BR> +<code>Checking for bad blocks (read-only test): done</code> <BR> +<code>Writing inode tables: done </code> <BR> +<code>Writing superblocks and filesystem accounting information: done</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + The <TT>-c</TT> is more convenient than a separate use of + <tt>badblocks</tt><A NAME="1577"> </A>, but <tt>badblocks</tt><A NAME="1579"> </A> is necessary for checking + after the filesystem has been created. +<P> + The process to prepare filesystems on hard disks or partitions + is the same as for floppies, except that the formatting isn't needed. +<P> +<HR><A NAME="tex2html885" HREF="node46.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html883" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html877" HREF="node44.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html887" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html888" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html886" HREF="node46.html">Mounting and unmounting</A> +<B>Up:</B> <A NAME="tex2html884" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html878" HREF="node44.html">Which filesystem should be </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node46.html b/sag-0.6.1-www/Invisible/sag-0.6/node46.html new file mode 100644 index 0000000..04e96e1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node46.html @@ -0,0 +1,221 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Mounting and unmounting</TITLE> +<META NAME="description" CONTENT="Mounting and unmounting"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html897" HREF="node47.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html895" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html889" HREF="node45.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html899" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html900" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html898" HREF="node47.html">Checking filesystem integrity with </A> +<B>Up:</B> <A NAME="tex2html896" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html890" HREF="node45.html">Creating a filesystem</A> +<BR> <P> +<H2><A NAME="SECTION00585000000000000000">Mounting and unmounting</A></H2> +<A NAME="subsecmount"> </A> +<P> + Before one can use a filesystem, it has to be <b>mounted</b>. + The operating system then does various bookkeeping things to + make sure that everything works. Since all files in UNIX are + in a single directory tree, the mount operation will make it + look like the contents of the new filesystem are the contents of + an existing subdirectory in some already mounted filesystem. +<P> + For example, figure <A HREF="node46.html#fighdmountroot">4.3</A> shows three + separate filesystems, each with their own root directory. + When the last two filesystems are mounted below <tt>/home</tt><A NAME="1582"> </A> + and <tt>/usr</tt><A NAME="1584"> </A>, respectively, on the first filesystem, we + can get a single directory tree, as in + figure <A HREF="node46.html#fighdmountall">4.4</A>. +<P> + <P><A NAME="1230"> </A><A NAME="fighdmountroot"> </A><IMG WIDTH=680 HEIGHT=99 ALIGN=BOTTOM ALT="figure1226" SRC="img7.gif"><BR> +<STRONG>Figure 4.3:</STRONG> Three separate filesystems.<BR> +<P> +<P> + <P><A NAME="1430"> </A><A NAME="fighdmountall"> </A><IMG WIDTH=371 HEIGHT=185 ALIGN=BOTTOM ALT="figure1233" SRC="img8.gif"><BR> +<STRONG>Figure 4.4:</STRONG> <tt>/home</tt><A NAME="1586"> </A> and <tt>/usr</tt><A NAME="1588"> </A> have been mounted.<BR> +<P> +<P> + The mounts could be done as in the following example: + <BLOCKQUOTE> <TT> +<code>$ </code> <I>mount /dev/hda2 /home</I> <BR> +<code>$ </code> <I>mount /dev/hda3 /usr</I> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + The <tt>mount</tt><A NAME="1590"> </A> command takes two arguments. The first one is + the device file corresponding to the disk or partition containing + the filesystem. The second one is the directory below which it + will be mounted. After these commands the contents of + the two filesystems look just like the contents of the <tt>/home</tt><A NAME="1592"> </A> + and <tt>/usr</tt><A NAME="1594"> </A> directories, respectively. One would then say that + ``<tt>/dev/hda2</tt><A NAME="1596"> </A> <b>is mounted on</b> <tt>/home</tt><A NAME="1599"> </A>'', and similarly + for <tt>/usr</tt><A NAME="1601"> </A>. To look at either filesystem, one would look + at the contents of the directory on which it has been mounted, + just as if it were any other directory. Note the + difference between the device file, <tt>/dev/hda2</tt><A NAME="1603"> </A>, and the + mounted-on directory, <tt>/home</tt><A NAME="1605"> </A>. The device file gives access + to the raw contents of the disk, the mounted-on directory + gives access to the files on the disk. The mounted-on directory + is called the <b>mount point</b>. +<P> + Linux supports many filesystem types. <tt>mount</tt><A NAME="1608"> </A> tries to + guess the type of the filesystem. You can also use the + <TT>-t <I>fstype</TT></I> option to specify the type directly; + this is sometimes necessary, since the heuristics <tt>mount</tt><A NAME="1610"> </A> + uses do not always work. For example, to mount an MS-DOS + floppy, you could use the following command: + <BLOCKQUOTE> <TT> +<code>$ </code> <I>mount -t msdos /dev/fd0 /floppy</I> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + The mounted-on directory need not be empty, although it must + exist. Any files in it, + however, will be inaccessible by name while the filesystem + is mounted. (Any files that have already been opened will + still be accessible. Files that have hard links from + other directories can be accessed using those names.) + There is no harm done with this, and it can even be useful. + For instance, some people like to have <tt>/tmp</tt><A NAME="1612"> </A> and <tt>/var/tmp</tt><A NAME="1614"> </A> + synonymous, and make <tt>/tmp</tt><A NAME="1616"> </A> be a symbolic link to <tt>/var/tmp</tt><A NAME="1618"> </A>. + When the system is booted, before the <tt>/usr</tt><A NAME="1620"> </A> filesystem is + mounted, a <tt>/var/tmp</tt><A NAME="1622"> </A> directory residing on the root filesystem + is used instead. When <tt>/usr</tt><A NAME="1624"> </A> is mounted, it will make the + <tt>/var/tmp</tt><A NAME="1626"> </A> directory on the root filesystem inaccessible. + If <tt>/var/tmp</tt><A NAME="1628"> </A> didn't exist on the root filesystem, it would + be impossible to use temporary files before mounting <tt>/var</tt><A NAME="1630"> </A>. +<P> + If you don't intend to write anything to the filesystem, use + the <TT>-r</TT> switch for <tt>mount</tt><A NAME="1632"> </A> to do a <b>readonly + mount</b>. This will make the kernel stop any attempts at + writing to the filesystem, and will also stop the kernel from + updating file access times in the inodes. Read-only mounts + are necessary for unwritable media, e.g., CD-ROM's. +<P> + The alert reader has already noticed a slight + logistical problem. How is the first filesystem (called the <b>root + filesystem</b>, because it contains the root directory) mounted, + since it obviously can't be mounted on another filesystem? + Well, the answer is that it is done by magic.<A NAME="tex2html22" HREF="footnode.html#1275"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> The root filesystem is magically mounted at boot time, + and one can rely on it to always be mounted--if the root + filesystem can't be mounted, the system does not boot. The + name of the filesystem that is magically mounted as root is + either compiled into the kernel, or set using LILO or <tt>rdev</tt><A NAME="1636"> </A>. +<P> + The root filesystem is usually first mounted readonly. The + startup scripts will then run <tt>fsck</tt><A NAME="1638"> </A> to verify its + validity, and if there are no problems, they will <b>re-mount</b> + it so that writes will also be allowed. <tt>fsck</tt><A NAME="1641"> </A> must not + be run on a mounted filesystem, since any changes to the + filesystem while <tt>fsck</tt><A NAME="1643"> </A> is running <EM>will</EM> cause + trouble. Since the root filesystem + is mounted readonly while it is being checked, <tt>fsck</tt><A NAME="1645"> </A> + can fix any problems without worry, since the remount operation + will flush any metadata that the filesystem keeps in memory. +<P> + On many systems there are other filesystems that should also + be mounted automatically at boot time. These are specified + in the <tt>/etc/fstab</tt><A NAME="1647"> </A> file; see the <em>fstab</em><A NAME="1649"> </A> man page for + details on the + format. The details of exactly when the extra filesystems + are mounted depend on many factors, and can be configured + by each administrator if need be. When the chapter on booting + is finished, you may read all about it there. +<P> + When a filesystem no longer needs to be mounted, it can be + unmounted with <tt>umount</tt><A NAME="1651"> </A><A NAME="tex2html23" HREF="footnode.html#1431"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A>. <tt>umount</tt><A NAME="1655"> </A> takes one argument: + either the device file or the mount point. + For example, to unmount the directories of + the previous example, one could use the commands + <BLOCKQUOTE> <TT> +<code>$ </code> <I>umount /dev/hda2 </I> <BR> +<code>$ </code> <I>umount /usr</I> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + See the man page for further instructions on how to use the + command. It is imperative that you always unmount a mounted + floppy. <EM>Don't just pop the floppy out of the drive!</EM> + Because of disk caching, the data is not necessarily written + to the floppy until you unmount it, so removing the floppy + from the drive too early might cause the contents to become + garbled. If you only read from the floppy, this is not very + likely, but if you write, even accidentally, the result may be + catastrophic. +<P> + Mounting and unmounting requires super user privileges, i.e., + only <tt>root</tt><A NAME="1657"> </A> can do it. The reason for this is that if any + user can mount a floppy on any directory, then it is rather easy + to create a floppy with, say, a Trojan horse disguised as + <tt>/bin/sh</tt><A NAME="1659"> </A>, or any other often used program. However, it is + often necessary to allow users to use floppies, and there are + several ways to do this: + <UL> +<LI> Give the users the <tt>root</tt><A NAME="1661"> </A> password. This is obviously + bad security, but is the easiest solution. It works + well if there is no need for security anyway, which is + the case on many non-networked, personal systems. +<LI> Use a program such as <tt>sudo</tt><A NAME="1663"> </A> to allow users to + use mount. This is still bad security, but doesn't + directly give super user privileges to + everyone.<A NAME="tex2html21" HREF="footnode.html#1299"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<LI> Make the users use <tt>mtools</tt><A NAME="1665"> </A>, a package for manipulating + MS-DOS filesystems, without mounting them. This works + well if MS-DOS floppies are all that is needed, + but is rather awkward otherwise. +<LI> List the floppy devices and their allowable mount points + together with the suitable options in <tt>/etc/fstab</tt><A NAME="1667"> </A>. + </UL> + The last alternative can be implemented by adding a line like + the following to the <tt>/etc/fstab</tt><A NAME="1669"> </A> file: + <BLOCKQUOTE> <TT> +/dev/fd0 /floppy msdos user,noauto 0 0 + </TT></BLOCKQUOTE> + The columns are: device file to mount, directory to mount on, + filesystem type, options, backup frequency (used by <tt>dump</tt><A NAME="1671"> </A>), + and <tt>fsck</tt><A NAME="1673"> </A> pass number (to specify the order in which + filesystems should be checked upon boot; 0 means no check). +<P> + The <tt>noauto</tt> option stops this mount to be done + automatically when the system is started (i.e., it stops + <tt>mount -a</tt><A NAME="1675"> </A> from mounting it). The <tt>user</tt> option + allows any user to mount the filesystem, and, because of security + reasons, disallows execution of programs (normal or setuid) + and interpretation of device files from the mounted filesystem. + After this, any user can mount a floppy with an <tt>msdos</tt> + filesystem with the following command: + <BLOCKQUOTE> <TT> +<code>$ </code> <I>mount /floppy</I> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + The floppy can (and needs to, of course) be unmounted with + the corresponding <tt>umount</tt><A NAME="1677"> </A> command. +<P> + If you want to provide access to several types of floppies, + you need to give several mount points. The settings can be + different for each mount point. For example, to give access + to both MS-DOS and ext2 floppies, you could have the following + to lines in <tt>/etc/fstab</tt><A NAME="1679"> </A>: + <BLOCKQUOTE> + <PRE>/dev/fd0 /dosfloppy msdos user,noauto 0 0 +/dev/fd0 /ext2floppy ext2 user,noauto 0 0</PRE> + </BLOCKQUOTE> + For MS-DOS filesystems (not just floppies), you probably want to + restrict access to it by using the <tt>uid</tt>, <tt>gid</tt>, + and <tt>umask</tt><A NAME="1681"> </A> filesystem options, described in detail on the + <em>mount</em><A NAME="1683"> </A> manual page. If you aren't careful, mounting + an MS-DOS filesystem gives everyone at least read access to the + files in it, which is not a good idea. +<P> +<HR><A NAME="tex2html897" HREF="node47.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html895" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html889" HREF="node45.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html899" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html900" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html898" HREF="node47.html">Checking filesystem integrity with </A> +<B>Up:</B> <A NAME="tex2html896" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html890" HREF="node45.html">Creating a filesystem</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node47.html b/sag-0.6.1-www/Invisible/sag-0.6/node47.html new file mode 100644 index 0000000..5fce368 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node47.html @@ -0,0 +1,86 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Checking filesystem integrity with fsck</TITLE> +<META NAME="description" CONTENT="Checking filesystem integrity with fsck"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html909" HREF="node48.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html907" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html901" HREF="node46.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html911" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html912" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html910" HREF="node48.html">Checking for disk errors </A> +<B>Up:</B> <A NAME="tex2html908" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html902" HREF="node46.html">Mounting and unmounting</A> +<BR> <P> +<A NAME="1685"> </A><H2><A NAME="SECTION00586000000000000000">Checking filesystem integrity with <tt>fsck</tt></A></H2> +<P> + Filesystems are complex creatures, and as such, they tend to be + somewhat error-prone. A filesystem's correctness and validity + can be checked using the <tt>fsck</tt><A NAME="1687"> </A> command. It can be + instructed to repair any minor problems it finds, and to + alert the user if there any unrepairable problems. Fortunately, + the code to implement filesystems is debugged quite + effectively, so there are seldom any problems at all, and they + are usually caused by power failures, failing hardware, or + operator errors; for example, by not shutting down the system + properly. +<P> + Most systems are setup to run <tt>fsck</tt><A NAME="1689"> </A> automatically at + boot time, so that any errors are detected (and hopefully + corrected) before the system is used. Use of a corrupted + filesystem tends to make things worse: if the data structures + are messed up, using the filesystem will probably mess them + up even more, resulting in more data loss. However, + <tt>fsck</tt><A NAME="1691"> </A> can take a while to run on big filesystems, and + since errors almost never occur if the system has been shut + down properly, a couple of tricks are used to avoid doing the + checks in such cases. The first is that if the file <tt>/etc/fastboot</tt><A NAME="1693"> </A> + exists, no checks are made. The second is that the ext2 filesystem + has a special marker in its superblock that tells whether + the filesystem was unmounted properly after the previous mount. + This allows <tt>e2fsck</tt><A NAME="1695"> </A> (the version of <tt>fsck</tt><A NAME="1697"> </A> for + the ext2 filesystem) to avoid checking the filesystem if + the flag indicates that the unmount was done (the assumption + being that a proper unmount indicates no problems). Whether + the <tt>/etc/fastboot</tt><A NAME="1699"> </A> trick works on your system depends on + your startup scripts, but the ext2 trick works every time + you use <tt>e2fsck</tt><A NAME="1701"> </A>--it has to be explicitly bypassed with + an option to <tt>e2fsck</tt><A NAME="1703"> </A> to be avoided. (See the <em>e2fsck</em><A NAME="1705"> </A> + man page for details on how.) +<P> + The automatic checking only works for the filesystems that are + mounted automatically at boot time. Use <tt>fsck</tt><A NAME="1707"> </A> manually + to check other filesystems, e.g., floppies. +<P> + If <tt>fsck</tt><A NAME="1709"> </A> finds unrepairable problems, you need either + in-depth knowlege of how filesystems work in general, + and the type of the corrupt filesystem in particular, or + good backups. The latter is easy (although sometimes tedious) + to arrange, the former can sometimes be arranged via a friend, + the Linux newsgroups and mailing lists, + or some other source of support, if you don't have the + know-how yourself. I'd like to tell you more + about it, but my lack of education and experience in this regard + hinders me. The <tt>debugfs</tt><A NAME="1711"> </A> program by Theodore T'so + should be useful. +<P> + <tt>fsck</tt><A NAME="1713"> </A> must only be run on unmounted filesystems, never on + mounted filesystems (with the exception of the read-only root + during startup). This is because it accesses the raw + disk, and can therefore modify the filesystem without the + operating system realizing it. There <em>will</em> be trouble, + if the operating system is confused. +<P> +<HR><A NAME="tex2html909" HREF="node48.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html907" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html901" HREF="node46.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html911" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html912" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html910" HREF="node48.html">Checking for disk errors </A> +<B>Up:</B> <A NAME="tex2html908" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html902" HREF="node46.html">Mounting and unmounting</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node48.html b/sag-0.6.1-www/Invisible/sag-0.6/node48.html new file mode 100644 index 0000000..bb507ee --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node48.html @@ -0,0 +1,52 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Checking for disk errors with badblocks</TITLE> +<META NAME="description" CONTENT="Checking for disk errors with badblocks"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html921" HREF="node49.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html919" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html913" HREF="node47.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html923" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html924" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html922" HREF="node49.html">Fighting fragmentation</A> +<B>Up:</B> <A NAME="tex2html920" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html914" HREF="node47.html">Checking filesystem integrity with </A> +<BR> <P> +<A NAME="1715"> </A><H2><A NAME="SECTION00587000000000000000">Checking for disk errors with <tt>badblocks</tt></A></H2> +<P> + It can be a good idea to periodically check for bad blocks. + This is done with the <tt>badblocks</tt><A NAME="1717"> </A> command. It outputs + a list of the numbers of all bad blocks it can find. This list + can be fed to <tt>fsck</tt><A NAME="1719"> </A> to be recorded + in the filesystem data structures so that the operating system + won't try to use the bad blocks for storing data. + The following example will show how this could be done. + <BLOCKQUOTE> <TT> +<code>$</code> <I>badblocks /dev/fd0H1440 1440 > bad-blocks </I> <BR> +<code>$</code> <I>fsck -t ext2 -l bad-blocks /dev/fd0H1440</I> <BR> +<code>Parallelizing fsck version 0.5a (5-Apr-94)</code> <BR> +<code>e2fsck 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10</code> <BR> +<code>Pass 1: Checking inodes, blocks, and sizes</code> <BR> +<code>Pass 2: Checking directory structure</code> <BR> +<code>Pass 3: Checking directory connectivity</code> <BR> +<code>Pass 4: Check reference counts.</code> <BR> +<code>Pass 5: Checking group summary information.</code> <BR> +<code> </code> <BR> +<code>/dev/fd0H1440: ***** FILE SYSTEM WAS MODIFIED *****</code> <BR> +<code>/dev/fd0H1440: 11/360 files, 63/1440 blocks</code> <BR> +<code>$ </code> + </TT></BLOCKQUOTE> + If badblocks reports a block that was already used, <tt>e2fsck</tt><A NAME="1721"> </A> + will try to move the block to another place. If the block was really + bad, not just marginal, the contents of the file may be corrupted. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node49.html b/sag-0.6.1-www/Invisible/sag-0.6/node49.html new file mode 100644 index 0000000..190bc21 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node49.html @@ -0,0 +1,50 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Fighting fragmentation</TITLE> +<META NAME="description" CONTENT="Fighting fragmentation"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html933" HREF="node50.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html931" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html925" HREF="node48.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html935" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html936" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html934" HREF="node50.html">Other tools for all </A> +<B>Up:</B> <A NAME="tex2html932" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html926" HREF="node48.html">Checking for disk errors </A> +<BR> <P> +<H2><A NAME="SECTION00588000000000000000">Fighting fragmentation</A></H2> +<P> + When a file is written to disk, it can't always be written + in consecutive blocks. A file that is not stored in + consecutive blocks is <b>fragmented</b>. It takes longer + to read a fragmented file, since the disk's read-write head + will have to move more. It is desireable to avoid fragmentation, + although it is less of a problem in a system with a good buffer + cache with read-ahead. +<P> + The ext2 filesystem attempts to keep fragmentation at a minimum, + by keeping all blocks in a file close together, even if they + can't be stored in consecutive sectors. Ext2 effectively always + allocates the free block that is nearest to other blocks in a file. + For ext2, it is therefore seldom necessary to worry about + fragmentation. There is a program for defragmenting an ext2 + filesystem, see [<A HREF="node113.html#ext2-defrag">TV</A>] in the bibliography. +<P> + There are many MS-DOS defragmentation programs that move blocks + around in the filesystem to remove fragmentation. For other + filesystems, defragmentation must be done by backing up the + filesystem, re-creating it, and restoring the files from backups. + Backing up a filesystem before defragmening is a good idea + for all filesystems, since many things can go wrong during + the defragmentation. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node5.html b/sag-0.6.1-www/Invisible/sag-0.6/node5.html new file mode 100644 index 0000000..c433b5a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node5.html @@ -0,0 +1,61 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Overview of a Linux System</TITLE> +<META NAME="description" CONTENT="Overview of a Linux System"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html337" HREF="node6.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html335" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html329" HREF="node4.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html339" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html340" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html338" HREF="node6.html">Various parts of an </A> +<B>Up:</B> <A NAME="tex2html336" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html330" HREF="node4.html">The Linux Documentation Project</A> +<BR> <P> +<H1><A NAME="SECTION00300000000000000000">Overview of a Linux System</A></H1> +<P> +<A NAME="chapoverview"> </A> +<P> + <P> +<I> + God looked over everything he had made,<BR> + and saw that it was very good.<BR> + Genesis 1:31 <BR> + </I><P> +<P> + This chapter gives an overview of a Linux system. First, the major + services provided by the operating system are described. Then, + the programs that implement these services are described with a + considerable lack of detail. The + purpose of this chapter is to give an understanding of the + system as a whole, so that each part is described in detail elsewhere. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html341" HREF="node6.html#SECTION00310000000000000000">Various parts of an operating system</A> +<LI> <A NAME="tex2html342" HREF="node7.html#SECTION00320000000000000000">Important parts of the kernel</A> +<LI> <A NAME="tex2html343" HREF="node8.html#SECTION00330000000000000000">Major services in a UNIX system</A> +<UL> +<LI> <A NAME="tex2html344" HREF="node9.html#SECTION00331000000000000000"><tt>init</tt></A> +<LI> <A NAME="tex2html345" HREF="node10.html#SECTION00332000000000000000">Logins from terminals</A> +<LI> <A NAME="tex2html346" HREF="node11.html#SECTION00333000000000000000">Syslog</A> +<LI> <A NAME="tex2html347" HREF="node12.html#SECTION00334000000000000000">Periodic command execution: <tt>cron</tt> and <tt>at</tt></A> +<LI> <A NAME="tex2html348" HREF="node13.html#SECTION00335000000000000000">Graphical user interface</A> +<LI> <A NAME="tex2html349" HREF="node14.html#SECTION00336000000000000000">Networking</A> +<LI> <A NAME="tex2html350" HREF="node15.html#SECTION00337000000000000000">Network logins</A> +<LI> <A NAME="tex2html351" HREF="node16.html#SECTION00338000000000000000">Network file systems</A> +<LI> <A NAME="tex2html352" HREF="node17.html#SECTION00339000000000000000">Mail</A> +<LI> <A NAME="tex2html353" HREF="node18.html#SECTION003310000000000000000">Printing</A> +</UL> +<LI> <A NAME="tex2html354" HREF="node19.html#SECTION00340000000000000000">The filesystem layout</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node50.html b/sag-0.6.1-www/Invisible/sag-0.6/node50.html new file mode 100644 index 0000000..2a4b7f6 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node50.html @@ -0,0 +1,40 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Other tools for all filesystems</TITLE> +<META NAME="description" CONTENT="Other tools for all filesystems"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html945" HREF="node51.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html943" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html937" HREF="node49.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html947" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html948" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html946" HREF="node51.html">Other tools for the </A> +<B>Up:</B> <A NAME="tex2html944" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html938" HREF="node49.html">Fighting fragmentation</A> +<BR> <P> +<H2><A NAME="SECTION00589000000000000000">Other tools for all filesystems</A></H2> +<P> + Some other tools are also useful for managing filesystems. + <tt>df</tt><A NAME="1724"> </A> shows the free disk space on one or more filesystems; + <tt>du</tt><A NAME="1726"> </A> shows how much disk space a directory and all its + files contain. These can be used to hunt down disk space + wasters. +<P> + <tt>sync</tt><A NAME="1728"> </A> forces all unwritten blocks in the buffer cache + (see section <A HREF="node65.html#secbuffercache">5.6</A>) to be written to disk. + It is seldom necessary to do this by hand; the daemon process + <tt>update</tt><A NAME="1730"> </A> does this automatically. It can be useful in + catastrophies, for example if <tt>update</tt><A NAME="1732"> </A> or its helper process + <tt>bdflush</tt><A NAME="1734"> </A> dies, or if you must turn off power <tt>now</tt><A NAME="1736"> </A> and + can't wait for <tt>update</tt><A NAME="1738"> </A> to run. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node51.html b/sag-0.6.1-www/Invisible/sag-0.6/node51.html new file mode 100644 index 0000000..e09dc53 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node51.html @@ -0,0 +1,80 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Other tools for the ext2 filesystem</TITLE> +<META NAME="description" CONTENT="Other tools for the ext2 filesystem"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html955" HREF="node52.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html953" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html949" HREF="node50.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html957" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html958" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html956" HREF="node52.html">Disks without filesystems</A> +<B>Up:</B> <A NAME="tex2html954" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html950" HREF="node50.html">Other tools for all </A> +<BR> <P> +<H2><A NAME="SECTION005810000000000000000">Other tools for the ext2 filesystem</A></H2> +<P> + In addition to the filesystem creator (<tt>mke2fs</tt><A NAME="1740"> </A>) and + checker (<tt>e2fsck</tt><A NAME="1742"> </A>) accessible directly or via the + filesystem type independent front ends, the ext2 + filesystem has some additional tools that can be useful. +<P> + <tt>tune2fs</tt><A NAME="1744"> </A> adjusts filesystem parameters. Some of the + more interesting parameters are: + <UL> +<LI> A maximal mount count. <tt>e2fsck</tt><A NAME="1746"> </A> enforces a check when + filesystem has been mounted too many times, even if + the clean flag is set. For a system that is used for + developing or testing the system, it might be a good + idea to reduce this limit. +<LI> A maximal time between checks. <tt>e2fsck</tt><A NAME="1748"> </A> can also enforce + a maximal time between two checks, even if the clean + flag is set, and the filesystem hasn't been mounted very + often. This can be disabled, however. +<LI> Number of blocks reserved for <tt>root</tt>. Ext2 + reserves some blocks for <tt>root</tt> so that if the + filesystem fills up, it is still possible to do system + administration without having to delete anything. The + reserved amount is by default 5%, which on most disks + isn't enough to be wasteful. However, for floppies there + is no point in reserving any blocks. + </UL> + See the <em>tune2fs</em><A NAME="1750"> </A> manual page for more information. +<P> + <tt>dumpe2fs</tt><A NAME="1752"> </A> shows information about an ext2 filesystem, mostly + from the superblock. Figure <A HREF="node51.html#figdumpe2fsoutput">4.5</A> shows + a sample output. Some of the information in the output is + technical and requires understanding of how the filesystem + works (see appendix <A HREF="#chapext2fspaper"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>), but much of + it is readily understandable even for layadmins. +<P> +<P><A NAME="1434"> </A><A NAME="figdumpe2fsoutput"> </A><IMG WIDTH=421 HEIGHT=569 ALIGN=BOTTOM ALT="figure1374" SRC="img9.gif"><BR> +<STRONG>Figure 4.5:</STRONG> Sample output from <tt>dumpe2fs</tt><A NAME="1754"> </A><BR> +<P> +<P> + <tt>debugfs</tt><A NAME="1756"> </A> is a filesystem debugger. It allows direct + access to the filesystem data structures stored on disk and + can thus be used to repair a disk that is so broken that + <tt>fsck</tt><A NAME="1758"> </A> can't fix it automatically. It has also been known + to be used to recover deleted files. However, <tt>debugfs</tt><A NAME="1760"> </A> + very much requires that you understand what you're doing; + a failure to understand can destroy all your data. +<P> + <tt>dump</tt><A NAME="1762"> </A> and <tt>restore</tt><A NAME="1764"> </A> can be used to back up an + ext2 filesystem. They are ext2 specific versions of the + traditional UNIX backup tools. See chapter <A HREF="node96.html#chapbackups">10</A> + for more information on backups. +<P> +<HR><A NAME="tex2html955" HREF="node52.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html953" HREF="node41.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html949" HREF="node50.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html957" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html958" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html956" HREF="node52.html">Disks without filesystems</A> +<B>Up:</B> <A NAME="tex2html954" HREF="node41.html">Filesystems</A> +<B> Previous:</B> <A NAME="tex2html950" HREF="node50.html">Other tools for all </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node52.html b/sag-0.6.1-www/Invisible/sag-0.6/node52.html new file mode 100644 index 0000000..2938b1b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node52.html @@ -0,0 +1,61 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Disks without filesystems</TITLE> +<META NAME="description" CONTENT="Disks without filesystems"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html967" HREF="node53.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html965" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html959" HREF="node51.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html969" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html970" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html968" HREF="node53.html">Allocating disk space</A> +<B>Up:</B> <A NAME="tex2html966" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html960" HREF="node51.html">Other tools for the </A> +<BR> <P> +<H1><A NAME="SECTION00590000000000000000">Disks without filesystems</A></H1> +<P> + Not all disks or partitions are used as filesystems. A swap + partition, for example, will not have a filesystem on it. Many + floppies are used in a tape-drive emulating fashion, so that + a <tt>tar</tt><A NAME="1766"> </A> or other file is written directly on the raw disk, + without a filesystem. Linux boot floppies don't contain a + filesystem, only the raw kernel. +<P> + Avoiding a filesystem has the advantage of making more of the + disk usable, since a filesystem always has some bookkeeping + overhead. It also makes the disks more easily compatible with + other systems: for example, the <tt>tar</tt><A NAME="1768"> </A> file format is the same + on all systems, while filesystems are different on most systems. + You will quickly get used to disks without filesystems if you + need them. Bootable Linux floppies also do not necessarily have + a filesystem, although that is also possible. +<P> + One reason to use raw disks is to make image copies of them. + For instance, if the disk contains a partially damaged filesystem, + it is a good idea to make an exact copy of it before trying to + fix it, since then you can start again if your fixing breaks things + even more. One way to do this is to use <tt>dd</tt><A NAME="1770"> </A>: + <BLOCKQUOTE> <TT> +<code>$</code> <I>dd if=/dev/fd0H1440 of=floppy-image</I> <BR> +<code>2880+0 records in</code> <BR> +<code>2880+0 records out</code> <BR> +<code>$</code> <I>dd if=floppy-image of=/dev/fd0H1440 </I> <BR> +<code>2880+0 records in</code> <BR> +<code>2880+0 records out</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + The first <tt>dd</tt><A NAME="1772"> </A> makes an exact image of the floppy to the file + <tt>floppy-image</tt><A NAME="1774"> </A>, the second one writes the image to the floppy. + (The user has presumably switched the floppy before the second + command. Otherwise the command pair is of doubtful usefulness.) +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node53.html b/sag-0.6.1-www/Invisible/sag-0.6/node53.html new file mode 100644 index 0000000..0897794 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node53.html @@ -0,0 +1,34 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Allocating disk space</TITLE> +<META NAME="description" CONTENT="Allocating disk space"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html977" HREF="node54.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html975" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html971" HREF="node52.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html979" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html980" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html978" HREF="node54.html">Partitioning schemes</A> +<B>Up:</B> <A NAME="tex2html976" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html972" HREF="node52.html">Disks without filesystems</A> +<BR> <P> +<H1><A NAME="SECTION005100000000000000000">Allocating disk space</A></H1> +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html981" HREF="node54.html#SECTION005101000000000000000">Partitioning schemes</A> +<LI> <A NAME="tex2html982" HREF="node55.html#SECTION005102000000000000000">Space requirements</A> +<LI> <A NAME="tex2html983" HREF="node56.html#SECTION005103000000000000000">Examples of hard disk allocation</A> +<LI> <A NAME="tex2html984" HREF="node57.html#SECTION005104000000000000000">Adding more disk space for Linux</A> +<LI> <A NAME="tex2html985" HREF="node58.html#SECTION005105000000000000000">Tips for saving disk space</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node54.html b/sag-0.6.1-www/Invisible/sag-0.6/node54.html new file mode 100644 index 0000000..b4fa706 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node54.html @@ -0,0 +1,78 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Partitioning schemes</TITLE> +<META NAME="description" CONTENT="Partitioning schemes"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html994" HREF="node55.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html992" HREF="node53.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html986" HREF="node53.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html996" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html997" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html995" HREF="node55.html">Space requirements</A> +<B>Up:</B> <A NAME="tex2html993" HREF="node53.html">Allocating disk space</A> +<B> Previous:</B> <A NAME="tex2html987" HREF="node53.html">Allocating disk space</A> +<BR> <P> +<H2><A NAME="SECTION005101000000000000000">Partitioning schemes</A></H2> +<P> + It is not easy to partition a disk in the best possible way. + Worse, there is no universally correct way to + do it; there are too many factors involved. +<P> + The traditional way is to have a (relatively) small root + filesystem, which contains <tt>/bin</tt><A NAME="1776"> </A>, <tt>/etc</tt><A NAME="1778"> </A>, <tt>/dev</tt><A NAME="1780"> </A>, + <tt>/lib</tt><A NAME="1782"> </A>, <tt>/tmp</tt><A NAME="1784"> </A>, and other stuff that is needed to get the + system up and running. This way, the root filesystem (in its + own partition or on its own disk) is all that is needed to bring + up the system. The reasoning is that if the root filesystem is + small and is not heavily used, it is less likely to become + corrupt when the system crashes, and you will therefore find it + easier to fix any problems caused by the crash. Then you create + separate partitions or use separate disks for the directory tree + below <tt>/usr</tt><A NAME="1786"> </A>, the users' home directories (often under + <tt>/home</tt><A NAME="1788"> </A>), and the swap space. Separating the home + directories (with the users' files) in their own partition makes + backups easier, since it is usually not necessary to backup + programs (which reside below <tt>/usr</tt><A NAME="1790"> </A>). In a networked + environment it is also possible to share <tt>/usr</tt><A NAME="1792"> </A> among several + machines (e.g., by using NFS), thereby reducing the total disk + space required by several tens or hundreds of megabytes times + the number of machines. +<P> + The problem with having many partitions is that it splits the + total amount of free disk space into many small pieces. + Nowadays, when disks and (hopefully) operating systems are + more reliable, many people prefer to have just one partition + that holds all their files. On the other hand, it can be less + painful to back up (and restore) a small partition. +<P> + For a small hard disk (assuming you don't do kernel + development), the best way to go is probably to have just one + partition. For large hard disks, it is probably + better to have a few large partitions, just in case + something does go wrong. (Note that `small' and `large' are + used in a relative sense here; your needs for disk space + decide what the threshold is.) +<P> + If you have several disks, you might wish to have the root + filesystem (including <tt>/usr</tt><A NAME="1794"> </A>) on one, and the users' home + directories on another. +<P> + It is a good idea to be prepared to experiment a bit with + different partitioning schemes (over time, not just while + first installing the system). This is a bit of work, since it + essentially requires you to install the system from scratch + several times, but it is the only way to be sure you do it right. +<P> +<HR><A NAME="tex2html994" HREF="node55.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html992" HREF="node53.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html986" HREF="node53.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html996" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html997" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html995" HREF="node55.html">Space requirements</A> +<B>Up:</B> <A NAME="tex2html993" HREF="node53.html">Allocating disk space</A> +<B> Previous:</B> <A NAME="tex2html987" HREF="node53.html">Allocating disk space</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node55.html b/sag-0.6.1-www/Invisible/sag-0.6/node55.html new file mode 100644 index 0000000..ed58c1c --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node55.html @@ -0,0 +1,51 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Space requirements</TITLE> +<META NAME="description" CONTENT="Space requirements"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1006" HREF="node56.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1004" HREF="node53.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html998" HREF="node54.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1008" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1009" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1007" HREF="node56.html">Examples of hard disk </A> +<B>Up:</B> <A NAME="tex2html1005" HREF="node53.html">Allocating disk space</A> +<B> Previous:</B> <A NAME="tex2html999" HREF="node54.html">Partitioning schemes</A> +<BR> <P> +<H2><A NAME="SECTION005102000000000000000">Space requirements</A></H2> +<P> + The Linux distribution you install will give some indication + of how much disk space you need for various configurations. + Programs installed separately may also do the same. This will + help you plan your disk space usage, but you should prepare + for the future and reserve some extra space for things you will + notice later that you need. +<P> + The amount you need for user files depends on what your users + wish to do. Most people seem to need as much space for their + files as possible, but the amount they will live happily with + varies a lot. Some people do only light text processing and + will survive nicely with a few megabytes, others do heavy + image processing and will need gigabytes. +<P> + By the way, when comparing file sizes given in kilobytes or + megabytes and + disk space given in megabytes, it can be important to know that + the two units can be different. Some disk manufacturers like + to pretend that a kilobyte is 1000 bytes and a megabyte is + 1000 kilobytes, while all the rest of the computing world + uses 1024 for both factors. Therefore, my 345 MB hard disk + is really a 330 MB hard disk.<A NAME="tex2html25" HREF="footnode.html#1409"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> + Swap space allocation is discusses in section <A HREF="node64.html#secswapalloc">5.5</A>. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node56.html b/sag-0.6.1-www/Invisible/sag-0.6/node56.html new file mode 100644 index 0000000..6628aeb --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node56.html @@ -0,0 +1,56 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Examples of hard disk allocation</TITLE> +<META NAME="description" CONTENT="Examples of hard disk allocation"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1018" HREF="node57.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1016" HREF="node53.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1010" HREF="node55.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1020" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1021" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1019" HREF="node57.html">Adding more disk space </A> +<B>Up:</B> <A NAME="tex2html1017" HREF="node53.html">Allocating disk space</A> +<B> Previous:</B> <A NAME="tex2html1011" HREF="node55.html">Space requirements</A> +<BR> <P> +<H2><A NAME="SECTION005103000000000000000">Examples of hard disk allocation</A></H2> +<P> + I used to have a 109 MB hard disk. Now I am using a 330 MB + hard disk. I'll explain how and why I partitioned these + disks. +<P> + The 109 MB disk I partitioned in a lot of ways, when my needs + and the operating systems I used changed; I'll explain two + typical scenarios. First, I used to run MS-DOS + together with Linux. For that, I needed about 20 MB of + hard disk, or just enough to have MS-DOS, a C compiler, an + editor, a few other utilities, the program I was working on, + and enough free disk space to not feel claustrophobic. For + Linux, I had a 10 MB swap partition, and the rest, or 79 MB, + was a single partition with all the files I had under + Linux. I experimented with having separate root, + <tt>/usr</tt><A NAME="1796"> </A>, and <tt>/home</tt><A NAME="1798"> </A> partitions, but there was never + enough free disk space in one piece to do much interesting. +<P> + When I didn't need MS-DOS anymore, I repartitioned the disk so + that I had a 12 MB swap partition, and again had the rest as a + single filesystem. +<P> + The 330 MB disk is partitioned into several partitions, like + this: + <BLOCKQUOTE> <BR><IMG WIDTH=189 HEIGHT=102 ALIGN=BOTTOM ALT="tabular1415" SRC="img10.gif"><BR></BLOCKQUOTE> + The scratch partition is for playing around with things that + require their own partition, e.g., trying different Linux + distributions, or comparing speeds of filesystems. When not + needed for anything else, it is used as swap space (I like to + have a <EM>lot</EM> of open windows). +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node57.html b/sag-0.6.1-www/Invisible/sag-0.6/node57.html new file mode 100644 index 0000000..5a56c52 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node57.html @@ -0,0 +1,33 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Adding more disk space for Linux</TITLE> +<META NAME="description" CONTENT="Adding more disk space for Linux"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1030" HREF="node58.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1028" HREF="node53.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1022" HREF="node56.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1032" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1033" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1031" HREF="node58.html">Tips for saving disk </A> +<B>Up:</B> <A NAME="tex2html1029" HREF="node53.html">Allocating disk space</A> +<B> Previous:</B> <A NAME="tex2html1023" HREF="node56.html">Examples of hard disk </A> +<BR> <P> +<H2><A NAME="SECTION005104000000000000000">Adding more disk space for Linux</A></H2> +<P> + Adding more disk space for Linux is easy, at least after the + hardware has been properly installed (the hardware installation is + outside the scope of this book). You format it if necessary, + then create the partitions and filesystem as described above, and + add the proper lines to <tt>/etc/fstab</tt><A NAME="1804"> </A> so that it is mounted + automatically. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node58.html b/sag-0.6.1-www/Invisible/sag-0.6/node58.html new file mode 100644 index 0000000..79fd470 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node58.html @@ -0,0 +1,48 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Tips for saving disk space</TITLE> +<META NAME="description" CONTENT="Tips for saving disk space"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1040" HREF="node59.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1038" HREF="node53.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1034" HREF="node57.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1042" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1043" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1041" HREF="node59.html">Memory Management</A> +<B>Up:</B> <A NAME="tex2html1039" HREF="node53.html">Allocating disk space</A> +<B> Previous:</B> <A NAME="tex2html1035" HREF="node57.html">Adding more disk space </A> +<BR> <P> +<H2><A NAME="SECTION005105000000000000000">Tips for saving disk space</A></H2> +<P> + The best tip for saving disk space is to avoid installing + unnecessary programs. Most Linux distributions have an + option to install only part of the packages they contain, + and by analyzing your needs you might notice that you don't + need most of them. This will help save a lot of disk space, + since many programs are quite large. Even if you do need a + particular package or program, you might not need all of it. + For example, some on-line documentation might be unnecessary, + as might some of the Elisp files for GNU Emacs, some of the + fonts for X11, or some of the libraries for programming. +<P> + If you cannot uninstall packages, you might look into + compression. Compression programs such as <tt>gzip</tt><A NAME="1806"> </A> or + <tt>zip</tt><A NAME="1808"> </A> will compress (and uncompress) individual files + or groups of files. The <tt>gzexe</tt><A NAME="1810"> </A> system will compress and + uncompress programs invisibly to the user (unused programs + are compressed, then uncompressed as they are used). + The experimental <tt>DouBle</tt><A NAME="1812"> </A> system + will compress all files in a filesystem, invisibly to the + programs that use them. (If you are familiar with products + such as Stacker for MS-DOS, the principle is the same.) +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node59.html b/sag-0.6.1-www/Invisible/sag-0.6/node59.html new file mode 100644 index 0000000..05d956f --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node59.html @@ -0,0 +1,49 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Memory Management</TITLE> +<META NAME="description" CONTENT="Memory Management"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1052" HREF="node60.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1050" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1044" HREF="node58.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1054" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1055" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1053" HREF="node60.html">What is virtual memory?</A> +<B>Up:</B> <A NAME="tex2html1051" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1045" HREF="node58.html">Tips for saving disk </A> +<BR> <P> +<H1><A NAME="SECTION00600000000000000000">Memory Management</A></H1> + <A NAME="chapmem"> </A> +<P> + <P> +<I> + Minnet, jag har tappat mitt minne, <BR> + är jag svensk eller finne <BR> + kommer inte ihåg...<BR> + (Bosse Österberg) <BR> + </I><P> +<P> + This section describes the Linux memory management features, + i.e., virtual memory and the disk buffer cache. The purpose and + workings and the things the system administrator needs to take + into consideration are described. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1056" HREF="node60.html#SECTION00610000000000000000">What is virtual memory?</A> +<LI> <A NAME="tex2html1057" HREF="node61.html#SECTION00620000000000000000">Creating a swap space</A> +<LI> <A NAME="tex2html1058" HREF="node62.html#SECTION00630000000000000000">Using a swap space</A> +<LI> <A NAME="tex2html1059" HREF="node63.html#SECTION00640000000000000000">Sharing swap spaces with other operating systems</A> +<LI> <A NAME="tex2html1060" HREF="node64.html#SECTION00650000000000000000">Allocating swap space</A> +<LI> <A NAME="tex2html1061" HREF="node65.html#SECTION00660000000000000000">The buffer cache</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node6.html b/sag-0.6.1-www/Invisible/sag-0.6/node6.html new file mode 100644 index 0000000..2255946 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node6.html @@ -0,0 +1,78 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Various parts of an operating system</TITLE> +<META NAME="description" CONTENT="Various parts of an operating system"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html363" HREF="node7.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html361" HREF="node5.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html355" HREF="node5.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html365" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html366" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html364" HREF="node7.html">Important parts of the </A> +<B>Up:</B> <A NAME="tex2html362" HREF="node5.html">Overview of a Linux </A> +<B> Previous:</B> <A NAME="tex2html356" HREF="node5.html">Overview of a Linux </A> +<BR> <P> +<H1><A NAME="SECTION00310000000000000000">Various parts of an operating system</A></H1> +<P> + A UNIX operating system consists of a <b>kernel</b> and some + <b>system programs</b>. There are also some <b>application + programs</b> for doing work. The kernel is the heart of the operating + system<A NAME="tex2html5" HREF="footnode.html#125"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A>. It keeps track + of files on the disk, starts programs and runs them + concurrently, assigns + memory and other resources to various processes, receives packets + from and sends packets to the network, and so on. The kernel does + very little by itself, but it provides tools with which all + services can be built. It also prevents anyone from accessing + the hardware directly, forcing everyone to use the tools it provides. + This way the kernel provides + some protection for users from each other. The tools provided + by the kernel are used via <b>system calls</b>; see manual page + section 2 for more information on these. +<A NAME="127"> </A> +<A NAME="128"> </A> +<A NAME="129"> </A> +<A NAME="130"> </A> +<A NAME="131"> </A> +<P> + The system programs use the tools provided by the kernel to + implement the various services required from an operating system. + System programs, and all other programs, run `on top of the kernel', + in what is called the <b>user mode</b>. + The difference between system and application programs is one + of intent: applications are intended for getting useful things + done (or for playing, if it happens to be a game), whereas + system programs are needed to get the system working. A word + processor is an application; <tt>telnet</tt><A NAME="305"> </A> is a system program. + The difference is often somewhat blurry, however, and is important + only to compulsive categorizers. +<A NAME="134"> </A> +<P> + An operating system + can also contain compilers and their corresponding libraries (GCC and + the C library in particular under Linux), although not all + programming languages need be part of the operating system. + Documentation, and sometimes even games, can also be part of it. + Traditionally, the operating system has been defined by the + contents of the installation tape or disks; with Linux it is + not as clear since it is spread all over the + FTP sites of the world. +<A NAME="135"> </A> +<A NAME="136"> </A> +<A NAME="137"> </A> +<A NAME="138"> </A> +<A NAME="139"> </A> +<P> +<HR><A NAME="tex2html363" HREF="node7.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html361" HREF="node5.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html355" HREF="node5.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html365" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html366" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html364" HREF="node7.html">Important parts of the </A> +<B>Up:</B> <A NAME="tex2html362" HREF="node5.html">Overview of a Linux </A> +<B> Previous:</B> <A NAME="tex2html356" HREF="node5.html">Overview of a Linux </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node60.html b/sag-0.6.1-www/Invisible/sag-0.6/node60.html new file mode 100644 index 0000000..39ad118 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node60.html @@ -0,0 +1,69 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>What is virtual memory?</TITLE> +<META NAME="description" CONTENT="What is virtual memory?"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1070" HREF="node61.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1068" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1062" HREF="node59.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1072" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1073" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1071" HREF="node61.html">Creating a swap space</A> +<B>Up:</B> <A NAME="tex2html1069" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1063" HREF="node59.html">Memory Management</A> +<BR> <P> +<H1><A NAME="SECTION00610000000000000000">What is virtual memory?</A></H1> +<P> + Linux supports <b>virtual memory</b>, that is, using a + disk as an extension of RAM so that the effective size of + usable memory grows correspondingly. The kernel will write + the contents of a currently unused block of memory to the + hard disk so that the memory can be used for another purpose. + When the original contents are needed again, they are read + back into memory. This is + all made completely transparent to the user; programs running under + Linux only see the larger amount of memory available and + don't notice that parts of them reside on the disk from + time to time. Of course, reading and writing the hard disk is + slower (on the order of a thousand times slower) than using + real memory, so the programs don't run as fast. The part of + the hard disk that is used as virtual memory + is called the <b>swap space</b>. +<P> + Linux can use either a normal file in the filesystem or a + separate partition for swap space. A swap partition is + faster, but it is easier to change the size of a swap file + (there's no need to repartition the whole hard disk, and + possibly install everything from scratch). When you know how + much swap space you need, you should go for a swap partition, + but if you are uncertain, you can use a swap file first, use + the system for a while so that you can get a feel for how much + swap you need, and then make a swap partition when you're + confident about its size. +<P> + You should also know that Linux allows one to use several swap + partitions and/or swap files at the same time. This means + that if you only occasionally need an unusual amount of swap space, + you can set up an extra swap file at such times, instead of + keeping the whole amount allocated all the time. +<P> + A note on operating system terminology: computer science usually + distinguishes between swapping (writing the whole process out to + swap space) and paging (writing only fixed size parts, usually + a few kilobytes, at a time). Paging is usually more efficient, + and that's what Linux does, but traditional Linux terminology + talks about swapping anyway.<A NAME="tex2html26" HREF="footnode.html#1820"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> +<HR><A NAME="tex2html1070" HREF="node61.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1068" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1062" HREF="node59.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1072" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1073" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1071" HREF="node61.html">Creating a swap space</A> +<B>Up:</B> <A NAME="tex2html1069" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1063" HREF="node59.html">Memory Management</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node61.html b/sag-0.6.1-www/Invisible/sag-0.6/node61.html new file mode 100644 index 0000000..5385417 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node61.html @@ -0,0 +1,93 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Creating a swap space</TITLE> +<META NAME="description" CONTENT="Creating a swap space"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1082" HREF="node62.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1080" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1074" HREF="node60.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1084" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1085" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1083" HREF="node62.html">Using a swap space</A> +<B>Up:</B> <A NAME="tex2html1081" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1075" HREF="node60.html">What is virtual memory?</A> +<BR> <P> +<H1><A NAME="SECTION00620000000000000000">Creating a swap space</A></H1> +<P> + A swap file is an ordinary file; it is in no way special to + the kernel. The only thing that matters to the kernel is that + it has no holes, and that it is prepared for use with + <tt>mkswap</tt><A NAME="1891"> </A>. It must reside on a local disk, however; it + can't reside in a filesystem that has been mounted over NFS + due to implementation reasons. +<P> + The bit about holes is important. The swap file + reserves the disk space so that the kernel can quickly swap out + a page without having to go through all the things + that are necessary when allocating a disk sector to a file. + The kernel merely uses any sectors that have already been + allocated to the file. Because a hole in a file means that + there are no disk sectors allocated (for that place in the + file), it is not good for the kernel to try to use them. +<P> + One good way to create the swap file without holes is through + the following command: + <BLOCKQUOTE> <TT> +<code>$</code> <I>dd if=/dev/zero of=/extra-swap bs=1024 count=1024</I><BR> +<code>1024+0 records in</code> <BR> +<code>1024+0 records out</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + where <tt>/extra-swap</tt><A NAME="1893"> </A> is the name of the swap file and + the size of is given after the <tt>count=</tt>. It is best for + the size to be a multiple of 4, because the kernel writes out + <b>memory pages</b>, which are 4 kilobytes in size. If the + size is not a multiple of 4, the last couple of kilobytes may + be unused. +<P> + A swap partition is also not special in any way. You create it + just like any other partition; the only difference is that it is + used as a raw partition, that is, it will not contain any + filesystem at all. It is a good idea to mark swap partitions as + type 82 (Linux swap); this will the make partition listings + clearer, even though it is not strictly necessary to the kernel. +<P> + After you have created a swap file or a swap partition, you + need to write a signature to its beginning; this contains some + administrative information and is used by the kernel. The + command to do this is <tt>mkswap</tt><A NAME="1896"> </A>, used like this: + <BLOCKQUOTE> <TT> +<code>$</code> <I>mkswap /extra-swap 1024</I> <BR> +<code>Setting up swapspace, size = 1044480 bytes</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + Note that the swap space is still not in use yet: it + exists, but the kernel does not use it to provide virtual + memory. +<P> + You should be very careful when using <tt>mkswap</tt><A NAME="1898"> </A>, since it + does not check that the file or partition isn't used for anything + else. <em>You can easily overwrite important files and + partitions with <tt>mkswap</tt><A NAME="1900"> </A>!</em> Fortunately, you should only + need to use <tt>mkswap</tt><A NAME="1902"> </A> when you install your system. +<P> + The Linux memory manager limits the size of each swap space to + about 127 MB (for various technical reasons, the actual limit + is <IMG WIDTH=78 HEIGHT=12 ALIGN=MIDDLE ALT="tex2html_wrap_inline4269" SRC="img11.gif"> bytes, or + 127.6875 megabytes). You can, however, use up to + 16 swap spaces simultaneously, for a total of almost + 2 GB.<A NAME="tex2html27" HREF="footnode.html#1836"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> +<HR><A NAME="tex2html1082" HREF="node62.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1080" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1074" HREF="node60.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1084" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1085" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1083" HREF="node62.html">Using a swap space</A> +<B>Up:</B> <A NAME="tex2html1081" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1075" HREF="node60.html">What is virtual memory?</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node62.html b/sag-0.6.1-www/Invisible/sag-0.6/node62.html new file mode 100644 index 0000000..3cf8f07 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node62.html @@ -0,0 +1,104 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Using a swap space</TITLE> +<META NAME="description" CONTENT="Using a swap space"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1094" HREF="node63.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1092" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1086" HREF="node61.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1096" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1097" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1095" HREF="node63.html">Sharing swap spaces with </A> +<B>Up:</B> <A NAME="tex2html1093" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1087" HREF="node61.html">Creating a swap space</A> +<BR> <P> +<H1><A NAME="SECTION00630000000000000000">Using a swap space</A></H1> +<P> + An initialized swap space is taken into use with <tt>swapon</tt><A NAME="1904"> </A>. + This command tells the kernel that the swap + space can be used. The path to the swap space is given as + the argument, so to start swapping on a temporary swap + file one might use the following command. + <BLOCKQUOTE> <TT> +<code>$</code> <I>swapon /extra-swap</I> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + Swap spaces can be used automatically by listing them in + the <tt>/etc/fstab</tt><A NAME="1906"> </A> file. + <BLOCKQUOTE> <TT> +<code>/dev/hda8 none swap sw 0 0</code> <BR> +<code>/swapfile none swap sw 0 0</code> + </TT></BLOCKQUOTE> + The startup scripts will run + the command <tt>swapon -a</tt>, which will start swapping on + all the swap spaces listed in <tt>/etc/fstab</tt><A NAME="1908"> </A>. Therefore, + the <tt>swapon</tt><A NAME="1910"> </A> command is usually used only when extra swap + is needed. +<P> + You can monitor the use of swap spaces with <tt>free</tt><A NAME="1912"> </A>. + It will tell the total amount of swap space used. + <BLOCKQUOTE> <TT> +<code>$</code> <I>free</I> <BR> +<code> total used free shared buffers</code> <BR> +<code>Mem: 15152 14896 256 12404 2528</code> <BR> +<code>-/+ buffers: 12368 2784</code> <BR> +<code>Swap: 32452 6684 25768</code> <BR> +<code>$</code> + </TT></BLOCKQUOTE> + The first line of output (<code>Mem:</code>) shows the physical memory. + The total column does not show the physical memory used by the + kernel, which is usually about a megabyte. The used column shows + the amount of memory used (the second line does not count buffers). + The free column shows completely unused memory. The shared column shows + the amount of memory shared by several processes; the more, the merrier. + The buffers column shows the current size of the disk buffer cache. +<P> + That last line (<code>Swap:</code>) shows similar information for the swap + spaces. If this line is all zeroes, your swap space is not activated. +<P> + The same information is available via <tt>top</tt><A NAME="1914"> </A>, + or using the <tt>proc</tt> filesystem in file <tt>/proc/meminfo</tt><A NAME="1916"> </A>. + It is + currently difficult to get information on the use of a specific + swap space. +<P> + A swap space can be removed from use with <tt>swapoff</tt><A NAME="1918"> </A>. + It is usually not necessary to do it, except for temporary + swap spaces. + Any pages in use in the swap space are swapped in first; if + there is not sufficient physical memory to hold them, they will + then be swapped out (to some other swap space). + If there is not enough virtual memory to hold all of the pages + Linux will start to thrash; after a long while it should + recover, but meanwhile the system is unusable. You should + check (e.g., with <tt>free</tt><A NAME="1920"> </A>) that there is enough free + memory before removing a swap space from use. +<P> + All the swap spaces that are used automatically with + <tt>swapon -a</tt> can be removed from use with <tt>swapoff -a</tt>; + it looks at the file <tt>/etc/fstab</tt><A NAME="1922"> </A> to find what to remove. + Any manually used swap spaces will remain in use. +<P> + Sometimes a lot of swap space can be in use even though there + is a lot of free physical memory. This can happen for instance + if at one point there is need to swap, but later a big process + that occupied much of the physical memory terminates and + frees the memory. The swapped-out data is not + automatically swapped in until it is needed, so the physical + memory may remain free for a long time. There is no need to + worry about this, but it can be comforting to know what is + happening. +<P> +<HR><A NAME="tex2html1094" HREF="node63.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1092" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1086" HREF="node61.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1096" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1097" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1095" HREF="node63.html">Sharing swap spaces with </A> +<B>Up:</B> <A NAME="tex2html1093" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1087" HREF="node61.html">Creating a swap space</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node63.html b/sag-0.6.1-www/Invisible/sag-0.6/node63.html new file mode 100644 index 0000000..d78f823 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node63.html @@ -0,0 +1,33 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Sharing swap spaces with other operating systems</TITLE> +<META NAME="description" CONTENT="Sharing swap spaces with other operating systems"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1106" HREF="node64.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1104" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1098" HREF="node62.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1108" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1109" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1107" HREF="node64.html">Allocating swap space</A> +<B>Up:</B> <A NAME="tex2html1105" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1099" HREF="node62.html">Using a swap space</A> +<BR> <P> +<H1><A NAME="SECTION00640000000000000000">Sharing swap spaces with other operating systems</A></H1> +<P> + Virtual memory is built into many operating systems. Since they + each need it only when they are running, i.e., never at the same + time, the swap spaces of all but the currently running one are being + wasted. It would be more efficient for them to share a single + swap space. This is possible, but can require a bit of hacking. + The Tips-HOWTO contains some advice on how to implement this. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node64.html b/sag-0.6.1-www/Invisible/sag-0.6/node64.html new file mode 100644 index 0000000..e5bf5af --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node64.html @@ -0,0 +1,111 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Allocating swap space</TITLE> +<META NAME="description" CONTENT="Allocating swap space"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1118" HREF="node65.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1116" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1110" HREF="node63.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1120" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1121" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1119" HREF="node65.html">The buffer cache</A> +<B>Up:</B> <A NAME="tex2html1117" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1111" HREF="node63.html">Sharing swap spaces with </A> +<BR> <P> +<H1><A NAME="SECTION00650000000000000000">Allocating swap space</A></H1> + <A NAME="secswapalloc"> </A> +<P> + Some people will tell you that you should allocate twice as much + swap space as you have physical memory, but this is a bogus rule. + Here's how to do it properly: +<P> + <OL> +<LI> +<P> + Estimate your total memory needs. This is the largest amount of + memory you'll probably need at a time, that is the sum of the + memory requirements of all the programs you want to run at the + same time. This can be done by running at the same time all the + programs you are likely to ever be running at the same time. +<P> + For instance, if you want to run X, you should allocate + about 8 MB for it, gcc wants several megabytes (some + files need an unusually large amount, up to tens of + megabytes, but usually about four should do), and so on. + The kernel will use about a megabyte by itself, and the + usual shells and other small utilities perhaps a few + hundred kilobytes (say a megabyte together). There is + no need to try to be exact, rough estimates are fine, + but you might want to be on the pessimistic side. +<P> + Remember that if there are going to be several people + using the system at the same time, they are all going + to consume memory. However, if two people run the same + program at the same time, the total memory consumption + is usually not double, since code pages and shared + libraries exist only once. +<P> + The <tt>free</tt><A NAME="1924"> </A> and <tt>ps</tt><A NAME="1926"> </A> commands are useful for + estimating the memory needs. +<LI> +<P> + Add some security to the estimate in step 1. This is because + estimates of program sizes will probably be wrong, because + you'll probably forget some programs you want to run, and to + make certain that you have some extra space just in case. A + couple of megabytes should be fine. (It is better to allocate + too much than too little swap space, but there's no need to + over-do it and allocate the whole disk, since unused swap space + is wasted space; see later about adding more swap.) Also, + since it is nicer to deal with even numbers, you can round the + value up to the next full megabyte. +<LI> +<P> + Based on the computations above, you know how much memory + you'll be needing in total. So, in order to allocate + swap space, you just need to subtract the size of your + physical memory from the total memory needed, and you + know how much swap space you need. (On some versions + of UNIX, you need to allocate space for an image of the + physical memory as well, so the amount computed in step + 2 is what you need and you shouldn't do the subtraction.) +<LI> +<P> + If your calculated swap space is very much larger than your + physical memory (more than a couple times larger), you should + probably invest in more physical memory, otherwise performance + will be too low. +<P> + </OL> +<P> + It's a good idea to have at least some swap space, even if + your calculations indicate that you need none. Linux uses + swap space somewhat aggressively, so that as much physical + memory as possible can be kept free. Linux will swap out + memory pages that have not been used, even if the memory + is not yet needed for anything. This avoids waiting for + swapping when it is needed--the swapping can be done + earlier, when the disk is otherwise idle. +<P> + Swap space can be divided among several disks. This + can sometimes improve performance, depending on the + relative speeds of the disks and the access patterns + of the disks. You might want to experiment with a few + schemes, but be aware that doing the experiments + properly is quite difficult. You should not believe + claims that any one scheme is superior to any other, + since it won't always be true. +<P> +<HR><A NAME="tex2html1118" HREF="node65.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1116" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1110" HREF="node63.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1120" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1121" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1119" HREF="node65.html">The buffer cache</A> +<B>Up:</B> <A NAME="tex2html1117" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1111" HREF="node63.html">Sharing swap spaces with </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node65.html b/sag-0.6.1-www/Invisible/sag-0.6/node65.html new file mode 100644 index 0000000..15f0462 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node65.html @@ -0,0 +1,125 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The buffer cache</TITLE> +<META NAME="description" CONTENT="The buffer cache"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1128" HREF="node66.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1126" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1122" HREF="node64.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1130" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1131" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1129" HREF="node66.html">Boots And Shutdowns</A> +<B>Up:</B> <A NAME="tex2html1127" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1123" HREF="node64.html">Allocating swap space</A> +<BR> <P> +<H1><A NAME="SECTION00660000000000000000">The buffer cache</A></H1> +<P> +<A NAME="secbuffercache"> </A> +<P> + Reading from a disk<A NAME="tex2html28" HREF="footnode.html#1869"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> is very slow compared to accessing (real) memory. + In addition, it is common to read the same part of a disk + several times during relatively short periods of time. For + example, one might first read an e-mail message, then read the + letter into an editor when replying to it, then make the mail + program read it again when copying it to a folder. Or, + consider how often the command <tt>ls</tt><A NAME="1928"> </A> might be run on a + system with many users. By reading the information from disk + only once and then keeping it in memory until no longer + needed, one can speed up all but the first read. This is + called <b>disk buffering</b>, and the memory used for the + purpose is called the <b>buffer cache</b>. +<P> + Since memory is, unfortunately, a finite, nay, scarce resource, + the buffer + cache usually cannot be big enough (it can't hold all the data one + ever wants to use). When the cache fills up, the data that + has been unused for the longest time is discarded and the + memory thus freed is used for the new data. +<P> + Disk buffering works for writes as well. On the one hand, + data that is written is often soon read again (e.g., a source + code file is saved to a file, then read by the compiler), so + putting data that is written in the cache is a good idea. On + the other hand, by only putting the data into the cache, not + writing it to disk at once, the program that writes runs + quicker. The writes can then be done in the background, + without slowing down the other programs. +<P> + Most operating systems have buffer caches (although + they might be called something else), but not all + of them work according to the above principles. + Some are <b>write-through</b>: the data is written + to disk at once (it is kept in the cache as well, + of course). The cache is called <b>write-back</b> + if the writes are done at a later time. Write-back is + more efficient than write-through, but also a bit more + prone to errors: if the machine crashes, or the power + is cut at a bad moment, or the floppy is removed from + the disk drive before the data in the cache waiting to + be written gets written, the changes in the cache are + usually lost. This might even mean that the filesystem + (if there is one) is not in full working order, perhaps + because the unwritten data held important changes to + the bookkeeping information. +<P> + Because of this, you should never turn off the + power without using a proper shutdown procedure (see chapter + <A HREF="node66.html#chboothalt">6</A>), or remove a floppy from the disk + drive until it has been unmounted (if it was mounted) + or after whatever program is using it has signaled + that it is finished and the floppy drive light doesn't + shine anymore. The <tt>sync</tt><A NAME="1934"> </A> command <b>flushes</b> + the buffer, i.e., forces all unwritten data to be + written to disk, and can be used when one wants to be + sure that everything is safely written. In traditional + UNIX systems, there is a program called <tt>update</tt><A NAME="1937"> </A> + running in the background which does a <tt>sync</tt><A NAME="1939"> </A> + every 30 seconds, so it is usually not necessary + to use <tt>sync</tt><A NAME="1941"> </A>. Linux has an additional daemon, + <tt>bdflush</tt><A NAME="1943"> </A>, which does a more imperfect sync more + frequently to avoid the sudden freeze due to heavy disk + I/O that <tt>sync</tt><A NAME="1945"> </A> sometimes causes. +<P> + Under Linux, <tt>bdflush</tt><A NAME="1947"> </A> is started by <tt>update</tt><A NAME="1949"> </A>. There is + usually no reason to worry about it, but if <tt>bdflush</tt><A NAME="1951"> </A> happens + to die for some reason, the kernel will warn about this, and you + should start it by hand (<tt>/sbin/update</tt><A NAME="1953"> </A>). +<P> + The cache does not actually buffer files, but blocks, which are + the smallest units of disk I/O (under Linux, they are usually + 1 kB). This way, also directories, super blocks, other + filesystem bookkeeping data, and non-filesystem disks are + cached. +<P> + The effectiveness of a cache is primarily decided by its size. + A small cache is next to useless: it will hold so little data + that all cached data is flushed from the cache before it + is reused. The critical size depends on how much data is read + and written, and how often the same data is accessed. The + only way to know is to experiment. +<P> + If the cache is of a fixed size, it is not very good to have + it too big, either, because that might make the free memory + too small and cause swapping (which is also slow). To make + the most efficient use of real memory, Linux automatically + uses all free RAM for buffer cache, but also automatically + makes the cache smaller when programs need more memory. +<P> + Under Linux, you do not need to do anything to make use of + the cache, it happens completely automatically. Except for + following the proper procedures for shutdown and removing + floppies, you do not need to worry about it. +<P> +<HR><A NAME="tex2html1128" HREF="node66.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1126" HREF="node59.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1122" HREF="node64.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1130" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1131" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1129" HREF="node66.html">Boots And Shutdowns</A> +<B>Up:</B> <A NAME="tex2html1127" HREF="node59.html">Memory Management</A> +<B> Previous:</B> <A NAME="tex2html1123" HREF="node64.html">Allocating swap space</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node66.html b/sag-0.6.1-www/Invisible/sag-0.6/node66.html new file mode 100644 index 0000000..9e6a9ff --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node66.html @@ -0,0 +1,56 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Boots And Shutdowns</TITLE> +<META NAME="description" CONTENT="Boots And Shutdowns"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1140" HREF="node67.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1138" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1132" HREF="node65.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1142" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1143" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1141" HREF="node67.html">An overview of boots </A> +<B>Up:</B> <A NAME="tex2html1139" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1133" HREF="node65.html">The buffer cache</A> +<BR> <P> +<H1><A NAME="SECTION00700000000000000000">Boots And Shutdowns</A></H1> +<P> +<A NAME="chboothalt"> </A> +<P> + <P> +<I> +Start me up <BR> +Ah...you've got to...you've got to <BR> +Never, never never stop <BR> +Start it up <BR> +Ah...start it up, never, never, never <BR> + You make a grown man cry, <BR> + you make a grown man cry <BR> +(Rolling Stones) <BR> + </I><P> +<A NAME="2101"> </A> +<A NAME="1959"> </A> +<P> + This section explains what goes on when a Linux system is + brought up and taken down, and how it should be done properly. + If proper procedures are not followed, files might be corrupted + or lost. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1144" HREF="node67.html#SECTION00710000000000000000">An overview of boots and shutdowns</A> +<LI> <A NAME="tex2html1145" HREF="node68.html#SECTION00720000000000000000">The boot process in closer look</A> +<LI> <A NAME="tex2html1146" HREF="node69.html#SECTION00730000000000000000">More about shutdowns</A> +<LI> <A NAME="tex2html1147" HREF="node70.html#SECTION00740000000000000000">Rebooting</A> +<LI> <A NAME="tex2html1148" HREF="node71.html#SECTION00750000000000000000">Single user mode</A> +<LI> <A NAME="tex2html1149" HREF="node72.html#SECTION00760000000000000000">Emergency boot floppies</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node67.html b/sag-0.6.1-www/Invisible/sag-0.6/node67.html new file mode 100644 index 0000000..6a13703 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node67.html @@ -0,0 +1,72 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>An overview of boots and shutdowns</TITLE> +<META NAME="description" CONTENT="An overview of boots and shutdowns"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1158" HREF="node68.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1156" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1150" HREF="node66.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1160" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1161" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1159" HREF="node68.html">The boot process in </A> +<B>Up:</B> <A NAME="tex2html1157" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1151" HREF="node66.html">Boots And Shutdowns</A> +<BR> <P> +<H1><A NAME="SECTION00710000000000000000">An overview of boots and shutdowns</A></H1> +<P> + The act of turning on a computer system and causing its operating + system to be loaded<A NAME="tex2html29" HREF="footnode.html#1961"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> is called <b>booting</b>. The name + comes from an image of the computer pulling itself up from its + bootstraps, but the act itself slightly more realistic. +<A NAME="1963"> </A> +<A NAME="1964"> </A> +<P> + During bootstrapping, the computer first loads + a small piece of code called the <b>bootstrap loader</b>, + which in turn loads and starts + the operating system. The bootstrap loader is usually + stored in a fixed location on a hard disk or a floppy. The + reason for this two step process is that the operating system + is big and complicated, but the first piece of code that the + computer loads must be very small (a few hundred bytes), to avoid + making the firmware unnecessarily complicated. +<A NAME="1966"> </A> +<P> + Different computers do the bootstrapping differently. For PC's, + the computer (its BIOS) reads in the first sector (called + the <b>boot sector</b>) of a floppy or hard disk. + The bootstrap loader + is contained within this sector. It loads the operating + system from elsewhere on the disk (or from some other place). +<A NAME="1968"> </A> +<P> + After Linux has been loaded, it initializes the hardware and + device drivers, and then runs <tt>init</tt><A NAME="2115"> </A>. <tt>init</tt><A NAME="2117"> </A> + starts other processes to allow users to log in, and do things. + The details of this part will be discussed below. +<P> + In order to shut down a Linux system, first all processes + are told to terminate (this makes them close any files and + do other necessary things to keep things tidy), then filesystems + and swap areas are unmounted, and finally a message is printed + to the console that the power can be turned off. If the proper + procedure is not followed, terrible things can and will happen; + most importantly, the filesystem buffer cache might not be flushed, + which means that all data in it is lost and the filesystem on + disk is inconsistent, and therefore possibly unusable. +<A NAME="1971"> </A> +<A NAME="1972"> </A> +<P> +<HR><A NAME="tex2html1158" HREF="node68.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1156" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1150" HREF="node66.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1160" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1161" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1159" HREF="node68.html">The boot process in </A> +<B>Up:</B> <A NAME="tex2html1157" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1151" HREF="node66.html">Boots And Shutdowns</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node68.html b/sag-0.6.1-www/Invisible/sag-0.6/node68.html new file mode 100644 index 0000000..3bd79e3 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node68.html @@ -0,0 +1,224 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>The boot process in closer look</TITLE> +<META NAME="description" CONTENT="The boot process in closer look"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1170" HREF="node69.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1168" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1162" HREF="node67.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1172" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1173" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1171" HREF="node69.html">More about shutdowns</A> +<B>Up:</B> <A NAME="tex2html1169" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1163" HREF="node67.html">An overview of boots </A> +<BR> <P> +<H1><A NAME="SECTION00720000000000000000">The boot process in closer look</A></H1> +<P> +<A NAME="secbootcloseup"> </A> +<P> + You can boot Linux either from a floppy or from the hard + disk. The installation section in the Installation and + Getting Started guide ([<A HREF="node113.html#getting-started">Wel</A>]) + tells you how to install Linux so you can boot it the way + you want to. +<P> + When a PC is booted, the BIOS will do various tests to + check that everything looks all right,<A NAME="tex2html30" HREF="footnode.html#2102"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> and + will then start the actual booting. It will choose a disk + drive (typically the first floppy drive, if there is a floppy + inserted, otherwise the first hard disk, if one is installed + in the computer; the order might be configurable, however) + and will then read its very first sector. This is + called the <b>boot sector</b>; for a hard disk, it is also + called the <b>master boot record</b>, since a hard disk can + contain several partitions, each with their own boot sectors. +<A NAME="1980"> </A> +<A NAME="1981"> </A> +<A NAME="1982"> </A> +<A NAME="1983"> </A> +<A NAME="2103"> </A> +<A NAME="2104"> </A> +<P> + The boot sector contains a small program (small enough to fit into + one sector) whose responsibility is to read the actual operating + system from the disk and start it. When booting Linux from + a floppy disk, the boot sector contains code that just reads + the first few hundred blocks (depending on the actual + kernel size, of course) to a predetermined place in memory. + On a Linux boot floppy, there is no filesystem, the kernel + is just stored in consecutive sectors, since this simplifies + the boot process. It is possible, however, to boot from a + floppy with a filesystem, by using LILO, the LInux LOader. +<A NAME="1986"> </A> +<A NAME="2105"> </A> +<P> + When booting from the hard disk, the code in the master boot + record will examine the partition table (also in the master boot + record), identify the active + partition (the partition that is marked to be bootable), read + the boot sector from that partition, and then start the code + in that boot sector. The code in the partition's boot sector + does what a floppy disk's boot sector does: it will read in + the kernel from the partition and start it. The details vary, + however, since it is generally not useful to have a separate + partition for just the kernel image, so the code in the + partition's boot sector can't just read the disk in sequential + order, it has to find the sectors wherever the filesystem has + put them. There are several ways around this problem, but the + most common way is to use LILO. (The details about how to do + this are irrelevant for this discussion, however; see the LILO + documentation for more information; it is most thorough.) +<A NAME="1988"> </A> +<A NAME="2106"> </A> +<A NAME="1990"> </A> +<A NAME="1991"> </A> +<A NAME="1992"> </A> +<P> + When booting with LILO, it will normally go right ahead and + read in and boot the default kernel. It is also possible to + configure LILO to be able to boot one of several kernels, or + even other operating systems than Linux, and it is possible + for the user to choose which kernel or operating system is to + be booted at boot time. LILO can be configured so that if one + holds down the <TT>alt</TT>, <TT>shift</TT>, or <TT>ctrl</TT> key at + boot time (when LILO is loaded), LILO will ask what is to + be booted and not boot the default right away. Alternatively, + LILO can be configured so that it will always ask, with an + optional timeout that will cause the default kernel to be + booted. +<P> + With LILO, it is also possible to give a <b>kernel command + line argument</b>, after the name of the kernel or operating + system. +<P> + <b>META: </b> The are other boot loaders than LILO. Information about + them will be added in some future version. loadlin. +<P> + Booting from floppy and from hard disk have both their + advantages, but generally booting from the hard disk is + nicer, since it avoids the hassle of playing around with + floppies. It is also faster. However, it can be more + troublesome to install the system to boot from the hard + disk, so many people will first boot from floppy, then, when + the system is otherwise installed and working well, will + install LILO and start booting from the hard disk. +<P> + After the Linux kernel has been read into the memory, by + whatever means, and is started for real, roughly the following + things happen: +<P> + <UL> +<LI> +<P> + The Linux kernel is installed compressed, so it will first + uncompress itself. The beginning of the kernel image + contains a small program that does this. +<A NAME="1998"> </A> +<A NAME="1999"> </A> +<LI> +<P> + If you have a super-VGA card that Linux + recognizes and that has some special text modes (such as 100 + columns by 40 rows), Linux asks you which mode + you want to use. During the kernel compilation, it is + possible to preset a video mode, so that this is never asked. + This can also be done with LILO or <tt>rdev</tt><A NAME="2125"> </A>. +<A NAME="2001"> </A> +<A NAME="2002"> </A> +<A NAME="2003"> </A> +<A NAME="2004"> </A> +<LI> +<P> + After this, the kernel checks what other hardware there is + (hard disks, floppies, network adapters...), and configures + some of its device drivers appropriately; while it does this, + it outputs messages about its findings. For example, when I + boot, I it looks like this: +<A NAME="2005"> </A> +<A NAME="2006"> </A> +<A NAME="2007"> </A> +<A NAME="2008"> </A> + <BLOCKQUOTE> <PRE>LILO boot: +Loading linux. +Console: colour EGA+ 80x25, 8 virtual consoles +Serial driver version 3.94 with no serial options enabled +tty00 at 0x03f8 (irq = 4) is a 16450 +tty01 at 0x02f8 (irq = 3) is a 16450 +lp_init: lp1 exists (0), using polling driver +Memory: 7332k/8192k available (300k kernel code, 384k reserved, 176k data) +Floppy drive(s): fd0 is 1.44M, fd1 is 1.2M +Loopback device init +Warning WD8013 board not found at i/o = 280. +Math coprocessor using irq13 error reporting. +Partition check: + hda: hda1 hda2 hda3 +VFS: Mounted root (ext filesystem). +Linux version 0.99.pl9-1 (root@haven) 05/01/93 14:12:20</PRE></BLOCKQUOTE> + The exact texts are different on different systems, depending + on the hardware, the version of Linux being used, and how + it has been configured. +<LI> +<P> + Then the kernel will try to mount the root filesystem. The + place is configurable at + compilation time, or any time with <tt>rdev</tt><A NAME="2127"> </A> + or LILO. The filesystem type is detected + automatically. If the mounting of the root filesystem fails, + for example because you didn't remember to include the corresponding + filesystem driver in the kernel, + the kernel panics and halts the system (there isn't much it + can do, anyway). +<A NAME="2012"> </A> +<A NAME="2013"> </A> +<A NAME="2014"> </A> +<A NAME="2015"> </A> +<A NAME="2016"> </A> +<A NAME="2017"> </A> +<P> + The root filesystem is usually mounted read-only (this can + be set in the same way as the place). This makes it possible + to check the filesystem while it is mounted; it is not a good + idea to check a filesystem that is mounted read-write. +<A NAME="2018"> </A> +<A NAME="2019"> </A> +<A NAME="2020"> </A> +<LI> +<P> + After this, the kernel starts the program <tt>init</tt><A NAME="2129"> </A> + (located in <tt>/sbin/init</tt><A NAME="2131"> </A>) in + the background (this will always become process number 1). + <tt>init</tt><A NAME="2133"> </A> does various startup chores. The exact things it does + depends on how it is configured; see + chapter <A HREF="node73.html#chinit">7</A> for more information (not yet written). It will at least + start some essential background daemons. +<A NAME="2025"> </A> +<LI> +<P> + <tt>init</tt><A NAME="2135"> </A> then switches to multi-user mode, and starts + a <tt>getty</tt><A NAME="2137"> </A> for virtual consoles and serial lines. + <tt>getty</tt><A NAME="2139"> </A> is the program which lets people log in + via virtual consoles and serial terminals. <tt>init</tt><A NAME="2141"> </A> + may also start some other programs, depending on how + it is configured. +<A NAME="2030"> </A> +<A NAME="2031"> </A> +<A NAME="2032"> </A> +<A NAME="2033"> </A> +<LI> +<P> + After this, the boot is complete, and the system is up and + running normally. +<P> + </UL><HR><A NAME="tex2html1170" HREF="node69.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1168" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1162" HREF="node67.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1172" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1173" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1171" HREF="node69.html">More about shutdowns</A> +<B>Up:</B> <A NAME="tex2html1169" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1163" HREF="node67.html">An overview of boots </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node69.html b/sag-0.6.1-www/Invisible/sag-0.6/node69.html new file mode 100644 index 0000000..8ef46b2 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node69.html @@ -0,0 +1,136 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>More about shutdowns</TITLE> +<META NAME="description" CONTENT="More about shutdowns"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1182" HREF="node70.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1180" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1174" HREF="node68.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1184" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1185" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1183" HREF="node70.html">Rebooting</A> +<B>Up:</B> <A NAME="tex2html1181" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1175" HREF="node68.html">The boot process in </A> +<BR> <P> +<H1><A NAME="SECTION00730000000000000000">More about shutdowns</A></H1> +<P> + It is important to follow the correct procedures when you shut + down a Linux system. If you fail do so, your filesystems probably + will become trashed and the files probably will become scrambled. + This is because Linux has a disk cache that won't write things + to disk at once, but only at intervals. This greatly improves + performance but also means that if you just turn off the power + at a whim the cache may hold a lot of data and that what is on + the disk may not be a fully working filesystem (because only + some things have been written to the disk). +<A NAME="2036"> </A> +<A NAME="2037"> </A> +<A NAME="2038"> </A> +<A NAME="2039"> </A> +<P> + Another reason against just flipping the power switch is that + in a multi-tasking system there can be lots of things going on + in the background, and shutting the power can be quite + disastrous. By using the proper shutdown sequence, you ensure + that all background processes can save their data. +<A NAME="2040"> </A> +<P> + The command for properly shutting down a Linux system is + <tt>shutdown</tt><A NAME="2143"> </A>. It is usually used in one of two ways. +<A NAME="2042"> </A> +<P> + If you are running a system where you are the only user, the + usual way of using <tt>shutdown</tt><A NAME="2145"> </A> is to quit all running programs, + log out on all virtual consoles, log in as <tt>root</tt> on one + of them (or stay logged in as <tt>root</tt> if you already are, + but you should change to the root directory, to avoid problems + with unmounting), then give the command + <tt>shutdown -h now</tt><A NAME="2047"> </A> + (substitute <tt>now</tt> with a plus sign and a number in minutes + if you want a delay, though you usually don't on a single user + system). +<P> + Alternatively, if your system has many users, use the command + <tt>shutdown -h <i>+time message</i></tt>, where <i>time</i> + is the + time in minutes until the system is halted, and <i>message</i> + is a short explanation of why the system is shutting down. +<BLOCKQUOTE> <TT> +# shutdown -h +10 'We will install a new disk. System should <BR> +> be back on-line in three hours.' <BR> +# +</TT></BLOCKQUOTE> + This will warn everybody that the system will shut + down in ten minutes, and that they'd better get lost or lose + data. The warning is printed to + every terminal on which someone is logged in, including all + <tt>xterm</tt><A NAME="2147"> </A>s: +<BLOCKQUOTE> <TT> +Broadcast message from root (ttyp0) Wed Aug 2 01:03:25 1995... <BR> + <BR> +We will install a new disk. System should <BR> +be back on-line in three hours. <BR> +The system is going DOWN for system halt in 10 minutes !! +</TT></BLOCKQUOTE> + The warning is automatically repeated a few times before the + boot, with shorter and shorter intervals as the time runs out. +<A NAME="2057"> </A> +<P> + When the real shutting down starts after any + delays, all filesystems (except the root one) are unmounted, + user processes (if anybody is still logged in) are killed, + daemons are shut down, all filesystem are unmounted, + and generally everything settles down. + When that is done, <tt>init</tt><A NAME="2149"> </A> prints out a message that + you can power down the machine. Then, <EM>and only then</EM>, + should you move your fingers towards the power switch. +<A NAME="2060"> </A> +<P> + Sometimes, although rarely on any good system, it is + impossible to shut down properly. For instance, if the kernel + panics and crashes and burns and generally misbehaves, it + might be completely impossible to give any new commands, hence + shutting down properly is somewhat difficult, and just about + everything you can do is hope that nothing has been too + severely damaged and turn off the power. If the troubles are a + bit less severe (say, somebody hit your keyboard with + an axe), and the kernel and the <tt>update</tt><A NAME="2151"> </A> program still run + normally, it is probably a good idea to wait a couple of + minutes to give <tt>update</tt><A NAME="2153"> </A> a chance to flush the buffer + cache, and only cut the power after that. +<A NAME="2063"> </A> +<A NAME="2064"> </A> +<A NAME="2065"> </A> +<A NAME="2108"> </A> +<A NAME="2067"> </A> +<A NAME="2068"> </A> +<A NAME="2109"> </A> +<P> + Some people like to shut down using the command + <tt>sync</tt><A NAME="2155"> </A><A NAME="tex2html31" HREF="footnode.html#2110"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> + three times, waiting for the disk I/O to stop, then turn off + the power. If there are no running programs, this is about + equivalent to using <tt>shutdown</tt><A NAME="2159"> </A>. However, it does not + unmount any filesystems and this can lead to problems with the + ext2fs ``clean filesystem'' flag. The triple-sync method is + <em>not recommended</em>. +<A NAME="2074"> </A> +<P> + (In case you're wondering: the reason for <em>three</em> syncs is + that in the early days of UNIX, when the commands were + typed separately, that usually gave sufficient time for most + disk I/O to be finished.) +<P> +<HR><A NAME="tex2html1182" HREF="node70.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1180" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1174" HREF="node68.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1184" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1185" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1183" HREF="node70.html">Rebooting</A> +<B>Up:</B> <A NAME="tex2html1181" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1175" HREF="node68.html">The boot process in </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node7.html b/sag-0.6.1-www/Invisible/sag-0.6/node7.html new file mode 100644 index 0000000..20297e9 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node7.html @@ -0,0 +1,82 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Important parts of the kernel</TITLE> +<META NAME="description" CONTENT="Important parts of the kernel"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html375" HREF="node8.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html373" HREF="node5.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html367" HREF="node6.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html377" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html378" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html376" HREF="node8.html">Major services in a </A> +<B>Up:</B> <A NAME="tex2html374" HREF="node5.html">Overview of a Linux </A> +<B> Previous:</B> <A NAME="tex2html368" HREF="node6.html">Various parts of an </A> +<BR> <P> +<H1><A NAME="SECTION00320000000000000000">Important parts of the kernel</A></H1> +<P> + The Linux kernel consists of several important parts: process + management, memory management, hardware device drivers, filesystem + drivers, network management, and various other bits and pieces. + Figure <A HREF="node7.html#figkerneloverview">2.1</A> shows some of them. +<A NAME="142"> </A> +<A NAME="143"> </A> +<A NAME="144"> </A> +<A NAME="145"> </A> +<A NAME="146"> </A> +<P> +<P><A NAME="151"> </A><A NAME="figkerneloverview"> </A><IMG WIDTH=626 HEIGHT=547 ALIGN=BOTTOM ALT="figure147" SRC="img2.gif"><BR> +<STRONG>Figure 2.1:</STRONG> Some of the more important parts of the Linux kernel.<BR> +<P> +<P> + Probably the most important parts of the kernel (nothing else + works without them) are memory management and + process management. Memory management takes care of assigning + memory areas and swap space areas to processes, parts of the + kernel, and for the buffer cache. Process management creates + processes, and implements multitasking by switching the + active process on the processor. +<A NAME="154"> </A> +<A NAME="155"> </A> +<A NAME="156"> </A> +<P> + At the lowest level, the kernel contains a hardware device + driver for each kind of + hardware it supports. Since the world is full of different + kinds of hardware, the number of hardware device drivers is + large. There are often many otherwise similar pieces of + hardware that differ in how they are controlled by software. + The similarities make it possible to have general classes + of drivers that support similar operations; each member of + the class has the same interface to the rest of the kernel + but differs in what it needs to do to implement them. For + example, all disk drivers look alike to the rest of the + kernel, i.e., they all have operations like `initialize the + drive', `read sector N', and `write sector N'. +<P> + Some software services provided by the kernel itself have similar + properties, and can therefore be abstracted into classes. + For example, the various network protocols have been + abstracted into one programming interface, the BSD socket library. + Another example is the <b>virtual filesystem</b> (VFS) layer + that abstracts the filesystem operations away from their + implementation. Each filesystem type provides an implementation + of each filesystem operation. When some entity tries to + use a filesystem, the request goes via the VFS, which routes + the request to the proper filesystem driver. +<A NAME="158"> </A> +<A NAME="159"> </A> +<A NAME="160"> </A> +<P> +<HR><A NAME="tex2html375" HREF="node8.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html373" HREF="node5.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html367" HREF="node6.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html377" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html378" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html376" HREF="node8.html">Major services in a </A> +<B>Up:</B> <A NAME="tex2html374" HREF="node5.html">Overview of a Linux </A> +<B> Previous:</B> <A NAME="tex2html368" HREF="node6.html">Various parts of an </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node70.html b/sag-0.6.1-www/Invisible/sag-0.6/node70.html new file mode 100644 index 0000000..1db7174 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node70.html @@ -0,0 +1,44 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Rebooting</TITLE> +<META NAME="description" CONTENT="Rebooting"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1194" HREF="node71.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1192" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1186" HREF="node69.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1196" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1197" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1195" HREF="node71.html">Single user mode</A> +<B>Up:</B> <A NAME="tex2html1193" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1187" HREF="node69.html">More about shutdowns</A> +<BR> <P> +<H1><A NAME="SECTION00740000000000000000">Rebooting</A></H1> +<P> + Rebooting means booting the system again. This can be accomplished + by first shutting it down completely, turning power off, and then + turning it back on. A simpler way is to ask <tt>shutdown</tt><A NAME="2161"> </A> to + reboot the system, instead of merely halting it. This + is accomplished by using the <tt>-r</tt> option to shutdown, for + example, by giving the command <tt>shutdown -r now</tt>. +<A NAME="2080"> </A> +<P> + Most Linux systems run <tt>shutdown -r now</tt> + when ctrl-alt-del is pressed on the keyboard. This reboots the + system. The action on ctrl-alt-del is configurable, however, and + it might be better to allow for some delay before the reboot + on a multiuser machine. Systems that are physically accessible + to anyone might even be configured to do nothing when ctrl-alt-del + is pressed. +<A NAME="2082"> </A> +<A NAME="2083"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node71.html b/sag-0.6.1-www/Invisible/sag-0.6/node71.html new file mode 100644 index 0000000..e4b6f9f --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node71.html @@ -0,0 +1,35 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Single user mode</TITLE> +<META NAME="description" CONTENT="Single user mode"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1206" HREF="node72.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1204" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1198" HREF="node70.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1208" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1209" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1207" HREF="node72.html">Emergency boot floppies</A> +<B>Up:</B> <A NAME="tex2html1205" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1199" HREF="node70.html">Rebooting</A> +<BR> <P> +<H1><A NAME="SECTION00750000000000000000">Single user mode</A></H1> +<P> + The shutdown command can also be used to bring the system + down to single user mode, in which no one can log in, but + <tt>root</tt> can use the console. This is useful for + system administration tasks that can't be done while the system + is running normally. Single user mode is discussed more + thoroughly in chapter <A HREF="#chapdaemons"><IMG ALIGN=BOTTOM ALT="gif" SRC="./cross_ref_motif.gif"></A>. +<A NAME="2088"> </A> +<A NAME="2089"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node72.html b/sag-0.6.1-www/Invisible/sag-0.6/node72.html new file mode 100644 index 0000000..b01cecd --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node72.html @@ -0,0 +1,63 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Emergency boot floppies</TITLE> +<META NAME="description" CONTENT="Emergency boot floppies"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1216" HREF="node73.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1214" HREF="node66.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1210" HREF="node71.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1218" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1219" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1217" HREF="node73.html">init</A> +<B>Up:</B> <A NAME="tex2html1215" HREF="node66.html">Boots And Shutdowns</A> +<B> Previous:</B> <A NAME="tex2html1211" HREF="node71.html">Single user mode</A> +<BR> <P> +<H1><A NAME="SECTION00760000000000000000">Emergency boot floppies</A></H1> +<P> + It is not always possible to boot a computer from the hard disk. + For example, if you make a mistake in configuring LILO, you might + make your system unbootable. For these situations, you need an + alternative way of booting that will always work (as long as the + hardware works). For typical PC's, this means booting from the + floppy drive. +<A NAME="2091"> </A> +<A NAME="2092"> </A> +<P> + Most Linux distributions allow one to create an <b>emergency + boot floppy</b> during installation. It is a good idea to do this. + However, some such boot disks contain only the kernel, and assume + you will be using the programs on the distribution's installation + disks to fix whatever problem you have. Sometimes those programs + aren't enough; for example, you might have to restore some files + from backups made with software not on the installation disks. +<A NAME="2094"> </A> +<A NAME="2095"> </A> +<A NAME="2096"> </A> +<P> + Thus, it might be necessary to create a custom root floppy as well. + The <em>Bootdisk HOWTO</em> by Graham Chapman ([<A HREF="node113.html#bootdisk-howto">Cha</A>]) + contains instructions for doing this. + You must, of course, remember to keep your emergency boot + and root floppies up to date. +<A NAME="2099"> </A> +<P> + You can't use the floppy drive you use to mount the root floppy + for anything else. This can be inconvenient if you only have one + floppy drive. However, if you have enough memory, you + can configure your boot floppy to load the root + disk to a ramdisk (the boot floppy's kernel needs to be specially + configured for this). + Once the root floppy has been loaded into the ramdisk, the + floppy drive is free to mount other disks. +<A NAME="2100"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node73.html b/sag-0.6.1-www/Invisible/sag-0.6/node73.html new file mode 100644 index 0000000..88b00d4 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node73.html @@ -0,0 +1,53 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>init</TITLE> +<META NAME="description" CONTENT="init"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1228" HREF="node74.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1226" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1220" HREF="node72.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1230" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1231" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1229" HREF="node74.html">init comes first</A> +<B>Up:</B> <A NAME="tex2html1227" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1221" HREF="node72.html">Emergency boot floppies</A> +<BR> <P> +<A NAME="2317"> </A><H1><A NAME="SECTION00800000000000000000"><tt>init</tt></A></H1> +<P> +<A NAME="chinit"> </A> +<P> + <P> +<I> +Uuno on numero yksi <BR> + </I><P> +<P> + This chapter describes the <tt>init</tt><A NAME="2319"> </A> process, which is + the first user level process started by the kernel. <tt>init</tt><A NAME="2321"> </A> + has many important duties, such as starting <tt>getty</tt><A NAME="2323"> </A> (so that + users can log in), implementing run levels, and taking care + of orphaned processes. This chapter explains how <tt>init</tt><A NAME="2325"> </A> + is configured and how you can make use of the different run + levels. +<P> +<A NAME="2305"> </A> +<A NAME="2306"> </A> +<A NAME="2173"> </A> +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1232" HREF="node74.html#SECTION00810000000000000000"><tt>init</tt> comes first</A> +<LI> <A NAME="tex2html1233" HREF="node75.html#SECTION00820000000000000000">Configuring <tt>init</tt>: the <tt>/etc/inittab</tt> file</A> +<LI> <A NAME="tex2html1234" HREF="node76.html#SECTION00830000000000000000">Run levels</A> +<LI> <A NAME="tex2html1235" HREF="node77.html#SECTION00840000000000000000">Special configuration in <tt>/etc/inittab</tt></A> +<LI> <A NAME="tex2html1236" HREF="node78.html#SECTION00850000000000000000">Booting in single user mode</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node74.html b/sag-0.6.1-www/Invisible/sag-0.6/node74.html new file mode 100644 index 0000000..7ed9108 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node74.html @@ -0,0 +1,74 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>init comes first</TITLE> +<META NAME="description" CONTENT="init comes first"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1245" HREF="node75.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1243" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1237" HREF="node73.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1247" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1248" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1246" HREF="node75.html">Configuring init to start </A> +<B>Up:</B> <A NAME="tex2html1244" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1238" HREF="node73.html">init</A> +<BR> <P> +<A NAME="2327"> </A><H1><A NAME="SECTION00810000000000000000"><tt>init</tt> comes first</A></H1> +<P> + <tt>init</tt><A NAME="2329"> </A> is one of those programs that are absolutely essential + to the operation of a Linux system, but that you still can mostly + ignore. A good Linux distribution will come with a configuration + for <tt>init</tt><A NAME="2331"> </A> that will work for most systems, and on these + systems there is nothing you need to do about <tt>init</tt><A NAME="2333"> </A>. Usually, + you only need to worry about <tt>init</tt><A NAME="2335"> </A> if you hook up serial + terminals, dial-in (not dial-out) modems, or if you want to change + the default run level. +<P> + When the kernel has started itself (has been loaded into memory, + has started running, and has initialized all device drivers and + data structures and such), it finishes its own part of the boot + process by starting a user level program, <tt>init</tt><A NAME="2337"> </A>. Thus, + <tt>init</tt><A NAME="2339"> </A> is always the first process (its process number is + always 1). +<P> + The kernel looks for <tt>init</tt><A NAME="2341"> </A> in a few locations that have + been historically used for it, but the proper location for it + (on a Linux system) is <tt>/sbin/init</tt><A NAME="2343"> </A>. If the kernel can't + find <tt>init</tt><A NAME="2345"> </A>, it tries to run <tt>/bin/sh</tt><A NAME="2347"> </A>, and if that + also fails, the startup of the system fails. +<P> + When <tt>init</tt><A NAME="2349"> </A> starts, it finishes the boot process by doing + a number of administrative tasks, such as checking filesystems, + cleaning up <tt>/tmp</tt><A NAME="2351"> </A>, starting various services, and starting + a <tt>getty</tt><A NAME="2353"> </A> for each terminal and virtual console where users + should be able to log in (see chapter <A HREF="node79.html#chlogins">8</A>). +<P> + After the system is properly up, <tt>init</tt><A NAME="2355"> </A> restarts + <tt>getty</tt><A NAME="2357"> </A> for each terminal after a user has logged out (so + that the next user can log in). <tt>init</tt><A NAME="2359"> </A> also adopts orphan + processes: when a process starts a child process and dies before + its child, the child immediately becomes a child of <tt>init</tt><A NAME="2361"> </A>. + This is important for various technical reasons, but it is good + to know it, since it makes it easier to understand process lists + and process tree graphs.<A NAME="tex2html32" HREF="footnode.html#2308"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> + There are a few variants of <tt>init</tt><A NAME="2367"> </A> available. Most Linux + distributions use <tt>sysvinit</tt><A NAME="2369"> </A> (written by Miquel van + Smoorenburg), which is based on the System V <tt>init</tt><A NAME="2371"> </A> design. + The BSD versions of Unix have a different <tt>init</tt><A NAME="2373"> </A>. The primary + difference is run levels: System V has them, BSD does not + (at least traditionally). This difference is not essential. + We'll look at <tt>sysvinit</tt><A NAME="2375"> </A> only. +<P> +<HR><A NAME="tex2html1245" HREF="node75.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1243" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1237" HREF="node73.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1247" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1248" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1246" HREF="node75.html">Configuring init to start </A> +<B>Up:</B> <A NAME="tex2html1244" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1238" HREF="node73.html">init</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node75.html b/sag-0.6.1-www/Invisible/sag-0.6/node75.html new file mode 100644 index 0000000..9f8e02b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node75.html @@ -0,0 +1,96 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Configuring init to start getty: the /etc/inittab file</TITLE> +<META NAME="description" CONTENT="Configuring init to start getty: the /etc/inittab file"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1257" HREF="node76.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1255" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1249" HREF="node74.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1259" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1260" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1258" HREF="node76.html">Run levels</A> +<B>Up:</B> <A NAME="tex2html1256" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1250" HREF="node74.html">init comes first</A> +<BR> <P> +<A NAME="2381"> </A><H1><A NAME="SECTION00820000000000000000">Configuring <tt>init</tt><A NAME="2377"> </A> to start <tt>getty</tt><A NAME="2379"> </A>: the <tt>/etc/inittab</tt> file</A></H1> +<P> + When it starts up, <tt>init</tt><A NAME="2383"> </A> reads the <tt>/etc/inittab</tt><A NAME="2385"> </A> + configuration file. While the system is running, it will + re-read it, if sent the HUP signal;<A NAME="tex2html33" HREF="footnode.html#2310"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> this feature makes it + unnecessary to boot the system to make changes to the <tt>init</tt><A NAME="2389"> </A> + configuration take effect. +<P> + The <tt>/etc/inittab</tt><A NAME="2391"> </A> file is a bit complicated. We'll start + with the simple case of configuring <tt>getty</tt><A NAME="2393"> </A> lines. Lines in + <tt>/etc/inittab</tt><A NAME="2395"> </A> consist of four colon-delimited fields: +<BLOCKQUOTE> <i>id:runlevels:action:process</i> +</BLOCKQUOTE> + The fields are described below. In addition, <tt>/etc/inittab</tt><A NAME="2397"> </A> + can contain empty lines, and lines that begin with a number + sign (`<code>#</code>'); these are both ignored. +<P> + <DL ><DT><STRONG>id</STRONG> +<DD> This identifies the line in the file. For + <tt>getty</tt><A NAME="2399"> </A> lines, it specifies the terminal + it runs on (the characters after <tt>/dev/tty</tt><A NAME="2401"> </A> + in the device file name). For other lines, + it doesn't matter (except for length restrictions), + but it should be unique. +<P> + <DT><STRONG>runlevels</STRONG> +<DD> + The run levels the line should be considered + for. The run levels are given as single digits, + without delimiters. (Run levels are described + in the next section.) +<P> + <DT><STRONG>action</STRONG> +<DD> What action should be taken by the line, e.g., + <tt>respawn</tt> to run the command in the + next field again, when it exits, or <tt>once</tt> + to run it just once. +<P> + <DT><STRONG>process</STRONG> +<DD> The command to run. +<P> +</DL> +<P> + To start a <tt>getty</tt><A NAME="2403"> </A> on the first virtual terminal + (<tt>/dev/tty1</tt><A NAME="2405"> </A>), in all the normal multi-user run levels + (2-5), one would write the following line: +<BLOCKQUOTE> <TT> +1:2345:respawn:/sbin/getty 9600 tty1 +</TT></BLOCKQUOTE> + The first field says that this is the line for <tt>/dev/tty1</tt><A NAME="2407"> </A>. + The second field says that it applies to run levels 2, 3, 4, + and 5. The third field means that the command should be run + again, after it exits (so that one can log in, log out, and + then log in again). The last field is the command that runs + <tt>getty</tt><A NAME="2409"> </A> on the first virtual terminal.<A NAME="tex2html34" HREF="footnode.html#2311"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> + If you wanted to add terminals or dial-in modem lines to a system, + you'd add more lines to <tt>/etc/inittab</tt><A NAME="2413"> </A>, one for each terminal + or dial-in line. For more details, see the manual pages + <em>init</em><A NAME="2415"> </A>(8), <em>inittab</em><A NAME="2417"> </A>(5), and <em>getty</em><A NAME="2419"> </A>(8). +<P> + If a command fails when it starts, and <tt>init</tt><A NAME="2421"> </A> is configured + to <tt>restart</tt> it, it will use a lot of system resources: + <tt>init</tt><A NAME="2423"> </A> starts it, it fails, <tt>init</tt><A NAME="2425"> </A> starts it, it fails, + <tt>init</tt><A NAME="2427"> </A> starts it, it fails, and so on, ad infinitum. To + prevent this, <tt>init</tt><A NAME="2429"> </A> will keep track of how often it restarts + a command, and if the frequency grows to high, it will delay for + five minutes before restarting again. +<P> +<HR><A NAME="tex2html1257" HREF="node76.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1255" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1249" HREF="node74.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1259" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1260" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1258" HREF="node76.html">Run levels</A> +<B>Up:</B> <A NAME="tex2html1256" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1250" HREF="node74.html">init comes first</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node76.html b/sag-0.6.1-www/Invisible/sag-0.6/node76.html new file mode 100644 index 0000000..3fc9d01 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node76.html @@ -0,0 +1,80 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Run levels</TITLE> +<META NAME="description" CONTENT="Run levels"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1269" HREF="node77.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1267" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1261" HREF="node75.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1271" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1272" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1270" HREF="node77.html">Special configuration in /etc/inittab</A> +<B>Up:</B> <A NAME="tex2html1268" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1262" HREF="node75.html">Configuring init to start </A> +<BR> <P> +<H1><A NAME="SECTION00830000000000000000">Run levels</A></H1> +<P> + A <b>run level</b> is a state of <tt>init</tt><A NAME="2432"> </A> and the whole + system that defines what system services are operating. Run + levels are identified by numbers, see table <A HREF="node76.html#tabrunlevels">7.1</A>. + There is no consensus of how to use the user defined run levels + (2 through 5). Some system administrators use run levels to + define which subsystems are working, e.g., whether X is running, + whether the network is operational, and so on. Others have all + subsystems always running or start and stop them individually, + without changing run levels, since run levels are too coarse + for controlling their systems. You need to decide for yourself, + but it might be easiest to follow the way your Linux distribution + does things. +<P> + <P><A NAME="2242"> </A><A NAME="tabrunlevels"> </A><IMG WIDTH=381 HEIGHT=89 ALIGN=BOTTOM ALT="table2241" SRC="img12.gif"><BR> +<STRONG>Table 7.1:</STRONG> Run level numbers<BR> +<P> +<P> + Run levels are configured in <tt>/etc/inittab</tt><A NAME="2434"> </A> by lines like + the following: +<BLOCKQUOTE> <TT> +l2:2:wait:/etc/init.d/rc 2 +</TT></BLOCKQUOTE> + The first field is an arbitrary label, the second one means + that this applies for run level 2. The third field means that + <tt>init</tt><A NAME="2436"> </A> should run the command in the fourth field once, + when the run level is entered, and that <tt>init</tt><A NAME="2438"> </A> should wait + for it to complete. The + <tt>/etc/init.d/rc</tt><A NAME="2440"> </A> command runs whatever commands are necessary + to start and stop services to enter run level 2. +<P> + The command in the fourth field does all the hard work of + setting up a run level. It starts services that aren't already + running, and stops services that shouldn't be running in the + new run level any more. Exactly what the command is, and how + run levels are configured, depends on the Linux distribution. +<P> + When <tt>init</tt><A NAME="2442"> </A> starts, it looks for a line in <tt>/etc/inittab</tt><A NAME="2444"> </A> + that specifies the default run level: +<BLOCKQUOTE> <TT> +id:2:initdefault: +</TT></BLOCKQUOTE> + You can ask <tt>init</tt><A NAME="2446"> </A> to go to a non-default + run level at startup by giving the kernel a command line + argument of <tt>single</tt> or <tt>emergency</tt>.<A NAME="tex2html36" HREF="footnode.html#2312"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> This allows you to choose + the single user mode (run level 1), which is described in + section <A HREF="node78.html#secsingleusermode">7.5</A>. +<P> + While the system is running, the <tt>telinit</tt><A NAME="2448"> </A> command can change + the run level. When the run level is changed, <tt>init</tt><A NAME="2450"> </A> runs + the relevant command from <tt>/etc/inittab</tt><A NAME="2452"> </A>. +<P> +<HR><A NAME="tex2html1269" HREF="node77.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1267" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1261" HREF="node75.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1271" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1272" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1270" HREF="node77.html">Special configuration in /etc/inittab</A> +<B>Up:</B> <A NAME="tex2html1268" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1262" HREF="node75.html">Configuring init to start </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node77.html b/sag-0.6.1-www/Invisible/sag-0.6/node77.html new file mode 100644 index 0000000..b3e72ce --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node77.html @@ -0,0 +1,58 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Special configuration in /etc/inittab</TITLE> +<META NAME="description" CONTENT="Special configuration in /etc/inittab"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1281" HREF="node78.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1279" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1273" HREF="node76.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1283" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1284" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1282" HREF="node78.html">Booting in single user </A> +<B>Up:</B> <A NAME="tex2html1280" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1274" HREF="node76.html">Run levels</A> +<BR> <P> +<A NAME="2454"> </A><H1><A NAME="SECTION00840000000000000000">Special configuration in <tt>/etc/inittab</tt></A></H1> +<P> + The <tt>/etc/inittab</tt><A NAME="2456"> </A> has some special features that allow + <tt>init</tt><A NAME="2458"> </A> to react to special circumstances. These special + features are marked by special keywords in the third field. + Some examples: +<P> + <DL ><DT><STRONG><tt>powerwait</tt></STRONG> +<DD> + Allows <tt>init</tt><A NAME="2460"> </A> to shut the system down, when the + power fails. This assumes the use of a UPS, and software + that watches the UPS and informs <tt>init</tt><A NAME="2462"> </A> that the + power is off. +<P> + <DT><STRONG><tt>ctrlaltdel</tt></STRONG> +<DD> + Allows <tt>init</tt><A NAME="2464"> </A> to reboot the system, when the user + presses <TT>control-alt-del</TT> on the console keyboard. + Note that the system administrator can configure the + reaction to <TT>C-A-D</TT> to be something else instead, + e.g., to be ignored, if the system is in a public + location.<A NAME="tex2html37" HREF="footnode.html#2314"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> + <DT><STRONG><tt>sysinit</tt></STRONG> +<DD> + Command to be run when the system is booted. This command + usually cleans up <tt>/tmp</tt><A NAME="2468"> </A>, for example. +<P> +</DL> +<P> + The list above is not exhaustive. See your <em>inittab</em><A NAME="2470"> </A>(5) + manual page for all possibilities, and for details on how to use + the above ones. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node78.html b/sag-0.6.1-www/Invisible/sag-0.6/node78.html new file mode 100644 index 0000000..176d85e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node78.html @@ -0,0 +1,69 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Booting in single user mode</TITLE> +<META NAME="description" CONTENT="Booting in single user mode"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1291" HREF="node79.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1289" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1285" HREF="node77.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1293" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1294" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1292" HREF="node79.html">Logging In And Out</A> +<B>Up:</B> <A NAME="tex2html1290" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1286" HREF="node77.html">Special configuration in /etc/inittab</A> +<BR> <P> +<H1><A NAME="SECTION00850000000000000000">Booting in single user mode</A></H1> +<P> +<A NAME="secsingleusermode"> </A> +<P> + An important run level is <b>single user mode</b> (run level 1), + in which only the system administrator is using the machine + and as few system services--including logins--as possible are + running. Single user mode is necessary for a few administrative + tasks,<A NAME="tex2html38" HREF="footnode.html#2315"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> such as running <tt>fsck</tt><A NAME="2475"> </A> on a <tt>/usr</tt><A NAME="2477"> </A> + partition--this requires that the partition be unmounted, + and that can't happen, unless just about all system services + are killed. +<P> + A running system can be taken to single user mode by using + <tt>telinit</tt><A NAME="2479"> </A> to request run level 1. At bootup, it can be + entered by giving the word <tt>single</tt> or <tt>emergency</tt> + on the kernel command line: the kernel gives the command line + to <tt>init</tt><A NAME="2481"> </A> as well, and <tt>init</tt><A NAME="2483"> </A> understands from that + word that it shouldn't use the default run level. (The kernel + command line is entered in a way that depends on how you boot + the system.) +<P> + Booting into single user mode is sometimes necessary so that + one can run <tt>fsck</tt><A NAME="2485"> </A> by hand, before anything mounts or + otherwise touches a broken <tt>/usr</tt><A NAME="2487"> </A> partition (any activity + on a broken filesystem is likely to break it more, so <tt>fsck</tt><A NAME="2489"> </A> + should be run as soon as possible). +<P> + The bootup scripts <tt>init</tt><A NAME="2491"> </A> runs will automatically enter single + user mode, if the automatic <tt>fsck</tt><A NAME="2493"> </A> at bootup fails. This is an + attempt to prevent the system from using a filesystem that is so + broken that <tt>fsck</tt><A NAME="2495"> </A> can't fix it automatically. Such breakage + is relatively rare, and usually involves a broken hard disk or + an experimental kernel release, but it's good to be prepared. +<P> + As a security measure, a properly configured system will ask + for the <tt>root</tt> password before starting the shell in + single user mode. Otherwise, it would be simple to just enter + a suitable line to LILO to get in as <tt>root</tt>. (This will + break if <tt>/etc/passwd</tt><A NAME="2497"> </A> has been broken by filesystem problems, + of course, and in that case you'd better have a boot floppy handy.) +<P> +<HR><A NAME="tex2html1291" HREF="node79.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1289" HREF="node73.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1285" HREF="node77.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1293" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1294" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1292" HREF="node79.html">Logging In And Out</A> +<B>Up:</B> <A NAME="tex2html1290" HREF="node73.html">init</A> +<B> Previous:</B> <A NAME="tex2html1286" HREF="node77.html">Special configuration in /etc/inittab</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node79.html b/sag-0.6.1-www/Invisible/sag-0.6/node79.html new file mode 100644 index 0000000..1f58b52 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node79.html @@ -0,0 +1,46 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Logging In And Out</TITLE> +<META NAME="description" CONTENT="Logging In And Out"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1303" HREF="node80.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1301" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1295" HREF="node78.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1305" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1306" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1304" HREF="node80.html">Logins via terminals</A> +<B>Up:</B> <A NAME="tex2html1302" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1296" HREF="node78.html">Booting in single user </A> +<BR> <P> +<H1><A NAME="SECTION00900000000000000000">Logging In And Out</A></H1> +<P> +<A NAME="chlogins"> </A> +<P> + <P> +<I> + This chapter needs a quote. Suggestions, anyone? <BR> + </I><P> +<P> + This section describes what happens when a user logs in or out. + The various interactions of background processes, log files, + configuration files, and so on are described in some detail. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1307" HREF="node80.html#SECTION00910000000000000000">Logins via terminals</A> +<LI> <A NAME="tex2html1308" HREF="node81.html#SECTION00920000000000000000">Logins via the network</A> +<LI> <A NAME="tex2html1309" HREF="node82.html#SECTION00930000000000000000">What <tt>login</tt> does</A> +<LI> <A NAME="tex2html1310" HREF="node83.html#SECTION00940000000000000000">X and xdm</A> +<LI> <A NAME="tex2html1311" HREF="node84.html#SECTION00950000000000000000">Access control</A> +<LI> <A NAME="tex2html1312" HREF="node85.html#SECTION00960000000000000000">Shell startup</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node8.html b/sag-0.6.1-www/Invisible/sag-0.6/node8.html new file mode 100644 index 0000000..7942fd2 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node8.html @@ -0,0 +1,43 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Major services in a UNIX system</TITLE> +<META NAME="description" CONTENT="Major services in a UNIX system"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html387" HREF="node9.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html385" HREF="node5.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html379" HREF="node7.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html389" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html390" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html388" HREF="node9.html">init</A> +<B>Up:</B> <A NAME="tex2html386" HREF="node5.html">Overview of a Linux </A> +<B> Previous:</B> <A NAME="tex2html380" HREF="node7.html">Important parts of the </A> +<BR> <P> +<H1><A NAME="SECTION00330000000000000000">Major services in a UNIX system</A></H1> +<P> + This section describes some of the more important UNIX services, + but without much detail. They are described + more thoroughly in later chapters. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html391" HREF="node9.html#SECTION00331000000000000000"><tt>init</tt></A> +<LI> <A NAME="tex2html392" HREF="node10.html#SECTION00332000000000000000">Logins from terminals</A> +<LI> <A NAME="tex2html393" HREF="node11.html#SECTION00333000000000000000">Syslog</A> +<LI> <A NAME="tex2html394" HREF="node12.html#SECTION00334000000000000000">Periodic command execution: <tt>cron</tt> and <tt>at</tt></A> +<LI> <A NAME="tex2html395" HREF="node13.html#SECTION00335000000000000000">Graphical user interface</A> +<LI> <A NAME="tex2html396" HREF="node14.html#SECTION00336000000000000000">Networking</A> +<LI> <A NAME="tex2html397" HREF="node15.html#SECTION00337000000000000000">Network logins</A> +<LI> <A NAME="tex2html398" HREF="node16.html#SECTION00338000000000000000">Network file systems</A> +<LI> <A NAME="tex2html399" HREF="node17.html#SECTION00339000000000000000">Mail</A> +<LI> <A NAME="tex2html400" HREF="node18.html#SECTION003310000000000000000">Printing</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node80.html b/sag-0.6.1-www/Invisible/sag-0.6/node80.html new file mode 100644 index 0000000..60dae28 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node80.html @@ -0,0 +1,71 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Logins via terminals</TITLE> +<META NAME="description" CONTENT="Logins via terminals"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1321" HREF="node81.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1319" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1313" HREF="node79.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1323" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1324" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1322" HREF="node81.html">Logins via the network</A> +<B>Up:</B> <A NAME="tex2html1320" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1314" HREF="node79.html">Logging In And Out</A> +<BR> <P> +<H1><A NAME="SECTION00910000000000000000">Logins via terminals</A></H1> +<P> + Figure <A HREF="node80.html#figterminallogins">8.1</A> shows how logins happen + via terminals. First, <tt>init</tt><A NAME="2589"> </A> makes sure there is a + <tt>getty</tt><A NAME="2591"> </A> program for the terminal connection (or + console). <tt>getty</tt><A NAME="2593"> </A> listens at the terminal and waits for + the user to notify that he is ready to login in (this usually + means that the user must type something). When it notices a + user, <tt>getty</tt><A NAME="2595"> </A> outputs + a welcome message (stored in <tt>/etc/issue</tt><A NAME="2597"> </A>), and prompts for + the username, and finally runs the <tt>login</tt><A NAME="2599"> </A> program. + <tt>login</tt><A NAME="2601"> </A> gets the username as a parameter, and prompts the + user for the password. If these match, <tt>login</tt><A NAME="2603"> </A> + starts the shell configured for the user; else it just exits + and terminates the process (perhaps after giving the user + another chance at entering the username and password). + <tt>init</tt><A NAME="2605"> </A> notices that the + process terminated, and starts a new <tt>getty</tt><A NAME="2607"> </A> for the + terminal. +<P> +<P><A NAME="2586"> </A><A NAME="figterminallogins"> </A><IMG WIDTH=461 HEIGHT=734 ALIGN=BOTTOM ALT="figure2514" SRC="img13.gif"><BR> +<STRONG>Figure 8.1:</STRONG> Logins via terminals: the interaction of <tt>init</tt><A NAME="2609"> </A>, <tt>getty</tt><A NAME="2611"> </A>, + <tt>login</tt><A NAME="2613"> </A>, and the shell.<BR> +<P> +<P> + Note that the only new process is the one created by <tt>init</tt><A NAME="2615"> </A> + (using the <tt>fork</tt><A NAME="2617"> </A> system call); + <tt>getty</tt><A NAME="2619"> </A> and <tt>login</tt><A NAME="2621"> </A> only replace the program running + in the process (using the <tt>exec</tt><A NAME="2623"> </A> system call). +<P> + A separate program, for noticing the user, is needed for serial + lines, since it can be (and traditionally was) complicated to + notice when a terminal becomes active. <tt>getty</tt><A NAME="2625"> </A> also adapts + to the speed and other settings of the connection, which is + important especially for dial-in connections, where these + parameters may change from call to call. +<P> + There are several versions of <tt>getty</tt><A NAME="2627"> </A> and <tt>init</tt><A NAME="2629"> </A> + in use, all with their good and bad points. It is a good idea + to learn about the versions on your system, and also about the + other versions (you could use the Linux Software Map to search + them). If you don't have dial-in's, you probably don't have to + worry about <tt>getty</tt><A NAME="2631"> </A>, but <tt>init</tt><A NAME="2633"> </A> is still important. +<P> +<HR><A NAME="tex2html1321" HREF="node81.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1319" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1313" HREF="node79.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1323" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1324" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1322" HREF="node81.html">Logins via the network</A> +<B>Up:</B> <A NAME="tex2html1320" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1314" HREF="node79.html">Logging In And Out</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node81.html b/sag-0.6.1-www/Invisible/sag-0.6/node81.html new file mode 100644 index 0000000..4b7df40 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node81.html @@ -0,0 +1,75 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Logins via the network</TITLE> +<META NAME="description" CONTENT="Logins via the network"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1333" HREF="node82.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1331" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1325" HREF="node80.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1335" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1336" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1334" HREF="node82.html">What login does</A> +<B>Up:</B> <A NAME="tex2html1332" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1326" HREF="node80.html">Logins via terminals</A> +<BR> <P> +<H1><A NAME="SECTION00920000000000000000">Logins via the network</A></H1> +<P> + Two computers in the same network are usually linked via a single + physical cable. When they communicate over the network, the programs + in each computer that take part in the communication are linked + via a <b>virtual connection</b>, a sort of imaginary cable. + As far as the programs at either end of the virtual connection + are concerned, they have a monopoly on their own cable. However, + since the cable is not real, only imaginary, the operating systems + of both computers can have several virtual connections share + the same physical cable. This way, using just a single cable, + several programs can communicate without having to know of or + care about the other communications. It is even possible to + have several computers use the same cable; the virtual + connections exist between two computers, and the other computers + ignore those connections that they don't take part in. +<P> + That's a complicated and over-abstracted description of the + reality. It might, however, be good enough to understand + the important reason why network logins are somewhat different + from normal logins. The virtual connections are established + when there are two programs on different computers that + wish to communicate. Since it is in principle possible to + login from any computer in a network to any other computer, + there is a huge number of potential virtual communications. + Because of this, it is not practical to start a <tt>getty</tt><A NAME="2636"> </A> + for each potential login. +<P> + There is a single process inetd (corresponding + to <tt>getty</tt><A NAME="2638"> </A>) that handles <em>all</em> network logins. + When it notices an incoming network login (i.e., it notices + that it gets a new virtual connection to some other computer), + it starts a new process to handle that single login. The + original process remains and continues to listen for new + logins. +<P> + To make things a bit more complicated, there is more than + one communication protocol for network logins. The two + most important ones are <tt>telnet</tt><A NAME="2640"> </A> and <tt>rlogin</tt><A NAME="2642"> </A>. In + addition to logins, there are many other virtual connections + that may be made (for FTP, Gopher, HTTP, and other network services). + It would be ineffective to have a separate process listening + for a particular type of connection, so instead there is only + one listener that can recognize the type of the connection and + can start the correct type of program to provide the service. + This single listener is called <tt>inetd</tt><A NAME="2644"> </A>; see the + ``Linux Network Administrators' Guide'' for more information. +<P> +<HR><A NAME="tex2html1333" HREF="node82.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1331" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1325" HREF="node80.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1335" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1336" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1334" HREF="node82.html">What login does</A> +<B>Up:</B> <A NAME="tex2html1332" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1326" HREF="node80.html">Logins via terminals</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node82.html b/sag-0.6.1-www/Invisible/sag-0.6/node82.html new file mode 100644 index 0000000..54ab87b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node82.html @@ -0,0 +1,65 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>What login does</TITLE> +<META NAME="description" CONTENT="What login does"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1345" HREF="node83.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1343" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1337" HREF="node81.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1347" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1348" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1346" HREF="node83.html">X and xdm</A> +<B>Up:</B> <A NAME="tex2html1344" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1338" HREF="node81.html">Logins via the network</A> +<BR> <P> +<A NAME="2646"> </A><H1><A NAME="SECTION00930000000000000000">What <tt>login</tt> does</A></H1> +<P> + The <tt>login</tt><A NAME="2648"> </A> program takes care of authenticating the user + (making sure that the username and password match), and of + setting up an initial environment for the user by setting + permissions for the serial line and starting the shell. +<P> + Part of the initial setup is outputting the contents of the + file <tt>/etc/motd</tt><A NAME="2650"> </A> (short for message of the day) and checking + for electronic mail. These can be disabled by creating a file + called <tt>.hushlogin</tt><A NAME="2652"> </A> in the user's home directory. +<P> + If the file <tt>/etc/nologin</tt><A NAME="2654"> </A> exists, logins are + disabled. That file is typically created by <tt>shutdown</tt><A NAME="2656"> </A> + and relatives. <tt>login</tt><A NAME="2658"> </A> checks for this file, and will + refuse to accept a login if it exists. If it does exist, + <tt>login</tt><A NAME="2660"> </A> outputs its contents to the terminal before it quits. +<P> + <tt>login</tt><A NAME="2662"> </A> logs all failed login attempts in a system log file + (via <tt>syslog</tt><A NAME="2664"> </A>). It also logs <em>all</em> logins by <tt>root</tt>. + Both of these can be useful when tracking down intruders. +<P> + Currently logged in people are listed in <tt>/var/run/utmp</tt><A NAME="2666"> </A>. + This file is valid only until the system is next rebooted or shut + down; it is cleared when the system is booted. It lists each + user and the terminal (or network connection) he is using, along + with some other useful information. The <tt>who</tt><A NAME="2668"> </A>, <tt>w</tt><A NAME="2670"> </A>, and + other similar commands look in <tt>utmp</tt><A NAME="2672"> </A> to see who are logged in. +<P> + All successful logins are recorded into <tt>/var/log/wtmp</tt><A NAME="2674"> </A>. + This file will grow without limit, so it must be cleaned + regularly, for example by having a weekly <tt>cron</tt><A NAME="2676"> </A> job + to clear it.<A NAME="tex2html40" HREF="footnode.html#2559"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> The <tt>last</tt><A NAME="2678"> </A> command browses <tt>wtmp</tt><A NAME="2680"> </A>. +<P> + Both <tt>utmp</tt><A NAME="2682"> </A> and <tt>wtmp</tt><A NAME="2684"> </A> are in a binary format (see the + <em>utmp</em><A NAME="2686"> </A> manual page); it is unfortunately not convenient + to examine them without special programs. +<P> +<HR><A NAME="tex2html1345" HREF="node83.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1343" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1337" HREF="node81.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1347" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1348" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1346" HREF="node83.html">X and xdm</A> +<B>Up:</B> <A NAME="tex2html1344" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1338" HREF="node81.html">Logins via the network</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node83.html b/sag-0.6.1-www/Invisible/sag-0.6/node83.html new file mode 100644 index 0000000..0a6d6cf --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node83.html @@ -0,0 +1,28 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>X and xdm</TITLE> +<META NAME="description" CONTENT="X and xdm"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1357" HREF="node84.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1355" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1349" HREF="node82.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1359" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1360" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1358" HREF="node84.html">Access control</A> +<B>Up:</B> <A NAME="tex2html1356" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1350" HREF="node82.html">What login does</A> +<BR> <P> +<H1><A NAME="SECTION00940000000000000000">X and xdm</A></H1> +<P> + <b>META: </b> X implements logins via xdm; also: xterm -ls +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node84.html b/sag-0.6.1-www/Invisible/sag-0.6/node84.html new file mode 100644 index 0000000..2165353 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node84.html @@ -0,0 +1,70 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Access control</TITLE> +<META NAME="description" CONTENT="Access control"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1369" HREF="node85.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1367" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1361" HREF="node83.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1371" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1372" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1370" HREF="node85.html">Shell startup</A> +<B>Up:</B> <A NAME="tex2html1368" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1362" HREF="node83.html">X and xdm</A> +<BR> <P> +<H1><A NAME="SECTION00950000000000000000">Access control</A></H1> +<P> + The user database is traditionally contained in the + <tt>/etc/passwd</tt><A NAME="2689"> </A> file. Some systems use <b>shadow passwords</b>, + and have moved the passwords to <tt>/etc/shadow</tt><A NAME="2692"> </A>. + Sites with many computers that share the accounts use + NIS or some other method to store the user database; they might + also automatically copy the database from one central location + to all other computers. +<P> + The user database contains not only the passwords, but also + some additional information about the users, such as their + real names, home directories, and login shells. This other + information needs to be public, so that anyone can read it. + Therefore the password is stored encrypted. This does have + the drawback that anyone with access to the encrypted password + can use various cryptographical methods to guess it, without + trying to actually log into the computer. Shadow passwords + try to avoid this by moving the password into another file, + which only <tt>root</tt> can read (the password is still + stored encrypted). However, installing shadow passwords later + onto a system that did not support them can be difficult. +<P> + With or without passwords, it is important to make sure that + all passwords in a system are good, i.e., not easily guessable. + The <tt>crack</tt><A NAME="2694"> </A> program can be used to crack passwords; any + password it can find is by definition not a good one. While + <tt>crack</tt><A NAME="2696"> </A> can be run by intruders, it can also be run by + the system adminstrator to avoid bad passwords. Good passwords + can also be enforced by the <tt>passwd</tt><A NAME="2698"> </A> program; this is + in fact more effective in CPU cycles, since cracking passwords + requires quite a lot of computation. +<P> + The user group database is kept in <tt>/etc/group</tt><A NAME="2700"> </A>; for systems + with shadow passwords, there can be a <tt>/etc/shadow.group</tt><A NAME="2702"> </A>. +<P> + <tt>root</tt> usually can't login via most terminals or the + network, only via terminals listed in the <tt>/etc/securetty</tt><A NAME="2704"> </A> + file. This makes it necessary to get physical access to + one of these terminals. It is, however, possible to log in + via any terminal as any other user, and use the <tt>su</tt><A NAME="2706"> </A> command + to become <tt>root</tt>. +<P> +<HR><A NAME="tex2html1369" HREF="node85.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1367" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1361" HREF="node83.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1371" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1372" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1370" HREF="node85.html">Shell startup</A> +<B>Up:</B> <A NAME="tex2html1368" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1362" HREF="node83.html">X and xdm</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node85.html b/sag-0.6.1-www/Invisible/sag-0.6/node85.html new file mode 100644 index 0000000..8a3d895 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node85.html @@ -0,0 +1,41 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Shell startup</TITLE> +<META NAME="description" CONTENT="Shell startup"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1379" HREF="node86.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1377" HREF="node79.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1373" HREF="node84.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1381" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1382" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1380" HREF="node86.html">Managing user accounts</A> +<B>Up:</B> <A NAME="tex2html1378" HREF="node79.html">Logging In And Out</A> +<B> Previous:</B> <A NAME="tex2html1374" HREF="node84.html">Access control</A> +<BR> <P> +<H1><A NAME="SECTION00960000000000000000">Shell startup</A></H1> +<P> + When an interactive login shell starts, it automatically executes + one or more pre-defined files. Different shells execute different + files; see the documentation of each shell for further information. +<P> + Most shells first run some global file, for example, the Bourne + shell (<tt>/bin/sh</tt><A NAME="2708"> </A>) and its derivatives execute <tt>/etc/profile</tt><A NAME="2710"> </A>; + in addition, they execute <tt>.profile</tt><A NAME="2712"> </A> in the user's home directory. + <tt>/etc/profile</tt><A NAME="2714"> </A> + allows the system administrator to have set up a common user + environment, especially by setting the PATH to include local + command directories in addition to the normal ones. On the other + hand, <tt>.profile</tt><A NAME="2716"> </A> allows the user to customize the environment + to his own tastes by overriding, if necessary, the default + environment. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node86.html b/sag-0.6.1-www/Invisible/sag-0.6/node86.html new file mode 100644 index 0000000..eeb1c60 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node86.html @@ -0,0 +1,54 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Managing user accounts</TITLE> +<META NAME="description" CONTENT="Managing user accounts"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1391" HREF="node87.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1389" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1383" HREF="node85.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1393" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1394" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1392" HREF="node87.html">What's an account?</A> +<B>Up:</B> <A NAME="tex2html1390" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1384" HREF="node85.html">Shell startup</A> +<BR> <P> +<H1><A NAME="SECTION001000000000000000000">Managing user accounts</A></H1> +<P> +<A NAME="chapuseradmin"> </A> +<P> + <P> +<I> + The similarities of sysadmins and drug dealers: <BR> + both measure stuff in K's, and both have users. <BR> + (Old, tired computer joke.) <BR> + </I><P> +<P> + This chapter explains how to create new user accounts, how to + modify the properties of those accounts, and how to remove the + accounts. Different Linux systems have different tools for + doing this. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1395" HREF="node87.html#SECTION001010000000000000000">What's an account?</A> +<LI> <A NAME="tex2html1396" HREF="node88.html#SECTION001020000000000000000">Creating a user</A> +<UL> +<LI> <A NAME="tex2html1397" HREF="node89.html#SECTION001021000000000000000"><tt>/etc/passwd</tt> and other informative files</A> +<LI> <A NAME="tex2html1398" HREF="node90.html#SECTION001022000000000000000">Picking numeric user and group ids</A> +<LI> <A NAME="tex2html1399" HREF="node91.html#SECTION001023000000000000000">Initial environment: <tt>/etc/skel</tt></A> +<LI> <A NAME="tex2html1400" HREF="node92.html#SECTION001024000000000000000">Creating a user by hand</A> +</UL> +<LI> <A NAME="tex2html1401" HREF="node93.html#SECTION001030000000000000000">Changing user properties</A> +<LI> <A NAME="tex2html1402" HREF="node94.html#SECTION001040000000000000000">Removing a user</A> +<LI> <A NAME="tex2html1403" HREF="node95.html#SECTION001050000000000000000">Disabling a user temporarily</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node87.html b/sag-0.6.1-www/Invisible/sag-0.6/node87.html new file mode 100644 index 0000000..84d67db --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node87.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>What's an account?</TITLE> +<META NAME="description" CONTENT="What's an account?"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1412" HREF="node88.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1410" HREF="node86.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1404" HREF="node86.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1414" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1415" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1413" HREF="node88.html">Creating a user</A> +<B>Up:</B> <A NAME="tex2html1411" HREF="node86.html">Managing user accounts</A> +<B> Previous:</B> <A NAME="tex2html1405" HREF="node86.html">Managing user accounts</A> +<BR> <P> +<H1><A NAME="SECTION001010000000000000000">What's an account?</A></H1> +<P> + When a computer is used by many people it is usually + necessary to differentiate between the users, for + example, so that their private files can be kept + private. This is important even if the computer can + only be used by a single person at a time, as with + most microcomputers.<A NAME="tex2html41" HREF="footnode.html#2722"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> Thus, each + user is given a unique username, and that name is used + to log in. +<P> + There's more to a user than just a name, however. An + <b>account</b> is all the files, resources, and + information belonging to one user. The term hints at + banks, and in a commercial system each account usually + has some money attached to it, and that money vanishes + at different speeds depending on how much the user + stresses the system. For example, disk space might have + a price per megabyte and day, and processing time might + have a price per second. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node88.html b/sag-0.6.1-www/Invisible/sag-0.6/node88.html new file mode 100644 index 0000000..fe6ec2d --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node88.html @@ -0,0 +1,56 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Creating a user</TITLE> +<META NAME="description" CONTENT="Creating a user"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1424" HREF="node89.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1422" HREF="node86.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1416" HREF="node87.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1426" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1427" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1425" HREF="node89.html">/etc/passwd and other informative </A> +<B>Up:</B> <A NAME="tex2html1423" HREF="node86.html">Managing user accounts</A> +<B> Previous:</B> <A NAME="tex2html1417" HREF="node87.html">What's an account?</A> +<BR> <P> +<H1><A NAME="SECTION001020000000000000000">Creating a user</A></H1> +<P> + The Linux kernel itself treats users are mere numbers. + Each user is identified by a unique integer, the + <b>user id</b> or <b>uid</b>, because numbers are + faster and easier for a computer to process than textual + names. A separate database outside the kernel assigns + a textual name, the <b>username</b>, to each user id. + The database contains additional information as well. +<P> + To create a user, you need to add information about the + user to the user database, and create a home directory + for him. It may also be necessary to educate the user, + and set up a suitable initial environment for him. +<P> + Most Linux distributions come with a program for creating + accounts. There are several such programs available. + Two command line alternatives are <tt>adduser</tt><A NAME="2824"> </A> and + <tt>useradd</tt><A NAME="2826"> </A>; there may be a GUI tool as well. Whatever + the program, the result is that there is little if any + manual work to be done. Even if the details are many and + intricate, these programs make everything seem trivial. + However, section <A HREF="node92.html#subsecmanualadduser">9.2.4</A> describes how + to do it by hand. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1428" HREF="node89.html#SECTION001021000000000000000"><tt>/etc/passwd</tt> and other informative files</A> +<LI> <A NAME="tex2html1429" HREF="node90.html#SECTION001022000000000000000">Picking numeric user and group ids</A> +<LI> <A NAME="tex2html1430" HREF="node91.html#SECTION001023000000000000000">Initial environment: <tt>/etc/skel</tt></A> +<LI> <A NAME="tex2html1431" HREF="node92.html#SECTION001024000000000000000">Creating a user by hand</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node89.html b/sag-0.6.1-www/Invisible/sag-0.6/node89.html new file mode 100644 index 0000000..9d32b9e --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node89.html @@ -0,0 +1,63 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>/etc/passwd and other informative files</TITLE> +<META NAME="description" CONTENT="/etc/passwd and other informative files"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1440" HREF="node90.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1438" HREF="node88.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1432" HREF="node88.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1442" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1443" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1441" HREF="node90.html">Picking numeric user and </A> +<B>Up:</B> <A NAME="tex2html1439" HREF="node88.html">Creating a user</A> +<B> Previous:</B> <A NAME="tex2html1433" HREF="node88.html">Creating a user</A> +<BR> <P> +<A NAME="2828"> </A><H2><A NAME="SECTION001021000000000000000"><tt>/etc/passwd</tt> and other informative files</A></H2> +<P> + The basic user database in a Unix system is the text + file, <tt>/etc/passwd</tt><A NAME="2830"> </A> (called the <b>password + file</b>), which lists all valid usernames and their + associated information. The file has one line per + username, and is divided into seven colon-delimited + fields: + <OL> +<LI> Username. +<LI> Password, in an encrypted form. +<LI> Numeric user id. +<LI> Numeric group id. +<LI> Full name or other description of account. +<LI> Home directory. +<LI> Login shell (program to run at login). + </OL> + The format is explained in more detail in <em>passwd</em><A NAME="2833"> </A>(5). +<P> + Any user on the system may read the password file, so that + they can, for example, learn the name of another user. + This means that the password (the second field) is also + available to everyone. The password file encrypts the + password, so in theory there is no problem. However, the + encryption is breakable, especially if the password is weak + (e.g., it is short or it can be found in a dictionary). + Therefore it is not a good idea to have the password in + the password file. +<P> + Many Linux systems have <b>shadow passwords</b>. This is + an alternative way of storing the password: the encrypted + password is stored in a separate file, <tt>/etc/shadow</tt><A NAME="2836"> </A>, + which only <tt>root</tt> can read. The <tt>/etc/passwd</tt><A NAME="2838"> </A> + file only contains a special marker in the second field. + Any program that needs to verify a user is setuid, and + can therefore access the shadow password file. Normal + programs, which only use the other fields in the password + file, can't get at the password.<A NAME="tex2html42" HREF="footnode.html#2816"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node9.html b/sag-0.6.1-www/Invisible/sag-0.6/node9.html new file mode 100644 index 0000000..255e964 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node9.html @@ -0,0 +1,65 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>init</TITLE> +<META NAME="description" CONTENT="init"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html409" HREF="node10.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html407" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html401" HREF="node8.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html411" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html412" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html410" HREF="node10.html">Logins from terminals</A> +<B>Up:</B> <A NAME="tex2html408" HREF="node8.html">Major services in a </A> +<B> Previous:</B> <A NAME="tex2html402" HREF="node8.html">Major services in a </A> +<BR> <P> +<A NAME="308"> </A><H2><A NAME="SECTION00331000000000000000"><tt>init</tt></A></H2> +<P> + The single most important service in a UNIX system is provided + by <tt>init</tt><A NAME="310"> </A>. <tt>init</tt><A NAME="312"> </A> is started as the first process of + every UNIX system, as the last thing the kernel does when it + boots. When <tt>init</tt><A NAME="314"> </A> starts, it continues the boot process + by doing various startup chores (checking and mounting filesystems, + starting daemons, etc). +<A NAME="166"> </A> +<A NAME="167"> </A> +<A NAME="168"> </A> +<P> + The exact list of things that <tt>init</tt><A NAME="316"> </A> + does depends on which flavor it is; there are several to choose + from. <tt>init</tt><A NAME="318"> </A> + usually provides the concept of <b>single user mode</b>, in which + no one can log in and <tt>root</tt><A NAME="321"> </A> uses a shell at the console; the usual + mode is called <b>multiuser mode</b>. + Some flavors generalize this as <b>run levels</b>; single and + multiuser modes are considered to be two run levels, and there + can be additional ones as well, for example, to run X on the + console. +<A NAME="175"> </A> +<A NAME="176"> </A> +<A NAME="177"> </A> +<A NAME="178"> </A> +<P> + In normal operation, <tt>init</tt><A NAME="325"> </A> makes sure <tt>getty</tt><A NAME="327"> </A>s are + working (to allow users to log in), and to + adopt orphan processes (processes whose parent has died; in + UNIX <em>all</em> processes <em>must</em> be in a single tree, + so orphans must be adopted). +<P> + When the system is shut down, it is <tt>init</tt><A NAME="329"> </A> that is in charge + of killing all + other processes, unmounting all filesystems and stopping the processor, + along with anything else it has been configured to do. +<A NAME="184"> </A> +<A NAME="185"> </A> +<A NAME="186"> </A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node90.html b/sag-0.6.1-www/Invisible/sag-0.6/node90.html new file mode 100644 index 0000000..944b858 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node90.html @@ -0,0 +1,43 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Picking numeric user and group ids</TITLE> +<META NAME="description" CONTENT="Picking numeric user and group ids"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1452" HREF="node91.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1450" HREF="node88.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1444" HREF="node89.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1454" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1455" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1453" HREF="node91.html">Initial environment: /etc/skel</A> +<B>Up:</B> <A NAME="tex2html1451" HREF="node88.html">Creating a user</A> +<B> Previous:</B> <A NAME="tex2html1445" HREF="node89.html">/etc/passwd and other informative </A> +<BR> <P> +<H2><A NAME="SECTION001022000000000000000">Picking numeric user and group ids</A></H2> +<P> + On most systems it doesn't matter what the numeric user and + group ids are, but if you use the Network filesystem (NFS), + you need to have the same uid and gid on all systems. This + is because NFS also identifies users with the numeric uids. + If you aren't using NFS, you can let your account creation + tool pick them automatically. +<P> + If you are using NFS, you'll have to be invent a mechanism + for synchronizing account information. One alternative is + to the NIS system (see [<A HREF="node113.html#network-admin-guide">Kir</A>]). +<P> + <b>META: </b> this is wrong place? + However, you should try to avoid re-using numeric uid's + (and textual usernames), because the new owner of the uid + (or username) may get access to the old owner's files + (or mail, or whatever). +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node91.html b/sag-0.6.1-www/Invisible/sag-0.6/node91.html new file mode 100644 index 0000000..012fce5 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node91.html @@ -0,0 +1,47 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Initial environment: /etc/skel</TITLE> +<META NAME="description" CONTENT="Initial environment: /etc/skel"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1464" HREF="node92.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1462" HREF="node88.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1456" HREF="node90.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1466" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1467" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1465" HREF="node92.html">Creating a user by </A> +<B>Up:</B> <A NAME="tex2html1463" HREF="node88.html">Creating a user</A> +<B> Previous:</B> <A NAME="tex2html1457" HREF="node90.html">Picking numeric user and </A> +<BR> <P> +<A NAME="2841"> </A><H2><A NAME="SECTION001023000000000000000">Initial environment: <tt>/etc/skel</tt></A></H2> +<P> + When the home directory for a new user is created, it is + initialized with files from the <tt>/etc/skel</tt><A NAME="2843"> </A> directory. + The system administrator can create files in <tt>/etc/skel</tt><A NAME="2845"> </A> + that will provide a nice default environment for users. + For example, he might create a <tt>/etc/skel/.profile</tt><A NAME="2847"> </A> that + sets the EDITOR environment variable to some editor that + is friendly towards new users. +<P> + However, it is usually best to try to keep <tt>/etc/skel</tt><A NAME="2849"> </A> + as small as possible, since it will be next to impossible + to update existing users' files. For example, if the name + of the friendly editor changes, all existing users would + have to edit their <tt>.profile</tt><A NAME="2851"> </A>. The system administrator + could try to do it automatically, with a script, but that + is almost certain going to break someone's file. +<P> + Whenever possible, it is better to put + global configuration into global files, such as + <tt>/etc/profile</tt><A NAME="2853"> </A>. This way it is possible to update + it without breaking users' own setups. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node92.html b/sag-0.6.1-www/Invisible/sag-0.6/node92.html new file mode 100644 index 0000000..1d24df6 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node92.html @@ -0,0 +1,76 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Creating a user by hand</TITLE> +<META NAME="description" CONTENT="Creating a user by hand"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1474" HREF="node93.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1472" HREF="node88.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1468" HREF="node91.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1476" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1477" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1475" HREF="node93.html">Changing user properties</A> +<B>Up:</B> <A NAME="tex2html1473" HREF="node88.html">Creating a user</A> +<B> Previous:</B> <A NAME="tex2html1469" HREF="node91.html">Initial environment: /etc/skel</A> +<BR> <P> +<H2><A NAME="SECTION001024000000000000000">Creating a user by hand</A></H2> +<A NAME="subsecmanualadduser"> </A> +<P> + To create a new account manually, follow these steps: + <OL> +<LI> Edit <tt>/etc/passwd</tt><A NAME="2855"> </A> with <tt>vipw</tt><A NAME="2857"> </A>(8) and add a + new line for the new account. Be careful with + the syntax. <em>Do not edit directly with an + editor!</em> <tt>vipw</tt><A NAME="2859"> </A> locks the file, so that + other commands won't try to update it at the + same time. You should make the password field be + `<tt>*</tt>', so that it is impossible to log in. +<LI> Similarly, edit <tt>/etc/group</tt><A NAME="2861"> </A> with <tt>vigr</tt><A NAME="2863"> </A>, if + you need to create a new group as well. +<LI> Create the home directory of the user with + <tt>mkdir</tt><A NAME="2865"> </A>. +<LI> Copy the files from <tt>/etc/skel</tt><A NAME="2867"> </A> to the new home + directory. +<LI> Fix ownerships and permissions with <tt>chown</tt><A NAME="2869"> </A> and + <tt>chmod</tt><A NAME="2871"> </A>. The <tt>-R</tt> option is most useful. + The correct permissions vary a little from one site + to another, but usually the following commands do + the right thing: +<BLOCKQUOTE> <TT> +cd <i>/home/newusername</i> <BR> +chown -R <i>username.group</i> . <BR> +chmod -R go=u,go-w . <BR> +chmod go= . +</TT></BLOCKQUOTE> +<LI> Set the password with <tt>passwd</tt><A NAME="2873"> </A>(1). + </OL> +<P> + After you set the password in the last step, the account will + work. You shouldn't set it until everything else has been done, + otherwise the user may inadvertently log in while you're + still copying the files. +<P> + It is sometimes necessary to create dummy + accounts<A NAME="tex2html43" HREF="footnode.html#2772"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> that are not used by + people. For example, to set up an anonymous FTP server + (so that anyone can download files from it, without + having to get an account first), you need to create an + account called <tt>ftp</tt>. In such cases, it is usually + not necessary to set the password (last step above). + Indeed, it is better + not to, so that no-one can use the account, unless + they first become <tt>root</tt>, since <tt>root</tt> + can become any user. +<P> +<HR><A NAME="tex2html1474" HREF="node93.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1472" HREF="node88.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1468" HREF="node91.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1476" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1477" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1475" HREF="node93.html">Changing user properties</A> +<B>Up:</B> <A NAME="tex2html1473" HREF="node88.html">Creating a user</A> +<B> Previous:</B> <A NAME="tex2html1469" HREF="node91.html">Initial environment: /etc/skel</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node93.html b/sag-0.6.1-www/Invisible/sag-0.6/node93.html new file mode 100644 index 0000000..993e2c4 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node93.html @@ -0,0 +1,54 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Changing user properties</TITLE> +<META NAME="description" CONTENT="Changing user properties"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1486" HREF="node94.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1484" HREF="node86.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1478" HREF="node92.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1488" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1489" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1487" HREF="node94.html">Removing a user</A> +<B>Up:</B> <A NAME="tex2html1485" HREF="node86.html">Managing user accounts</A> +<B> Previous:</B> <A NAME="tex2html1479" HREF="node92.html">Creating a user by </A> +<BR> <P> +<H1><A NAME="SECTION001030000000000000000">Changing user properties</A></H1> +<P> + There are a few commands for changing various + properties of an account (i.e., the relevant field + in <tt>/etc/passwd</tt><A NAME="2875"> </A>): + <BLOCKQUOTE> <DL ><DT><STRONG><tt>chfn</tt><A NAME="2877"> </A></STRONG> +<DD> Change the full name field. + <DT><STRONG><tt>chsh</tt><A NAME="2879"> </A></STRONG> +<DD> Change the login shell. + <DT><STRONG><tt>passwd</tt><A NAME="2881"> </A></STRONG> +<DD> Change the password. +<P> +</DL></BLOCKQUOTE> + The super-user may use these commands to change the + properties of any account. Normal users can only change + the properties of their own account. It may + sometimes be necessary to disable these commands (with + <tt>chmod</tt><A NAME="2883"> </A>) for normal users, for example in an environment + with many novice users. +<P> + Other tasks need to be done by hand. For example, to + change the username, you need to edit <tt>/etc/passwd</tt><A NAME="2885"> </A> + directly (with <tt>vipw</tt><A NAME="2887"> </A>, remember). Likewise, to add + or remove the user to more groups, you need to edit + <tt>/etc/group</tt><A NAME="2889"> </A> (with <tt>vigr</tt><A NAME="2891"> </A>). Such tasks tend to + be rare, however, and should be done with caution: for + example, if + you change the username, e-mail will no longer reach the + user, unless you also create a mail alias.<A NAME="tex2html44" HREF="footnode.html#2790"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node94.html b/sag-0.6.1-www/Invisible/sag-0.6/node94.html new file mode 100644 index 0000000..80d22ad --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node94.html @@ -0,0 +1,51 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Removing a user</TITLE> +<META NAME="description" CONTENT="Removing a user"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1498" HREF="node95.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1496" HREF="node86.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1490" HREF="node93.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1500" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1501" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1499" HREF="node95.html">Disabling a user temporarily</A> +<B>Up:</B> <A NAME="tex2html1497" HREF="node86.html">Managing user accounts</A> +<B> Previous:</B> <A NAME="tex2html1491" HREF="node93.html">Changing user properties</A> +<BR> <P> +<H1><A NAME="SECTION001040000000000000000">Removing a user</A></H1> +<P> + To remove a user, you first remove all his files, + mailboxes, mail aliases, print jobs, <tt>cron</tt><A NAME="2893"> </A> and + <tt>at</tt><A NAME="2895"> </A> jobs, and all other references to the user. + Then you remove the relevant lines from <tt>/etc/passwd</tt><A NAME="2897"> </A> + and <tt>/etc/group</tt><A NAME="2899"> </A> (remember to remove the username from + all groups it's been added to). It may be a good idea + to first disable the account (see below), before you + start removing stuff, to prevent the user from using the + account while it is being removed. +<P> + Remember that users may have files outside their home + directory. The <tt>find</tt><A NAME="2901"> </A> command can find them: +<BLOCKQUOTE> <TT> +find / -user <i>username</i> +</TT></BLOCKQUOTE> + However, note that the above command will take a <em>long</em> + time, if you have large disks. If you mount network disks + (see section <A HREF="node16.html#secNFS">2.3.8</A>), you need to be careful so + that you won't trash the network or the server. +<P> + Some Linux distributions come with special commands + to do this; look for <tt>deluser</tt><A NAME="2903"> </A> or <tt>userdel</tt><A NAME="2905"> </A>. + However, it is easy to do it by hand as well, and the + commands might not do everything. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node95.html b/sag-0.6.1-www/Invisible/sag-0.6/node95.html new file mode 100644 index 0000000..09f8934 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node95.html @@ -0,0 +1,70 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Disabling a user temporarily</TITLE> +<META NAME="description" CONTENT="Disabling a user temporarily"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1508" HREF="node96.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1506" HREF="node86.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1502" HREF="node94.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1510" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1511" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1509" HREF="node96.html">Backups</A> +<B>Up:</B> <A NAME="tex2html1507" HREF="node86.html">Managing user accounts</A> +<B> Previous:</B> <A NAME="tex2html1503" HREF="node94.html">Removing a user</A> +<BR> <P> +<H1><A NAME="SECTION001050000000000000000">Disabling a user temporarily</A></H1> +<P> + It is sometimes necessary to temporarily disable an account, + without removing it. For example, the user might not have paid + his fees, or the system administrator may suspect that a cracker + has got the password of that account. +<P> + The best way to disable an account is to change its shell + into a special program that just prints a message. This + way, whoever tries to log into the account, will fail, + and will know why. The message can tell the user to + contact the system administrator so that any problems + may be dealt with. +<P> + It would also be possible to change the username + or password to something else, but then the user + won't know what is going on. Confused users mean more + work.<A NAME="tex2html45" HREF="footnode.html#2818"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> +<P> + A simple way to create the special programs is to write + `tail scripts': +<BLOCKQUOTE> <PRE>#!/usr/bin/tail +2 +This account has been closed due to a security breach. +Please call 555-1234 and wait for the men in black to arrive.</PRE></BLOCKQUOTE> + The first two characters (`<code>#!</code>') tell the kernel that + the rest of the line is a command that needs to be run to + interpret this file. The <tt>tail</tt><A NAME="2907"> </A> command in this case + outputs everything except the first line to the standard + output. +<P> + If <tt>billg</tt> is suspected of a security breach, + the system administrator would do something like this: +<BLOCKQUOTE> <TT> +<code>#</code> <i>chsh -s /usr/local/lib/no-login/security billg</i> <BR> +<code>#</code> <i>su - tester</i> <BR> +<code>This account has been closed due to a security breach.</code> <BR> +<code>Please call 555-1234 and wait for the men in black to arrive.</code> <BR> +<code>#</code> +</TT></BLOCKQUOTE> + The purpose of the <tt>su</tt><A NAME="2909"> </A> is to test that the change worked, + of course. +<P> + Tail scripts should be kept in a separate directory, + so that their names don't interfere with normal user + commands. +<P> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node96.html b/sag-0.6.1-www/Invisible/sag-0.6/node96.html new file mode 100644 index 0000000..71c42c9 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node96.html @@ -0,0 +1,52 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Backups</TITLE> +<META NAME="description" CONTENT="Backups"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1520" HREF="node97.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1518" HREF="sag.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1512" HREF="node95.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1522" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1523" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1521" HREF="node97.html">On the importance of </A> +<B>Up:</B> <A NAME="tex2html1519" HREF="sag.html">Linux System Administrators' Guide </A> +<B> Previous:</B> <A NAME="tex2html1513" HREF="node95.html">Disabling a user temporarily</A> +<BR> <P> +<H1><A NAME="SECTION001100000000000000000">Backups</A></H1> + <A NAME="chapbackups"> </A> +<P> + <P> +<I> + Hardware is indeterministically reliable. <BR> + Software is deterministically unreliable. <BR> + People are indeterministically unreliable. <BR> + Nature is deterministically reliable. <BR> + </I><P> +<P> + This chapter explains about why, how, and when to make + backups, and how to restore things from backups. +<P> +<BR> <HR> +<UL><A NAME="CHILD_LINKS"> </A> +<LI> <A NAME="tex2html1524" HREF="node97.html#SECTION001110000000000000000">On the importance of being backed up</A> +<LI> <A NAME="tex2html1525" HREF="node98.html#SECTION001120000000000000000">Selecting the backup medium</A> +<LI> <A NAME="tex2html1526" HREF="node99.html#SECTION001130000000000000000">Selecting the backup tool</A> +<LI> <A NAME="tex2html1527" HREF="node100.html#SECTION001140000000000000000">Simple backups</A> +<UL> +<LI> <A NAME="tex2html1528" HREF="node101.html#SECTION001141000000000000000">Making backups with <tt>tar</tt></A> +<LI> <A NAME="tex2html1529" HREF="node102.html#SECTION001142000000000000000">Restoring files with <tt>tar</tt></A> +</UL> +<LI> <A NAME="tex2html1530" HREF="node103.html#SECTION001150000000000000000">Multilevel backups</A> +<LI> <A NAME="tex2html1531" HREF="node104.html#SECTION001160000000000000000">What to back up</A> +<LI> <A NAME="tex2html1532" HREF="node105.html#SECTION001170000000000000000">Compressed backups</A> +</UL> +<BR> <HR> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node97.html b/sag-0.6.1-www/Invisible/sag-0.6/node97.html new file mode 100644 index 0000000..2f1ca72 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node97.html @@ -0,0 +1,71 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>On the importance of being backed up</TITLE> +<META NAME="description" CONTENT="On the importance of being backed up"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1541" HREF="node98.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1539" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1533" HREF="node96.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1543" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1544" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1542" HREF="node98.html">Selecting the backup medium</A> +<B>Up:</B> <A NAME="tex2html1540" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1534" HREF="node96.html">Backups</A> +<BR> <P> +<H1><A NAME="SECTION001110000000000000000">On the importance of being backed up</A></H1> +<P> + Your data is valuable. It will cost you time and effort re-create + it, and that costs money or at least personal grief and tears; + sometimes it can't even be re-created, e.g., if it is the + results of some experiments. Since it is an investment, you + should protect it and take steps to avoid losing it. +<P> + There are basically four reasons why you might lose data: hardware + failures, software bugs, human action, or natural + disasters.<A NAME="tex2html46" HREF="footnode.html#2915"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> + Although modern hardware tends to be quite reliable, it can + still break seemingly spontaneously. The most critical piece + of hardware for storing data is the hard disk, which relies on + tiny magnetic fields remaining intact in a world filled with + electromagnetic noise. Modern software doesn't even tend to + be reliable; a rock solid program is an exception, not a rule. + Humans are quite unreliable, they will either make a mistake, + or they will be malicious and destroy data on purpose. Nature + might not be evil, but it can wreak havoc even when being good. + All in all, it is a small miracle that anything works at all. +<P> + Backups are a way to protect the investment in data. By having + several copies of the data, it does not matter as much if one + is destroyed (the cost is only that of the restoration of the + lost data from the backup). +<P> + It is important to do backups properly. Like everything + else that is related to the physical world, backups will fail + sooner or later. Part of doing backups well is to make sure + they work; you don't want to notice that your backups didn't + work.<A NAME="tex2html47" HREF="footnode.html#2916"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> + Adding insult to injury, you might have a bad crash just as + you're making the backup; if you have only one backup medium, + it might destroyed as well, leaving you with the smoking ashes + of hard work.<A NAME="tex2html48" HREF="footnode.html#2917"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> Or you + might notice, when trying to restore, that you forgot to back + up something important, like the user database on a 15 000 user + site. Best of all, all your backups might be working perfectly, + but the last known tape drive reading the kind of tapes you + used was the one that now has a bucketful of water in it. +<P> + When it comes to backups, paranoia is in the job description. +<P> +<HR><A NAME="tex2html1541" HREF="node98.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1539" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1533" HREF="node96.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1543" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1544" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1542" HREF="node98.html">Selecting the backup medium</A> +<B>Up:</B> <A NAME="tex2html1540" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1534" HREF="node96.html">Backups</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node98.html b/sag-0.6.1-www/Invisible/sag-0.6/node98.html new file mode 100644 index 0000000..0fa02fb --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node98.html @@ -0,0 +1,76 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Selecting the backup medium</TITLE> +<META NAME="description" CONTENT="Selecting the backup medium"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1553" HREF="node99.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1551" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1545" HREF="node97.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1555" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1556" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1554" HREF="node99.html">Selecting the backup tool</A> +<B>Up:</B> <A NAME="tex2html1552" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1546" HREF="node97.html">On the importance of </A> +<BR> <P> +<H1><A NAME="SECTION001120000000000000000">Selecting the backup medium</A></H1> +<P> + The most important decision regarding backups is the choice of + backup medium. You need to consider cost, reliability, speed, + availability, and usability. +<P> + Cost is important, since you should preferably have several + times more backup storage than what you need for the data. + A cheap medium is usually a must. +<P> + Reliability is extremely + important, since a broken backup can make a grown man cry. + A backup medium must be able to hold data without corruption for + years. + The way you use the medium affects it reliability as a backup + medium. A hard disk is typically very reliable, but as a backup + medium it is not very reliable, if it is in the same computer as + the disk you are backing up. +<P> + Speed is usually not very important, if backups can be done + without interaction. It doesn't matter if a backup takes two + hours, as long as it needs no supervision. On the other hand, + if the backup can't be done when the computer would otherwise + be idle, then speed is an issue. +<P> + Availability is obviously necessary, since you can't use a backup + medium if it doesn't exist. Less obvious is the need for the + medium to be available even in the future, and on computers other + than your own. Otherwise you may not be able to restore your + backups after a disaster. +<P> + Usability is a large factor in how often backups are made. + The easier it is to make backups, the better. A backup medium + mustn't be hard or boring to use. +<P> + The typical alternatives are floppies and tapes. Floppies + are very cheap, fairly reliable, not very fast, very available, + but not very usable for large amounts of data. Tapes are + cheap to somewhat expensive, fairly reliable, fairly fast, + quite available, and--depending on the size of the tape--quite + comfortable. +<P> + There are other alternatives. They are usually not very good + on availability, but if that is not a problem, they can be + better in other ways. For example, magneto-optical disks can have + good sides of both floppies (they're random access, making + restoration of a single file quick) and tapes (contain a lot + of data). +<P> +<HR><A NAME="tex2html1553" HREF="node99.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1551" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1545" HREF="node97.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1555" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1556" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1554" HREF="node99.html">Selecting the backup tool</A> +<B>Up:</B> <A NAME="tex2html1552" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1546" HREF="node97.html">On the importance of </A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/node99.html b/sag-0.6.1-www/Invisible/sag-0.6/node99.html new file mode 100644 index 0000000..03c11d6 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/node99.html @@ -0,0 +1,71 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Selecting the backup tool</TITLE> +<META NAME="description" CONTENT="Selecting the backup tool"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html1565" HREF="node100.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1563" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1557" HREF="node98.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1567" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1568" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1566" HREF="node100.html">Simple backups</A> +<B>Up:</B> <A NAME="tex2html1564" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1558" HREF="node98.html">Selecting the backup medium</A> +<BR> <P> +<H1><A NAME="SECTION001130000000000000000">Selecting the backup tool</A></H1> +<P> + There are many tools that can be used to make backups. The + traditional UNIX tools used for backups are <tt>tar</tt><A NAME="3020"> </A>, + <tt>cpio</tt><A NAME="3022"> </A>, and <tt>dump</tt><A NAME="3024"> </A>. In addition, there are + large number of third party packages (both freeware and + commercial) that can be used. The choice of backup medium + can affect the choice of tool. +<P> + <tt>tar</tt><A NAME="3026"> </A> and <tt>cpio</tt><A NAME="3028"> </A> are similar, and mostly equivalent + from a backup point of view. Both are capable of storing + files on tapes, and retrieving files from them. Both are + capable of using almost any media, since the kernel device + drivers take care of the low level device handling and the + devices all tend to look alike to user level programs. + Some UNIX versions of <tt>tar</tt><A NAME="3030"> </A> and <tt>cpio</tt><A NAME="3032"> </A> may have + problems with unusual files (symbolic links, device files, + files with very long pathnames, and so on), but the Linux + versions should handle all files correctly. +<P> + <tt>dump</tt><A NAME="3034"> </A> is different in that it reads the filesystem + directly and not via the filesystem. It is also written + specifically for backups; <tt>tar</tt><A NAME="3036"> </A> and <tt>cpio</tt><A NAME="3038"> </A> are + really for archiving files, although they work for backups + as well. +<P> + Reading the filesystem directly has some advantages. It makes + it possible to back files up without affecting their time + stamps; for <tt>tar</tt><A NAME="3040"> </A> and <tt>cpio</tt><A NAME="3042"> </A>, you would have to mount + the filesystem read-only first. Directly reading the filesystem + is also more effective, if everything needs to be backed up, + since it can be done with much less disk head movement. The + major disadvantage is that it makes the backup program specific + to one filesystem type; the Linux <tt>dump</tt><A NAME="3044"> </A> program understands + the ext2 filesystem only. +<P> + <tt>dump</tt><A NAME="3046"> </A> also directly supports backup levels (which we'll + be discussing below); with <tt>tar</tt><A NAME="3048"> </A> and <tt>cpio</tt><A NAME="3050"> </A> this has + to be implemented with other tools. +<P> + A comparison of the third party backup tools is beyond the + scope of this book. The Linux Software Map lists many of the + freeware ones. +<P> +<HR><A NAME="tex2html1565" HREF="node100.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html1563" HREF="node96.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html1557" HREF="node98.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html1567" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html1568" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html1566" HREF="node100.html">Simple backups</A> +<B>Up:</B> <A NAME="tex2html1564" HREF="node96.html">Backups</A> +<B> Previous:</B> <A NAME="tex2html1558" HREF="node98.html">Selecting the backup medium</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/orangeball.gif b/sag-0.6.1-www/Invisible/sag-0.6/orangeball.gif Binary files differnew file mode 100644 index 0000000..e757cd0 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/orangeball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/pinkball.gif b/sag-0.6.1-www/Invisible/sag-0.6/pinkball.gif Binary files differnew file mode 100644 index 0000000..43e843b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/pinkball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/previous_group_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/previous_group_motif.gif Binary files differnew file mode 100644 index 0000000..03ea0dc --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/previous_group_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/previous_group_motif_gr.gif b/sag-0.6.1-www/Invisible/sag-0.6/previous_group_motif_gr.gif Binary files differnew file mode 100644 index 0000000..c7a1e2b --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/previous_group_motif_gr.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/previous_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/previous_motif.gif Binary files differnew file mode 100644 index 0000000..aef90f1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/previous_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/previous_motif_gr.gif b/sag-0.6.1-www/Invisible/sag-0.6/previous_motif_gr.gif Binary files differnew file mode 100644 index 0000000..c6acaab --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/previous_motif_gr.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/purpleball.gif b/sag-0.6.1-www/Invisible/sag-0.6/purpleball.gif Binary files differnew file mode 100644 index 0000000..4836265 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/purpleball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/redball.gif b/sag-0.6.1-www/Invisible/sag-0.6/redball.gif Binary files differnew file mode 100644 index 0000000..b1a9580 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/redball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/sag.css b/sag-0.6.1-www/Invisible/sag-0.6/sag.css new file mode 100644 index 0000000..3970428 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/sag.css @@ -0,0 +1,10 @@ + +SMALL.TINY { font-size : xx-small } +SMALL.SCRIPTSIZE { font-size : xx-small } +SMALL.FOOTNOTESIZE { font-size : x-small } +SMALL.SMALL { font-size : small } +BIG.LARGE { font-size : large } +BIG.XLARGE { font-size : x-large } +BIG.XXLARGE { font-size : xx-large } +BIG.HUGE { font-size : xx-large } +BIG.XHUGE { font-size : xx-large } diff --git a/sag-0.6.1-www/Invisible/sag-0.6/sag.html b/sag-0.6.1-www/Invisible/sag-0.6/sag.html new file mode 100644 index 0000000..d39d103 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/sag.html @@ -0,0 +1,76 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<!--Then manually edited by Lars Wirzenius --> +<HTML> +<HEAD> +<TITLE>Linux System Administrators' Guide 0.6</TITLE> +<META NAME="description" CONTENT="Linux System Administrators' Guide 0.6"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> + +<BODY LANG="EN" > + +<h1>Linux System Administrators' Guide 0.6</h1> + +<p>Lars Wirzenius + +<p><IMG WIDTH=97 ALIGN=BOTTOM ALT="[Linux logo]" SRC="linux-logo.gif"> +The Linux Documentation Project + +<P>This is version 0.6 of the Linux System Administrators' Guide. <BR> +Published November 15, 1997. + +<hr> + +<a href="node1.html">Contents</a> + +<hr> + +<P>The LaTeX source code and other machine readable formats +can be found on the Internet via anonymous ftp on +<a href="ftp://sunsite.unc.edu/pub/Linux/docs/LDP/"><tt>sunsite.unc.edu</tt>, +in the directory <tt>/pub/Linux/docs/LDP</tt></a>. +Also available are at least Postscript and TeX .DVI formats. +The official home page for the book is +\texttt{http://www.iki.fi/liw/linux/sag/}. The current version can always +be found at that location. + +<P>Copyright © 1993-1997 Lars Wirzenius. + +<P>Trademarks are owned by their owners. + +<P>Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. + +<P>Permission is granted to process the document source code +through TeX or other formatters and print the +results, and distribute the printed document, +provided the printed document carries copying permission +notice identical to this one, including the references to where +the source code can be found and the official home page. + +<P>Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the entire +resulting derived work is distributed under the terms of a permission +notice identical to this one. + +<P>Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions. + +<P>The author would appreciate a notification of modifications, translations, +and printed versions. Thank you. + +<P> +<hr> + +<P>This page is dedicated to a future dedication. + +<P>In the mean time...I'd like someone who knows him let Terry +Pratchett know that his way of using footnotes is rather inspiring. + +</BODY> +</HTML> diff --git a/sag-0.6.1-www/Invisible/sag-0.6/up_motif.gif b/sag-0.6.1-www/Invisible/sag-0.6/up_motif.gif Binary files differnew file mode 100644 index 0000000..3d1aebf --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/up_motif.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/up_motif_gr.gif b/sag-0.6.1-www/Invisible/sag-0.6/up_motif_gr.gif Binary files differnew file mode 100644 index 0000000..a8b463a --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/up_motif_gr.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/whiteball.gif b/sag-0.6.1-www/Invisible/sag-0.6/whiteball.gif Binary files differnew file mode 100644 index 0000000..4a90ea1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/whiteball.gif diff --git a/sag-0.6.1-www/Invisible/sag-0.6/yellowball.gif b/sag-0.6.1-www/Invisible/sag-0.6/yellowball.gif Binary files differnew file mode 100644 index 0000000..c6ba6b1 --- /dev/null +++ b/sag-0.6.1-www/Invisible/sag-0.6/yellowball.gif diff --git a/sag-0.6.1-www/index.html b/sag-0.6.1-www/index.html new file mode 100644 index 0000000..8a72a1b --- /dev/null +++ b/sag-0.6.1-www/index.html @@ -0,0 +1,49 @@ +<html> +<head> +<title>The Linux System Administrators' Guide</title> +</head> +<body> + +<p>Note: the <a href="http://metalab.unc.edu/LDP/">LDP home page</a> +is probably much faster, if you are from the US (or otherwise far from +Finland). + +<h1>The Linux System Administrators' Guide</h1> + +<p>The Linux System Administrators' Guide (SAG) is targeted at novice +Linux system administrators. It is written by Lars Wirzenius, and +may be copied freely, even commercially. See the book for more +information about copying. + +<p>The current version is 0.6.1. It was released on 8 February 1999. +(Some of the formats below were released later.) + +<ul> +<li>The <a href="sysadmin-guide-0.6.1-ANNOUNCE">release announcement</a>. +<li><a hreF="sysadmin-guide_0.6.1.tar.gz">Source package</a> (doesn't include formatted + versions). +<li><a href="sysadmin-guide-0.6.1.ps.gz">Postscript</a>. +<li><a href="sysadmin-guide-0.6.1-html.tar.gz">HTML (.tar.gz)</a>. +<li><a href="sag-0.6.1.html/index.html">HTML (browsable)</a>. +<li><a href="sag-0.6.1.pdf">PDF</a>. +</ul> + +<p>There is no official plain text version. Yet. + +<p>Please note that I will not send copies of the SAG via e-mail, or +via any other method. + + + +<h2>Translations</h2> + +<p>There are several translations of the SAG available, but I haven't +been keeping track of them. I will do better in the future, and this +page will have a list of the translations I know about. Thus: If you +have a translation of the SAG, please send me the URL. Thanks. + +<p>(24 March 1999, +<a href="http://www.iki.fi/liw/mailto.html">Lars Wirzenius</a>) + +</body> +</html> diff --git a/sag-0.6.1-www/sag-0.6.1.html/backup-timeline.gif b/sag-0.6.1-www/sag-0.6.1.html/backup-timeline.gif Binary files differnew file mode 100644 index 0000000..ba477dc --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/backup-timeline.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/book1.html b/sag-0.6.1-www/sag-0.6.1.html/book1.html new file mode 100644 index 0000000..1b3b4d6 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/book1.html @@ -0,0 +1,833 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The Linux System Administrators' Guide</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="NEXT" +TITLE="Dedication" +HREF="f23.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="BOOK" +><DIV +CLASS="TITLEPAGE" +><H1 +CLASS="TITLE" +><A +NAME="AEN2" +>The Linux System Administrators' Guide</A +></H1 +><H2 +CLASS="SUBTITLE" +>Version 0.6.1</H2 +><H3 +CLASS="AUTHOR" +>Lars Wirzenius</H3 +><DIV +CLASS="AFFILIATION" +><P +CLASS="LITERALLAYOUT" +> <TT +CLASS="EMAIL" +><<A +HREF="mailto:liw@iki.fi" +>liw@iki.fi</A +>></TT +><br> + </P +></DIV +><DIV +CLASS="ABSTRACT" +><P +>An introduction to system administration of a Linux + system for novices.</P +></DIV +><DIV +CLASS="LEGALNOTICE" +><P +></P +><P +>Copyright 1993--1998 Lars Wirzenius.</P +><P +>Trademarks are owned by their owners.</P +><P +>Permission is granted to make and distribute verbatim + copies of this manual provided the copyright notice and this + permission notice are preserved on all copies.</P +><P +>Permission is granted to process the document source + code through TeX or other formatters and print the results, + and distribute the printed document, provided the printed + document carries copying permission notice identical to this one, + including the references to where the source code can be found + and the official home page.</P +><P +>Permission is granted to copy and distribute modified + versions of this manual under the conditions for verbatim + copying, provided that the entire resulting derived work is + distributed under the terms of a permission notice identical to + this one. </P +><P +>Permission is granted to copy and distribute translations + of this manual into another language, under the above conditions + for modified versions.</P +><P +>The author would appreciate a notification of modifications, + translations, and printed versions. Thank you.</P +><P +></P +></DIV +><HR></DIV +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="f23.html" +>Dedication</A +></DT +><DT +><A +HREF="f26.html" +>Source and pre-formatted versions available</A +></DT +><DT +>1. <A +HREF="c31.html" +>Introduction</A +></DT +><DD +><DL +><DT +><A +HREF="c31.html#AEN56" +>The Linux Documentation Project</A +></DT +></DL +></DD +><DT +>2. <A +HREF="c63.html" +>Overview of a Linux System</A +></DT +><DD +><DL +><DT +><A +HREF="c63.html#AEN69" +>Various parts of an operating system</A +></DT +><DT +><A +HREF="x83.html" +>Important parts of the kernel</A +></DT +><DT +><A +HREF="x94.html" +>Major services in a UNIX system</A +></DT +><DD +><DL +><DT +><A +HREF="x94.html#AEN97" +><B +CLASS="COMMAND" +>init</B +></A +></DT +><DT +><A +HREF="x94.html#AEN117" +>Logins from terminals</A +></DT +><DT +><A +HREF="x94.html#AEN129" +>Syslog</A +></DT +><DT +><A +HREF="x94.html#AEN133" +>Periodic command execution: <B +CLASS="COMMAND" +>cron</B +> and +<B +CLASS="COMMAND" +>at</B +></A +></DT +><DT +><A +HREF="x94.html#AEN147" +>Graphical user interface</A +></DT +><DT +><A +HREF="x94.html#AEN152" +>Networking</A +></DT +><DT +><A +HREF="x94.html#AEN158" +>Network logins</A +></DT +><DT +><A +HREF="x94.html#AEN171" +>Network file systems</A +></DT +><DT +><A +HREF="x94.html#AEN176" +>Mail</A +></DT +><DT +><A +HREF="x94.html#AEN191" +>Printing</A +></DT +><DT +><A +HREF="x94.html#AEN200" +>The filesystem layout</A +></DT +></DL +></DD +></DL +></DD +><DT +>3. <A +HREF="c212.html" +>Overview of the Directory Tree</A +></DT +><DD +><DL +><DT +><A +HREF="c212.html#AEN218" +>Background</A +></DT +><DT +><A +HREF="x267.html" +>The root filesystem</A +></DT +><DT +><A +HREF="x338.html" +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory</A +></DT +><DT +><A +HREF="x463.html" +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory</A +></DT +><DT +><A +HREF="x472.html" +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem</A +></DT +><DT +><A +HREF="x531.html" +>The <TT +CLASS="FILENAME" +>/var</TT +> filesystem</A +></DT +><DT +><A +HREF="x595.html" +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem</A +></DT +></DL +></DD +><DT +>4. <A +HREF="c701.html" +>Using Disks and Other Storage Media</A +></DT +><DD +><DL +><DT +><A +HREF="c701.html#AEN721" +>Two kinds of devices</A +></DT +><DT +><A +HREF="x747.html" +>Hard disks</A +></DT +><DT +><A +HREF="x787.html" +>Floppies</A +></DT +><DT +><A +HREF="x801.html" +>CD-ROM's</A +></DT +><DT +><A +HREF="x811.html" +>Tapes</A +></DT +><DT +><A +HREF="x817.html" +>Formatting</A +></DT +><DT +><A +HREF="x876.html" +>Partitions</A +></DT +><DD +><DL +><DT +><A +HREF="x876.html#AEN881" +>The MBR, boot sectors and partition table</A +></DT +><DT +><A +HREF="x876.html#AEN905" +>Extended and logical partitions</A +></DT +><DT +><A +HREF="x876.html#AEN920" +>Partition types</A +></DT +><DT +><A +HREF="x876.html#AEN1008" +>Partitioning a hard disk</A +></DT +><DT +><A +HREF="x876.html#AEN1024" +>Device files and partitions</A +></DT +></DL +></DD +><DT +><A +HREF="x1029.html" +>Filesystems</A +></DT +><DD +><DL +><DT +><A +HREF="x1029.html#AEN1031" +>What are filesystems?</A +></DT +><DT +><A +HREF="x1029.html#AEN1048" +>Filesystems galore</A +></DT +><DT +><A +HREF="x1029.html#AEN1104" +>Which filesystem should be used?</A +></DT +><DT +><A +HREF="x1029.html#AEN1107" +>Creating a filesystem</A +></DT +><DT +><A +HREF="x1029.html#MOUNT-AND-UMOUNT" +>Mounting and unmounting</A +></DT +><DT +><A +HREF="x1029.html#AEN1278" +>Checking filesystem integrity with <B +CLASS="COMMAND" +>fsck</B +></A +></DT +><DT +><A +HREF="x1029.html#AEN1301" +>Checking for disk errors with <B +CLASS="COMMAND" +>badblocks</B +></A +></DT +><DT +><A +HREF="x1029.html#AEN1315" +>Fighting fragmentation</A +></DT +><DT +><A +HREF="x1029.html#AEN1321" +>Other tools for all filesystems</A +></DT +><DT +><A +HREF="x1029.html#AEN1334" +>Other tools for the ext2 filesystem</A +></DT +></DL +></DD +><DT +><A +HREF="x1366.html" +>Disks without filesystems</A +></DT +><DT +><A +HREF="x1384.html" +>Allocating disk space</A +></DT +><DD +><DL +><DT +><A +HREF="x1384.html#AEN1386" +>Partitioning schemes</A +></DT +><DT +><A +HREF="x1384.html#AEN1404" +>Space requirements</A +></DT +><DT +><A +HREF="x1384.html#AEN1413" +>Examples of hard disk allocation</A +></DT +><DT +><A +HREF="x1384.html#AEN1439" +>Adding more disk space for Linux</A +></DT +><DT +><A +HREF="x1384.html#AEN1443" +>Tips for saving disk space</A +></DT +></DL +></DD +></DL +></DD +><DT +>5. <A +HREF="c1450.html" +>Memory Management</A +></DT +><DD +><DL +><DT +><A +HREF="c1450.html#AEN1456" +>What is virtual memory?</A +></DT +><DT +><A +HREF="x1466.html" +>Creating a swap space</A +></DT +><DT +><A +HREF="x1495.html" +>Using a swap space</A +></DT +><DT +><A +HREF="x1529.html" +>Sharing swap spaces with other operating systems</A +></DT +><DT +><A +HREF="x1532.html" +>Allocating swap space</A +></DT +><DT +><A +HREF="x1551.html" +>The buffer cache</A +></DT +></DL +></DD +><DT +>6. <A +HREF="c1582.html" +>Boots And Shutdowns</A +></DT +><DD +><DL +><DT +><A +HREF="c1582.html#AEN1588" +>An overview of boots and shutdowns</A +></DT +><DT +><A +HREF="x1602.html" +>The boot process in closer look</A +></DT +><DT +><A +HREF="x1650.html" +>More about shutdowns</A +></DT +><DT +><A +HREF="x1684.html" +>Rebooting</A +></DT +><DT +><A +HREF="x1693.html" +>Single user mode</A +></DT +><DT +><A +HREF="x1697.html" +>Emergency boot floppies</A +></DT +></DL +></DD +><DT +>7. <A +HREF="c1705.html" +><B +CLASS="COMMAND" +>init</B +></A +></DT +><DD +><DL +><DT +><A +HREF="c1705.html#AEN1717" +><B +CLASS="COMMAND" +>init</B +> comes first</A +></DT +><DT +><A +HREF="x1752.html" +>Configuring <B +CLASS="COMMAND" +>init</B +> to start <B +CLASS="COMMAND" +>getty</B +>: the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file</A +></DT +><DT +><A +HREF="x1812.html" +>Run levels</A +></DT +><DT +><A +HREF="x1852.html" +>Special configuration in <TT +CLASS="FILENAME" +>/etc/inittab</TT +></A +></DT +><DT +><A +HREF="x1880.html" +>Booting in single user mode</A +></DT +></DL +></DD +><DT +>8. <A +HREF="c1905.html" +>Logging In And Out</A +></DT +><DD +><DL +><DT +><A +HREF="c1905.html#AEN1911" +>Logins via terminals</A +></DT +><DT +><A +HREF="x1944.html" +>Logins via the network</A +></DT +><DT +><A +HREF="x1956.html" +>What <B +CLASS="COMMAND" +>login</B +> does</A +></DT +><DT +><A +HREF="x1988.html" +>X and xdm</A +></DT +><DT +><A +HREF="x1991.html" +>Access control</A +></DT +><DT +><A +HREF="x2008.html" +>Shell startup</A +></DT +></DL +></DD +><DT +>9. <A +HREF="c2018.html" +>Managing user accounts</A +></DT +><DD +><DL +><DT +><A +HREF="c2018.html#AEN2024" +>What's an account?</A +></DT +><DT +><A +HREF="x2031.html" +>Creating a user</A +></DT +><DD +><DL +><DT +><A +HREF="x2031.html#AEN2042" +><TT +CLASS="FILENAME" +>/etc/passwd</TT +> and other informative files</A +></DT +><DT +><A +HREF="x2031.html#AEN2072" +>Picking numeric user and group ids</A +></DT +><DT +><A +HREF="x2031.html#AEN2077" +>Initial environment: <TT +CLASS="FILENAME" +>/etc/skel</TT +></A +></DT +><DT +><A +HREF="x2031.html#MANUAL-ADDUSER" +>Creating a user by hand</A +></DT +></DL +></DD +><DT +><A +HREF="x2124.html" +>Changing user properties</A +></DT +><DT +><A +HREF="x2152.html" +>Removing a user</A +></DT +><DT +><A +HREF="x2166.html" +>Disabling a user temporarily</A +></DT +></DL +></DD +><DT +>10. <A +HREF="c2187.html" +>Backups</A +></DT +><DD +><DL +><DT +><A +HREF="c2187.html#AEN2193" +>On the importance of being backed up</A +></DT +><DT +><A +HREF="x2206.html" +>Selecting the backup medium</A +></DT +><DT +><A +HREF="x2216.html" +>Selecting the backup tool</A +></DT +><DT +><A +HREF="x2240.html" +>Simple backups</A +></DT +><DD +><DL +><DT +><A +HREF="x2240.html#AEN2247" +>Making backups with <B +CLASS="COMMAND" +>tar</B +></A +></DT +><DT +><A +HREF="x2240.html#AEN2288" +>Restoring files with <B +CLASS="COMMAND" +>tar</B +></A +></DT +></DL +></DD +><DT +><A +HREF="x2315.html" +>Multilevel backups</A +></DT +><DT +><A +HREF="x2405.html" +>What to back up</A +></DT +><DT +><A +HREF="x2417.html" +>Compressed backups</A +></DT +></DL +></DD +><DT +>11. <A +HREF="c2432.html" +>Keeping Time</A +></DT +><DD +><DL +><DT +><A +HREF="c2432.html#AEN2438" +>Time zones</A +></DT +><DT +><A +HREF="x2451.html" +>The hardware and software clocks</A +></DT +><DT +><A +HREF="x2457.html" +>Showing and setting time</A +></DT +><DT +><A +HREF="x2504.html" +>When the clock is wrong</A +></DT +></DL +></DD +><DT +><A +HREF="g2516.html" +>Glossary (DRAFT)</A +></DT +></DL +></DIV +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +> </TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="f23.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +> </TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Dedication</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c1450.html b/sag-0.6.1-www/sag-0.6.1.html/c1450.html new file mode 100644 index 0000000..6be696d --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c1450.html @@ -0,0 +1,264 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Memory Management</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Allocating disk space" +HREF="x1384.html"><LINK +REL="NEXT" +TITLE="Creating a swap space" +HREF="x1466.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1384.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1466.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="MEMORY-MANAGEMENT" +>Chapter 5. Memory Management</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c1450.html#AEN1456" +>What is virtual memory?</A +></DT +><DT +><A +HREF="x1466.html" +>Creating a swap space</A +></DT +><DT +><A +HREF="x1495.html" +>Using a swap space</A +></DT +><DT +><A +HREF="x1529.html" +>Sharing swap spaces with other operating systems</A +></DT +><DT +><A +HREF="x1532.html" +>Allocating swap space</A +></DT +><DT +><A +HREF="x1551.html" +>The buffer cache</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“Minnet, jag har tappat mitt minne, + är jag svensk eller finne, kommer inte ihåg...” + (Bosse Österberg) + </P +></BLOCKQUOTE +><P +> This section describes the Linux memory management + features, i.e., virtual memory and the disk buffer cache. + The purpose and workings and the things the system administrator + needs to take into consideration are described.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1456" +>What is virtual memory?</A +></H1 +><P +>Linux supports <I +CLASS="GLOSSTERM" +>virtual memory</I +>, that + is, using a disk as an extension of RAM so that the effective + size of usable memory grows correspondingly. The kernel will + write the contents of a currently unused block of memory to the + hard disk so that the memory can be used for another purpose. + When the original contents are needed again, they are read back + into memory. This is all made completely transparent to the + user; programs running under Linux only see the larger amount of + memory available and don't notice that parts of them reside on + the disk from time to time. Of course, reading and writing the + hard disk is slower (on the order of a thousand times slower) + than using real memory, so the programs don't run as fast. + The part of the hard disk that is used as virtual memory is + called the <I +CLASS="GLOSSTERM" +>swap space</I +>.</P +><P +>Linux can use either a normal file in the filesystem or a + separate partition for swap space. A swap partition is + faster, but it is easier to change the size of a swap file + (there's no need to repartition the whole hard disk, and + possibly install everything from scratch). When you know how + much swap space you need, you should go for a swap partition, + but if you are uncertain, you can use a swap file first, use + the system for a while so that you can get a feel for how much + swap you need, and then make a swap partition when you're + confident about its size.</P +><P +>You should also know that Linux allows one to use several swap + partitions and/or swap files at the same time. This means + that if you only occasionally need an unusual amount of swap space, + you can set up an extra swap file at such times, instead of + keeping the whole amount allocated all the time.</P +><P +>A note on operating system terminology: computer science usually + distinguishes between swapping (writing the whole process out to + swap space) and paging (writing only fixed size parts, usually + a few kilobytes, at a time). Paging is usually more efficient, + and that's what Linux does, but traditional Linux terminology + talks about swapping anyway. + + <A +NAME="AEN1464" +HREF="#FTN.AEN1464" +>[1]</A +> + </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1464" +HREF="c1450.html#AEN1464" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Thus quite needlessly annoying a + number of computer scientists something horrible. + </P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1384.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1466.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Allocating disk space</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Creating a swap space</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c1582.html b/sag-0.6.1-www/sag-0.6.1.html/c1582.html new file mode 100644 index 0000000..cd13d0e --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c1582.html @@ -0,0 +1,281 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Boots And Shutdowns</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="The buffer cache" +HREF="x1551.html"><LINK +REL="NEXT" +TITLE="The boot process in closer look" +HREF="x1602.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1551.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1602.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="BOOTS-AND-SHUTDOWNS" +>Chapter 6. Boots And Shutdowns</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c1582.html#AEN1588" +>An overview of boots and shutdowns</A +></DT +><DT +><A +HREF="x1602.html" +>The boot process in closer look</A +></DT +><DT +><A +HREF="x1650.html" +>More about shutdowns</A +></DT +><DT +><A +HREF="x1684.html" +>Rebooting</A +></DT +><DT +><A +HREF="x1693.html" +>Single user mode</A +></DT +><DT +><A +HREF="x1697.html" +>Emergency boot floppies</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +><P +CLASS="LITERALLAYOUT" +>Start me up<br> +Ah... you've got to... you've got to<br> +Never, never never stop<br> +Start it up<br> +Ah... start it up, never, never, never<br> + You make a grown man cry,<br> + you make a grown man cry<br> +(Rolling Stones)</P +></P +></BLOCKQUOTE +><P +> This section explains what goes on when a Linux system is + brought up and taken down, and how it should be done properly. + If proper procedures are not followed, files might be corrupted + or lost.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1588" +>An overview of boots and shutdowns</A +></H1 +><P +>The act of turning on a computer system and causing its + operating system to be loaded + + <A +NAME="AEN1591" +HREF="#FTN.AEN1591" +>[1]</A +> + + is called <I +CLASS="GLOSSTERM" +>booting</I +>. The name comes from + an image of the computer pulling itself up from its bootstraps, + but the act itself slightly more realistic.</P +><P +>During bootstrapping, the computer first loads a small piece + of code called the <I +CLASS="GLOSSTERM" +>bootstrap loader</I +>, which + in turn loads and starts the operating system. The bootstrap + loader is usually stored in a fixed location on a hard disk + or a floppy. The reason for this two step process is that + the operating system is big and complicated, but the first + piece of code that the computer loads must be very small (a + few hundred bytes), to avoid making the firmware unnecessarily + complicated.</P +><P +>Different computers do the bootstrapping differently. + For PC's, the computer (its BIOS) reads in the first sector + (called the <I +CLASS="GLOSSTERM" +>boot sector</I +>) of a floppy or + hard disk. The bootstrap loader is contained within this sector. + It loads the operating system from elsewhere on the disk (or + from some other place).</P +><P +>After Linux has been loaded, it initializes the hardware and + device drivers, and then runs <B +CLASS="COMMAND" +>init</B +>. <B +CLASS="COMMAND" +>init</B +> + starts other processes to allow users to log in, and do things. + The details of this part will be discussed below.</P +><P +>In order to shut down a Linux system, first all processes + are told to terminate (this makes them close any files and + do other necessary things to keep things tidy), then filesystems + and swap areas are unmounted, and finally a message is printed + to the console that the power can be turned off. If the proper + procedure is not followed, terrible things can and will happen; + most importantly, the filesystem buffer cache might not be flushed, + which means that all data in it is lost and the filesystem on + disk is inconsistent, and therefore possibly unusable. + </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1591" +HREF="c1582.html#AEN1591" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>On early computers, it wasn't enough + to merely turn on the computer, you had to manually load the + operating system as well. These new-fangled thing-a-ma-jigs do + it all by themselves.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1551.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1602.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The buffer cache</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The boot process in closer look</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c1705.html b/sag-0.6.1-www/sag-0.6.1.html/c1705.html new file mode 100644 index 0000000..fc29fba --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c1705.html @@ -0,0 +1,387 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>init</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Emergency boot floppies" +HREF="x1697.html"><LINK +REL="NEXT" +TITLE="Configuring init to start getty: the /etc/inittab file" +HREF="x1752.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1697.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1752.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="INIT" +>Chapter 7. <B +CLASS="COMMAND" +>init</B +></A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c1705.html#AEN1717" +><B +CLASS="COMMAND" +>init</B +> comes first</A +></DT +><DT +><A +HREF="x1752.html" +>Configuring <B +CLASS="COMMAND" +>init</B +> to start <B +CLASS="COMMAND" +>getty</B +>: the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file</A +></DT +><DT +><A +HREF="x1812.html" +>Run levels</A +></DT +><DT +><A +HREF="x1852.html" +>Special configuration in <TT +CLASS="FILENAME" +>/etc/inittab</TT +></A +></DT +><DT +><A +HREF="x1880.html" +>Booting in single user mode</A +></DT +></DL +></DIV +><P +> <BLOCKQUOTE +><P +>“Uuno on numero yksi” + (Slogan for a series of Finnish movies.)</P +></BLOCKQUOTE +> + + </P +><P +> This chapter describes the <B +CLASS="COMMAND" +>init</B +> process, + which is the first user level process started by the kernel. + <B +CLASS="COMMAND" +>init</B +> has many important duties, such as + starting <B +CLASS="COMMAND" +>getty</B +> (so that users can log in), + implementing run levels, and taking care of orphaned processes. + This chapter explains how <B +CLASS="COMMAND" +>init</B +> is configured + and how you can make use of the different run levels.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1717" +><B +CLASS="COMMAND" +>init</B +> comes first</A +></H1 +><P +><B +CLASS="COMMAND" +>init</B +> is one of those programs that + are absolutely essential to the operation of a Linux system, + but that you still can mostly ignore. A good Linux distribution + will come with a configuration for <B +CLASS="COMMAND" +>init</B +> + that will work for most systems, and on these systems there is + nothing you need to do about <B +CLASS="COMMAND" +>init</B +>. Usually, + you only need to worry about <B +CLASS="COMMAND" +>init</B +> if you hook + up serial terminals, dial-in (not dial-out) modems, or if you + want to change the default run level.</P +><P +>When the kernel has started itself (has been loaded + into memory, has started running, and has initialized all + device drivers and data structures and such), it finishes its + own part of the boot process by starting a user level program, + <B +CLASS="COMMAND" +>init</B +>. Thus, <B +CLASS="COMMAND" +>init</B +> is always + the first process (its process number is always 1).</P +><P +>The kernel looks for <B +CLASS="COMMAND" +>init</B +> + in a few locations that have been historically used + for it, but the proper location for it (on a Linux + system) is <TT +CLASS="FILENAME" +>/sbin/init</TT +>. If the + kernel can't find <B +CLASS="COMMAND" +>init</B +>, it tries to run + <TT +CLASS="FILENAME" +>/bin/sh</TT +>, and if that also fails, the startup + of the system fails.</P +><P +>When <B +CLASS="COMMAND" +>init</B +> starts, it finishes the + boot process by doing a number of administrative tasks, such + as checking filesystems, cleaning up <TT +CLASS="FILENAME" +>/tmp</TT +>, + starting various services, and starting a <B +CLASS="COMMAND" +>getty</B +> + for each terminal and virtual console where users should be able + to log in (see <A +HREF="c1905.html" +>Chapter 8</A +>).</P +><P +>After the system is properly up, <B +CLASS="COMMAND" +>init</B +> + restarts <B +CLASS="COMMAND" +>getty</B +> for each terminal + after a user has logged out (so that the next user can log + in). <B +CLASS="COMMAND" +>init</B +> also adopts orphan processes: when + a process starts a child process and dies before its child, the + child immediately becomes a child of <B +CLASS="COMMAND" +>init</B +>. + This is important for various technical reasons, but it is good + to know it, since it makes it easier to understand process lists + and process tree graphs. + + <A +NAME="AEN1743" +HREF="#FTN.AEN1743" +>[1]</A +> + + There are a few variants of <B +CLASS="COMMAND" +>init</B +> + available. Most Linux distributions + use <B +CLASS="COMMAND" +>sysvinit</B +> (written by Miquel + van Smoorenburg), which is based on the System V + <B +CLASS="COMMAND" +>init</B +> design. The BSD versions of Unix have + a different <B +CLASS="COMMAND" +>init</B +>. The primary difference + is run levels: System V has them, BSD does not (at least + traditionally). This difference is not essential. We'll look + at <B +CLASS="COMMAND" +>sysvinit</B +> only. </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1743" +HREF="c1705.html#AEN1743" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +><B +CLASS="COMMAND" +>init</B +> itself is not + allowed to die. You can't kill <B +CLASS="COMMAND" +>init</B +> + even with SIGKILL. </P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1697.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1752.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Emergency boot floppies</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Configuring <B +CLASS="COMMAND" +>init</B +> to start <B +CLASS="COMMAND" +>getty</B +>: the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c1905.html b/sag-0.6.1-www/sag-0.6.1.html/c1905.html new file mode 100644 index 0000000..ee4b091 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c1905.html @@ -0,0 +1,315 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Logging In And Out</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Booting in single user mode" +HREF="x1880.html"><LINK +REL="NEXT" +TITLE="Logins via the network" +HREF="x1944.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1880.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1944.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="LOG-IN-AND-OUT" +>Chapter 8. Logging In And Out</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c1905.html#AEN1911" +>Logins via terminals</A +></DT +><DT +><A +HREF="x1944.html" +>Logins via the network</A +></DT +><DT +><A +HREF="x1956.html" +>What <B +CLASS="COMMAND" +>login</B +> does</A +></DT +><DT +><A +HREF="x1988.html" +>X and xdm</A +></DT +><DT +><A +HREF="x1991.html" +>Access control</A +></DT +><DT +><A +HREF="x2008.html" +>Shell startup</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“I don't care to belong to a club + that accepts people like me as a member.” + (Groucho Marx)</P +></BLOCKQUOTE +><P +> This section describes what happens when a user logs + in or out. The various interactions of background processes, + log files, configuration files, and so on are described in + some detail. + </P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1911" +>Logins via terminals</A +></H1 +><P +><A +HREF="c1905.html#TERMINAL-LOGINS" +>Figure 8-1</A +> shows how logins happen via + terminals. First, <B +CLASS="COMMAND" +>init</B +> makes sure there is + a <B +CLASS="COMMAND" +>getty</B +> program for the terminal connection + (or console). <B +CLASS="COMMAND" +>getty</B +> listens at the terminal + and waits for the user to notify that he is ready to login in + (this usually means that the user must type something). When it + notices a user, <B +CLASS="COMMAND" +>getty</B +> outputs a welcome message + (stored in <TT +CLASS="FILENAME" +>/etc/issue</TT +>), and prompts for + the username, and finally runs the <B +CLASS="COMMAND" +>login</B +> + program. <B +CLASS="COMMAND" +>login</B +> gets the username as a + parameter, and prompts the user for the password. If these + match, <B +CLASS="COMMAND" +>login</B +> starts the shell configured + for the user; else it just exits and terminates the process + (perhaps after giving the user another chance at entering the + username and password). <B +CLASS="COMMAND" +>init</B +> notices that + the process terminated, and starts a new <B +CLASS="COMMAND" +>getty</B +> + for the terminal. + </P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="TERMINAL-LOGINS" +>Figure 8-1. Logins via terminals: the interaction of <B +CLASS="COMMAND" +>init</B +>, <B +CLASS="COMMAND" +>getty</B +>, <B +CLASS="COMMAND" +>login</B +>, and the shell.</A +></B +></P +><P +><IMG +SRC="logins-via-terminals.gif"></P +></DIV +><P +> Note that the only new process is the + one created by <B +CLASS="COMMAND" +>init</B +> (using the + <TT +CLASS="FUNCTION" +>fork</TT +> system call); <B +CLASS="COMMAND" +>getty</B +> + and <B +CLASS="COMMAND" +>login</B +> only replace the program running in + the process (using the <TT +CLASS="FUNCTION" +>exec</TT +> system call). + </P +><P +> A separate program, for noticing the user, is needed + for serial lines, since it can be (and traditionally was) + complicated to notice when a terminal becomes active. + <B +CLASS="COMMAND" +>getty</B +> also adapts to the speed and other + settings of the connection, which is important especially for + dial-in connections, where these parameters may change from call + to call. </P +><P +> There are several versions of <B +CLASS="COMMAND" +>getty</B +> + and <B +CLASS="COMMAND" +>init</B +> in use, all with their good and + bad points. It is a good idea to learn about the versions on + your system, and also about the other versions (you could use the + Linux Software Map to search them). If you don't have dial-in's, + you probably don't have to worry about <B +CLASS="COMMAND" +>getty</B +>, + but <B +CLASS="COMMAND" +>init</B +> is still important. </P +></DIV +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1880.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1944.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Booting in single user mode</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Logins via the network</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c2018.html b/sag-0.6.1-www/sag-0.6.1.html/c2018.html new file mode 100644 index 0000000..9a793eb --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c2018.html @@ -0,0 +1,232 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Managing user accounts</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Shell startup" +HREF="x2008.html"><LINK +REL="NEXT" +TITLE="Creating a user" +HREF="x2031.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2008.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2031.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="AEN2018" +>Chapter 9. Managing user accounts</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c2018.html#AEN2024" +>What's an account?</A +></DT +><DT +><A +HREF="x2031.html" +>Creating a user</A +></DT +><DT +><A +HREF="x2124.html" +>Changing user properties</A +></DT +><DT +><A +HREF="x2152.html" +>Removing a user</A +></DT +><DT +><A +HREF="x2166.html" +>Disabling a user temporarily</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“The similarities of sysadmins and drug + dealers: both measure stuff in K's, and both have users.” + (Old, tired computer joke.)</P +></BLOCKQUOTE +><P +> This chapter explains how to create new user accounts, + how to modify the properties of those accounts, and how to remove + the accounts. Different Linux systems have different tools for + doing this.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2024" +>What's an account?</A +></H1 +><P +> When a computer is used by many people it is usually + necessary to differentiate between the users, for example, so that + their private files can be kept private. This is important even + if the computer can only be used by a single person at a time, + as with most microcomputers. + + <A +NAME="AEN2027" +HREF="#FTN.AEN2027" +>[1]</A +> + + Thus, each user is given a unique username, and that name is + used to log in. </P +><P +> There's more to a user than just a name, however. An + <I +CLASS="GLOSSTERM" +>account</I +> is all the files, resources, + and information belonging to one user. The term hints at banks, + and in a commercial system each account usually has some money + attached to it, and that money vanishes at different speeds + depending on how much the user stresses the system. For example, + disk space might have a price per megabyte and day, and processing + time might have a price per second. </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2027" +HREF="c2018.html#AEN2027" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>It might be quite embarrassing if my + sister could read my love letters.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2008.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2031.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Shell startup</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Creating a user</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c212.html b/sag-0.6.1-www/sag-0.6.1.html/c212.html new file mode 100644 index 0000000..1060903 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c212.html @@ -0,0 +1,432 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Overview of the Directory Tree</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Major services in a UNIX system" +HREF="x94.html"><LINK +REL="NEXT" +TITLE="The root filesystem" +HREF="x267.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x94.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x267.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="DIR-TREE-OVERVIEW" +>Chapter 3. Overview of the Directory Tree</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c212.html#AEN218" +>Background</A +></DT +><DT +><A +HREF="x267.html" +>The root filesystem</A +></DT +><DT +><A +HREF="x338.html" +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory</A +></DT +><DT +><A +HREF="x463.html" +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory</A +></DT +><DT +><A +HREF="x472.html" +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem</A +></DT +><DT +><A +HREF="x531.html" +>The <TT +CLASS="FILENAME" +>/var</TT +> filesystem</A +></DT +><DT +><A +HREF="x595.html" +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“ Two days later, there was Pooh, sitting + on his branch, dangling his legs, and there, beside him, were + four pots of honey...” (A.A.\ Milne) </P +></BLOCKQUOTE +><P +>This chapter describes the important parts of a standard + Linux directory tree, based on the FSSTND filesystem + standard. It outlines the normal way of breaking the directory + tree into separate filesystems with different purposes and gives + the motivation behind this particular split. Some alternative + ways of splitting are also described.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN218" +>Background</A +></H1 +><P +>This chapter is loosely based on the <I +CLASS="CITETITLE" +>Linux + filesystem standard</I +>, FSSTND, version 1.2 (see + the bibliography), which attempts to set a standard for how + the directory tree in a Linux system is organized. Such a + standard has the advantage that it will be easier to write or + port software for Linux, and to administer Linux machines, since + everything will be in their usual places. There is no authority + behind the standard that forces anyone to comply with it, but it + has got the support of most, if not all, Linux distributions. + It is not a good idea to break with the FSSTND without very + compelling reasons. The FSSTND attempts to follow Unix tradition + and current trends, making Linux systems familiar to those with + experience with other Unix systems, and vice versa.</P +><P +>This chapter is not as detailed as the FSSTND. A system + administrator should also read the FSSTND for a complete + understanding.</P +><P +>This chapter does not explain all files in detail. + The intention is not to describe every file, but to give + an overview of the system from a filesystem point of view. + Further information on each file is available elsewhere in this + manual or the manual pages.</P +><P +>The full directory tree is intended to be breakable + into smaller parts, each on its own disk or partition, + to accomodate to disk size limits and to ease backup + and other system administration. The major parts are the + root, <TT +CLASS="FILENAME" +>/usr</TT +>, <TT +CLASS="FILENAME" +>/var</TT +>, and + <TT +CLASS="FILENAME" +>/home</TT +> filesystems (see + <A +HREF="c212.html#FSTREE" +>Figure 3-1</A +>). Each part has a different purpose. + The directory tree has been designed so that it works well in + a network of Linux machines which may share some parts of the + filesystems over a read-only device (e.g., a CD-ROM), or over + the network with NFS.</P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="FSTREE" +>Figure 3-1. Parts of a Unix directory tree. Dashed lines indicate partition limits.</A +></B +></P +><P +><IMG +SRC="fstree.gif"></P +></DIV +><P +>The roles of the different parts of the directory tree are + described below. + + <P +></P +><UL +><LI +><P +>The root filesystem is specific for + each machine (it is generally stored on a local disk, + although it could be a ramdisk or network drive as well) + and contains the files that are necessary for booting + the system up, and to bring it up to such a state that + the other filesystems may be mounted. The contents of + the root filesystem will therefore be sufficient for + the single user state. It will also contain tools for + fixing a broken system, and for recovering lost files + from backups.</P +></LI +><LI +><P +> The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem + contains all commands, libraries, manual pages, and + other unchanging files needed during normal operation. + No files in <TT +CLASS="FILENAME" +>/usr</TT +> should be specific + for any given machine, nor should they be modified during + normal use. This allows the files to be shared over + the network, which can be cost-effective since it saves + disk space (there can easily be hundreds of megabytes in + <TT +CLASS="FILENAME" +>/usr</TT +>), and can make administration + easier (only the master <TT +CLASS="FILENAME" +>/usr</TT +> needs to + be changed when updating an application, not each machine + separately). Even if the filesystem is on a local disk, + it could be mounted read-only, to lessen the chance of + filesystem corruption during a crash.</P +></LI +><LI +><P +>The <TT +CLASS="FILENAME" +>/var</TT +> + filesystem contains files that change, such as spool + directories (for mail, news, printers, etc), log + files, formatted manual pages, and temporary files. + Traditionally everything in <TT +CLASS="FILENAME" +>/var</TT +> + has been somewhere below <TT +CLASS="FILENAME" +>/usr</TT +>, but + that made it impossible to mount <TT +CLASS="FILENAME" +>/usr</TT +> + read-only.</P +><P +></P +></LI +><LI +><P +> The <TT +CLASS="FILENAME" +>/home</TT +> + filesystem contains the users' home directories, i.e., all + the real data on the system. Separating home directories + to their own directory tree or filesystem makes backups + easier; the other parts often do not have to be backed + up, or at least not as often (they seldom change). + A big <TT +CLASS="FILENAME" +>/home</TT +> might have to be + broken on several filesystems, which requires adding an + extra naming level below <TT +CLASS="FILENAME" +>/home</TT +>, + e.g., <TT +CLASS="FILENAME" +>/home/students</TT +> and + <TT +CLASS="FILENAME" +>/home/staff</TT +>.</P +></LI +></UL +> </P +><P +>Although the different parts have been called filesystems + above, there is no requirement that they actually be on separate + filesystems. They could easily be kept in a single one if the + system is a small single-user system and the user wants to keep + things simple. The directory tree might also be divided into + filesystems differently, depending on how large the disks are, and + how space is allocated for various purposes. The important part, + though, is that all the standard <I +CLASS="EMPHASIS" +>names</I +> + work; even if, say, <TT +CLASS="FILENAME" +>/var</TT +> and + <TT +CLASS="FILENAME" +>/usr</TT +> are actually on the same + partition, the names <TT +CLASS="FILENAME" +>/usr/lib/libc.a</TT +> + and <TT +CLASS="FILENAME" +>/var/log/messages</TT +> must work, for + example by moving files below <TT +CLASS="FILENAME" +>/var</TT +> + into <TT +CLASS="FILENAME" +>/usr/var</TT +>, and + making <TT +CLASS="FILENAME" +>/var</TT +> a symlink to + <TT +CLASS="FILENAME" +>/usr/var</TT +>.</P +><P +>The Unix filesystem structure groups files according to purpose, + i.e., all commands are in one place, all data files in another, + documentation in a third, and so on. An alternative would be to + group files files according to the program they belong to, i.e., + all Emacs files would be in one directory, all TeX in another, + and so on. The problem with the latter approach is that it + makes it difficult to share files (the program directory often + contains both static and shareable and changing and + non-shareable files), and sometimes to even find the files + (e.g., manual pages in a huge number of places, and making the + manual page programs find all of them is a maintenance + nightmare).</P +></DIV +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x94.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x267.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Major services in a UNIX system</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The root filesystem</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c2187.html b/sag-0.6.1-www/sag-0.6.1.html/c2187.html new file mode 100644 index 0000000..c8d5512 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c2187.html @@ -0,0 +1,318 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Backups</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Disabling a user temporarily" +HREF="x2166.html"><LINK +REL="NEXT" +TITLE="Selecting the backup medium" +HREF="x2206.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2166.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2206.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="BACKUPS" +>Chapter 10. Backups</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c2187.html#AEN2193" +>On the importance of being backed up</A +></DT +><DT +><A +HREF="x2206.html" +>Selecting the backup medium</A +></DT +><DT +><A +HREF="x2216.html" +>Selecting the backup tool</A +></DT +><DT +><A +HREF="x2240.html" +>Simple backups</A +></DT +><DT +><A +HREF="x2315.html" +>Multilevel backups</A +></DT +><DT +><A +HREF="x2405.html" +>What to back up</A +></DT +><DT +><A +HREF="x2417.html" +>Compressed backups</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +><P +CLASS="LITERALLAYOUT" +>Hardware is indeterministically reliable. <br> +Software is deterministically unreliable.<br> +People are indeterministically unreliable.<br> +Nature is deterministically reliable.</P +></P +></BLOCKQUOTE +><P +> This chapter explains about why, how, and when to make + backups, and how to restore things from backups.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2193" +>On the importance of being backed up</A +></H1 +><P +> Your data is valuable. It will cost you time and effort + re-create it, and that costs money or at least personal grief + and tears; sometimes it can't even be re-created, e.g., if it + is the results of some experiments. Since it is an investment, + you should protect it and take steps to avoid losing it. </P +><P +> There are basically four reasons why you might lose data: + hardware failures, software bugs, human action, or natural + disasters. + + <A +NAME="AEN2197" +HREF="#FTN.AEN2197" +>[1]</A +> + + Although modern hardware tends to be quite reliable, it can + still break seemingly spontaneously. The most critical piece + of hardware for storing data is the hard disk, which relies on + tiny magnetic fields remaining intact in a world filled with + electromagnetic noise. Modern software doesn't even tend to + be reliable; a rock solid program is an exception, not a rule. + Humans are quite unreliable, they will either make a mistake, or + they will be malicious and destroy data on purpose. Nature might + not be evil, but it can wreak havoc even when being good. All in + all, it is a small miracle that anything works at all. </P +><P +> Backups are a way to protect the investment in data. + By having several copies of the data, it does not matter as much + if one is destroyed (the cost is only that of the restoration + of the lost data from the backup). </P +><P +> It is important to do backups properly. Like everything + else that is related to the physical world, backups will fail + sooner or later. Part of doing backups well is to make sure + they work; you don't want to notice that your backups didn't work. + + <A +NAME="AEN2201" +HREF="#FTN.AEN2201" +>[2]</A +> + + Adding insult to injury, you might have a bad crash just as + you're making the backup; if you have only one backup medium, + it might destroyed as well, leaving you with the smoking ashes + of hard work. + + <A +NAME="AEN2203" +HREF="#FTN.AEN2203" +>[3]</A +> + + Or you might notice, when trying to restore, that you forgot to + back up something important, like the user database on a 15000 + user site. Best of all, all your backups might be working + perfectly, but the last known tape drive reading the kind of + tapes you used was the one that now has a bucketful of water + in it. </P +><P +> When it comes to backups, paranoia is in the job + description. </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2197" +HREF="c2187.html#AEN2197" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>The fifth reason is ``something + else''.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2201" +HREF="c2187.html#AEN2201" +>[2]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Don't laugh. This has happened to + several people.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2203" +HREF="c2187.html#AEN2203" +>[3]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Been there, done that...</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2166.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2206.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Disabling a user temporarily</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Selecting the backup medium</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c2432.html b/sag-0.6.1-www/sag-0.6.1.html/c2432.html new file mode 100644 index 0000000..35c06e5 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c2432.html @@ -0,0 +1,272 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Keeping Time</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Compressed backups" +HREF="x2417.html"><LINK +REL="NEXT" +TITLE="The hardware and software clocks" +HREF="x2451.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2417.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2451.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="AEN2432" +>Chapter 11. Keeping Time</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c2432.html#AEN2438" +>Time zones</A +></DT +><DT +><A +HREF="x2451.html" +>The hardware and software clocks</A +></DT +><DT +><A +HREF="x2457.html" +>Showing and setting time</A +></DT +><DT +><A +HREF="x2504.html" +>When the clock is wrong</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“Time is an illusion. Lunchtime double + so.” (Douglas Adams.)</P +></BLOCKQUOTE +><P +> This chapter explains how a Linux system keeps time, + and what you need to do to avoid causing trouble. Usually, + you don't need to do anything about time, but it is good to + understand it.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2438" +>Time zones</A +></H1 +><P +> Time measurement is based on mostly regular natural + phenomena, such as alternating light and dark periods caused + by the rotation of the planet. The total time taken by two + successive periods is constant, but the lengths of the light + and dark period vary. One simple constant is noon. </P +><P +> Noon is the time of the day when the Sun is at its + highest position. Since the Earth is round, + + <A +NAME="AEN2442" +HREF="#FTN.AEN2442" +>[1]</A +> + + noon happens at different times in different places. This leads + to the concept of <I +CLASS="GLOSSTERM" +>local time</I +>. Humans + measure time in many units, most of which are tied to natural + phenomena like noon. As long as you stay in the same place, + it doesn't matter that local times differ. </P +><P +> As soon as you need to communicate with distant places, + you'll notice the need for a common time. In modern times, + most of the places in the world communicate with most other + places in the world, so a global standard for measuring time + has been defined. This time is called <I +CLASS="GLOSSTERM" +>universal + time</I +> (UT or UTC, formerly known as Greenwich Mean Time + or GMT, since it used to be local time in Greenwich, England). + When people with different local times need to communicate, + they can express times in universal time, so that there is no + confusion about when things should happen. </P +><P +> Each local time is called a time zone. While geography + would allow all places that have noon at the same time have the + same time zone, politics makes it difficult. For various reasons, + many countries use <I +CLASS="GLOSSTERM" +>daylight savings time</I +>, + that is, they move their clocks to have more natural light + while they work, and then move the clocks back during winter. + Other countries do not do this. Those that do, do not agree when + the clocks should be moved, and they change the rules from year + to year. This makes time zone conversions definitely non-trivial. + </P +><P +> Time zones are best named by the location or by telling + the difference between local and universal time. In the US + and some other countries, the local time zones have a name and + a three letter abbreviation. The abbreviations are not unique, + however, and should not be used unless the country is also named. + It is better to talk about the local time in, say, Helsinki, + than about East European time, since not all countries in Eastern + Europe follow the same rules. </P +><P +> Linux has a time zone package that knows about all + existing time zones, and that can easily be updated when the + rules change. All the system administrator needs to do is to + select the appropriate time zone. Also, each user can set his + own time zone; this is important since many people work with + computers in different countries over the Internet. When the + rules for daylight savings time change in your local time zone, + make sure you'll upgrade at least that part of your Linux system. + Other than setting the system time zone and upgrading the time + zone data files, there is little need to bother about time. + </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2442" +HREF="c2432.html#AEN2442" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>According to + recent research.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2417.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2451.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Compressed backups</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The hardware and software clocks</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c31.html b/sag-0.6.1-www/sag-0.6.1.html/c31.html new file mode 100644 index 0000000..9b9ea63 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c31.html @@ -0,0 +1,337 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Introduction</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Source and pre-formatted versions available" +HREF="f26.html"><LINK +REL="NEXT" +TITLE="Overview of a Linux System" +HREF="c63.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="f26.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c63.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="AEN31" +>Chapter 1. Introduction</A +></H1 +><BLOCKQUOTE +><P +>“In the beginning, the file was without + form, and void; and emptiness was upon the face of the bits. + And the Fingers of the Author moved upon the face of the + keyboard. And the Author said, Let there be words, and there + were words.”</P +></BLOCKQUOTE +><P +>This manual, the Linux System Administrators' Guide, + describes the system administration aspects of using Linux. + It is intended for people who know next to nothing about system + administration (as in ``what is it?''), but who have already + mastered at least the basics of normal usage. This manual also + doesn't tell you how to install Linux; that is described in the + Installation and Getting Started document. See below for more + information about Linux manuals.</P +><P +>System administration is all the things that one has to + do to keep a computer system in a useable shape. It includes + things like backing up files (and restoring them if necessary), + installing new programs, creating accounts for users (and deleting + them when no longer needed), making certain that the filesystem + is not corrupted, and so on. If a computer were, say, a house, + system administration would be called maintenance, and would + include cleaning, fixing broken windows, and other such things. + System administration is not called maintenance, because that + would be too simple. + + <A +NAME="AEN38" +HREF="#FTN.AEN38" +>[1]</A +> + + </P +><P +>The structure of this manual is such that many of the + chapters should be usable independently, so that if you need + information about, say, backups, you can read just that chapter. + This hopefully makes the book easier to use as a reference manual, + and makes it possible to read just a small part when needed, + instead of having to read everything. However, this manual is + first and foremost a tutorial, and a reference manual only as + a lucky coincidence.</P +><P +>This manual is not intended to be used completely by itself. + Plenty of the rest of the Linux documentation is also important + for system administrators. After all, a system administrator is + just a user with special privileges and duties. A very important + resource are the manual pages, which should always be consulted + when a command is not familiar.</P +><P +>While this manual is targeted at Linux, a general principle + has been that it should be useful with other UNIX based operating + systems as well. Unfortunately, since there is so much variance + between different versions of UNIX in general, and in system + administration in particular, there is little hope to cover + all variants. Even covering all possibilities for Linux is + difficult, due to the nature of its development.</P +><P +>There is no one official Linux distribution, so different + people have different setups, and many people have a setup they + have built up themselves. This book is not targeted at any + one distribution, even though I use the Debian GNU/Linux system + almost exclusively. When possible, I have tried to point out + differences, and explain several alternatives.</P +><P +>I have tried to describe how things work, rather than just + listing ``five easy steps'' for each task. This means that there + is much information here that is not necessary for everyone, + but those parts are marked as such and can be skipped if you + use a preconfigured system. Reading everything will, naturally, + increase your understanding of the system and should make using + and administering it more pleasant.</P +><P +>Like all other Linux related development, the work was + done on a volunteer basis: I did it because I thought it might + be fun and because I felt it should be done. However, like all + volunteer work, there is a limit to how much effort I have been + able to spend, and also on how much knowledge and experience + I have. This means that the manual is not necessarily as good + as it would be if a wizard had been paid handsomely to write it + and had spent a few years to perfect it. I think, of course, + that it is pretty nice, but be warned.</P +><P +>One particular point where I have cut corners is that I + have not covered very thoroughly many things that are already + well documented in other freely available manuals. This applies + especially to program specific documentation, such as all the + details of using <B +CLASS="COMMAND" +>mkfs</B +>}. I only describe the + purpose of the program, and as much of its usage as is necessary + for the purposes of this manual. For further information, + I refer the gentle reader to these other manuals. Usually, + all of the referred to documentation is part of the full Linux + documentation set.</P +><P +>While I have tried to make this manual as good as possible, + I would really like to hear from you if you have any ideas on + how to make it better. Bad language, factual errors, ideas for + new areas to cover, rewritten sections, information about how + various UNIX versions do things, I am interested in all of it. My + contact information is available via the World Wide Web at <A +HREF="http://www.iki.fi/liw/mail-to-lasu.html" +TARGET="_top" +>http://www.iki.fi/liw/mail-to-lasu.html</A +>. + </P +><P +>Many people have helped me with this book, directly or + indirectly. I would like to especially thank Matt Welsh for + inspiration and LDP leadership, Andy Oram for getting me to work + again with much-valued feedback, Olaf Kirch for showing me that it + can be done, and Adam Richter at Yggdrasil and others for showing + me that other people can find it interesting as well.</P +><P +>Stephen Tweedie, H.~Peter Anvin, R\'emy Card, Theodore + Ts'o, and Stephen Tweedie have let me borrow their work (and + thus make the book look thicker and much more impressive): + a comparison between the xia and ext2 filesystems, the device + list and a description of the ext2 filesystem. These aren't + part of the book any more. I am most grateful for this, and + very apologetic for the earlier versions that sometimes lacked + proper attribution.</P +><P +>In addition, I would like to thank Mark Komarinski for + sending his material in 1993 and the many system administration + columns in Linux Journal. They are quite informative and + inspirational.</P +><P +>Many useful comments have been sent by a large number + of people. My miniature black hole of an archive doesn't let + me find all their names, but some of them are, in alphabetical + order: Paul Caprioli, Ales Cepek, Marie-France Declerfayt, + Dave Dobson, Olaf Flebbe, Helmut Geyer, Larry Greenfield and + his father, Stephen Harris, Jyrki Havia, Jim Haynes, York Lam, + Timothy Andrew Lister, Jim Lynch, Michael J. Micek, Jacob Navia, + Dan Poirier, Daniel Quinlan, Jouni K Seppänen, Philippe Steindl, + G.B.\ Stotte. My apologies to anyone I have forgotten.</P +><P +>META need to add typographical conventsions and LDP blurb + here.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN56" +>The Linux Documentation Project</A +></H1 +><P +>The Linux Documentation Project, or LDP, is a loose team + of writers, proofreaders, and editors who are working together + to provide complete documentation for the Linux operating system. + The overall coordinator of the project is Greg Hankins.</P +><P +>This manual is one in a set of several being + distributed by the LDP, including a Linux Users' Guide, + System Administrators' Guide, Network Administrators' Guide, + and Kernel Hackers' Guide. These manuals are all available + in source format, .dvi format, and postscript output + by anonymous FTP from sunsite.unc.edu, in the directory + <TT +CLASS="FILENAME" +>/pub/Linux/docs/LDP</TT +>.</P +><P +>We encourage anyone with a penchant for writing or editing + to join us in improving Linux documentation. If you have + Internet e-mail access, you can contact Greg Hankins at + <TT +CLASS="EMAIL" +><<A +HREF="mailto:gregh@sunsite.unc.edu" +>gregh@sunsite.unc.edu</A +>></TT +>.</P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN38" +HREF="c31.html#AEN38" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>There are some people who + <I +CLASS="EMPHASIS" +>do</I +> call it that, but that's + just because they have never read this manual, poor + things.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="f26.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c63.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Source and pre-formatted versions available</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Overview of a Linux System</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c63.html b/sag-0.6.1-www/sag-0.6.1.html/c63.html new file mode 100644 index 0000000..215276b --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c63.html @@ -0,0 +1,264 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Overview of a Linux System</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Introduction" +HREF="c31.html"><LINK +REL="NEXT" +TITLE="Important parts of the kernel" +HREF="x83.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c31.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x83.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="AEN63" +>Chapter 2. Overview of a Linux System</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c63.html#AEN69" +>Various parts of an operating system</A +></DT +><DT +><A +HREF="x83.html" +>Important parts of the kernel</A +></DT +><DT +><A +HREF="x94.html" +>Major services in a UNIX system</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“God looked over everything he + had made, and saw that it was very good. ” (Genesis + 1:31)</P +></BLOCKQUOTE +><P +>This chapter gives an overview of a Linux system. First, + the major services provided by the operating system are described. + Then, the programs that implement these services are described + with a considerable lack of detail. The purpose of this chapter + is to give an understanding of the system as a whole, so that + each part is described in detail elsewhere.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN69" +>Various parts of an operating system</A +></H1 +><P +>A UNIX operating system consists + of a <I +CLASS="GLOSSTERM" +>kernel</I +> and some + <I +CLASS="GLOSSTERM" +>system programs</I +>. There are also some + <I +CLASS="GLOSSTERM" +>application</I +> programs} for doing work. + The kernel is the heart of the operating system. + + <A +NAME="AEN75" +HREF="#FTN.AEN75" +>[1]</A +> + + It keeps track of files on the disk, starts programs and runs + them concurrently, assigns memory and other resources to various + processes, receives packets from and sends packets to the network, + and so on. The kernel does very little by itself, but it provides + tools with which all services can be built. It also prevents + anyone from accessing the hardware directly, forcing everyone + to use the tools it provides. This way the kernel provides + some protection for users from each other. The tools provided + by the kernel are used via <I +CLASS="GLOSSTERM" +>system calls<I +CLASS="GLOSSTERM" +>; + see manual page section 2 for more information on these. </I +></I +></P +><P +>The system programs use the tools provided by the kernel to + implement the various services required from an operating system. + System programs, and all other programs, run `on top of the + kernel', in what is called the <I +CLASS="GLOSSTERM" +>user mode</I +>. + The difference between system and application programs is + one of intent: applications are intended for getting useful + things done (or for playing, if it happens to be a game), + whereas system programs are needed to get the system working. + A word processor is an application; <B +CLASS="COMMAND" +>telnet</B +> + is a system program. The difference is often somewhat blurry, + however, and is important only to compulsive categorizers.</P +><P +>An operating system can also contain compilers and their + corresponding libraries (GCC and the C library in particular under + Linux), although not all programming languages need be part of + the operating system. Documentation, and sometimes even games, + can also be part of it. Traditionally, the operating system has + been defined by the contents of the installation tape or disks; + with Linux it is not as clear since it is spread all over the + FTP sites of the world.</P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN75" +HREF="c63.html#AEN75" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>In fact, it is often mistakenly considered + to be the operating system itself, but it is not. + An operating system provides many more services than a + plain kernel.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c31.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x83.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Introduction</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Important parts of the kernel</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/c701.html b/sag-0.6.1-www/sag-0.6.1.html/c701.html new file mode 100644 index 0000000..0e9b325 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/c701.html @@ -0,0 +1,385 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Using Disks and Other Storage Media</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="The /proc filesystem" +HREF="x595.html"><LINK +REL="NEXT" +TITLE="Hard disks" +HREF="x747.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x595.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x747.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="CHAPTER" +><H1 +><A +NAME="AEN701" +>Chapter 4. Using Disks and Other Storage Media</A +></H1 +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="c701.html#AEN721" +>Two kinds of devices</A +></DT +><DT +><A +HREF="x747.html" +>Hard disks</A +></DT +><DT +><A +HREF="x787.html" +>Floppies</A +></DT +><DT +><A +HREF="x801.html" +>CD-ROM's</A +></DT +><DT +><A +HREF="x811.html" +>Tapes</A +></DT +><DT +><A +HREF="x817.html" +>Formatting</A +></DT +><DT +><A +HREF="x876.html" +>Partitions</A +></DT +><DT +><A +HREF="x1029.html" +>Filesystems</A +></DT +><DT +><A +HREF="x1366.html" +>Disks without filesystems</A +></DT +><DT +><A +HREF="x1384.html" +>Allocating disk space</A +></DT +></DL +></DIV +><BLOCKQUOTE +><P +>“On a clear disk you can seek forever. + ”</P +></BLOCKQUOTE +><P +>When you install or upgrade your system, you need to do a + fair amount of work on your disks. You have to make filesystems + on your disks so that files can be stored on them and reserve + space for the different parts of your system.</P +><P +>This chapter explains all these initial activities. Usually, + once you get your system set up, you won't have to go through + the work again, except for using floppies. You'll need to come + back to this chapter if you add a new disk or want to fine-tune + your disk usage.</P +><P +> </P +><P +>The basic tasks in administering disks are: + + <P +></P +><UL +><LI +><P +> Format your disk. This does various things to prepare it for + use, such as checking for bad sectors. (Formatting is nowadays + not necessary for most hard disks.)</P +></LI +><LI +><P +> Partition a hard disk, if you want to use it for several + activities that aren't supposed to interfere with one another. + One reason for partitioning is to store different operating + systems on the same disk. Another reason is to keep user + files separate from system files, which simplifies back-ups + and helps protect the system files from corruption. + </P +></LI +><LI +><P +> Make a filesystem (of a suitable type) on each disk or partition. + The disk means + nothing to Linux until you make a filesystem; then files can + be created and accessed on it. + </P +></LI +><LI +><P +> Mount different filesystems to form a single tree structure, either + automatically, or manually as needed. (Manually mounted filesystems + usually need to be unmounted manually as well.) + </P +></LI +></UL +> + + </P +><P +><A +HREF="c1450.html" +>Chapter 5</A +> contains information + about virtual memory and disk caching, of which you also need + to be aware when using disks.</P +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN721" +>Two kinds of devices</A +></H1 +><P +>UNIX, and therefore Linux, recognizes two different + kinds of device: random-access block devices (such as disks), + and character devices (such as tapes and serial lines), + some of which may be serial, and some random-access. Each + supported device is represented in the filesystem as a + <I +CLASS="GLOSSTERM" +>device file</I +>. + When you read or write a device file, the + data comes from or goes to the device it represents. This way + no special programs (and no special application programming + methodology, such as catching interrupts or polling a serial + port) are necessary to access devices; for example, to send a + file to the printer, one could just say + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>cat filename > /dev/lp1</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + and the contents of the file are printed (the file must, of + course, be in a form that the printer understands). However, + since it is not a good idea to have several people cat their + files to the printer at the same time, one usually uses a special + program to send the files to be printed (usually <B +CLASS="COMMAND" +>lpr</B +>). + This program makes sure that only one file is being printed + at a time, and will automatically send files to the printer as + soon as it finishes with the previous file. Something similar + is needed for most devices. In fact, one seldom needs to worry + about device files at all.</P +><P +>Since devices show up as files in the filesystem (in the + <TT +CLASS="FILENAME" +>/dev</TT +> directory), it is easy + to see just what device files exist, using <B +CLASS="COMMAND" +>ls</B +> or + another suitable command. In the output of <B +CLASS="COMMAND" +>ls -l</B +>, the + first column contains the type of the file and its + permissions. For example, inspecting a serial device + gives on my system + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>ls -l /dev/cua0</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>crw-rw-rw- 1 root uucp 5, 64 Nov 30 1993 /dev/cua0</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The first character in the first column, i.e., + `<TT +CLASS="LITERAL" +>c</TT +>' in <TT +CLASS="LITERAL" +>crw-rw-rw-</TT +> + above, tells an informed user the type of the file, in this + case a character device. For ordinary files, the first + character is `<TT +CLASS="LITERAL" +>-</TT +>', for directories + it is `<TT +CLASS="LITERAL" +>d</TT +>', and for block devices + `<TT +CLASS="LITERAL" +>b</TT +>'; see the <B +CLASS="COMMAND" +>ls</B +> man page + for further information.</P +><P +>Note that usually all device files exist even though the + device itself might be not be installed. So just because you + have a file <TT +CLASS="FILENAME" +>/dev/sda</TT +>, it doesn't mean that you really do + have an SCSI hard disk. Having all the device files makes the + installation programs simpler, and makes it easier to add new + hardware (there is no need to find out the correct parameters + for and create the device files for the new device).</P +></DIV +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x595.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x747.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Hard disks</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/f23.html b/sag-0.6.1-www/sag-0.6.1.html/f23.html new file mode 100644 index 0000000..16f113f --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/f23.html @@ -0,0 +1,127 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Dedication</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="NEXT" +TITLE="Source and pre-formatted versions available" +HREF="f26.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="book1.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="f26.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="PREFACE" +><H1 +><A +NAME="AEN23" +>Dedication</A +></H1 +><P +>This place is dedicated to a future dedication.</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="book1.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="f26.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The Linux System Administrators' Guide</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Source and pre-formatted versions available</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/f26.html b/sag-0.6.1-www/sag-0.6.1.html/f26.html new file mode 100644 index 0000000..3eb674f --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/f26.html @@ -0,0 +1,139 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Source and pre-formatted versions available</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="Dedication" +HREF="f23.html"><LINK +REL="NEXT" +TITLE="Introduction" +HREF="c31.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="f23.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c31.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="PREFACE" +><H1 +><A +NAME="AEN26" +>Source and pre-formatted versions available</A +></H1 +><P +>The source code and and other machine readable formats + of this book can be found on the Internet via anonymous + FTP at the Linux Documentation Project home page <A +HREF="http://sunsite.unc.edu/LDP/" +TARGET="_top" +>http://sunsite.unc.edu/LDP/</A +>, + or at the home page of this book at <A +HREF="http://www.iki.fi/liw/linux/sag/" +TARGET="_top" +>http://www.iki.fi/liw/linux/sag/</A +>. + Available are at least PostScript and TeX .DVI formats.</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="f23.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c31.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Dedication</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Introduction</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/fstree.gif b/sag-0.6.1-www/sag-0.6.1.html/fstree.gif Binary files differnew file mode 100644 index 0000000..fbd9e7d --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/fstree.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/g2516.html b/sag-0.6.1-www/sag-0.6.1.html/g2516.html new file mode 100644 index 0000000..8fb0f7c --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/g2516.html @@ -0,0 +1,236 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Glossary (DRAFT)</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="PREVIOUS" +TITLE="When the clock is wrong" +HREF="x2504.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2504.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +> </TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="GLOSSARY" +><H1 +><A +NAME="AEN2516" +>Glossary (DRAFT)</A +></H1 +><BLOCKQUOTE +><P +>“The Librarian of the Unseen University + had unilaterally decided to aid comprehension + by producing an Orang-utan/Human Dictionary. + He'd been working on it for three months. + It wasn't easy. He'd got as far as `Oook.'” + (Terry Pratchett, ``Men At Arms'')</P +></BLOCKQUOTE +><P +> This is a short list of word definitions for concepts + relating to Linux and system administration. </P +><DL +><DT +><B +>ambition</B +></DT +><DD +><P +> The act of writing funny sentences in the hope of getting them + into the Linux cookie file. + </P +></DD +><DT +><B +>application program</B +></DT +><DD +><P +> Software that does something useful. The results of using an + application program is what the computer was bought for. + See also system program, operating system. + </P +></DD +><DT +><B +>daemon</B +></DT +><DD +><P +> A process lurking in the background, usually unnoticed, until + something triggers it into action. For example, the \cmd{update} + daemon wakes up every thirty seconds or so to flush the buffer + cache, and the \cmd{sendmail} daemon awakes whenever someone sends + mail. + </P +></DD +><DT +><B +>file system</B +></DT +><DD +><P +> The methods and data structures that an operating + system uses to keep track of files on a disk or partition; + the way the files are organized on the disk. Also used about + a partition or disk that is used to store the files + or the type of the filesystem. + </P +></DD +><DT +><B +>glossary</B +></DT +><DD +><P +> A list of words and explanations of what they do. Not + to be confused with a dictionary, which is also a list of + words and explanations. + </P +></DD +><DT +><B +>kernel</B +></DT +><DD +><P +> Part of an operating system that implements the interaction with + hardware and the sharing of resources. See also system program. + </P +></DD +><DT +><B +>operating system</B +></DT +><DD +><P +> Software that shares a computer system's resources (processor, + memory, disk space, network bandwidth, and so on) between + users and the application programs they run. Controls access + to the system to provide security. See also kernel, system program, + application program. + </P +></DD +><DT +><B +>system call</B +></DT +><DD +><P +> The services provided by the kernel to application programs, + and the way in which they are invoked. See section 2 of the + manual pages. + </P +></DD +><DT +><B +>system program</B +></DT +><DD +><P +> Programs that implement high level functionality of an operating + system, i.e., things that aren't directly dependent on the + hardware. May sometimes require special privileges to run + (e.g., for delivering electronic mail), but often just commonly + thought of as part of the system (e.g., a compiler). See also + application program, kernel, operating system. + </P +></DD +></DL +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2504.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +> </TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>When the clock is wrong</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +> </TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/hd-layout.gif b/sag-0.6.1-www/sag-0.6.1.html/hd-layout.gif Binary files differnew file mode 100644 index 0000000..8d476e2 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/hd-layout.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/hd-mount-mounted.gif b/sag-0.6.1-www/sag-0.6.1.html/hd-mount-mounted.gif Binary files differnew file mode 100644 index 0000000..020e35e --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/hd-mount-mounted.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/hd-mount-separate.gif b/sag-0.6.1-www/sag-0.6.1.html/hd-mount-separate.gif Binary files differnew file mode 100644 index 0000000..069034e --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/hd-mount-separate.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/hd-schematic.gif b/sag-0.6.1-www/sag-0.6.1.html/hd-schematic.gif Binary files differnew file mode 100644 index 0000000..422049c --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/hd-schematic.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/index.html b/sag-0.6.1-www/sag-0.6.1.html/index.html new file mode 100644 index 0000000..1b3b4d6 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/index.html @@ -0,0 +1,833 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The Linux System Administrators' Guide</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="NEXT" +TITLE="Dedication" +HREF="f23.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="BOOK" +><DIV +CLASS="TITLEPAGE" +><H1 +CLASS="TITLE" +><A +NAME="AEN2" +>The Linux System Administrators' Guide</A +></H1 +><H2 +CLASS="SUBTITLE" +>Version 0.6.1</H2 +><H3 +CLASS="AUTHOR" +>Lars Wirzenius</H3 +><DIV +CLASS="AFFILIATION" +><P +CLASS="LITERALLAYOUT" +> <TT +CLASS="EMAIL" +><<A +HREF="mailto:liw@iki.fi" +>liw@iki.fi</A +>></TT +><br> + </P +></DIV +><DIV +CLASS="ABSTRACT" +><P +>An introduction to system administration of a Linux + system for novices.</P +></DIV +><DIV +CLASS="LEGALNOTICE" +><P +></P +><P +>Copyright 1993--1998 Lars Wirzenius.</P +><P +>Trademarks are owned by their owners.</P +><P +>Permission is granted to make and distribute verbatim + copies of this manual provided the copyright notice and this + permission notice are preserved on all copies.</P +><P +>Permission is granted to process the document source + code through TeX or other formatters and print the results, + and distribute the printed document, provided the printed + document carries copying permission notice identical to this one, + including the references to where the source code can be found + and the official home page.</P +><P +>Permission is granted to copy and distribute modified + versions of this manual under the conditions for verbatim + copying, provided that the entire resulting derived work is + distributed under the terms of a permission notice identical to + this one. </P +><P +>Permission is granted to copy and distribute translations + of this manual into another language, under the above conditions + for modified versions.</P +><P +>The author would appreciate a notification of modifications, + translations, and printed versions. Thank you.</P +><P +></P +></DIV +><HR></DIV +><DIV +CLASS="TOC" +><DL +><DT +><B +>Table of Contents</B +></DT +><DT +><A +HREF="f23.html" +>Dedication</A +></DT +><DT +><A +HREF="f26.html" +>Source and pre-formatted versions available</A +></DT +><DT +>1. <A +HREF="c31.html" +>Introduction</A +></DT +><DD +><DL +><DT +><A +HREF="c31.html#AEN56" +>The Linux Documentation Project</A +></DT +></DL +></DD +><DT +>2. <A +HREF="c63.html" +>Overview of a Linux System</A +></DT +><DD +><DL +><DT +><A +HREF="c63.html#AEN69" +>Various parts of an operating system</A +></DT +><DT +><A +HREF="x83.html" +>Important parts of the kernel</A +></DT +><DT +><A +HREF="x94.html" +>Major services in a UNIX system</A +></DT +><DD +><DL +><DT +><A +HREF="x94.html#AEN97" +><B +CLASS="COMMAND" +>init</B +></A +></DT +><DT +><A +HREF="x94.html#AEN117" +>Logins from terminals</A +></DT +><DT +><A +HREF="x94.html#AEN129" +>Syslog</A +></DT +><DT +><A +HREF="x94.html#AEN133" +>Periodic command execution: <B +CLASS="COMMAND" +>cron</B +> and +<B +CLASS="COMMAND" +>at</B +></A +></DT +><DT +><A +HREF="x94.html#AEN147" +>Graphical user interface</A +></DT +><DT +><A +HREF="x94.html#AEN152" +>Networking</A +></DT +><DT +><A +HREF="x94.html#AEN158" +>Network logins</A +></DT +><DT +><A +HREF="x94.html#AEN171" +>Network file systems</A +></DT +><DT +><A +HREF="x94.html#AEN176" +>Mail</A +></DT +><DT +><A +HREF="x94.html#AEN191" +>Printing</A +></DT +><DT +><A +HREF="x94.html#AEN200" +>The filesystem layout</A +></DT +></DL +></DD +></DL +></DD +><DT +>3. <A +HREF="c212.html" +>Overview of the Directory Tree</A +></DT +><DD +><DL +><DT +><A +HREF="c212.html#AEN218" +>Background</A +></DT +><DT +><A +HREF="x267.html" +>The root filesystem</A +></DT +><DT +><A +HREF="x338.html" +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory</A +></DT +><DT +><A +HREF="x463.html" +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory</A +></DT +><DT +><A +HREF="x472.html" +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem</A +></DT +><DT +><A +HREF="x531.html" +>The <TT +CLASS="FILENAME" +>/var</TT +> filesystem</A +></DT +><DT +><A +HREF="x595.html" +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem</A +></DT +></DL +></DD +><DT +>4. <A +HREF="c701.html" +>Using Disks and Other Storage Media</A +></DT +><DD +><DL +><DT +><A +HREF="c701.html#AEN721" +>Two kinds of devices</A +></DT +><DT +><A +HREF="x747.html" +>Hard disks</A +></DT +><DT +><A +HREF="x787.html" +>Floppies</A +></DT +><DT +><A +HREF="x801.html" +>CD-ROM's</A +></DT +><DT +><A +HREF="x811.html" +>Tapes</A +></DT +><DT +><A +HREF="x817.html" +>Formatting</A +></DT +><DT +><A +HREF="x876.html" +>Partitions</A +></DT +><DD +><DL +><DT +><A +HREF="x876.html#AEN881" +>The MBR, boot sectors and partition table</A +></DT +><DT +><A +HREF="x876.html#AEN905" +>Extended and logical partitions</A +></DT +><DT +><A +HREF="x876.html#AEN920" +>Partition types</A +></DT +><DT +><A +HREF="x876.html#AEN1008" +>Partitioning a hard disk</A +></DT +><DT +><A +HREF="x876.html#AEN1024" +>Device files and partitions</A +></DT +></DL +></DD +><DT +><A +HREF="x1029.html" +>Filesystems</A +></DT +><DD +><DL +><DT +><A +HREF="x1029.html#AEN1031" +>What are filesystems?</A +></DT +><DT +><A +HREF="x1029.html#AEN1048" +>Filesystems galore</A +></DT +><DT +><A +HREF="x1029.html#AEN1104" +>Which filesystem should be used?</A +></DT +><DT +><A +HREF="x1029.html#AEN1107" +>Creating a filesystem</A +></DT +><DT +><A +HREF="x1029.html#MOUNT-AND-UMOUNT" +>Mounting and unmounting</A +></DT +><DT +><A +HREF="x1029.html#AEN1278" +>Checking filesystem integrity with <B +CLASS="COMMAND" +>fsck</B +></A +></DT +><DT +><A +HREF="x1029.html#AEN1301" +>Checking for disk errors with <B +CLASS="COMMAND" +>badblocks</B +></A +></DT +><DT +><A +HREF="x1029.html#AEN1315" +>Fighting fragmentation</A +></DT +><DT +><A +HREF="x1029.html#AEN1321" +>Other tools for all filesystems</A +></DT +><DT +><A +HREF="x1029.html#AEN1334" +>Other tools for the ext2 filesystem</A +></DT +></DL +></DD +><DT +><A +HREF="x1366.html" +>Disks without filesystems</A +></DT +><DT +><A +HREF="x1384.html" +>Allocating disk space</A +></DT +><DD +><DL +><DT +><A +HREF="x1384.html#AEN1386" +>Partitioning schemes</A +></DT +><DT +><A +HREF="x1384.html#AEN1404" +>Space requirements</A +></DT +><DT +><A +HREF="x1384.html#AEN1413" +>Examples of hard disk allocation</A +></DT +><DT +><A +HREF="x1384.html#AEN1439" +>Adding more disk space for Linux</A +></DT +><DT +><A +HREF="x1384.html#AEN1443" +>Tips for saving disk space</A +></DT +></DL +></DD +></DL +></DD +><DT +>5. <A +HREF="c1450.html" +>Memory Management</A +></DT +><DD +><DL +><DT +><A +HREF="c1450.html#AEN1456" +>What is virtual memory?</A +></DT +><DT +><A +HREF="x1466.html" +>Creating a swap space</A +></DT +><DT +><A +HREF="x1495.html" +>Using a swap space</A +></DT +><DT +><A +HREF="x1529.html" +>Sharing swap spaces with other operating systems</A +></DT +><DT +><A +HREF="x1532.html" +>Allocating swap space</A +></DT +><DT +><A +HREF="x1551.html" +>The buffer cache</A +></DT +></DL +></DD +><DT +>6. <A +HREF="c1582.html" +>Boots And Shutdowns</A +></DT +><DD +><DL +><DT +><A +HREF="c1582.html#AEN1588" +>An overview of boots and shutdowns</A +></DT +><DT +><A +HREF="x1602.html" +>The boot process in closer look</A +></DT +><DT +><A +HREF="x1650.html" +>More about shutdowns</A +></DT +><DT +><A +HREF="x1684.html" +>Rebooting</A +></DT +><DT +><A +HREF="x1693.html" +>Single user mode</A +></DT +><DT +><A +HREF="x1697.html" +>Emergency boot floppies</A +></DT +></DL +></DD +><DT +>7. <A +HREF="c1705.html" +><B +CLASS="COMMAND" +>init</B +></A +></DT +><DD +><DL +><DT +><A +HREF="c1705.html#AEN1717" +><B +CLASS="COMMAND" +>init</B +> comes first</A +></DT +><DT +><A +HREF="x1752.html" +>Configuring <B +CLASS="COMMAND" +>init</B +> to start <B +CLASS="COMMAND" +>getty</B +>: the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file</A +></DT +><DT +><A +HREF="x1812.html" +>Run levels</A +></DT +><DT +><A +HREF="x1852.html" +>Special configuration in <TT +CLASS="FILENAME" +>/etc/inittab</TT +></A +></DT +><DT +><A +HREF="x1880.html" +>Booting in single user mode</A +></DT +></DL +></DD +><DT +>8. <A +HREF="c1905.html" +>Logging In And Out</A +></DT +><DD +><DL +><DT +><A +HREF="c1905.html#AEN1911" +>Logins via terminals</A +></DT +><DT +><A +HREF="x1944.html" +>Logins via the network</A +></DT +><DT +><A +HREF="x1956.html" +>What <B +CLASS="COMMAND" +>login</B +> does</A +></DT +><DT +><A +HREF="x1988.html" +>X and xdm</A +></DT +><DT +><A +HREF="x1991.html" +>Access control</A +></DT +><DT +><A +HREF="x2008.html" +>Shell startup</A +></DT +></DL +></DD +><DT +>9. <A +HREF="c2018.html" +>Managing user accounts</A +></DT +><DD +><DL +><DT +><A +HREF="c2018.html#AEN2024" +>What's an account?</A +></DT +><DT +><A +HREF="x2031.html" +>Creating a user</A +></DT +><DD +><DL +><DT +><A +HREF="x2031.html#AEN2042" +><TT +CLASS="FILENAME" +>/etc/passwd</TT +> and other informative files</A +></DT +><DT +><A +HREF="x2031.html#AEN2072" +>Picking numeric user and group ids</A +></DT +><DT +><A +HREF="x2031.html#AEN2077" +>Initial environment: <TT +CLASS="FILENAME" +>/etc/skel</TT +></A +></DT +><DT +><A +HREF="x2031.html#MANUAL-ADDUSER" +>Creating a user by hand</A +></DT +></DL +></DD +><DT +><A +HREF="x2124.html" +>Changing user properties</A +></DT +><DT +><A +HREF="x2152.html" +>Removing a user</A +></DT +><DT +><A +HREF="x2166.html" +>Disabling a user temporarily</A +></DT +></DL +></DD +><DT +>10. <A +HREF="c2187.html" +>Backups</A +></DT +><DD +><DL +><DT +><A +HREF="c2187.html#AEN2193" +>On the importance of being backed up</A +></DT +><DT +><A +HREF="x2206.html" +>Selecting the backup medium</A +></DT +><DT +><A +HREF="x2216.html" +>Selecting the backup tool</A +></DT +><DT +><A +HREF="x2240.html" +>Simple backups</A +></DT +><DD +><DL +><DT +><A +HREF="x2240.html#AEN2247" +>Making backups with <B +CLASS="COMMAND" +>tar</B +></A +></DT +><DT +><A +HREF="x2240.html#AEN2288" +>Restoring files with <B +CLASS="COMMAND" +>tar</B +></A +></DT +></DL +></DD +><DT +><A +HREF="x2315.html" +>Multilevel backups</A +></DT +><DT +><A +HREF="x2405.html" +>What to back up</A +></DT +><DT +><A +HREF="x2417.html" +>Compressed backups</A +></DT +></DL +></DD +><DT +>11. <A +HREF="c2432.html" +>Keeping Time</A +></DT +><DD +><DL +><DT +><A +HREF="c2432.html#AEN2438" +>Time zones</A +></DT +><DT +><A +HREF="x2451.html" +>The hardware and software clocks</A +></DT +><DT +><A +HREF="x2457.html" +>Showing and setting time</A +></DT +><DT +><A +HREF="x2504.html" +>When the clock is wrong</A +></DT +></DL +></DD +><DT +><A +HREF="g2516.html" +>Glossary (DRAFT)</A +></DT +></DL +></DIV +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +> </TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="f23.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +> </TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +> </TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Dedication</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/logins-via-terminals.gif b/sag-0.6.1-www/sag-0.6.1.html/logins-via-terminals.gif Binary files differnew file mode 100644 index 0000000..66a5b98 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/logins-via-terminals.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/overview-kernel.gif b/sag-0.6.1-www/sag-0.6.1.html/overview-kernel.gif Binary files differnew file mode 100644 index 0000000..eaff06b --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/overview-kernel.gif diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1029.html b/sag-0.6.1-www/sag-0.6.1.html/x1029.html new file mode 100644 index 0000000..74c5eb2 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1029.html @@ -0,0 +1,1720 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Filesystems</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Partitions" +HREF="x876.html"><LINK +REL="NEXT" +TITLE="Disks without filesystems" +HREF="x1366.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x876.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1366.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1029" +>Filesystems</A +></H1 +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1031" +>What are filesystems?</A +></H2 +><P +>A <I +CLASS="GLOSSTERM" +>filesystem</I +> is the methods and + data structures that an operating system uses to keep track + of files on a disk or partition; that is, the way the files + are organized on the disk. The word is also used to refer to a + partition or disk that is used to store the files or the type of + the filesystem. Thus, one might say ``I have two filesystems'' + meaning one has two partitions on which one stores files, or + that one is using the ``extended filesystem'', meaning the type + of the filesystem.</P +><P +>The difference between a disk or partition and the filesystem + it contains is important. A few programs (including, + reasonably enough, programs that create filesystems) operate + directly on the raw sectors of a disk or partition; if there + is an existing file system there it will be destroyed or + seriously corrupted. Most programs operate on a filesystem, + and therefore won't work on a partition that doesn't contain + one (or that contains one of the wrong type).</P +><P +>Before a partition or disk can be used as a filesystem, it + needs to be initialized, and the bookkeeping data structures need + to be written to the disk. This process is called + <I +CLASS="GLOSSTERM" +>making a filesystem</I +>.</P +><P +>Most UNIX filesystem types have a similar general + structure, although the exact details vary quite a bit. + The central concepts are <I +CLASS="GLOSSTERM" +>superblock</I +>, + <I +CLASS="GLOSSTERM" +>inode</I +>, <I +CLASS="GLOSSTERM" +>data block</I +>, + <I +CLASS="GLOSSTERM" +>directory block</I +>, and <I +CLASS="GLOSSTERM" +>indirection + block</I +>. The superblock contains information + about the filesystem as a whole, such as its size (the exact + information here depends on the filesystem). An inode contains + all information about a file, except its name. The name is + stored in the directory, together with the number of the inode. + A directory entry consists of a filename and the number of + the inode which represents the file. The inode contains the + numbers of several data blocks, which are used to store the + data in the file. There is space only for a few data block + numbers in the inode, however, and if more are needed, more + space for pointers to the data blocks is allocated dynamically. + These dynamically allocated blocks are indirect blocks; the name + indicates that in order to find the data block, one has to find + its number in the indirect block first.</P +><P +>UNIX filesystems usually allow one to create a + <I +CLASS="GLOSSTERM" +>hole</I +> in a file (this is done with + <TT +CLASS="FUNCTION" +>lseek</TT +>; check the manual page), which means + that the filesystem just pretends that at a particular place in + the file there is just zero bytes, but no actual disk sectors are + reserved for that place in the file (this means that the file + will use a bit less disk space). This happens especially often + for small binaries, Linux shared libraries, some databases, and + a few other special cases. (Holes are implemented by storing a + special value as the address of the data block in the indirect + block or inode. This special address means that no data block + is allocated for that part of the file, ergo, there is a hole + in the file.)</P +><P +>Holes are moderately useful. On the author's system, + a simple measurement showed a potential for about 4 MB of + savings through holes of about 200 MB total used disk space. + That system, however, contains relatively few programs and no + database files.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1048" +>Filesystems galore</A +></H2 +><P +>Linux supports several types of filesystems. As of this + writing the most important ones are: + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +>minix</B +></DT +><DD +><P +> The oldest, presumed to be the most reliable, but quite + limited in features (some time stamps are missing, at + most 30 character filenames) and restricted in + capabilities (at most 64 MB per filesystem). + </P +></DD +><DT +><B +>xia</B +></DT +><DD +><P +> A modified version of the minix filesystem that lifts + the limits on the filenames and filesystem sizes, + but does not otherwise introduce new features. It is + not very popular, but is reported to work very well. + </P +></DD +><DT +><B +>ext2</B +></DT +><DD +><P +> The most featureful of the native Linux filesystems, + currently also the most popular one. It is designed to + be easily upwards compatible, so that new versions + of the filesystem code do not require re-making the + existing filesystems. + </P +></DD +><DT +><B +>ext</B +></DT +><DD +><P +> An older version of ext2 that wasn't upwards + compatible. It is hardly ever used in new installations + any more, and most people have converted to ext2. + </P +></DD +></DL +></DIV +> + </P +><P +>In addition, support for several foreign filesystem exists, + to make it easier to exchange files with other operating + systems. These foreign filesystems work just like native + ones, except that they may be lacking in some usual UNIX + features, or have curious limitations, or other oddities. + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +>msdos</B +></DT +><DD +><P +> Compatibility with MS-DOS (and OS/2 and Windows NT) + FAT filesystems. + </P +></DD +><DT +><B +>usmdos</B +></DT +><DD +><P +> Extends the msdos filesystem driver under + Linux to get long filenames, owners, + permissions, links, and device files. This allows a normal + msdos filesystem to be used as if it were a + Linux one, thus removing the need for a separate + partition for Linux. + </P +></DD +><DT +><B +>iso9660</B +></DT +><DD +><P +> The standard CD-ROM filesystem; the popular Rock Ridge + extension to the CD-ROM standard that allows longer file + names is supported automatically. + </P +></DD +><DT +><B +>nfs</B +></DT +><DD +><P +> A networked filesystem that allows sharing a filesystem + between many computers to allow easy access to the + files from all of them. + </P +></DD +><DT +><B +>hpfs</B +></DT +><DD +><P +> The OS/2 filesystem. + </P +></DD +><DT +><B +>sysv</B +></DT +><DD +><P +> SystemV/386, Coherent, and Xenix filesystems. + </P +></DD +></DL +></DIV +> + </P +><P +>The choice of filesystem to use depends on the situation. If + compatibility or other reasons make one of the non-native + filesystems necessary, then that one must be used. If one can + choose freely, then it is probably wisest to use ext2, since + it has all the features but does not suffer from lack of + performance.</P +><P +>There is also the proc filesystem, usually accessible as + the <TT +CLASS="FILENAME" +>/proc</TT +> directory, which is not really a + filesystem at all, even though it looks like one. The + proc filesystem makes it easy to access certain kernel + data structures, such as the process list (hence the name). + It makes these + data structures look like a filesystem, and that filesystem + can be manipulated with all the usual file tools. For example, + to get a listing of all processes one might use the + command + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>ls -l /proc</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>total 0 +dr-xr-xr-x 4 root root 0 Jan 31 20:37 1 +dr-xr-xr-x 4 liw users 0 Jan 31 20:37 63 +dr-xr-xr-x 4 liw users 0 Jan 31 20:37 94 +dr-xr-xr-x 4 liw users 0 Jan 31 20:37 95 +dr-xr-xr-x 4 root users 0 Jan 31 20:37 98 +dr-xr-xr-x 4 liw users 0 Jan 31 20:37 99 +-r--r--r-- 1 root root 0 Jan 31 20:37 devices +-r--r--r-- 1 root root 0 Jan 31 20:37 dma +-r--r--r-- 1 root root 0 Jan 31 20:37 filesystems +-r--r--r-- 1 root root 0 Jan 31 20:37 interrupts +-r-------- 1 root root 8654848 Jan 31 20:37 kcore +-r--r--r-- 1 root root 0 Jan 31 11:50 kmsg +-r--r--r-- 1 root root 0 Jan 31 20:37 ksyms +-r--r--r-- 1 root root 0 Jan 31 11:51 loadavg +-r--r--r-- 1 root root 0 Jan 31 20:37 meminfo +-r--r--r-- 1 root root 0 Jan 31 20:37 modules +dr-xr-xr-x 2 root root 0 Jan 31 20:37 net +dr-xr-xr-x 4 root root 0 Jan 31 20:37 self +-r--r--r-- 1 root root 0 Jan 31 20:37 stat +-r--r--r-- 1 root root 0 Jan 31 20:37 uptime +-r--r--r-- 1 root root 0 Jan 31 20:37 version</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + (There will be a few extra files that don't correspond to + processes, though. The above example has been shortened.)</P +><P +>Note that even though it is called a filesystem, no part of + the proc filesystem touches any disk. It exists only in the + kernel's imagination. Whenever anyone tries to look at any + part of the proc filesystem, the kernel makes it look as if + the part existed somewhere, even though it doesn't. So, even + though there is a multi-megabyte <TT +CLASS="FILENAME" +>/proc/kcore</TT +> file, + it doesn't take any disk space.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1104" +>Which filesystem should be used?</A +></H2 +><P +>There is usually little point in using many different + filesystems. Currently, ext2fs is the most popular one, and + it is probably the wisest choice. Depending on the overhead + for bookkeeping structures, speed, (perceived) reliability, + compatibility, and various other reasons, it may be advisable + to use another file system. This needs to be decided on a + case-by-case basis.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1107" +>Creating a filesystem</A +></H2 +><P +>Filesystems are created, i.e., initialized, with the <B +CLASS="COMMAND" +>mkfs</B +> + command. There is actually a separate program for each filesystem + type. <B +CLASS="COMMAND" +>mkfs</B +> is just a front end that runs the appropriate + program depending on the desired filesystem type. The type is + selected with the <SPAN +CLASS="OPTION" +>-t fstype</SPAN +> option.</P +><P +>The programs called by <B +CLASS="COMMAND" +>mkfs</B +> have slightly + different command line interfaces. The common and most important + options are summarized below; see the manual pages for more. + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><SPAN +CLASS="OPTION" +>-t fstype</SPAN +></B +></DT +><DD +><P +> Select the type of the filesystem. + </P +></DD +><DT +><B +><SPAN +CLASS="OPTION" +>-c</SPAN +></B +></DT +><DD +><P +> Search for bad blocks and initialize the bad + block list accordingly. + </P +></DD +><DT +><B +>-l filename</B +></DT +><DD +><P +> Read the initial bad block list from the name file. + </P +></DD +></DL +></DIV +> + </P +><P +>To create an ext2 filesystem on a floppy, one would give the + following commands: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>fdformat -n /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB. +Formatting ... done</TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>badblocks /dev/fd0H1440 1440 $>$ bad-blocks</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mkfs -t ext2 -l bad-blocks /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10 +360 inodes, 1440 blocks +72 blocks (5.00%) reserved for the super user +First data block=1 +Block size=1024 (log=0) +Fragment size=1024 (log=0) +1 block group +8192 blocks per group, 8192 fragments per group +360 inodes per group + +Writing inode tables: done +Writing superblocks and filesystem accounting information: done</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + First, the floppy was formatted (the <SPAN +CLASS="OPTION" +>-n</SPAN +> option + prevents validation, i.e., bad block checking). Then bad blocks + were searched with <B +CLASS="COMMAND" +>badblocks</B +>, with the output + redirected to a file, <TT +CLASS="FILENAME" +>bad-blocks</TT +>. Finally, + the filesystem was created, with the bad block list initialized + by whatever <B +CLASS="COMMAND" +>badblocks</B +> found.</P +><P +>The <SPAN +CLASS="OPTION" +>-c</SPAN +> option could have been used with + <B +CLASS="COMMAND" +>mkfs</B +> instead of <B +CLASS="COMMAND" +>badblocks</B +> + and a separate file. The example below does that. + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mkfs -t ext2 -c /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>mke2fs 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10 +360 inodes, 1440 blocks +72 blocks (5.00%) reserved for the super user +First data block=1 +Block size=1024 (log=0) +Fragment size=1024 (log=0) +1 block group +8192 blocks per group, 8192 fragments per group +360 inodes per group + +Checking for bad blocks (read-only test): done +Writing inode tables: done +Writing superblocks and filesystem accounting information: done</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The <SPAN +CLASS="OPTION" +>-c</SPAN +> option is more convenient than a separate use of + <B +CLASS="COMMAND" +>badblocks</B +>, but <B +CLASS="COMMAND" +>badblocks</B +> is necessary for checking + after the filesystem has been created.</P +><P +>The process to prepare filesystems on hard disks or + partitions is the same as for floppies, except that the formatting + isn't needed.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="MOUNT-AND-UMOUNT" +>Mounting and unmounting</A +></H2 +><P +>Before one can use a filesystem, it has to be <I +CLASS="GLOSSTERM" +>mounted</I +>. + The operating system then does various bookkeeping things to + make sure that everything works. Since all files in UNIX are + in a single directory tree, the mount operation will make it + look like the contents of the new filesystem are the contents of + an existing subdirectory in some already mounted filesystem.</P +><P +>For example, <A +HREF="x1029.html#HD-MOUNT-ROOT" +>Figure 4-3</A +> shows three + separate filesystems, each with their own root directory. + When the last two filesystems are mounted below <TT +CLASS="FILENAME" +>/home</TT +> + and <TT +CLASS="FILENAME" +>/usr</TT +>, respectively, on the first filesystem, we + can get a single directory tree, as in + <A +HREF="x1029.html#HD-MOUNT-ALL" +>Figure 4-4</A +>.</P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="HD-MOUNT-ROOT" +>Figure 4-3. Three separate filesystems.</A +></B +></P +><P +><IMG +SRC="hd-mount-separate.gif"></P +></DIV +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="HD-MOUNT-ALL" +>Figure 4-4. <TT +CLASS="FILENAME" +>/home</TT +> and <TT +CLASS="FILENAME" +>/usr</TT +> have been mounted.</A +></B +></P +><P +><IMG +SRC="hd-mount-mounted.gif"></P +></DIV +><P +>The mounts could be done as in the following example: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mount /dev/hda2 /home</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mount /dev/hda3 /usr</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The <B +CLASS="COMMAND" +>mount</B +> command takes two arguments. + The first one is the device file corresponding to the disk + or partition containing the filesystem. The second one is + the directory below which it will be mounted. After these + commands the contents of the two filesystems look just + like the contents of the <TT +CLASS="FILENAME" +>/home</TT +> and + <TT +CLASS="FILENAME" +>/usr</TT +> directories, respectively. One would + then say that ``<TT +CLASS="FILENAME" +>/dev/hda2</TT +> <I +CLASS="GLOSSTERM" +>is + mounted on</I +> <TT +CLASS="FILENAME" +>/home</TT +>'', and + similarly for <TT +CLASS="FILENAME" +>/usr</TT +>. To look at either + filesystem, one would look at the contents of the directory + on which it has been mounted, just as if it were any other + directory. Note the difference between the device file, + <TT +CLASS="FILENAME" +>/dev/hda2</TT +>, and the mounted-on directory, + <TT +CLASS="FILENAME" +>/home</TT +>. The device file gives access to the + raw contents of the disk, the mounted-on directory gives access + to the files on the disk. The mounted-on directory is called + the <I +CLASS="GLOSSTERM" +>mount point</I +>.</P +><P +>Linux supports many filesystem types. <B +CLASS="COMMAND" +>mount</B +> tries to + guess the type of the filesystem. You can also use the + <SPAN +CLASS="OPTION" +>-t fstype</SPAN +> option to specify the type directly; + this is sometimes necessary, since the heuristics <B +CLASS="COMMAND" +>mount</B +> + uses do not always work. For example, to mount an MS-DOS + floppy, you could use the following command: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mount -t msdos /dev/fd0 /floppy</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + </P +><P +>The mounted-on directory need not be empty, although it + must exist. Any files in it, however, will be inaccessible by + name while the filesystem is mounted. (Any files that have + already been opened will still be accessible. Files that + have hard links from other directories can be accessed using + those names.) There is no harm done with this, and it can even + be useful. For instance, some people like to have <TT +CLASS="FILENAME" +>/tmp</TT +> + and <TT +CLASS="FILENAME" +>/var/tmp</TT +> synonymous, and make <TT +CLASS="FILENAME" +>/tmp</TT +> be a symbolic + link to <TT +CLASS="FILENAME" +>/var/tmp</TT +>. When the system is booted, before + the <TT +CLASS="FILENAME" +>/var</TT +> filesystem is mounted, a <TT +CLASS="FILENAME" +>/var/tmp</TT +> directory + residing on the root filesystem is used instead. When <TT +CLASS="FILENAME" +>/var</TT +> + is mounted, it will make the <TT +CLASS="FILENAME" +>/var/tmp</TT +> directory on the root + filesystem inaccessible. If <TT +CLASS="FILENAME" +>/var/tmp</TT +> didn't exist on the + root filesystem, it would be impossible to use temporary files + before mounting <TT +CLASS="FILENAME" +>/var</TT +>.</P +><P +>If you don't intend to write anything to the filesystem, use + the <SPAN +CLASS="OPTION" +>-r</SPAN +> switch for <B +CLASS="COMMAND" +>mount</B +> to do a <I +CLASS="GLOSSTERM" +>readonly + mount</I +>. This will make the kernel stop any attempts at + writing to the filesystem, and will also stop the kernel from + updating file access times in the inodes. Read-only mounts + are necessary for unwritable media, e.g., CD-ROM's.</P +><P +>The alert reader has already noticed a slight + logistical problem. How is the first filesystem (called the <I +CLASS="GLOSSTERM" +>root + filesystem</I +>, because it contains the root directory) mounted, + since it obviously can't be mounted on another filesystem? + Well, the answer is that it is done by magic. + + <A +NAME="AEN1217" +HREF="#FTN.AEN1217" +>[1]</A +> + + The root filesystem is magically mounted at boot time, + and one can rely on it to always be mounted. If the + root filesystem can't be mounted, the system does not boot. + The name of the filesystem that is magically mounted as root + is either compiled into the kernel, or set using LILO or + <B +CLASS="COMMAND" +>rdev</B +>.</P +><P +>The root filesystem is usually first mounted readonly. + The startup scripts will then run <B +CLASS="COMMAND" +>fsck</B +> + to verify its validity, and if there are no problems, they + will <I +CLASS="GLOSSTERM" +>re-mount</I +> it so that writes will + also be allowed. <B +CLASS="COMMAND" +>fsck</B +> must not be run on a + mounted filesystem, since any changes to the filesystem while + <B +CLASS="COMMAND" +>fsck</B +> is running <I +CLASS="EMPHASIS" +>will</I +> + cause trouble. Since the root filesystem is mounted readonly + while it is being checked, <B +CLASS="COMMAND" +>fsck</B +> can fix any + problems without worry, since the remount operation will flush + any metadata that the filesystem keeps in memory.</P +><P +>On many systems there are other filesystems that should + also be mounted automatically at boot time. These are specified + in the <TT +CLASS="FILENAME" +>/etc/fstab</TT +> file; see the fstab man + page for details on the format. The details of exactly when the + extra filesystems are mounted depend on many factors, and can be + configured by each administrator if need be; see + <A +HREF="c1582.html" +>Chapter 6</A +>.</P +><P +>When a filesystem no longer needs to be mounted, it can be + unmounted with <B +CLASS="COMMAND" +>umount</B +>. + + <A +NAME="AEN1232" +HREF="#FTN.AEN1232" +>[2]</A +> + + <B +CLASS="COMMAND" +>umount</B +> takes one argument: + either the device file or the mount point. + For example, to unmount the directories of + the previous example, one could use the commands + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>umount /dev/hda2</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>umount /usr</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + </P +><P +>See the man page for further instructions on how to + use the command. It is imperative that you always unmount a + mounted floppy. <I +CLASS="EMPHASIS" +>Don't just pop the floppy out of + the drive!</I +> Because of disk caching, the data is + not necessarily written to the floppy until you unmount it, + so removing the floppy from the drive too early might cause the + contents to become garbled. If you only read from the floppy, + this is not very likely, but if you write, even accidentally, + the result may be catastrophic.</P +><P +>Mounting and unmounting requires super user privileges, i.e., + only root can do it. The reason for this is that if any + user can mount a floppy on any directory, then it is rather easy + to create a floppy with, say, a Trojan horse disguised as + <TT +CLASS="FILENAME" +>/bin/sh</TT +>, or any other often used program. However, it is + often necessary to allow users to use floppies, and there are + several ways to do this: + + <P +></P +><UL +><LI +><P +>Give the users the root password. This is + obviously bad security, but is the easiest solution. It works + well if there is no need for security anyway, which is the case + on many non-networked, personal systems.</P +></LI +><LI +><P +>Use a program such as <B +CLASS="COMMAND" +>sudo</B +> to allow users to + use mount. This is still bad security, but doesn't + directly give super user privileges to + everyone. + <A +NAME="AEN1252" +HREF="#FTN.AEN1252" +>[3]</A +> + </P +></LI +><LI +><P +>Make the users use <B +CLASS="COMMAND" +>mtools</B +>, a package for manipulating + MS-DOS filesystems, without mounting them. This works + well if MS-DOS floppies are all that is needed, + but is rather awkward otherwise. + </P +></LI +><LI +><P +>List the floppy devices and their allowable mount points + together with the suitable options in <TT +CLASS="FILENAME" +>/etc/fstab</TT +>. + + </P +></LI +></UL +> + + The last alternative can be implemented by adding a line like + the following to the \fn{/etc/fstab} file: + +<PRE +CLASS="SCREEN" +>/dev/fd0 /floppy msdos user,noauto 0 0</PRE +> + + The columns are: device file to mount, directory to mount + on, filesystem type, options, backup frequency (used by + <B +CLASS="COMMAND" +>dump</B +>), and <B +CLASS="COMMAND" +>fsck</B +> pass number + (to specify the order in which filesystems should be checked + upon boot; 0 means no check).</P +><P +>The <SPAN +CLASS="OPTION" +>noauto</SPAN +> option stops this mount to be done + automatically when the system is started (i.e., it stops + <B +CLASS="COMMAND" +>mount -a</B +> from mounting it). The <SPAN +CLASS="OPTION" +>user</SPAN +> option + allows any user to mount the filesystem, and, because of security + reasons, disallows execution of programs (normal or setuid) + and interpretation of device files from the mounted filesystem. + After this, any user can mount a floppy with an msdos + filesystem with the following command: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mount /floppy</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The floppy can (and needs to, of course) be unmounted with + the corresponding \cmd{umount} command.</P +><P +>If you want to provide access to several types of floppies, + you need to give several mount points. The settings can be + different for each mount point. For example, to give access + to both MS-DOS and ext2 floppies, you could have the following + to lines in <TT +CLASS="FILENAME" +>/etc/fstab</TT +>: + +<PRE +CLASS="SCREEN" +>/dev/fd0 /dosfloppy msdos user,noauto 0 0 +/dev/fd0 /ext2floppy ext2 user,noauto 0 0</PRE +> + + For MS-DOS filesystems (not just floppies), you probably want + to restrict access to it by using the <SPAN +CLASS="OPTION" +>uid</SPAN +>, + <SPAN +CLASS="OPTION" +>gid</SPAN +>, and <SPAN +CLASS="OPTION" +>umask</SPAN +> filesystem + options, described in detail on the <B +CLASS="COMMAND" +>mount</B +> + manual page. If you aren't careful, mounting an MS-DOS filesystem + gives everyone at least read access to the files in it, which + is not a good idea.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1278" +>Checking filesystem integrity with <B +CLASS="COMMAND" +>fsck</B +></A +></H2 +><P +>Filesystems are complex creatures, and as such, they + tend to be somewhat error-prone. A filesystem's correctness and + validity can be checked using the <B +CLASS="COMMAND" +>fsck</B +> command. + It can be instructed to repair any minor problems it finds, and to + alert the user if there any unrepairable problems. Fortunately, + the code to implement filesystems is debugged quite effectively, + so there are seldom any problems at all, and they are usually + caused by power failures, failing hardware, or operator errors; + for example, by not shutting down the system properly.</P +><P +>Most systems are setup to run <B +CLASS="COMMAND" +>fsck</B +> + automatically at boot time, so that any errors are detected + (and hopefully corrected) before the system is used. Use of + a corrupted filesystem tends to make things worse: if the + data structures are messed up, using the filesystem will + probably mess them up even more, resulting in more data loss. + However, <B +CLASS="COMMAND" +>fsck</B +> can take a while to run on big + filesystems, and since errors almost never occur if the system + has been shut down properly, a couple of tricks are used to + avoid doing the checks in such cases. The first is that if + the file <TT +CLASS="FILENAME" +>/etc/fastboot</TT +> exists, no checks + are made. The second is that the ext2 filesystem has a special + marker in its superblock that tells whether the filesystem + was unmounted properly after the previous mount. This allows + <B +CLASS="COMMAND" +>e2fsck</B +> (the version of <B +CLASS="COMMAND" +>fsck</B +> + for the ext2 filesystem) to avoid checking the filesystem if + the flag indicates that the unmount was done (the assumption + being that a proper unmount indicates no problems). Whether the + <TT +CLASS="FILENAME" +>/etc/fastboot</TT +> trick works on your system + depends on your startup scripts, but the ext2 trick works + every time you use <B +CLASS="COMMAND" +>e2fsck</B +>. It has to be + explicitly bypassed with an option to <B +CLASS="COMMAND" +>e2fsck</B +> + to be avoided. (See the <B +CLASS="COMMAND" +>e2fsck</B +> man page for + details on how.)</P +><P +>The automatic checking only works for the + filesystems that are mounted automatically at boot time. + Use <B +CLASS="COMMAND" +>fsck</B +> manually to check other filesystems, + e.g., floppies.</P +><P +>If <B +CLASS="COMMAND" +>fsck</B +> finds unrepairable problems, + you need either in-depth knowlege of how filesystems work in + general, and the type of the corrupt filesystem in particular, + or good backups. The latter is easy (although sometimes tedious) + to arrange, the former can sometimes be arranged via a friend, + the Linux newsgroups and mailing lists, or some other source of + support, if you don't have the know-how yourself. I'd like to + tell you more about it, but my lack of education and experience + in this regard hinders me. The <B +CLASS="COMMAND" +>debugfs</B +> + program by Theodore T'so should be useful.</P +><P +><B +CLASS="COMMAND" +>fsck</B +> must only be run on unmounted + filesystems, never on mounted filesystems (with the exception of + the read-only root during startup). This is because it accesses + the raw disk, and can therefore modify the filesystem without the + operating system realizing it. There <I +CLASS="EMPHASIS" +>will</I +> + be trouble, if the operating system is confused.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1301" +>Checking for disk errors with <B +CLASS="COMMAND" +>badblocks</B +></A +></H2 +><P +>It can be a good idea to periodically check for bad blocks. + This is done with the <B +CLASS="COMMAND" +>badblocks</B +> command. It outputs + a list of the numbers of all bad blocks it can find. This list + can be fed to <B +CLASS="COMMAND" +>fsck</B +> to be recorded + in the filesystem data structures so that the operating system + won't try to use the bad blocks for storing data. + The following example will show how this could be done. + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>badblocks /dev/fd0H1440 1440 > bad-blocks</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>fsck -t ext2 -l bad-blocks /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Parallelizing fsck version 0.5a (5-Apr-94) +e2fsck 0.5a, 5-Apr-94 for EXT2 FS 0.5, 94/03/10 +Pass 1: Checking inodes, blocks, and sizes +Pass 2: Checking directory structure +Pass 3: Checking directory connectivity +Pass 4: Check reference counts. +Pass 5: Checking group summary information. + +/dev/fd0H1440: ***** FILE SYSTEM WAS MODIFIED ***** +/dev/fd0H1440: 11/360 files, 63/1440 blocks</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + If badblocks reports a block that was already used, + <B +CLASS="COMMAND" +>e2fsck</B +> will try to move the block to another + place. If the block was really bad, not just marginal, the + contents of the file may be corrupted.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1315" +>Fighting fragmentation</A +></H2 +><P +>When a file is written to disk, it can't always be written + in consecutive blocks. A file that is not stored in + consecutive blocks is <I +CLASS="GLOSSTERM" +>fragmented</I +>. It takes longer + to read a fragmented file, since the disk's read-write head + will have to move more. It is desireable to avoid fragmentation, + although it is less of a problem in a system with a good buffer + cache with read-ahead.</P +><P +>The ext2 filesystem attempts to keep fragmentation at a + minimum, by keeping all blocks in a file close together, even if + they can't be stored in consecutive sectors. Ext2 effectively + always allocates the free block that is nearest to other blocks + in a file. For ext2, it is therefore seldom necessary to worry + about fragmentation. There is a program for defragmenting an + ext2 filesystem, see XXX (ext2-defrag) in the bibliography.</P +><P +>There are many MS-DOS defragmentation programs that + move blocks around in the filesystem to remove fragmentation. + For other filesystems, defragmentation must be done by backing + up the filesystem, re-creating it, and restoring the files + from backups. Backing up a filesystem before defragmening is + a good idea for all filesystems, since many things can go wrong + during the defragmentation.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1321" +>Other tools for all filesystems</A +></H2 +><P +>Some other tools are also useful for managing filesystems. + <B +CLASS="COMMAND" +>df</B +> shows the free disk space on one or more + filesystems; <B +CLASS="COMMAND" +>du</B +> shows how much disk space a + directory and all its files contain. These can be used to hunt + down disk space wasters.</P +><P +><B +CLASS="COMMAND" +>sync</B +> forces all unwritten blocks + in the buffer cache (see <A +HREF="x1551.html" +>the section called <I +>The buffer cache</I +> in Chapter 5</A +>) to + be written to disk. It is seldom necessary to do this by + hand; the daemon process <B +CLASS="COMMAND" +>update</B +> does + this automatically. It can be useful in catastrophies, + for example if <B +CLASS="COMMAND" +>update</B +> or its helper + process <B +CLASS="COMMAND" +>bdflush</B +> dies, or if you must + turn off power <I +CLASS="EMPHASIS" +>now</I +> and can't wait for + <B +CLASS="COMMAND" +>update</B +> to run.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1334" +>Other tools for the ext2 filesystem</A +></H2 +><P +>In addition to the filesystem creator (<B +CLASS="COMMAND" +>mke2fs</B +>) and + checker (<B +CLASS="COMMAND" +>e2fsck</B +>) accessible directly or via the + filesystem type independent front ends, the ext2 + filesystem has some additional tools that can be useful.</P +><P +><B +CLASS="COMMAND" +>tune2fs</B +> adjusts filesystem parameters. Some of the + more interesting parameters are: + + <P +></P +><UL +><LI +><P +> A maximal mount count. <B +CLASS="COMMAND" +>e2fsck</B +> enforces a check when + filesystem has been mounted too many times, even if + the clean flag is set. For a system that is used for + developing or testing the system, it might be a good + idea to reduce this limit. + </P +></LI +><LI +><P +> A maximal time between checks. <B +CLASS="COMMAND" +>e2fsck</B +> can also enforce + a maximal time between two checks, even if the clean + flag is set, and the filesystem hasn't been mounted very + often. This can be disabled, however. + </P +></LI +><LI +><P +> Number of blocks reserved for root. Ext2 + reserves some blocks for root so that if the + filesystem fills up, it is still possible to do system + administration without having to delete anything. The + reserved amount is by default 5 percent, which on most disks + isn't enough to be wasteful. However, for floppies there + is no point in reserving any blocks. + </P +></LI +></UL +> + + See the <B +CLASS="COMMAND" +>tune2fs</B +> manual page for more + information.</P +><P +><B +CLASS="COMMAND" +>dumpe2fs</B +> shows information about an ext2 filesystem, mostly + from the superblock. <A +HREF="x1029.html#DUMPE2FS-OUTPUT" +>Figure 4-5</A +> shows + a sample output. Some of the information in the output is + technical and requires understanding of how the filesystem + works (see appendix XXX ext2fspaper), but much of + it is readily understandable even for layadmins.</P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="DUMPE2FS-OUTPUT" +>Figure 4-5. Sample output from <B +CLASS="COMMAND" +>dumpe2fs</B +></A +></B +></P +><P +CLASS="LITERALLAYOUT" +>dumpe2fs 0.5b, 11-Mar-95 for EXT2 FS 0.5a, 94/10/23<br> +Filesystem magic number: 0xEF53<br> +Filesystem state: clean<br> +Errors behavior: Continue<br> +Inode count: 360<br> +Block count: 1440<br> +Reserved block count: 72<br> +Free blocks: 1133<br> +Free inodes: 326<br> +First block: 1<br> +Block size: 1024<br> +Fragment size: 1024<br> +Blocks per group: 8192<br> +Fragments per group: 8192<br> +Inodes per group: 360<br> +Last mount time: Tue Aug 8 01:52:52 1995<br> +Last write time: Tue Aug 8 01:53:28 1995<br> +Mount count: 3<br> +Maximum mount count: 20<br> +Last checked: Tue Aug 8 01:06:31 1995<br> +Check interval: 0<br> +Reserved blocks uid: 0 (user root)<br> +Reserved blocks gid: 0 (group root)<br> +<br> +Group 0:<br> + Block bitmap at 3, Inode bitmap at 4, Inode table at 5<br> + 1133 free blocks, 326 free inodes, 2 directories<br> + Free blocks: 307-1439<br> + Free inodes: 35-360</P +></DIV +><P +><B +CLASS="COMMAND" +>debugfs</B +> is a filesystem debugger. + It allows direct access to the filesystem data structures + stored on disk and can thus be used to repair a disk that is so + broken that <B +CLASS="COMMAND" +>fsck</B +> can't fix it automatically. + It has also been known to be used to recover deleted files. + However, <B +CLASS="COMMAND" +>debugfs</B +> very much requires that + you understand what you're doing; a failure to understand can + destroy all your data.</P +><P +><B +CLASS="COMMAND" +>dump</B +> and <B +CLASS="COMMAND" +>restore</B +> can be used to back up an + ext2 filesystem. They are ext2 specific versions of the + traditional UNIX backup tools. See <A +HREF="c2187.html" +>Chapter 10</A +> + for more information on backups.</P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1217" +HREF="x1029.html#AEN1217" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>For more + information, see the kernel source or the Kernel Hackers' + Guide.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1232" +HREF="x1029.html#AEN1232" +>[2]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>It should of course be + <B +CLASS="COMMAND" +>unmount</B +>, but the n mysteriously disappeared in + the 70's, and hasn't been seen since. Please return it to Bell + Labs, NJ, if you find it.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1252" +HREF="x1029.html#AEN1252" +>[3]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>It requires several seconds of hard + thinking on the users' behalf.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x876.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1366.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Partitions</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Disks without filesystems</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1366.html b/sag-0.6.1-www/sag-0.6.1.html/x1366.html new file mode 100644 index 0000000..f2a6c73 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1366.html @@ -0,0 +1,212 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Disks without filesystems</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Filesystems" +HREF="x1029.html"><LINK +REL="NEXT" +TITLE="Allocating disk space" +HREF="x1384.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1029.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1384.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1366" +>Disks without filesystems</A +></H1 +><P +>Not all disks or partitions are used as filesystems. + A swap partition, for example, will not have a filesystem on it. + Many floppies are used in a tape-drive emulating fashion, so that + a <B +CLASS="COMMAND" +>tar</B +> or other file is written directly on + the raw disk, without a filesystem. Linux boot floppies don't + contain a filesystem, only the raw kernel.</P +><P +>Avoiding a filesystem has the advantage of making more of + the disk usable, since a filesystem always has some bookkeeping + overhead. It also makes the disks more easily compatible + with other systems: for example, the <B +CLASS="COMMAND" +>tar</B +> + file format is the same on all systems, while filesystems are + different on most systems. You will quickly get used to disks + without filesystems if you need them. Bootable Linux floppies + also do not necessarily have a filesystem, although that is + also possible.</P +><P +>One reason to use raw disks is to make image copies of them. + For instance, if the disk contains a partially damaged filesystem, + it is a good idea to make an exact copy of it before trying to + fix it, since then you can start again if your fixing breaks things + even more. One way to do this is to use <B +CLASS="COMMAND" +>dd</B +>: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>dd if=/dev/fd0H1440 of=floppy-image</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>2880+0 records in +2880+0 records out</TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>dd if=floppy-image of=/dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>2880+0 records in +2880+0 records out</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The first <B +CLASS="COMMAND" +>dd</B +> makes an exact image of the + floppy to the file <TT +CLASS="FILENAME" +>floppy-image</TT +>, the second + one writes the image to the floppy. (The user has presumably + switched the floppy before the second command. Otherwise the + command pair is of doubtful usefulness.)</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1029.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1384.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Filesystems</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Allocating disk space</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1384.html b/sag-0.6.1-www/sag-0.6.1.html/x1384.html new file mode 100644 index 0000000..677cfa2 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1384.html @@ -0,0 +1,460 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Allocating disk space</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Disks without filesystems" +HREF="x1366.html"><LINK +REL="NEXT" +TITLE="Memory Management" +HREF="c1450.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1366.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c1450.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1384" +>Allocating disk space</A +></H1 +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1386" +>Partitioning schemes</A +></H2 +><P +>It is not easy to partition a disk in the best possible way. + Worse, there is no universally correct way to do it; there are + too many factors involved.</P +><P +>The traditional way is to have a (relatively) small + root filesystem, which contains <TT +CLASS="FILENAME" +>/bin</TT +>, + <TT +CLASS="FILENAME" +>/etc</TT +>, <TT +CLASS="FILENAME" +>/dev</TT +>, + <TT +CLASS="FILENAME" +>/lib</TT +>, <TT +CLASS="FILENAME" +>/tmp</TT +>, and other + stuff that is needed to get the system up and running. This way, + the root filesystem (in its own partition or on its own disk) + is all that is needed to bring up the system. The reasoning is + that if the root filesystem is small and is not heavily used, + it is less likely to become corrupt when the system crashes, and + you will therefore find it easier to fix any problems caused by + the crash. Then you create separate partitions or use separate + disks for the directory tree below <TT +CLASS="FILENAME" +>/usr</TT +>, the + users' home directories (often under <TT +CLASS="FILENAME" +>/home</TT +>), + and the swap space. Separating the home directories (with the + users' files) in their own partition makes backups easier, since + it is usually not necessary to backup programs (which reside + below <TT +CLASS="FILENAME" +>/usr</TT +>). In a networked environment it + is also possible to share <TT +CLASS="FILENAME" +>/usr</TT +> among several + machines (e.g., by using NFS), thereby reducing the total disk + space required by several tens or hundreds of megabytes times + the number of machines.</P +><P +>The problem with having many partitions is that it splits + the total amount of free disk space into many small pieces. + Nowadays, when disks and (hopefully) operating systems are + more reliable, many people prefer to have just one partition + that holds all their files. On the other hand, it can be less + painful to back up (and restore) a small partition.</P +><P +>For a small hard disk (assuming you don't do kernel + development), the best way to go is probably to have just one + partition. For large hard disks, it is probably + better to have a few large partitions, just in case + something does go wrong. (Note that `small' and `large' are + used in a relative sense here; your needs for disk space + decide what the threshold is.)</P +><P +>If you have several disks, you might wish to have the + root filesystem (including <TT +CLASS="FILENAME" +>/usr</TT +>) on one, + and the users' home directories on another.</P +><P +>It is a good idea to be prepared to experiment a bit + with different partitioning schemes (over time, not just + while first installing the system). This is a bit of work, + since it essentially requires you to install the system from + scratch several times, but it is the only way to be sure you do + it right.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1404" +>Space requirements</A +></H2 +><P +>The Linux distribution you install will give some indication + of how much disk space you need for various configurations. + Programs installed separately may also do the same. This will + help you plan your disk space usage, but you should prepare + for the future and reserve some extra space for things you will + notice later that you need.</P +><P +>The amount you need for user files depends on what your + users wish to do. Most people seem to need as much space for + their files as possible, but the amount they will live happily + with varies a lot. Some people do only light text processing + and will survive nicely with a few megabytes, others do heavy + image processing and will need gigabytes.</P +><P +>By the way, when comparing file sizes given in + kilobytes or megabytes and disk space given in megabytes, it + can be important to know that the two units can be different. + Some disk manufacturers like to pretend that a kilobyte is 1000 + bytes and a megabyte is 1000 kilobytes, while all the rest of + the computing world uses 1024 for both factors. Therefore, + my 345 MB hard disk was really a 330 MB hard disk. + + <A +NAME="AEN1409" +HREF="#FTN.AEN1409" +>[1]</A +> + </P +><P +>Swap space allocation is discussed in <A +HREF="x1532.html" +>the section called <I +>Allocating swap space</I +> in Chapter 5</A +>.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1413" +>Examples of hard disk allocation</A +></H2 +><P +>I used to have a 109 MB hard disk. Now I am using a 330 MB + hard disk. I'll explain how and why I partitioned these + disks.</P +><P +>The 109 MB disk I partitioned in a lot of ways, when my + needs and the operating systems I used changed; I'll explain + two typical scenarios. First, I used to run MS-DOS together + with Linux. For that, I needed about 20 MB of hard disk, or + just enough to have MS-DOS, a C compiler, an editor, a few other + utilities, the program I was working on, and enough free disk + space to not feel claustrophobic. For Linux, I had a 10 MB swap + partition, and the rest, or 79 MB, was a single partition with all + the files I had under Linux. I experimented with having separate + root, <TT +CLASS="FILENAME" +>/usr</TT +>, and <TT +CLASS="FILENAME" +>/home</TT +> + partitions, but there was never enough free disk space in one + piece to do much interesting.</P +><P +>When I didn't need MS-DOS anymore, I repartitioned the + disk so that I had a 12 MB swap partition, and again had the + rest as a single filesystem.</P +><P +>The 330 MB disk is partitioned into several partitions, like + this: + + <DIV +CLASS="INFORMALTABLE" +><P +></P +><TABLE +BORDER="1" +CLASS="CALSTABLE" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>5 MB</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>root filesystem</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +> 10 MB</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>swap partition</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>180 MB</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>\fn{/usr} filesystem</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>120 MB</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>\fn{/home} filesystem</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +> 15 MB</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>scratch partition</TD +></TR +></TABLE +><P +></P +></DIV +> + + The scratch partition is for playing around with things that + require their own partition, e.g., trying different Linux + distributions, or comparing speeds of filesystems. When not + needed for anything else, it is used as swap space (I like to + have a lot of open windows).</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1439" +>Adding more disk space for Linux</A +></H2 +><P +>Adding more disk space for Linux is easy, at least after the + hardware has been properly installed (the hardware installation + is outside the scope of this book). You format it if necessary, + then create the partitions and filesystem as described above, + and add the proper lines to <TT +CLASS="FILENAME" +>/etc/fstab</TT +> + so that it is mounted automatically.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1443" +>Tips for saving disk space</A +></H2 +><P +>The best tip for saving disk space is to avoid installing + unnecessary programs. Most Linux distributions have an + option to install only part of the packages they contain, + and by analyzing your needs you might notice that you don't + need most of them. This will help save a lot of disk space, + since many programs are quite large. Even if you do need a + particular package or program, you might not need all of it. + For example, some on-line documentation might be unnecessary, + as might some of the Elisp files for GNU Emacs, some of the + fonts for X11, or some of the libraries for programming.</P +><P +>If you cannot uninstall packages, you might look into + compression. Compression programs such as <B +CLASS="COMMAND" +>gzip</B +> + or <B +CLASS="COMMAND" +>zip</B +> will compress (and uncompress) + individual files or groups of files. The <B +CLASS="COMMAND" +>gzexe</B +> + system will compress and uncompress programs invisibly to the + user (unused programs are compressed, then uncompressed as they + are used). The experimental DouBle system will compress all + files in a filesystem, invisibly to the programs that use them. + (If you are familiar with products such as Stacker for MS-DOS, + the principle is the same.)</P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1409" +HREF="x1384.html#AEN1409" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Sic transit discus mundi.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1366.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c1450.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Disks without filesystems</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Memory Management</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1466.html b/sag-0.6.1-www/sag-0.6.1.html/x1466.html new file mode 100644 index 0000000..c41cecd --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1466.html @@ -0,0 +1,290 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Creating a swap space</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Memory Management" +HREF="c1450.html"><LINK +REL="PREVIOUS" +TITLE="Memory Management" +HREF="c1450.html"><LINK +REL="NEXT" +TITLE="Using a swap space" +HREF="x1495.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c1450.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 5. Memory Management</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1495.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1466" +>Creating a swap space</A +></H1 +><P +>A swap file is an ordinary file; it is in no way special + to the kernel. The only thing that matters to the kernel is + that it has no holes, and that it is prepared for use with + <B +CLASS="COMMAND" +>mkswap</B +>. It must reside on a local disk, + however; it can't reside in a filesystem that has been mounted + over NFS due to implementation reasons.</P +><P +>The bit about holes is important. The swap file reserves + the disk space so that the kernel can quickly swap out a page + without having to go through all the things that are necessary + when allocating a disk sector to a file. The kernel merely + uses any sectors that have already been allocated to the file. + Because a hole in a file means that there are no disk sectors + allocated (for that place in the file), it is not good for the + kernel to try to use them.</P +><P +>One good way to create the swap file without holes is through + the following command: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>dd if=/dev/zero of=/extra-swap bs=1024 count=1024</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>1024+0 records in +1024+0 records out</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + where <TT +CLASS="FILENAME" +>/extra-swap</TT +> is the name of the swap + file and the size of is given after the <TT +CLASS="LITERAL" +>count=</TT +>. + It is best for the size to be a multiple of 4, because the + kernel writes out <I +CLASS="GLOSSTERM" +>memory pages</I +>, which + are 4 kilobytes in size. If the size is not a multiple of 4, + the last couple of kilobytes may be unused.</P +><P +>A swap partition is also not special in any way. You create + it just like any other partition; the only difference is that + it is used as a raw partition, that is, it will not contain any + filesystem at all. It is a good idea to mark swap partitions + as type 82 (Linux swap); this will the make partition listings + clearer, even though it is not strictly necessary to the + kernel.</P +><P +>After you have created a swap file or a swap partition, you + need to write a signature to its beginning; this contains some + administrative information and is used by the kernel. The + command to do this is \cmd{mkswap}, used like this: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>mkswap /extra-swap 1024</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Setting up swapspace, size = 1044480 bytes</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + Note that the swap space is still not in use yet: it exists, + but the kernel does not use it to provide virtual memory.</P +><P +>You should be very careful when using + <B +CLASS="COMMAND" +>mkswap</B +>, since it does not check that the + file or partition isn't used for anything else. <I +CLASS="EMPHASIS" +>You + can easily overwrite important files and partitions with + <B +CLASS="COMMAND" +>mkswap</B +>!</I +> Fortunately, you should + only need to use <B +CLASS="COMMAND" +>mkswap</B +> when you install + your system.</P +><P +>The Linux memory manager limits the size of each swap space to + about 127 MB (for various technical reasons, the actual limit + is (4096-10) * 8 * 4096 = 133890048$ bytes, or + 127.6875 megabytes). You can, however, use up to + 16 swap spaces simultaneously, for a total of almost + 2 GB. + + <A +NAME="AEN1493" +HREF="#FTN.AEN1493" +>[1]</A +> + + </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1493" +HREF="x1466.html#AEN1493" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>A gigabyte here, a gigabyte there, pretty + soon we start talking about real memory.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c1450.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1495.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Memory Management</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1450.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Using a swap space</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1495.html b/sag-0.6.1-www/sag-0.6.1.html/x1495.html new file mode 100644 index 0000000..ef14a84 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1495.html @@ -0,0 +1,287 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Using a swap space</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Memory Management" +HREF="c1450.html"><LINK +REL="PREVIOUS" +TITLE="Creating a swap space" +HREF="x1466.html"><LINK +REL="NEXT" +TITLE="Sharing swap spaces with other operating systems" +HREF="x1529.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1466.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 5. Memory Management</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1529.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1495" +>Using a swap space</A +></H1 +><P +>An initialized swap space is taken into use with + <B +CLASS="COMMAND" +>swapon</B +>. This command tells the kernel that + the swap space can be used. The path to the swap space is given + as the argument, so to start swapping on a temporary swap file + one might use the following command. + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>swapon /extra-swap</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + Swap spaces can be used automatically by listing them in + the <TT +CLASS="FILENAME" +>/etc/fstab</TT +> file. + +<PRE +CLASS="SCREEN" +>/dev/hda8 none swap sw 0 0 +/swapfile none swap sw 0 0</PRE +> + + The startup scripts will run the command <B +CLASS="COMMAND" +>swapon + -a</B +>, which will start swapping on all the swap + spaces listed in <B +CLASS="COMMAND" +>/etc/fstab</B +>. Therefore, + the <B +CLASS="COMMAND" +>swapon</B +> command is usually used only when + extra swap is needed.</P +><P +>You can monitor the use of swap spaces with + <B +CLASS="COMMAND" +>free</B +>. It will tell the total amount of swap + space used. + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>free</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +> total used free shared buffers +Mem: 15152 14896 256 12404 2528 +-/+ buffers: 12368 2784 +Swap: 32452 6684 25768</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The first line of output (<TT +CLASS="LITERAL" +>Mem:</TT +>) shows the + physical memory. The total column does not show the physical + memory used by the kernel, which is usually about a megabyte. + The used column shows the amount of memory used (the second + line does not count buffers). The free column shows completely + unused memory. The shared column shows the amount of memory + shared by several processes; the more, the merrier. The buffers + column shows the current size of the disk buffer cache.</P +><P +>That last line (<TT +CLASS="LITERAL" +>Swap:</TT +>) shows similar + information for the swap spaces. If this line is all zeroes, + your swap space is not activated.</P +><P +>The same information is available via + <B +CLASS="COMMAND" +>top</B +>, or using the proc filesystem in file + <TT +CLASS="FILENAME" +>/proc/meminfo</TT +>. It is currently difficult + to get information on the use of a specific swap space.</P +><P +>A swap space can be removed from use with + <B +CLASS="COMMAND" +>swapoff</B +>. It is usually not necessary to do it, + except for temporary swap spaces. Any pages in use in the swap + space are swapped in first; if there is not sufficient physical + memory to hold them, they will then be swapped out (to some other + swap space). If there is not enough virtual memory to hold all + of the pages Linux will start to thrash; after a long while it + should recover, but meanwhile the system is unusable. You should + check (e.g., with <B +CLASS="COMMAND" +>free</B +>) that there is enough + free memory before removing a swap space from use.</P +><P +>All the swap spaces that are used automatically + with <B +CLASS="COMMAND" +>swapon -a</B +> can be removed from use + with <B +CLASS="COMMAND" +>swapoff -a</B +>; it looks at the file + <TT +CLASS="FILENAME" +>/etc/fstab</TT +> to find what to remove. + Any manually used swap spaces will remain in use.</P +><P +>Sometimes a lot of swap space can be in use even though + there is a lot of free physical memory. This can happen for + instance if at one point there is need to swap, but later a big + process that occupied much of the physical memory terminates + and frees the memory. The swapped-out data is not automatically + swapped in until it is needed, so the physical memory may remain + free for a long time. There is no need to worry about this, + but it can be comforting to know what is happening. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1466.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1529.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Creating a swap space</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1450.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Sharing swap spaces with other operating systems</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1529.html b/sag-0.6.1-www/sag-0.6.1.html/x1529.html new file mode 100644 index 0000000..e8c5b80 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1529.html @@ -0,0 +1,140 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Sharing swap spaces with other operating systems</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Memory Management" +HREF="c1450.html"><LINK +REL="PREVIOUS" +TITLE="Using a swap space" +HREF="x1495.html"><LINK +REL="NEXT" +TITLE="Allocating swap space" +HREF="x1532.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1495.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 5. Memory Management</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1532.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1529" +>Sharing swap spaces with other operating systems</A +></H1 +><P +>Virtual memory is built into many operating systems. + Since they each need it only when they are running, i.e., never at + the same time, the swap spaces of all but the currently running + one are being wasted. It would be more efficient for them to + share a single swap space. This is possible, but can require a + bit of hacking. The Tips-HOWTO contains some advice on how to + implement this. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1495.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1532.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Using a swap space</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1450.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Allocating swap space</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1532.html b/sag-0.6.1-www/sag-0.6.1.html/x1532.html new file mode 100644 index 0000000..0740351 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1532.html @@ -0,0 +1,231 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Allocating swap space</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Memory Management" +HREF="c1450.html"><LINK +REL="PREVIOUS" +TITLE="Sharing swap spaces with other operating systems" +HREF="x1529.html"><LINK +REL="NEXT" +TITLE="The buffer cache" +HREF="x1551.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1529.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 5. Memory Management</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1551.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="SWAP-ALLOCATION" +>Allocating swap space</A +></H1 +><P +>Some people will tell you that you should allocate twice as much + swap space as you have physical memory, but this is a bogus rule. + Here's how to do it properly: + + <P +></P +><UL +><LI +><P +> Estimate your total memory needs. This is the largest + amount of memory you'll probably need at a time, that is the + sum of the memory requirements of all the programs you want to + run at the same time. This can be done by running at the same + time all the programs you are likely to ever be running at the + same time. </P +><P +>For instance, if you want to run X, you should allocate + about 8 MB for it, gcc wants several megabytes (some + files need an unusually large amount, up to tens of + megabytes, but usually about four should do), and so on. + The kernel will use about a megabyte by itself, and the + usual shells and other small utilities perhaps a few + hundred kilobytes (say a megabyte together). There is + no need to try to be exact, rough estimates are fine, + but you might want to be on the pessimistic side.</P +><P +>Remember that if there are going to be several people + using the system at the same time, they are all going + to consume memory. However, if two people run the same + program at the same time, the total memory consumption + is usually not double, since code pages and shared + libraries exist only once.</P +><P +>The <B +CLASS="COMMAND" +>free</B +> and <B +CLASS="COMMAND" +>ps</B +> + commands are useful for estimating the memory needs. + + </P +></LI +><LI +><P +>Add some security to the estimate in step 1. This is because + estimates of program sizes will probably be wrong, because + you'll probably forget some programs you want to run, and to + make certain that you have some extra space just in case. A + couple of megabytes should be fine. (It is better to allocate + too much than too little swap space, but there's no need to + over-do it and allocate the whole disk, since unused swap space + is wasted space; see later about adding more swap.) Also, + since it is nicer to deal with even numbers, you can round the + value up to the next full megabyte.</P +></LI +><LI +><P +>Based on the computations above, you know how much memory + you'll be needing in total. So, in order to allocate swap + space, you just need to subtract the size of your physical + memory from the total memory needed, and you know how much + swap space you need. (On some versions of UNIX, you need to + allocate space for an image of the physical memory as well, so + the amount computed in step 2 is what you need and you shouldn't + do the subtraction.)</P +></LI +><LI +><P +>If your calculated swap space is very much larger than your + physical memory (more than a couple times larger), you should + probably invest in more physical memory, otherwise performance + will be too low.</P +></LI +></UL +> + + </P +><P +>It's a good idea to have at least some swap space, even if + your calculations indicate that you need none. Linux uses + swap space somewhat aggressively, so that as much physical + memory as possible can be kept free. Linux will swap out + memory pages that have not been used, even if the memory + is not yet needed for anything. This avoids waiting for + swapping when it is needed: the swapping can be done + earlier, when the disk is otherwise idle.</P +><P +>Swap space can be divided among several disks. This + can sometimes improve performance, depending on the + relative speeds of the disks and the access patterns + of the disks. You might want to experiment with a few + schemes, but be aware that doing the experiments + properly is quite difficult. You should not believe + claims that any one scheme is superior to any other, + since it won't always be true. + </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1529.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1551.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Sharing swap spaces with other operating systems</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1450.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The buffer cache</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1551.html b/sag-0.6.1-www/sag-0.6.1.html/x1551.html new file mode 100644 index 0000000..4bd5990 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1551.html @@ -0,0 +1,308 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The buffer cache</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Memory Management" +HREF="c1450.html"><LINK +REL="PREVIOUS" +TITLE="Allocating swap space" +HREF="x1532.html"><LINK +REL="NEXT" +TITLE="Boots And Shutdowns" +HREF="c1582.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1532.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 5. Memory Management</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c1582.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="BUFFER-CACHE" +>The buffer cache</A +></H1 +><P +>Reading from a disk + + <A +NAME="AEN1554" +HREF="#FTN.AEN1554" +>[1]</A +> + + is very slow compared to accessing (real) memory. In addition, + it is common to read the same part of a disk several times + during relatively short periods of time. For example, one + might first read an e-mail message, then read the letter into + an editor when replying to it, then make the mail program read + it again when copying it to a folder. Or, consider how often + the command <B +CLASS="COMMAND" +>ls</B +> might be run on a system with + many users. By reading the information from disk only once + and then keeping it in memory until no longer needed, one can + speed up all but the first read. This is called <I +CLASS="GLOSSTERM" +>disk + buffering</I +>, and the memory used for the purpose is + called the <I +CLASS="GLOSSTERM" +>buffer cache</I +>.</P +><P +>Since memory is, unfortunately, a finite, nay, scarce + resource, the buffer cache usually cannot be big enough (it + can't hold all the data one ever wants to use). When the cache + fills up, the data that has been unused for the longest time + is discarded and the memory thus freed is used for the new + data.</P +><P +>Disk buffering works for writes as well. On the one hand, + data that is written is often soon read again (e.g., a source + code file is saved to a file, then read by the compiler), + so putting data that is written in the cache is a good idea. + On the other hand, by only putting the data into the cache, not + writing it to disk at once, the program that writes runs quicker. + The writes can then be done in the background, without slowing + down the other programs.</P +><P +>Most operating systems have buffer caches (although + they might be called something else), but not all of + them work according to the above principles. Some are + <I +CLASS="GLOSSTERM" +>write-through</I +>: the data is written to disk + at once (it is kept in the cache as well, of course). The cache + is called <I +CLASS="GLOSSTERM" +>write-back</I +> if the writes are done + at a later time. Write-back is more efficient than write-through, + but also a bit more prone to errors: if the machine crashes, + or the power is cut at a bad moment, or the floppy is removed + from the disk drive before the data in the cache waiting to be + written gets written, the changes in the cache are usually lost. + This might even mean that the filesystem (if there is one) is + not in full working order, perhaps because the unwritten data + held important changes to the bookkeeping information.</P +><P +>Because of this, you should never turn off the + power without using a proper shutdown procedure (see <A +HREF="c1582.html" +>Chapter 6</A +>), or remove a floppy from the + disk drive until it has been unmounted (if it was mounted) + or after whatever program is using it has signaled that it + is finished and the floppy drive light doesn't shine anymore. + The <B +CLASS="COMMAND" +>sync</B +> command <I +CLASS="GLOSSTERM" +>flushes</I +> + the buffer, i.e., forces all unwritten data to be written to disk, + and can be used when one wants to be sure that everything is + safely written. In traditional UNIX systems, there is a program + called <B +CLASS="COMMAND" +>update</B +> running in the background + which does a <B +CLASS="COMMAND" +>sync</B +> every 30 seconds, so + it is usually not necessary to use <B +CLASS="COMMAND" +>sync</B +>. + Linux has an additional daemon, <B +CLASS="COMMAND" +>bdflush</B +>, + which does a more imperfect sync more frequently to avoid the + sudden freeze due to heavy disk I/O that <B +CLASS="COMMAND" +>sync</B +> + sometimes causes.</P +><P +>Under Linux, <B +CLASS="COMMAND" +>bdflush</B +> is started by + <B +CLASS="COMMAND" +>update</B +>. There is usually no reason to worry + about it, but if <B +CLASS="COMMAND" +>bdflush</B +> happens to die for + some reason, the kernel will warn about this, and you should + start it by hand (<B +CLASS="COMMAND" +>/sbin/update</B +>).</P +><P +>The cache does not actually buffer files, but blocks, which + are the smallest units of disk I/O (under Linux, they are usually + 1 kB). This way, also directories, super blocks, other filesystem + bookkeeping data, and non-filesystem disks are cached.</P +><P +>The effectiveness of a cache is primarily decided by its + size. A small cache is next to useless: it will hold so little + data that all cached data is flushed from the cache before it + is reused. The critical size depends on how much data is read + and written, and how often the same data is accessed. The only + way to know is to experiment.</P +><P +>If the cache is of a fixed size, it is not very good to have + it too big, either, because that might make the free memory too + small and cause swapping (which is also slow). To make the most + efficient use of real memory, Linux automatically uses all free + RAM for buffer cache, but also automatically makes the cache + smaller when programs need more memory.</P +><P +>Under Linux, you do not need to do anything to make use + of the cache, it happens completely automatically. Except for + following the proper procedures for shutdown and removing + floppies, you do not need to worry about it. </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1554" +HREF="x1551.html#AEN1554" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Except a RAM disk, for obvious + reasons.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1532.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c1582.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Allocating swap space</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1450.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Boots And Shutdowns</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1602.html b/sag-0.6.1-www/sag-0.6.1.html/x1602.html new file mode 100644 index 0000000..5ca2228 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1602.html @@ -0,0 +1,398 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The boot process in closer look</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Boots And Shutdowns" +HREF="c1582.html"><LINK +REL="PREVIOUS" +TITLE="Boots And Shutdowns" +HREF="c1582.html"><LINK +REL="NEXT" +TITLE="More about shutdowns" +HREF="x1650.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c1582.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 6. Boots And Shutdowns</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1650.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1602" +>The boot process in closer look</A +></H1 +><P +>You can boot Linux either from a floppy or from the hard + disk. The installation section in the Installation and + Getting Started guide (XXX citation) + tells you how to install Linux so you can boot it the way + you want to.</P +><P +>When a PC is booted, the BIOS will do various tests to + check that everything looks all right, + + <A +NAME="AEN1606" +HREF="#FTN.AEN1606" +>[1]</A +> + + and will then start the actual booting. It will choose a disk + drive (typically the first floppy drive, if there is a floppy + inserted, otherwise the first hard disk, if one is installed + in the computer; the order might be configurable, however) + and will then read its very first sector. This is called the + <I +CLASS="GLOSSTERM" +>boot sector</I +>; for a hard disk, it is also + called the <I +CLASS="GLOSSTERM" +>master boot record</I +>, since a + hard disk can contain several partitions, each with their own + boot sectors.</P +><P +>The boot sector contains a small program (small enough to + fit into one sector) whose responsibility is to read the actual + operating system from the disk and start it. When booting Linux + from a floppy disk, the boot sector contains code that just reads + the first few hundred blocks (depending on the actual kernel + size, of course) to a predetermined place in memory. On a Linux + boot floppy, there is no filesystem, the kernel is just stored + in consecutive sectors, since this simplifies the boot process. + It is possible, however, to boot from a floppy with a filesystem, + by using LILO, the LInux LOader.</P +><P +>When booting from the hard disk, the code in the master + boot record will examine the partition table (also in the master + boot record), identify the active partition (the partition that is + marked to be bootable), read the boot sector from that partition, + and then start the code in that boot sector. The code in the + partition's boot sector does what a floppy disk's boot sector + does: it will read in the kernel from the partition and start it. + The details vary, however, since it is generally not useful to + have a separate partition for just the kernel image, so the + code in the partition's boot sector can't just read the disk + in sequential order, it has to find the sectors wherever the + filesystem has put them. There are several ways around this + problem, but the most common way is to use LILO. (The details + about how to do this are irrelevant for this discussion, however; + see the LILO documentation for more information; it is most + thorough.)</P +><P +>When booting with LILO, it will normally go right ahead + and read in and boot the default kernel. It is also possible + to configure LILO to be able to boot one of several kernels, + or even other operating systems than Linux, and it is possible + for the user to choose which kernel or operating system is to + be booted at boot time. LILO can be configured so that if one + holds down the <B +CLASS="KEYCAP" +>alt</B +>, <B +CLASS="KEYCAP" +>shift</B +>, or + <B +CLASS="KEYCAP" +>ctrl</B +> key at boot time (when LILO is loaded), + LILO will ask what is to be booted and not boot the default + right away. Alternatively, LILO can be configured so that it + will always ask, with an optional timeout that will cause the + default kernel to be booted.</P +><P +>With LILO, it is also possible to give a <I +CLASS="GLOSSTERM" +>kernel + command line argument</I +>, after the name of the kernel + or operating system.</P +><P +>Booting from floppy and from hard disk have both their + advantages, but generally booting from the hard disk is nicer, + since it avoids the hassle of playing around with floppies. + It is also faster. However, it can be more troublesome to install + the system to boot from the hard disk, so many people will first + boot from floppy, then, when the system is otherwise installed + and working well, will install LILO and start booting from the + hard disk.</P +><P +>After the Linux kernel has been read into the memory, by + whatever means, and is started for real, roughly the following + things happen: + + <P +></P +><UL +><LI +><P +> The Linux kernel is installed compressed, so it will first + uncompress itself. The beginning of the kernel image + contains a small program that does this. + </P +></LI +><LI +><P +> If you have a super-VGA card that Linux + recognizes and that has some special text modes (such as 100 + columns by 40 rows), Linux asks you which mode + you want to use. During the kernel compilation, it is + possible to preset a video mode, so that this is never asked. + This can also be done with LILO or <B +CLASS="COMMAND" +>rdev</B +>. + </P +></LI +><LI +><P +> After this, the kernel checks what other hardware there is + (hard disks, floppies, network adapters, etc), and configures + some of its device drivers appropriately; while it does this, + it outputs messages about its findings. For example, when I + boot, I it looks like this: + +<PRE +CLASS="SCREEN" +><TT +CLASS="COMPUTEROUTPUT" +>LILO boot: +Loading linux. +Console: colour EGA+ 80x25, 8 virtual consoles +Serial driver version 3.94 with no serial options enabled +tty00 at 0x03f8 (irq = 4) is a 16450 +tty01 at 0x02f8 (irq = 3) is a 16450 +lp_init: lp1 exists (0), using polling driver +Memory: 7332k/8192k available (300k kernel code, 384k reserved, 176k data) +Floppy drive(s): fd0 is 1.44M, fd1 is 1.2M +Loopback device init +Warning WD8013 board not found at i/o = 280. +Math coprocessor using irq13 error reporting. +Partition check: + hda: hda1 hda2 hda3 +VFS: Mounted root (ext filesystem). +Linux version 0.99.pl9-1 (root@haven) 05/01/93 14:12:20</TT +></PRE +> + + The exact texts are different on different systems, depending + on the hardware, the version of Linux being used, and how + it has been configured. + </P +></LI +><LI +><P +> Then the kernel will try to mount the root + filesystem. The place is configurable at compilation time, or + any time with <B +CLASS="COMMAND" +>rdev</B +> or LILO. The filesystem + type is detected automatically. If the mounting of the root + filesystem fails, for example because you didn't remember to + include the corresponding filesystem driver in the kernel, the + kernel panics and halts the system (there isn't much it can do, + anyway). </P +><P +>The root filesystem is usually mounted read-only (this can + be set in the same way as the place). This makes it possible + to check the filesystem while it is mounted; it is not a good + idea to check a filesystem that is mounted read-write. + </P +></LI +><LI +><P +> After this, the kernel starts + the program <B +CLASS="COMMAND" +>init</B +> (located in + <TT +CLASS="FILENAME" +>/sbin/init</TT +>) in the background (this will + always become process number 1). <B +CLASS="COMMAND" +>init</B +> does + various startup chores. The exact things it does depends on how + it is configured; see <A +HREF="c1705.html" +>Chapter 7</A +> for more information + (not yet written). It will at least start some essential + background daemons. </P +></LI +><LI +><P +> <B +CLASS="COMMAND" +>init</B +> then switches to + multi-user mode, and starts a <B +CLASS="COMMAND" +>getty</B +> for virtual + consoles and serial lines. <B +CLASS="COMMAND" +>getty</B +> is the + program which lets people log in via virtual consoles and serial + terminals. <B +CLASS="COMMAND" +>init</B +> may also start some other + programs, depending on how it is configured. </P +></LI +><LI +><P +> After this, the boot is complete, and the system + is up and running normally. </P +></LI +></UL +> + </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1606" +HREF="x1602.html#AEN1606" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>This is called + the <I +CLASS="GLOSSTERM" +>power on self test</I +>, or + <I +CLASS="GLOSSTERM" +>POST</I +> for short.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c1582.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1650.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Boots And Shutdowns</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1582.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>More about shutdowns</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1650.html b/sag-0.6.1-www/sag-0.6.1.html/x1650.html new file mode 100644 index 0000000..341f578 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1650.html @@ -0,0 +1,321 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>More about shutdowns</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Boots And Shutdowns" +HREF="c1582.html"><LINK +REL="PREVIOUS" +TITLE="The boot process in closer look" +HREF="x1602.html"><LINK +REL="NEXT" +TITLE="Rebooting" +HREF="x1684.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1602.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 6. Boots And Shutdowns</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1684.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1650" +>More about shutdowns</A +></H1 +><P +>It is important to follow the correct procedures when you shut + down a Linux system. If you fail do so, your filesystems probably + will become trashed and the files probably will become scrambled. + This is because Linux has a disk cache that won't write things + to disk at once, but only at intervals. This greatly improves + performance but also means that if you just turn off the power + at a whim the cache may hold a lot of data and that what is on + the disk may not be a fully working filesystem (because only + some things have been written to the disk).</P +><P +>Another reason against just flipping the power switch is that + in a multi-tasking system there can be lots of things going on + in the background, and shutting the power can be quite + disastrous. By using the proper shutdown sequence, you ensure + that all background processes can save their data.</P +><P +>The command for properly shutting down a Linux system + is <B +CLASS="COMMAND" +>shutdown</B +>. It is usually used in one of + two ways.</P +><P +>If you are running a system where you are the only user, + the usual way of using <B +CLASS="COMMAND" +>shutdown</B +> is to quit + all running programs, log out on all virtual consoles, log + in as root on one of them (or stay logged in as root if you + already are, but you should change to root's home directory or + the root directory, to avoid problems with unmounting), then + give the command <B +CLASS="COMMAND" +>shutdown -h now</B +> (substitute + <TT +CLASS="LITERAL" +>now</TT +> with a plus sign and a number in minutes + if you want a delay, though you usually don't on a single user + system).</P +><P +>Alternatively, if your system has many users, use the command + <B +CLASS="COMMAND" +>shutdown -h +time message</B +>, where <TT +CLASS="LITERAL" +>time</TT +> + is the + time in minutes until the system is halted, and <TT +CLASS="LITERAL" +>message</TT +> + is a short explanation of why the system is shutting down. + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>shutdown -h +10 'We will install a new disk. System should +> be back on-line in three hours.'</B +></TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + This will warn everybody that the system will shut down in + ten minutes, and that they'd better get lost or lose data. + The warning is printed to every terminal on which someone is + logged in, including all <B +CLASS="COMMAND" +>xterm</B +>s: + +<PRE +CLASS="SCREEN" +><TT +CLASS="COMPUTEROUTPUT" +>Broadcast message from root (ttyp0) Wed Aug 2 01:03:25 1995... + +We will install a new disk. System should +be back on-line in three hours. +The system is going DOWN for system halt in 10 minutes !!</TT +></PRE +> + + The warning is automatically repeated a few times before the boot, + with shorter and shorter intervals as the time runs out.</P +><P +>When the real shutting down starts after any delays, all + filesystems (except the root one) are unmounted, user processes + (if anybody is still logged in) are killed, daemons are shut down, + all filesystem are unmounted, and generally everything settles + down. When that is done, <B +CLASS="COMMAND" +>init</B +> prints out a + message that you can power down the machine. Then, and only then, + should you move your fingers towards the power switch.</P +><P +>Sometimes, although rarely on any good system, it is + impossible to shut down properly. For instance, if the kernel + panics and crashes and burns and generally misbehaves, it might + be completely impossible to give any new commands, hence shutting + down properly is somewhat difficult, and just about everything + you can do is hope that nothing has been too severely damaged + and turn off the power. If the troubles are a bit less severe + (say, somebody hit your keyboard with an axe), and the kernel + and the <B +CLASS="COMMAND" +>update</B +> program still run normally, + it is probably a good idea to wait a couple of minutes to give + <B +CLASS="COMMAND" +>update</B +> a chance to flush the buffer cache, + and only cut the power after that.</P +><P +>Some people like to shut down using the command + <B +CLASS="COMMAND" +>sync</B +> + + <A +NAME="AEN1678" +HREF="#FTN.AEN1678" +>[1]</A +> + + three times, waiting for the disk I/O to stop, then turn off + the power. If there are no running programs, this is about + equivalent to using <B +CLASS="COMMAND" +>shutdown</B +>. However, it + does not unmount any filesystems and this can lead to problems + with the ext2fs ``clean filesystem'' flag. The triple-sync + method is <I +CLASS="EMPHASIS" +>not recommended</I +>.</P +><P +>(In case you're wondering: the reason for three syncs is + that in the early days of UNIX, when the commands were + typed separately, that usually gave sufficient time for most + disk I/O to be finished.) + </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1678" +HREF="x1650.html#AEN1678" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +><B +CLASS="COMMAND" +>sync</B +> flushes the + buffer cache. </P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1602.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1684.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The boot process in closer look</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1582.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Rebooting</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1684.html b/sag-0.6.1-www/sag-0.6.1.html/x1684.html new file mode 100644 index 0000000..bde94bd --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1684.html @@ -0,0 +1,164 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Rebooting</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Boots And Shutdowns" +HREF="c1582.html"><LINK +REL="PREVIOUS" +TITLE="More about shutdowns" +HREF="x1650.html"><LINK +REL="NEXT" +TITLE="Single user mode" +HREF="x1693.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1650.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 6. Boots And Shutdowns</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1693.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1684" +>Rebooting</A +></H1 +><P +>Rebooting means booting the system again. This can be + accomplished by first shutting it down completely, turning + power off, and then turning it back on. A simpler way is to + ask <B +CLASS="COMMAND" +>shutdown</B +> to reboot the system, instead + of merely halting it. This is accomplished by using the + <SPAN +CLASS="OPTION" +>-r</SPAN +> option to <B +CLASS="COMMAND" +>shutdown</B +>, + for example, by giving the command <B +CLASS="COMMAND" +>shutdown -r + now</B +>.</P +><P +>Most Linux systems run <B +CLASS="COMMAND" +>shutdown -r now</B +> + when ctrl-alt-del is pressed on the keyboard. This reboots the + system. The action on ctrl-alt-del is configurable, however, and + it might be better to allow for some delay before the reboot on + a multiuser machine. Systems that are physically accessible to + anyone might even be configured to do nothing when ctrl-alt-del + is pressed. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1650.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1693.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>More about shutdowns</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1582.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Single user mode</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1693.html b/sag-0.6.1-www/sag-0.6.1.html/x1693.html new file mode 100644 index 0000000..b8c3485 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1693.html @@ -0,0 +1,141 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Single user mode</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Boots And Shutdowns" +HREF="c1582.html"><LINK +REL="PREVIOUS" +TITLE="Rebooting" +HREF="x1684.html"><LINK +REL="NEXT" +TITLE="Emergency boot floppies" +HREF="x1697.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1684.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 6. Boots And Shutdowns</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1697.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1693" +>Single user mode</A +></H1 +><P +>The <B +CLASS="COMMAND" +>shutdown</B +> command can also be used + to bring the system down to single user mode, in which no one + can log in, but root can use the console. This is useful for + system administration tasks that can't be done while the system is + running normally.</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1684.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1697.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Rebooting</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1582.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Emergency boot floppies</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1697.html b/sag-0.6.1-www/sag-0.6.1.html/x1697.html new file mode 100644 index 0000000..59049a7 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1697.html @@ -0,0 +1,171 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Emergency boot floppies</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Boots And Shutdowns" +HREF="c1582.html"><LINK +REL="PREVIOUS" +TITLE="Single user mode" +HREF="x1693.html"><LINK +REL="NEXT" +TITLE="init" +HREF="c1705.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1693.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 6. Boots And Shutdowns</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c1705.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1697" +>Emergency boot floppies</A +></H1 +><P +>It is not always possible to boot a computer from the hard disk. + For example, if you make a mistake in configuring LILO, you might + make your system unbootable. For these situations, you need an + alternative way of booting that will always work (as long as the + hardware works). For typical PC's, this means booting from the + floppy drive.</P +><P +>Most Linux distributions allow one to create an + <I +CLASS="GLOSSTERM" +>emergency boot floppy</I +> during installation. + It is a good idea to do this. However, some such boot disks + contain only the kernel, and assume you will be using the programs + on the distribution's installation disks to fix whatever problem + you have. Sometimes those programs aren't enough; for example, + you might have to restore some files from backups made with + software not on the installation disks.</P +><P +>Thus, it might be necessary to create a custom root floppy + as well. The <I +CLASS="CITETITLE" +>Bootdisk HOWTO</I +> by Graham + Chapman (XXX citation) contains instructions for doing this. + You must, of course, remember to keep your emergency boot and + root floppies up to date.</P +><P +>You can't use the floppy drive you use to mount the root + floppy for anything else. This can be inconvenient if you only + have one floppy drive. However, if you have enough memory, you + can configure your boot floppy to load the root disk to a ramdisk + (the boot floppy's kernel needs to be specially configured for + this). Once the root floppy has been loaded into the ramdisk, + the floppy drive is free to mount other disks. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1693.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c1705.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Single user mode</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1582.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><B +CLASS="COMMAND" +>init</B +></TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1752.html b/sag-0.6.1-www/sag-0.6.1.html/x1752.html new file mode 100644 index 0000000..eeabdb9 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1752.html @@ -0,0 +1,402 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Configuring init to start getty: the /etc/inittab file</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="init" +HREF="c1705.html"><LINK +REL="PREVIOUS" +TITLE="init" +HREF="c1705.html"><LINK +REL="NEXT" +TITLE="Run levels" +HREF="x1812.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c1705.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 7. <B +CLASS="COMMAND" +>init</B +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1812.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1752" +>Configuring <B +CLASS="COMMAND" +>init</B +> to start <B +CLASS="COMMAND" +>getty</B +>: the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file</A +></H1 +><P +>When it starts up, <B +CLASS="COMMAND" +>init</B +> reads the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> + configuration file. While the system is running, it will + re-read it, if sent the HUP signal; + + <A +NAME="AEN1760" +HREF="#FTN.AEN1760" +>[1]</A +> + + this feature makes it unnecessary to boot the system to make + changes to the <B +CLASS="COMMAND" +>init</B +> configuration take + effect.</P +><P +>The <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file is + a bit complicated. We'll start with the simple case + of configuring <B +CLASS="COMMAND" +>getty</B +> lines. Lines in + <TT +CLASS="FILENAME" +>/etc/inittab</TT +> consist of four colon-delimited + fields: + +<PRE +CLASS="SCREEN" +>id:runlevels:action:process</PRE +> + + The fields are described below. In addition, + <TT +CLASS="FILENAME" +>/etc/inittab</TT +> can contain empty lines, and + lines that begin with a number sign (`<TT +CLASS="LITERAL" +>#</TT +>'); + these are both ignored. + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +>id</B +></DT +><DD +><P +> This identifies the line in the file. For + <B +CLASS="COMMAND" +>getty</B +> lines, it specifies the terminal + it runs on (the characters after <TT +CLASS="FILENAME" +>/dev/tty</TT +> + in the device file name). For other lines, + it doesn't matter (except for length restrictions), + but it should be unique. + </P +></DD +><DT +><B +>runlevels</B +></DT +><DD +><P +> The run levels the line should be considered + for. The run levels are given as single digits, + without delimiters. (Run levels are described + in the next section.) + </P +></DD +><DT +><B +>action</B +></DT +><DD +><P +> What action should be taken by the line, e.g., + <TT +CLASS="LITERAL" +>respawn</TT +> to run the command in the + next field again, when it exits, or <TT +CLASS="LITERAL" +>once</TT +> + to run it just once. + </P +></DD +><DT +><B +>process</B +></DT +><DD +><P +> The command to run. + </P +></DD +></DL +></DIV +> + + To start a <B +CLASS="COMMAND" +>getty</B +> on the first virtual terminal + (<TT +CLASS="FILENAME" +>/dev/tty1</TT +>}), in all the normal multi-user + run levels (2-5), one would write the following line: + +<PRE +CLASS="SCREEN" +>1:2345:respawn:/sbin/getty 9600 tty1</PRE +> + + The first field says that this is the line for <TT +CLASS="FILENAME" +>/dev/tty1</TT +>. + The second field says that it applies to run levels 2, 3, 4, + and 5. The third field means that the command should be run + again, after it exits (so that one can log in, log out, and + then log in again). The last field is the command that runs + <B +CLASS="COMMAND" +>getty</B +> on the first virtual terminal. + + <A +NAME="AEN1797" +HREF="#FTN.AEN1797" +>[2]</A +> + </P +><P +>If you wanted to add terminals or dial-in modem lines to a + system, you'd add more lines to <TT +CLASS="FILENAME" +>/etc/inittab</TT +>, + one for each terminal or dial-in line. For more details, see the + manual pages <B +CLASS="COMMAND" +>init</B +>, <TT +CLASS="FILENAME" +>inittab</TT +>, + and <B +CLASS="COMMAND" +>getty</B +>.</P +><P +>If a command fails when it starts, + and <B +CLASS="COMMAND" +>init</B +> is configured to + <TT +CLASS="LITERAL" +>restart</TT +> it, it will use a lot of + system resources: <B +CLASS="COMMAND" +>init</B +> starts it, + it fails, <B +CLASS="COMMAND" +>init</B +> starts it, it fails, + <B +CLASS="COMMAND" +>init</B +> starts it, it fails, and so on, ad + infinitum. To prevent this, <B +CLASS="COMMAND" +>init</B +> will keep + track of how often it restarts a command, and if the frequency + grows to high, it will delay for five minutes before restarting + again. </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1760" +HREF="x1752.html#AEN1760" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Using the command <B +CLASS="COMMAND" +>kill -HUP + 1</B +> as root, for example </P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1797" +HREF="x1752.html#AEN1797" +>[2]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Different versions of + <B +CLASS="COMMAND" +>getty</B +> are run differently. Consult + your manual page, and make sure it is the correct + manual page.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c1705.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1812.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><B +CLASS="COMMAND" +>init</B +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1705.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Run levels</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1812.html b/sag-0.6.1-www/sag-0.6.1.html/x1812.html new file mode 100644 index 0000000..6938e7b --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1812.html @@ -0,0 +1,302 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Run levels</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="init" +HREF="c1705.html"><LINK +REL="PREVIOUS" +TITLE="Configuring init to start getty: the /etc/inittab file" +HREF="x1752.html"><LINK +REL="NEXT" +TITLE="Special configuration in /etc/inittab" +HREF="x1852.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1752.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 7. <B +CLASS="COMMAND" +>init</B +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1852.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1812" +>Run levels</A +></H1 +><P +>A <I +CLASS="GLOSSTERM" +>run level</I +> is a state of + <B +CLASS="COMMAND" +>init</B +> and the whole system that defines what + system services are operating. Run levels are identified by + numbers, see <A +HREF="x1812.html#RUN-LEVELS" +>Table 7-1</A +>. There is no consensus of how to use the + user defined run levels (2 through 5). Some system administrators + use run levels to define which subsystems are working, e.g., + whether X is running, whether the network is operational, and + so on. Others have all subsystems always running or start and + stop them individually, without changing run levels, since run + levels are too coarse for controlling their systems. You need + to decide for yourself, but it might be easiest to follow the + way your Linux distribution does things.</P +><DIV +CLASS="TABLE" +><P +><B +><A +NAME="RUN-LEVELS" +>Table 7-1. Run level numbers</A +></B +></P +><TABLE +BORDER="1" +CLASS="CALSTABLE" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>0</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Halt the system.</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Single-user mode (for special administration).</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2-5</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Normal operation (user defined).</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>6</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Reboot.</TD +></TR +></TABLE +></DIV +><P +>Run levels are configured in <TT +CLASS="FILENAME" +>/etc/inittab</TT +> by lines like + the following: + +<PRE +CLASS="SCREEN" +>l2:2:wait:/etc/init.d/rc 2</PRE +> + + The first field is an arbitrary label, the second one means + that this applies for run level 2. The third field means + that <B +CLASS="COMMAND" +>init</B +> should run the command in the + fourth field once, when the run level is entered, and that + <B +CLASS="COMMAND" +>init</B +> should wait for it to complete. The + <TT +CLASS="FILENAME" +>/etc/init.d/rc</TT +> command runs whatever + commands are necessary to start and stop services to enter run + level 2.</P +><P +>The command in the fourth field does all the hard work of + setting up a run level. It starts services that aren't already + running, and stops services that shouldn't be running in the + new run level any more. Exactly what the command is, and how run + levels are configured, depends on the Linux distribution.</P +><P +>When <B +CLASS="COMMAND" +>init</B +> starts, it looks for a line + in <TT +CLASS="FILENAME" +>/etc/inittab</TT +> that specifies the default + run level: + +<PRE +CLASS="SCREEN" +>id:2:initdefault:</PRE +> + + You can ask <B +CLASS="COMMAND" +>init</B +> to go to a non-default run + level at startup by giving the kernel a command line argument + of <TT +CLASS="LITERAL" +>single</TT +> or <TT +CLASS="LITERAL" +>emergency</TT +>. + Kernel command line arguments can be given via LILO, for example. + This allows you to choose the single user mode (run level 1).</P +><P +>While the system is running, the <B +CLASS="COMMAND" +>telinit</B +> + command can change the run level. When the run level is + changed, <B +CLASS="COMMAND" +>init</B +> runs the relevant command from + <TT +CLASS="FILENAME" +>/etc/inittab</TT +>. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1752.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1852.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Configuring <B +CLASS="COMMAND" +>init</B +> to start <B +CLASS="COMMAND" +>getty</B +>: the <TT +CLASS="FILENAME" +>/etc/inittab</TT +> file</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1705.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Special configuration in <TT +CLASS="FILENAME" +>/etc/inittab</TT +></TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1852.html b/sag-0.6.1-www/sag-0.6.1.html/x1852.html new file mode 100644 index 0000000..ad096cb --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1852.html @@ -0,0 +1,223 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Special configuration in /etc/inittab</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="init" +HREF="c1705.html"><LINK +REL="PREVIOUS" +TITLE="Run levels" +HREF="x1812.html"><LINK +REL="NEXT" +TITLE="Booting in single user mode" +HREF="x1880.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1812.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 7. <B +CLASS="COMMAND" +>init</B +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1880.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1852" +>Special configuration in <TT +CLASS="FILENAME" +>/etc/inittab</TT +></A +></H1 +><P +>The <TT +CLASS="FILENAME" +>/etc/inittab</TT +> has some special + features that allow <B +CLASS="COMMAND" +>init</B +> to react to special + circumstances. These special features are marked by special + keywords in the third field. Some examples: + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><TT +CLASS="LITERAL" +>powerwait</TT +></B +></DT +><DD +><P +> Allows <B +CLASS="COMMAND" +>init</B +> to shut the system + down, when the power fails. This assumes the use of + a UPS, and software that watches the UPS and informs + <B +CLASS="COMMAND" +>init</B +> that the power is off. + </P +></DD +><DT +><B +><TT +CLASS="LITERAL" +>ctrlaltdel</TT +></B +></DT +><DD +><P +> Allows <B +CLASS="COMMAND" +>init</B +> to reboot the system, when + the user presses ctrl-alt-del on the console keyboard. + Note that the system administrator can configure the + reaction to ctrl-alt-del to be something else instead, + e.g., to be ignored, if the system is in a public + location. (Or to start <B +CLASS="COMMAND" +>nethack</B +>.) + </P +></DD +><DT +><B +><TT +CLASS="LITERAL" +>sysinit</TT +></B +></DT +><DD +><P +> Command to be run when the system is booted. This command + usually cleans up <TT +CLASS="FILENAME" +>/tmp</TT +>, for example. + </P +></DD +></DL +></DIV +> + + The list above is not exhaustive. See your + <TT +CLASS="FILENAME" +>inittab</TT +> manual page for all possibilities, + and for details on how to use the above ones. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1812.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1880.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Run levels</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1705.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Booting in single user mode</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1880.html b/sag-0.6.1-www/sag-0.6.1.html/x1880.html new file mode 100644 index 0000000..ceb8431 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1880.html @@ -0,0 +1,261 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Booting in single user mode</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="init" +HREF="c1705.html"><LINK +REL="PREVIOUS" +TITLE="Special configuration in /etc/inittab" +HREF="x1852.html"><LINK +REL="NEXT" +TITLE="Logging In And Out" +HREF="c1905.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1852.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 7. <B +CLASS="COMMAND" +>init</B +></TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c1905.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1880" +>Booting in single user mode</A +></H1 +><P +>An important run level is <I +CLASS="GLOSSTERM" +>single user mode</I +> (run level 1), + in which only the system administrator is using the machine + and as few system services, including logins, as possible are + running. Single user mode is necessary for a few administrative + tasks, + + <A +NAME="AEN1884" +HREF="#FTN.AEN1884" +>[1]</A +> + + such as running <B +CLASS="COMMAND" +>fsck</B +> on a + <TT +CLASS="FILENAME" +>/usr</TT +> partition, since this requires that + the partition be unmounted, and that can't happen, unless just + about all system services are killed.</P +><P +>A running system can be taken to single user mode by using + <B +CLASS="COMMAND" +>telinit</B +> to request run level 1. At bootup, + it can be entered by giving the word <TT +CLASS="LITERAL" +>single</TT +> + or <TT +CLASS="LITERAL" +>emergency</TT +> on the kernel command line: the + kernel gives the command line to <B +CLASS="COMMAND" +>init</B +> as well, + and <B +CLASS="COMMAND" +>init</B +> understands from that word that it + shouldn't use the default run level. (The kernel command line is + entered in a way that depends on how you boot the system.)</P +><P +>Booting into single user mode is sometimes necessary so + that one can run <B +CLASS="COMMAND" +>fsck</B +> by hand, before anything + mounts or otherwise touches a broken <TT +CLASS="FILENAME" +>/usr</TT +> + partition (any activity on a broken filesystem is likely to + break it more, so <B +CLASS="COMMAND" +>fsck</B +> should be run as soon + as possible).</P +><P +>The bootup scripts <B +CLASS="COMMAND" +>init</B +> runs + will automatically enter single user mode, if the automatic + <B +CLASS="COMMAND" +>fsck</B +> at bootup fails. This is an attempt to + prevent the system from using a filesystem that is so broken that + <B +CLASS="COMMAND" +>fsck</B +> can't fix it automatically. Such breakage + is relatively rare, and usually involves a broken hard disk or an + experimental kernel release, but it's good to be prepared.</P +><P +>As a security measure, a properly configured system + will ask for the root password before starting the shell in + single user mode. Otherwise, it would be simple to just enter + a suitable line to LILO to get in as root. (This will break if + <TT +CLASS="FILENAME" +>/etc/passwd</TT +> has been broken by filesystem + problems, of course, and in that case you'd better have a boot + floppy handy.)</P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1884" +HREF="x1880.html#AEN1884" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>It probably shouldn't be used for playing + <B +CLASS="COMMAND" +>nethack</B +>.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1852.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c1905.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Special configuration in <TT +CLASS="FILENAME" +>/etc/inittab</TT +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1705.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Logging In And Out</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1944.html b/sag-0.6.1-www/sag-0.6.1.html/x1944.html new file mode 100644 index 0000000..e4169cf --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1944.html @@ -0,0 +1,199 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Logins via the network</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Logging In And Out" +HREF="c1905.html"><LINK +REL="PREVIOUS" +TITLE="Logging In And Out" +HREF="c1905.html"><LINK +REL="NEXT" +TITLE="What login does" +HREF="x1956.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c1905.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 8. Logging In And Out</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1956.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1944" +>Logins via the network</A +></H1 +><P +>Two computers in the same network are usually linked via a + single physical cable. When they communicate over the network, + the programs in each computer that take part in the communication + are linked via a <I +CLASS="GLOSSTERM" +>virtual connection</I +>, a sort + of imaginary cable. As far as the programs at either end of the + virtual connection are concerned, they have a monopoly on their + own cable. However, since the cable is not real, only imaginary, + the operating systems of both computers can have several virtual + connections share the same physical cable. This way, using just + a single cable, several programs can communicate without having + to know of or care about the other communications. It is even + possible to have several computers use the same cable; the virtual + connections exist between two computers, and the other computers + ignore those connections that they don't take part in. </P +><P +> That's a complicated and over-abstracted description of + the reality. It might, however, be good enough to understand + the important reason why network logins are somewhat different + from normal logins. The virtual connections are established + when there are two programs on different computers that wish + to communicate. Since it is in principle possible to login + from any computer in a network to any other computer, there is + a huge number of potential virtual communications. Because of + this, it is not practical to start a <B +CLASS="COMMAND" +>getty</B +> + for each potential login. </P +><P +> There is a single process inetd (corresponding to + <B +CLASS="COMMAND" +>getty</B +>) that handles all network logins. + When it notices an incoming network login (i.e., it notices + that it gets a new virtual connection to some other computer), + it starts a new process to handle that single login. The original + process remains and continues to listen for new logins. </P +><P +> To make things a bit more complicated, there is + more than one communication protocol for network logins. + The two most important ones are <B +CLASS="COMMAND" +>telnet</B +> and + <B +CLASS="COMMAND" +>rlogin</B +>. In addition to logins, there are many + other virtual connections that may be made (for FTP, Gopher, HTTP, + and other network services). It would be ineffective to have a + separate process listening for a particular type of connection, + so instead there is only one listener that can recognize the type + of the connection and can start the correct type of program to + provide the service. This single listener is called \cmd{inetd}; + see the <I +CLASS="CITETITLE" +>Linux Network Administrators' Guide</I +> + for more information. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c1905.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1956.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Logging In And Out</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1905.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>What <B +CLASS="COMMAND" +>login</B +> does</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1956.html b/sag-0.6.1-www/sag-0.6.1.html/x1956.html new file mode 100644 index 0000000..6996cc7 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1956.html @@ -0,0 +1,274 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>What login does</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Logging In And Out" +HREF="c1905.html"><LINK +REL="PREVIOUS" +TITLE="Logins via the network" +HREF="x1944.html"><LINK +REL="NEXT" +TITLE="X and xdm" +HREF="x1988.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1944.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 8. Logging In And Out</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1988.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1956" +>What <B +CLASS="COMMAND" +>login</B +> does</A +></H1 +><P +>The <B +CLASS="COMMAND" +>login</B +> program takes care of + authenticating the user (making sure that the username and + password match), and of setting up an initial environment for + the user by setting permissions for the serial line and starting + the shell. </P +><P +> Part of the initial setup is outputting the contents of + the file <TT +CLASS="FILENAME" +>/etc/motd</TT +> (short for message of the + day) and checking for electronic mail. These can be disabled + by creating a file called <TT +CLASS="FILENAME" +>.hushlogin</TT +> in + the user's home directory. </P +><P +> If the file <TT +CLASS="FILENAME" +>/etc/nologin</TT +> + exists, logins are disabled. That file is typically + created by <B +CLASS="COMMAND" +>shutdown</B +> and relatives. + <B +CLASS="COMMAND" +>login</B +> checks for this file, and will + refuse to accept a login if it exists. If it does exist, + <B +CLASS="COMMAND" +>login</B +> outputs its contents to the terminal + before it quits. </P +><P +> <B +CLASS="COMMAND" +>login</B +> logs all failed login attempts in + a system log file (via <B +CLASS="COMMAND" +>syslog</B +>). It also logs + all logins by root. Both of these can be useful when tracking + down intruders. </P +><P +> Currently logged in people are listed in + <TT +CLASS="FILENAME" +>/var/run/utmp</TT +>. This file is valid only + until the system is next rebooted or shut down; it is cleared + when the system is booted. It lists each user and the terminal + (or network connection) he is using, along with some other useful + information. The <B +CLASS="COMMAND" +>who</B +>, <B +CLASS="COMMAND" +>w</B +>, + and other similar commands look in <TT +CLASS="FILENAME" +>utmp</TT +> + to see who are logged in. </P +><P +> All successful logins are recorded into + <TT +CLASS="FILENAME" +>/var/log/wtmp</TT +>. This file will grow without + limit, so it must be cleaned regularly, for example by having + a weekly <B +CLASS="COMMAND" +>cron</B +> job to clear it. + + <A +NAME="AEN1980" +HREF="#FTN.AEN1980" +>[1]</A +> + + The <B +CLASS="COMMAND" +>last</B +> command browses + <TT +CLASS="FILENAME" +>wtmp</TT +>. </P +><P +> Both <TT +CLASS="FILENAME" +>utmp</TT +> and + <TT +CLASS="FILENAME" +>wtmp</TT +> are in a binary format (see the + <TT +CLASS="FILENAME" +>utmp</TT +> manual page); it is unfortunately not + convenient to examine them without special programs. </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN1980" +HREF="x1956.html#AEN1980" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Good Linux distributions do this out + of the box.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1944.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1988.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Logins via the network</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1905.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>X and xdm</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1988.html b/sag-0.6.1-www/sag-0.6.1.html/x1988.html new file mode 100644 index 0000000..4b76a8c --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1988.html @@ -0,0 +1,137 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>X and xdm</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Logging In And Out" +HREF="c1905.html"><LINK +REL="PREVIOUS" +TITLE="What login does" +HREF="x1956.html"><LINK +REL="NEXT" +TITLE="Access control" +HREF="x1991.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1956.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 8. Logging In And Out</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1991.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1988" +>X and xdm</A +></H1 +><P +> XXX X implements logins via xdm; also: xterm -ls </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1956.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1991.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>What <B +CLASS="COMMAND" +>login</B +> does</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1905.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Access control</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1991.html b/sag-0.6.1-www/sag-0.6.1.html/x1991.html new file mode 100644 index 0000000..b8184e9 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x1991.html @@ -0,0 +1,207 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Access control</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Logging In And Out" +HREF="c1905.html"><LINK +REL="PREVIOUS" +TITLE="X and xdm" +HREF="x1988.html"><LINK +REL="NEXT" +TITLE="Shell startup" +HREF="x2008.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1988.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 8. Logging In And Out</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2008.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN1991" +>Access control</A +></H1 +><P +> The user database is traditionally contained in the + <TT +CLASS="FILENAME" +>/etc/passwd</TT +> file. Some systems use + <I +CLASS="GLOSSTERM" +>shadow passwords</I +>, and have moved the + passwords to <B +CLASS="COMMAND" +>/etc/shadow</B +>. Sites with many + computers that share the accounts use NIS or some other method + to store the user database; they might also automatically copy + the database from one central location to all other computers. + </P +><P +> The user database contains not only the passwords, but + also some additional information about the users, such as their + real names, home directories, and login shells. This other + information needs to be public, so that anyone can read it. + Therefore the password is stored encrypted. This does have + the drawback that anyone with access to the encrypted password + can use various cryptographical methods to guess it, without + trying to actually log into the computer. Shadow passwords try + to avoid this by moving the password into another file, which + only root can read (the password is still stored encrypted). + However, installing shadow passwords later onto a system that + did not support them can be difficult. </P +><P +> With or without passwords, it is important to make + sure that all passwords in a system are good, i.e., not easily + guessable. The <B +CLASS="COMMAND" +>crack</B +> program can be used + to crack passwords; any password it can find is by definition + not a good one. While <B +CLASS="COMMAND" +>crack</B +> can be run + by intruders, it can also be run by the system adminstrator + to avoid bad passwords. Good passwords can also be enforced + by the <B +CLASS="COMMAND" +>passwd</B +> program; this is in fact more + effective in CPU cycles, since cracking passwords requires quite + a lot of computation. </P +><P +> The user group database is kept in + <TT +CLASS="FILENAME" +>/etc/group</TT +>; for systems with shadow + passwords, there can be a <TT +CLASS="FILENAME" +>/etc/shadow.group</TT +>. + </P +><P +> root usually can't login via most terminals + or the network, only via terminals listed in the + <TT +CLASS="FILENAME" +>/etc/securetty</TT +> file. This makes it necessary + to get physical access to one of these terminals. It is, however, + possible to log in via any terminal as any other user, and use + the <B +CLASS="COMMAND" +>su</B +> command to become root. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1988.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2008.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>X and xdm</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1905.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Shell startup</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2008.html b/sag-0.6.1-www/sag-0.6.1.html/x2008.html new file mode 100644 index 0000000..3b91cac --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2008.html @@ -0,0 +1,167 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Shell startup</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Logging In And Out" +HREF="c1905.html"><LINK +REL="PREVIOUS" +TITLE="Access control" +HREF="x1991.html"><LINK +REL="NEXT" +TITLE="Managing user accounts" +HREF="c2018.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x1991.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 8. Logging In And Out</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c2018.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2008" +>Shell startup</A +></H1 +><P +> When an interactive login shell starts, it automatically + executes one or more pre-defined files. Different shells execute + different files; see the documentation of each shell for further + information. </P +><P +> Most shells first run some global file, for example, the + Bourne shell (<B +CLASS="COMMAND" +>/bin/sh</B +>) and its derivatives + execute <TT +CLASS="FILENAME" +>/etc/profile</TT +>; in addition, + they execute <TT +CLASS="FILENAME" +>.profile</TT +> in the user's + home directory. <TT +CLASS="FILENAME" +>/etc/profile</TT +> allows the + system administrator to have set up a common user environment, + especially by setting the <TT +CLASS="ENVAR" +>PATH</TT +> to include local + command directories in addition to the normal ones. On the other + hand, <TT +CLASS="FILENAME" +>.profile</TT +> allows the user to customize + the environment to his own tastes by overriding, if necessary, + the default environment. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x1991.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c2018.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Access control</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c1905.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Managing user accounts</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2031.html b/sag-0.6.1-www/sag-0.6.1.html/x2031.html new file mode 100644 index 0000000..8d4adf5 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2031.html @@ -0,0 +1,537 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Creating a user</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Managing user accounts" +HREF="c2018.html"><LINK +REL="PREVIOUS" +TITLE="Managing user accounts" +HREF="c2018.html"><LINK +REL="NEXT" +TITLE="Changing user properties" +HREF="x2124.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c2018.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 9. Managing user accounts</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2124.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2031" +>Creating a user</A +></H1 +><P +> The Linux kernel itself treats users are mere numbers. + Each user is identified by a unique integer, the <I +CLASS="GLOSSTERM" +>user + id</I +> or <I +CLASS="GLOSSTERM" +>uid</I +>, because numbers are + faster and easier for a computer to process than textual names. + A separate database outside the kernel assigns a textual name, + the <I +CLASS="GLOSSTERM" +>username</I +>, to each user id. The database + contains additional information as well. </P +><P +> To create a user, you need to add information about + the user to the user database, and create a home directory for + him. It may also be necessary to educate the user, and set up + a suitable initial environment for him. </P +><P +> Most Linux distributions come with a program for + creating accounts. There are several such programs available. + Two command line alternatives are <B +CLASS="COMMAND" +>adduser</B +> + and <B +CLASS="COMMAND" +>useradd</B +>; there may be a GUI tool as well. + Whatever the program, the result is that there is little if + any manual work to be done. Even if the details are many and + intricate, these programs make everything seem trivial. However, + <A +HREF="x2031.html#MANUAL-ADDUSER" +>the section called <I +>Creating a user by hand</I +></A +> describes how to do it by hand. + </P +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN2042" +><TT +CLASS="FILENAME" +>/etc/passwd</TT +> and other informative files</A +></H2 +><P +> The basic user database in a Unix system is the text file, + <TT +CLASS="FILENAME" +>/etc/passwd</TT +> (called the <I +CLASS="GLOSSTERM" +>password + file</I +>), which lists all valid usernames and their + associated information. The file has one line per username, + and is divided into seven colon-delimited fields: + + <P +></P +><UL +><LI +><P +>Username.</P +></LI +><LI +><P +>Password, in an encrypted form.</P +></LI +><LI +><P +>Numeric user id.</P +></LI +><LI +><P +>Numeric group id.</P +></LI +><LI +><P +>Full name or other description of account.</P +></LI +><LI +><P +>Home directory.</P +></LI +><LI +><P +>Login shell (program to run at login).</P +></LI +></UL +> + + The format is explained in more detail on the + <TT +CLASS="FILENAME" +>passwd</TT +> manual page. </P +><P +> Any user on the system may read the password file, + so that they can, for example, learn the name of another user. + This means that the password (the second field) is also available + to everyone. The password file encrypts the password, so in + theory there is no problem. However, the encryption is breakable, + especially if the password is weak (e.g., it is short or it can + be found in a dictionary). Therefore it is not a good idea to + have the password in the password file. </P +><P +> Many Linux systems have <I +CLASS="GLOSSTERM" +>shadow passwords</I +>. This is + an alternative way of storing the password: the encrypted + password is stored in a separate file, <TT +CLASS="FILENAME" +>/etc/shadow</TT +>, + which only root can read. The <TT +CLASS="FILENAME" +>/etc/passwd</TT +> + file only contains a special marker in the second field. + Any program that needs to verify a user is setuid, and + can therefore access the shadow password file. Normal + programs, which only use the other fields in the password + file, can't get at the password. + + <A +NAME="AEN2069" +HREF="#FTN.AEN2069" +>[1]</A +> + + </P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN2072" +>Picking numeric user and group ids</A +></H2 +><P +> On most systems it doesn't matter what the numeric user + and group ids are, but if you use the Network filesystem (NFS), + you need to have the same uid and gid on all systems. This + is because NFS also identifies users with the numeric uids. + If you aren't using NFS, you can let your account creation tool + pick them automatically. </P +><P +> If you are using NFS, you'll have to be invent a mechanism + for synchronizing account information. One alternative is to + the NIS system (see XXX network-admin-guide). </P +><P +> However, you should try to avoid re-using numeric uid's + (and textual usernames), because the new owner of the uid (or + username) may get access to the old owner's files (or mail, + or whatever). </P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN2077" +>Initial environment: <TT +CLASS="FILENAME" +>/etc/skel</TT +></A +></H2 +><P +> When the home directory for a new user is created, it is + initialized with files from the <TT +CLASS="FILENAME" +>/etc/skel</TT +> + directory. The system administrator can create files in + <TT +CLASS="FILENAME" +>/etc/skel</TT +> that will provide a nice + default environment for users. For example, he might create a + <TT +CLASS="FILENAME" +>/etc/skel/.profile</TT +> that sets the EDITOR + environment variable to some editor that is friendly towards + new users. </P +><P +> However, it is usually best to try to keep + <TT +CLASS="FILENAME" +>/etc/skel</TT +> as small as possible, since it + will be next to impossible to update existing users' files. For + example, if the name of the friendly editor changes, all existing + users would have to edit their <TT +CLASS="FILENAME" +>.profile</TT +>. The + system administrator could try to do it automatically, with a + script, but that is almost certain going to break someone's file. + </P +><P +> Whenever possible, it is better to put global configuration + into global files, such as <TT +CLASS="FILENAME" +>/etc/profile</TT +>. This + way it is possible to update it without breaking users' + own setups. </P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="MANUAL-ADDUSER" +>Creating a user by hand</A +></H2 +><P +> To create a new account manually, follow these steps: + + + <P +></P +><UL +><LI +><P +> Edit <TT +CLASS="FILENAME" +>/etc/passwd</TT +> with + <B +CLASS="COMMAND" +>vipw</B +> and add a new line for the new account. Be + careful with the syntax. <I +CLASS="EMPHASIS" +>Do not edit directly with an + editor!</I +> <B +CLASS="COMMAND" +>vipw</B +> locks the file, so + that other commands won't try to update it at the same time. You + should make the password field be `<TT +CLASS="LITERAL" +>*</TT +>', so + that it is impossible to log in. </P +></LI +><LI +><P +> Similarly, edit <TT +CLASS="FILENAME" +>/etc/group</TT +> + with <B +CLASS="COMMAND" +>vigr</B +>, if you need to create a new group + as well. </P +></LI +><LI +><P +> Create the home directory of the user with + <B +CLASS="COMMAND" +>mkdir</B +>. </P +></LI +><LI +><P +> Copy the files from + <TT +CLASS="FILENAME" +>/etc/skel</TT +> to the new home directory. + </P +></LI +><LI +><P +> Fix ownerships and permissions with + <B +CLASS="COMMAND" +>chown</B +> and <B +CLASS="COMMAND" +>chmod</B +>. The + <SPAN +CLASS="OPTION" +>-R</SPAN +> option is most useful. The correct + permissions vary a little from one site to another, but usually + the following commands do the right thing: + +<PRE +CLASS="SCREEN" +><TT +CLASS="USERINPUT" +><B +>cd /home/newusername +chown -R username.group . +chmod -R go=u,go-w . +chmod go= .</B +></TT +></PRE +> + + </P +></LI +><LI +><P +> Set the password with <B +CLASS="COMMAND" +>passwd</B +>. + </P +></LI +></UL +> + </P +><P +> After you set the password in the last step, the account + will work. You shouldn't set it until everything else has been + done, otherwise the user may inadvertently log in while you're + still copying the files. </P +><P +> It is sometimes necessary to create dummy + accounts + + <A +NAME="AEN2122" +HREF="#FTN.AEN2122" +>[2]</A +> + + that are not used by people. For example, to set up an anonymous + FTP server (so that anyone can download files from it, without + having to get an account first), you need to create an account + called ftp. In such cases, it is usually not necessary to set + the password (last step above). Indeed, it is better not to, so + that no-one can use the account, unless they first become root, + since root can become any user. </P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2069" +HREF="x2031.html#AEN2069" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Yes, this means that the + password file has all the information about a user + <I +CLASS="EMPHASIS" +>except</I +> his password. The wonder + of development.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2122" +HREF="x2031.html#AEN2122" +>[2]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Surreal users?</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c2018.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2124.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Managing user accounts</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2018.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Changing user properties</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2124.html b/sag-0.6.1-www/sag-0.6.1.html/x2124.html new file mode 100644 index 0000000..774ea19 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2124.html @@ -0,0 +1,248 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Changing user properties</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Managing user accounts" +HREF="c2018.html"><LINK +REL="PREVIOUS" +TITLE="Creating a user" +HREF="x2031.html"><LINK +REL="NEXT" +TITLE="Removing a user" +HREF="x2152.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2031.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 9. Managing user accounts</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2152.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2124" +>Changing user properties</A +></H1 +><P +> There are a few commands for changing various + properties of an account (i.e., the relevant field + in <TT +CLASS="FILENAME" +>/etc/passwd</TT +>): + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><B +CLASS="COMMAND" +>chfn</B +></B +></DT +><DD +><P +> Change the full name field. + </P +></DD +><DT +><B +><B +CLASS="COMMAND" +>chsh</B +></B +></DT +><DD +><P +> Change the login shell. + </P +></DD +><DT +><B +><B +CLASS="COMMAND" +>passwd</B +></B +></DT +><DD +><P +>Change the password. + </P +></DD +></DL +></DIV +> + + The super-user may use these commands to change the properties + of any account. Normal users can only change the properties + of their own account. It may sometimes be necessary to disable + these commands (with <B +CLASS="COMMAND" +>chmod</B +>) for normal users, + for example in an environment with many novice users. </P +><P +> Other tasks need to be done by hand. For example, to + change the username, you need to edit <TT +CLASS="FILENAME" +>/etc/passwd</TT +> + directly (with <B +CLASS="COMMAND" +>vipw</B +>, remember). Likewise, to add + or remove the user to more groups, you need to edit + <TT +CLASS="FILENAME" +>/etc/group</TT +> (with <B +CLASS="COMMAND" +>vigr</B +>). Such tasks tend to + be rare, however, and should be done with caution: for + example, if + you change the username, e-mail will no longer reach the + user, unless you also create a mail alias. + + <A +NAME="AEN2150" +HREF="#FTN.AEN2150" +>[1]</A +> + + </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2150" +HREF="x2124.html#AEN2150" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>The user's name might change due to + marriage, for example, and he might want to have his + username reflect his new name.} </P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2031.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2152.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Creating a user</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2018.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Removing a user</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2152.html b/sag-0.6.1-www/sag-0.6.1.html/x2152.html new file mode 100644 index 0000000..f8a626a --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2152.html @@ -0,0 +1,185 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Removing a user</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Managing user accounts" +HREF="c2018.html"><LINK +REL="PREVIOUS" +TITLE="Changing user properties" +HREF="x2124.html"><LINK +REL="NEXT" +TITLE="Disabling a user temporarily" +HREF="x2166.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2124.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 9. Managing user accounts</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2166.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2152" +>Removing a user</A +></H1 +><P +> To remove a user, you first remove all + his files, mailboxes, mail aliases, print jobs, + <B +CLASS="COMMAND" +>cron</B +> and <B +CLASS="COMMAND" +>at</B +> jobs, + and all other references to the user. Then you remove the + relevant lines from <TT +CLASS="FILENAME" +>/etc/passwd</TT +> and + <TT +CLASS="FILENAME" +>/etc/group</TT +> (remember to remove the username + from all groups it's been added to). It may be a good idea to + first disable the account (see below), before you start removing + stuff, to prevent the user from using the account while it is + being removed. </P +><P +> Remember that users may have files outside their home + directory. The <B +CLASS="COMMAND" +>find</B +> command can find them: + +<PRE +CLASS="SCREEN" +>find / -user username</PRE +> + + However, note that the above command will take a + <I +CLASS="EMPHASIS" +>long</I +> time, if you have large disks. If you + mount network disks, you need to be careful so that you won't + trash the network or the server. </P +><P +> Some Linux distributions come with special + commands to do this; look for <B +CLASS="COMMAND" +>deluser</B +> or + <B +CLASS="COMMAND" +>userdel</B +>. However, it is easy to do it by + hand as well, and the commands might not do everything. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2124.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2166.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Changing user properties</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2018.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Disabling a user temporarily</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2166.html b/sag-0.6.1-www/sag-0.6.1.html/x2166.html new file mode 100644 index 0000000..7ad2623 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2166.html @@ -0,0 +1,248 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Disabling a user temporarily</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Managing user accounts" +HREF="c2018.html"><LINK +REL="PREVIOUS" +TITLE="Removing a user" +HREF="x2152.html"><LINK +REL="NEXT" +TITLE="Backups" +HREF="c2187.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2152.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 9. Managing user accounts</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c2187.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2166" +>Disabling a user temporarily</A +></H1 +><P +> It is sometimes necessary to temporarily disable an + account, without removing it. For example, the user might not + have paid his fees, or the system administrator may suspect that + a cracker has got the password of that account. </P +><P +> The best way to disable an account is to change its shell + into a special program that just prints a message. This way, + whoever tries to log into the account, will fail, and will + know why. The message can tell the user to contact the system + administrator so that any problems may be dealt with. </P +><P +> It would also be possible to change the username + or password to something else, but then the user + won't know what is going on. Confused users mean more + work. + + <A +NAME="AEN2171" +HREF="#FTN.AEN2171" +>[1]</A +> + + </P +><P +> A simple way to create the special programs is to write + `tail scripts': + +<PRE +CLASS="SCREEN" +>#!/usr/bin/tail +2 +This account has been closed due to a security breach. +Please call 555-1234 and wait for the men in black to arrive.</PRE +> + + The first two characters (`<TT +CLASS="LITERAL" +>#!</TT +>') tell the + kernel that the rest of the line is a command that needs to be + run to interpret this file. The <B +CLASS="COMMAND" +>tail</B +> command + in this case outputs everything except the first line to the + standard output. </P +><P +> If user billg is suspected of a security breach, + the system administrator would do something like this: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>chsh -s /usr/local/lib/no-login/security billg</B +></TT +> +<TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>su - tester</B +></TT +> +This account has been closed due to a security breach. +Please call 555-1234 and wait for the men in black to arrive. +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + The purpose of the <B +CLASS="COMMAND" +>su</B +> is to test that the + change worked, of course. </P +><P +> Tail scripts should be kept in a separate directory, + so that their names don't interfere with normal user commands. + </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2171" +HREF="x2166.html#AEN2171" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>But they can be <I +CLASS="EMPHASIS" +>so</I +> + fun, if you're a BOFH.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2152.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c2187.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Removing a user</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2018.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Backups</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2206.html b/sag-0.6.1-www/sag-0.6.1.html/x2206.html new file mode 100644 index 0000000..39d7063 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2206.html @@ -0,0 +1,178 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Selecting the backup medium</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="PREVIOUS" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="NEXT" +TITLE="Selecting the backup tool" +HREF="x2216.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c2187.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 10. Backups</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2216.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2206" +>Selecting the backup medium</A +></H1 +><P +> The most important decision regarding backups is the choice + of backup medium. You need to consider cost, reliability, speed, + availability, and usability. </P +><P +> Cost is important, since you should preferably have + several times more backup storage than what you need for the data. + A cheap medium is usually a must. </P +><P +> Reliability is extremely important, since a broken + backup can make a grown man cry. A backup medium must be able + to hold data without corruption for years. The way you use the + medium affects it reliability as a backup medium. A hard disk + is typically very reliable, but as a backup medium it is not + very reliable, if it is in the same computer as the disk you + are backing up. </P +><P +> Speed is usually not very important, if backups can be done + without interaction. It doesn't matter if a backup takes two + hours, as long as it needs no supervision. On the other hand, + if the backup can't be done when the computer would otherwise + be idle, then speed is an issue. </P +><P +> Availability is obviously necessary, since you can't + use a backup medium if it doesn't exist. Less obvious is the + need for the medium to be available even in the future, and on + computers other than your own. Otherwise you may not be able + to restore your backups after a disaster. </P +><P +> Usability is a large factor in how often backups are made. + The easier it is to make backups, the better. A backup medium + mustn't be hard or boring to use. </P +><P +> The typical alternatives are floppies and tapes. + Floppies are very cheap, fairly reliable, not very fast, + very available, but not very usable for large amounts of data. + Tapes are cheap to somewhat expensive, fairly reliable, fairly + fast, quite available, and, depending on the size of the tape, + quite comfortable. </P +><P +> There are other alternatives. They are usually not very + good on availability, but if that is not a problem, they can + be better in other ways. For example, magneto-optical disks + can have good sides of both floppies (they're random access, + making restoration of a single file quick) and tapes (contain + a lot of data). </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c2187.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2216.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Backups</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2187.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Selecting the backup tool</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2216.html b/sag-0.6.1-www/sag-0.6.1.html/x2216.html new file mode 100644 index 0000000..d64dca4 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2216.html @@ -0,0 +1,226 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Selecting the backup tool</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="PREVIOUS" +TITLE="Selecting the backup medium" +HREF="x2206.html"><LINK +REL="NEXT" +TITLE="Simple backups" +HREF="x2240.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2206.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 10. Backups</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2240.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2216" +>Selecting the backup tool</A +></H1 +><P +> There are many tools that can be used to make + backups. The traditional UNIX tools used for backups + are <B +CLASS="COMMAND" +>tar</B +>, <B +CLASS="COMMAND" +>cpio</B +>, and + <B +CLASS="COMMAND" +>dump</B +>. In addition, there are large number + of third party packages (both freeware and commercial) that + can be used. The choice of backup medium can affect the choice + of tool. </P +><P +> <B +CLASS="COMMAND" +>tar</B +> and <B +CLASS="COMMAND" +>cpio</B +> are + similar, and mostly equivalent from a backup point of view. + Both are capable of storing files on tapes, and retrieving + files from them. Both are capable of using almost any media, + since the kernel device drivers take care of the low level + device handling and the devices all tend to look alike to user + level programs. Some UNIX versions of <B +CLASS="COMMAND" +>tar</B +> + and <B +CLASS="COMMAND" +>cpio</B +> may have problems with unusual files + (symbolic links, device files, files with very long pathnames, and + so on), but the Linux versions should handle all files correctly. + </P +><P +> <B +CLASS="COMMAND" +>dump</B +> is different in that it reads + the filesystem directly and not via the filesystem. It is + also written specifically for backups; <B +CLASS="COMMAND" +>tar</B +> + and <B +CLASS="COMMAND" +>cpio</B +> are really for archiving files, + although they work for backups as well. </P +><P +> Reading the filesystem directly has some advantages. + It makes it possible to back files up without affecting their time + stamps; for <B +CLASS="COMMAND" +>tar</B +> and <B +CLASS="COMMAND" +>cpio</B +>, + you would have to mount the filesystem read-only first. + Directly reading the filesystem is also more effective, if + everything needs to be backed up, since it can be done with + much less disk head movement. The major disadvantage is that + it makes the backup program specific to one filesystem type; + the Linux <B +CLASS="COMMAND" +>dump</B +> program understands the ext2 + filesystem only. </P +><P +> <B +CLASS="COMMAND" +>dump</B +> also directly supports + backup levels (which we'll be discussing below); with + <B +CLASS="COMMAND" +>tar</B +> and <B +CLASS="COMMAND" +>cpio</B +> this has to + be implemented with other tools. </P +><P +> A comparison of the third party backup tools is beyond + the scope of this book. The Linux Software Map lists many of + the freeware ones. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2206.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2240.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Selecting the backup medium</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2187.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Simple backups</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2240.html b/sag-0.6.1-www/sag-0.6.1.html/x2240.html new file mode 100644 index 0000000..da40352 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2240.html @@ -0,0 +1,493 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Simple backups</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="PREVIOUS" +TITLE="Selecting the backup tool" +HREF="x2216.html"><LINK +REL="NEXT" +TITLE="Multilevel backups" +HREF="x2315.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2216.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 10. Backups</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2315.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2240" +>Simple backups</A +></H1 +><P +> A simple backup scheme is to back up everything once, + then back up everything that has been modified since the + previous backup. The first backup is called a <I +CLASS="GLOSSTERM" +>full + backup</I +>, the subsequent ones are <I +CLASS="GLOSSTERM" +>incremental + backups</I +>. A full backup is often more laborius + than incremental ones, since there is more data to write to the + tape and a full backup might not fit onto one tape (or floppy). + Restoring from incremental backups can be many times more work + than from a full one. Restoration can be optimized so that + you always back up everything since the previous full backup; + this way, backups are a bit more work, but there should never + be a need to restore more than a full backup and an incremental + backup. </P +><P +> If you want to make backups every day and have six + tapes, you could use tape~1 for the first full backup (say, on + a Friday), and tapes 2 to 5 for the incremental backups (Monday + through Thursday). Then you make a new full backup on tape 6 + (second Friday), and start doing incremental ones with tapes 2 + to 5 again. You don't want to overwrite tape 1 until you've got + a new full backup, lest something happens while you're making + the full backup. After you've made a full backup to tape 6, + you want to keep tape 1 somewhere else, so that when your other + backup tapes are destroyed in the fire, you still have at least + something left. When you need to make the next full backup, + you fetch tape 1 and leave tape 6 in its place. </P +><P +> If you have more than six tapes, you can use the extra + ones for full backups. Each time you make a full backup, you + use the oldest tape. This way you can have full backups from + several previous weeks, which is good if you want to find an old, + now deleted file, or an old version of a file. </P +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN2247" +>Making backups with <B +CLASS="COMMAND" +>tar</B +></A +></H2 +><P +> A full backup can easily be made with <B +CLASS="COMMAND" +>tar</B +>: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar --create --file /dev/ftape /usr/src</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>tar: Removing leading / from absolute path names in the archive</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + The example above uses the GNU version of <B +CLASS="COMMAND" +>tar</B +> + and its long option names. The traditional version of + <B +CLASS="COMMAND" +>tar</B +> only understands single character + options. The GNU version can also handle backups that don't + fit on one tape or floppy, and also very long paths; not all + traditional versions can do these things. (Linux only uses + GNU <B +CLASS="COMMAND" +>tar</B +>.) </P +><P +> If your backup doesn't fit on one tape, you need to use + the <SPAN +CLASS="OPTION" +>--multi-volume</SPAN +> (<SPAN +CLASS="OPTION" +>-M</SPAN +>) option: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar -cMf /dev/fd0H1440 /usr/src</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>tar: Removing leading / from absolute path names in the archive +Prepare volume \#2 for /dev/fd0H1440 and hit return:</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + Note that you should format the floppies before you begin the + backup, or else use another window or virtual terminal and do + it when <B +CLASS="COMMAND" +>tar</B +> asks for a new floppy. </P +><P +> After you've made a backup, you should check that it is OK, + using the <SPAN +CLASS="OPTION" +>--compare</SPAN +> (<SPAN +CLASS="OPTION" +>-d</SPAN +>) option: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar --compare --verbose -f /dev/ftape</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>usr/src/ +usr/src/linux +usr/src/linux-1.2.10-includes/ +....</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + Failing to check a backup means that you will not notice that your + backups aren't working until after you've lost the original data. + </P +><P +> An incremental backup can be done with + <B +CLASS="COMMAND" +>tar</B +> using the <SPAN +CLASS="OPTION" +>--newer</SPAN +> + (<SPAN +CLASS="OPTION" +>-N</SPAN +>) option: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar --create --newer '8 Sep 1995' --file /dev/ftape /usr/src --verbose</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>tar: Removing leading / from absolute path names in the archive +usr/src/ +usr/src/linux-1.2.10-includes/ +usr/src/linux-1.2.10-includes/include/ +usr/src/linux-1.2.10-includes/include/linux/ +usr/src/linux-1.2.10-includes/include/linux/modules/ +usr/src/linux-1.2.10-includes/include/asm-generic/ +usr/src/linux-1.2.10-includes/include/asm-i386/ +usr/src/linux-1.2.10-includes/include/asm-mips/ +usr/src/linux-1.2.10-includes/include/asm-alpha/ +usr/src/linux-1.2.10-includes/include/asm-m68k/ +usr/src/linux-1.2.10-includes/include/asm-sparc/ +usr/src/patch-1.2.11.gz</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + Unfortunately, <B +CLASS="COMMAND" +>tar</B +> can't notice when a file's + inode information has changed, for example, that it's permission + bits have been changed, or when its name has been changed. + This can be worked around using <B +CLASS="COMMAND" +>find</B +> and + comparing current filesystem state with lists of files that have + been previously backed up. Scripts and programs for doing this + can be found on Linux ftp sites. </P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN2288" +>Restoring files with <B +CLASS="COMMAND" +>tar</B +></A +></H2 +><P +> The <SPAN +CLASS="OPTION" +>--extract</SPAN +> (<SPAN +CLASS="OPTION" +>-x</SPAN +>) + option for <B +CLASS="COMMAND" +>tar</B +> extracts files: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar --extract --same-permissions --verbose --file /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>usr/src/ +usr/src/linux +usr/src/linux-1.2.10-includes/ +usr/src/linux-1.2.10-includes/include/ +usr/src/linux-1.2.10-includes/include/linux/ +usr/src/linux-1.2.10-includes/include/linux/hdreg.h +usr/src/linux-1.2.10-includes/include/linux/kernel.h +...</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + You also extract only specific files or directories (which + includes all their files and subdirectories) by naming on the + command line: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar xpvf /dev/fd0H1440 usr/src/linux-1.2.10-includes/include/linux/hdreg.h</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>usr/src/linux-1.2.10-includes/include/linux/hdreg.h</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + Use the <SPAN +CLASS="OPTION" +>--list</SPAN +> (<SPAN +CLASS="OPTION" +>-t</SPAN +>) option, + if you just want to see what files are on a backup volume: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>tar --list --file /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>usr/src/ +usr/src/linux +usr/src/linux-1.2.10-includes/ +usr/src/linux-1.2.10-includes/include/ +usr/src/linux-1.2.10-includes/include/linux/ +usr/src/linux-1.2.10-includes/include/linux/hdreg.h +usr/src/linux-1.2.10-includes/include/linux/kernel.h +...</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + Note that <B +CLASS="COMMAND" +>tar</B +> always reads the backup volume + sequentially, so for large volumes it is rather slow. It is not + possible, however, to use random access database techniques when + using a tape drive or some other sequential medium. </P +><P +> <B +CLASS="COMMAND" +>tar</B +> doesn't handle deleted files + properly. If you need to restore a filesystem from a full and + an incremental backup, and you have deleted a file between + the two backups, it will exist again after you have done the + restore. This can be a big problem, if the file has sensitive + data that should no longer be available. </P +></DIV +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2216.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2315.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Selecting the backup tool</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2187.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Multilevel backups</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2315.html b/sag-0.6.1-www/sag-0.6.1.html/x2315.html new file mode 100644 index 0000000..334111b --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2315.html @@ -0,0 +1,474 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Multilevel backups</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="PREVIOUS" +TITLE="Simple backups" +HREF="x2240.html"><LINK +REL="NEXT" +TITLE="What to back up" +HREF="x2405.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2240.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 10. Backups</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2405.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2315" +>Multilevel backups</A +></H1 +><P +> The simple backup method outlined in the previous section + is often quite adequate for personal use or small sites. For more + heavy duty use, multilevel backups are more appropriate. </P +><P +> The simple method has two backup levels: full and + incremental backups. This can be generalized to any number of + levels. A full backup would be level 0, and the different levels + of incremental backups levels 1, 2, 3, etc. At each incremental + backup level you back up everything that has changed since the + previous backup at the same or a previous level. </P +><P +> The purpose for doing this is that it allows a longer + <I +CLASS="GLOSSTERM" +>backup history</I +> cheaply. In the example in + the previous section, the backup history went back to the previous + full backup. This could be extended by having more tapes, but + only a week per new tape, which might be too expensive. A longer + backup history is useful, since deleted or corrupted files are + often not noticed for a long time. Even a version of a file that + is not very up to date is better than no file at all. </P +><P +> With multiple levels the backup history can be extended + more cheaply. For example, if we buy ten tapes, we could use + tapes 1 and 2 for monthly backups (first Friday each month), + tapes 3 to 6 for weekly backups (other Fridays; note that there + can be five Fridays in one month, so we need four more tapes), + and tapes 7 to 10 for daily backups (Monday to Thursday). + With only four more tapes, we've been able to extend the backup + history from two weeks (after all daily tapes have been used) + to two months. It is true that we can't restore every version + of each file during those two months, but what we can restore + is often good enough. </P +><P +><A +HREF="x2315.html#BACKUP-HISTORY-TIMELINE" +>Figure 10-1</A +> shows which backup + level is used each day, and which backups can be restored from + at the end of the month. </P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="BACKUP-HISTORY-TIMELINE" +>Figure 10-1. A sample multilevel backup schedule.</A +></B +></P +><P +><IMG +SRC="backup-timeline.gif"></P +></DIV +><P +> Backup levels can also be used to keep filesystem + restoration time to a minimum. If you have many incremental + backups with monotonously growing level numbers, you need to + restore all of them if you need to rebuild the whole filesystem. + Instead you can use level numbers that aren't monotonous, and + keep down the number of backups to restore. </P +><P +> To minimize the number of tapes needed to restore, you + could use a smaller level for each incremental tape. However, + then the time to make the backups increases (each backup copies + everything since the previous full backup). A better scheme is + suggested by the <B +CLASS="COMMAND" +>dump</B +> manual page and described + by the table XX (efficient-backup-levels). Use the following + succession of backup levels: 3, 2, 5, 4, 7, 6, 9, 8, 9, etc. + This keeps both the backup and restore times low. The most you + have to backup is two day's worth of work. The number of tapes + for a restore depends on how long you keep between full backups, + but it is less than in the simple schemes. </P +><DIV +CLASS="TABLE" +><P +><B +><A +NAME="EFFICIENT-BACKUP-LEVELS" +>Table 10-1. Efficient backup scheme using many backup levels</A +></B +></P +><TABLE +BORDER="1" +CLASS="CALSTABLE" +><TR +><TH +ALIGN="LEFT" +VALIGN="TOP" +>Tape</TH +><TH +ALIGN="LEFT" +VALIGN="TOP" +>Level</TH +><TH +ALIGN="LEFT" +VALIGN="TOP" +>Backup (days)</TH +><TH +ALIGN="LEFT" +VALIGN="TOP" +>Restore tapes</TH +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>0</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>n/a</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>3</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>3</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 3</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>4</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>5</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 4</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>5</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>4</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>6</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>7</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 6</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>7</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>6</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 7</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>8</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>9</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 7, 8</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>9</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>8</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 7, 9</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>10</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>9</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 7, 9, 10</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>11</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>9</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 7, 9, 10, 11</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>...</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>9</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1, 2, 5, 7, 9, 10, 11, ...</TD +></TR +></TABLE +></DIV +><P +> A fancy scheme can reduce the amount of labor needed, but + it does mean there are more things to keep track of. You must + decide if it is worth it. </P +><P +> <B +CLASS="COMMAND" +>dump</B +> has built-in support for backup + levels. For <B +CLASS="COMMAND" +>tar</B +> and <B +CLASS="COMMAND" +>cpio</B +> + it must be implemented with shell scripts. </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2240.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2405.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Simple backups</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2187.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>What to back up</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2405.html b/sag-0.6.1-www/sag-0.6.1.html/x2405.html new file mode 100644 index 0000000..451495e --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2405.html @@ -0,0 +1,202 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>What to back up</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="PREVIOUS" +TITLE="Multilevel backups" +HREF="x2315.html"><LINK +REL="NEXT" +TITLE="Compressed backups" +HREF="x2417.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2315.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 10. Backups</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2417.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2405" +>What to back up</A +></H1 +><P +> You want to back up as much as possible. The major + exception is software that can be easily reinstalled, + + <A +NAME="AEN2408" +HREF="#FTN.AEN2408" +>[1]</A +> + + but even they may have configuration files that it is + important to back up, lest you need to do all the work to + configure them all over again. Another major exception is + the <TT +CLASS="FILENAME" +>/proc</TT +> filesystem; since that only + contains data that the kernel always generates automatically, + it is never a good idea to back it up. Expecially the + <TT +CLASS="FILENAME" +>/proc/kcore</TT +> file is unnecessary, since it + is just an image of your current physical memory; it's pretty + large as well. </P +><P +> Gray areas include the news spool, log files, and many + other things in <TT +CLASS="FILENAME" +>/var</TT +>. You must decide what + you consider important. </P +><P +> The obvious things to back up are user files + (<TT +CLASS="FILENAME" +>/home</TT +>) and system configuration files + (<TT +CLASS="FILENAME" +>/etc</TT +>, but possibly other things scattered + all over the filesystem). </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2408" +HREF="x2405.html#AEN2408" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>You get to decide what's easy. + Some people consider installing from dozens of floppies + easy.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2315.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2417.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Multilevel backups</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2187.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Compressed backups</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2417.html b/sag-0.6.1-www/sag-0.6.1.html/x2417.html new file mode 100644 index 0000000..5d01dd0 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2417.html @@ -0,0 +1,220 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Compressed backups</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Backups" +HREF="c2187.html"><LINK +REL="PREVIOUS" +TITLE="What to back up" +HREF="x2405.html"><LINK +REL="NEXT" +TITLE="Keeping Time" +HREF="c2432.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2405.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 10. Backups</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c2432.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2417" +>Compressed backups</A +></H1 +><P +> Backups take a lot of space, which can cost quite + a lot of money. To reduce the space needed, the backups + can be compressed. There are several ways of doing this. + Some programs have support for for compression built in; for + example, the <SPAN +CLASS="OPTION" +>--gzip</SPAN +> (<SPAN +CLASS="OPTION" +>-z</SPAN +>) + option for GNU <B +CLASS="COMMAND" +>tar</B +> pipes the whole backup + through the <B +CLASS="COMMAND" +>gzip</B +> compression program, before + writing it to the backup medium. </P +><P +> Unfortunately, compressed backups can cause trouble. + Due to the nature of how compression works, if a single bit is + wrong, all the rest of the compressed data will be unusable. + Some backup programs have some built in error correction, but no + method can handle a large number of errors. This means that if + the backup is compressed the way GNU <B +CLASS="COMMAND" +>tar</B +> does + it, with the whole output compressed as a unit, a single error + makes all the rest of the backup lost. Backups must be reliable, + and this method of compression is not a good idea. </P +><P +> An alternative way is to compress each file separately. + This still means that the one file is lost, but all other files + are unharmed. The lost file would have been corrupted anyway, + so this situation is not much worse than not using compression + at all. The <B +CLASS="COMMAND" +>afio</B +> program (a variant of + <B +CLASS="COMMAND" +>cpio</B +>) can do this. </P +><P +> Compression takes some time, which may make the backup program + unable to write data fast enough for a tape drive. + + <A +NAME="AEN2430" +HREF="#FTN.AEN2430" +>[1]</A +> + + This can be avoided by buffering the output (either internally, if + the backup program if smart enough, or by using another program), + but even that might not work well enough. This should only be + a problem on slow computers. </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2430" +HREF="x2417.html#AEN2430" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>If a tape drive doesn't data fast enough, + it has to stop; this makes backups even slower, and can + be bad for the tape and the drive.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2405.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c2432.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>What to back up</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2187.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Keeping Time</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2451.html b/sag-0.6.1-www/sag-0.6.1.html/x2451.html new file mode 100644 index 0000000..d03cfa5 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2451.html @@ -0,0 +1,161 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The hardware and software clocks</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Keeping Time" +HREF="c2432.html"><LINK +REL="PREVIOUS" +TITLE="Keeping Time" +HREF="c2432.html"><LINK +REL="NEXT" +TITLE="Showing and setting time" +HREF="x2457.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c2432.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 11. Keeping Time</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2457.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2451" +>The hardware and software clocks</A +></H1 +><P +> A personal computer has a battery driven hardware clock. + The battery ensures that the clock will work even if the rest of + the computer is without electricity. The hardware clock can be + set from the BIOS setup screen or from whatever operating system + is running. </P +><P +> The Linux kernel keeps track of time independently from + the hardware clock. During the boot, Linux sets its own clock + to the same time as the hardware clock. After this, both clocks + run independently. Linux maintains its own clock because looking + at the hardware is slow and complicated. </P +><P +> The kernel clock always shows universal time. This way, + the kernel does not need to know about time zones at all. The + simplicity results in higher reliability and makes it easier + to update the time zone information. Each process handles time + zone conversions itself (using standard tools that are part of + the time zone package). </P +><P +> The hardware clock can be in local time or in universal + time. It is usually better to have it in universal time, + because then you don't need to change the hardware clock when + daylight savings time begins or ends (UTC does not have DST). + Unfortunately, some PC operating systems, including MS-DOS, + Windows, and OS/2, assume the hardware clock shows local time. + Linux can handle either, but if the hardware clock shows local + time, then it must be modified when daylight savings time begins + or ends (otherwise it wouldn't show local time). </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c2432.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2457.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Keeping Time</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2432.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Showing and setting time</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2457.html b/sag-0.6.1-www/sag-0.6.1.html/x2457.html new file mode 100644 index 0000000..427c375 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2457.html @@ -0,0 +1,354 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Showing and setting time</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Keeping Time" +HREF="c2432.html"><LINK +REL="PREVIOUS" +TITLE="The hardware and software clocks" +HREF="x2451.html"><LINK +REL="NEXT" +TITLE="When the clock is wrong" +HREF="x2504.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2451.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 11. Keeping Time</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x2504.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2457" +>Showing and setting time</A +></H1 +><P +> In the Debian system, the system time zone is determined + by the symbolic link <TT +CLASS="FILENAME" +>/etc/localtime</TT +>. + This link points at a time zone data file that describes + the local time zone. The time zone data files are stored in + <TT +CLASS="FILENAME" +>/usr/lib/zoneinfo</TT +>. Other Linux distributions + may do this differently. </P +><P +> A user can change his private time zone by setting the + TZ environment variable. If it is unset, the system time zone + is assumed. The syntax of the TZ variable is described in the + <TT +CLASS="FUNCTION" +>tzset</TT +> manual page. </P +><P +> The <B +CLASS="COMMAND" +>date</B +> command shows the current date and + time. + + <A +NAME="AEN2466" +HREF="#FTN.AEN2466" +>[1]</A +> + + For example: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>date</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Sun Jul 14 21:53:41 EET DST 1996</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + That time is Sunday, 14th of July, 1996, at about ten before + ten at the evening, in the time zone called ``EET DST'' + (which might be East European Daylight Savings Time). + <B +CLASS="COMMAND" +>date</B +> can also show the univeral time: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>date -u</B +></TT +> +Sun Jul 14 18:53:42 UTC 1996 +<TT +CLASS="COMPUTEROUTPUT" +>Sun Jul 14 18:53:42 UTC 1996</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + <B +CLASS="COMMAND" +>date</B +> is also used to set the kernel's software + clock: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>date 07142157</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Sun Jul 14 21:57:00 EET DST 1996</TT +> +<TT +CLASS="PROMPT" +>#</TT +> <TT +CLASS="USERINPUT" +><B +>date</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Sun Jul 14 21:57:02 EET DST 1996</TT +> +<TT +CLASS="PROMPT" +>#</TT +></PRE +> + + See the <B +CLASS="COMMAND" +>date</B +> manual page for more details; + the syntax is a bit arcane. Only root can set the time. + While each user can have his own time zone, the clock is the + same for everyone. </P +><P +> <B +CLASS="COMMAND" +>date</B +> only shows or sets the software + clock. The <B +CLASS="COMMAND" +>clock</B +> commands syncronizes + the hardware and software clocks. It is used when the system + boots, to read the hardware clock and set the software clock. + If you need to set both clocks, you first set the software clock + with <B +CLASS="COMMAND" +>date</B +>, and then the hardware clock with + <B +CLASS="COMMAND" +>clock -w</B +>. </P +><P +> The <SPAN +CLASS="OPTION" +>-u</SPAN +> option to <B +CLASS="COMMAND" +>clock</B +> + tells it that the hardware clock is in universal time. + You <I +CLASS="EMPHASIS" +>must</I +> use the <SPAN +CLASS="OPTION" +>-u</SPAN +> + option correctly. If you don't, your computer will be quite + confused about what the time is. </P +><P +> The clocks should be changed with care. Many parts of a + Unix system require the clocks to work correctly. For example, + the <B +CLASS="COMMAND" +>cron</B +> daemon runs commands periodically. + If you change the clock, it can be confused of whether + it needs to run the commands or not. On one early Unix + system, someone set the clock twenty years into the future, + and <B +CLASS="COMMAND" +>cron</B +> wanted to run all the periodic + commands for twenty years all at once. Current versions of + <B +CLASS="COMMAND" +>cron</B +> can handle this correctly, but you should + still be careful. Big jumps or backward jumps are more dangeours + than smaller or forward ones. </P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN2466" +HREF="x2457.html#AEN2466" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Beware of the <B +CLASS="COMMAND" +>time</B +> command, which does + not show the current time.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2451.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x2504.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The hardware and software clocks</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2432.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>When the clock is wrong</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x2504.html b/sag-0.6.1-www/sag-0.6.1.html/x2504.html new file mode 100644 index 0000000..5611eea --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x2504.html @@ -0,0 +1,180 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>When the clock is wrong</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Keeping Time" +HREF="c2432.html"><LINK +REL="PREVIOUS" +TITLE="Showing and setting time" +HREF="x2457.html"><LINK +REL="NEXT" +TITLE="Glossary (DRAFT)" +HREF="g2516.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x2457.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 11. Keeping Time</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="g2516.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN2504" +>When the clock is wrong</A +></H1 +><P +> The Linux software clock is not always accurate. It is + kept running by a periodic <I +CLASS="GLOSSTERM" +>timer interrupt</I +> + generated by PC hardware. If the system has too many processes + running, it may take too long to service the timer interrupt, and + the software clock starts slipping behind. The hardware clock + runs independently and is usually more accurate. If you boot + your computer often (as is the case for most systems that aren't + servers), it will usually keep fairly accurate time. </P +><P +> If you need to adjust the hardware clock, it is usually + simplest to reboot, go into the BIOS setup screen, and do it + from there. This avoids all trouble that changing system time + might cause. If doing it via BIOS is not an option, set the new + time with <B +CLASS="COMMAND" +>date</B +> and <B +CLASS="COMMAND" +>clock</B +> + (in that order), but be prepared to reboot, if some part of the + system starts acting funny. </P +><P +> A networked computer (even if just over the modem) can + check its own clock automatically, by comparing it to some other + computer's time. If the other computer is known to keep very + accurate time, then both computers will keep accurate time. + This can be done by using the <B +CLASS="COMMAND" +>rdate</B +> and + <B +CLASS="COMMAND" +>netdate</B +> commands. Both check the time of a + remote computer (<B +CLASS="COMMAND" +>netdate</B +> can handle several + remote computers), and set the local computer's time to that. + By running one these commands regularly, your computer will keep + as accurate time as the remote computer. </P +><P +> XXX say something intelligent about NTP </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x2457.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="g2516.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Showing and setting time</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c2432.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Glossary (DRAFT)</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x267.html b/sag-0.6.1-www/sag-0.6.1.html/x267.html new file mode 100644 index 0000000..9b0cf50 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x267.html @@ -0,0 +1,338 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The root filesystem</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="PREVIOUS" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="NEXT" +TITLE="The /etc directory" +HREF="x338.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c212.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 3. Overview of the Directory Tree</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x338.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN267" +>The root filesystem</A +></H1 +><P +>The root filesystem should generally be small, since + it contains very critical files and a small, infrequently + modified filesystem has a better chance of not getting corrupted. + A corrupted root filesystem will generally mean that the system + becomes unbootable except with special measures (e.g., from a + floppy), so you don't want to risk it.</P +><P +>The root directory generally doesn't contain any files, except + perhaps the standard boot image for the system, usually called + <TT +CLASS="FILENAME" +>/vmlinuz</TT +>. All other files are in subdirectories in the + root filesystems: + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><TT +CLASS="FILENAME" +>/bin</TT +></B +></DT +><DD +><P +>Commands needed during bootup + that might be used by normal users (probably after + bootup).</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/sbin</TT +></B +></DT +><DD +><P +>Like <TT +CLASS="FILENAME" +>/bin</TT +>, + but the commands are not intended for normal + users, although they may use them if necessary and + allowed.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc</TT +></B +></DT +><DD +><P +>Configuration files specific to the + machine.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/root</TT +></B +></DT +><DD +><P +>The home directory for user + \texttt{root}.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/lib</TT +></B +></DT +><DD +><P +>Shared libraries needed by the programs + on the root filesystem.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/lib/modules</TT +></B +></DT +><DD +><P +>Loadable kernel modules, especially + those that are needed to boot the system when + recovering from disasters (e.g., network and filesystem + drivers).</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/dev</TT +></B +></DT +><DD +><P +>Device files.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/tmp</TT +></B +></DT +><DD +><P +>Temporary files. Programs running after + bootup should use <TT +CLASS="FILENAME" +>/var/tmp</TT +>, not + <TT +CLASS="FILENAME" +>/tmp</TT +>, since the former is probably + on a disk with more space.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/boot</TT +></B +></DT +><DD +><P +>Files used by the bootstrap loader, + e.g., LILO. Kernel images are often kept here instead + of in the root directory. If there are many kernel + images, the directory can easily grow rather big, and it + might be better to keep it in a separate filesystem. + Another reason would be to make sure the kernel + images are within the first 1024 cylinders of an IDE + disk.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/mnt</TT +></B +></DT +><DD +><P +>Mount point for temporary mounts by + the system administrator. Programs aren't supposed + to mount on <TT +CLASS="FILENAME" +>/mnt</TT +> automatically. + <TT +CLASS="FILENAME" +>/mnt</TT +> might be divided into + subdirectories (e.g., <TT +CLASS="FILENAME" +>/mnt/dosa</TT +> + might be the floppy drive using an MS-DOS filesystem, + and <TT +CLASS="FILENAME" +>/mnt/exta</TT +> might be the same + with an ext2 filesystem).</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc</TT +>, <TT +CLASS="FILENAME" +>/usr</TT +>, <TT +CLASS="FILENAME" +>/var</TT +>, <TT +CLASS="FILENAME" +>/home</TT +></B +></DT +><DD +><P +>Mount points for the other + filesystems.</P +></DD +></DL +></DIV +> + </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c212.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x338.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Overview of the Directory Tree</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c212.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x338.html b/sag-0.6.1-www/sag-0.6.1.html/x338.html new file mode 100644 index 0000000..82b4d7f --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x338.html @@ -0,0 +1,524 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The /etc directory</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="PREVIOUS" +TITLE="The root filesystem" +HREF="x267.html"><LINK +REL="NEXT" +TITLE="The /dev directory" +HREF="x463.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x267.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 3. Overview of the Directory Tree</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x463.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN338" +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory</A +></H1 +><P +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory contains a lot + of files. Some of them are described below. For others, you + should determine which program they belong to and read the manual + page for that program. Many networking configuration files are + in <TT +CLASS="FILENAME" +>/etc</TT +> as well, and are described in the + <I +CLASS="CITETITLE" +>Networking Administrators' Guide</I +>. + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><TT +CLASS="FILENAME" +>/etc/rc</TT +> or <TT +CLASS="FILENAME" +>/etc/rc.d</TT +> or <TT +CLASS="FILENAME" +>/etc/rc?.d</TT +></B +></DT +><DD +><P +>Scripts or directories of scripts + to run at startup or when changing the run level. + See the chapter on <B +CLASS="COMMAND" +>init</B +> for further + information. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/passwd</TT +></B +></DT +><DD +><P +>The user database, with fields giving + the username, real name, home directory, encrypted + password, and other information about each user. + The format is documented in the \man{passwd} manual page. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/fdprm</TT +></B +></DT +><DD +><P +>Floppy disk parameter table. + Describes what different floppy disk formats look + like. Used by <B +CLASS="COMMAND" +>setfdprm</B +>. See the + <B +CLASS="COMMAND" +>setfdprm</B +> manual page for more + information. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/fstab</TT +></B +></DT +><DD +><P +>Lists the filesystems mounted + automatically at startup by the <B +CLASS="COMMAND" +>mount + -a</B +> command (in <TT +CLASS="FILENAME" +>/etc/rc</TT +> + or equivalent startup file). Under Linux, also contains + information about swap areas used automatically by + <B +CLASS="COMMAND" +>swapon -a</B +>. See <A +HREF="x1029.html#MOUNT-AND-UMOUNT" +>the section called <I +>Mounting and unmounting</I +> in Chapter 4</A +> and the + <B +CLASS="COMMAND" +>mount</B +> manual page for more information. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/group</TT +></B +></DT +><DD +><P +>Similar to + <TT +CLASS="FILENAME" +>/etc/passwd</TT +>, but + describes groups instead of users. See the + <B +CLASS="COMMAND" +>group</B +> manual page for more information. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/inittab</TT +></B +></DT +><DD +><P +>Configuration file for + <B +CLASS="COMMAND" +>init</B +>. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/issue</TT +></B +></DT +><DD +><P +>Output by <B +CLASS="COMMAND" +>getty</B +> before + the login prompt. Usually contains a short description or + welcoming message to the system. The contents are up to + the system administrator. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/magic</TT +></B +></DT +><DD +><P +>The configuration file + for <B +CLASS="COMMAND" +>file</B +>. Contains the + descriptions of various file formats based on + which <B +CLASS="COMMAND" +>file</B +> guesses the type of + the file. See the <TT +CLASS="FILENAME" +>magic</TT +> and + <B +CLASS="COMMAND" +>file</B +> manual pages for more information. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/motd</TT +></B +></DT +><DD +><P +>The message of the day, automatically + output after a successful login. Contents are up to the + system administrator. Often used for getting information + to every user, such as warnings about planned downtimes. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/mtab</TT +></B +></DT +><DD +><P +>List of currently mounted filesystems. + Initially set up by the bootup scripts, and updated + automatically by the <B +CLASS="COMMAND" +>mount</B +> + command. Used when a list of mounted filesystems is + needed, e.g., by the <B +CLASS="COMMAND" +>df</B +> command. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/shadow</TT +></B +></DT +><DD +><P +>Shadow password file on systems + with shadow password software installed. + Shadow passwords move the encrypted password + from <TT +CLASS="FILENAME" +>/etc/passwd</TT +> into + <TT +CLASS="FILENAME" +>/etc/shadow</TT +>; the latter is not + readable by anyone except root. This makes it harder + to crack passwords. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/login.defs</TT +></B +></DT +><DD +><P +>Configuration file for + the <B +CLASS="COMMAND" +>login</B +> command. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/printcap</TT +></B +></DT +><DD +><P +>Like <TT +CLASS="FILENAME" +>/etc/termcap</TT +>, + but intended for printers. Different syntax. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/profile</TT +>, <TT +CLASS="FILENAME" +>/etc/csh.login</TT +>, <TT +CLASS="FILENAME" +>/etc/csh.cshrc</TT +></B +></DT +><DD +><P +>Files executed at login or startup time + by the Bourne or C shells. These allow the system + administrator to set global defaults for all users. + See the manual pages for the respective shells. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/securetty</TT +></B +></DT +><DD +><P +>Identifies secure terminals, i.e., + the terminals from which root is allowed to log in. + Typically only the virtual consoles are listed, so + that it becomes impossible (or at least harder) to gain + superuser privileges by breaking into a system over a + modem or a network. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/shells</TT +></B +></DT +><DD +><P +>Lists trusted shells. The + <B +CLASS="COMMAND" +>chsh</B +> command allows users to change + their login shell only to shells listed in this file. + <B +CLASS="COMMAND" +>ftpd</B +>, the server process that provides + FTP services for a machine, will check that the user's + shell is listed in <TT +CLASS="FILENAME" +>/etc/shells</TT +> + and will not let people log in unles the shell is + listed there. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/etc/termcap</TT +></B +></DT +><DD +><P +>The terminal capability database. + Describes by what ``escape sequences'' various terminals + can be controlled. Programs are written so that instead + of directly outputting an escape sequence that only + works on a particular brand of terminal, they look up + the correct sequence to do whatever it is they want to + do in <TT +CLASS="FILENAME" +>/etc/termcap</TT +>. As a result + most programs work with most kinds of terminals. + See the <TT +CLASS="FILENAME" +>termcap</TT +>, curs_termcap, + and <TT +CLASS="FILENAME" +>terminfo</TT +> manual pages for + more information. </P +></DD +></DL +></DIV +> + </P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x267.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x463.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The root filesystem</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c212.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x463.html b/sag-0.6.1-www/sag-0.6.1.html/x463.html new file mode 100644 index 0000000..702ffe8 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x463.html @@ -0,0 +1,168 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The /dev directory</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="PREVIOUS" +TITLE="The /etc directory" +HREF="x338.html"><LINK +REL="NEXT" +TITLE="The /usr filesystem" +HREF="x472.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x338.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 3. Overview of the Directory Tree</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x472.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN463" +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory</A +></H1 +><P +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory contains + the special device files for all the devices. The device + files are named using special conventions; these are + described in the <I +CLASS="CITETITLE" +>Device list</I +> (see + XXX). The device files are created during installation, + and later with the <B +CLASS="COMMAND" +>/dev/MAKEDEV</B +> script. + The <B +CLASS="COMMAND" +>/dev/MAKEDEV.local</B +> is a script written + by the system administrator that creates local-only device + files or links (i.e., those that are not part of the standard + <B +CLASS="COMMAND" +>MAKEDEV</B +>, such as device files for some + non-standard device driver).</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x338.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x472.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/etc</TT +> directory</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c212.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x472.html b/sag-0.6.1-www/sag-0.6.1.html/x472.html new file mode 100644 index 0000000..d983633 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x472.html @@ -0,0 +1,315 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The /usr filesystem</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="PREVIOUS" +TITLE="The /dev directory" +HREF="x463.html"><LINK +REL="NEXT" +TITLE="The /var filesystem" +HREF="x531.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x463.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 3. Overview of the Directory Tree</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x531.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN472" +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem</A +></H1 +><P +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem is often + large, since all programs are installed there. All files + in <TT +CLASS="FILENAME" +>/usr</TT +> usually come from a Linux + distribution; locally installed programs and other stuff goes + below <TT +CLASS="FILENAME" +>/usr/local</TT +>. This makes it possible + to update the system from a new version of the distribution, + or even a completely new distribution, without having to + install all programs again. Some of the subdirectories of + <TT +CLASS="FILENAME" +>/usr</TT +> are listed below (some of the less + important directories have been dropped; see the FSSTND for + more information). + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><TT +CLASS="FILENAME" +>/usr/X11R6</TT +></B +></DT +><DD +><P +>The X Window System, all files. + To simplify the development and installation of + X, the X files have not been integrated into the + rest of the system. There is a directory tree + below <TT +CLASS="FILENAME" +>/usr/X11R6</TT +> similar + to that below <TT +CLASS="FILENAME" +>/usr</TT +> itself. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/X386</TT +></B +></DT +><DD +><P +>Similar to + <TT +CLASS="FILENAME" +>/usr/X11R6</TT +>, but for X11 Release 5. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/bin</TT +></B +></DT +><DD +><P +>Almost all user commands. + Some commands are in <TT +CLASS="FILENAME" +>/bin</TT +> + or in <TT +CLASS="FILENAME" +>/usr/local/bin</TT +>. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/sbin</TT +></B +></DT +><DD +><P +>System administration commands that are + not needed on the root filesystem, e.g., most server + programs. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/man</TT +>, <TT +CLASS="FILENAME" +>/usr/info</TT +>, <TT +CLASS="FILENAME" +>/usr/doc</TT +></B +></DT +><DD +><P +>Manual pages, GNU Info documents, and + miscellaneous other documentation files, respectively. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/include</TT +></B +></DT +><DD +><P +>Header files for the C + programming language. This should actually be below + <TT +CLASS="FILENAME" +>/usr/lib</TT +> for consistency, but the + tradition is overwhelmingly in support for this name. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/lib</TT +></B +></DT +><DD +><P +>Unchanging data files for programs and + subsystems, including some site-wide configuration + files. The name <TT +CLASS="FILENAME" +>lib</TT +> comes from library; + originally libraries of programming subroutines + were stored in <TT +CLASS="FILENAME" +>/usr/lib</TT +>. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/usr/local</TT +></B +></DT +><DD +><P +>The place for locally installed software + and other files. </P +></DD +></DL +></DIV +></P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x463.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x531.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/dev</TT +> directory</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c212.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/var</TT +> filesystem</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x531.html b/sag-0.6.1-www/sag-0.6.1.html/x531.html new file mode 100644 index 0000000..13eda2d --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x531.html @@ -0,0 +1,342 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The /var filesystem</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="PREVIOUS" +TITLE="The /usr filesystem" +HREF="x472.html"><LINK +REL="NEXT" +TITLE="The /proc filesystem" +HREF="x595.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x472.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 3. Overview of the Directory Tree</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x595.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN531" +>The <TT +CLASS="FILENAME" +>/var</TT +> filesystem</A +></H1 +><P +>The <TT +CLASS="FILENAME" +>/var</TT +> contains data that is changed when the system is + running normally. It is specific for each system, i.e., not + shared over the network with other computers. + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><TT +CLASS="FILENAME" +>/var/catman</TT +></B +></DT +><DD +><P +>A cache for man pages that are formatted + on demand. The source for manual pages is usually + stored in <TT +CLASS="FILENAME" +>/usr/man/man*</TT +>; some + manual pages might come with a pre-formatted version, + which is stored in <TT +CLASS="FILENAME" +>/usr/man/cat*</TT +>. + Other manual pages need to be formatted when they are + first viewed; the formatted version is then stored + in <TT +CLASS="FILENAME" +>/var/man</TT +> so that the next + person to view the same page won't have to wait for + it to be formatted. (<TT +CLASS="FILENAME" +>/var/catman</TT +> + is often cleaned in the same way temporary directories + are cleaned.)</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/lib</TT +></B +></DT +><DD +><P +>Files that change while the system is + running normally.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/local</TT +></B +></DT +><DD +><P +>Variable data for programs that are + installed in <TT +CLASS="FILENAME" +>/usr/local</TT +> (i.e., + programs that have been installed by the system + administrator). Note that even locally installed + programs should use the other <TT +CLASS="FILENAME" +>/var</TT +> + directories if they are appropriate, e.g., + <TT +CLASS="FILENAME" +>/var/lock</TT +>.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/lock</TT +></B +></DT +><DD +><P +>Lock files. Many programs + follow a convention to create a lock file in + <TT +CLASS="FILENAME" +>/var/lock</TT +> to indicate that they + are using a particular device or file. Other programs + will notice the lock file and won't attempt to use the + device or file.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/log</TT +></B +></DT +><DD +><P +>Log files from various + programs, especially <B +CLASS="COMMAND" +>login</B +> + (<TT +CLASS="FILENAME" +>/var/log/wtmp</TT +>, which logs all logins + and logouts into the system) and <B +CLASS="COMMAND" +>syslog</B +> + (<TT +CLASS="FILENAME" +>/var/log/messages</TT +>, where all + kernel and system program message are usually stored). + Files in <TT +CLASS="FILENAME" +>/var/log</TT +> can often grow + indefinitely, and may require cleaning at regular + intervals.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/run</TT +></B +></DT +><DD +><P +>Files that contain information about the + system that is valid until the system is next booted. + For example, <TT +CLASS="FILENAME" +>/var/run/utmp</TT +> + contains information about people currently logged + in.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/spool</TT +></B +></DT +><DD +><P +>Directories for mail, + news, printer queues, and other queued work. + Each different spool has its own subdirectory + below <TT +CLASS="FILENAME" +>/var/spool</TT +>, + e.g., the mailboxes of the users are in + <TT +CLASS="FILENAME" +>/var/spool/mail</TT +>.</P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/var/tmp</TT +></B +></DT +><DD +><P +>Temporary files that are large + or that need to exist for a longer time than + what is allowed for <TT +CLASS="FILENAME" +>/tmp</TT +>. + (Although the system administrator might not allow + very old files in <TT +CLASS="FILENAME" +>/var/tmp</TT +> + either.)</P +></DD +></DL +></DIV +></P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x472.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x595.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/usr</TT +> filesystem</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c212.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x595.html b/sag-0.6.1-www/sag-0.6.1.html/x595.html new file mode 100644 index 0000000..6a06c25 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x595.html @@ -0,0 +1,425 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>The /proc filesystem</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of the Directory Tree" +HREF="c212.html"><LINK +REL="PREVIOUS" +TITLE="The /var filesystem" +HREF="x531.html"><LINK +REL="NEXT" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x531.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 3. Overview of the Directory Tree</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c701.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN595" +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem</A +></H1 +><P +>The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem contains + a illusionary filesystem. It does not exist on a disk. + Instead, the kernel creates it in memory. It is used to provide + information about the system (originally about processes, hence + the name). Some of the more important files and directories are + explained below. The <TT +CLASS="FILENAME" +>/proc</TT +> filesystem is + described in more detail in the <TT +CLASS="FILENAME" +>proc</TT +> manual page. + + <DIV +CLASS="GLOSSLIST" +><DL +><DT +><B +><TT +CLASS="FILENAME" +>/proc/1</TT +></B +></DT +><DD +><P +>A directory with information about + process number 1. Each process has a directory below + <TT +CLASS="FILENAME" +>/proc</TT +> with the name being its process + identification number. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/cpuinfo</TT +></B +></DT +><DD +><P +>Information about the processor, + such as its type, make, model, and perfomance. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/devices</TT +></B +></DT +><DD +><P +>List of device drivers configured into the + currently running kernel. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/dma</TT +></B +></DT +><DD +><P +>Shows which DMA channels are being used + at the moment. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/filesystems</TT +></B +></DT +><DD +><P +>Filesystems configured into the kernel. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/interrupts</TT +></B +></DT +><DD +><P +>Shows which interrupts are + in use, and how many of each there have been. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/ioports</TT +></B +></DT +><DD +><P +>Which I/O ports are in use at the moment. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/kcore</TT +></B +></DT +><DD +><P +>An image of the physical memory of + the system. This is exactly the same size as your + physical memory, but does not really take up that much + memory; it is generated on the fly as programs access it. + (Remember: unless you copy it elsewhere, nothing under + <TT +CLASS="FILENAME" +>/proc</TT +> takes up any disk space + at all.) </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/kmsg</TT +></B +></DT +><DD +><P +>Messages output by the kernel. + These are also routed to <B +CLASS="COMMAND" +>syslog</B +>. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/ksyms</TT +></B +></DT +><DD +><P +>Symbol table for the kernel. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/loadavg</TT +></B +></DT +><DD +><P +>The `load average' of the system; three + meaningless indicators of how much work the system has + to do at the moment. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/meminfo</TT +></B +></DT +><DD +><P +>Information about memory usage, both + physical and swap. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/modules</TT +></B +></DT +><DD +><P +>Which kernel modules are loaded at + the moment. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/net</TT +></B +></DT +><DD +><P +>Status information about network + protocols. </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/self</TT +></B +></DT +><DD +><P +>A symbolic link to the process + directory of the program that is looking at + <TT +CLASS="FILENAME" +>/proc</TT +>. When two processes look at + <TT +CLASS="FILENAME" +>/proc</TT +>, they get different links. + This is mainly a convenience to make it easier + for programs to get at their process directory. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/stat</TT +></B +></DT +><DD +><P +>Various statistics about the system, such + as the number of page faults since the system was booted. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/uptime</TT +></B +></DT +><DD +><P +>The time the system has been up. + </P +></DD +><DT +><B +><TT +CLASS="FILENAME" +>/proc/version</TT +></B +></DT +><DD +><P +>The kernel version. + </P +></DD +></DL +></DIV +></P +><P +>Note that while the above files tend to be easily + readable text files, they can sometimes be formatted in a way + that is not easily digestable. There are many commands that + do little more than read the above files and format them for + easier understanding. For example, the <B +CLASS="COMMAND" +>free</B +> + program reads <TT +CLASS="FILENAME" +>/proc/meminfo</TT +> and converts + the amounts given in bytes to kilobytes (and adds a little more + information, as well).</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x531.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c701.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>The <TT +CLASS="FILENAME" +>/var</TT +> filesystem</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c212.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Using Disks and Other Storage Media</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x747.html b/sag-0.6.1-www/sag-0.6.1.html/x747.html new file mode 100644 index 0000000..1efe4a4 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x747.html @@ -0,0 +1,406 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Hard disks</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="NEXT" +TITLE="Floppies" +HREF="x787.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c701.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x787.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN747" +>Hard disks</A +></H1 +><P +>This subsection introduces terminology related to hard + disks. If you already know the terms and concepts, you can skip + this subsection.</P +><P +>See <A +HREF="x747.html#HD-SCHEMATIC" +>Figure 4-1</A +> for a schematic picture + of the important parts in a hard disk. A hard disk consists of + one or more circular <I +CLASS="GLOSSTERM" +>platters</I +>, + + <A +NAME="AEN753" +HREF="#FTN.AEN753" +>[1]</A +> + + of which either or both <I +CLASS="GLOSSTERM" +>surfaces</I +> are coated + with a magnetic substance used for recording the data. For each + surface, there is a <I +CLASS="GLOSSTERM" +>read-write head</I +> that + examines or alters the recorded data. The platters rotate on + a common axis; a typical rotation speed is 3600 rotations per + minute, although high-performance hard disks have higher speeds. + The heads move along the radius of the platters; this movement + combined with the rotation of the platters allows the head to + access all parts of the surfaces.</P +><P +>The processor (CPU) and the actual disk communicate through + a <I +CLASS="GLOSSTERM" +>disk controller</I +>. This relieves the rest of the computer + from knowing how to use the drive, since the controllers for + different types of disks can be made to use the same interface + towards the rest of the computer. Therefore, the computer can + say just ``hey disk, gimme what I want'', instead of a long and + complex series of electric signals to move the head to the proper + location and waiting for the correct position to come under + the head and doing all the other unpleasant stuff necessary. + (In reality, the interface to the controller is still complex, + but much less so than it would otherwise be.) The controller + can also do some other stuff, such as caching, or automatic bad + sector replacement.</P +><P +>The above is usually all one needs to understand about the + hardware. There is also a bunch of other stuff, such as the + motor that rotates the platters and moves the heads, and the + electronics that control the operation of the mechanical + parts, but that is mostly not relevant for understanding the + working principle of a hard disk.</P +><P +>The surfaces are usually divided into concentric rings, + called <I +CLASS="GLOSSTERM" +>tracks</I +>, and these in turn are + divided into <I +CLASS="GLOSSTERM" +>sectors</I +>. This division + is used to specify locations on the hard disk and to allocate + disk space to files. To find a given place on the hard disk, + one might say ``surface 3, track 5, sector 7''. Usually the + number of sectors is the same for all tracks, but some hard disks + put more sectors in outer tracks (all sectors are of the same + physical size, so more of them fit in the longer outer tracks). + Typically, a sector will hold 512 bytes of data. The disk itself + can't handle smaller amounts of data than one sector.</P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="HD-SCHEMATIC" +>Figure 4-1. A schematic picture of a hard disk.</A +></B +></P +><P +><IMG +SRC="hd-schematic.gif"></P +></DIV +><P +>Each surface is divided into tracks (and sectors) in + the same way. This means that when the head for one surface + is on a track, the heads for the other surfaces are also on + the corresponding tracks. All the corresponding tracks taken + together are called a <I +CLASS="GLOSSTERM" +>cylinder</I +>. It takes + time to move the heads from one track (cylinder) to another, + so by placing the data that is often accessed together (say, a + file) so that it is within one cylinder, it is not necessary to + move the heads to read all of it. This improves performance. + It is not always possible to place files like this; files + that are stored in several places on the disk are called + <I +CLASS="GLOSSTERM" +>fragmented</I +>.</P +><P +>The number of surfaces (or heads, which is the same thing), + cylinders, and sectors vary a lot; the specification of the + number of each is called the <I +CLASS="GLOSSTERM" +>geometry</I +> of a hard disk. The + geometry is usually stored in a special, battery-powered memory + location called the <I +CLASS="GLOSSTERM" +>CMOS RAM</I +>, from where the operating + system can fetch it during bootup or driver initialization.</P +><P +>Unfortunately, the BIOS + + <A +NAME="AEN773" +HREF="#FTN.AEN773" +>[2]</A +> + + has a design limitation, which makes it + impossible to specify a track number that is larger than 1024 in + the CMOS RAM, + which is too little for a large hard disk. To overcome this, + the hard disk controller lies about the geometry, and + <I +CLASS="GLOSSTERM" +>translates the addresses</I +> given by the computer into something + that fits reality. For example, a hard disk might have 8 heads, + 2048 tracks, and 35 sectors per track. + + <A +NAME="AEN776" +HREF="#FTN.AEN776" +>[3]</A +> + + Its controller could lie to the computer and claim that it + has 16 heads, 1024 tracks, and 35 sectors per track, thus not + exceeding the limit on tracks, and translates the address that + the computer gives it by halving the head number, and doubling + the track number. The math can be more complicated in reality, + because the numbers are not as nice as here (but again, the + details are not relevant for understanding the principle). + This translation distorts the operating system's view of how + the disk is organized, thus making it impractical to use the + all-data-on-one-cylinder trick to boost performance.</P +><P +>The translation is only a problem for IDE disks. SCSI disks + use a sequential sector number (i.e., the controller translates + a sequential sector number to a head, cylinder, and sector + triplet), and a completely different method for the CPU to talk + with the controller, so they are insulated from the problem. + Note, however, that the computer might not know the real geometry + of an SCSI disk either.</P +><P +>Since Linux often will not know the real geometry of a disk, + its filesystems don't even try to keep files within a single + cylinder. Instead, it tries to assign sequentially numbered + sectors to files, which almost always gives similar performance. + The issue is further complicated by on-controller caches, and + automatic prefetches done by the controller.</P +><P +>Each hard disk is represented by a separate device + file. There can (usually) be only two or four IDE hard + disks. These are known as <TT +CLASS="FILENAME" +>/dev/hda</TT +>, + <TT +CLASS="FILENAME" +>/dev/hdb</TT +>, <TT +CLASS="FILENAME" +>/dev/hdc</TT +>, + and <TT +CLASS="FILENAME" +>/dev/hdd</TT +>, respectively. SCSI + hard disks are known as <TT +CLASS="FILENAME" +>/dev/sda</TT +>, + <TT +CLASS="FILENAME" +>/dev/sdb</TT +>, and so on. Similar naming + conventions exist for other hard disk types; see XXX (device + list) for more information. Note that the device files for + the hard disks give access to the entire disk, with no regard + to partitions (which will be discussed below), and it's easy to + mess up the partitions or the data in them if you aren't careful. + The disks' device files are usually used only to get access to the + master boot record (which will also be discussed below).</P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN753" +HREF="x747.html#AEN753" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>The platters are made of a hard + substance, e.g., aluminium, which gives the hard disk + its name.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN773" +HREF="x747.html#AEN773" +>[2]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>The BIOS is some built-in software stored on + ROM chips. It takes care, among other things, of the + initial stages of booting.</P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN776" +HREF="x747.html#AEN776" +>[3]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>The numbers are completely + imaginary.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c701.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x787.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Using Disks and Other Storage Media</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Floppies</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x787.html b/sag-0.6.1-www/sag-0.6.1.html/x787.html new file mode 100644 index 0000000..11593f2 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x787.html @@ -0,0 +1,205 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Floppies</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Hard disks" +HREF="x747.html"><LINK +REL="NEXT" +TITLE="CD-ROM's" +HREF="x801.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x747.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x801.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN787" +>Floppies</A +></H1 +><P +>A floppy disk consists of a flexible membrane covered on one + or both sides with similar magnetic substance as a hard disk. + The floppy disk itself doesn't have a read-write head, that is + included in the drive. A floppy corresponds to one platter in + a hard disk, but is removable and one drive can be used to + access different floppies, whereas the hard disk is one + indivisible unit.</P +><P +>Like a hard disk, a floppy is divided into tracks and sectors + (and the two corresponding tracks on either side of a floppy + form a cylinder), but there are many fewer of them than on a + hard disk.</P +><P +>A floppy drive can usually use several different types of disks; + for example, a 3.5 inch drive can use both 720 kB and + 1.44 MB disks. Since the drive has to operate a bit differently + and the operating system must know how big the disk is, there + are many device files for floppy drives, one per combination of + drive and disk type. + Therefore, <TT +CLASS="FILENAME" +>/dev/fd0H1440</TT +> is the first floppy drive (fd0), + which must be a 3.5 inch drive, + using a 3.5 inch, high density disk (H) of + size 1440 kB (1440), i.e., a normal 3.5 inch HD floppy. + For more information on the naming conventions for the floppy + devices, see XXX (device list).</P +><P +>The names for floppy drives are complex, however, and Linux + therefore has a special floppy device type that automatically + detects the type of the disk in the drive. It works by + trying to read the first sector of a newly inserted floppy + using different floppy types until it finds the correct one. + This naturally requires that the floppy is formatted first. + The automatic devices are called <TT +CLASS="FILENAME" +>/dev/fd0</TT +>, + <TT +CLASS="FILENAME" +>/dev/fd1</TT +>, and so on.</P +><P +>The parameters the automatic device uses to access a disk can + also be set using the program \cmd{setfdprm}. This can be + useful if you need to use disks that do not follow any usual + floppy sizes, e.g., if they have an unusual number of sectors, + or if the autodetecting for some reason fails and the proper + device file is missing.</P +><P +>Linux can handle many nonstandard floppy disk formats + in addition to all the standard ones. Some of these require + using special formatting programs. We'll skip these disk + types for now, but in the mean time you can examine the + <TT +CLASS="FILENAME" +>/etc/fdprm</TT +> file. It specifies the settings + that <B +CLASS="COMMAND" +>setfdprm</B +> recognizes.</P +><P +>The operating system must know when a disk has been changed in + a floppy drive, for example, in order to avoid using cached + data from the previous disk. Unfortunately, the signal line + that is used for this is sometimes broken, and worse, this won't + always be noticeable when using the drive from within MS-DOS. + If you are experiencing weird problems using floppies, this might + be the reason. The only way to correct it is to repair the + floppy drive.</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x747.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x801.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Hard disks</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>CD-ROM's</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x801.html b/sag-0.6.1-www/sag-0.6.1.html/x801.html new file mode 100644 index 0000000..e8d51b7 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x801.html @@ -0,0 +1,218 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>CD-ROM's</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Floppies" +HREF="x787.html"><LINK +REL="NEXT" +TITLE="Tapes" +HREF="x811.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x787.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x811.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN801" +>CD-ROM's</A +></H1 +><P +>A CD-ROM drive uses an optically read, plastic coated disk. + The information is recorded on the surface of the + disk + + <A +NAME="AEN804" +HREF="#FTN.AEN804" +>[1]</A +> + + in small `holes' aligned along a spiral from the center to the + edge. The drive directs a laser beam along the spiral to read + the disk. When the laser hits a hole, the laser is reflected in + one way; when it hits smooth surface, it is reflected in another + way. This makes it easy to code bits, and therefore information. + The rest is easy, mere mechanics.</P +><P +>CD-ROM drives are slow compared to hard disks. Whereas a + typical hard disk will have an average seek time less than + 15 milliseconds, a fast CD-ROM drive can use tenths of a second + for seeks. The actual data transfer rate is fairly high at + hundreds of kilobytes per second. The slowness means that + CD-ROM drives are not as pleasant to use instead of hard disks + (some Linux distributions provide `live' filesystems on CD-ROM's, + making it unnecessary to copy the files to the hard disk, making + installation easier and saving a lot of hard disk space), although + it is still possible. For installing new software, CD-ROM's are + very good, since it maximum speed is not essential during + installation.</P +><P +>There are several ways to arrange data on a CD-ROM. The most + popular one is specified by the international standard ISO 9660. + This standard specifies a very minimal filesystem, which is + even more crude than the one MS-DOS uses. On the other hand, + it is so minimal that every operating system should be able to + map it to its native system.</P +><P +>For normal UNIX use, the ISO 9660 filesystem is not usable, so + an extension to the standard has been developed, called + the Rock Ridge extension. Rock Ridge allows longer filenames, + symbolic links, and a lot of other goodies, making a CD-ROM + look more or less like any contemporary UNIX filesystem. + Even better, a Rock Ridge filesystem is still a valid ISO 9660 + filesystem, making it usable by non-UNIX systems as well. + Linux supports both ISO 9660 and the Rock Ridge extensions; + the extensions are recognized and used automatically.</P +><P +>The filesystem is only half the battle, however. Most CD-ROM's + contain data that requires a special program to access, and + most of these programs do not run under Linux (except, possibly, + under dosemu, the Linux MS-DOS emulator).</P +><P +>A CD-ROM drive is accessed via the corresponding device file. + There are several ways to connect a CD-ROM drive to the computer: + via SCSI, via a sound card, or via EIDE. The hardware hacking + needed to do this is outside the scope of this book, but the + type of connection decides the device file. See XXX (device-list) + for enlightment.</P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN804" +HREF="x801.html#AEN804" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>That is, the surface inside + the disk, on the metal disk inside the plastic + coating.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x787.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x811.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Floppies</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Tapes</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x811.html b/sag-0.6.1-www/sag-0.6.1.html/x811.html new file mode 100644 index 0000000..d9e9965 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x811.html @@ -0,0 +1,179 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Tapes</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="CD-ROM's" +HREF="x801.html"><LINK +REL="NEXT" +TITLE="Formatting" +HREF="x817.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x801.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x817.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN811" +>Tapes</A +></H1 +><P +>A tape drive uses a tape, similar + + <A +NAME="AEN814" +HREF="#FTN.AEN814" +>[1]</A +> + + to cassettes used for music. A tape is serial in nature, which + means that in order to get to any given part of it, you first have + to go through all the parts in between. A disk can be accessed + randomly, i.e., you can jump directly to any place on the disk. + The serial access of tapes makes them slow.</P +><P +>On the other hand, tapes are relatively cheap to make, + since they do not need to be fast. They can also easily be made + quite long, and can therefore contain a large amount of data. + This makes tapes very suitable for things like archiving and + backups, which do not require large speeds, but benefit from + low costs and large storage capacities.</P +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN814" +HREF="x811.html#AEN814" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>But completely + different, of course.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x801.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x817.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>CD-ROM's</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Formatting</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x817.html b/sag-0.6.1-www/sag-0.6.1.html/x817.html new file mode 100644 index 0000000..e7184cc --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x817.html @@ -0,0 +1,411 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Formatting</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Tapes" +HREF="x811.html"><LINK +REL="NEXT" +TITLE="Partitions" +HREF="x876.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x811.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x876.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN817" +>Formatting</A +></H1 +><P +><I +CLASS="GLOSSTERM" +>Formatting</I +> is the process of writing marks on the + magnetic media that are used to mark tracks and sectors. + Before a disk is formatted, its magnetic surface is a complete + mess of magnetic signals. When it is formatted, some order is + brought into the chaos by essentially drawing lines where the + tracks go, and where they are divided into sectors. The + actual details are not quite exactly like this, but that is + irrelevant. What is important is that a disk cannot be used + unless it has been formatted.</P +><P +>The terminology is a bit confusing here: in MS-DOS, the word + formatting is used to cover also the process of creating a + filesystem (which will be discussed below). There, the two + processes are often combined, especially for floppies. When + the distinction needs to be made, the real formatting is + called <I +CLASS="GLOSSTERM" +>low-level formatting</I +>, while making the filesystem + is called <I +CLASS="GLOSSTERM" +>high-level formatting</I +>. In UNIX circles, + the two are called formatting and making a filesystem, so + that's what is used in this book as well.</P +><P +>For IDE and some SCSI disks the formatting is actually + done at the factory and doesn't need to be repeated; hence most + people rarely need to worry about it. In fact, formatting a + hard disk can cause it to work less well, for example because + a disk might need to be formatted in some very special way to + allow automatic bad sector replacement to work.</P +><P +>Disks that need to be or can be formatted often require a + special program anyway, because the interface to the formatting + logic inside the drive is different from drive to drive. + The formatting program is often either on the controller BIOS, + or is supplied as an MS-DOS program; neither of these can easily + be used from within Linux.</P +><P +>During formatting one might encounter bad spots on the + disk, called <I +CLASS="GLOSSTERM" +>bad blocks</I +> or <I +CLASS="GLOSSTERM" +>bad + sectors</I +>. These are sometimes handled by the drive + itself, but even then, if more of them develop, something needs + to be done to avoid using those parts of the disk. The logic to + do this is built into the filesystem; how to add the information + into the filesystem is described below. Alternatively, one + might create a small partition that covers just the bad part of + the disk; this approach might be a good idea if the bad spot is + very large, since filesystems can sometimes have trouble with + very large bad areas.</P +><P +>Floppies are formatted with <B +CLASS="COMMAND" +>fdformat</B +>. The floppy device + file to use is given as the parameter. For example, the + following command would format a high density, + 3.5 inch floppy in the first floppy drive: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>fdformat /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Formatting ... done</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Verifying ... done</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + Note that if you want to use an autodetecting device (e.g., + <TT +CLASS="FILENAME" +>/dev/fd0</TT +>), you <I +CLASS="EMPHASIS" +>must</I +> set the parameters of the device + with <B +CLASS="COMMAND" +>setfdprm</B +> first. To achieve the same effect as + above, one would have to do the following: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>setfdprm /dev/fd0 1440/1440</B +></TT +> +<TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>fdformat /dev/fd0</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Formatting ... done</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Verifying ... done</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + It is usually more convenient to choose the correct device file + that matches the type of the floppy. Note that it is unwise to + format floppies to contain more information than what they are + designed for.</P +><P +><B +CLASS="COMMAND" +>fdformat</B +> will also validate the floppy, i.e., check it + for bad blocks. It will try a bad block several times (you + can usually hear this, the drive noise changes dramatically). + If the floppy is only marginally bad (due to dirt on the + read/write head, some errors are false signals), <B +CLASS="COMMAND" +>fdformat</B +> won't + complain, but a real error will abort the validation process. + The kernel will print log messages for each I/O error it + finds; these will go to the console or, if <B +CLASS="COMMAND" +>syslog</B +> + is being used, to the file <TT +CLASS="FILENAME" +>/usr/log/messages</TT +>. <B +CLASS="COMMAND" +>fdformat</B +> + itself won't tell where the error is (one usually doesn't care, + floppies are cheap enough that a bad one is automatically thrown + away). + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>fdformat /dev/fd0H1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Double-sided, 80 tracks, 18 sec/track. Total capacity 1440 kB.</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Formatting ... done</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Verifying ... read: Unknown error</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + The <B +CLASS="COMMAND" +>badblocks</B +> command can be used to search any disk or + partition for bad blocks (including a floppy). It does not + format the disk, so it can be used to check even existing + filesystems. The example below checks a 3.5 inch + floppy with two bad blocks. + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>badblocks /dev/fd0H1440 1440</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>718</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>719</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> + + <B +CLASS="COMMAND" +>badblocks</B +> outputs the block numbers of the bad + blocks it finds. Most filesystems can avoid such bad blocks. They + maintain a list of known bad blocks, which is initialized when the + filesystem is made, and can be modified later. The initial search + for bad blocks can be done by the <B +CLASS="COMMAND" +>mkfs</B +> command + (which initializes the filesystem), but later checks should be + done with <B +CLASS="COMMAND" +>badblocks</B +> and the new blocks should + be added with <B +CLASS="COMMAND" +>fsck</B +>. We'll describe \cmd{mkfs} + and <B +CLASS="COMMAND" +>fsck</B +> later.</P +><P +>Many modern disks automatically notice bad blocks, and attempt + to fix them by using a special, reserved good block instead. + This is invisible to the operating system. This feature should + be documented in the disk's manual, if you're curious if it + is happening. Even such disks can fail, if the number of bad + blocks grows too large, although chances are that by then the disk + will be so rotten as to be unusable.</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x811.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x876.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Tapes</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Partitions</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x83.html b/sag-0.6.1-www/sag-0.6.1.html/x83.html new file mode 100644 index 0000000..8f1face --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x83.html @@ -0,0 +1,189 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Important parts of the kernel</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of a Linux System" +HREF="c63.html"><LINK +REL="PREVIOUS" +TITLE="Overview of a Linux System" +HREF="c63.html"><LINK +REL="NEXT" +TITLE="Major services in a UNIX system" +HREF="x94.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="c63.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 2. Overview of a Linux System</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x94.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN83" +>Important parts of the kernel</A +></H1 +><P +>The Linux kernel consists of several important parts: process + management, memory management, hardware device drivers, filesystem + drivers, network management, and various other bits and pieces. + <A +HREF="x83.html#KERNELOVERVIEW" +>Figure 2-1</A +> + shows some of them.</P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="KERNELOVERVIEW" +>Figure 2-1. Some of the more important parts of the Linux kernel</A +></B +></P +><P +><IMG +SRC="overview-kernel.gif"></P +></DIV +><P +>Probably the most important parts of the kernel (nothing else + works without them) are memory management and + process management. Memory management takes care of assigning + memory areas and swap space areas to processes, parts of the + kernel, and for the buffer cache. Process management creates + processes, and implements multitasking by switching the + active process on the processor.</P +><P +>At the lowest level, the kernel contains a hardware device + driver for each kind of hardware it supports. Since the world is + full of different kinds of hardware, the number of hardware device + drivers is large. There are often many otherwise similar pieces + of hardware that differ in how they are controlled by software. + The similarities make it possible to have general classes of + drivers that support similar operations; each member of the class + has the same interface to the rest of the kernel but differs in + what it needs to do to implement them. For example, all disk + drivers look alike to the rest of the kernel, i.e., they all + have operations like `initialize the drive', `read sector N', + and `write sector N'.</P +><P +>Some software services provided by the kernel itself have + similar properties, and can therefore be abstracted into classes. + For example, the various network protocols have been abstracted + into one programming interface, the BSD socket library. Another + example is the <I +CLASS="GLOSSTERM" +>virtual filesystem</I +> (VFS) + layer that abstracts the filesystem operations away from their + implementation. Each filesystem type provides an implementation + of each filesystem operation. When some entity tries to use + a filesystem, the request goes via the VFS, which routes the + request to the proper filesystem driver.</P +></DIV +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="c63.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x94.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Overview of a Linux System</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c63.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Major services in a UNIX system</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x876.html b/sag-0.6.1-www/sag-0.6.1.html/x876.html new file mode 100644 index 0000000..6b53efb --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x876.html @@ -0,0 +1,812 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Partitions</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Using Disks and Other Storage Media" +HREF="c701.html"><LINK +REL="PREVIOUS" +TITLE="Formatting" +HREF="x817.html"><LINK +REL="NEXT" +TITLE="Filesystems" +HREF="x1029.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x817.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 4. Using Disks and Other Storage Media</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="x1029.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN876" +>Partitions</A +></H1 +><P +>A hard disk can be divided into several + <I +CLASS="GLOSSTERM" +>partitions</I +>. Each partition functions as if + it were a separate hard disk. The idea is that if you have one + hard disk, and want to have, say, two operating systems on it, + you can divide the disk into two partitions. Each operating + system uses its partition as it wishes and doesn't touch the + other one's. This way the two operating systems can co-exist + peacefully on the same hard disk. Without partitions one would + have to buy a hard disk for each operating system.</P +><P +>Floppies are not partitioned. There is no technical reason + against this, but since they're so small, partitions would be + useful only very rarely. CD-ROM's are usually also not + partitioned, since it's easier to use them as one big + disk, and there is seldom a need to have several operating + systems on one.</P +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN881" +>The MBR, boot sectors and partition table</A +></H2 +><P +>The information about how a hard disk has been partitioned + is stored in its first sector (that is, the first sector of the + first track on the first disk surface). The first sector is the + <I +CLASS="GLOSSTERM" +>master boot record</I +> (MBR) of the disk; this + is the sector that the BIOS reads in and starts when the machine + is first booted. The master boot record contains a small program + that reads the partition table, checks which partition is active + (that is, marked bootable), and reads the first sector of that + partition, the partition's <I +CLASS="GLOSSTERM" +>boot sector</I +> + (the MBR is also a boot sector, but it has a special status and + therefore a special name). This boot sector contains another + small program that reads the first part of the operating system + stored on that partition (assuming it is bootable), and then + starts it.</P +><P +>The partitioning scheme is not built into the hardware, or + even into the BIOS. It is only a convention that many + operating systems follow. Not all operating systems do follow + it, but they are the exceptions. Some operating + systems support partitions, but they occupy one partition on + the hard disk, and use their internal partitioning method + within that partition. The latter type exists peacefully + with other operating systems (including Linux), and does not + require any special measures, but an operating system + that doesn't support partitions cannot co-exist on the same + disk with any other operating system.</P +><P +>As a safety precaution, it is a good idea to write down the + partition table on a piece of paper, so that if it ever corrupts + you don't have to lose all your files. (A bad partition table + can be fixed with <B +CLASS="COMMAND" +>fdisk</B +>). The relevant information + is given by the <B +CLASS="COMMAND" +>fdisk -l</B +> command: + +<PRE +CLASS="SCREEN" +><TT +CLASS="PROMPT" +>$</TT +> <TT +CLASS="USERINPUT" +><B +>fdisk -l /dev/hda</B +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Disk /dev/hda: 15 heads, 57 sectors, 790 cylinders</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>Units = cylinders of 855 * 512 bytes</TT +> +<TT +CLASS="COMPUTEROUTPUT" +></TT +> +<TT +CLASS="COMPUTEROUTPUT" +> Device Boot Begin Start End Blocks Id System</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>/dev/hda1 1 1 24 10231+ 82 Linux swap</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>/dev/hda2 25 25 48 10260 83 Linux native</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>/dev/hda3 49 49 408 153900 83 Linux native</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>/dev/hda4 409 409 790 163305 5 Extended</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>/dev/hda5 409 409 744 143611+ 83 Linux native</TT +> +<TT +CLASS="COMPUTEROUTPUT" +>/dev/hda6 745 745 790 19636+ 83 Linux native</TT +> +<TT +CLASS="PROMPT" +>$</TT +></PRE +> </P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN905" +>Extended and logical partitions</A +></H2 +><P +>The original partitioning scheme for PC hard disks allowed + only four partitions. This quickly turned out to be too little + in real life, partly because some people want more than four + operating systems (Linux, MS-DOS, OS/2, Minix, FreeBSD, NetBSD, or + Windows/NT, to name a few), but primarily because sometimes it + is a good idea to have several partitions for one + operating system. For example, swap space is usually best put + in its own partition for Linux instead of in the main + Linux partition for reasons of speed (see below).</P +><P +>To overcome this design problem, <I +CLASS="GLOSSTERM" +>extended partitions</I +> were + invented. This trick allows partitioning a <I +CLASS="GLOSSTERM" +>primary + partition</I +> into sub-partitions. The + primary partition thus subdivided is the <I +CLASS="GLOSSTERM" +>extended partition</I +>; the + subpartitions are <I +CLASS="GLOSSTERM" +>logical partitions</I +>. They behave + like primary + + <A +NAME="AEN913" +HREF="#FTN.AEN913" +>[1]</A +> + + partitions, but are created differently. There is no speed + difference between them.</P +><P +>The partition structure of a hard disk might look like that + in <A +HREF="x876.html#HARD-DISK-LAYOUT" +>Figure 4-2</A +>. The disk is divided into + three primary partitions, the second of which is divided into + two logical partitions. Part of the disk is not partitioned + at all. The disk as a whole and each primary partition has a + boot sector.</P +><DIV +CLASS="FIGURE" +><P +><B +><A +NAME="HARD-DISK-LAYOUT" +>Figure 4-2. A sample hard disk partitioning.</A +></B +></P +><P +><IMG +SRC="hd-layout.gif"></P +></DIV +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN920" +>Partition types</A +></H2 +><P +>The partition tables (the one in the MBR, and the ones for + extended partitions) contain one byte per partition that + identifies the type of that partition. This attempts to + identify the operating system that uses the partition, or what + it uses it for. The purpose is to make it possible to avoid + having two operating systems accidentally using the same + partition. However, in reality, operating systems do not + really care about the partition type byte; e.g., Linux + doesn't care at all what it is. Worse, some of them use it + incorrectly; e.g., at least some versions of DR-DOS ignore the + most significant bit of the byte, while others don't.</P +><P +>There is no standardization agency to specify what each byte + value means, but some commonly accepted ones are included in + in <A +HREF="x876.html#PARTITION-IDS" +>Table 4-1</A +>. The same list is + available in the Linux <B +CLASS="COMMAND" +>fdisk</B +> program.</P +><DIV +CLASS="TABLE" +><P +><B +><A +NAME="PARTITION-IDS" +>Table 4-1. Partition types (from the Linux <B +CLASS="COMMAND" +>fdisk</B +> program).</A +></B +></P +><TABLE +BORDER="1" +CLASS="CALSTABLE" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>0</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Empty</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>40</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Venix 80286</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>94</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Amoeba BBT</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>DOS 12-bit FAT</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>51</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Novell?</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>a5</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>BSD/386</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>XENIX root</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>52</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Microport</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>b7</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>BSDI fs</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>3</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>XENIX usr</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>63</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>GNU HURD</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>b8</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>BSDI swap</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>4</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>DOS 16-bitf <32M</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>64</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Novell</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>c7</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Syrinx</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>5</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Extended</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>75</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>PC/IX</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>db</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>CP/M</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>6</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>DOS 16-bit >=32M</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>80</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Old MINIX</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>e1</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>DOS access</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>7</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>OS/2 HPFS</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>81</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Linux/MINIX</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>e3</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>DOS R/O</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>8</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>AIX</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>82</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Linux swap</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>f2</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>DOS secondary</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>9</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>AIX bootable</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>83</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Linux native</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>ff</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>BBT</TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +>a</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>OS/2 Boot Manag</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>93</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +>Amoeba</TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +> </TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +> </TD +></TR +></TABLE +></DIV +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1008" +>Partitioning a hard disk</A +></H2 +><P +>There are many programs for creating and removing + partitions. Most operating systems have their own, and it + can be a good idea to use each operating system's own, just + in case it does something unusual that the others can't. + Many of the programs are called <B +CLASS="COMMAND" +>fdisk</B +>, + including the Linux one, or variations thereof. Details on + using the Linux <B +CLASS="COMMAND" +>fdisk</B +> are given on its + man page. The <B +CLASS="COMMAND" +>cfdisk</B +> command is similar + to <B +CLASS="COMMAND" +>fdisk</B +>, but has a nicer (full screen) + user interface.</P +><P +>When using IDE disks, the boot partition (the partition + with the bootable kernel image files) must be completely + within the first 1024 cylinders. This is because the disk is + used via the BIOS during boot (before the system goes into + protected mode), and BIOS can't handle more than 1024 cylinders. + It is sometimes possible to use a boot partition that is only + partly within the first 1024 cylinders. This works as long + as all the files that are read with the BIOS are within the + first 1024 cylinders. Since this is difficult to arrange, + it is <I +CLASS="EMPHASIS" +>a very bad idea</I +> to do it; you never know when + a kernel update or disk defragmentation will result in an + unbootable system. Therefore, make sure your boot partition + is completely within the first 1024 cylinders.</P +><P +>Some newer versions of the BIOS and IDE disks can, in fact, + handle disks with more than 1024 cylinders. If you have such + a system, you can forget about the problem; if you aren't quite + sure of it, put it within the first 1024 cylinders.</P +><P +>Each partition should have an even number of sectors, + since the Linux filesystems use a 1 kilobyte block size, i.e., + two sectors. An odd number of sectors will result in the + last sector being unused. This won't result in any problems, + but it is ugly, and some versions of <B +CLASS="COMMAND" +>fdisk</B +> + will warn about it.</P +><P +>Changing a partition's size usually requires first backing up + everything you want to save from that partition (preferably the + whole disk, just in case), deleting the partition, creating + new partition, then restoring everything to the new partition. + If the partition is growing, you may need to adjust the sizes + (and backup and restore) of the adjoining partitions as well.</P +><P +>Since changing partition sizes is painful, it is preferable to + get the partitions right + the first time, or have an effective and easy to use backup + system. If you're installing from a media that does not require + much human intervention (say, from CD-ROM, as opposed to floppies), + it is often easy to play with different configuration at first. + Since you don't already have data to back up, it is not so + painful to modify partition sizes several times.</P +><P +>There is a program for MS-DOS, called + <B +CLASS="COMMAND" +>fips</B +>, which resizes an MS-DOS partition without + requiring the backup and restore, but for other filesystems it + is still necessary.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN1024" +>Device files and partitions</A +></H2 +><P +>Each partition and extended partition has its own + device file. The naming convention for these files is that a + partition's number is appended after the name of the whole disk, + with the convention that 1-4 are primary partitions (regardless + of how many primary partitions there are) and 5-8 are logical + partitions (regardless of within which primary partition + they reside). For example, <TT +CLASS="FILENAME" +>/dev/hda1</TT +> + is the first primary partition on the first IDE hard disk, and + <TT +CLASS="FILENAME" +>/dev/sdb7</TT +> is the third extended partition on + the second SCSI hard disk. The device list in XXX (device list) + gives more information.</P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN913" +HREF="x876.html#AEN913" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Illogical?</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x817.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="x1029.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Formatting</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c701.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Filesystems</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.html/x94.html b/sag-0.6.1-www/sag-0.6.1.html/x94.html new file mode 100644 index 0000000..f42055e --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.html/x94.html @@ -0,0 +1,687 @@ +<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN"> +<HTML +><HEAD +><TITLE +>Major services in a UNIX system</TITLE +><META +NAME="GENERATOR" +CONTENT="Modular DocBook HTML Stylesheet"><LINK +REL="HOME" +TITLE="The Linux System Administrators' Guide" +HREF="book1.html"><LINK +REL="UP" +TITLE="Overview of a Linux System" +HREF="c63.html"><LINK +REL="PREVIOUS" +TITLE="Important parts of the kernel" +HREF="x83.html"><LINK +REL="NEXT" +TITLE="Overview of the Directory Tree" +HREF="c212.html"></HEAD +><BODY +BGCOLOR="#FFFFFF" +TEXT="#000000" +><DIV +CLASS="NAVHEADER" +><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TH +COLSPAN="3" +ALIGN="center" +>The Linux System Administrators' Guide</TH +></TR +><TR +><TD +WIDTH="10%" +ALIGN="left" +VALIGN="bottom" +><A +HREF="x83.html" +>Prev</A +></TD +><TD +WIDTH="80%" +ALIGN="center" +VALIGN="bottom" +>Chapter 2. Overview of a Linux System</TD +><TD +WIDTH="10%" +ALIGN="right" +VALIGN="bottom" +><A +HREF="c212.html" +>Next</A +></TD +></TR +></TABLE +><HR +ALIGN="LEFT" +WIDTH="100%"></DIV +><DIV +CLASS="SECT1" +><H1 +CLASS="SECT1" +><A +NAME="AEN94" +>Major services in a UNIX system</A +></H1 +><P +>This section describes some of the more important UNIX + services, but without much detail. They are described more + thoroughly in later chapters.</P +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN97" +><B +CLASS="COMMAND" +>init</B +></A +></H2 +><P +>The single most important service in a UNIX system is + provided by <B +CLASS="COMMAND" +>init</B +>. <B +CLASS="COMMAND" +>init</B +> + is started as the first process of every UNIX system, as the last + thing the kernel does when it boots. When <B +CLASS="COMMAND" +>init</B +> + starts, it continues the boot process by doing various startup + chores (checking and mounting filesystems, starting daemons, + etc).</P +><P +>The exact list of things that <B +CLASS="COMMAND" +>init</B +> + does depends on which flavor it is; there are several to choose + from. <B +CLASS="COMMAND" +>init</B +> usually provides the concept of + <I +CLASS="GLOSSTERM" +>single user mode</I +>, in which no one can + log in and root uses a shell at the console; the usual mode is + called <I +CLASS="GLOSSTERM" +>multiuser mode</I +>. Some flavors + generalize this as <I +CLASS="GLOSSTERM" +>run levels</I +>; single + and multiuser modes are considered to be two run levels, and + there can be additional ones as well, for example, to run X on + the console.</P +><P +>In normal operation, <B +CLASS="COMMAND" +>init</B +> makes sure + <B +CLASS="COMMAND" +>getty</B +> is working (to allow users to log in), + and to adopt orphan processes (processes whose parent has died; in + UNIX <I +CLASS="EMPHASIS" +>all</I +> processes <I +CLASS="EMPHASIS" +>must</I +> + be in a single tree, so orphans must be adopted).</P +><P +>When the system is shut down, it is <B +CLASS="COMMAND" +>init</B +> + that is in charge of killing all other processes, unmounting all + filesystems and stopping the processor, along with anything else + it has been configured to do.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN117" +>Logins from terminals</A +></H2 +><P +>Logins from terminals (via serial lines) and the console + (when not running X) are provided by the <B +CLASS="COMMAND" +>getty</B +> + program. <B +CLASS="COMMAND" +>init</B +> starts a separate instance + of <B +CLASS="COMMAND" +>getty</B +> for each terminal for which + logins are to be allowed. <B +CLASS="COMMAND" +>getty</B +> reads + the username and runs the <B +CLASS="COMMAND" +>login</B +> program, + which reads the password. If the username and password + are correct, <B +CLASS="COMMAND" +>login</B +> runs the shell. + When the shell terminates, i.e., the user logs out, or when + <B +CLASS="COMMAND" +>login</B +> terminated because the username + and password didn't match, <B +CLASS="COMMAND" +>init</B +> notices + this and starts a new instance of <B +CLASS="COMMAND" +>getty</B +>. + The kernel has no notion of logins, this is all handled by the + system programs.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN129" +>Syslog</A +></H2 +><P +>The kernel and many system programs produce error, warning, and + other messages. It is often important that these messages can + be viewed later, even much later, so they should be written to + a file. The program doing this is <B +CLASS="COMMAND" +>syslog</B +>. It can be + configured to sort the messages to different files according to + writer or degree of importance. For example, kernel messages + are often directed to a separate file from the others, since + kernel messages are often more important and need to be read + regularly to spot problems.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN133" +>Periodic command execution: <B +CLASS="COMMAND" +>cron</B +> and +<B +CLASS="COMMAND" +>at</B +></A +></H2 +><P +>Both users and system administrators often need + to run commands periodically. For example, the system + administrator might want to run a command to clean the + directories with temporary files (<TT +CLASS="FILENAME" +>/tmp</TT +> + and <TT +CLASS="FILENAME" +>/var/tmp</TT +>) from old files, to keep the + disks from filling up, since not all programs clean up after + themselves correctly.</P +><P +>The <B +CLASS="COMMAND" +>cron</B +> service is set up to do this. + Each user has a <TT +CLASS="FILENAME" +>crontab</TT +> file, where he + lists the commands he wants to execute and the times they should + be executed. The <B +CLASS="COMMAND" +>cron</B +> daemon takes care of + starting the commands when specified.</P +><P +>The <B +CLASS="COMMAND" +>at</B +> service is similar to + <B +CLASS="COMMAND" +>cron</B +>, but it is once only: the command is + executed at the given time, but it is not repeated.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN147" +>Graphical user interface</A +></H2 +><P +>UNIX and Linux don't incorporate the user interface + into the kernel; instead, they let it be implemented by user + level programs. This applies for both text mode and graphical + environments.</P +><P +>This arrangement makes the system more flexible, but has + the disadvantage that it is simple to implement a different + user interface for each program, making the system harder to + learn.</P +><P +>The graphical environment primarily used with Linux + is called the X Window System (X for short). X also does + not implement a user interface; it only implements a window + system, i.e., tools with which a graphical user interface can + be implemented. The three most popular user interface styles + implemented over X are Athena, Motif, and Open Look.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN152" +>Networking</A +></H2 +><P +>Networking is the act of connecting two or more computers + so that they can communicate with each other. The actual methods + of connecting and communicating are slightly complicated, but + the end result is very useful.</P +><P +>UNIX operating systems have many networking features. + Most basic services (filesystems, printing, backups, etc) can + be done over the network. This can make system administration + easier, since it allows centralized administration, while + still reaping in the benefits of microcomputing and distributed + computing, such as lower costs and better fault tolerance.</P +><P +>However, this book merely glances at networking; see the + <I +CLASS="CITETITLE" +>Linux Network Administrators' Guide</I +> for + more information, including a basic description of how networks + operate.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN158" +>Network logins</A +></H2 +><P +>Network logins work a little differently than normal logins. + There is a separate physical serial line for each terminal via + which it is possible to log in. For each person logging in via + the network, there is a separate virtual network connection, + and there can be any number of these. + + <A +NAME="AEN161" +HREF="#FTN.AEN161" +>[1]</A +> + + It is therefore not possible to run a separate + <B +CLASS="COMMAND" +>getty</B +> for each possible virtual connection. + There are also several different ways to log in via a network, + <B +CLASS="COMMAND" +>telnet</B +> and <B +CLASS="COMMAND" +>rlogin</B +> being + the major ones in TCP/IP networks.</P +><P +>Network logins have, instead of a herd of + <B +CLASS="COMMAND" +>getty</B +>s, a single daemon per way of logging in + (<B +CLASS="COMMAND" +>telnet</B +> and <B +CLASS="COMMAND" +>rlogin</B +> have + separate daemons) that listens for all incoming login attempts. + When it notices one, it starts a new instance of itself to + handle that single attempt; the original instance continues to + listen for other attempts. The new instance works similarly + to <B +CLASS="COMMAND" +>getty</B +>.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN171" +>Network file systems</A +></H2 +><P +>One of the more useful things that can be done with + networking services is sharing files via a <I +CLASS="GLOSSTERM" +>network + file system</I +>. The one usually used is called the + Network File System, or NFS, developed by Sun.</P +><P +>With a network file system any file operations done by + a program on one machine are sent over the network to another + computer. This fools the program to think that all the files + on the other computer are actually on the computer the program + is running on. This makes information sharing extremely simple, + since it requires no modifications to programs.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN176" +>Mail</A +></H2 +><P +>Electronic mail is usually the most important method for + communicating via computer. An electronic letter is stored in a + file using a special format, and special mail programs are used + to send and read the letters.</P +><P +>Each user has an <I +CLASS="GLOSSTERM" +>incoming mailbox</I +> + (a file in the special format), where all new mail is stored. + When someone sends mail, the mail program locates the receiver's + mailbox and appends the letter to the mailbox file. If the + receiver's mailbox is in another machine, the letter is sent to + the other machine, which delivers it to the mailbox as it best + sees fit.</P +><P +>The mail system consists of many programs. The + delivery of mail to local or remote mailboxes is done by one + program (the <I +CLASS="GLOSSTERM" +>mail transfer agent</I +> or + <I +CLASS="GLOSSTERM" +>MTA</I +>, e.g., <B +CLASS="COMMAND" +>sendmail</B +> + or <B +CLASS="COMMAND" +>smail</B +>), while the programs users use + are many and varied (<I +CLASS="GLOSSTERM" +>mail user agent</I +> + or <I +CLASS="GLOSSTERM" +>MUA</I +>, e.g., <B +CLASS="COMMAND" +>pine</B +> + or <B +CLASS="COMMAND" +>elm</B +>). The mailboxes are usually stored + in <TT +CLASS="FILENAME" +>/var/spool/mail</TT +>.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN191" +>Printing</A +></H2 +><P +>Only one person can use a printer at one time, but it is + uneconomical not to share printers between users. The printer is + therefore managed by software that implements a <I +CLASS="GLOSSTERM" +>print + queue</I +>: all print jobs are put into a queue and + whenever the printer is done with one job, the next one is sent + to it automatically. This relieves the users from organizing + the print queue and fighting over control of the printer. + + <A +NAME="AEN195" +HREF="#FTN.AEN195" +>[2]</A +> + + </P +><P +>The print queue software also <I +CLASS="GLOSSTERM" +>spools</I +> + the printouts on disk, i.e., the text is kept in a file while + the job is in the queue. This allows an application program + to spit out the print jobs quickly to the print queue software; + the application does not have to wait until the job is actually + printed to continue. This is really convenient, since it + allows one to print out one version, and not have to wait for + it to be printed before one can make a completely revised new + version.</P +></DIV +><DIV +CLASS="SECT2" +><H2 +CLASS="SECT2" +><A +NAME="AEN200" +>The filesystem layout</A +></H2 +><P +>The filesystem is divided into many parts; + usually along the lines of a root filesystem with + <TT +CLASS="FILENAME" +>/bin</TT +>, <TT +CLASS="FILENAME" +>/lib</TT +>, + <TT +CLASS="FILENAME" +>/etc</TT +>, <TT +CLASS="FILENAME" +>/dev</TT +>, and + a few others; a <TT +CLASS="FILENAME" +>/usr</TT +> filesystem with + programs and unchanging data; a <TT +CLASS="FILENAME" +>/var</TT +> + filesystem with changing data (such as log files); and a + <TT +CLASS="FILENAME" +>/home</TT +> filesystem for everyone's personal + files. Depending on the hardware configuration and the decisions + of the system administrator, the division can be different; + it can even be all in one filesystem.</P +><P +><A +HREF="c212.html" +>Chapter 3</A +> describes the filesystem + layout in some detail; the Linux Filesystem Standard covers it + in somewhat more detail.</P +></DIV +></DIV +><H3 +>Notes</H3 +><TABLE +BORDER="0" +CLASS="FOOTNOTES" +WIDTH="100%" +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN161" +HREF="x94.html#AEN161" +>[1]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Well, at least there can be many. Network + bandwidth still being a scarce resource, there is still + some practical upper limit to the number of concurrent + logins via one network connection. </P +></TD +></TR +><TR +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="5%" +><A +NAME="FTN.AEN195" +HREF="x94.html#AEN195" +>[2]</A +></TD +><TD +ALIGN="LEFT" +VALIGN="TOP" +WIDTH="95%" +><P +>Instead, they form a new queue + <I +CLASS="EMPHASIS" +>at</I +> the printer, waiting for their + printouts, since no one ever seems to be able to get the + queue software to know exactly when anyone's printout is + really finished. This is a great boost to intra-office + social relations.</P +></TD +></TR +></TABLE +><DIV +CLASS="NAVFOOTER" +><HR +ALIGN="LEFT" +WIDTH="100%"><TABLE +WIDTH="100%" +BORDER="0" +CELLPADDING="0" +CELLSPACING="0" +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +><A +HREF="x83.html" +>Prev</A +></TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="book1.html" +>Home</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +><A +HREF="c212.html" +>Next</A +></TD +></TR +><TR +><TD +WIDTH="33%" +ALIGN="left" +VALIGN="top" +>Important parts of the kernel</TD +><TD +WIDTH="34%" +ALIGN="center" +VALIGN="top" +><A +HREF="c63.html" +>Up</A +></TD +><TD +WIDTH="33%" +ALIGN="right" +VALIGN="top" +>Overview of the Directory Tree</TD +></TR +></TABLE +></DIV +></BODY +></HTML +>
\ No newline at end of file diff --git a/sag-0.6.1-www/sag-0.6.1.pdf b/sag-0.6.1-www/sag-0.6.1.pdf Binary files differnew file mode 100644 index 0000000..d3ba31f --- /dev/null +++ b/sag-0.6.1-www/sag-0.6.1.pdf diff --git a/sag-0.6.1-www/sag-0.6/contents_motif.gif b/sag-0.6.1-www/sag-0.6/contents_motif.gif Binary files differnew file mode 100644 index 0000000..7b3c904 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/contents_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/cross_ref_motif.gif b/sag-0.6.1-www/sag-0.6/cross_ref_motif.gif Binary files differnew file mode 100644 index 0000000..4c074e1 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/cross_ref_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/foot_motif.gif b/sag-0.6.1-www/sag-0.6/foot_motif.gif Binary files differnew file mode 100644 index 0000000..f29222a --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/foot_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/img4.gif b/sag-0.6.1-www/sag-0.6/img4.gif Binary files differnew file mode 100644 index 0000000..47832e3 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/img4.gif diff --git a/sag-0.6.1-www/sag-0.6/index_motif.gif b/sag-0.6.1-www/sag-0.6/index_motif.gif Binary files differnew file mode 100644 index 0000000..b9b3108 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/index_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/next_group_motif.gif b/sag-0.6.1-www/sag-0.6/next_group_motif.gif Binary files differnew file mode 100644 index 0000000..833af4d --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/next_group_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/next_motif.gif b/sag-0.6.1-www/sag-0.6/next_motif.gif Binary files differnew file mode 100644 index 0000000..7a2dbe9 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/next_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/node30.html b/sag-0.6.1-www/sag-0.6/node30.html new file mode 100644 index 0000000..49dc7ab --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/node30.html @@ -0,0 +1,150 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --> +<HTML> +<HEAD> +<TITLE>Hard disks</TITLE> +<META NAME="description" CONTENT="Hard disks"> +<META NAME="keywords" CONTENT="sag"> +<META NAME="resource-type" CONTENT="document"> +<META NAME="distribution" CONTENT="global"> +<LINK REL=STYLESHEET HREF="sag.css"> +</HEAD> +<BODY LANG="EN" > + <A NAME="tex2html692" HREF="node31.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html690" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html684" HREF="node29.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html694" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html695" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html693" HREF="node31.html">Floppies</A> +<B>Up:</B> <A NAME="tex2html691" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html685" HREF="node29.html">Two kinds of devices</A> +<BR> <P> +<H1><A NAME="SECTION00520000000000000000">Hard disks</A></H1> +<P> + This subsection introduces terminology related to hard disks. + If you already know the terms and concepts, you can skip this + subsection. +<P> + See figure <A HREF="node30.html#fighdschematic">4.1</A> for a schematic picture of the + important parts in a hard disk. A hard disk consists of one or + more circular <b>platters</b>,<A NAME="tex2html11" HREF="footnode.html#1028"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> of which either or both <b>surfaces</b> are coated with a + magnetic substance used for recording the data. For each + surface, there is a <b>read-write head</b> that examines or + alters the recorded data. The platters rotate on a common axis; + a typical rotation speed is 3600 rotations per minute, + although high-performance hard disks have higher speeds. The + heads move along the radius of the platters; this movement + combined with the rotation of the platters allows the head to + access all parts of the surfaces. +<P> + The processor (CPU) and the actual disk communicate through + a <b>disk controller</b>. This relieves the rest of the computer + from knowing how to use the drive, since the controllers for + different types of disks can be made to use the same interface towards + the rest of the computer. Therefore, the computer can say just + ``hey disk, gimme what I want'', instead of a long and complex + series of electric signals to move the head to the proper location + and waiting for the correct position to come under the head + and doing all the + other unpleasant stuff necessary. (In reality, the interface + to the controller is still complex, but much less so than it would + otherwise be.) The controller can also do some other stuff, + such as caching, or automatic bad sector replacement. +<P> + The above is usually all one needs to understand about the + hardware. There is also a bunch of other stuff, such as the + motor that rotates the platters and moves the heads, and the + electronics that control the operation of the mechanical + parts, but that is mostly not relevant for understanding the + working principle of a hard disk. +<P> + The surfaces are usually divided into concentric rings, called + <b>tracks</b>, and these in turn are divided into <b>sectors</b>. + This division is used to specify locations + on the hard disk and to allocate disk space to files. To find + a given place on the hard disk, one might say ``surface 3, + track 5, sector 7''. Usually the number of sectors is the + same for all tracks, but some hard disks put more sectors in + outer tracks (all sectors are of the same physical size, so + more of them fit in the longer outer tracks). Typically, a + sector will hold 512 bytes of data. The disk itself can't + handle smaller amounts of data than one sector. +<P> + <P><A NAME="1038"> </A><A NAME="fighdschematic"> </A><IMG WIDTH=367 HEIGHT=410 ALIGN=BOTTOM ALT="figure1034" SRC="img4.gif"><BR> +<STRONG>Figure 4.1:</STRONG> A schematic picture of a hard disk.<BR> +<P> +<P> + Each surface is divided into tracks (and sectors) in the same + way. This means that when the head for one surface is on a + track, the heads for the other surfaces are also on the + corresponding tracks. All the corresponding tracks taken + together are called a <b>cylinder</b>. It takes time to move + the heads from one track (cylinder) to another, so by placing + the data that is often accessed together (say, a file) so that + it is within one cylinder, it is not necessary to move the + heads to read all of it. This improves performance. It is + not always possible to place files like this; files that are + stored in several places on the disk are called <b>fragmented</b>. +<P> + The number of surfaces (or heads, which is the same thing), + cylinders, and sectors vary a lot; the specification of the + number of each is called the <b>geometry</b> of a hard disk. The + geometry is usually stored in a special, battery-powered memory + location called the <b>CMOS RAM</b>, from where the operating + system can fetch it during bootup or driver initialization. +<P> + Unfortunately, the BIOS<A NAME="tex2html12" HREF="footnode.html#1045"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A> has a design limitation, which makes it + impossible to specify a track number that is larger than 1024 in + the CMOS RAM, + which is too little for a large hard disk. To overcome this, + the hard disk controller lies about the geometry, and + <b>translates the addresses</b> given by the computer into something + that fits reality. For example, a hard disk might have 8 heads, + 2048 tracks, and 35 sectors per track<A NAME="tex2html13" HREF="footnode.html#1047"><IMG ALIGN=BOTTOM ALT="gif" SRC="./foot_motif.gif"></A>. Its controller could lie to the + computer and claim that it has 16 heads, 1024 tracks, and 35 + sectors per track, thus not exceeding the limit on tracks, and + translates the address that the computer gives it by halving the + head number, and doubling the track number. The math can be + more complicated in reality, because the numbers are not as nice + as here (but again, the details are not relevant for + understanding the principle). This translation distorts the + operating system's view of how the disk is organized, thus making it + impractical to use the all-data-on-one-cylinder trick to boost + performance. +<P> + The translation is only a problem for IDE disks. SCSI disks + use a sequential sector number (i.e., the controller translates + a sequential sector number to a head, cylinder, and sector + triplet), and a completely different method for the CPU to talk + with the controller, so they are insulated from the problem. + Note, however, that the computer might not know the real geometry + of an SCSI disk either. +<P> + Since Linux often will not know the real geometry of a disk, + its filesystems don't even try to keep files within a single cylinder. + Instead, it tries to assign sequentially numbered sectors to + files, which almost always gives similar performance. The issue + is further complicated by on-controller caches, and automatic + prefetches done by the controller. +<P> + Each hard disk is represented by a separate device file. + There can (usually) be only two or four IDE hard disks. + These are known as <tt>/dev/hda</tt><A NAME="1460"> </A>, <tt>/dev/hdb</tt><A NAME="1462"> </A>, + <tt>/dev/hdc</tt><A NAME="1464"> </A>, and <tt>/dev/hdd</tt><A NAME="1466"> </A>, respectively. SCSI + hard disks are known as <tt>/dev/sda</tt><A NAME="1468"> </A>, <tt>/dev/sdb</tt><A NAME="1470"> </A>, and + so on. Similar naming conventions exist for other hard + disk types; see [<A HREF="node113.html#device-list">Anv</A>] for more information. + Note that the device files for the hard disks give access + to the entire disk, with no regard to partitions (which + will be discussed below), and it's easy to mess up the + partitions or the data in them if you aren't careful. + The disks' device files are usually used only to get + access to the master boot record (which will also be + discussed below). +<P> +<HR><A NAME="tex2html692" HREF="node31.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="./next_motif.gif"></A> <A NAME="tex2html690" HREF="node28.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="./up_motif.gif"></A> <A NAME="tex2html684" HREF="node29.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="./previous_motif.gif"></A> <A NAME="tex2html694" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="./contents_motif.gif"></A> <A NAME="tex2html695" HREF="node114.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="./index_motif.gif"></A> <BR> +<B> Next:</B> <A NAME="tex2html693" HREF="node31.html">Floppies</A> +<B>Up:</B> <A NAME="tex2html691" HREF="node28.html">Using Disks and Other </A> +<B> Previous:</B> <A NAME="tex2html685" HREF="node29.html">Two kinds of devices</A> +<P><ADDRESS> +<I>Lars Wirzenius <BR> +Sat Nov 15 02:32:11 EET 1997</I> +</ADDRESS> +</BODY> +</HTML> diff --git a/sag-0.6.1-www/sag-0.6/previous_group_motif.gif b/sag-0.6.1-www/sag-0.6/previous_group_motif.gif Binary files differnew file mode 100644 index 0000000..03ea0dc --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/previous_group_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/previous_motif.gif b/sag-0.6.1-www/sag-0.6/previous_motif.gif Binary files differnew file mode 100644 index 0000000..aef90f1 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/previous_motif.gif diff --git a/sag-0.6.1-www/sag-0.6/sag.css b/sag-0.6.1-www/sag-0.6/sag.css new file mode 100644 index 0000000..3970428 --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/sag.css @@ -0,0 +1,10 @@ + +SMALL.TINY { font-size : xx-small } +SMALL.SCRIPTSIZE { font-size : xx-small } +SMALL.FOOTNOTESIZE { font-size : x-small } +SMALL.SMALL { font-size : small } +BIG.LARGE { font-size : large } +BIG.XLARGE { font-size : x-large } +BIG.XXLARGE { font-size : xx-large } +BIG.HUGE { font-size : xx-large } +BIG.XHUGE { font-size : xx-large } diff --git a/sag-0.6.1-www/sag-0.6/up_motif.gif b/sag-0.6.1-www/sag-0.6/up_motif.gif Binary files differnew file mode 100644 index 0000000..3d1aebf --- /dev/null +++ b/sag-0.6.1-www/sag-0.6/up_motif.gif diff --git a/sag-0.6.1-www/sysadmin-guide-0.6.1-ANNOUNCE b/sag-0.6.1-www/sysadmin-guide-0.6.1-ANNOUNCE new file mode 100644 index 0000000..1440afa --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide-0.6.1-ANNOUNCE @@ -0,0 +1,74 @@ +Lars Wirzenius + loudly resents + + a Linux Documentation Project + production + + of the least selling book + by the same name + + the Linux System Administrators' Guide 0.6.1 + just when you thought your system was safe + + starring Super User as Mr. Root + + introducing Lasu as Luser + + special effects by Don Knuth and Leslie Lamport + + music by Crash and Burn + + coming soon to an http://www.iki.fi/liw/linux/sag/ near you + + + +Yes, it's that time of the year again, when Lasu thinks he's an +author! The new version features a conversion to DocBook (instead of +LaTeX), with lots of exciting formatting and spelling bugs for readers +to report, and Debian binary packages! Get your copy today, while the +supplies last! Two for the price of one! No system crash is complete +without the SAG! + + + -x-X-x- + +Table of contents: + + * Introduction + * Overview of a Linux System + * Overview of the Directory Tree + * Using Disks and Other Storage Media + * Allocating disk space + * Memory Management + * Boots And Shutdowns + * init + * Logging In And Out + * Managing user accounts + * Backups + * Keeping Time + * Measuring Holes + * Glossary (DRAFT) + * References + * Index + +The files are: + + sysadmin-guide-0.6.1.tar.gz source code + sysadmin-guide-0.6.1-html.tar.gz HTML + sysadmin-guide-0.6.1.ps.gz Postscript + +Most people will probably only need to download the PS version. +It is all you need if you have a PS printer. (Beware, though: I haven't +tried printing this. Waste of dead trees to test anything.) + +No text or DVI version is available, I do not have the time to produce +one. Don't ask me to. (I'll make one for 1.0.) + +The SAG home page is still at <URL:http://www.iki.fi/liw/linux/sag/>. +All the files are there, soon even an unpacked, browsable version of +the HTML version. + +As usual, feedback is more than welcome. + +I plan to to call the next version 1.0. It'll follow the grand tradition +of version 1.0 being _almost_ useful, but still crashing your system. :) diff --git a/sag-0.6.1-www/sysadmin-guide-0.6.1-html.tar.gz b/sag-0.6.1-www/sysadmin-guide-0.6.1-html.tar.gz Binary files differnew file mode 100644 index 0000000..ddcd298 --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide-0.6.1-html.tar.gz diff --git a/sag-0.6.1-www/sysadmin-guide-0.6.1.ps.gz b/sag-0.6.1-www/sysadmin-guide-0.6.1.ps.gz Binary files differnew file mode 100644 index 0000000..8921e1f --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide-0.6.1.ps.gz diff --git a/sag-0.6.1-www/sysadmin-guide_0.6.1.dsc b/sag-0.6.1-www/sysadmin-guide_0.6.1.dsc new file mode 100644 index 0000000..8225a58 --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide_0.6.1.dsc @@ -0,0 +1,21 @@ +-----BEGIN PGP SIGNED MESSAGE----- + +Source: sysadmin-guide +Version: 0.6.1 +Binary: sysadmin-guide +Maintainer: Lars Wirzenius <liw@iki.fi> +Architecture: all +Standards-Version: 2.4.1.2 +Files: + 261dd83b2f1363294935e43cd54d0916 87773 sysadmin-guide_0.6.1.tar.gz + +-----BEGIN PGP SIGNATURE----- +Version: 2.6.3ia +Charset: noconv + +iQCVAwUBNr8ogIQRll5MupLRAQGwXQQA2KaI12zuVhah70Tflft4gZZsZCNsb4UU +T8jo2iOxyqZ0vQ1KVLGAT9zutJlWngCZHYBCOaDlx87Cm9hvkQtQLfA2N+Kz/+9c +VTlxWaUpUKO7sKK1XbG4mrMb18xUjY+342v1emNIKF3w0DtB4lzfSj5WBOMrxhvY +sDTYXWSMSIc= +=cLmw +-----END PGP SIGNATURE----- diff --git a/sag-0.6.1-www/sysadmin-guide_0.6.1.tar.gz b/sag-0.6.1-www/sysadmin-guide_0.6.1.tar.gz Binary files differnew file mode 100644 index 0000000..80129bd --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide_0.6.1.tar.gz diff --git a/sag-0.6.1-www/sysadmin-guide_0.6.1_all.deb b/sag-0.6.1-www/sysadmin-guide_0.6.1_all.deb Binary files differnew file mode 100644 index 0000000..ad91f7e --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide_0.6.1_all.deb diff --git a/sag-0.6.1-www/sysadmin-guide_0.6.1_i386.changes b/sag-0.6.1-www/sysadmin-guide_0.6.1_i386.changes new file mode 100644 index 0000000..0cf39e5 --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide_0.6.1_i386.changes @@ -0,0 +1,32 @@ +-----BEGIN PGP SIGNED MESSAGE----- + +Format: 1.5 +Date: Mon, 8 Feb 1999 19:36:57 +0200 +Source: sysadmin-guide +Binary: sysadmin-guide +Architecture: source all +Version: 0.6.1 +Distribution: unstable +Urgency: low +Maintainer: Lars Wirzenius <liw@iki.fi> +Description: + sysadmin-guide - The Linux System Administrators' Guide +Changes: + sysadmin-guide (0.6.1) unstable; urgency=low + . + * First Debian release. +Files: + 9e26dc8ab478401cb16018e66899aba0 565 editor optional sysadmin-guide_0.6.1.dsc + 261dd83b2f1363294935e43cd54d0916 87773 editor optional sysadmin-guide_0.6.1.tar.gz + 3a821aa07d4950ec8051cb51d51f6cf3 124420 editor optional sysadmin-guide_0.6.1_all.deb + +-----BEGIN PGP SIGNATURE----- +Version: 2.6.3ia +Charset: noconv + +iQCVAwUBNr8ohYQRll5MupLRAQEurgP/Uue9hU2rpE87Gvb0+hlILXgI5AcgtccT +Lk15t2pS7tgvc1omCQ22midvnYMyRf+svNILDFx0PkffPj9l5epqZDi72FxUJhGK +lG9fUQsgGAn4lZqs3d+xTF5k/YR7LRsjMl7Iy9DDEDOtbkDTdntDJtRU7CJcQiTv ++DK+OiifMp4= +=0Kv8 +-----END PGP SIGNATURE----- diff --git a/sag-0.6.1-www/sysadmin-guide_0.6.1_i386.upload b/sag-0.6.1-www/sysadmin-guide_0.6.1_i386.upload new file mode 100644 index 0000000..bb96602 --- /dev/null +++ b/sag-0.6.1-www/sysadmin-guide_0.6.1_i386.upload @@ -0,0 +1,5 @@ +u sysadmin-guide_0.6.1.tar.gz chiark Mon Feb 8 20:13:03 1999 +u sysadmin-guide_0.6.1.dsc chiark Mon Feb 8 20:13:06 1999 +u sysadmin-guide_0.6.1_all.deb chiark Mon Feb 8 20:13:23 1999 +u sysadmin-guide_0.6.1_i386.changes chiark Mon Feb 8 20:13:27 1999 +a sysadmin-guide_0.6.1_i386.changes debian-devel-changes@lists.debian.org Mon Feb 8 20:13:27 1999 |