Linux-Kurs – Teil 7 (Programme mit APT installieren)
Nachdem wir uns im fünften und sechsten Teil ein wenig in die Rechte eines Linux-System eingearbeitet haben, werden wir heute etwas darüber lernen, wie Programme installiert werden und wie speziell SSH installiert wird.
Im ersten Teil hast Du Dein Linux-System installiert. Entweder in einer virtuellen Maschine oder sogar schon physikalisch auf einen PC. Bisher konntest Du dabei nur direkt mit auf der Console arbeiten. Sozusagen direkt am Rechner. Falls z.B. Dein Debian nun virtuell oder auf einem Zweitrechner installiert ist, lernen wir heute, wie man komfortabel remote darauf zugreifen kann.
Das Zauberwort hierfür nennt sich SSH. Was ist nun dieses SSH? Ein kleiner Auszug aus Wikipedia-Eintrag zu SSH:
Secure Shell oder SSH bezeichnet sowohl ein Netzwerkprotokoll als auch entsprechende Programme, mit deren Hilfe man auf eine sichere Art und Weise eine verschlüsselte Netzwerkverbindung mit einem entfernten Computer herstellen kann. Häufig wird diese Methode verwendet, um sich eine entfernte Kommandozeile quasi auf den lokalen Rechner zu holen, das heißt auf der lokalen Konsole werden die Ausgaben der entfernten Konsole ausgegeben und die lokalen Tastatureingaben werden an den entfernten Rechner gesendet. Hierdurch wird der Effekt erreicht, als säße man vor der entfernten Konsole. Die neuere Protokoll-Version SSH2 bietet weitere Funktionen wie Datenübertragung per SFTP.
Wir hatten eine minimale Installation von Debian durchgeführt, um ein schlankes und kleines System zu haben, welches wir uns mit der Zeit mit weiteren Funktionen aufrüsten können. Somit muss SSH erst installiert werden, bevor wir es nutzen können.
So… Und nun haben wir ein Problem! Wie installiere ich unter Debian ein Programm? Leider liegt hier ein Problem der unterschiedlichen Linux-Distributionen. Fast jede hat seine eigene Art, Programme zu installieren. Bisher haben wir nur Dinge gelernt, welche selbst unter Unix zumeist identisch sind und vor allem unter jeder Linux-Distribution verwendet werden können.
In diesem Teil werden wir uns deshalb etwas proprietär um Debian kümmern.
Programme installieren und Pakete verwalten
Unter Debian ist dies an sich sehr komfortabel. Ganz nebenbei gilt das kommende auch für die meisten Systeme, die auf Debian basieren. So z.B. Ubuntu.
Bei Debian wird dazu APT (Advanced Packaging Tool) verwendet.
Auszug aus Wikipedia:
Das Advanced Packaging Tool (APT) ist ein Paketverwaltungssystem, das im Bereich des Betriebssystems Debian GNU/Linux entstanden ist. Mittels APT ist es sehr einfach, Programmpakete zu suchen, zu installieren oder auch das ganze System komplett auf den neuesten Stand zu bringen. APT besteht aus einer Programmbibliothek und mehreren diese Bibliothek nutzenden Kommandozeilen-Programmen, von denen apt-get und apt-cache zentral sind. Seit Debian 3.1 wird die Benutzung von aptitude als konsolenbasierendes Paketverwaltungssystem empfohlen.
APT steht auch in OpenSolaris zur Verfügung (es wurde in die Nexenta OS-Distribution aufgenommen) und wurde auch auf Mac OS X portiert, wo es im Rahmen des Fink-Projektes zur Installation von Debian-Softwarepaketen genutzt wird.
Um Programme zu installieren gibt es den Befehl apt-get. Nun muss ich allerdings darauf hinweisen, dass es hier oft eine umfangreiche Diskussion gibt, ob man nun apt-get verwenden soll oder das alternative Programm aptitude. Einen guten Beitrag dazu gibt es bei Adminlife. Ich verwende seit einiger Zeit fast nur noch Aptitude, da es ein Befehl für alles ist und vor allem nicht mehr benötigte Pakete automatisch entfernen kann. Es ist grundsätzlich sicherer, nur eines der beiden Varianten zu verwenden und nicht ständig die Befehle zu mischen.
Melde Dich an Deinem Linux mit Deinem Arbeitsbenutzer an und schalte Dich zum root hoch.
su -
Falls ich es noch nicht geschrieben hatte. Das “-” nach su bewirkt, dass man sich nicht nur zu “Superuser” hochschaltet, sondern auch seine Umgebung aktiviert wird. Dies ist immer dann wichtig, wenn man z.B. Programme verwenden möchte, die ein normaler User nicht finden bzw. ausführen kann (z.B. aus /sbin).
Hinweise: Nicht alle folgenden Befehle benötigen Root-Rechte. Es würde aber die Anleitung etwas zu kompliziert machen, ständig zu wechseln.
Schauen wir uns zuerst die Einrichtung von APT an:
cat /etc/apt/sources.list
Die Ausgabe:
# # deb cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 NETINST Binary-1 20090413-22:27]/ lenny main #deb cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 NETINST Binary-1 20090413-22:27]/ lenny main deb http://ftp.de.debian.org/debian/ lenny main deb-src http://ftp.de.debian.org/debian/ lenny main deb http://security.debian.org/ lenny/updates main deb-src http://security.debian.org/ lenny/updates main deb http://volatile.debian.org/debian-volatile lenny/volatile main deb-src http://volatile.debian.org/debian-volatile lenny/volatile main
In der oberen Liste sieht man, welche Sources Debian nach Programmen und Updates durchsuchen darf bzw. kann. Falls Du bei der Grundinstallation einen anderen Mirror angegeben hast, können sich die URLs leicht unterscheiden. Diese Liste kann stark abgeändert werden, um noch mehr Programme zu bekommen. Für unsere Zwecke reicht dies derzeit allerdings locker aus.
Aktuelle Pakete
Nun möchten wir unserem Debian mitteilen, die aktuellsten Listen aus dem Internet zu laden:
aptitude update
Nun wird über HTTP (Port 80) eine Verbindung zu den oberen Servern aufgebaut und deren aktuellen Paketlisten geladen. Damit hat unser Debian die Informationen, welche Programme es derzeit dort gibt und welche Versionen aktuell sind.
Aktuelle Updates einspielen
Bevor wir nun SSH installieren, sollten wir prüfen, ob unser System überhaupt noch aktuell ist.
aptitude safe-upgrade
Die Ausgabe:
Reading package lists... Done Building dependency tree Reading state information... Done Reading extended state information Initializing package states... Done Reading task descriptions... Done The following packages will be upgraded: acpid apt apt-utils base-files dhcp3-client dhcp3-common gnupg gpgv libgnutls26 libnewt0.52 libsasl2-2 libssl0.9.8 libvolume-id0 libxcb-xlib0 libxcb1 linux-image-2.6.26-2-686 perl-base tzdata udev wget whiptail x11-common The following packages are RECOMMENDED but will NOT be installed: libfribidi0 libldap-2.4-2 libsasl2-modules 22 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 31.5MB of archives. After unpacking 1224kB will be used. Do you want to continue? [Y/n/?]
Nun mit Y (oder je nach Sprachinstallation mit einem J) antworten, um das Upgrade zu starten. Hier gibt es oft Verwechslungen der Begriffe. Mit dem Parameter update werden die aktuellen Informationen geholt und mit upgrade werden diese eingespielt. Eingespielt werden natürlich nur diese, welche neuer sind und bereits installiert sind oder neue Abhängigkeiten die dazu benötigt werden.
Es gibt auch noch den Parameter full-upgrade. Damit könnte man sogar ein Betriebssystemupdate oder tiefergehende Upgrades durchzuführen. Der Hauptunterschied liegt darin, dass evtl. benötigte Abhängigkeiten zuvor geprüft und installiert oder sogar nicht benötigte Programme entfernt werden.
Inzwischen sollten die Upgrades aus dem Internet geladen worden sein. Evtl. kannst Du nun mit dem Befehl reboot einen Neustart durchführen. Dies ist an sich nur notwendig, wenn ein neuer Kernel installiert wurde.
SSH suchen und installieren
Nun möchten wir SSH suchen und installieren. Dazu suchen wir zuerst mal nach dem Begriff ssh in unserer Paketliste:
aptitude search ssh
Es folge eine recht lange Liste mit Programmen, welche ssh im Titel stehen haben. Falls zu unübersichtlich ist, weil z.B. der Suchbegriff zu allgemein gehalten wurde, kann man mit einem einfachen Trick die Ausgabeliste filtern.
aptitude search ssh |grep -i server
Nun wird in diesem Fall nur noch eine recht übersichtliche Liste angezeigt. Dies ist immer dann hilfreich, falls man nicht den genauen Programmnamen kennt.
Beispiel:
aptitude search gnome |grep -i game
Hier werden einige Spiele für Gnome angezeigt.
Wenn Du nun mehr über ein einzelnes Programm wissen möchtest, kann gibt es natürlich dafür auch einen Befehl.
Beispiele:
aptitude show ssh
aptitude show openssh-server
Wir benötigen das Programm “openssh-server” und “openssh-client”. Wir könnten nun diese beiden installieren oder das Metapaket für ssh, welches nichts anderes tut, als den Client und Server zu installieren.
aptitude install ssh
Die Ausgabe:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
The following NEW packages will be installed:
libedit2{a} libkeyutils1{a} libkrb53{a} libx11-6{a} libx11-data{a} libxau6{a} libxcb-xlib0{a} libxcb1{a}
libxdmcp6{a} libxext6{a} libxmuu1{a} openssh-blacklist{a} openssh-blacklist-extra{a} openssh-client{a}
openssh-server{a} ssh x11-common{a} xauth{a}
0 packages upgraded, 18 newly installed, 0 to remove and 0 not upgraded.
Need to get 1202B/7219kB of archives. After unpacking 18.5MB will be used.
Do you want to continue? [Y/n/?]
Es werden nun alle Abhängigkeiten dargestellt. Nun mit Y bestätigten, damit alle benötigten Programme installiert werden.
Das war an sich schon alles, um SSH zu installieren! Im nächsten Teil werde ich dann schreiben, wie man SSH nutzen kann.
Wie immer gilt, bei Fragen und Anregungen einfach ein Kommentar schreiben. Eine Übersicht aller Teile findest Du hier.
Interessante Beiträge zu diesem Thema
- sysvconfig – Runlevel Editor
- Update auf Debian 5.0 (Lenny)
- Linux-Einsteiger-Kurs mittels Debian Linux – Teil 1
- Linux-Einsteiger-Kurs – Teil 2 (Debian Grundinstallation)
- Interessante Links

[...] siebten Teil haben wir SSH installiert. Nun möchte ich Dir zeigen, was Du damit machen kannst. Was SSH ist, [...]