Hi,
in diesem Thread möchte ich meine Erfahrung der letzten Monate, im Zusammenhang mit dem Linux-Server,
in Form eines How-To's zusammenfassen.
Ich werde nach und nach weitere Artikel hinzufügen,
und hoffe dass damit einigen die Arbeit erleichert wird.
Inhalt:
* Nötiges Grundwissen
* Hardware - Systemvoraussetzungen
* Das Betriebssystem
* Die Installation
* Umgang mit dem VI-Editor
* Netzwerkfreigaben einrichten
* Benutzer + Passwort für die Netzwerfreigaben konfigurieren
* Statische IP-Adresse einrichten
* Erweitern der Paketquellen
* Wake-On-Lan konfigurieren
* Webserver installieren, inkl. PHP5 und MYSQL
* mySQL Konfiguration
* mySQL Datenbank anlegen
* mySQL User anlegen
* TV-Streaming (VDR)
Nötiges Grundwissen:
In den meisten Fällen wird ein Server ohne Oberfläche installiert,
somit sollte man sich ein wenig mit den grundlegenden Linuxkommandos auskennen, wobei ich hier versuche alles Schritt für Schritt zu erklären.
Weiters ist es sehr praktisch wenn man sich mit dem Konsolen-Editor VI auskennt, wobei ich hier noch mein Protokoll aus dem Schulunterricht gepostet habe.
Hardware - Systemvoraussetzungen:
Linux-Betriebssysteme benötigen keine besonderen Ressourcen, besonders wenn keine GUI (Graphical User Interface) verwendet wird, deshalb kann für einen Server auch ein alter PC aus dem Keller dienen
dennoch sollte er folgende Minimum-Vorraussetzungen besitzen:
* 10 GB-Harddisk für das System
* zusätzliche HDD für Daten, Größe je nach Bedarf, in den meisten Fällen, wegen der alten Hardware, wird hier allerdings noch eine IDE-Platte benötigt
* 128MB Ram
* Prozessor ab schätzungsweise 400MhZ
* 100Mbit Lan-Port (falls nicht vorhanden, empfehle ich diese hier: Intel Pro/1000GT - PCI)
Aus Test-Gründen und um meine Daten nicht zu gefärden, verwende ich eine einzelne Platte für das OS, es ist natürlich überhaupt kein Problem, das OS auch auf die Daten-Platte zu installieren.
Das Betriebssystem:
In dem Beispiel verwende ich die auf Debian Etch basierende Distribution c't VDR. Bei dieser Distribution handelt es sich um eine normales Debian das zusätzlich die VDR-Pakete enthält. Sämtliche der hier angebenen Beispiele sollten auch mit einer ganz normalen Debian-Installation funktionieren, allerdings benötigte ich die VDR-Pakete und die Installation dieser Distribution ist wirklich sehr einfach und ist nach der Installation auch schon sehr gut konfiguriert.
Zum Download gibt es diese Distri hier:
http://www.heise.de/ct/projekte/machmit/ctvdr/wiki/DownLoads
Version 6.1, die neuere Version (6.2) lag nur einer c't-Ausgabe bei und wurde (noch) nicht zum Download zur Verfügung gestellt, wobei für den Einsatzzweck als kleiner Home-Server auch die ältere Version genügt.
edit am 21.2.2009: Inzwischen ist Debien 5.0 alias Lenny veröffentlicht, das HOW-TO sollte auch für diese Distri ohne Probleme funktionieren, einziger Unterschied sind die Repository (Paketquellen)!
Auch mit (*)buntu sollte es funktionieren, allerdings hier bitte als Root arbeiten nicht vergessen -> Rootshell öffnen mit "sudo su" (ohne "")
Die Installation:
Brennen der Image unter Windows: ImgBurn oder Nero
Brennen unter Linux (Gnome): Rechte Maustaste auf die ISO -> Auf CD/DVD schreiben...
CD einlegen und davon booten, der erste Teil der Installation ist gleich wie unter anderm auch die normale Debian oder Ubuntu Textmode-Installation.
Erst am Schluss nach dem Reboot werden sie zum ersten mal ein etwas anderes Menü sehen, hier können die gewünschten zusätzlichen Packages ausgewählt werden. Hier wählen sie einfach nur die Samba-Packages aus.
Umgang mit dem VI-Editor:
VI besteht aus mehreren Mode's,
der Kommando Mode -> diesen erreicht man durch das drücken der ESC Taste
der Text Mode -> diesen erreicht man in dem man i,a oder o drückt
der ex-Kommando Mode -> ESC dürcken und dann : eingeben
Netzwerkfreigaben einrichten:
Die Zentrale Konfiguration von Samba wird in der Datei smb.conf gespeichert.
Diese liegt im Ordnern /etc/Samba/
deshalb geben sie bitte nun folgendes ein:
falls sie eine GUI installiert haben, habe sie Glück und müssen sich nicht mit dem VI herumquälen
und können komfortabel mit einer Oberfläche arbeiten dazu geben sie z.B. folgendes ein
sudo ... wenn sie diesen Befehl vor einen anderen schreiben, wird der nächste mit ROOT-Rechten gestartet,
bei c't VDR benötigen sie diesen aber nicht, da sie hier sowieso immer mit ROOT-Rechten arbeitn
gedit ... ist der Standard-Texteditor von GNOME
nun sollten sie die smb.conf geöffnet haben und einen [global]-Bereich sehen, diesen können sie so belassen, da er schon für Standard-Netzwerkfreigaben konfiguriert ist, für z.B. einen Domain-Controller, müssten hier noch weitere Dinge hinzugefügt werden
ein Beispiel für einen solchen [global]-Bereich:
Quelle: VDR-WIKI.de
Hinzufügen der Netzwerkfreigaben:
Hier müsst ihr nun entscheiden wo ihr eure Daten hinspeichert,
bei der Insallation konntet ihr den Mountpunkt für die Datenplatte angeben.
In den folgenden Beispielen ist dieser für "PFAD" einzusetzen!
Nun haben wir die Konfigurationsdatei immer noch geöffnet, und fügen nun folgenden Code hinzu:
die geänderte Datei noch abspeichern und dann Samba neustarten:
sollten sie nach dem einrichten der Benutzer, und em verbinden über einen anderen Computer keine Schreibrechte erhalten, probieren sie folgendes:
Benutzer + Passwort für die Netzwerfreigaben konfigurieren:
hierzu benötigen sie lediglich zwei Befehle:
für ist natürlich noch der Benutzername einzusetzen,
wenn dies erledigt ist, muss Samba wieder neu gestartet werden.
(/etc/init.d/samba restart)
Statische IP-Adresse einrichten:
Damit sie auch immer wissen welche IP-Adresse ihr VDR hat, geben wir ihm nun eine statische IP. Ganz besonders wichtig ist dies, wenn das eigene Netzwerk aus mehr als einem netz besteht denn dann kann auch nicht mehr über \\server-name zugegriffen werden.
Die Standardeinstellungen für die Netzwerkkarte werden in folgender Datei gespeichert:
/etc/network/interfaces
so sollte am Ende ihre Datei aussehen, wenn wir davon ausgehen dass die verwendete Netzwerkkarte eth0 ist (dies bitte zuerst mit ifconfig überprüfen) dann sollte die Datei etwa so aussehen:
In diesem Beispiel hat der Server die IP 192.168.1.2 und das Netz ist ein C-Klasse Netz mit der IP 192.168.1.0.
Einige von euch werden vermultich schon bermerkt haben dass hier noch etwas fehlt, der DNS-Server:
Dieser wird in folgender Datei eingetragen: /etc/resolv.conf
und diese sieht dann etwa so aus:
Erweitern der Paketquellen:
damit auch Pakete aus dem internet heruntergeladen und installier werden können, muss nun folgende Datei erweitert werden: /etc/apt/sources.list
hier fügen sie bitte nun folgendes hinzu (falls noch nicht automatisch von der Installation eingetragen)
nun bitte speichern und folgendes eingeben:
*Update 20.Juli 2008, hinzufügen des Debian-Multimedia-Keyrings, vielen Dank an Lord_Bender
Wake-On-Lan konfigurieren:
Diese Methode hat noch einen Nachteil, der zweite Befehl, muss jedes mal nach dem starten wieder eingegeben werden, ich habe aus diesen Grund, den Befehl auch in eines der Startscripte im Ordnern /etc/init.d/ hinzugefügt. Allerdings ist dies nicht die schönste Methode, hier werde ich noch eine bessere suchen.
Webserver installieren, inkl. PHP5 und MYSQL:
nun können die Webinhalte in folgendes Verzeichnis koppiert werden:
/var/www/
sollte das Problem auftreten dass die PHP Files nicht angezeigt werden, sondern zum Download angeboten werden, kann es helfen die PHP4-Pakete zu installieren
anschließend sollte der Server auch wieder mal neu gestartet werden:
auch würde es nicht schaden, die ganzen Updates herunter zu laden:
mySQL Konfiguration:
Quelle: Ubuntu.com - Community
Anstatt yourpassword bitte hier nun ein gewünschtest Passwort angeben!
beim nächsten mal einlogen müssen sie folgendes eingeben:
mySQL Datenbank anlegen:
mySQL User anlegen:
User der sämtliche Rechte besitzt (bitte dies nur für debugging machen oder innerhalb eines Home-Netzwerks, aber nie im Internet!
User mit eingeschränkten Rechten:
Addon TV-Streaming (VDR)
to be continued
Verbesserungsvorschläge und neue Ideen für das How-To bitte posten
viel Spaß damit
mfg
aelo
in diesem Thread möchte ich meine Erfahrung der letzten Monate, im Zusammenhang mit dem Linux-Server,
in Form eines How-To's zusammenfassen.
Ich werde nach und nach weitere Artikel hinzufügen,
und hoffe dass damit einigen die Arbeit erleichert wird.
Inhalt:
* Nötiges Grundwissen
* Hardware - Systemvoraussetzungen
* Das Betriebssystem
* Die Installation
* Umgang mit dem VI-Editor
* Netzwerkfreigaben einrichten
* Benutzer + Passwort für die Netzwerfreigaben konfigurieren
* Statische IP-Adresse einrichten
* Erweitern der Paketquellen
* Wake-On-Lan konfigurieren
* Webserver installieren, inkl. PHP5 und MYSQL
* mySQL Konfiguration
* mySQL Datenbank anlegen
* mySQL User anlegen
* TV-Streaming (VDR)
Nötiges Grundwissen:
In den meisten Fällen wird ein Server ohne Oberfläche installiert,
somit sollte man sich ein wenig mit den grundlegenden Linuxkommandos auskennen, wobei ich hier versuche alles Schritt für Schritt zu erklären.
Weiters ist es sehr praktisch wenn man sich mit dem Konsolen-Editor VI auskennt, wobei ich hier noch mein Protokoll aus dem Schulunterricht gepostet habe.
Hardware - Systemvoraussetzungen:
Linux-Betriebssysteme benötigen keine besonderen Ressourcen, besonders wenn keine GUI (Graphical User Interface) verwendet wird, deshalb kann für einen Server auch ein alter PC aus dem Keller dienen
dennoch sollte er folgende Minimum-Vorraussetzungen besitzen:
* 10 GB-Harddisk für das System
* zusätzliche HDD für Daten, Größe je nach Bedarf, in den meisten Fällen, wegen der alten Hardware, wird hier allerdings noch eine IDE-Platte benötigt
* 128MB Ram
* Prozessor ab schätzungsweise 400MhZ
* 100Mbit Lan-Port (falls nicht vorhanden, empfehle ich diese hier: Intel Pro/1000GT - PCI)
Aus Test-Gründen und um meine Daten nicht zu gefärden, verwende ich eine einzelne Platte für das OS, es ist natürlich überhaupt kein Problem, das OS auch auf die Daten-Platte zu installieren.
Das Betriebssystem:
In dem Beispiel verwende ich die auf Debian Etch basierende Distribution c't VDR. Bei dieser Distribution handelt es sich um eine normales Debian das zusätzlich die VDR-Pakete enthält. Sämtliche der hier angebenen Beispiele sollten auch mit einer ganz normalen Debian-Installation funktionieren, allerdings benötigte ich die VDR-Pakete und die Installation dieser Distribution ist wirklich sehr einfach und ist nach der Installation auch schon sehr gut konfiguriert.
Zum Download gibt es diese Distri hier:
http://www.heise.de/ct/projekte/machmit/ctvdr/wiki/DownLoads
Version 6.1, die neuere Version (6.2) lag nur einer c't-Ausgabe bei und wurde (noch) nicht zum Download zur Verfügung gestellt, wobei für den Einsatzzweck als kleiner Home-Server auch die ältere Version genügt.
edit am 21.2.2009: Inzwischen ist Debien 5.0 alias Lenny veröffentlicht, das HOW-TO sollte auch für diese Distri ohne Probleme funktionieren, einziger Unterschied sind die Repository (Paketquellen)!
Auch mit (*)buntu sollte es funktionieren, allerdings hier bitte als Root arbeiten nicht vergessen -> Rootshell öffnen mit "sudo su" (ohne "")
Die Installation:
Brennen der Image unter Windows: ImgBurn oder Nero
Brennen unter Linux (Gnome): Rechte Maustaste auf die ISO -> Auf CD/DVD schreiben...
CD einlegen und davon booten, der erste Teil der Installation ist gleich wie unter anderm auch die normale Debian oder Ubuntu Textmode-Installation.
Erst am Schluss nach dem Reboot werden sie zum ersten mal ein etwas anderes Menü sehen, hier können die gewünschten zusätzlichen Packages ausgewählt werden. Hier wählen sie einfach nur die Samba-Packages aus.
Umgang mit dem VI-Editor:
VI besteht aus mehreren Mode's,
der Kommando Mode -> diesen erreicht man durch das drücken der ESC Taste
der Text Mode -> diesen erreicht man in dem man i,a oder o drückt
der ex-Kommando Mode -> ESC dürcken und dann : eingeben
Code:
Speichern:
ESC drücken -> :wq
oder ESC drücken und ZZ eingeben
Beenden ohne zu speichern:
ESC drücken -> :q!
Löschen in vi: d (delete)
dw delete word nächstes Wort lsöchen
2dw löscht die nächsten 2 wörter
dd löscht ganze zeile
5dd löscht die nächsten 5 zeilen
D löscht ab Cursor-Position bis zum Zeilenende
x einzelnes Zeichen löschen
p platziert den text aus dem zwischenspeicher
pD ausschneiden
u (undo) rückgängig
Koppieren in vi: y (yang)
y (yang) kopieren
yw koppiert nächstes Wort in den Zwischenspeicher
3yw koppiert die 3 nächsten Wörter in den Zwischenspeicher
yy koppiert die ganze Zeile in den zwischenspeicher
10yy koppiert die nächsten 10 Zeilen in den Zwishcnespeicher
Y koppiert ab Cursor bis Zeilenende in den Zwischenspeicher
p aus dem Zwischenspeicherherauskoppieren
Ändern in vi c (change)
cw change word ändert das nächste Wort bis zur eingabe eines ESC
cc ändert die ganze zeile bis zur Eingabe eines EXC
5cc ändert die nächsten 5 Zeilen bis zur Eingabe eines ESC
C änder ab Cursorposition bis zum Ende der Zeile bis zur Eingabe eines
r ändert genau ein Zeichen
s löscht das aktuelle Zeichen und ersgäntz druch die Eingabe bis zur Eignabe von ESC
Netzwerkfreigaben einrichten:
Die Zentrale Konfiguration von Samba wird in der Datei smb.conf gespeichert.
Diese liegt im Ordnern /etc/Samba/
deshalb geben sie bitte nun folgendes ein:
Code:
vi /etc/samba/smb.conf
und können komfortabel mit einer Oberfläche arbeiten dazu geben sie z.B. folgendes ein
Code:
sudo gedit /etc/samba/smb.conf
bei c't VDR benötigen sie diesen aber nicht, da sie hier sowieso immer mit ROOT-Rechten arbeitn
gedit ... ist der Standard-Texteditor von GNOME
nun sollten sie die smb.conf geöffnet haben und einen [global]-Bereich sehen, diesen können sie so belassen, da er schon für Standard-Netzwerkfreigaben konfiguriert ist, für z.B. einen Domain-Controller, müssten hier noch weitere Dinge hinzugefügt werden
ein Beispiel für einen solchen [global]-Bereich:
Code:
[global]
workgroup = WORKGROUP
encrypt passwords = yes
security = user
getwd cache = yes
Hinzufügen der Netzwerkfreigaben:
Hier müsst ihr nun entscheiden wo ihr eure Daten hinspeichert,
bei der Insallation konntet ihr den Mountpunkt für die Datenplatte angeben.
In den folgenden Beispielen ist dieser für "PFAD" einzusetzen!
Nun haben wir die Konfigurationsdatei immer noch geöffnet, und fügen nun folgenden Code hinzu:
Code:
[Filme]
comment = Movie-Archiv
path = /[B]"PFAD"[/B]/movies
writeable = yes
public = yes
[Musik]
comment = Musik-Verzeichnis
path = /[B]"PFAD"[/B]/music
writeable = yes
public = yes
[Daten]
comment = Daten-Verzeichnis
path = /[B]"PFAD"[/B]/data
writeable = yes
public = yes
[Photos]
comment = Photo-Verzeichnis
path = /[B]"PFAD"[/B]/photos
writeable = yes
public = yes
Code:
/etc/init.d/samba restart
Code:
chmod -R 777
Benutzer + Passwort für die Netzwerfreigaben konfigurieren:
hierzu benötigen sie lediglich zwei Befehle:
Code:
adduser
smbpasswd -a
wenn dies erledigt ist, muss Samba wieder neu gestartet werden.
(/etc/init.d/samba restart)
Statische IP-Adresse einrichten:
Damit sie auch immer wissen welche IP-Adresse ihr VDR hat, geben wir ihm nun eine statische IP. Ganz besonders wichtig ist dies, wenn das eigene Netzwerk aus mehr als einem netz besteht denn dann kann auch nicht mehr über \\server-name zugegriffen werden.
Die Standardeinstellungen für die Netzwerkkarte werden in folgender Datei gespeichert:
/etc/network/interfaces
so sollte am Ende ihre Datei aussehen, wenn wir davon ausgehen dass die verwendete Netzwerkkarte eth0 ist (dies bitte zuerst mit ifconfig überprüfen) dann sollte die Datei etwa so aussehen:
Code:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
Einige von euch werden vermultich schon bermerkt haben dass hier noch etwas fehlt, der DNS-Server:
Dieser wird in folgender Datei eingetragen: /etc/resolv.conf
und diese sieht dann etwa so aus:
Code:
nameserver 192.168.1.1
damit auch Pakete aus dem internet heruntergeladen und installier werden können, muss nun folgende Datei erweitert werden: /etc/apt/sources.list
hier fügen sie bitte nun folgendes hinzu (falls noch nicht automatisch von der Installation eingetragen)
Code:
# Offizielle Debian Etch Pakete
deb http://ftp.de.debian.org/debian etch main contrib non-free
deb-src http://ftp.de.debian.org/debian/ etch main contrib non-free
# Offizielle Debian Etch Sicherheitsupdates
deb http://security.debian.org/ etch/updates main contrib non-free
# Debian Multimedia Repository
deb http://www.debian-multimedia.org etch main
deb-src http://www.debian-multimedia.org etch main
Code:
apt-get update
apt-get install debian-multimedia-keyring
apt-get update
Wake-On-Lan konfigurieren:
Code:
apt-get install ethtool
ethtool -s eth0 wol g
Webserver installieren, inkl. PHP5 und MYSQL:
Code:
apt-get install apache2 libapache2-mod-php5 mysql-server libapache2-mod-auth-mysql php5-mysql
/var/www/
sollte das Problem auftreten dass die PHP Files nicht angezeigt werden, sondern zum Download angeboten werden, kann es helfen die PHP4-Pakete zu installieren
anschließend sollte der Server auch wieder mal neu gestartet werden:
Code:
shutdown -r now
Code:
apt-get upgrade
Quelle: Ubuntu.com - Community
Code:
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');
beim nächsten mal einlogen müssen sie folgendes eingeben:
Code:
mysql -u root -p
mySQL Datenbank anlegen:
Code:
mysql -u root -p
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON database1.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword';
User der sämtliche Rechte besitzt (bitte dies nur für debugging machen oder innerhalb eines Home-Netzwerks, aber nie im Internet!
Code:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
Code:
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON database1.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword';
to be continued
Verbesserungsvorschläge und neue Ideen für das How-To bitte posten
viel Spaß damit
mfg
aelo
Zuletzt bearbeitet: