Preface  
 
  This book is principally about the SuSE Linux distribution, but it also covers a lot issues of Linux systems in general. Linux distributions in general share most of their functionality with each other. There are only very few, very specialized distributions which have their own way of administration and may need more time to get used to then the vast majority. Usually the switch from one distribution to another is not very painful, most concepts are alike and only a few things differ. But to get the optimal performance out of your Linux box, its good to know about all little tricks the distribution maker build into the system.
 
I worked for SuSE for about five years and experienced the excitement around Linux from the early beginnings, up to the Linux boom we see happening at the moment. In this time I was part of several teams within the company. I helped developing the distribution, wrote chapters for the first versions of the SuSE manual, did support for newcomers and commercial users, and was responsible for SuSE's internal network and the public accessible servers.
 
During this time, I learned that documentation is a big problem. There are manuals and howtos for specific tasks. There are books available for special issues and in the last couple of years quite a lot of newcomer manuals have been published. The SuSE manual is intended to help the user installing the distribution itself and can also be sorted into the newcomer category.
 
What I was always missing is the intermediate level. Focused on the advanced user, who nows how to run a Linux system and who likes to understand all the little issues connected to the distribution he's using. And this is what this book tries to be, an advanced users manual. If you are looking for an introduction into SuSE Linux and you never used Linux before, this is the wrong book for you. There are a couple of other titles available, who will do you a better service. If you are looking for detailed descriptions of single services, this is also the wrong place to look, get one of the specialized titles and you'll probably find the information you are looking for. This book will give you a good understanding of SuSE Linux as a system. It talks about all the little differences, that set SuSE apart from the other distributions. It also talks about general issues like file systems, system boot, network services, security and development of RPM packages. But always focused on the SuSE distribution.
 
This book is for you, if you are using SuSE Linux for a little while and you like to dig deeper into the system. Or if you are a system administrator using SuSE Linux machines in a professional environment. This book is also helpful for software developers, who want to know how to make the best use of the SuSE Linux system.
 
When IDG books asked me if I'd like to write a book about SuSE Linux, it was very clear to me that it has to be the book that contains all the answers to the questions I heard so often while I was working for SuSE. I found Terrehon Bowden as an excellent editor. As I'm not a native English speaker, there was no way for me to write a book in English on my own. Terrehon did an excellent job filling this gap and translating my gengish into actual English language.
 
I hope you enjoy reading the book and you find the answers you are looking for.
 
Bodo Bauer, September 1999
 
 Organization of the Book
 

SuSE Linux Guide for Geeks has 35 chapters, organized in six parts and four appendixes:
 

 Part 1: Files and File Systems
 

Here you get the basics about Linux file systems and a tour of the system. It tells you where SuSE stores it's files and tries to explain why it is this way. This part also gives a fairly deep view into the /proc file system. The chapter talking about the /proc file system became part of the Linux kernel sources, which made us very happy and showed us that we've are not too far from the truth in this part.
 

 Part 2: The Boot Process
 

An explanation of what is going on in your computer from the moment you hit the power on key until you get the login:-prompt. It explains the principles of booting a Linux system and how to customize the SuSE boot
 

 Part 3: System Setup
 

This section discusses how to set up services in your system. It has a strong network focused, since network services are becoming more and more important, especially in the Unix environment. But it also explains certain aspects of system maintenance and has some comments on security issues.
 

 Part 4: System Security
 

Here we dive into security on Linux systems. You get an basic overview and then aspects of host and network security are discussed. Finally the SuSE firewall is explained, such as how to set it up and how to use it for masquerading.
 

 Part 5: Customized Installations
 

How to set up an installation server, diskless clients and how to use a SuSE Linux system as X-terminal.
 

 Part 6: Package Development
 

This part talks mostly about RPM. You learn not only how to use RPM to install and maintain packages, but also how to compile the source RPMs that are part of the Linux distribution. The last chapter finally explains how to create a RPM package for SuSE Linux yourself.
 

 Appendix A: Linux Allocated Devices
 

Here you'll find a list of all devices supported by the Linux /dev file system. It's basically a selection of tables listing the major and minor device numbers.
 

 Appendix B: GNU General Public License
 

As the majority of software you use falls under this license, you should have a printed copy of it, which you can find here.
 

 Appendix C: GNU Library Public License
 

A slightly modified version of the GPL, focused on libraries and covering the special issues which arise when using 'free' libraries with 'non-free' software.
 

 Appendix D: Open Publication License
 

This is the license under which this book is covered.
 

 Conventions used in This Book Book
 

SuSE Linux Guide for Geeks uses a simple notational style. All listings, filenames, function names, commands, user names, variable names, URLs and keywords are set in mono space font for ease of reading. Terms and concepts are set in italic at their first occurrence. The italic font is also used for variable parts of commands when they appear in the text, such as parameters or values, like in 'vi filename', to separate the actual command from it's argument.
 
Text you are directed to type usually appears in paragraphs on its own. There are commands you need to issue as user root. This is indicated by a hash sign (#) on the printed command line:
 

 
# echo "Type this as root" 
 
 
Commands that can be issued as any user are prefixed by a 'greater than' (>) sign:
 
 
> echo "You can do this as any user" 
 
 
This convention reflects what you see on the command line of your terminal, when you actually issue the command. References to man pages are often postfixed with the man page section they belong to. This is important, as many man-pages are in more than one section and have different contents depending on where you look. If you see something like printf(1) it means that you find the referred information, by using the command
 
 
> man 1 printf 
 
 
If you look up printf in section 3, you'll find something different.
 
Each chapter starts with a short list of all the things you'll find in that chapter. At the end of each chapter, you'll find a short summary of the covered topics.
 
We use icons to emphasize certain points and to make sure you get the important facts even when glancing over the text. Following is what we had in mind when we pointed paragraph out by putting an icon on it's side:
 
NOTE The Note icon marks important facts, that are easily forgotten. It is also used to point out where defaults are wrong and if you don't pay attention, the inferred task may not work out as expected.
 
 
TIP The Tip icon marks interesting facts and shortcuts you can try. It usually makes your job easier if you follow these instructions.
 
 
XREF The Cross Reference icon marks text where pointers to more information within the book are given.
 
 
CAUTION The Caution icon marks potential pitfalls and tasks where you should be very careful when trying the described method. Topics marked with this icon are dangerous and may crash your system, or open your system to security risks.
 
 
 The Open Publication License
 

 Why is this book under this license?
 

To be done
 

 What does it mean?
 

To be done
 

 Where to find the online version?
 

To be done
 

 How to contribute fixes and additions?
 

To be done
 

 Acknowledgments
 

 
* Alan Cox and the kernel team for help on the /proc chapter
* Werner Almesberger for the LILO docs
* Misc. HOWTO writers for their howtos
* Linus for Linux
* Donald Knuth for TeX
* RMS for Emacs
* SuSE for the distribution
* The Linux community for it's great work
 
 
To be completed...
 

Copyright (c) 1999 by Terrehon Bowden and Bodo Bauer
To contact the author please sent mail to bb@bb-zone.com