%\documentclass[a4paper,11pt]{article}
\documentclass[landscape,11pt]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage{palatino} %% better for pdflatex
\usepackage{xspace,path}
\usepackage{graphicx}                               % graphics

\graphicspath{{pics/}}


% Detect, if we are using pdftex to create pdf output. The following
% code should better be in a LaTeX package...
\makeatletter
\newif\ifpdfoutput
\@ifundefined{pdfoutput}%
  {\let\pdfoutput\@undefined}%
  {\ifcase\pdfoutput
     \let\pdfoutput\@undefined
   \else
     \pdfoutputtrue
  }%
\makeatother


\oddsidemargin0in
\evensidemargin0in
\marginparwidth0in
\marginparsep0in
\topmargin0in
\headheight0in
\headsep0in
\topskip0in
\parindent0mm
%%\parskip0mm
%\textheight22cm



\setlength{\fboxsep}{8pt}
\newlength{\myfigwidth}
\gdef\narrowitem{\setlength{\topsep}{0ex}\setlength{\itemsep}{0ex}}


% \begin{latexonly}

%% \usepackage{geometry,mflogo,xspace,texnames,path,booktabs,bm}
\newcommand{\psext}{ps}
\newcommand{\pdfext}{pdf}
\newcommand{\dviext}{dvi}

\ifpdfoutput
  \usepackage[backref,colorlinks,urlcolor=blue,citecolor=darkgreen,bookmarks]{hyperref}
  \usepackage{thumbpdf}
  \DeclareGraphicsExtensions{.png,.pdf}

  % \let\docext=\pdfext
  %

  \pdfinfo{
     /Title    (Debian-Schnelleinstieg)
     /Author   (René Scholz)
     /Subject  (Debian)
     /Keywords (Debian, Linux)
  }


  %\advance\textheight by 1in
  %\pdfpagewidth=29cm
  %\pdfpageheight=15cm
  \textheight15cm
  \textwidth23cm
  \footskip.7in
\else
  \DeclareGraphicsExtensions{.eps.gz,.eps}

  % \let\docext=\dviext
  \usepackage[bookmarks]{hyperref}
  %
  \advance\textheight by 1in
  \textwidth15.5cm
  \footskip.7in
\fi

% \end{latexonly}

\usepackage{html, htmllist}

\htmlbody[bgcolor=#FFE4B5]

\newcommand{\zb}        {z.\,B.\xspace}
\newcommand{\sa}        {s.\,a.\xspace}
\newcommand{\ua}        {u.\,a.\xspace}
\newcommand{\DD}	{Debian-Distribution\xspace}
\newcommand{\V}		{Verzeichnis\xspace}
\newcommand{\Link}	{\htmladdnormallink}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% 1. Verzeichnisstruktur vor allem in /etc
% 2. Konfigurationstools
% 3. Installationsvorgang
% 4. Support
% 5. Updatemoeglichkeiten
% 6. evl. Kernelaenderungen extra fuer eine Distribution
% FSS



\title{\sffamily\bfseries\huge Debian -- Schnelleinstieg\\{\large v. 1.2}}
\author{\sffamily\htmladdnormallink{René Scholz}{http://www.thur.de/~Voland/} -- Voland@Jena.Thur.de}
\date{2001-05-23}

\begin{document}

\maketitle

% \setlength{\myfigwidth}{.8\linewidth}
% \advance\myfigwidth by -2\fboxsep


\begin{abstract}
  Dieses Dokument soll einen kurzen und allgemeinen Überblick über die
  Debian-Linuxdistribution verschaffen.

  Der Leser sollte schon einige Erfahrung mit Unix haben, da hier nur
  auf die Besonderheiten von Debian eingegangen werden soll.

  Hierbei wird auf die Version 2.2 Bezug genommen (\emph{Potato}).
\end{abstract}


\bigskip



\section{Einführung}

\begin{itemize}

\item
\textbf{Debian} ist eine Open Source Linux-Distribution, die von vielen
freiwilligen Entwicklern im Netz zusammengestellt und gepflegt wird.

\item
Die Debian-Gemeinschaft hat den
\htmladdnormallink{Gesellschaftsvertrag}{http://www.debian.de/social_contract}
aufgestellt.


\item
Die Entwicklung der \DD wird durch verschiedene
\htmladdnormallink{Richtlinien und Policies}{http://www.debian.de/devel/}
gesteuert.

\item
Die GPL erlaubt die Installation von Debian GNU/Linux auf beliebig vielen
Computern.
Man kann auch die ISO-Images der Debian-CDs von den FTP-Servern herunterladen
(enthalten keine Non-Free Pakete).


\item
Für jedes der etwa 4000 Pakete gibt es einen zuständigen Maintainer.

\item
Jeder Benutzer kann die \DD verbessern, indem er gefundene Bugs in die
\htmladdnormallink{Fehlerdatenbank}
  {http://www.debian.de/Bugs/} einträgt.

\item
Auf den Seiten des
\htmladdnormallink{Debian Documentation Projects}{http://www.debian.de/doc/ddp}
gibt es umfangreiche Dokumentationen wie Handbücher, Tutorials, Manuals usw.



\item
Die folgenden Architekturen werden in der Release 2.2 unterstützt:

\begin{itemize}
  \item    Alpha
  \item    ARM
  \item    Intel x86
  \item    Motorola 680x0
  \item    PowerPC
  \item    SPARC
\end{itemize}


\begin{htmlonly}
\item
Hier findet man etwas zur
\htmladdnormallink{Geschichte der Debian-Entwicklung}{http://www.openoffice.de/linux/buch/wasistdebiangnulinux.html}.
\end{htmlonly}


\end{itemize}



\section{Installation}

Debian kann per CD, FD, HD oder FTP/HTTP installiert werden (letztere erfordern
vorher eine Basis-Installation \zb per Diskette).

Hier gibt es eine kurze
\htmladdnormallink{Beschreibung der Installation}
  {http://www.openoffice.de/linux/buch/debianinstallation.html}.




\section{init}

Es wird das SystemV-Init benutzt. Die Init-Shellskripte liegen in \verb|/etc/init.d|,
die Runlevel-Skripte als Links in \verb|/etc/rc?.d|, der Default-Runlevel ist 2.

Zwischen den runlevels kann man als Superuser mit
\htmladdnormallink{\texttt{telinit}}
 {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/init.8.gz}
wechseln, \zb mit \texttt{telinit 1} gelangt man in den Single User Mode.

\begin{verbatim}
/etc/rc.boot/
/etc/rc0.d/
/etc/rc1.d/
/etc/rc2.d/
/etc/rc3.d/
/etc/rc4.d/
/etc/rc5.d/
/etc/rc6.d/
/etc/rcS.d/
/etc/init.d/
\end{verbatim}


% ifpdf: link zu inittab.txt
% ifhtml: " "
% \href{etc/inittab.txt}{\path|/etc/inittab|}

\texttt{/}\url{etc/inittab}

Siehe auch die Doku im \V \path|/usr/share/doc/sysvinit/|.

\section{Filesystem}

Nach der Installation existieren diese Verzeichnisse unterhalb von \verb|/|:
\begin{verbatim}
bin/
boot/
cdrom/
dev/
etc/
floppy/
home/
initrd/
lib/
lost+found/
mnt/
proc/
root/
sbin/
tmp/
usr/
var/
vmlinuz@ -> boot/vmlinuz-2.2.18pre21
vmlinuz.old@ -> boot/vmlinuz-2.2.18pre21
\end{verbatim}



\section{Konfiguration}

Alle Konfigurationsdateien einer \DD befinden sich \emph{immer}
unterhalb von \verb|/etc|.

Es gibt keine zentrale Distributionsspezifische Konfiguration wie etwa \texttt{/etc/rc.config}
oder Tools wie \zb \texttt{Yast} bei der Suse-Distribution!

Falls Programme ihre Konfigurationsdateien woanders erwarten, werden diese nach
\verb|/etc| gelinkt\\
(\zb: \verb|/usr/lib/mc/mc.ini -> /etc/mc/mc.ini|).

Wenn man sein System vollständig konfigurieren will, muß man also nur alle
Dateien in \texttt{/etc} durchsehen!


\textbf{Die wichtigsten Konfigurationsdateien:}
\begin{verbatim}
/etc/Muttrc
/etc/TextConfig
/etc/X11/
/etc/adduser.conf
/etc/aliases@  -> mail/aliases
/etc/alternatives/
/etc/apache-ssl/
/etc/apt/sources.list
/etc/bash.bashrc
/etc/cron.d/
/etc/cron.daily/
/etc/cron.monthly/
/etc/cron.weekly/
/etc/crontab
/etc/environment
/etc/gtk/
/etc/inittab
/etc/inputrc
/etc/joe/
/etc/latex2html.config
/etc/ld.so.conf
/etc/lilo.conf
/etc/localtime@ -> /usr/share/zoneinfo/Europe/Berlin
/etc/login.defs
/etc/logrotate.conf
/etc/logrotate.d/
/etc/lynx-ssl.cfg
/etc/lynx.cfg
/etc/magic
/etc/mail/
/etc/mailcap
/etc/mc/
/etc/menu/
/etc/menu-methods/
/etc/mime.types
/etc/modutils/
/etc/mysql/
/etc/news/
/etc/nntpserver -> /etc/news/server
/etc/nsswitch.conf
/etc/ntp.conf
/etc/pam.conf
/etc/pam.d/
/etc/php4/
/etc/postgresql/
/etc/ppp/
/etc/quota/
/etc/resolv.conf
/etc/samba/
/etc/security/
/etc/ssh/
/etc/ssl/
/etc/syslog.conf
/etc/texmf/
/etc/timezone
/etc/vga/
/etc/wgetrc
/etc/wu-ftpd/
/etc/zgv.conf
\end{verbatim}


\section{Lokale Dokumentation}

Abgesehen von \texttt{man}-Pages und \texttt{info}-Dateien gibt es eine umfangreiche
Dokumentation der installierten Pakete (uvm.) unterhalb von \verb|/usr/doc| und
\verb|/usr/share/doc|.
Dabei sind die Inhalte beider Verzeichnisse über Links angeglichen (in Zukunft soll
irgendwann nur noch eines dieser Verzeichnisse benutzt werden).

\textbf{Die wichtigsten Doc-Verzeichnisse:}

\begin{verbatim}
tantalus# ls -1 /usr/doc/|wc -l
    459

HOWTO
HTML
adduser
apache
apache-common
apache-doc
bash
bash-doc
console-apt
copyright
debconf
debian
debian-guide
debian-policy
debianutils
oc-debian
doc-linux-de
doc-linux-html
doc-linux-text
dpkg
dpkg-doc
fvwm
fvwm-common
fvwmconf
gimp
gimp-manual
gimp-nonfree
joe
latex2html
lib*
lilo
login
lynx
lynx-ssl
mc
mc-common
menu
mutt
mysql-client
mysql-doc
mysql-server
nasm
perl*
php4*
postgresql*
quota
sendmail
ssh
svgatextmode
sysvinit
tetex-*
xf86setup
xfree86-common
xserver-*
zgv
\end{verbatim}



\section{X11}

Hier sei auf das
\htmladdnormallink{X11-Kapitel}
  {http://www.openoffice.de/linux/buch/x11.html}
im Debian-Anwenderhandbuch verwiesen.


\section{Paket-Management}

\begin{itemize}
\item \textbf{Organisation der Pakete:}

Debian organisiert die Pakete in einer festgelegten Hierarchie. Unter anderem werden Bereiche mit
allgemeiner, freier Software (\texttt{main}), die den Debian Free Software Guidelines entspricht,
und Bereiche mit Software, die nicht unter solchen freien Lizenzen steht (\texttt{non-free}),
unterschieden (sowie weitere wie \zb \texttt{contrib}).\\
Die nächste Ebene beschreibt die Architektur, also die Prozessorfamilie, auf der die Binärpakete
laufen. Auch die Sourcen zu den Paketen sind in dieser Ebene angesiedelt.\\
In der letzten Ebene finden sich diverse Verzeichnisse, in denen die eigentlichen Pakete
zu Gruppen, wie zum Beispiel \emph{Games} oder \emph{X11}, zusammengefaßt werden:


\htmladdnormallink{lynx ftp://ftp.debian.org/debian/dists}
  {ftp://ftp.debian.de/debian/dists}

\begin{verbatim}
...
                                                                     /debian/dists directory

Current directory is /debian/dists

   Up to debian
Apr 16 19:39  Symbolic Link    Debian2.2r3
Dec 18 16:55  text/plain       README  400 bytes
Apr 16 17:32  Directory        potato
May 20 19:47  Directory        potato-proposed-updates
Feb 16 18:50  Symbolic Link    proposed-updates
May 20 19:48  Directory        sid
Feb 16 18:50  Symbolic Link    stable
Feb 16 18:50  Symbolic Link    testing
Feb 16 18:50  Symbolic Link    unstable
May 20 19:58  Directory        woody
\end{verbatim}

\item
Hier der Inhalt der Datei \texttt{README}:

\begin{verbatim}
This directory, dists, is the canonical way to access the distributions.
Each distribution can be accessed by name or state from here.

stable, or potato   - the released Debian 2.2r2.
proposed-updates    - possible updates to Debian 2.2.  See the README there.
testing, or woody   - the development version of the next release.
unstable, or sid    - untested candidate packages for future releases.
\end{verbatim}


\item
Hier der Inhalt des Verzeichnisses \verb|stable/main|, in  dem sich alle Pakete
fuer die verschiedenen CPU-Architekturen befinden:


\begin{verbatim}
                                                         /debian/dists/stable/main directory

Current directory is /debian/dists/stable/main

   Up to stable
Nov 17  1999  Directory        binary-all
Apr 16 17:30  Directory        binary-alpha
Apr 16 17:30  Directory        binary-arm
Apr 16 17:30  Directory        binary-i386
Apr 16 17:30  Directory        binary-m68k
Apr 16 17:30  Directory        binary-powerpc
Apr 16 17:30  Directory        binary-sparc
Dec  3 18:54  Directory        disks-alpha
Aug 13  2000  Directory        disks-arm
Apr 16 13:47  Directory        disks-i386
Dec  3 18:57  Directory        disks-m68k
Apr 16 13:48  Directory        disks-powerpc
Apr 16 13:48  Directory        disks-sparc
Apr 16 17:30  Directory        source
Aug 13  2000  Directory        upgrade-alpha
Aug 13  2000  Directory        upgrade-i386
Aug 13  2000  Directory        upgrade-m68k
Aug 13  2000  Directory        upgrade-sparc
\end{verbatim}


\item
Hier der Inhalt von \texttt{binary-i386}:

\begin{verbatim}
> cd debian/dists/stable/main/binary-i386
> ls

Packages        editors/        math/           sound/
Packages.gz     electronics/    misc/           tex/
Release         games/          net/            text/
admin/          graphics/       news/           utils/
base/           hamradio/       oldlibs/        web/
comm/           interpreters/   otherosfs/      x11/
devel/          libs/           science/
doc/            mail/           shells/
\end{verbatim}

\item
In der Datei \texttt{Packages} bzw. \texttt{Packages.gz} sind alle Pakete in dem
jeweiligen Verzeichnis mit ihren Abhängigkeiten aufgelistet.

\item
In den obigen Verzeichnissen befinden sich nun die Pakete:

\begin{verbatim}
> ls utils
...
-rw-rw-r--   20100 Oct 17  1999 bzip2_0.9.5d-2.deb
...
-rw-rw-r--   36264 Sep  8  1999 lockvc_3.4-2.deb
-rw-rw-r--  236898 May 18  1999 lsof-2.0.36_4.43-1.deb
-rw-rw-r--  242386 Feb  4  2000 lsof-2.2_4.48-1.deb
...
lrwxrwxrwx      44 Feb 16 18:50 tkps_1.14.deb -> ../../../main/binary-all/utils/tkps_1.14.deb
\end{verbatim}



\item
\textbf{Installation der Pakete:}

Debian-Pakete werden über \texttt{dpkg} installiert/deinstalliert.
Dafür existieren auch verschiedene Frontends (\zb \emph{apt, capt, gnome-apt}
und \emph{dselect}).

Bei einer Neuinstallation wird \texttt{dselect} vom Installationsprogramm
benutzt.\\
Um die Auswahl der Pakete zu vereinfachen, kann man sog. \emph{task}-Pakete
auswählen wie \zb \texttt{task-games} zur Auswahl verschiedener Spiele.
Man kann auch nachträglich mittels \texttt{tasksel} solche Meta-Pakete auswählen.


Hier einige Links zum Thema Installation:

\begin{htmllist}[OrangeBall]
\item[Anwenderhandbuch:]
   \htmladdnormallink{Debian GNU/Linux Anwenderhandbuch - Installation}
   {http://www.openoffice.de/linux/buch/instweiterepakete.html}

\item[Debian-Server:]
   \htmladdnormallink{www.debian.de - Neuinstallationen}
   {http://www.debian.de/releases/stable/\#new-inst}
\end{htmllist}

\end{itemize}


\subsection{\texttt{dpkg}}

Die genaue Funktionsweise von \texttt{dpkg} ist in der
\htmladdnormallink{Manpage}
  {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/dpkg.8.gz}
erklärt.

Zu jedem Paket \textbf{paket.deb} werden verschiedene Informationen verwaltet, die meist in
Verbindung mit \texttt{dselect} benutzt werden:

\begin{verbatim}
    state  selection state  flags
\end{verbatim}


Hier die wichtigsten Befehle (\emph{actions}) und Optionen:
\begin{verbatim}
$ dpkg --help
Usage:
  dpkg -i|--install      <.deb file name> ... | -R|--recursive <dir> ...
  dpkg --unpack          <.deb file name> ... | -R|--recursive <dir> ...
  dpkg -r|--remove | -P|--purge <package name> ... | -a|--pending
  dpkg -s|--status <package-name> ...      display package status details
  dpkg -p|--print-avail <package-name> ... display available version details
  dpkg -L|--listfiles <package-name> ...   list files `owned' by package(s)
  dpkg -l|--list [<pattern> ...]           list packages concisely
  dpkg -S|--search <pattern> ...           find package(s) owning file(s)
  dpkg -C|--audit                          check for broken package(s)
\end{verbatim}



\textbf{Beispiele} (aus \texttt{man dpkg}):
\begin{verbatim}
       To list packages related to the editor vi:
            dpkg -l '*vi*'

       To see the entries in /var/lib/dpkg/available on two pack­
       ages:
            dpkg --print-avail elvis vim | less

       To search the listing of packages yourself:
            less /var/lib/dpkg/available

       To remove an installed elvis package:
            dpkg -r elvis

       To  install  a  package,  you  first need to find it in an
       archive or CDROM.  The "available" file shows that the vim
       package is in section "editors":
            cd /cdrom/hamm/hamm/binary/editors
            dpkg -i vim_4.5-3.deb
\end{verbatim}


\textbf{Paketsuche:}

Wenn man ein bestimmtes Paket suchen will, kann man das über die
\htmladdnormallink{Debian-Paketsuche}{http://www.debian.de/distrib/packages}
durchführen.



\textbf{\texttt{deb}-Paket-Struktur:}

Jedes Paket besteht aus den 2 Verzeichnissen \texttt{CONTENTS} und \texttt{DEBIAN}
sowie der Datei \texttt{INFO} (beschreibt das Paket).

In \texttt{CONTENTS} befindet sich der Paketinhalt, d.\,h. alle Verzeichnisse und Dateien
aus \texttt{CONTENTS} werden relativ zu \texttt{/} auf der Platte ausgepackt.

Bei der Installation eines Pakets werden verschiedene Skripte aus \texttt{DEBIAN}
ausgeführt, insb. \texttt{prerm, preinst, postrm, postinst}.

Die Abhängigkeiten zu anderen Paketen stehen in der Datei \texttt{DEBIAN/control} (?).

Zu jeder Datei eines Paketes (ausser den Konfigurationsdateien) werden MD5-Checksummen
im Paket mitgeführt (in der Datei \texttt{DEBIAN/md5sums}).\\
Die Konfigurationsdateien sind in der Datei \texttt{DEBIAN/conffiles} eingetragen.

\texttt{dpkg} erkennt selbständig, ob es die Konfigurationsdateien in \texttt{/etc}
gefahrlos ändern kann oder ob der Nutzer gefragt werden soll, welche Version
(alt / neu) er bevorzugt.


\begin{verbatim}


\end{verbatim}






\subsection{Upgrade einer \DD mit \texttt{apt}}


Ein Upgrade einer Debian auf eine neuere Version (\zb: 2.2 --> 2.4) ist
mittels
\htmladdnormallink{\texttt{apt-get}}
{/cgi-bin/man2html/usr/share/man/man8/apt-get.8.gz}
sehr einfach möglich:

In \verb|/etc/apt/sources.list| statt \texttt{potato} oder \texttt{woody}
den gewünschten Distribuions-Zweig (meist \texttt{stable}) eintragen:

\begin{verbatim}
   deb http://ftp.de.debian.org/debian             stable main contrib non-free
   deb http://ftp.de.debian.org/debian-non-US      stable/non-US main contrib non-free
   deb-src  http://ftp.debian.org/debian           stable main contrib non-free
   deb-src  http://ftp.de.debian.org/debian-non-US stable/non-US main contrib non-free
\end{verbatim}


und anschließend

\begin{verbatim}
apt-get update
apt-get dist-upgrade
\end{verbatim}

aufrufen:

\begin{verbatim}
tantalus:~# apt-get update
Get:1 http://ftp.de.debian.org stable/main Packages [827kB]
Hit http://ftp.debian.org stable/main Sources
Ign http://ftp.debian.org stable/main Release
Hit http://ftp.debian.org stable/contrib Sources
Ign http://ftp.debian.org stable/contrib Release
Hit http://ftp.debian.org stable/non-free Sources
Ign http://ftp.debian.org stable/non-free Release
Hit http://ftp.de.debian.org stable/main Release
Get:2 http://ftp.de.debian.org stable/contrib Packages [30.3kB]
Hit http://ftp.de.debian.org stable/contrib Release
Hit http://ftp.de.debian.org stable/non-free Packages
Hit http://ftp.de.debian.org stable/non-free Release
Hit http://ftp.de.debian.org stable/non-US/main Packages
Hit http://ftp.de.debian.org stable/non-US/main Release
Hit http://ftp.de.debian.org stable/non-US/contrib Packages
Hit http://ftp.de.debian.org stable/non-US/contrib Release
Hit http://ftp.de.debian.org stable/non-US/non-free Packages
Hit http://ftp.de.debian.org stable/non-US/non-free Release
Hit http://ftp.de.debian.org stable/non-US/main Sources
Hit http://ftp.de.debian.org stable/non-US/main Release
Hit http://ftp.de.debian.org stable/non-US/contrib Sources
Hit http://ftp.de.debian.org stable/non-US/contrib Release
Hit http://ftp.de.debian.org stable/non-US/non-free Sources
Hit http://ftp.de.debian.org stable/non-US/non-free Release
Fetched 857kB in 4s (175kB/s)
Reading Package Lists... Done
Building Dependency Tree... Done


tantalus:~# apt-get dist-upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
45 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 27.0MB of archives. After unpacking 10.2MB will be used.
Do you want to continue? [Y/n]
Get:1 http://ftp.de.debian.org stable/main libc6 2.1.3-18 [1901kB]
Get:2 http://ftp.de.debian.org stable/main cron 3.0pl1-57.2 [51.0kB]
Get:3 http://ftp.de.debian.org stable/main mailx 1:8.1.1-11 [101kB]
Get:4 http://ftp.de.debian.org stable/main man-db 2.3.16-1.1 [333kB]
Get:5 http://ftp.de.debian.org stable/main nvi 1.79-16a [263kB]
Get:6 http://ftp.de.debian.org stable/main dnsutils 1:8.2.3-0.potato.1 [340kB]
...
Debian Configuration
...
(Reading database ... 42629 files and directories currently installed.)
Preparing to replace libc6-dev 2.1.3-13 (using .../libc6-dev_2.1.3-18_i386.deb) ...
Unpacking replacement libc6-dev ...
Preparing to replace locales 2.1.3-13 (using .../locales_2.1.3-18_i386.deb) ...
Unpacking replacement locales ...
Preparing to replace libc6 2.1.3-13 (using .../libc6_2.1.3-18_i386.deb) ...
Unpacking replacement libc6 ...
Setting up libc6 (2.1.3-18) ...
Current default timezone: 'Europe/Berlin'.
   Local time is now:      Sun May 20 22:12:32 CEST 2001.
   Universal Time is now:  Sun May 20 20:12:32 UTC 2001.
Run 'tzconfig' if you wish to change it.

(Reading database ... 42660 files and directories currently installed.)
Preparing to replace cron 3.0pl1-57.1 (using .../cron_3.0pl1-57.2_i386.deb) ...
...
Stopping MySQL database server: mysqld.
Unpacking replacement mysql-server ...
...
Setting up libc6-dev (2.1.3-18) ...

Setting up locales (2.1.3-18) ...

Setting up cron (3.0pl1-57.2) ...
...
Setting up mysql-server (3.22.32-6) ...
Starting MySQL database server: mysqld.
...

Setting up mc (4.5.42-11.potato.6) ...
Installing new version of config file /etc/mc/mc.ext ...

tantalus:~#
tantalus:~# apt-get check
Reading Package Lists... Done
Building Dependency Tree... Done
tantalus:~#
\end{verbatim}



Dadurch wurden nun alle momentan installierten Pakete auf den gewünschten
aktuellen Stand gebracht.

Weitere Informationen gibt es in den
  \htmladdnormallink{Manseiten zu \texttt{apt-get}}
  {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/apt-get.8.gz}
und in \verb|/usr/doc/apt/|.



\subsection{dselect}

Das Basistool
  \htmladdnormallink{dselect}
  {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/dselect.8.gz}
wird bei der Installation zur Paketauswahl und Konfiguration aufgerufen.

Mittels eines einfachen Text-Interfaces kann man hier Pakete installieren,
deinstallieren etc.:

\begin{htmlonly}
\begin{rawhtml}
<IMG src="pics/dselect1.png" width="674" height="396" alt="dselect1.png"><P>
\end{rawhtml}
\end{htmlonly}

\begin{latexonly}
\includegraphics[width=\linewidth]{dselect1}
\newpage
\end{latexonly}


Hier der Schritt Nr. 2, bei dem die Pakete selektiert werden:

\begin{htmlonly}
\begin{rawhtml}
<IMG src="pics/dselect2.png" width="774" height="468" alt="dselect2.png">
\end{rawhtml}
\end{htmlonly}

\begin{latexonly}
\vspace{1em}
\includegraphics[width=\linewidth]{dselect2}
\end{latexonly}







\section{Debian-Eigenheiten}



\begin{htmllist}[OrangeBall]

\item[Debian-Policy:] \url{usr/doc/debian-policy/policy.text.gz}

\item[cron:]
  Bei Verwendung des vixie-cron hat root keine eigene crontab.
  Stattdessen gibt es \texttt{/}\url{etc/crontab}, welche
  \texttt{/}\url{etc/cron.d/}, \texttt{/}\url{etc/cron.daily/},
  \texttt{/}\url{etc/cron.weekly/}, \texttt{/}\url{etc/cron.monthly/} aufruft,
  in denen die entsprechenden Cronjobs stehen, \sa
    \htmladdnormallink{cron(8)}
    {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/cron.8.gz}.

  Zusätzlich gibt es noch \verb|anacron|, welches Cronjobs, die nicht aktiv geworden sind,
  weil der Rechner aus war, später ausführt.

\item[\texttt{/tmp}]
  Die Dateien unter \verb|/tmp| werden regelmässig gelöscht
 (per Default beim nächsten Bootvorgang, dies kann man in \texttt{/etc/default/rcS} ändern).

\item[\texttt{/etc/alternatives/}]
  Siehe dazu
    \htmladdnormallink{update-alternatives(8)}
    {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/update-alternatives.8.gz}.
  Hier befinden sich nur Links.

Inhalt von \texttt{/etc/alternatives/}:
\begin{verbatim}
c++ -> /usr/bin/g++*
c++.1.gz -> /usr/share/man/man1/g++.1.gz
csh -> /usr/bin/tcsh*
editor -> /usr/bin/nvi*
ftpd -> /usr/sbin/wu-ftpd*
perl -> /usr/bin/perl-5.005*
rxvt -> /usr/X11R6/bin/rxvt-xterm*
w -> /usr/bin/w.procps*
x-window-manager -> /usr/bin/X11/fvwm2*
xconsole -> /usr/share/xaw-wrappers/wrapper*
xdvi.bin -> /usr/share/xaw-wrappers/wrapper*
\end{verbatim}


\item[Menues:]
% Siehe \verb|/etc/menu-methods/README| und \verb|/usr/doc/menu/html|.
  Siehe \texttt{/}\url{etc/menu-methods/README} und \verb|/usr/doc/menu/html|.

  Menues ermöglichen es X11-Programmen, sich selbst in die globalen Konfigdateien
  der verschiedenen Windowmanager ein- und auszutragen.

\end{htmllist}





\section{Kernel-Erstellung}

Es gibt 2 verschiedene Möglichkeiten um einen neuen Kernel zu erzeugen.

Diese sind beschrieben im Kapitel
\htmladdnormallink{Kernel erzeugen}{http://www.openoffice.de/linux/buch/kernelbauen.html}
im Debian-Anwenderhandbuch.


\subsection{Herkömmlich}

Man besorgt sich wie üblich die Quellen des gewünschten Kernels (für die stablen Kernels
existieren bereits entsprechende Debian-Pakete \zb \texttt{kernel-source-2.0.38 2.0.38-3}
und \texttt{kernel-headers-2.0.38 2.0.38-3} (es gibt natürlich auch fertige Images
\zb {kernel-image-2.0.38 2.0.38-3}).

Anschliessend erfolgt wie üblich:
\begin{verbatim}
    $ tar xf kernel-source.tar
    $ cd linux
    $ make menuconfig
    $ make dep
    $ make clean
    $ make zImage
    $ make modules
    $ make modules_install
    $ cp arch/i386/boot/zImage /boot/zImage-version
    $ edit /etc/lilo.conf
    $ lilo -v
    $ reboot
\end{verbatim}


\subsection{\texttt{kernel-package}}

Mit diesem Paket kann man individuelle Kernelpakete inklusive Module erzeugen.
Dazu ist das Paket
  \htmladdnormallink{\texttt{kernel-package}}
  {http://www.thur.de/cgi-bin/man2html/usr/share/man/man5/kernel-package.5.gz}
zu installieren und die Konfigurationsdatei
\texttt{/}\url{etc/kernel-pkg.conf} anzupassen.

Die Linuxquellen werden wie im vorigen Schritt geholt und ausgepackt.
Anschliessend kann man dem Programm
  \htmladdnormallink{\texttt{make-kpkg}}
  {http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/make-kpkg.1.gz}
verschiedene targets aufrufen
wie \zb \emph{clean, kernel\_image, modules\_image} etc.

Hier eine kleine Doku dazu:
\texttt{/}\url{usr/share/doc/kernel-package/README.gz}



\section{Spezielle Konfigurationsprogramme}

Es gibt kein ''YAST'' bei der Debian. Alle Konfigurationsdateien liegen in in
\verb|/etc|.

Allerdings gibt es zu verschiedenen Programmen kleine Hilfstools, um diese zu konfigurieren:

{\ttfamily
\Link{apache-sslconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/apache-sslconfig.8.gz}\\
\Link{apt-config}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/apt-config.8.gz}\\
\Link{configure-ntp}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/configure-ntp.1.gz}\\
\Link{cvsconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/cvsconfig.1.gz}\\
\Link{dpkg-preconfigure}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/dpkg-preconfigure.8.gz}\\
\Link{dpkg-reconfigure}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/dpkg-reconfigure.8.gz}\\
\Link{esd-config}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/esd-config.1.gz}\\
\Link{fdutilsconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/fdutilsconfig.8.gz}\\
gconfigger\\
\Link{gpmconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/gpmconfig.8.gz}\\
\Link{htdigconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/htdigconfig.8.gz}\\
\Link{ispellconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/ispellconfig.8.gz}\\
kbdconfig\\
\Link{liloconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/liloconfig.8.gz}\\
\Link{paperconfig}{http://www.thur.de/cgi-bin/man2html/usr/man/man8/paperconfig.8.gz}\\
\Link{plipconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/plipconfig.8.gz}\\
\Link{scsi-config}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/scsi-config.8.gz}\\
\Link{sendmailconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/sendmailconfig.8.gz}\\
\Link{shadowconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/shadowconfig.8.gz}\\
\Link{texconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/texconfig.1.gz}\\
\Link{tzconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/tzconfig.1.gz}\\
\Link{wm-menu-config}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/wm-menu-config.1.gz}\\
\Link{wwwcountconfig}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/wwwcountconfig.8.gz}\\
\Link{xf86config}{http://www.thur.de/cgi-bin/man2html?xf86config}\\
\Link{xserver-configure}{http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/xserver-configure.8.gz}
}



\section{Tips \& Tricks}

\begin{itemize}

\item Nach Erstinstallation vor dem Anlegen eines neuen Nutzers (!= root)
erst die Datei \texttt{/}\url{etc/adduser.conf} anpassen (\verb|USERGROUPS=no|).

\item \verb|passwd| nicht direkt editieren, sondern
  \Link{\texttt{adduser}} {http://www.thur.de/cgi-bin/man2html/usr/man/man8/adduser.8.gz},
  \Link{\texttt{usermod}} {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/usermod.8.gz},
  \Link{\texttt{userdel}} {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/userdel.8.gz}
etc. benutzen.

\item Login-Einstellungen: \texttt{/}\url{etc/login.defs}

\item Nach der Erstinstallation sollte \emph{console-apt}
 (\Link{\texttt{capt}} {http://www.thur.de/cgi-bin/man2html/usr/share/man/man1/capt.1.gz})
 als Paketmanager benutzt werden (ist einfacher).

\item Konfiguration der Lebensdauer von Logfiles: \texttt{/}\url{etc/logrotate.conf},
\texttt{/}\url{etc/logrotate.d}.

\item Die Datei \texttt{/}\url{etc/modules.conf} nicht direkt editieren, stattdessen
die entsprechenden Dateien in \texttt{/}\url{etc/modutils/} und anschliessend
  \Link{\texttt{update-modules}}
  {http://www.thur.de/cgi-bin/man2html/usr/share/man/man8/update-modules.8.gz}
aufrufen.

\item Eintragen in \texttt{/}\url{etc/inittab}:
\begin{verbatim}
# Action on special keypress (ALT-UpArrow).
kb::kbrequest:/usr/bin/openvt -sl -- login
\end{verbatim}


\end{itemize}




\section{Netz-Ressourcen und Support}
\label{sec:links}

\begin{htmllist}[OrangeBall]

\item[Mailinglisten:]
Das Debian-Projekt bietet eine ganze Reihe verschiedener Mailinglisten an,
die auch archiviert sind und per \texttt{http} eingesehen werden können: ~
  \Link{www.debian.de/MailingLists/}{http://www.debian.de/MailingLists/}


\item[Debian-Projekt:] \Link{www.debian.de}{http://www.debian.de/} 

\item[Debian-Server:]
  \Link{Sitemap des Debian-Servers}{http://www.debian.de/sitemap}

\item[Debian-News:]
  \Link{Debian-News}{http://www.debian.de/News/}

\item[Debian Anwenderhandbuch:]
  Es gibt das umfangreiche \emph{Debian GNU/Linux Anwenderhandbuch} by Frank Ronneburg im WWW unter
  der URL: ~
  \Link{www.openoffice.de/linux/buch/}{http://www.openoffice.de/linux/buch/}

\item[Bücher:]
  \Link{Debian-Bücher}{http://www.debian.de/distrib/books}

\end{htmllist}



\end{document}
