Schlagwort-Archive: Debian

Homeserver 30: System auf die neue Version upgraden

Gestern, also am 25.04., wurde Debian 8 mit dem Namen Jessie veröffentlicht. Auf meinem Server läuft ja noch Debian 7, also Wheezy. In diesem Artikel soll es also darum gehen, das System zu upgraden.

Der Upgradeprozess ist denkbar einfach, bedarf aber mehrerer Befehle. Mir wäre es, ehrlich gesagt, lieber, wenn es nur ein einziges Programm für diesen Zweck gäbe, aber so geht es auch relativ schmerzfrei.

Wichtiger Hinweis

Es scheint so zu sein, dass das Paket netatalk nicht mehr richtig funktioniert und man es auch nicht neu installieren kann. Aus irgendwelchen Gründen scheint es in den Paketen für Jessie nicht vorhanden zu sein. Vielleicht, aber das bleibt abzuwarten, wird es noch in die Paketliste aufgenommen. Bis dahin, falls ihr die TimeMachine-Funktionalität nicht einbüßen wollt, würde ich mit dem Upgrade warten. Für mich ist das leider zu spät… 🙁

Falls es nicht dazu kommt, also dass netatalk nicht in die offiziellen Quellen aufgenommen wird, werde ich es manuell per Hand installieren. Das ist aber ein derart komplexer Prozess, dass ich dazu einen eigenen Blogeintrag machen werde, falls dies nötig sein sollte.

Vorbereitungen

Bevor ich das Upgrade einspiele, will ich erst mal dafür sorgen, dass das System auf dem neuesten Stand ist, den Wheezy anbietet. Laut der Anleitung zum Upgrade von Debian kann das später Fehler vermeiden helfen. Das kann man ganz einfach mit den folgenden Befehlen erledigen:

sudo apt-get update
sudo apt-get upgrade

Bei mir gab es nur zwei kleinere Updates. Aber weil ich ja schon viele Updates und Pakete installiert, und auch wieder entfernt habe, könnten Reste vorhanden sein, die zu Problemen führen. Diese Paketreste, Init-Scripts und Konfigurationsdateien müssen entfernt werden. Dies geht ganz einfach mit diesen beiden Befehlen:

sudo apt-get autoremove
sudo apt-get purge $(dpkg -l | awk '/^rc/ { print $2 }')

Dies entfernt nicht mehr benötigte Pakete. Dies können Pakete sein, die von anderen Paketen automatisch installiert wurden aber jetzt nicht mehr benötigt werden. Und die Überreste der Pakete, evtl. zurückgelassene Init-Scripts und Konfigurationsdateien werden damit ebenfalls entsorgt.

Da das System schon sehr lange läuft, und ich lieber auf Nummer sicher gehen möchte, starte ich den Server neu:

sudo reboot

Systemupgrade

Das eigentliche Upgrade läuft in zwei Schritten ab. Zunächst muss die Quellenliste angepasst werden, danach müssen die neuen Pakete heruntergeladen und installiert werden. Fangen wir also mit der Quellenliste an.

Quellenliste anpassen

Die Quellenliste legt fest, woher Debian seine Pakete herbekommt. Meine ist natürlich zur Zeit auf Wheezy eingestellt und sieht so aus:

# 

# deb cdrom:[Debian GNU/Linux 7.6.0 _Wheezy_ - Official amd64 NETINST Binary-1 20140712-14:09]/ wheezy main

#deb cdrom:[Debian GNU/Linux 7.6.0 _Wheezy_ - Official amd64 NETINST Binary-1 20140712-14:09]/ wheezy main

deb http://ftp.de.debian.org/debian/ wheezy main non-free contrib
deb-src http://ftp.de.debian.org/debian/ wheezy main non-free contrib

deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free

# wheezy-updates, previously known as 'volatile'
deb http://ftp.de.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.de.debian.org/debian/ wheezy-updates main contrib non-free

# Probosed Updates
deb http://ftp.de.debian.org/debian wheezy-proposed-updates main contrib non-free

Hier müssen wir jetzt einige Änderungen machen, damit Debian die Jessie-Pakete auch finden kann.

sudo nano /etc/apt/sources.list

Damit ist die Quellenliste offen und wir können sie bearbeiten.

Ihr könnt an meiner Quellenliste ganz unten zwei Abschnitte sehen, Proposed Updates und Wheezy-Updates. Diese sollen laut Anleitung vorher deaktiviert werden. Also werden vor diese Zeilen jeweils ein # gestellt.

Bei den vier Zeilen, vor denen kein # steht, muss der Release-Name Wheezy durch Jessie ersetzt werden.

Am Ende sieht meine Quellenliste dann so aus:

# 

# deb cdrom:[Debian GNU/Linux 7.6.0 _Wheezy_ - Official amd64 NETINST Binary-1 20140712-14:09]/ wheezy main

#deb cdrom:[Debian GNU/Linux 7.6.0 _Wheezy_ - Official amd64 NETINST Binary-1 20140712-14:09]/ wheezy main

deb http://ftp.de.debian.org/debian/ jessie main non-free contrib
deb-src http://ftp.de.debian.org/debian/ jessie main non-free contrib

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

# wheezy-updates, previously known as 'volatile'
#deb http://ftp.de.debian.org/debian/ wheezy-updates main contrib non-free
#deb-src http://ftp.de.debian.org/debian/ wheezy-updates main contrib non-free

# Probosed Updates
#deb http://ftp.de.debian.org/debian wheezy-proposed-updates main contrib non-free

Nun können wir die Quellenliste speichern und mit dem Upgrade weitermachen.

System upgraden

So, nun geht es an das eigentliche Upgrade. Aber, so sehr unterscheidet es sich gar nicht von einem normalen Systemupdate. Aber schaut selbst:

sudo apt-get update
sudo apt-get dist-upgrade

Dies aktualisiert die Paketliste und führt das Upgrade durch. Dabei werden die Updates vorhandener Pakete installiert und nicht mehr benötigte alte Pakete entfernt. Und da bei mir knapp 800 Pakete aktualisiert werden müssen, dauert das jetzt erst mal…

Während des Upgrade-Prozesses könnte es gut sein, dass ihr diverse Fragen beantworten müsst. Dies ist aber sehr davon abhängig, welche Pakete und Dienste ihr installiert habt. Daher gehe ich jetzt darauf nicht weiter ein. Nur, beobachtet den Bildschirm und beantwortet die anfallenden Fragen.

Aufräumarbeiten

Es kann durchaus sein, dass es an meinem System lag, es kann aber auch sein, dass es auch bei anderen Systemen vorkommt. So genau kenne ich Linux nicht, um das mit Sicherheit sagen zu können. Daher schildere ich mal ein paar Dinge, auf die ich während des Upgrades gestoßen bin. Es sind zum Glück nicht viele.

Die Befehle zum Pakete Aufräumen müssen nach dem Upgrade erneut eingegeben werden:

sudo apt-get autoremove
sudo apt-get purge $(dpkg -l | awk '/^rc/ { print $2 }')

Ich hatte zwar angenommen, der dist-upgrade-Prozess würde sich darum kümmern, dem war aber leider nicht so.

Ich hatte gravierende Probleme mit phpmyadmin. Hier wollte sich die Datenbank einfach nicht updaten lassen. Hier hilft, die Konfiguration abzubrechen und das Paket erneut nach dem Upgrade zu konfigurieren. Hierzu gibt man nach dem Upgradeprozess einfach folgenden Befehl ein und beantwortet danach die Fragen:

sudo dpkg-reconfigure phpmyadmin

Danach funktioniert bei mir wieder alles prima.

Anschließend, wenn alles durchgelaufen ist, muss das System neu gestartet werden:

sudo reboot

Fertig, nun läuft der Server mit Debian 8 Jessie!

Fazit

Zwar sind es für ein Systemupgrrade eine Menge kleiner Einzelschritte, aber es ist nicht wirklich kompliziert. Wie gesagt, mir wäre ein einzelnes Programm lieber, dass diese Schritte automatisch erledigt und prüft, was nötig ist und was nicht. Dennoch, alles lief problemlos und einfach.

Projekt Homeserver im Eigenbau 5: Debian auf dem Server installieren

Das hat man nun davon! 🙂 Da wollte ich die Wartezeit, bis die Hardware da ist, abkürzen, und schon mal paar Texte vorschreiben, da gerät alles durcheinander. Da verspreche ich die Installation zu Teil 3, da fällt mir auf, oh, wir haben ja noch gar nicht über Linux gesprochen. Da verspreche ich die Installation zu Teil 4, da fällt mir auf, oh, wir haben ja noch gar kein Installationsmedium. Aber jetzt ist’s wirklich so weit, in diesem Teil installieren wir Linux auf dem Server!

Kleiner Nachtrag zur Hardware

Es scheint immer mehr in Mode zu geraten, in die Gehäuse keine PC-Lautsprecher mehr einzubauen. Ich meine dieses Pieps-Ding. Klar, im normalen PC-Betrieb ist der Nutzen so eines Piepsers zu vernachlässigen. Es gibt meiner Ansicht nach aber trotzdem eine Menge Gründe, auf so einen Piepser nicht zu verzichten. Als Blinder weiß man z. B. ob der Rechner normal bootet, oder einen Fehler hat, weil er dann einen längeren Piepton von sich gibt. Fällt ein CPU-Lüfter aus, ob er nun kaputt ist oder nur ein Kabel sich darin verfangen hat, piept der Rechner. All diese Meldungen bekommt man nicht, wenn der Piepser fehlt. Und bei meinem Zalman Z11 Plus ist leider keiner dabei gewesen.

Ich habe für 5,37 € ein Mainboard Diagnoseset gekauft, welches aus 5 Teilen besteht. Da sind die LEDs für Power und HDD, Reset-Taster und Power-Taster. Die brauche ich nicht, lege ich mal bei Seite. Aber es war halt auch ein aufsteckbarer Piepser im Tütchen, so dass mein Board wieder Pieptöne von sich geben kann.

Das ist auch später noch mal wichtig, weil ich versuchen will, dem Server beizubringen, bei Fehlern sich akustisch bemerkbar zu machen.

Installation

Naja, das BIOS haben wir nun konfiguriert, den Installations-Stick erstellt, die Kaffeemaschine ist aufgetankt und mit ausreichend Kaffee beladen, dann kann es ja los gehen.

Ich habe den Server jetzt neben meinen eigentlichen Windows-Rechner gestellt, weil ich mir paar Kabel davon ausleihen möchte. Ich schließe den Monitor, Tastatur, Netzwerk, Strom und Braillezeile an den Server an.

Ja, Debian unterstützt von Haus aus Braillezeilen. Und zwar läuft im Textmodus der Screenreader brltty. Hat man eine Zeile, die davon unterstützt wird, so wird diese automatisch erkannt, und ab einem bestimmten Punkt der Installation, relativ am Anfang sogar, hat man Brailleunterstützung. Ich habe eine Handy Tech EasyBraille, die von brltty unterstützt wird.

Anschließend stecke ich den Stick mit der Debian-Installation in einen freien USB-Anschluss an der Vorderseite des Gehäuses und schalte den Rechner ein. Für eine kurze Zeit noch braucht ihr sehende Hilfe, bis der Debian-Installer auf den Textmodus umgeschaltet hat und die Braillezeile läuft. Falls ihr keine Zeile habt, die von Debian unterstützt wird, oder überhaupt keine, so könnte man die Installation mittels Sprachausgabe nutzen. Aber wie das geht und wie genau das funktioniert, habe ich nicht getestet. In so einem Falle würdet ihr für die Installation noch sehende Hilfe benötigen.

Wenn ich den Rechner jetzt also einschalte, und er piepst einmal ganz kurz, drücke ich mehrmals F11, damit ich den Auswahlbildschirm bekomme, in dem ich das Boot-Laufwerk auswählen kann. Von der SSD können wir ja nicht booten, da ist ja noch nix drauf. Hier wähle ich meinen USB-Stick aus und drücke Enter. Wenige Sekunden später piepst es erneut, und diejenigen unter euch, die einen Sehrest haben, sehen das grafische Debian-Menü vor sich.

Installationsmethode

In so gut wie allen Fällen sollte die Standardinstallationsmethode die richtige sein. Hier werden einem nur sehr wenige Fragen gestellt und vieles mit Standardwerten festgelegt. Der Cursor steht da schon drauf, wollt ihr also die normale Installation nutzen, drückt einfach auf Enter.

Ich möchte aber den Expertenmodus nutzen. Hier werden einem alle Fragen gestellt, was natürlich auch etwas länger dauern könnte. Aber dafür muss ich hinterher die Werte nicht manuell in irgendwelchen Konfigurationsdateien anpassen. Offen gestanden, ich weiß nicht, welche Fragen da alle kommen, aber ich nehme fast an, es könnte mir später Arbeit ersparen, wenn ich den Expertenmodus nehme. Den erreicht ihr, wenn ihr gleich 2 mal Pfeil runter drückt, Enter, und noch 1 mal Pfeil runter und Enter. Ein paar Sekunden später kommt die Braillezeile und es steht „Choose language“ auf der Zeile.

Sprache und Regionseinstellungen

Bei der Sprache wähle ich Englisch. Das hat mehrere Gründe:

  • Manche Programme sind nicht übersetzt. So hätte ich ein Gemisch aus deutschen und englischen Programmen. Und für mich ist es relativ egal, weil mein Englisch für so was ausreicht.
  • Wenn ich Skripte aus dem Internet abschreibe oder herunterlade, funktionieren die evtl. nicht, wenn ich auf Deutsch umstelle. Die suchen auf dem Bildschirm nach bestimmten Texten, und die sind in Deutsch dann ja anders als im Skript hinterlegt.
  • Wenn man Anleitungen im Internet liest, sind da oft die englischen Begriffe aufgeführt. So komme ich zumindest mal nicht durcheinander.

Letztlich könnt ihr das so handhaben, wie es euch beliebt. Ich habe es gerne in Englisch.

Bei der Auswahl des Landes nehmen wir wieder Deutschland, damit Zeitzone und andere Werte korrekt gesetzt werden. Auch für die Tastatur wähle ich Deutschland.

CD-ROM Erkennung und Installer-Module

Anschließend wird das System nach CD-ROM-Laufwerken durchsucht, um evtl. CDs oder DVDs mit Debian zu finden. Ist dies getan, kommt eine Liste der Installer-Module, die man optional laden kann. Hier ist nichts nötig, denke ich mal.

Netzwerk

Zuerst wird man gefragt, ob man das Netzwerk automatisch konfigurieren will. Nein, das will ich nicht. Ich will dem Server eine feste IP geben, und damit ich das nicht nachher umständlich in Konfigurationsdateien machen muss, mache ich das gleich hier. Also wähle ich „Nein“ als Antwort.

Nun kommt die übliche Abfrage nach IP-Adresse, Subnetzmaske und Gateway, und zwar jeder Wert in einem eigenen Dialogfeld. Schön ist, dass Subnetzmaske und die Adresse der Fritz!Box als Gateway schon eingetragen waren, nachdem ich die IP-Adresse eingegeben hatte. Und am Ende gibt es noch ein schönes Dialog, wo die Daten noch einmal angezeigt werden und bestätigt werden müssen.

Danach kommt etwas wichtiges, nämlich der Hostname. Der Server braucht einen Namen, und so einfallsreich, wie ich nun mal bin, nenne ich den einfach mal „server01“. 🙂 Anschließend wird man nach einem Domain Name gefragt. Das Feld lasse ich leer.

Benutzer

Als erstes wird man gefragt, ob man Shadow Passwords nutzen möchte. So ganz habe ich das nicht verstanden, aber es werden die Passwörter wohl in einer separat verschlüsselten Datei gespeichert. Es soll das System noch sicherer machen. OK, dann sagen wir mal ja dazu.

Die Frage, ob der User Root sich einloggen kann, beantworte ich mal mit nein. Root darf alles, und wer sich als Root einloggen kann, hat alle Rechte. Lieber habe ich es, dass es den User Root nicht gibt, aber ein Admin sich je nach Bedarf Root-Rechte aneignen kann. So weiß niemand von außen, wer die Rechte hat, am Rechner alles zu dürfen…

Hierauf kommen Dialogfelder, die den vollständigen Namen, Nutzernamen und Passwort des Hauptbenutzers abfragen. Da sag ich jetzt mal nicht, was ich da so alles eintrage… 🙂

Zeiteinstellungen

Seit hier bitte ganz besonders vorsichtig. Das hat mich gerade eine Menge Zeit gekostet, man beachte die Ironie… 🙂 Denn wenn ihr gefragt werdet, ob ihr die Zeit mittels eines Zeitservers einstellen möchtet, sagt bitte „NEIN“! Denn wenn ihr „Ja“ sagt, steigt euch die Braillezeile aus. 🙁 Ich habe also „Nein“ gesagt, und bekomme nun endlich die Liste der Zeitzonen, aus der ich „Europe/Berlin“ auswähle.

Festplatten und Partitionierung

Hier mache ich nicht viel, weil ich ja die ganze SSD als Systemplatte nutzen möchte. Daher verlasse ich mich auf die Automatik des Installers und wähle die geführte Partitionierung der gesamten Platte aus.

Nun erscheint eine Liste, aus der ich meine SSD auswählen kann. Auch hier muss man vorsichtig sein, man könnte nämlich auch seinen USB-Stick versehentlich auswählen. Auch, wenn schon andere Platten im System sind, ist hier Vorsicht geboten.

Anschließend werdet ihr noch nach dem Partitionsschema gefragt, also ob ihr eine große Partition für alles, oder getrennte Partitionen für diverse Dinge haben wollt. Warum so kompliziert? Ich packe alles auf eine Partition. Und auch im nächsten Dialog, wo man noch per Hand eingreifen könnte, gehe ich auf „Finish partitioning and write changes to disk“. Im folgenden Dialog gibt es noch mal eine Zusammenfassung, die, wenn alles richtig ist, mit „Ja“ bestätigt wird.

Nun dauert es etwas, weil jetzt das Basissystem installiert wird.

Kernel und weitere Fragen dazu

Es kommt die Frage, welcher Kernel installiert werden soll. Angezeigt werden mir 2, einer mit der Versionsnummer 3.2 und einer ohne Versionsnummer. Der ohne Versionsnummer ist schon markiert, also nehme ich den mal.

Anschließend wird man nach einem initrd gefragt. Es geht darum, ob es ein generischer initrd sein soll, der alle Treiber enthält, oder ein gezielter, der nur die Treiber dieses Systems enthält. Ich habe mich für den generischen entschieden, weil ich so problemlos hardware austauschen kann, ohne das System neu installieren zu müssen.

Paket-Manager

Die Netinst-Installation beinhaltet ja nur das Basissystem. Also muss der Rest aus dem Internet nachgeladen werden. Hier wird man als nächstes auch gleich gefragt, ob man einen Spiegelserver nutzen möchte. Das wollen wir natürlich. Und als Protokoll nehme ich HTTP. In der Länderauswahl wähle ich wieder Deutschland. Hier kommt nun die Liste der Spiegelserver, von denen ich den obersten nehme.

Gefragt nach meinen Proxy-Einstellungen, lasse ich das Feld leer. Ich gehe ja nicht über einen Proxy ins Netz.

Bei der Frage, ob ich auch Non-Free-Software nutzen möchte, sage ich „Ja“. Das ist Software, die zwar mit Debian läuft, aber evtl. andere Urheberrechte hat, als Debian üblicherweise verwendet. Daher nennt Debian diese auch Nicht-freie Software.

In einem anschließenden Dialog kann man festlegen, ob man nur Sicherheitsupdates, oder auch neue Versionen von Programmen haben möchte. Das sind aber keine automatischen Updates, sondern nur die Möglichkeit, beides zu nutzen. Daher habe ich es so gelassen, wie es eingestellt ist, beide sind angehakt.

Software Installation

Nun kommen noch paar Fragen zur Software selbst. Die erste Frage ist z. B., ob ich am Popularitätswettbewerb für die Pakete teilnehmen will. Klingt erst mal doof, ist es aber gar nicht. Hier wird statistisch erfasst, welche Pakete am beliebtesten sind, so dass diese bei den Installations-CDs auf die erste Disk kommen. So braucht man sich nicht alle CDs oder DVDs von Debian runterladen, sondern hat die beliebtesten Pakete immer gleich auf der ersten CD. Ich möchte da trotzdem nicht mitmachen.

Dann kommt eine Frage bezüglich von man und mandb, das sind die Online-Hilfeseiten für Befehle und Linux selbst. Hier wird gefragt, ob ich die Seiten als vorformatierte Seiten haben will, sage ich „Nein“.

Und nun kommt mit einer der wichtigsten Teile der Installation. Hier wird nämlich jetzt ausgewählt, wofür der Rechner eigentlich genutzt wird. Genau genommen ist hier eine Liste von Programmen, die ich auswählen kann, um z. B. einen Webserver, Mailserver, Dateiserver usw. zu betreiben. Daher werde ich in einer Liste angeben, was ich an-, oder abgewählt habe:

  • Debian desktop environment, Abgewählt. Wahrscheinlich grafische Benutzeroberfläche, brauche ich nicht.
  • Web Server, angewählt.
  • SQL Database, angewählt.
  • File Server, angewählt.
  • SSH Server, angewählt.

Nun, das dauert jetzt, bis er alles runtergeladen und installiert hat… Oh, so lange hat das gar nicht gedauert, weniger als 3 Minuten!

Bootloader installieren

Die SSD muss ja auch noch bootfähig gemacht werden. Das geht mit dem Bootloader GRUB. Zunächst sucht GRUB, ob noch andere Betriebsysteme installiert sind. In meinem Falle natürlich nicht. Also fragt es, ob es den Botloader in den Master Boot Record der ersten Platte schreiben darf. Da das meine SSD ist, sage ich mal „Ja“.

Abschluss der Installation

Nun tut das System noch was, ich denke, es schreibt noch Konfigurationen. Anschließend werde ich gefragt, ob die Systemuhr auf UTC eingestellt ist, oder auf Lokalzeit. Ich war eigentlich immer der Ansicht, die sei auf Lokalzeit eingestellt. Wie auch immer, standardmäßig gibt er UTC vor. OK, akzeptiere ich mal so. Wenn es falsch ist, kann man das evtl. später noch korrigieren.

Er will, dass ich den USB-Stick abziehe und Enter drücke. OK, mache ich das, er will neu starten. Nun noch mal schnell einloggen um zu sehen, ob alles geklappt hat. Ja, es geht!

Und jetzt?

Ja, jetzt drücke ich mal kurz den Power-Taster, um den Rechner abzuschalten. Danach bekommt mein Windows-Rechner erst mal seine Kabel zurück. Der Server verschwindet jetzt in eine Ecke, wo es nur Strom und Netzwerk gibt. Ab jetzt wird er von meinem Windows-Rechner ferngesteuert.

Und wie das geht, schreibe ich im nächsten Teil.

Projekt Homeserver im Eigenbau 3: Kleiner Versuch einer Linux-Einführung

Bevor wir jetzt Linux aber auf dem soeben fertiggebauten Server installieren können, müssen wir reden. Natürlich, über Linux selbst. Schließlich ist das ein völlig anderes Betriebssystem mit einer vollkommen anderen Bedienstruktur. Und ich möchte in diesem Artikel versuchen, mit einem Hauruck-Crashkurs zumindest die Grundprinzipien von Linux zu vermitteln, zumindest, soweit ich diese auch verstanden habe… 🙂

Als ich mit XBMC einen eigenen Mediacenter-PC gebaut habe, habe ich, weil ich eben über Linux nichts oder nur wenig wusste, die fertige XBMC-Distribution genutzt, die das XBMC-Team auf ihren Seiten zum Download angeboten hatte. Damals war das noch XBMC 9.11. Der Vorteil war, man legt die CD ein, lässt es installieren, und muss sich um nichts mehr kümmern. Alles ist vorkonfiguriert, alle nötigen Programme und Pakete sind bereit und man muss den PC hinterher wirklich nur noch einschalten, um XBMC nutzen zu können. Aber wie das so ist, es packte mich die Neugier. Also habe ich mir Anleitungen im Netz gesucht, um XBMC von Grund auf selbst zu installieren und zu konfigurieren. Dabei habe ich eine Menge Probleme gehabt, viele Lösungen gesucht und gefunden und dabei auch beträchtlich über Linux gelernt. OK, so ein bisschen weiß ich jetzt also über Linux, aber auch das ist nur unwesentlich mehr, als zum einfachen Betrieb nötig ist. Daher muss ich auch jetzt noch oft in Foren suchen oder Anleitungen lesen. Aber dennoch, Linux ist längst nicht mehr das Unbekannte, wovor man sich fürchten müsste… 🙂

Debian für den Server

Auf dem Server will ich Debian installieren. Linux ist eigentlich nur der Kern, oder was auch Kernel genannt wird. Das ist das eigentliche Herz des Systems. Eine Distribution ist der Linux-Kernel und eine Sammlung von Programmen, die zum Betrieb eines PCs oder Servers nötig sind. Jede Distribution hat andere Schwerpunkte. Manche sind für kommerziellen Einsatz optimiert, manche für den möglichst einfachen Gebrauch von Heim-PCs, und so hat jede Distribution ihre Berechtigung. Ubuntu mit seinen vielen Unterformen z. B. basiert auf der Debian-Distribution, unterscheidet sich aber in einigen Details. So wird hier mehr Wert auf einfache Bedienbarkeit gelegt. Debian hingegen wird gerade für Server gerne genommen, da es hier schneller und zuverlässiger arbeitet, so entnehme ich das jedenfalls einigen Forenbeiträgen, wo es um die Diskussion ging, welche Distribution denn nun für was am besten geeignet ist.

Keine grafische Oberfläche

Für Linux gibt es eine Menge grafischer Oberflächen. Diese machen das Arbeiten unter Linux auch nicht wirklich komplizierter, als unter Windows. Für blinde Anwender, soweit jedenfalls meine Informationen, ist Gnome eine beliebte grafische Oberfläche, weil es hierfür den Screenreader Orca gibt. Ich selbst habe mit grafischen Oberflächen auf Linux nie gearbeitet.

Auf dem Server wird jedoch keine grafische Oberfläche installiert. Wieso auch? Am Server selbst wird niemals jemand arbeiten. Er wird vollständig aus der Ferne gesteuert und soll ja nur Daten anliefern und andere Dienste bereitstellen. Also wird hier so gut wie nur mit der Eingabeaufforderung gearbeitet werden. Ab und zu werden Texteditoren gebraucht, um Konfigurationsdateien zu bearbeiten, aber das Meiste wird mit Kommandozeilenbefehlen erledigt. Für mich persönlich ist das nicht so wild. Ich habe lange noch unter DOS gearbeitet, und auch jetzt noch, unter Windows 7, gibt es Dinge, die ich immer noch mit der Kommandozeile erledige, weil es, aus meiner Sicht, leichter ist.

Linux im Überblick

Im Laufe der Artikelserie über die Einrichtung des Servers werde ich vieles noch im Detail beschreiben. Dennoch werde ich, weil es zum Verständnis wichtig ist, einige Dinge kurz anreißen. Wenn ihr also mit meiner stichwortartigen Beschreibung im Augenblick noch nichts anfangen könnt, macht euch keine Sorgen, wenn es wichtig wird, werde ich es noch im Detail beschreiben.

Installation

Die Installation werde ich zwar beschreiben, vor allem auch, welche Antworten ich bei bestimmten Fragen des Installers ausgewählt habe und warum, aber ich werde den Prozess nicht sehr detailliert ausführen. Die Installationsanleitung auf der Debian Webseite ist sehr ausführlich und beschreibt den Vorgang und alles was dazu gehört sehr präzise und leicht verständlich. Daher denke ich, muss ich das nicht wiederholen. 🙂

Bedienung

Die Bedienung des Servers wird von einem anderen PC im gleichen Netzwerk aus durchgeführt. Ich verwende hierfür Putty, einen SSH-Client. Wie das genau geht, was dazu nötig ist und wie man das einrichtet, werde ich dann noch zu gegebener Zeit genauer erläutern. Ich nutze Putty unter Windows 7 X64 mit Jaws eigentlich schon länger für meine XBMC-Maschine. Das lässt sich eigentlich ganz gut so bedienen.

Kleiner Überblick über Linux-Eigenheiten

Für den Einsatz von Linux gibt es eine Reihe von Dingen zu beachten, die ich mal hier aufzählen möchte:

  • Linux hat eine viel strengere Trennung von Administratoren und Benutzern. Der Benutzer kann bestimmte Operationen einfach nicht durchführen. Das Editieren der Konfigurationsdateien z. B. ist einem normalen Benutzer nicht möglich. Damit er es doch kann, braucht er das Administrationskennwort, oder auch das Root-Passwort. So könnte ein Benutzer eine Konfigurationsdatei editieren, wenn er dem System sagt, dass er das jetzt als Admin tut. Dafür wird dem jeweiligen Befehl ein sudo vorangestellt. Wundert euch daher nicht, dass fast alle administrativen Befehle mit einem sudo beginnen. Dann wird das Admin-Kennwort abgefragt, und ihr editiert die Datei z. B. mit Admin-Rechten.
  • Linux kennt keine Laufwerksbuchstaben. Jede Festplatte hat einen Gerätenamen oder eine Gerätedatei, und jede Partition auf der Festplatte ist nummeriert. Die Gerätedateien findet man im Verzeichnis /dev. Zu Verzeichnisnamen sage ich gleich noch was. SATA-Festplatten heißen in der Regel sdXY, wobei X für die Platte und Y für die Partition steht. Die erste SATA-Platte hieße dann sda und die zweite Platte sdb. Die erste Partition auf Platte 1 wäre dann sda1 und so weiter. Der ganze Pfad zur ersten Partition der ersten platte wäre dann also /dev/sda1.
  • In Linux werden für Verzeichnisse keine Backslashe genutzt. Genau genommen habe ich diese nur in Skripten oder komplexen Suchmustern gesehen. Hier ist der normale Schrägstrich das, was in Windows der Backslash ist. Das Hauptverzeichnis, oder auch Root, ist also /. Hierunter befinden sich dann die einzelnen Verzeichnisse. Zum Beispiel ist /etc das Verzeichnis, indem die Konfigurationsdateien liegen, /home ist das Verzeichnis, indem die Benutzerverzeichnisse liegen, /dev ist das Geräte-Verzeichnis usw.
  • Um also ein Verzeichnis oder eine Datei von einer Festplatte zu lesen, bedarf es eines Zwischenschritts. Wie gesagt, es gibt ja keine Laufwerksbuchstaben. Was man in Linux tut ist, man Mountet ein Laufwerk. Oder auch ganz einfach gesagt, man hängt es in den Verzeichnisbaum ein. Ist also die zweite Partition auf der ersten Platte, also /dev/sda2, die Datenpartition? Nun könnte man im Hauptverzeichnis / ein Verzeichnis „Daten“ anlegen. Hier hängt man dann, also mountet, die Partition /dev/sda2 ein. Nun erreicht man alle Verzeichnisse und Dateien auf der ersten platte und der 2. Partition dadurch, dass man in das Verzeichnis /Daten wechselt. Hier ist das Hauptverzeichnis der 2. Partition der ersten Platte. Klingt erst mal kompliziert, ich weiß. Macht man sich mit dem Konzept aber mal vertraut, ist es eigentlich ziemlich einfach.
  • Linux achtet in allem auf Groß- und Kleinschreibung. Das gilt für Verzeichnisse, Dateien, Befehle und auch dessen Optionen. Das Verzeichnis /daten ist ein anderes als /Daten. Die Option -p tut was anderes als -P. Daher ist es ungemein wichtig, dass ihr Befehle, die ich in Beispielen aufführe, ganz genau abschreibt und dabei auf Groß- und Kleinschreibung achtet. Bestenfalls passiert nichts, schlimmstenfalls löscht ihr Daten oder beschädigt das Dateisystem.
  • Programme, oder auch Pakete, in Linux zu installieren, ist eigentlich auch total einfach. Jede Distribution installiert erst mal nur die Pakete, die unbedingt nötig sind. Will man andere Pakete nachinstallieren, kommen sie aus einem Repository, also einer Quelle für Programme, die speziell für diese Distribution gedacht sind. Das System kennt seine Paketquelle, so dass man ihm nur sagen muss, was man haben möchte. Wollte man also den Editor Nano installieren, würde man mit dem Befehl „apt-get install nano“ sein Ziel erreichen. Genauso einfach kann man es auch wieder loswerden, mit „apt-get remove nano“ verschwindet das Paket wieder vom System. Auch, wenn ein Programm installiert wird, welches auf andere Pakete angewiesen ist, kümmert sich das System drum, dass auch diese mit installiert, oder später auch wieder entfernt werden.

War sonst noch was?

Wie gesagt, das soll euch nur mal einen groben Überblick geben, was Linux ist, wie es in etwa funktioniert und wie wir es in Zukunft bedienen werden. Wie ich schon sagte werde ich auf die wichtigen Punkte noch im Detail eingehen, wenn es so weit ist und wir damit arbeiten. Für jetzt möchte ich nur, dass euch Begriffe wie root, sudo, mount und dergleichen nicht völlig fremd sind.

Wenn ihr euch etwas in Linux einlesen möchtet, kann ich euch das Debian Anwenderhandbuch von Frank Ronneburg empfehlen. Zwar solltet ihr auch die ersten Kapitel lesen, aber so ab Kapitel 3 geht es dann um die Grundlagen von Debian.

Tja, dann würde ich sagen, fangen wir mal mit der Installation an. Falls sich weitere Fragen ergeben, beantworte ich diese, so bald sie akut werden. Und falls ich etwas falsch erklärt haben sollte, bitte ich um einen Hinweis, damit ich den Text entsprechend korrigieren kann. Ich will ja keine Falschinformationen verbreiten. 🙂