NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.
Forum Discussion
fflash
Jul 16, 2013Aspirant
ReadyNasOs 6.0.x Kernel, module compilation for iptables
Hello, I have a Ultra2 Nas under ReadyNas OS 6.0.8. I would like to compile some specific kernel modules required by iptable as they are not available in the OS. However all the tutorials I found a...
thomasmebes
Sep 21, 2015Tutor
Liebe Leser!
Habe ein ReadyNAS RN 102.
Dem Thema habe ich mich hier angenommen da auch ich gerne ein vollwertiges iptables einsetzen möchte.
Die Anleitung für das CrossCompile System basiert auf ein frisch installiert Debian 8 (Jessie) - 64 Bit.
Viel Spass mit der Anleitung! Ganz unten sind noch Download-Links!
#Arbeitsverzeichnis erstellen und hineinspringen
mkdir -p /usr/src/netgear
cd /usr/src/netgear
#Pakete zum übersetzen des Quellcodes installieren (libc6-i386 benötigen wir nur bei einer nicht 32-Bit-Umgebung)
apt-get install make libncurses5-dev gcc u-boot-tools libc6-i386
#Crosscompile Umgebung downloaden, entpacken und Archiv-Datei löschen
wget "http://heanet.dl.sourceforge.net/project/dsgpl/DSM%205.0%20Tool%20Chains/Marvell%20armada%20370%20Linux%203.2.40/gcc464_glibc215_hard_armada-GPL.tgz"
tar -zxf gcc464_glibc215_hard_armada-GPL.tgz
rm gcc464_glibc215_hard_armada-GPL.tgz
#Umgebungsvariable temporär für die Crosscompile Umgebung setzen
export PATH=$PATH:/usr/src/netgear/arm-marvell-linux-gnueabi/bin/
#Sourcen-Verzeichnis anlegen und hinein wechseln
mkdir -p /usr/src/netgear/ReadyNASOS_V6.2.5_WW_src
cd /usr/src/netgear/ReadyNASOS_V6.2.5_WW_src
#ReadyNasOS Sourcen 6.2.5 downloaden
wget http://www.readynas.com/download/GPL/readynasos/6.2.5/ReadyNASOS_V6.2.5_WW_src.zip
#Aus den Sourcen entpacken wir nur das Kernelverzeichnis und löschen danach das Archiv
unzip ReadyNASOS_V6.2.5_WW_src.zip 'linux-3.0.101-0.46/*'
rm ReadyNASOS_V6.2.5_WW_src.zip
#In dieses Verzeichnis installieren wir nachher unsere Module, wir legen es nun an
mkdir -p /usr/src/netgear/kernelModules
#In das Kernel-Source Verzeichnis wechseln
cd /usr/src/netgear/ReadyNASOS_V6.2.5_WW_src/linux-3.0.101-0.46
#Die originale Kernel Konfiguration von Netgear nehmen und die iptables Module aktivieren welche man benötigt
http://www.readynas.com/download/GPL/readynasos/6.2.5/readynas_armada370_defconfig
#oder meine (readynas_rn103_kernel_config_iptables_nat) nehmen, das ist auch die Originale, nur hier sind alle iptables Module bereits aktiviert
https://drive.google.com/uc?id=0B6PbXf80b4b7U05mRW41WTlLbUU&export=download
#Diese Datei packt ihr dann nach (die vorhandene kann überschrieben werden)
/usr/src/netgear/ReadyNASOS_V6.2.5_WW_src/linux-3.0.101-0.46/.config
#Konfiguration einlesen
make oldconfig ARCH=arm
#ggf Module anpassen
make menuconfig ARCH=arm
#Kernel übersetzen
make ARCH=arm
#uImage erstellen
#Den Kernel findet ihr danach hier: /usr/src/netgear/ReadyNASOS_V6.2.5_WW_src/linux-3.0.101-0.46/arch/arm/boot/uImage
make uImage ARCH=arm
#Module compilieren
make modules ARCH=arm
#Module installieren nach /usr/src/netgear/kernelModules
#Und die Module findet ihr danach hier: /usr/src/netgear/kernelModules/lib/modules
make modules_install INSTALL_MOD_PATH=/usr/src/netgear/kernelModules ARCH=arm
#Das Verzeichnis "/lib/modules/3.0.101.RN_ARM.4" auf eurem NAS (bei mir RN102) verschiebt ihr am besten, damit ihr noch ein Backup habt
mv /lib/modules/3.0.101.RN_ARM.4 /lib/modules/3.0.101.RN_ARM.4_BACKUP
#dann holt ihr euch das Verzeichnis "/usr/src/netgear/kernelModules/lib/modules/3.0.101.RN_ARM.4" von eurer CrossCompile Umgebung und schiebt es auf
#das NAS "/lib/modules/3.0.101.RN_ARM.4"
#Zudem müsst ihr euch das uImage ("/usr/src/netgear/ReadyNASOS_V6.2.5_WW_src/linux-3.0.101-0.46/arch/arm/boot/uImage") holen von der CrossCompile Umgebung
#und auf dem NAS nach /tmp/ kopieren
#Nun müsst ihr das uImage auf den Flashspeicher schreiben
#Dazu benötigt ihr noch das Debian-Paket mtd-utils
apt-get install mtd-utils
#Nun flashen wir und löschen dafür das alte
flash_erase /dev/mtd2 0 0
nandwrite -p /dev/mtd2 /tmp/uImage
#Nun starten wir das System neu und hoffen, dass alles gut ging!
Viel Spass damit!
Thomas
pps. Ich hatte einiges Arbeit damit, deshalb verschont mich bitte mit Kommentaren "das hätte man viel besser machen können".
Da kann ich nur sagen "dann machts besser!". Wobei ich nett gemeinte Tipps gerne annehme! :-)
Und ein kleines Dankeschön für den, dem es half wäre auch super.
Downloads:
Zudem habe ich das was ich kompiliert (Module und uImage) habe auch hochgeladen, ihr könnt es hier downloaden:
https://drive.google.com/folderview?id=0B6PbXf80b4b7WjdQZzFOOS10Tmc&usp=sharing
Falls wer keine Lust, Ahnung oder Zeit hat sich diese CrossCompile Umgebung selbst zu erstellen, kann gerne meine VMware Maschine nutzen:
https://drive.google.com/folderview?id=0B6PbXf80b4b7U0l3TzRRRUxfd00&usp=sharing
Bzw. hier nochmal alles einzeln durchzuklicken:
https://drive.google.com/folderview?id=0B6PbXf80b4b7TjdTQkl2TWs1a2c
Related Content
- Mar 10, 2018Retired_Member
NETGEAR Academy

Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology!
Join Us!