Aldi NAS - P50696




Aanbieding

20 november 2010 hadden ze bij de Aldi weer eens een leuke aanbieding. Een NAS voor twee harddisks.
In de hoop dat ik deze krijg voor mijn verjaardag, ben ik er even wat verder ingedoken.

Aldi website aanbieding NAS

Hardware specs:

Aldi NAS

Dual Drive NAS Systems on a Chip Solutions
Part Number
CPU Core
Integrated USB
Gig eth Ports
SATA Ports
PCIe Ports
Raid
Network offload engine
DDR2 DRAM
Boot Options
Encryption
GPIO (#)
OXE810DSE
Single Core ARM9 370 MHz
1 * USB 2.0 / 1 * USB 1.1
1 * GMI
2
0 (1 * PCI)
0 & 1 (Linear)
TSO
128 MB
HDD NOR UART
AES-128
35

CPU
OSE 810DSE
DRAM
DDR2 SDRAM 128 MB
Flash Memory
4MB
HDD
Support 2 * 3.5" SATA I/II (Up to 2Tb)
LAN Port
1 * Gigabit RJ-45 Ethernet Port
Button
Power on/off switch, Reset Button, One touch Backup Button
Form Factor
Desktop vertical type
Dimensions
130 mm * 90 mm * 182 mm
Power
External Power adapter 48W, 100 tot 240V
Fan
1 * Cooling fan 12 V DC Option on/off mode
OS
Embedded Linux
Client OS
Windows XP/Vista/Win7/Linux/MAC OS
Language
English
Network Settings
Device name, Description Setting / NTP Support
Usermanagement
Max 128 Users
Group Management
Max 32 Groups
Folder Mangement
Privilege settings to users and groups
Samba server
Compatible with WIndows XP/Vista/Win7, Linux/MAC OS/X
FTP Server
Anonymous login support
Connection control
COmpatible with Windows XP/Vista/Win7/Linux/MAC OS/X
Multi Media Servers
Support UPnP Server function iTunes Server
BitTorrent Download
DHT Support
DL/UP rate control
5 concurrent jobs downloading / 20 jobs in list
Backup Server
Local backup (USB) remote backup (Windows XP, Vista, Win7, Linux)
HDD Format
XFS/FAT32/EXT2/EXT3
File System
XFS/FAT32/EXT2/EXT3
Raid Mode
Raid 0 / 1 / Linear
System Mantenance
System Log

Save and restore configuration
Firmware upgrade
Reset to factory default
Windows utility
Discovery tool
Quick setup wizard

Supportsite: P50696 - "Nas Server Dual bay" op http://www.unisupport.net

CPU

Model OXE800DSE OXE810DSE
Processor 200 MHz ARM926EJ-S 367 MHz ARM926EJ-S (+32kB cache & MMU)
Geheugencontroller t/m 64 MB DDR(1) t/m 256 MB DDR(1)/DDR2
Netwerkcontroller 10/100 Mbit/s 1 Gbit/s (= 1000 Mbit/s)
Diagram


Op het hardware.info forum zei iemand het volgende over de cpu:
De oudere OXE800DSE werd door Western Digital toegepast in de My Book World Edition, met 32 MB geheugen en een losse VIA Gigabit netwerkchip. Hardware.Info heeft die NAS toentertijd (2007) getest en hoewel deze functioneel en gebruiksvriendelijk was, was het zeker geen snelheidsmonster.

Wat betreft dit laatste is het natuurlijk de grote vraag in hoeverre de OXE810DSE de ALDI NAS sneller maakt. Wat speuren op het www doet vermoeden dat de oorspronkelijke processor een flinke bottleneck opleverde in de My Book WE. Gezien de hogere kloksnelheid, extra cache, MMU en extra geheugen (128 MB in dit specifieke model) zal de ALDI NAS allicht sneller zijn. Hoeveel sneller kan is lastig te stellen.
Als je alleen naar de OXE810DSE zoekt, zul je wat PDFjes vinden die zeggen dat het eigenlijk een grote multichipper is. Dus netwerk, usb, sata en een arm CPU alles ineen.

OS

Als OS is vrijgegeven dat het een embedded OS is, maar als je de firmware download, kun je verder komen:
Zo ook iemand anders:

Ik heb eens op unisupport gezocht, en de NAS gevonden. Volgens de
handleiding wordt de firmware ge-installeerd op de eerste harddisk. Dus
je moet kunnen inbreken op het Linux systeem. Sowieso start hij in
principe op van de harddisk, dus je kan er altijd een andere partitie
opzetten.

Verder verbruikt hij, zonder harddisks, 4 Watt, dus dat is lekker zuinig.

Ik heb de firmware gedownload. De firmware bestaat uit een gezipt tar
archive. Als je die uitpakt, zitten daar twee gzip files in:
mini_firmware.bin en nas_firmware.bin. De eerste (exact) 4M, en de
tweede 7.2M. Ik vermoedt dat de eerste voor de interne flash is, en de
tweede voor de firmware partitie. De tweede is dan ook (volgens 'file'
een gzip file). gzip vindt hem corrupt. Ik heb wat getest, en als ik bij
het lezen van de gzip na de eerste 1kB bij de rest de even en oneven
bytes swap, krijg ik het begin van een tar. Bij het uitpakken zit daar
een /bin/busybox is; het is een ELF executable voor een 32bits ARM.
Uiteindelijk is gevonden dat de nas een busybox OS draait  1.1.2 om precies te zijn.

BusyBox v1.1.2 (2010.03.12-05:06+0000) Built-in shell (ash)

Telnet aanzetten

Om telnet aan te zetten moet je de geinstalleerde NAS uitschakelen, en deze koppelen aan een linux machine.
Deze zal dan meestal autmatisch de disk mounten (onder RedHat mount hij /media/disk en bij Ubuntu een heel lang nummer bij /media)
Voer daarna de volgende  (dikgedrukte) commando's uit op die partitie.

[root@uranus ~]# cd /media/disk/
[root@uranus disk]# ls -la
total 36
drwxr-xr-x 18 root root 4096 Jan 1 2008 .
drwxr-xr-x 5 root root 4096 Dec 11 19:08 ..
-rw-r--r-- 1 root root 0 Jan 1 2008 1
drwxr-xr-x 2 root root 4096 Jan 1 1970 bin
drwxr-xr-x 4 root root 4096 Dec 11 2010 conf
drwxr-xr-x 4 root root 4096 Jan 1 1970 dev
drwxr-xr-x 10 root root 4096 Dec 11 2010 etc
drwxr-xr-x 2 root root 6 Nov 23 16:06 include
drwxr-xr-x 2 root root 6 Jan 1 1970 initrd
drwxr-xr-x 3 root root 4096 Jan 1 1970 lib
lrwxrwxrwx 1 root root 11 Jan 1 1970 linuxrc -> bin/busybox
drwxr-xr-x 2 root root 6 Nov 25 2009 lost+found
drwxrwxr-x 3 root root 17 Jan 1 1970 mnt
drwxr-xr-x 2 root root 6 Nov 11 2009 proc
drwxr-xr-x 2 root root 4096 Jan 1 1970 sbin
drwxr-xr-x 2 root root 6 Nov 11 2009 sys
drwxr-xr-x 2 root root 6 Nov 11 2009 tmp
drwxr-xr-x 7 root root 61 Jan 1 1970 usr
drwxr-xr-x 9 root root 84 Jan 1 1970 var
drwxr-xr-x 9 root root 4096 Dec 11 2010 web
[root@uranus disk]# chmod go+rx usr/*
[root@uranus disk]# chmod +s bin/busybox
[root@uranus disk]# chmod go+rx lib/libc-2.7.so
[root@uranus disk]# chmod a+rx lib/ld-2.7.so
[root@uranus disk]# echo "/usr/sbin/telnetd" >> etc/init.d/rc.sysinit
[root@uranus disk]# ls -l usr
total 8
drwxr-xr-x 2 root root 4096 Jan 1 1970 bin
drwxr-xr-x 3 root root 20 Jan 1 1970 lib
drwxr-xr-x 3 root root 18 Jan 1 1970 local
drwxr-xr-x 3 root root 4096 Jan 1 1970 sbin
drwxr-xr-x 6 root root 61 Jan 1 1970 share
[root@uranus disk]# ls -l bin/busybox
-rwsr-sr-x 1 root root 779492 Nov 23 16:06 bin/busybox
[root@uranus disk]# ls -l lib/libc* lib/ld-*
-rwxr-xr-x 1 root root 118488 Nov 23 16:06 lib/ld-2.7.so
lrwxrwxrwx 1 root root 9 Jan 1 1970 lib/ld-linux.so.3 -> ld-2.7.so
-rwxr-xr-x 1 root root 1166460 Nov 23 16:06 lib/libc-2.7.so
lrwxrwxrwx 1 root root 11 Jan 1 1970 lib/libcfl.so -> libcfl.so.0
lrwxrwxrwx 1 root root 13 Jan 1 1970 lib/libcfl.so.0 -> libcfl.so.0.0
-rwxr-xr-x 1 root root 52308 Nov 23 16:06 lib/libcfl.so.0.0
lrwxrwxrwx 1 root root 18 Jan 1 1970 lib/libcflwrapper.so -> libcflwrapper.so.0
lrwxrwxrwx 1 root root 20 Jan 1 1970 lib/libcflwrapper.so.0 -> libcflwrapper.so.0.0
-rwxr-xr-x 1 root root 16638 Nov 23 16:06 lib/libcflwrapper.so.0.0
lrwxrwxrwx 1 root root 11 Jan 1 1970 lib/libcgi.so -> libcgi.so.0
lrwxrwxrwx 1 root root 13 Jan 1 1970 lib/libcgi.so.0 -> libcgi.so.0.0
-rwxr-xr-x 1 root root 24456 Nov 23 16:06 lib/libcgi.so.0.0
-rwxr-xr-x 1 root root 101086 Nov 11 2009 lib/libcrypt-2.7.so
lrwxrwxrwx 1 root root 14 Jan 1 1970 lib/libcrypto.so -> libcrypto.so.0
lrwxrwxrwx 1 root root 18 Jan 1 1970 lib/libcrypto.so.0 -> libcrypto.so.0.9.8
-rwxr-xr-x 1 root root 1243052 Nov 18 07:49 lib/libcrypto.so.0.9.8
lrwxrwxrwx 1 root root 15 Jan 1 1970 lib/libcrypt.so.1 -> libcrypt-2.7.so
lrwxrwxrwx 1 root root 11 Jan 1 1970 lib/libc.so.6 -> libc-2.7.so
lrwxrwxrwx 1 root root 12 Jan 1 1970 lib/libcurl.so -> libcurl.so.0
lrwxrwxrwx 1 root root 14 Jan 1 1970 lib/libcurl.so.0 -> libcurl.so.0.0
-rwxr-xr-x 1 root root 251352 Nov 18 07:50 lib/libcurl.so.0.0
[root@uranus disk]#
Hierna kun je de disk weer umounten en terugsteken in de NAS en booten. Als je dan telnet naar de NAS zul je zien dat je in kunt loggen met telnet en de inmiddels aangemaakte accounts of met telnet.

gej@mercure:~$ telnet atlantis
Trying 44.128.168.5...
Connected to atlantis.solarsystem.lan.
Escape character is '^]'.

atlantis login: gej
Password: 

Welcome to
         _______   __    _    __  _      __
  /\    |  ___  \ /  \  | |  / _|| |  O |_  \
 /  \   | | | | || O  | _\ \| /_ | ==| | _)_/
   \  / |_| | |_| \__/ |___/ \__||_| |_||_|
    \/  S E M I C O N D U C T O R

For further information check:
http://www.moschip.com


BusyBox v1.1.2 (2010.03.12-05:06+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

[@ /mnt/data/home/gej]# ls -l /etc/init.d/
ls: /etc/init.d/: Permission denied
[@ /mnt/data/home/gej]# su -

BusyBox v1.1.2 (2010.03.12-05:06+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

[root@ ~]# ls -l /etc/init.d/
-rwxr-xr-x    1 root     root          157 Dec 31  2008 rc.reboot
-rwxr--r--    1 root     root         5282 Dec  8 20:15 rc.sysinit
-rwxr-xr-x    1 root     root         1821 Dec 31  2008 smb
[root@ ~]#
Verder ben ik begonnen met te kijken naar een croscompile van deze busybox om "andere" tools aan de gang te krijgen, maaar dit is nog niet gelukt. Probleem is de libc en de ld versie 2.7.
Wordt vervolgt.

firmware downloaden en uitpakken:

gej@venus:~/nas> cat firmware.1.0.0.13.bin | gzip -d > firmware.1.0.0.13
gej@venus:~/nas> file firmware.1.0.0.13
firmware.1.0.0.13: POSIX tar archive (GNU)
gej@venus:~/nas> tar xvf firmware.1.0.0.13
mini_firmware.bin
nas_firmware.bin
gej@venus:~/nas> file mini_firmware.bin
mini_firmware.bin: ERROR: Spectrum .TAP data vasprintf failed (Invalid or incomplete multibyte or wide character)
gej@venus:~/nas> file nas_firmware.bin
nas_firmware.bin: gzip compressed data, from Unix, last modified: Tue Nov 23 16:06:47 2010
gej@venus:~/nas>

Firmware deinstalleren
Wat, deinstalleren???

Even alles unmounten en controleren of dit gelukt is.

root@mercure:~# umount /dev/sdc2 /dev/sdc3
umount: /dev/sdc2: not mounted
root@mercure:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 242242960 194119964 35817744 85% /
none 1913516 752 1912764 1% /dev
none 1921224 116 1921108 1% /dev/shm
none 1921224 364 1920860 1% /var/run
none 1921224 0 1921224 0% /var/lock
root@mercure:~#

Leeg poetsen.... (schrijven van heeeel veel nullen over de bootsector en de partitionering heen)

root@mercure:~# dd if=/dev/zero of=/dev/sdc bs=1k count=10k
....

Controleren of hij leeg is.

root@mercure:~# fdisk -l
Disk /dev/sdc: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdc doesn't contain a valid partition table
root@mercure:~#

Disk terug steken en weer de firmware laden.

Data rescue

Als je de disk mount aan een linux doos zijn er de volgende partities aangemaakt:
(in mijn geval is de disk sdc, maar dit kan bij jou ook een andere sdx zijn.
root@mercure:~# fdisk -l
Disk /dev/sdc: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1          17      136521   82  Linux swap / Solaris
/dev/sdc2              18          34      136552+  83  Linux
/dev/sdc3              35      182401  1464862927+  83  Linux
root@mercure:~#
/dev/sdc1 is dan de swap
/dev/sdc2 is dan de disk waar de firmware/busybox op staat. Deze hebben we nodig als we telnet open willen zetten
/dev/sdc3 is de data.
Type 83 zou aangeven dat hij mountbaar is, dus hier gaan we dan:

root@mercure:~# mount /dev/sdc3 /mnt/
mount: unknown filesystem type 'linux_raid_member'

Als je deze foutmelding in google gooit, krijg je veel hits terug dat het gewoon een md raidset is, met raid 1, dus gewoon te mounten. Even tegen linux vertellen dat het gewoon ext3 is.

root@mercure:~# mount -t ext3 /dev/sdc3 /mnt/
root@mercure:~# df /mnt
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sdc3            1441831348    131240 1368456968   1% /mnt
root@mercure:~#

Software

Omdat inmiddels er geen site meer is waar de software staat en ik zo af en toe wel eens het verzoek krijg de software op te sturen, hierbij:

Software CD
Firmware 1.18 tot 1.33
Manuals
Netttool


Leverancier

De leverancier van het bordje is Moschip.
Dit is het experimenteer bordje wat je daar kunt kopen. De MSC4182.
msc8144 board

Je kunt dus op basis van dit bordje hardware bouwen en doorverkopen. Zij leveren de basis. Je mag ze zelf afmaken. Op dit bord zit bijvoorbeeld een VGA plug voor Windows CE te kunnen draaien.
De Windows CE software wordt ontwikkeld door supercom.ca en de linux software wordt ontwikkeld door idealBT.com. Ze beloven in de specs nog een firmware te leveren die de volgende opties nog krijgt:
Verder is er op het internet natuurlijk het een en ander te vinden.
Bijvoorbeeld: http://downloads.buffalo.nas-central.org/LSPro_ARM9/Distributions/Genlink/Binaries/armv5tejl-softfloat-linux-gnueabi/

Ook kun je hem krijgen met een seriele interface om de firmware in de NAS te upgraden. Ik heb mijn NAS nog niet opengemaakt om te kijken of ik die ook heb.

Licentie BusyBox

Volgens de licentie van BusyBox is het verplicht de "te bouwen source" weer verder te publiceren.
Grotere partijen als Western Digital, NAS-Central en bijvoorbeeld Qnap doen dat netjes, maar voor deze kan ik nergens een versie vinden. Dit wordt nog nagevraagd bij de leverancier.

Licentievoorwaarden BusyBox:
http://www.busybox.net/license.html
  1. bundle the complete corresponding source with the binary.
  2. bundle a written offer good for three years to provide source upon request (these days this is often a URL).
  3. point you users at the upstream source (i.e. pass along somebody else's 2nd offer)

Broertje of Zusje

WD Mybook World II
Als je een beetje gaat graven in de firmware volgens bovenstaande gegevens, en je gaat wat leuke dingen googlen, kom je heel snel op de Western Digital My Book World Edition II:
http://www.wdc.com/en/products/products.asp?driveid=588
het is ook een ARM CPU en de opties zijn ongeveer hetzelfde, maar wat minder geheugen.

Hierbij de te downloaden busybox van deze doos.
http://support.wdc.com/download/mybook/WD-World-NAS-v02.00.18-GPL.tar.bz2
http://support.wdc.com/download/mybook/WD-GPL-v1.18.tar.bz2



back