(function(a,e,f,g,b,c,d){a.GoogleAnalyticsObject=b;a[b]=a[b]||function(){(a[b].q=a[b].q||[]).push(arguments)};a[b].l=1*new Date;c=e.createElement(f);d=e.getElementsByTagName(f)[0];c.async=1;c.src=g;d.parentNode.insertBefore(c,d)})(window,document,"script","https://www.google-analytics.com/analytics.js","ga");ga("create","UA-732153-7","auto",{allowLinker:!0,siteSpeedSampleRate:10});ga("set","transport","beacon");ga("set","anonymizeIp",!0);ga("require","linker"); ga("linker:autoLink","askapache.com askapache.net htaccess.io htaccesselite.com askapache.info htaccess.guru".split(" "),!0);ga("send","pageview"); CLASS="book" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" >

Pocket Linux Guide

David Horton

Revision History
Revision 3.12005-04-09Revised by: DH
Minor clarifications and spelling corrections.
Revision 3.02004-11-02Revised by: DH
Changed bootloader to GRUB rather than LILO. Updated versions on all source code packages. Made minor clarifications to some shell commands and scripts.
Revision 2.12004-02-18Revised by: DH
Corrected typos. Changed resource site hosting to SourceForge. Added appendix B to include the GNU Free Documentation License as part of this document.
Revision 2.02003-11-08Revised by: DH
Updated to use GNU coreutils in place of fileutils, sh-utils and textutils. Updated version numbers on many source code packages. Introduced Freshmeat as a resource for finding source code. Changed /etc/mtab to a real file rather than using a symlink to /proc/mounts. Corrected local_fs script errors. Updated email address.
Revision 1.22003-05-31Revised by: DH
Corrected errors in "strip -o library" commands.
Revision 1.12003-05-21Revised by: DH
Bug fixes, typo corrections and improved XML markup.
Revision 1.02003-02-17Revised by: DH
Initial Release, reviewed by LDP.

The Pocket Linux Guide is for anyone interested in learning the techniques of building a GNU/Linux system from source code. The guide is structured as a project that builds a small diskette-based GNU/Linux system called Pocket Linux. Each chapter explores a small piece of the overall system explaining how it works, why it is needed and how to build it. After completing the Pocket Linux project, readers should possess an enhanced knowledge of what makes GNU/Linux systems work as well as the confidence to explore larger, more complex source-code-only projects.


Table of Contents
Legal Information
1. Copyright and License
2. Disclaimer
Introduction
1. About Pocket Linux
2. Prerequisite Skills
3. Project Format
4. Help & Support
5. Feedback
1. Project Initiation
1.1. A Brief History of GNU/Linux
1.2. The Goal of Pocket Linux
1.3. Working Within The Constraints
2. A Simple Prototype
2.1. Analysis
2.2. Design
2.3. Construction
2.4. Implementation
3. Saving Space
3.1. Analysis
3.2. Design
3.3. Construction
3.4. Implementation
4. Some Basic Utilities
4.1. Analysis
4.2. Design
4.3. Construction
4.4. Implementation
5. Checking and Mounting Disks
5.1. Analysis
5.2. Design
5.3. Construction
5.4. Implementation
6. Automating Startup & Shutdown
6.1. Analysis
6.2. Design
6.3. Construction
6.4. Implementation
7. Enabling Multiple Users
7.1. Analysis
7.2. Design
7.3. Construction
7.4. Implementation
8. Filling in the Gaps
8.1. Analysis
8.2. Design
8.3. Construction
8.4. Implementation
9. Project Wrap Up
9.1. Celebrating Accomplishments
9.2. Planning Next Steps
A. Hosting Applications
A.1. Analysis
A.2. Design
A.3. Construction
A.4. Implementation
B. GNU Free Documentation License
B.1. PREAMBLE
B.2. APPLICABILITY AND DEFINITIONS
B.3. VERBATIM COPYING
B.4. COPYING IN QUANTITY
B.5. MODIFICATIONS
B.6. COMBINING DOCUMENTS
B.7. COLLECTIONS OF DOCUMENTS
B.8. AGGREGATION WITH INDEPENDENT WORKS
B.9. TRANSLATION
B.10. TERMINATION
B.11. FUTURE REVISIONS OF THIS LICENSE
B.12. ADDENDUM: How to use this License for your documents