Jul
27
2011

NAS-4220: Firmware updaten und Optware, Apache mit PHP und MySQL installieren  Print This Post

Autor admin    Kategorie Linux     Tags , , , , ,

NAS-4220: Firmware updaten und Optware, Apache mit PHP und MySQL installierenVor kurzem hat eine schon etwas ältere ICYBOX nas4220 den Weg in meinen privaten IT-Zoo gefunden. Grund genug sich Gedanken darüber zu machen, welche sinnvolle Aufgabe diese in Zukunft erfüllen könnte. Ich habe mich dazu entschieden, das NAS nach einer Frischzellenkur als Backup-Server mit einem vollwertigen Apache, PHP Unterstützung, MySQL-Server und PhpMyadmin einzusetzen.

In diesem Tutorial werde ich euch beschreiben, wie ihr eine neue Firmware einspielen könnt, Optware installiert, diverse Pakete hinzufügt und verschiedene Startscripts verwenden könnt.

Neue Firmware einspielen

Als Firmware muss die Version “IB-NAS4220-B” (2.6.3.2-20090424) geflasht sein, welche uns erlaubt zusätzliche Software zu installieren. Die auf dem Nas vorhandene Version findet man unter System > Information (Bild 1). Stimmt diese mit der von mir vorhin erwähnten überein, kann man diesen Abschnitt überspringen.

Sollte dies nicht der Fall sein, ladet euch die folgende Firmware herunter, welche in Maintenance > Firmware Upgrade (Bild 2) geflasht werden kann (das heruntergeladene Archiv nicht entpacken).

Download: upgradeimg_ibnas4220b_2.6.3.1-20090424.tar.gz

NAS 4220 1

Bild 1

NAS 4220 2

Bild 2

 

Vorbereitungen

Bevor man beginnt, sollte man das Nas unter Maintenance > Factory Reset auf Werkseinstellungen (Bild 3) zurücksetzen und die Festplatte formatieren.

Die Laufwerkseinstellungen findet man in Maintenance > Disk Utility (Bild 4). Es ist unbedingt darauf zu achten, dass man als Dateisystem “ext3” wählt, da es ansonsten zu Problemen kommen kann.

Nach der Formatierung startet man das NAS neu (Bild 5) und leert den Browser-Cache. Hat man dies erledigt, aktiviert man unter den “Network Services” den SSH-Server (Bild 6).

NAS 4220 3

Bild 3

NAS 4220 4

Bild 4

NAS 4220 5

Bild 5

NAS 4220 6

Bild 6

 

Zusätzliche Softwarepakete

Ladet euch jetzt das von mir zusammengestellte Archiv herunter, welches alle benötigten Dateien für dieses Tutorial enthält.

Download: nas4220_aio_package.zip

Als Zusatzpakete installieren wir die Paketverwaltung “Optware” und “Userscripts” um das Ausführen von eigenen Scripts beim Restart zu ermöglichen.

Es stehen zwei Versionen von “Optware” zur Auswahl: einmal mit dem Bittorrent-Client Transmission und einmal ohne diesen. Sollte die Box also nicht als Downloader dienen, ist es ratsam das Optware-Paket aus dem Ordner “Optware wo Transmission” zu verwenden, da man so Ressourcen sparen kann (Bild 7).

Die Dateien aus dem “Optware” oder “Optware wo Transmission”, die aus dem Ordner “Userscript” und die Datei aus “Zlibs” kopiert man in den Ordner …

\public\applications\new_software

… auf der Box, welcher über die normale Dateifreigabe erreichbar ist (Bild 8).

NAS 4220 7

Bild 7

NAS 4220 8

Bild 8

Danach startet man die Box neu (System > Turn Off Server). Sind die zuvor kopierten Files verschwunden hat alles geklappt.

Anschließend loggt man sich über SSH am NAS ein (z.B. mit Putty) und verwendet dazu den Benutzernamen “root” und das Standardpasswort (sofern noch nicht geändert) “admin“.

Um die nächsten Schritte durchführen zu können, muss das NAS über eine Internetverbindung verfügen!

Zum Update der Paketliste und veralteten Pakete diese Befehle ausführen und als Antwort auf etwaige Abfragen die Standardwerte benutzen (also einfach Enter drücken).

ipkg update
ipkg upgrade

Nano, Apache, MySQL und PhpMyadmin installieren:

ipkg install nano mysql apache phpmyadmin

Vor der Konfiguration der Ports, Datenbank usw. wieder neu starten. Weitere installierbare Pakete findet ihr auf der Optware-Seite.

Konfiguration

Bitte führt die folgenden Schritte genau nach Anweisung/Reihenfolge durch und startet das NAS nur dann neu, wenn ihr in der Anleitung dazu aufgefordert werdet.

Userscripts

Die in diesem Abschnitt angegebenen Dateien befinden sich alle im Ordner “Scripts” meines Archives.

init: Diese Datei wurde von mir erweitert und kopiert die Konfiguration mit einem angepassten Port des internen Webservers in den NAS-Speicher. Danach wird der “thttpd” mit dieser neu gestartet und ist unter dem neuen Port (8080) erreichbar. Überschreibt mit dieser “init” die schon in “\public\applications\userscript” vorhandene.

thttpd.conf: Es handelt sich dabei um die Konfigurationsdatei des internen Webservers, welche durch die vorhin behandelte “init” kopiert wird. Fügt diese in den Ordner “/public/applications/userscript/scripts” am NAS ein.

webserver.sh:Das Bash-Script ist für den Start von Apache und MySQL zuständig und gehört ebenso in den Ordner “/public/applications/userscript/scripts“.

Apacheverzeichnis erstellen

Da wir den Webserver mit reichlich Daten füttern wollen, empfiehlt es sich auf der Festplatte ein Verzeichnis zu erstellen. Dies geschieht mit Hilfe der Network-Shares, wodurch man dann auch bequem Dateien über die Freigabe einspielen kann.

Erstellt eine mit dem “Share Name” “www” und notiert euch den in “Path” eingetragenen Wert (in meinem Fall /mnt/ide1). Damit wird auf der Festplatte ein Verzeichnis “www” erstellt, welches wir später als “DocumentRoot” in der Apache Konfigurationsdatei eintragen.

NAS4220 9

Bild 9

 

Apache Konfiguration

Damit wir die Einstellungen von Apache bearbeiten können verbinden wir uns wieder mit SSH auf die Box (User: root Standardpasswort: admin) und öffnen mit dem zuvor installierten Editor Nano die Konfigurationsdatei.

nano /opt/etc/apache2/httpd.conf

Dort passen wir den Pfad an, in dem später unsere Webseiten liegen werden. Ändert dazu folgende Zeilen …

.
DocumentRoot "/opt/share/www"
.
<Directory "/opt/share/www">
.

… so um, dass die Werte mit eurem notierten “Path” gefolgt von “www” übereinstimmen.

.
DocumentRoot "/mnt/ide1/www"
.
<Directory "/mnt/ide1/www">
.

Sucht die Zeile mit der Angabe des Listen-Ports und ändert dieses auf das Standardport 80.

Listen 80

Zum “DirectoryIndex” schreiben wir noch “index.php” dazu, um etwaige PHP-Startseiten automatisch anzeigen zu lassen.

<IfModule dir_module>
DirectoryIndex index.html, index.php
</IfModule>

Nachdem man am Ende der Datei folgende Zeilen eingefügt hat, kann man die Datei speichern und schließen (nano: speichern mit “Strg+o“, schließen mit “Strg+x”).

LoadModule php5_module libexec/libphp5.so
AddType application/x-httpd-php .php

MySQL Passwort setzen

Damit der Datenbankdienst auch wirklich gestartet ist, führen wir folgenden Befehl aus:

/opt/etc/init.d/S70mysqld start

Danach einen Befehl nach dem anderen (Zeile für Zeile) ausführen. In der dritten Zeile bitte den Wert “neuespasswort” auf euer gewünschtes Passwort ändern.

/opt/bin/mysql -u root
use mysql;
update user set Password = PASSWORD('neuespasswort') where User ='root';

Jetzt schließen wir die Datenbankbearbeitung …

exit

… und fahren mit der Einrichtung von PhpMyadmin fort.

PhpMyadmin

Wieder über SSH öffnen wir in Nano die Datei “config.inc.php”.

nano /opt/share/www/phpmyadmin/config.inc.php

Hier suchen wir von oben angefangen die ersten Zeilen, welche den Authentifizierungstyp enthalten (können mehrfach vorhanden sein!). In der Zeile mit dem Passwort fügen wir unser im vorhin erstelltes MySQL-Passwort ein.

$cfg['Servers'][$i]['auth_type']     = 'config'; // Authentication method (config, http or cookie)
$cfg['Servers'][$i]['user']          = 'root'; // MySQL user
$cfg['Servers'][$i]['password']      = 'MYSQLPASSWORT'; // MySQL password (only needed

Am Ende dieser Datei fügt noch folgende Zeilen an, um die Passwortabfrage in PhpMyadmin zu aktivieren (“MYSQLPASSWORT” wieder ersetzen!).

<?php
$cfg['blowfish_secret'] = 'MYSQLPASSWORT';
$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
?>

Jetzt speichern und schließen wir diese Datei (nano: speichern mit “Strg+o“, schließen mit “Strg+x”).

Da wir unser Apacheverzeichnis verschoben haben, müssen wir auch den PhpMyadmin-Ordner dort reinkopieren (bei Abweichungen den Zielpfad anpassen):

cp -r /opt/share/www/phpmyadmin /mnt/ide1/www/

Letzter Restart und Anmerkungen

Den finalen Neustart erledigen wir in der SSH-Sitzung mit:

reboot

Nach dem Restart ist zu beachten, dass man das Webinterface ab sofort nur mehr über das Port 8080 erreichen kann.

http://NASIP:8080

Ruft man im Browser die NAS-IP ohne Portangabe auf, sollte “It works!” von Apache zu sehen sein. Die PHP Funktionalität kann man testen, indem man einfach die Datei “index.php” im Ordner “PHP Tester” meines Archives in den “www”-Ordner am NAS kopiert.

Das Webinterface von PhpMyandmin ist unter der folgenden Adresse erreichbar:

http://NASIP/phpmyadmin

Sollten sich in der Anleitung Fehler eingeschlichen haben, könnt ihr gerne ein Kommentar hinterlassen.

 

Viel Spaß mit eurem WebserverNAS!

 

23 Kommentare zu “NAS-4220: Firmware updaten und Optware, Apache mit PHP und MySQL installieren”

  • #1  cetric 2. August 2011 um 00:05

    Hilfe?!?! Bei mir geht das net!
    Die NAS-IP ohne Portangabe zeigt nicht “It works!”!?!?
    Und nun?

    • #2  Chal 2. August 2011 um 00:18

      zeigt http://NASIP:8080 das webinterface?
      koennte es sein, dass http://NASIP:8000 it works zeigt?
      sollte dies der fall sein hast du in der apache konfig vergessen das listen port zu ändern.

      falls das nicht die problemloesung sein sollte meld dich einfach noch mal.

      • #3  cetric 27. August 2011 um 11:18

        sorry. hatte jetzt wenig zeit (nachwuchs).
        habe es gerade nochmals versucht… funktioniert leider nicht.
        http://NASIP:8080 zeigt das webinterface.
        nasip springt jedoch auf nasip/login.cgi und zeigt mir dann natürlich einen seiten-ladefehler.
        bei nasip/phpmyadmin kommt der seiten-ladefehler sofort.
        ????

      • #4  cetric 27. August 2011 um 11:46

        IB-NAS4220-B> /opt/etc/init.d/S80apache start
        httpd: Syntax error on line 474 of /opt/etc/apache2/httpd.conf: Cannot load /opt/libexec/libphp5.so into server: /opt/libexec/libphp5.so: cannot open shared object file: No such file or directory
        IB-NAS4220-B>

        ????

      • #5  cetric 27. August 2011 um 12:29

        ich habe jetzt noch folgendes gemacht:

        ipkg install php-apache
        /opt/etc/init.d/S80apache start
        /opt/etc/init.d/S70mysqld start

        jetzt komme ich schon mal auf nasip/phpmyadmin

        auf nasip komme ich jedoch immer noch nicht!?
        woher nimmt der dann /login.cgi????

        • #6  cetric 27. August 2011 um 12:41

          das mit dem /login.cgi ist nur im firefox.

          im ie sieht es so aus:

          Index of /
          .DS_Store
          phpmyadmin/

          • #7  Chal 27. August 2011 um 20:06

            hatte genau dieses problem auch. alles was irgendwie mit dem nas zu tun hat im browser schliessen und dann den kompletten browsercache leeren dann geht er nicht mehr auf die …cgi

          • #8  cetric 27. August 2011 um 21:20

            das hab ich jetzt schon gemacht.
            er startet aber die index.html nicht automatisch.

            Index of /
            intex.html
            .DS_Store
            phpmyadmin/

            kann sie jedoch auf der angezeigten seite auswählen

    • #9  admin 1. September 2011 um 14:34

      sorry dass ich immer nur basic tipps geben kann bin aber zur zeit im urlaub und ausland. hast du den punkt mit dem directoryindex ausgeführt, welcher dem apache mitteilt, welche dateien er als startseite verwenden soll?


      DirectoryIndex index.html, index.php, index.htm

      deine datei heisst uebrigens in(t)ex.html

      • #10  cetric 7. September 2011 um 07:36

        ja, hab ich.
        komme schon seit tagen nicht mehr weiter.

        • #11  chal 7. September 2011 um 22:46

          hab naechste woche mein nas wieder zur verfügung dann kann man sich die sache ja mal naeher anschauen

          • #12  Hörnchen 1. Januar 2012 um 20:52

            Leider wurde wohl nichts mehr aus dem nachschauen wa…bei mir funzt das nämlich auch nich -.-

  • #13  Chal 1. Januar 2012 um 22:25

    der vorposter hat sich dann nicht mehr gemeldet was genau funktioniert bei dir nicht?

  • #14  Hörnchen 1. Januar 2012 um 22:28

    Ich hab genau nach dieser Anleitung gearbeitet und zu belohnung hat mir das Teil mein Netzwerk zerschossen.Ich muss die Box wieder resetten.Nebenbei.Gibt eine Möglichkeit, die Login Seite an sich zu modifizieren (Seitendisign ändern?!)

    • #15  Chal 1. Januar 2012 um 22:37

      wie kann dir das teil dein netzwerk zerschiessen? hast du eine fixe ip verwendet, welche schon vergeben ist? oder den dhcp server aktiviert?

      es gibt eine moeglichkeit das design zu aendern aber dann musst du schon selbst ein design erstellen. manche aenderungen bleiben jedoch beim neustart nciht bestehen und muessen dann beim start mit hilfe eines scripts wieder an die richtige stelle kopiert werden. ob da die designfiles dazugehoeren muesstest du ausprobieren indem du z.b. einfach mal ein paar buchstaben auf die loginseite machst und restartest.

      wie weit kommst du denn im tutorial wo alles noch so funktioniert wie beschrieben?

  • #16  Hörnchen 1. Januar 2012 um 23:35

    Ich habe die Einstellungen so gemacht, wie es in der Anleitung stand.Nachdem ich den Listenport umgestellt hatte.Irgendwann sollte ich den Apache und die MySQL starten…von da an war der ofen aus und mein Rechner war ausgesperrt.Dann habe ich die Box neugestartet und versucht, über Port 80 oder 8080 rein zu gegen, wie beschrieben. Nix zu machen. Die Box war nicht mehr erreichbar, von keinem Rechner, – auch nich über IP ohne Porteingabe…

  • #17  Hörnchen 9. Januar 2012 um 04:32

    so…ich habe die Lösung und ich habe auch die Fehler gefunden, warum es nicht geklappt hat…

    httpd.conf

    Das Fehlerhafte Modul ausklammern durch dieses Zeichen ‘#’
    #LoadModule ext_filter_module libexec/mod_ext_filter.so

    Dieses File ‘LoadModule php5_module libexec/libphp5.so’ wird am ende der LoadModule angehängt in Zeile 118

    Aus diesem Bereich:

    DirectoryIndex index.html, index.php

    wird dieser Bereich:

    DirectoryIndex index.php

    Die PHP wird sofort geladen, wenn man die NAS.IP aufruft.
    Wenn man nur HTML verwendet, kann man die Index.php in Index.html umbenennen.
    Das hat aber dann zur folge, das PHPMYADMIN nicht mehr automatisch aufgerufen wird, wenn man NAS.IP/phpmyadmin eingibt.

    Diesen Eintrag ‘AddType application/x-httpd-php .php’ habe ich an Zeile 373 eingefügt.

    Wenn diese Einstellung gemacht wurden, startet der Apache automatisch die Index.php oder Index.html (falls eingetragen). Man kann natürlich auch nur Index.html oben eintragen und muss,damit die Index.php gestartet wird, in der Index.html einen Referr mit Verweisung auf die PHP eintragen.Das funst wunderbar. Wer auch immer diese Anleitung gemacht hat, ich danke ihm.

    Folgendes noch…bitte nicht diese Anleitung mit NANO machen, sondern WinSCP und Putty runterladen, das geht damit viel viel einfacher 😀

  • #18  chal 9. Januar 2012 um 12:01

    vielen dank für dein kommentar werde wenn ich von den weihnachtsferien wieder zurück bin die anleitung nochmal testen und anpassen.

    das mit dem editor: ich glaube das ist eher ansichtssache. man kann auch vi verwenden welcher schon drauf ist.

  • #19  Hörnchen 10. Januar 2012 um 00:07

    Nachtrag:

    Das Teil rennt…die MySQL is natürlich nich besonders schnell aber sie funst.

    Nachdem ich auf dem Webinterface des NAS selber war das Teil shutdownen wollte, konnte er die return.cgi nich finden. In der obigen adresse tauchte dann auch die NAS.IP ohne Port auf…das erklärt, das er die CGI nich finden konnte, warum aber nur bei dieser einen Datei?

    LG

    Thema Editor: Jedem das Seine ;D

  • #20  HP 4. Mai 2012 um 02:14

    Hallo. Ich hoffe auch eure Hilfe. Bei mir funktioniert der “new_software” ordner nicht. die permissions sind mit chmod auf 777 gesetzt aber das optware.tgz wir nicht gelöscht beim neustart.
    ich habe darauchfhin auch mal versucht es manuell in den ordner applications/optware zu kopieren und die init manuell auszuführen. da macht die box auch was mit fingerprints und so weiter aber am ende schlägt der ipkg fehl: not found.

    ich habe die neuste Firmware, Raid1 mit ext2.

    Danke für alles ideen

  • #21  Karl Gustav 6. September 2012 um 16:32

    Hallo,
    ich scheitere an dem Punkt IPKG Update

    “IB-NAS4220-B> ipkg update
    Downloading http://ipkg.nslu2-linux.org/feeds/optware/ts72xx/cross/stable/Packages.gz
    An error ocurred, return value: 1.
    Collected errors:
    ipkg_download: ERROR: Command failed with return value 1: `wget –passive-ftp -q -P /opt/ipkg-wapgah http://ipkg.nslu2-linux.org/feeds/optware/ts72xx/cross/stable/Packages.gz
    IB-NAS4220-B> ipkg upgrade
    Nothing to be done
    Successfully terminated.
    IB-NAS4220-B> ipkg update
    Downloading http://ipkg.nslu2-linux.org/feeds/optware/ts72xx/cross/stable/Packages.gz
    An error ocurred, return value: 1.
    Collected errors:
    ipkg_download: ERROR: Command failed with return value 1: `wget –passive-ftp -q -P /opt/ipkg-NUtm5J http://ipkg.nslu2-linux.org/feeds/optware/ts72xx/cross/stable/Packages.gz
    IB-NAS4220-B>” was mache ich da falsch ?
    MfG

  • #22  marcel 12. März 2015 um 21:26

    Guten Abend,

    auch wenn das Thema schon etwas älter ist, der Blog aber noch gepflegt wird, mal noch eine Rückfrage hierzu:
    Haben die Box bisher nur als Massenspeicher genutzt und kam nun mit Freunden auf die Idee einen Webserver darauf aufzusetzen – wurde bisher nur als ftp genutzt.
    Habe die Anleitung befolgt, die Datenbanken starten soweit auch. Wollte nun noch wordpress zusätzlich installieren, da bekomme ich nun immer die Meldung das die Datenbanken nicht laufen würden.
    Haben Sie eine Idee oder einen Tipp für mich? Komme nun gar nicht weiter.
    Danke im Voraus!

    Marcel

  • #23  Papa1120 28. Mai 2016 um 11:19

    Hallo,

    Habe heute meine NAS Box wider in betrib genommen jetzt habe ich das kleich pobhblhm
    komme auf das web interfes drauf aber aber bekommen weder pher ftp eine index.php noch index html drauf keine reschte dar für.

    und wen ich auf poht 80 gehe pasitrt nicht.

Kommentar abgeben zu Hörnchen

Kategorien

Neueste Beiträge

Folge uns auch via

Facebook Facebook RSS RSS
Werdet ein Fan und bekommt die neuesten Beiträge bei Erscheinen im Netzwerk eurer Wahl angezeigt.

Archiv

WERBUNG

Featured Video

Kalender

März 2024
M D M D F S S
 123
45678910
11121314151617
18192021222324
25262728293031

Meta

Unterstützt mich

Wenn ihr mich unterstützen möchtet, könnt ihr mir gerne ein Bier spendieren.

RSS futurezone.at – Newsfeed

Schlagwörter

Letzte Kommentare

  • Andere Blogs

    • Giveaway of the day
      Bietet jeden Tag eine kostenlose lizenzierte Software an, die man sonst kaufen müsste.
    • Lifehacker
      Daily weblog on software and personal productivity recommends downloads, web sites and shortcuts.
    • Netzpolitik
      Blog und eine politische Plattform für Freiheit und Offenheit im digitalen Zeitalter.
    • Slashgear
      Englischer Blog, welcher euch über neue Hardware informiert.
    • Webdomination
      Gute Softwaretipps rund um Windows, Linux und den Mac.
  • IT News

    • Computerwelt
      Österreichs große EDV-Zeitung für IT-Profis und EDV-Entscheider.
    • Futurezone
      Österreichs führende Hightech-Seite. Nachrichten, Interviews und Analysen aus Digital Life, IT-Business und Netzpolitik.
    • Heise IT News
      News und Foren zu Computer, IT, Wissenschaft, Medien und Politik.
    • Slashdot
      Source for technology related news with a heavy slant towards Linux and Open Source issues.
  • Witzige Links

    • Failblog
      Fail and Epic Fail Pictures and Videos in one blog.
    • German Bash
      Die bekannteste deutsche IRC (Chat) Zitate Datenbank. Nur hier gibts die Originale!
    • Snotr
      Kleines unscheinbares Videoportal mit kleinen lustigen Clips und Kurzfilmen.
    • The Daily WTF
      Curious Perversions in Information Technology
    • There, I fixed it
      Innovative Ansätze Dinge zu reparieren.
  • Foren usw

    • HTC
      Die High Tech Computer Corporation (HTC) ist ein Hersteller von Mobiltelefonen.
    • Quefi.de
      Diverse Anleitungen der Quer Frei und Ideal Community.
    • Ubuntuforums
      Das wohl aktivste Forum rund um Ubuntu-Linux.
    • XDA-Developers
      The Largest Community for Smartphone Hacks and Development of Apps.
    • Yeti Adventures
      Canyoning mit einem der erfahrensten und geprüften Führer in Süd Tirol.