Seite 1 von 1

Wir bauen uns ein NAS selber Teil 4

Verfasst: Sonntag 29. Oktober 2017, 11:32
von Mic-berlin
So, wir starten mal die Installation des BS.
Boot Stick sollte fertig sein und jetzt solltet ihr ihn vom Stick aus Booten. Wie das geht, solltet ihr schon Wissen, ansonsten fragt Tante Google.

Beantwortet alle Fragen.
Kommt die Frage, welche Netzwerkkarte er benutzen soll, dann nimmt sein Vorschlag an. Es ist erstmal egal, weil wir das später alles ändern.
Bei HOSTNAME denkt euch was aus.. Ihr müsst nicht das benutzen, was er euch Vorschlägt.
Passwort ist bei UBUNTU WICHTIG ! Macht ihr keines rein, dann kommt ihr nicht zu den Root Rechten nachher. Also, einfach eines Ausdenken und merken.
Wollt ihr die Platten Encrypten, dann solltet ihr den Punkt aktivieren, aber bedenkt, dass es an Rechnenleistung zum Schluss kostet. Für den Heimgebrauch finde ich das Unsinnig, aber soll jeder selbst Entscheiden.
Bei der Festplatte solltet ihr eine neue nehmen, also, eine die nicht Gebraucht wird im System. Die Daten werden leider gelöscht, wenn ihr die ganze Platte für das System verwendet.
Was ich noch für ein Unsinn halte, ist das LVM System. Ist zwar nett, wenn man einige Platten zu einer Platte macht, aber wenn ein Hardware Ausfall ist, dann sind alle Daten weg. Also, am besten kein LVM. Ich habe es auch so.
So, alles installieren lassen. Achja, die Frage, ob ihr die Updates Automatisch machen wollt, sagt NEIN, dass kann man später per CRON besser lösen.
Folgende Software sollte man auf jedenfall erstmal installieren: OpenSSH Server (zwecks Fernwartung)
LAMP Server ( da ist APACHE2 und PHP7 schon drin)
Samba File Server
Manual Package Selection (Anleitungen)

Weiter installieren lassen.
Wo soll der Bootloader hin geladen werden. Ist nur eine Platte im System, sollte die Frage nicht kommen, ansonsten immer auf "SDA".
Ist das erledigt, solltet ihr den Stick entfernen und rebooten. So das erstmal sollte das System hoch fahren. Nicht wundern, sieht anders aus wie Windows.
So, wir loggen uns das erstmal ein mit Username und das Passwort.

Danach geben wir mal sudo su ein und das Passwort.
Wenn das geklappt hat, dann seit ihr jetzt ADMINISTRATOR.
Folgendes gebt ihr als erstes mal ein.. Das Netzwerkkabel MUSS im Rechner gesteckt sein.

Code: Alles auswählen

apt -y update && apt -y upgrade && reboot
Was bewirkt der Befehl. Das -y sagt uns, dass alle Fragen mit JA beantwortet werden. Dann muss man nicht immer alles zulassen bei dem Updates..
Das Updaten und Upgraden dauert etwas. Je nach System kann es so ca 20 Minuten dauern. Jetzt werden alle neuen Sicherheits Programme installiert.
Da reboot bewirkt, dass zum Schluss der Rechner neu gestartet wird. Sollte man auch machen.

So jetzt installieren wir erstmal WEBMIN, damit wir das alles besser installieren und warten können von einem Windows Rechner.

Als erstes geben wir in der Befehlszeile folgendes ein. Ach ja, ich hoffe, ihr seit wieder als ADMINISTRATOR angemeldet, so wie oben beschrieben.

Code: Alles auswählen

 apt -y install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl apt-show-versions
Um die aktuelle Version von WEBMIN zu bekommen, sucht ihr in euren Browser mal nach der.. Benutzt den Link dafür.

http://www.webmin.com/download.html

Merkt euch die Versions Nummer.. z.B. 1.831
Jetzt holen wir uns das Datenpaket aus dem Internet mal eben.. Folgendes eingeben.

Code: Alles auswählen

wget http://prdownloads.sourceforge.net/webadmin/webmin_XXXX_all.deb
wobei XXXX die Versionsnummer ist. Achtet vielleicht noch auf dem Punkt.
Danach wird das Programm installiert mit folgendem Befehl. Wo ist egal..

Code: Alles auswählen

dpkg --install webmin_XXXX_all.deb
wobei XXXX wieder die Versionsnummer ist.

Ist das alles passiert, können wir uns mit einem Browser einloggen.

Code: Alles auswählen

https://localhost:10000
https://localhost:10000/

Bekommt ihr keine Verbindung, dann gebt mal folgenden Befehl im Ubuntu Server ein.

ifconfig

unter "inet Adresse: XXXXXXXX " seht ihr eure IP

Code: Alles auswählen

https://XXXXXXXX:10000
Nun Versucht folgendes https://XXXXXXXX:10000/

Das müsste gehen.
Sieht dann so aus zum Schluss

[attach=662][/attach]


Jetzt installieren wir MC.(Midnight Commander)
Wer den alten Norton Commander kennt, der wir das Teil lieben.
Installiert wird der so

Code: Alles auswählen

apt -y install mc
Wer noch die Maus vermisst, der kann noch folgendes mit installieren.

Code: Alles auswählen

apt -y install gpm
Auf gerufen wird der einfach mit mc oder mit Parameter wie z.B. mc /etc /var .
Somit ist im linken Fenster schon das Verzeichniss etc und im rechten Verzeichniss var zu sehen.

Jetzt kommen die Überwachungs Programme dran.
LM-Sensors

Einfache Kiste mit

Code: Alles auswählen

apt -y install lm-sensors
danach sensors-dectect ausführen. Alles mit der Return/Enter Taste bestätigen. Mehr braucht man nicht.
Das Ergebnis sehen wir nachher bei WEBMIN auf der Oberfläche.

Jetzt die Überwachung der Festplatten. Installiert mit

Code: Alles auswählen

apt -y install smartmontools
Weitere Infos kann man hier nach lesen.

Jetzt kommen wir zu den Netzwerkkarten und ihrer Einstellung. Kann etwas kompliziert werden, aber ist es nicht.. Nur die Ruhe bewahren..

Als erstes installieren wir folgende Sachen.

Code: Alles auswählen

apt -y install ifenslave-2.6 net-tools ethtool bmon
Jetzt kommt das Einstellen der bond0 Option dran.
Ich zeige euch mal meine interfaces Datei im Verzeichnis /etc/network. Diese bitte nach eigene Daten ändern.

Code: Alles auswählen

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo 
iface lo inet loopback

auto enp1s6
iface enp1s6 inet manual
bond-master bond0
bond-primary enp1s6

auto enp1s8
iface enp1s8 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.2.5
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.2.1
dns-nameservers 192.168.2.1
bond-slaves none
##bond-slaves enp1s6 enp1s8
bond-mode 0
bond-miimon 100
#bond-updelay 200
#bond-downdelay 200
#modprobe bonding
#bond-lacp-rate 1
Zu ändern wären die IPs, network, broadcast, gateway, dns-nameservers und der Kartenname der Netzwerkkarte. Hier heissen meine enp1s6 oder enps1s8. Ansonsten kann man den Rest lassen.
Aber ehe ihr jetzt die Sachen einfach rein kopiert und ändert, macht vorher von der Datei ein Backup.

Jetzt noch eine neue Datei im Verzeichnis /etc/modprobe.d mit dem Namen bonding.conf anlegen und den folgenden Inhalt rein kopieren.

Code: Alles auswählen

alias bond0 bonding
options bonding mode=1 miimon=100
Damit das auch beim nächsten mal Startet, einfach in der Datei /etc/modules am Ende folgendes rein schreiben.
bonding

Mehr Infos bekommt man hier .

Wenn alles soweit fertig ist, dann benutzen wir mal den Befehl reboot für ein Neustart.
Jetzt sollte alles fertig sein..

Sollte mal ein Fehler auftauchen, dann benutzt den Befehl systemctl --state=failed und schaut euch den Fehler an.
Noch was zum Programm bmon.
[attach=659][/attach]
Dieser zeigt euch, wenn alles läuft, daß Lastenverhältnis eurer Netzwerkkarten an. So kann man Kontrollieren, ob sie auch laufen und die Geschwindigkeit was sie bringen. Läuft bei mir ständig.
Einfach bmon eingeben. Beenden kann man das mit der Q Taste und Y Taste. Pfeil rauf und runter Taste kann man die Daten der Karte sehen.. Probiert es einfach aus..

Kommen wir zu Samba.
Was ist SAMBA ? Das kann man hier nach lesen..
Wir hatten ja bei der Installation von Ubuntu Server das Samba ja schon mit installiert.
Ob wir alles haben, was wir brauchen, können wir so kontrollieren. Manch einer denkt jetzt, was soll das, aber er wird jetzt nicht nur das installiert, was ich jetzt angebe, nein, die Abhängigen Programme werden, wenn benötigt mit installiert. Schaden kann es auf jedenfall nicht.

Code: Alles auswählen

apt -y install samba-common samba samba-doc samba-doc-pdf tdb-tools
Jetzt erstmal ein SAMBA User anlegen.
Folgende Optionen gibt es.

Code: Alles auswählen

sudo smbpasswd -a <username> # Fügt den Benutzer <username> der Samba Datenbank hinzu und aktiviert diesen
sudo smbpasswd -x <username> # Entfernt den Benutzer <username> aus der Samba Datenbank
sudo smbpasswd -d <username> # Deaktiviert den Benutzer <username> in der Datenbank
sudo smbpasswd -e <username> # Aktiviert den vorher deaktivierten Benutzer <username> in der Datenbank wieder 
Wir brauchen aber erstmal nur

smbpasswd -a >username>

Passwort wird verdeckt eingegeben, also nicht Wundern.

Jetzt gibt es 2 Möglichkeiten, wie wir das Samba Programm Einrichten, entweder in /etc/samba/smb.conf oder mit WEBMIN. Dazu muss man aber erstmal in WEBMIN den Punkt Module aktualisieren anklicken.
(unter Webmin - Webmin-Configure kann man unter Languane das ganze auf Deutsch einstellen)

Code: Alles auswählen

smbpasswd -a <username>
Wichtig ist auch, dass ihr die Verzeichnisse für Samba frei gibt.
Z.B.: das Verzeichniss heisst "TESTINSTALL auf den Linux Server, dann muss man noch folgendes schreiben

chown -R username:sambashare /TESTINSTALL

Somit wird die Lese und Schreibstruktur in dem und in den darunter liegenden Verzeichnisse angepasst.
Username ist der Name, den ihr bei SAMBA angegeben habt. Siehe davor.
Das war mal mein Problem gewesen, dass ich nicht schreiben konnte in den Verzeichnissen.


Danach unter Server - Samba-SMB/CIFS-FILESERVER anklicken.
Hier kann man dann Verzeichnisse auf den LINUX Laufwerken für andere frei geben.

Ich gebe euch mal ein Beispiel, wie es in der /etc/samba/smb.conf Datei für ein Verzeichniss aus sieht.

Code: Alles auswählen

[netzlaufwerk]
    public = yes
	delete readonly = yes
	writeable = yes
	browseable = yes
	create mask = 0666
	directory mask = 0777
	force group = sambashare
	force user = mic-berlin
	path = /netzlaufwerk
    guest ok = yes
Wenn ihr nicht weiter kommt, dann schreibt einfach was dazu und wir suchen eine Lösung ..
Lass euch nicht beirren mit den ganzen Einstellungen, etwas Probieren und dabei lernt man auch.

WICHTIG !!!! Denkt immer daran, LINUX unterscheidet zwischen Groß und Kleinschreibung. Wenn ihr ein Verzeichniss sucht, was Test heisst, dann findet ihr nicht das Verzeichniss test. Ist nicht wie bei Windows..
Ich kann auch ein Verzeichniss Test aufmachen und dazu eine Datei test. Da meckert Linux nicht, wobei glaube ich Windows schon meckert.

So, kommen wir zu NFS-Kernel-Server
Wir installieren erstmal das Teil

Code: Alles auswählen

apt -y install nfs-kernel-server 
Samba hat den Nachteil, daß die Übertragungsraten nicht besonderlich hoch sind. Das ändert NFS.
Weitere Infos zu NFS-Kernel-Server könnt ihr hier lesen.
Auch hier kann man entweder per Editor unter /etc die Datei exports editieren oder unter WEBMIN - Netzwerk - NFS-EXPORTS
Bitte achtet darauf, wie ihr unter SAMBA die Pfade macht und so müssen sie auch unter NFS-Kernel-Server sein.
Ich gebe mal wieder ein Beispiel, wie es bei mir aus sieht.

Code: Alles auswählen

/media 192.168.2.0/255.255.255.0(async,rw,crossmnt)
Erläuterung
/media ist das Verzeichnis was ich frei geben möchte für das Netzwerk, auch immer darauf achten auf Groß und Kleinschreibung.
192.168.2.0/255.255.255.0 ist das Netzwerk mit Broadcast. Man kann auch einzelne IPs freigeben. Hier wird der ganze IP bereich frei gegeben. Nachlesen im oberen Link

async heisst, die Daten die geschrieben werden, werden nochmals verglichen.
rw heisst, in diesen Bereich habe ich Schreib und Leseberechtigung
ro würde heissen, ich darf nur lesen aber nicht schreiben
crossmnt heisst, alles wird auch in Unterverzeichnisse angewand.

Jetzt noch Mediatomb einrichten, damit wir auch Bilder, Videos und Musik vom TV vielleicht sehen können.
Erstmal installieren..

Code: Alles auswählen

apt -y install mediatomb
Den Rest solltet ihr hier lesen, den das ist dann einfach. Dazu muss ich nichts mehr schreiben.
Wer sich zutraut, der kann das Mediatomb auch in Deutsch umschreiben. Ist überwiegend HTML Code. Zu finden in /usr/share/mediatomb

Das war es erstmal zu dem Projekt , Ihr könnte ja mal schreiben, ob die Anleitung verständlich war und ob Fehler drin sind, dann änder ich sie.
Ich habe mir große Mühe gegeben, es so zu schreiben, daß Anfänger es auch können.