Unfortunately no one can be told what fun_plug is - you have to see it for yourself.
You are not logged in.
Edit: ***** ALL OF THIS INFO IS NOW AVAILABLE IN THE WIKI CHECK THERE FOR UPDATES *****
http://dns323.kood.org/information:beginner_s_faq
Hi,
As I am brand new to this great place, I am knowledgeable of how the process of [getting everything running the way I want it to run] is working out from the perspective of a first timer. I've spent the last several days tinkering around here and have found that although the documentation comes from brilliant people it is not very easy for a newbie to follow. I know I've had some questions and still do about the DNS-323. I am hoping to solve the problems and compile a thorough F.A.Q. for beginners that we can add to the Wiki, so that anyone will be able to get started doing this no matter how young, old, with the times or out of the loop our friends with the DNS-323 are.
I also hope to make more extensive information available in the Wiki for those steps that aren't exactly explained. Please add to what I've started and suggest changes so that I can update this post, I want to make sure these answers are correct before I do any kind of finalizing of a beginners F.A.Q. using wrong information, I'll add to this as I go along. Ultimately I want to get Ruby on Rails, PHP and MySQL running through the DNS-323 so I'll be needing to explore that whole Crosscompile toolchain thing more concisely.
Update: After some careful thought actually running MYSQL through the DNS-323 might not be a very good idea, better to have it access MYSQL on a different machine, but Ruby on Rails and PHP are still in.
Fun plug:
Q: What is the filename meant to be?
A: fun_plug (with no extension)
Q: Where does it go?
A: The fun_plug file needs to be in your root directory where you can see it when you access the network drive. When using 1.03 firmware for example that location would be inside the directory called "Volume_1", it can be uploaded there most easily via FTP.
Q: I'm nervous am I doing this right?
A: Do not use notepad to create this file it needs to be formatted with Unix style line breaks and Windows will make a file by default in the wrong format, it needs to be in "Unix format (LF)". Be sure you chmod the file to 777, the DNS-323 will execute this file when it is booted.
Telnet:
Q: My virus scanner said there is a virus when I downloaded the compressed folder I was told to in the Wiki.
A: The file in question is a remote administration utility that is often regarded as a virus by most virus scanners, if you are worried about it skip this file. You will only need these files from this compressed folder: ./starttelnet.sh, ./lnx_bin/utelnetd and ./lnx_bin/busybox3.
Q: I have uploaded the files to the main directory as asked and rebooted my DNS-323 but still do not have telnet access.
A: Make certain all of the files including your fun_plug file, the ./lnx_bin directory and all files in the ./lnx_bin directory are chmodded to 777, also ensure you are connecting to port 23.
Q: I am using Putty and the connection is established but there is no prompt on the screen, it's just a blank window with a cursor.
A: Make certain that before connecting you are selecting to connect with telnet in the putty client. If you connect with the default SSH protocol instead of telnet you will not be able to do anything in the command window.
Lighttpd:
Q: Crosscompile toolchain?
A: If all you want right now is lighttpd running, then you can avoid this, download the pre-compiled version from the bottom of that page and upload it to your server following the same directions at the top.
Q: Do I need to restart the DNS-323?
A: No, just run the server using telnet and the appropriate services will be started.
Q: How do I access the .html files I uploaded from the web?
A: Find out your IP address, this can be accomplished a number of ways either from your router which should give you this information or from a website like whatismyip.com or similar. To access your files from the web you would use http://, then your IP address, then a colon three thousand ":3000" which is the default port that lighttpd will be running on.
Q: I still cannot access my files.
A: You will need to access them by the full filename using the default settings. For instance if your file is index.html you would enter the url http://<IPaddress:Port>/index.html to access it.
Q: How do I make my IP address and port number combo go straight to a specific file like index.html without having to actually type it?
A: You can add this line to the end of your lighttpd.conf file: index-file.names = ( "index.html", "index.htm", "default.htm" ) and restart. This will cause your browser to return index.html, index.htm or default.htm when the directory is requested, like a directory default page.
Q: I want to access this stuff without the port number just my IP address.
A: You will have to set up a port redirection on your router. It is a good idea to set a static IP for your DNS-323, after you have done this redirect port number 80 which is the default port accessed by http requests, to port 3000 at the local IP address of the DNS-323. Now when you visit your IP address the request will go straight to the files you want.
Q: I am linking to a CSS file but the page is not rendering it.
A: You need to add CSS to your lighttpd.conf file in between the other ones there: ".css" => "text/css" make certain you are using your commas correctly, all but the last file type in the list should have a comma after it.
Q: How do I make lighttpd start up automatically with the DNS-323, not through telnet?
A: Create a new script file with unix (LF) line breaks called startlighttpd.sh and put it in the same place as your starttelnet.sh file, remember these all have to start with: #!/bin/sh. Then add to your funplug the line: /mnt/HD_a2/startlighttpd.sh, or instead just add to your starttelnet.sh file, the line you will need is: /mnt/HD_a2/lnx_bin/lighttpd -D -f /mnt/HD_a2/lnx_bin/lighttpd.conf
Last edited by Nathan1_ (2007-04-27 02:48:20)
Offline
I have started using a .htaccess file to direct the user to index.html when visiting my IP however I get a 404 error. My .htaccess file contains "DirectoryIndex index.html" does lighttpd not support .htaccess?
Thank you for your help again I'm figuring out I'm not very good at this.
Last edited by Nathan1_ (2007-04-13 04:16:20)
Offline
Nathan1_ wrote:
I have started using a .htaccess file to direct the user to index.html when visiting my IP however I get a 404 error. My .htaccess file contains "DirectoryIndex index.html" does lighttpd not support .htaccess?
Hi @Nathan1
lighthttpd does not use .htaccess files, use lighttpd.conf if you can, instead:
check out:
http://www.onlamp.com/pub/a/onlamp/2007 … erver.html
http://trac.lighttpd.net/trac/wiki/Tuto … figuration
Offline
I'm trying to set up my crosscompile toolchain a second time right now, first time did not work.
First step, I've installed Ubuntu dapper drake on my system, updated all of it's default packages and installed the ones asked for in the Wiki:
bison flex gcc byacc g++
***** THIS PART IS UNIMPORTANT SCROLL DOWN IF YOU DON'T WANT TO READ IT *****
When I type gcc -v in my terminal window I get it returned that I'm running gcc4 and not gcc3.4, the wiki states that if you are using a later version of gcc to update a symlink. I'm supposed to make /usr/bin/gcc point to /usr/bin/gcc-3.4, But I checked and I don't have a folder called gcc-3.4 to link to I only have gcc-4.0.
What good would editing this symlink do, and do I have to... what difference does it make?
Update: Screw it! I've removed gcc and g++, then installed gcc-3.4 and g++-3.4, I hope that was the right thing to do. Then I had to update the sym link as /usr/bin/gcc did not exist anymore. I did this by executing the command sudo ln -sf /usr/bin/gcc-3.4 /usr/bin/gcc.
Now typing gcc -v returns what the wiki wanted which is version 3.4, I'll update this post if more of the problems I had before start coming up again.
Update: I'm having problems right off the bat, the wiki tells me to run tar on zips/uclibc-toolchain-src-20040609.tar.gz but this file doesn't exist, there's one with the extension .tgz though, so I use that and it uncompresses.
Then I run ./build_uclibc like the wiki asks me to and it tells me that the .tar.gz file doesn't exist in the zips directory. It also removes my extracted files from the GPL directory.
I renamed the archive to end in tar.gz and tried again, now I'm getting the message make: command not found... make command not found? That's a regular part of compiling applications right?
Is the wiki just really out of date? This is a fresh install of Ubuntu dapper drake, should I not have updated my system after I installed?
Update: I've re-installed gcc and g++ and updated my symlink again to point to gcc-3.4. I'm still getting the same error: make: command not found
I reinstalled gcc again, this time without updating my symlink and I am getting the same error.
Update: I installed something called make, I opened build_uclibc and edited it to read from the .tgz file instead and tried again, now it's making a lot of text fly by my screen. I'm getting some warnings that say a few different things but I assume this is still ok?
Right now I'm using gcc4.0... which is not contrary to what the wiki says as it instructs me to get gcc3-4, if that should say gcc3.4 instead of implying that I need version 3 or 4 then that needs to be fixed.
This is taking a really long time to compile.
***** START READING AGAIN FROM HERE THE ABOVE PART IS FOR MY REFERENCE *****
The wiki instructs me after I'm finished to visit uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm/arm-linux-uclibc/lib and fix all broken symlinks. How do I know if a symlink is broken and if it is where should I direct it to? This part is very confusing.
After I do that will I need to do the same thing after each one of the things I compile?
The wiki doesn't mention anything, this is how my compile ended does it look alright?
checking for library containing socketpair... none required checking for library containing tgetent... no configure: error: no termcap library found make[1]: *** [configure-gdb] Error 1 make[1]: Leaving directory `/home/nathan/GPL/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_build_arm/gdb-build' make: *** [/home/nathan/GPL/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_build_arm/gdb-build/.compiled] Error 2 nathan@nathan-desktop:~/GPL$
Also further up in different places it says these things, does this look alright?
checking whether the C compiler (gcc -g -O2 ) is a cross-compiler... no checking host system type... i386-pc-linux-gnu checking target system type... arm-unknown-linux-uclibc checking build system type... i386-pc-linux-gnu checking for library containing socketpair... none required checking for library containing tgetent... no
I'll check this thread in the morning if anyone could lend a hand on these questions that would be awesome I really need the help.
Last edited by Nathan1_ (2007-04-26 07:31:35)
Offline
Ok I did it all again using gcc-3.4 instead of gcc-4 and I got the exact same result, i still don't know how to "fix all broken symlinks" what symlinks, point them to where?
Also I'll update the post above to make the unimportant part more apparent.
Also: HELP ME DAMMIT I POSTED ALL THAT 10 DAYS AGO.
I'd do this myself if I could but I need help to make a decent faq about the process.
Last edited by Nathan1_ (2007-04-26 07:35:31)
Offline
Nathan1_ wrote:
The wiki instructs me after I'm finished to visit uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm/arm-linux-uclibc/lib and fix all broken symlinks. How do I know if a symlink is broken and if it is where should I direct it to? This part is very confusing.
A symlink is broken when it points to a file that does not exist. The toolchain contains quite a few symlinks that point to existing files, but to the wrong directory. You can see this, e.g. by going to toolchain_arm/arm-linux-uclibc/lib. Run "file *", and you'll see messages like:
"...: broken symbolic link to ..."
Then do "ls -l" and see where those links point to. You will find out that they point to some "arm"-directory that does not exist, e.g.:
libthread_db.so -> ../../../../arm/arm-linux-uclibc/lib/libthread_db.so.1
Unless I missed more broken links, it's possible to fix this with a single command (have you had a look at the scripts I pointed you to in the private message?): Go to the directory that contains the gcc-3.3.x subdirectory (uclibc-toolchain-src-20040609/) and create the following link:
ln -s gcc-3.3.x/toolchain_arm arm
Offline
Nathan-
I was going to go through this process next month (I'm in the middle of installing Debian 4.0 r0 on a machine now),
and besides checking out the wiki I have also researched setting up cross-compiling under Debian on the web.
( I know the wiki mentions Ubuntu and I'm installing straight Debian, but what the heck. )
I'll post my findings as I go through the process here...might assist in that faq you want to write!
DNS-323 2x Western Digital WD5000AAKS 500GB SATAII (3.0Gb/s) 7200RPM 16MB RAID1 FW1.03 ext2
Offline
fonz wrote:
useful info.
I did know what a symlink was and how to make them but no idea what the wiki was getting at, I didn't see your private message right away. Thank you very much I'll post back here with my findings on Debian!
Offline
BobE wrote:
DNS-323 2x Western Digital WD5000AAKS 500GB SATAII (3.0Gb/s) 7200RPM 16MB RAID1 FW1.03 ext2
You have the exact same setup as me.
That's incredible.
I guess it's not too unbelievable.
Please do post back here with your findings also, in case you run into any issues I did not, or if you get farther than me it would be useful.
Offline
Okay, it's taken me longer than I expected to setup my Debian Linux 4.0 (Etch) box (damn job kept getting in the way,) but I have successfully created the cross-compile toolchain. I followed the outline specified in the wiki with the exceptions noted below:
* After running wget_GPL, I verified that the build_uclibc script contained the alteration from .tar.gz to .tgz (I must have downloaded an older copy since my version still had the longer incorrect suffix.)
* Started build_uclibc and noticed that make complained that it couldn't find gcc within the toolchain directory. So I aborted the process, and manually created a symbolic link of /usr/bin/gcc to ~/uclibc-toolchain-src-20040609/gcc-3.3.x/toolchain_arm/bin/arm-linux-uclibc-gcc (where ~ represents the full path where I loaded GPL. In my case this was /home/GPL.) I then restarted the make (not the script!)
* I also noticed - reading very fast because things were indeed flying on the screen - lines that mentioned "is a cross compiler... no" but I ignored them. I just wanted to see what would happen.
* The make process aborted because I did not have the gettext package installed. Not sure why I needed this since it was not mentioned in the wiki, but once I installed it I restarted make and after many, many minutes of watching the screen literally jump with the text flying by everything completed.
To confirm things I then extracted at.tgz and executed the build_at script. However, I first needed to modify the name of the executables for the CC and GCC variables. I could simply have created symbolic links and left the script alone, but why bother? I needed to use arm-linux-uclibc-gcc (I inserted the uclibc part.)
Once the compiles completed, I performed a file command on the resulting executables and found they were indeed compiled for the ARM architecture and not i386 (or i686 as the case may be.)
-Bob
DNS-323 2x Western Digital WD5000AAKS 500GB SATAII (3.0Gb/s) 7200RPM 16MB RAID1 FW1.03 ext2
Offline