Installation of Java on the NAS under fun_plug

Today i’ve installed java on my NAS Device (a D-Link DNS-345) what i personally see as a highlight as i can now use software that was not available to me before. Oracle provides a “Java SE Embedded”, which is suitable for NAS devices thanks to its reduced memory footprint. For the following tutorial you need to have fun_plug installed!

Download

Go to the Oracle Page and choose “ARMv5 Linux – Headless”. Now you will be redirected to a survey, where you have to enter Name, Prename, Mail, Organization and Role. Then you will receive the download-Link via E-Mail. Click on this Link and accept the license agreement.
Java SE Embedded
Copy the downloaded file (in my case its name was ejre-7u6-fcs-b24-linux-arm-sflt-headless-10_aug_2012.tar.gz, but that is subject to change) to the NAS. I’ve copied it to /mnt/HD/HD_a2/, please adapt the following commands if you copy it elsewhere.

Installation

First create a directory:

mkdir -p /ffp/opt/java

Then unpack the archive from before:

cd /ffp/opt/java
tar xvzf /mnt/HD/HD_a2/ejre-7u6-fcs-b24-linux-arm-sflt-headless-10_aug_2012.tar.gz

Now create a link to the unpacked directory (“ejre1.7.0_06”):

ln -s ejre1.7.0_06 jre

Now put it permanently into the environment variables:

echo "export PATH=/ffp/opt/java/jre/bin:\$PATH" >> /ffp/etc/profile.d/java.sh
chmod a+x /ffp/etc/profile.d/java.sh

Logout and Login into the NAS.

Installation-test

Check if it works:

java -version

This should display something like this:

java version "1.7.0_06"
Java(TM) SE Embedded Runtime Environment (build 1.7.0_06-b24, headless)
Java HotSpot(TM) Embedded Client VM (build 23.2-b09, mixed mode)

Installation of Twonky Server 7 on NAS-devices

German version of this tutorialAfter a few requests i’ve now tried to install Twonky Server 7 on the NAS_Devices and i can tell you that it works. The following article describes the installation. Before you proceed please check here if Version 7.11-Special is still the current version. If not, please add a comment below.

This tutorial requires an installed fun_plug!

Continue reading Installation of Twonky Server 7 on NAS-devices

Installation of Optware on the D-Link DNS-323 and Conceptronic CH3SNAS

Many people asked me to compile various packages over the last few years. Sometimes i was able to help and sometimes (in rare occasions) i had to reject a request when it was impossible to fulfill it. Then i often told the requestor to install optware which originated from the NSLU2-Project and provides many addition packages. I didn’t have experienc on this, so i had to leave them in the dark. Until recently. Continue reading Installation of Optware on the D-Link DNS-323 and Conceptronic CH3SNAS

Output of /proc/meminfo on the D-Link DNS-345

Here the output of cat /proc/meminfo on the D-Link DNS-345:

MemTotal:         509888 kB
MemFree:          326148 kB
Buffers:           13680 kB
Cached:           119420 kB
SwapCached:            0 kB
Active:            71972 kB
Inactive:          70396 kB
Active(anon):       9268 kB
Inactive(anon):        0 kB
Active(file):      62704 kB
Inactive(file):    70396 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:        524216 kB
SwapFree:         524216 kB
Dirty:                12 kB
Writeback:             0 kB
AnonPages:          9264 kB
Mapped:             8940 kB
Slab:              22932 kB
SReclaimable:       7084 kB
SUnreclaim:        15848 kB
PageTables:          508 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:      779160 kB
Committed_AS:      61932 kB
VmallocTotal:     122880 kB
VmallocUsed:        1668 kB
VmallocChunk:     119804 kB

Output of /proc/cpuinfo on the D-Link DNS-345

Here the output of cat /proc/cpuinfo on the D-Link DNS-345:

Processor       : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS        : 1599.07
Features        : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant     : 0x2
CPU part        : 0x131
CPU revision    : 1
 
Hardware        : Feroceon-KW
Revision        : 0000
Serial          : 0000000000000000

Installation of the Conceptronic fun_plug on the Conceptronic CH3HNAS

Since a while the Conceptronic CH3HNAS has been around which – unfortunately – is not compatible with the Fonz’ fun_plug due to a different CPU. Conceptronic themselves provides a fun_plug package which solves that issue. If you don’t know what the fun_plug is, then read the introduction of this article until including “Technical synopsis” for further explanation. Here is how the Conceptronic fun_plug is installed on the CH3HNAS:

  • Download the package from Conceptronic: Download (Mirror by Uli)
  • Extract the package on your local harddrive
  • Navigate to folder “Funplug” and copy the files “fun_plug” and “fun_plug.tgz
  • Navigate to the “Public”-Folder on your CH3HNAS and paste these two files there
  • Then login to the Webpanel of your NAS and go to “Tools” -> “System” -> “Restart” to reboot your device
  • After the reboot, the CH3HNAS will discover the fun_plug and install it on the harddrive. Be patient as it takes a while to install the fun_plug
  • After a while the fun_plug.tgz will disappear and a folder called “funplug” will appear instead.
  • A Telnet-Server is now available on Port 23 on your CH3HNAS

That’s it!

Precompiled Kernel-Modules for the D-Link DNS-320 and DNS-325

German version of this tutorialA while back i wrote a tutorial on how to compile additional kernel-modules for the D-Link DNS-320 and DNS-325. From time to time i get asked if it would be possible to compile module XYZ. In this post I’m publishing the past results of my compilation sessions. If you need further modules, i can provide them on request.
Continue reading Precompiled Kernel-Modules for the D-Link DNS-320 and DNS-325

Building an additional Kernel Module for the DNS-320 / DNS-325

A while back i updated the openvpn-package with the tun.ko for the DNS-320 and DNS-325. Problem was, that i needed to compile a kernel module first. Thankfully D-Link provides a ZIP-File with the sources of Code used for the DNS-320. Unfortunately it didn’t work out of the box, but i was able to pull a script which works together for you. If you want to download all my finished modules just visit this page.
Continue reading Building an additional Kernel Module for the DNS-320 / DNS-325

Output of dmesg on the Conceptronic CH3WNAS

Here the output of dmesg on the Conceptronic CH3WNAS:

Total memory 33554432 MB.
Memory BAT mapping: BAT2=32Mb, BAT3=0Mb, residual: 0Mb
Total memory is 33554432.
CPU = 82xx
Linux version 2.4.21-pre4 (ffna@swtest2) (gcc version 2.95.4 20010319 (prerelease)) #480 �� 4�� 28 11:21:43 CST 2006
OpenPIC_Addr in mpc10x_bridge_init function is fc040000
Motorola SPS Sandpoint Test Platform
Port by MontaVista Software, Inc. (source@mvista.com)
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/ram console=ttyS0,9600
OpenPIC Version 1.2 (1 CPUs and 123 IRQ sources) at fc040000
Calibrating delay loop... 133.12 BogoMIPS
Memory: 27368k available (1560k kernel code, 512k data, 60k init, 0k highmem)
Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
POSIX conformance testing by UNIFIX
PCI: Probing PCI hardware
PCI fixup irq: (PCI device 1814:0201) got 0
PCI fixup irq: (PCI device 1033:0035) got 1
PCI fixup irq: (PCI device 1033:0035) got -1
PCI fixup irq: (PCI device 1033:00e0) got 2
PCI fixup irq: (PCI device 13f0:1023) got 3
PCI fixup irq: (PCI device 1191:0008) got 4
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
Journalled Block Device driver loaded
NTFS driver v1.1.22 [Flags: R/W]
udf: registering filesystem
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SERIAL_PCI enabled
ttyS00 at 0xfc004500 (IOMEM)(irq = 121) is a ST16650
ttyS01 at 0xfc004600 (IOMEM)(irq = 122) is a ST16650
RAMDISK driver initialized: 16 RAM disks of 6144K size 1024 blocksize
loop: loaded (max 8 devices)
ipg : v0.36 10/31/01 Written by Craig Rich, www.sundanceti.com
IC PLUS IP1000 1000/100/10 based NIC found.
Ethernet device registered as: eth0
IPG module loaded.
SCSI subsystem driver Revision: 1.00
atp86x_detect:
ACARD ATP-865 PCI ATA133 2-Channels Host Adapter: 0 IO:FEBFFEF8, IRQ:4.
ID: 0 ST3200822A UDMA5 (100)
scsi0 : ACARD ATP86X PCI ATA133 Adapter Driver Ver: 0.78 Date: 2004/01/15
 
Vendor: ST320082 Model: 2A Rev:
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
SCSI device sda: 390721967 512-byte hdwr sectors (100025 MB)
Partition check:
sda1 sda2
USI AMD/FUJITSU flash: probing 8-bit flash bus
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
Creating 5 MTD partitions on "USI Intel flash":
0x00000000-0x00010000 : "Linux mtd1"
0x00010000-0x00020000 : "Linux mtd2"
0x00020000-0x00300000 : "Linux Ramdisk"
0x00300000-0x00310000 : "U-BOOT BOOT LOADER"
0x00310000-0x00400000 : "Linux Kernel"
usb.c: registered new driver hub
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 2048 bind 2048)
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 2879k freed
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 60k init
EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
bonding.c:v2.4.20-20021210 (December 10, 2002)
br0 registered with MII link monitoring set to 100 ms, in fault-tolerance (active-backup) mode.
br0 registered without ARP monitoring
br0: released all slaves
Link speed = undefined!
Link speed = undefined!
br0: enslaving eth0 as a backup interface with a down link.
Link speed = 100Mbps.
setting full duplex, TX flow control, RX flow control.
br0: link status definitely up for interface eth0.
and making interface eth0 the active one.
br0: releasing active interface eth0 but could not find any backup interface.
br0: now running without any active interface !
Link speed = undefined!
Link speed = undefined!
br0: enslaving eth0 as a backup interface with a down link.
br0: releasing backup interface eth0.
br0: now running without any active interface !
Link speed = undefined!
br0: enslaving eth0 as a backup interface with a down link.
Adding Swap: 530104k swap-space (priority -1)
ext3: No journal on filesystem on sd(8,2)
EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
ehci_hcd 00:0e.2: PCI device 1033:00e0
ehci_hcd 00:0e.2: irq 2, pci mem c306af00
usb.c: new USB bus registered, assigned bus number 1
ehci_hcd 00:0e.2: USB 2.0 enabled, EHCI 1.00, driver 2003-Dec-29/2.4
hub.c: USB hub found
hub.c: 5 ports detected
usb-ohci.c: USB OHCI at membase 0xc3073000, IRQ 1
usb-ohci.c: usb-00:0e.0, PCI device 1033:0035
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 3 ports detected
usb-ohci.c: USB OHCI at membase 0xc3075000, IRQ -1
usb-ohci.c: usb-00:0e.1, PCI device 1033:0035
usb.c: new USB bus registered, assigned bus number 3
request_irq irq >= NR_IRQS fail
usb-ohci.c: request interrupt -1 failed
usb.c: USB bus 3 deregistered
Trying to vfree() nonexistent vm area (c3075000)
ra0: at 0xbfffe000, VA 0xc30a3000, IRQ 0.
ra0: RT2500_open() irq 0. MAC = 00:80:5a:5c:63:20
Link speed = 100Mbps.
setting full duplex, TX flow control, RX flow control.
br0: link status definitely up for interface eth0.
and making interface eth0 the active one.
pAdapter->PortCfg.StaWithEtherBridge.Enable = FALSE
bond_enslave(): MII and ETHTOOL support not available for interface ra0, and arp_interval/arp_ip_target module parameters not specified, thus bonding will not detect link failures! see bonding.txt for details.
br0: enslaving ra0 as a backup interface with an up link.
br0: releasing backup interface ra0.
br0: releasing active interface eth0 but could not find any backup interface.
br0: now running without any active interface !
br0: released all slaves
NET4: Ethernet Bridge 008 for NET4.0
device eth0 entered promiscuous mode
Link speed = undefined!
Link speed = undefined!
br0: port 1(eth0) entering listening state
device ra0 entered promiscuous mode
br0: port 2(ra0) entering listening state
Link speed = 100Mbps.
setting full duplex, TX flow control, RX flow control.
br0: port 1(eth0) entering learning state
br0: port 2(ra0) entering learning state
br0: port 1(eth0) entering forwarding state
br0: topology change detected, propagating
br0: port 2(ra0) entering forwarding state
br0: topology change detected, propagating
Initializing USB Mass Storage driver...
my_host_number = 1
usb.c: registered new driver usb-storage
USB Mass Storage support registered.