This tutorial requires an installed fun_plug!
Continue reading Installation of Twonky Server 7 on NAS-devices
This tutorial requires an installed fun_plug!
Continue reading Installation of Twonky Server 7 on NAS-devices
This tutorial is deprecated, please use the tutorial for the current version.
Since a while there is a new version of the Twonkymedia Server 6 available. Many readers asked me how to update to this version without loosing the configuration of the already installed version. This article describes the update for the following devices:
For other devices, please follow this article. If you are searching for the article regarding the initial installation (not the update), please look here for this.
Continue reading Update of Twonkymedia Server 6 on the Conceptronic CH3MNAS, D-Link DNS-320,DNS-321,DNS-325 and DNS-343
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-320, DNS-321, DNS-325, DNS-343, DNS-345 and Conceptronic CH3MNAS
Here the output of cat cat /proc/cpuinfo
on the D-Link DNS-343:
Processor : ARM926EJ-Sid(wb) rev 0 (v5l) BogoMIPS : 499.71 Features : swp half thumb fastmult vfp edsp CPU implementer : 0x41 CPU architecture: 5TEJ CPU variant : 0x0 CPU part : 0x926 CPU revision : 0 Cache type : write-back Cache clean : cp15 c7 ops Cache lockdown : format C Cache format : Harvard I size : 32768 I assoc : 1 I line length : 32 I sets : 1024 D size : 32768 D assoc : 4 D line length : 32 D sets : 256 Hardware : Feroceon Revision : 0000 Serial : 0000000000000000
This tutorial is deprecated, please use the tutorial for the current version.
If you need an advanced Mediaserver, Twonky is one of the best choices. The Problem is that the installation of Twonkymedia Server 6 is a little bit more complicated than just running a Setup. Before you go on, please make sure that the Fonz fun_plug is installed. The following article has only been tested on the following devices:
It will definitely not work on the CH3SNAS, CH3HNAS and DNS-323, please use this tutorial for these devices. If you want to update to the newest version of twonky (and if you’ve already followed this article in the past), then check this out.
Continue reading Installation of Twonkymedia Server 6 on the Conceptronic CH3MNAS and the D-Link DNS-320, DNS-321, DNS-325 and DNS-343
This procedure allows you to upgrade (or downgrade) the version of the firmware running on the NAS. Although backups are always nice (if you have that option), the data stored on the NAS is not affected. Similarly, any servers (daemons) running under fun_plug are also unaffected (although they are temporarily turned off and later turned on again).
Note that this somewhat elaborate procedure is needed if you are running fun_plug. If you do not have fun_plug installed, or it is no running, you can should use the simpler instructions provided by Conceptronic with the firmware file.
You can tell which firmware version you are running by using a web browser:
This should get you to the screen shown in the picture.
An overview of the current stable version, any more recent beta (or “Release Candidate”) versions, or older versions can be found here.
The page contains links to sites where the firmware can be downloaded. After downloading the required version you will need to unzip or unrar it.
funplug
If you are not running fun_plug, you can simplify things by following the instructions in the PDF readme file supplied with the downloaded firmware rather than following the fancier instructions below which assume you may be running various special servers and running with special settings.
So, in the following, we assume that you are running fun_plug.
If you are running funplug, it is likely that you enabled ssh
(Secure Shell) and disabled telnet
for security reasons. After the reboot, all modifications to /etc/passwd
and /etc/group
are gone, which is why we need to temporarily reactivate telnet
to ensure that we can login after the upgrade:
ssh
(e.g. using PuTTY)
telnet
daemon so you can easily login later:
cd /ffp/start ls -al telnetd.sh chmod a+x telnetd.sh ls -al telnetd.sh
This means that on the next reboot telnet should be enabled.
If you are upgrading from a pre-1.0.5 firmware version to version 1.0.5 or later, you may decide to replace the special fan control script “fanctl
” from Fonz (see the fan control tutorial) with the standard fan control feature built into the Conceptronic firmware.
Which option is better? The firmware version 1.0.5 has a very simple fan control algorithm. The fan only runs when the internal temperature is 43°C or higher. This is a bit high. Furthermore, the fan speed does not depend on the temperature: the fan is either on or off. Fonz’ solution instead increases the fan speed as the temperature rises. This avoids the fan repeatedly turning on and off when the fan needs to spin, but doesn’t need to run at full speed.
If you decide to try the firmware’s solution, you can deactivate Fonz’ control program using:
cd /ffp/start sh fanctl.sh status ls -al fanctl.sh chmod a-x fanctl.sh ls -al fanctl.sh
The 2nd line reports whether the fanctl
utility is running. The chmod a-x
causes the special fan script to be disabled on the next reboot.
Rename the file fun_plug
to fun_plug.bak
to deactivate ffp on the next boot. You can easily do this using e.g. Windows Explorer or using the command shell:
cd /mnt/HD_a2 ls fun_plug* mv fun_plug fun_plug.bak ls fun_plug*
Write down any special configurations you have set up in the system.
The main place to look is in the ”Advanced” tab of the Configuration web page. Write down a reminder to set any particular settings such as ”’users”’ who have access, ”’groups”’ you may have created, ”’ftp access”’ you may have given to groups, etc. If you forget to reconfigure these, you will find out later when e.g. an ftp account doesn’t work. Unfortunately there is no simple way to save these settings and later reload them: you will, for example, have to reenter or define new passwords.
The other setting worth saving is any non-default IP address or network name of your CH3SNAS.
Update the firmware via the web interface (see picture above). During the update, you will get a progress bar. Then, after confirmation, the CH3SNAS will reboot.
Next reset the CH3SNAS firmware settings to the factory defaults (the new firmware may interpret settings stored in Flash memory differently that the previous version). This step is mandatory to ensure correct operation!
Tools
>> System
>> Restore To Factory Default Settings
This will cause another reboot during which the IP address, group/user information, user privileges will be lost. Your browser may not find the device again if you use a non-default name. Try the default “http://CH3SNAS/” or using Conceptronic’s “Easy Search Utility” to find your NAS in the network.
At this point, the administrator password is empty, so you can log onto the Config web page as admin
with an empty password. Then you need to run Setup
>> Run Wizard
to get the basic settings correct again. These include
This will lead to a restart after which you will also be able to see the CH3SNAS under its original name on the network and the stored data should be accessible.
At this point you cannot access the CH3SNAS via either telnet
or ssh
because an out-of-the-box CH3SNAS does not enable either daemon:
fun_plug.bak
back to fun_plug
using SAMBA (e.g. using Windows Exporer)Tools
>> System
>> Restart
).telnet
should work again.telnet
and set the root password again using this procedure. This ends with running store-passwd.sh
to save the password information.telnet
again (first be sure ssh
is running!) using an ssh session on PuTTY:
cd /ffp/start ls -al telnetd.sh chmod a-x telnetd.sh ls -al telnetd.sh sh telnetd.sh stop
The final line stops the telnet daemon, so from this point on you (only) have access via the much more secure ssh
.
You can now redefine any required user- and group settings (e.g. for ftp
users).
Note that after updating the firmware, the NAS will spend a few hours reindexing the hard disks (searching for movies and audio-files) for the itunes and UPnP-services. You can stop this activity by deactivating the respective services.
Fonz Version of the store-passwd.sh
-Script for the DNS-343 and the Acer easystore NAS can be downloaded like this:
wget http://wolf-u.li/u/121 -O /ffp/sbin/store-passwd.sh
The Content of this script is the following:
#!/ffp/bin/sh PATH=/ffp/sbin:/ffp/bin:$PATH echo "Mounting flash ..." mount -t minix /dev/mtdblock0 /sys/mtd1 mount -t minix /dev/mtdblock1 /sys/mtd2 echo "Updating files ..." for d in /sys/mtd1 /sys/mtd2 /mnt/HD_a4/.systemfile/AccountFile /mnt/HD_b4/.systemfile/AccountFile; do if [ -d "$d" ]; then for f in /etc/passwd /etc/group /etc/shadow /etc/samba/smbpasswd; do b=$(basename $f) if [ -e "$d/$b" ]; then echo " $d/$b" cp -f $f $d fi done fi done echo "Unmounting ..." sync umount /sys/mtd1 umount /sys/mtd2 echo "Done."
Inspired by this Thread, i (Uli) did a rewrite of the store-passwd.sh
-script. You need to use BASH for this to execute. Better use the Script above if you are not sure!
#!/ffp/bin/sh # This script was written by Ulrich Wolf <ffp [a] wolf-u [dot] li> # Inspired by the original Scripts of fonz and OneArmedMan # Defining the various locations for these files: BACKUPLOCATION[0]="/sys/mtd1" BACKUPLOCATION[1]="/sys/mtd2" BACKUPLOCATION[2]="/mnt/HD_a4/.systemfile/AccountFile" BACKUPLOCATION[3]="/mnt/HD_b4/.systemfile/AccountFile" # Defining the backup-locations of the files BACKUPFILE[0]="/etc/shadow" BACKUPFILE[1]="/etc/group" BACKUPFILE[2]="/etc/passwd" BACKUPFILE[3]="/etc/samba/smbpasswd" # Inactive Files #BACKUPFILE[4]="/etc/ftp_tbl" #BACKUPFILE[5]="/etc/ftpgroup" # Mounting the internal DRAM mount -t minix /dev/mtdblock0 /sys/mtd1 mount -t minix /dev/mtdblock1 /sys/mtd2 # Iterate through the files for backup of the files for BUFILESEQ in $(seq 0 $((${#BACKUPFILE[@]} - 1))) do # Iterate through the backup-locations of the files for BULOCSEQ in $(seq 0 $((${#BACKUPLOCATION[@]} - 1))) do if [ -e ${BACKUPLOCATION[$BULOCSEQ]}/${BACKUPFILE[$BUFILESEQ]##*/} ]; then # File exists, copy the original one echo -n "${BACKUPFILE[$BUFILESEQ]##*/} found in ${BACKUPLOCATION[$BULOCSEQ]}, copying" cp -f ${BACKUPFILE[$BUFILESEQ]} ${BACKUPLOCATION[$BULOCSEQ]}/. 2> /dev/null && echo "done" || echo "failed" else # File does not exist, skip echo "${BACKUPFILE[$BUFILESEQ]##*/} not found in ${BACKUPLOCATION[$BULOCSEQ]}, skipping" fi done done echo -n "Flushing unwritten filesystem I/O buffers..." sync && echo "done" || echo "failed" # Unmount the internal DRAM umount /sys/mtd1 umount /sys/mtd2 echo "Backup complete" exit 0