Unfortunately no one can be told what fun_plug is - you have to see it for yourself.
You are not logged in.
Okey then it should be debootstrap binary fault. I'll recompile a static version by Monday. But still strange, it all did work with my DSM-G600 back when I was writing wiki page.
Offline
In debootstrap package, usr/lib/debootstrap directory try to replace old pkgdetails with this one:
http://dns323.kood.org/downloads/people/sala/pkgdetails
maybe this helps.
Offline
I've tried this over and over, with varying results - none successful. Later I'll try going from scratch and following the instructions to the letter, but for now this is what I get :
# ./usr/sbin/debootstrap --arch powerpc etch /mnt/HD_a2/debian http://ftp.nl.debian.org/debian
I: Retrieving Packages
Segmentation fault
I have busybox in the PATH, as well as tar and bzip2 (with symlinks to bzcat and bunzip). Any suggestions?
Offline
TroySkelton wrote:
I've tried this over and over, with varying results - none successful. Later I'll try going from scratch and following the instructions to the letter, but for now this is what I get :
# ./usr/sbin/debootstrap --arch powerpc etch /mnt/HD_a2/debian http://ftp.nl.debian.org/debian
I: Retrieving Packages
Segmentation fault
I have busybox in the PATH, as well as tar and bzip2 (with symlinks to bzcat and bunzip). Any suggestions?
Did you try pkgdetails posted before?
Offline
I used the last pkgdetails to... And the install stop with the same error: "Segmentation fault"
Offline
Damn, other way is to skip busybox exporting part and take missing binaries from coreutils package. First you can start with nothing and look up error log to verify which binaries is needed.
If I find some time Ill boot back to original firmware and trying to fix this error
Offline
Can I use a custom firmware (with loader.o) to replace the missing tools? And which one?
And how to use the coreutil package?
Last edited by medlatek (2007-06-09 17:57:05)
Offline
It appears the issues with debootstrap are related to the firmware: in my case, debootstrap failed (segfault) when I had the dlink 1.02us firmware installed. However, installing sala's fwimage-04-sala-20070128, and with *no other changes*, debootstrap succeeded.
However, chroot fails with 'FATAL: kernel too old' so I'm kinda stuck. Apparently something on the debian/sid side wants a kernel newer than 2.4.21. Has there been any progress creating a pre-compiled 2.6.x kernel for this box? Even one that can be loader.o installed?
Side note: in hopes that perhaps the video4linux kernels that sala posted were "new enough", I tried to loader.o the -ram one (obviously I can't yet use the -sda3 one because my debian/sid is still not fully configured). However, in THAT case I /also/ had a failure:
<serial port boot log>
...
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 1024 bind 1024)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Cannot open root device "" or 03:01
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 03:01
<0>Rebooting in 180 seconds..
but it never actually rebooted.
Any advice?
Offline
cwilson wrote:
However, chroot fails with 'FATAL: kernel too old' so I'm kinda stuck.
I have never seen this message before. You may try stable debian or you can also try to downgrade glibc.
Some progress about more recent kernels can be found here: http://dns323.kood.org/forum/t477-Kernel.html
cwilson wrote:
<serial port boot log>
...
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 1024 bind 1024)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Cannot open root device "" or 03:01
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 03:01
<0>Rebooting in 180 seconds..
Could you post your root parameter or full boot log (including u-boot output) till this panic point. Also make sure that your fstab is correct.
Offline
sala wrote:
I have never seen this message before. You may try stable debian or you can also try to downgrade glibc.
I'll give etch a try. From my research on the web, it seems likely that sid's glibc is the culprit; however, I'm not expert enough with debian to downgrade glibc on a non-fully-configured installation.
sala wrote:
Some progress about more recent kernels can be found here: http://dns323.kood.org/forum/t477-Kernel.html
To sum up: some progress, but nobody has gotten either 2.4.34 or 2.6.x to actually work. So that's not an option for me. I sure hope etch (or sarge?) works...
sala wrote:
Could you post your root parameter or full boot log (including u-boot output) till this panic point. Also make sure that your fstab is correct.
I've attached the full boot log for the original (working) bootup, followed by my commands to show /etc/fstab and load the new kernel. I seems the original kernel somehow gets a command line of "root=/dev/ram0 console=ttyS0,9600" which is missing from the loader.o'd kernel. I tried
# sync; insmod /mnt/HD_a2/loader.o kernel=/mnt/HD_a2/vmlinux-ram root=/dev/ram console=ttyS0,9600
but that just resulted in
insmod: invalid parameter root
However, this loader.o thing is, for me, really a side issue for now -- it appears that all publicly posted pre-compiled kernels are derived from the original DLink 2.4.21-4 sources, which is "too old" for debian/sid. And I really want to get debian running (so...pin all hopes on etch/sarge, not loader.o)
Eventually, I want to get a web cam running, and /that/ will require loader.o and a v4l-capable kernel. But first things first...
Offline
Don't use the ram version, because you have installed your debian to sda2 or sda3. If you have it on sda3 then you can use my precompiled kernel (but not ram version !!) but if you have it on sda2 then you must patch and recompile your own kernel.
Look for more info: http://dns323.kood.org/dsmg600/howto:hdd_boot
But first I suggest you to make your debian installation chrootable. And I highly suggest you to not use sda2 for your debian installation because all permissions on sda2 will be reseted at boot-up by dlink firmware.
Offline
sala wrote:
Don't use the ram version, because you have installed your debian to sda2 or sda3.
Well, I didn't, YET, at the time of my earlier post and your relpy. I had only partially managed to get debootsstrap to work. So, I was simply trying to pretend that the debian installation didn't exist at all. I wanted to loader.o into a custom kernel, just to see if I could. Then, IF that kernel was "newer" (it isn't, sadly), then I would try to chroot into the debian/sid install. But that's all moot now, because [see below #1]
sala wrote:
If you have it on sda3 then you can use my precompiled kernel (but not ram version !!) but if you have it on sda2 then you must patch and recompile your own kernel.
Look for more info: http://dns323.kood.org/dsmg600/howto:hdd_boot
I am using /dev/sda3 for my debian (actually, it's in the /debian subdirectory of that device. Which may be the problem I'm seeing now [see below, #2] However, I'll definitely check out that howto:hdd_boot.
sala wrote:
But first I suggest you to make your debian installation chrootable. And I highly suggest you to not use sda2 for your debian installation because all permissions on sda2 will be reseted at boot-up by dlink firmware.
Right, I knew that -- so I had already put my debian installation on /dev/sda3. Using etch, I can now chroot! Yay!
[#1] So, it seems that the chroot_debian wiki page should indicate: chroot requires custom firmware, and you must use etch not sid (apparently something changed with regards to sid's glibc in the last six months or so)
[#2] Now that I've got a mostly working debian installation, I tried to loader.o using vmlinux-sda3, but I got the followng error:
...
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
Linux video capture interface: v1.00
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 1024 bind 1024)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
EXT3-fs: INFO: recovery required on readonly filesystem.
EXT3-fs: write access will be enabled during recovery.
kjournald starting. Commit interval 5 seconds
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 64k init
Warning: unable to open an initial console.
Kernel panic: No init found. Try passing init= option to kernel.
<0>Rebooting in 180 seconds..
However, I believe that is because I put the debian installation into a subdirectory. I'll try again with debian/etch installed directly into /dev/sda3...
Offline
cwilson wrote:
I'll try again with debian/etch installed directly into /dev/sda3...
Well, that works. So, the http://dns323.kood.org/dsmg600/howto:chroot_debian wiki page says to (a) use debootstrap to install debian onto the HD_a2 partition, and (b) into a subdirectory on that partition. Both are bad ideas if you want to hdd_boot.
Also, I had to edit debian's /etc/inittab to: turn off the tty gettys, and turn on a ttyS0 getty. That is, comment-out these lines:
#1:2345:respawn:/sbin/getty 38400 tty1
#2:23:respawn:/sbin/getty 38400 tty2
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6
And uncomment this line:
T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
Now, the next wierdness: when using loader.o and vminux-sda3, my wired ether uses some bogus MAC address, so my dhcp server doesn't return the correct addr. I'm getting '00:00:E8:1A:2B:3C' instead of the usual MAC. I suppose I need a debian-compiled version of the "mac_read" program to pull the correct MAC from /dev/mtdblock3 (yes I could just hard-code it, but) then I still need to convince the debian network scripts to use this MAC and not the bogus one.
Also, I'm trying to use the various module .o's from the firmware to turn on the wireless, bonding/bridging, etc. But first I need to get regular, wired, ethernet working with the correct MAC when I loader.o into debian...
Has anybody built any of the tools that are bundled in the firmware against glibc (e.g. in a debian-powerpc context, rather than a dlink-dsmg600-cross-compiler context)?
I'm wondering, given that gentoo is available in a uclibc variant for powerpc, if that's not a better choice for my chroot/boot-into needs. However, I've had more experience with debian than gentoo.
Any additional advice on these points?
Offline
Good to see that you got it working This howto:chroot_debian guide is not complete and since most people first try just chrooting then this will be primary purpose of this wiki page. People who want to get hdd boot working can use this wiki page to get some pointers, but they should be smart enough to figure out some changes, for example that you should install your OS which you want to boot at the root of your hard disk.
There are no sources to compile all tools from dlink firmware against glibc. Pretty much all key tools are "proprietary" and every thing else you can get from apt-get.
In Gentoo setup I did use rt2500 driver from rt2x00 project. USB and storage modules you should be able to get from dlink firmware.
I think you should be able to set custom mac before you start eth. And you can read it off from device case (no need for software )
Offline
Here's wireless rt2500.o try to insmod it.
http://dns323.kood.org/dsmg600/howto:ch … d_wireless
If you want simple system with maximum performance (ftp/torrent/web) then I'd go with Gentoo. But if you want to experiment with different software including samba then I'd go with Debian.
But if you manage to get distcc working then Gentoo should be best bet in all cases.
Offline
Well, I now have both debian and gentoo booting successfully (two separate disks). I lean towards gentoo because (a) you mention in this thread: http://dns323.kood.org/forum/t18-Gentoo-howto.html that you prefer it, and (b) less memory requirements thanks to uclibc (c) there's a slight possibility some of the firmware tools will work (assuming the 0.9.26 version of uclibc doesn't differ too much from the 0.9.28 version provided by gentoo 2006.1). Finally, one overriding reason to prefer gentoo: actually an expansion of point (b) above, on debian I actually run out of memory simply calling ifconfig, which leads to segfaults. So, going forward with gentoo.
However, there are still some problems:
sala wrote:
Here's wireless rt2500.o try to insmod it.
http://dns323.kood.org/dsmg600/howto:ch … d_wireless
I can't seem to get wireless to work. The firmware version of rt2500.o doesn't seem to support WPA (more specifically, it doesn't support the iwpriv ioctls like 'set WPASKA', etc. Obviously it DOES support WPA using some other control interface, because it works when used with the firmware bootup). The rt2500.o available from http://dns323.kood.org/downloads/people/sala/rt2500.o DOES support those ioctls, but doesn't seem to actually authenticate -- everything looks good, but when I try to actually transfer packets (either by doing a DHCPREQ, or with static IPs sending a ping) nothing gets thru.
This seems to be a common complaint:
http://rt2x00.serialmonkey.com/phpBB2/v … highlight=
(see post by user 'snoo' at Sun Oct 01, 2006 3:59 pm: "...and it is now working fine, using the latest CVS version of the driver.")
Because 1.1.0BETA4 was released on 2006-06-20, it is possible that something between Jun20 and Oct01 last year fixed something. The changelog for the CVS version includes these interesting items:
* Fix scan ioctl for scenario interface up, but no association yet.
* Updated base code to Ralink 1.4.6.6 driver version.
* Fix to WPA RSN IE mismatched bug
among other things.
It's going to take me a while to set up a compilation environment (which I /will/ do) but I was hoping, sala, that you would feel generous enough to try compiling an rt2500.o against your 2.4.21-pre4/vmlinux-sda3 kernel, using the latest CVS rt2500 sources http://rt2x00.serialmonkey.com/rt2500-cvs-daily.tar.gz
for me to test...
sala wrote:
If you want simple system with maximum performance (ftp/torrent/web) then I'd go with Gentoo. But if you want to experiment with different software including samba then I'd go with Debian.
But if you manage to get distcc working then Gentoo should be best bet in all cases.
Well, first I need a cross-compile environment so that I can actually build my application software (and perhaps, a new kernel and/or rt2500.o module...) distcc comes later. <g>
Offline
FYI, since I'm now "going forward with Gentoo", I probably won't continue posting in this debian thread. Also, discussing the rt2500.o driver is probably not exactly germane to this debian thread, or specific to that gentoo thread, either. Sala: if you'd like to respond to my queries concerning the rt2500.o driver in a more appropriate forum, please do so -- just leave a pointer here. Thx.
Offline
cwilson wrote:
Finally, one overriding reason to prefer gentoo: actually an expansion of point (b) above, on debian I actually run out of memory simply calling ifconfig, which leads to segfaults.
Did you enable swap space? For me Debian did work quite well. I did even get apache2.2 + php5 + mysql5 working (slow and swaping but working)
Offline
sala wrote:
Did you enable swap space? For me Debian did work quite well. I did even get apache2.2 + php5 + mysql5 working (slow and swaping but working)
Yep. from my vmlinux-sda3 boot:
...
INIT: version 2.86 booting
hostname: the specified hostname is invalid
mount: wrong fs type, bad option, bad superblock on tmpfs,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
touch: cannot touch `/lib/init/rw/.ramfs': Read-only file system
mount: wrong fs type, bad option, bad superblock on tmpfs,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
Activating swap...Adding Swap: 530104k swap-space (priority -1)
done.
EXT3 FS 2.4-0.9.19, 19 August 2002 on sd(8,3), internal journal
Setting the system clock..
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
Cleaning up ifupdown....
Loading device-mapper support.
Checking file systems...fsck 1.40-WIP (14-Nov-2006)
done.
...
Activating swapfile swap...done.
Setting up networking....
Starting hotplug subsystem:
pci
...
So yeah, I've got swap turned on. What happens is this:
# ifup eth0
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:15:E9:6D:26:E9
inet addr:192.168.1.35 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:528 (528.0 b) TX bytes:402 (402.0 b)
Interrupt:3 Base address:0xff00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
# modprobe rt2500
rt2500 1.1.0 BETA4 2006/06/18 http://rt2x00.serialmonkey.com
alloc_dev: Unable to allocate device memory.
/lib/modules/2.4.21-pre4/rt2500.o: init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
You may find more information in syslog or the output from dmesg
/lib/modules/2.4.21-pre4/rt2500.o: insmod /lib/modules/2.4.21-pre4/rt2500.o failed
/lib/modules/2.4.21-pre4/rt2500.o: insmod rt2500 failed
# insmod rt2500
Using /lib/modules/2.4.21-pre4/rt2500.o
rt2500 1.1.0 BETA4 2006/06/18 http://rt2x00.serialmonkey.com
rt2500Could not allocate DMA ring buffer memory.
/lib/modules/2.4.21-pre4/rt2500.o: init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
You may find more information in syslog or the output from dmesg
There were a few other symptoms (like 'ifconfig' coredumping) but I can't reproduce those now. In any case, gentoo is working better for me.
Offline
Here's thread about rt2500 module:
http://dns323.kood.org/forum/t789-rt2500-driver.html
Offline
Hey,
This is my first post and I would like to state that I am very new to linux and debian. I'd like to install Debian on my DSM-G600, and got Busybox 1.2(?) up and running, the telnet-thing. I also managed to install firefly and lighttpd. So now I am eager to install MySQL on my little box, but haven't managed to install the Debian on it yet.
I see you have published a howto on the page, but it's a bit too advanced for my new beginner level. Is there any possibilities that someone could make a n00b-tutorial on how to install Debian on the DSM-G600?
For example:
#1 Turn on the device
#2 Download tar-balls (what tarballs?)
#3 Extract them here
#4 Set up telnet
#5 Log in to telnet
...
#N And then you're done
Thank you:)
kopp
Offline
Hello,
I think this thread is a little died but how can I solve the "segmentation fault" issue? I need UPnP so I cannot upgrade to Sala firmware to setup Debian.
Offline
el_salmon wrote:
Hello,
I think this thread is a little died but how can I solve the "segmentation fault" issue? I need UPnP so I cannot upgrade to Sala firmware to setup Debian.
You might want to set up gentoo instead of debian. I had gentoo for a while now. A few weeks ago, I tried to set up debian by following the instructions in the wiki, but I ran into a number of problems. Maybe the instructions need to be updated.
Offline
qn1234 wrote:
el_salmon wrote:
Hello,
I think this thread is a little died but how can I solve the "segmentation fault" issue? I need UPnP so I cannot upgrade to Sala firmware to setup Debian.You might want to set up gentoo instead of debian. I had gentoo for a while now. A few weeks ago, I tried to set up debian by following the instructions in the wiki, but I ran into a number of problems. Maybe the instructions need to be updated.
Question is that I have tried to set up gentoo before debian but emerge didn't work because a Manifest issue and emerge --sync didn't work too. Web-rsync it seems worked but DSM-G600 hang up at ~53% during cache update.
Offline