i've got busybox in my initrd so right at the end i dump out to a shell. i bring up the network with an ifconfig in my init script and can ping the network.
there must be something in /dev or something somewhere that i'm missing that makes these ioctls not work under the stripped down environment of initrd.
i'll try an strace and see what happens.
> iscsi-boot appears to try and bring up the network interface and give it an address and route. unfortunately it says this instead (under an initrd environment):
> iSCSI: error in getting interface name
> : No such device
> iSCSI: Error in bringing up the network interface
Are you sure you're bringing up the network interface before
trying to start iscsi-boot? Put an 'ifconfig eth0' in your
(You need to enable CONFIG_IP_PNP if you want to set the ip
address on the command line)
> when I try to run iscsid under initrd it says
> all isc1093350010.49159 >> iscsid: iSCSI session ioctl failed for <snip>, Can not allocate memory: Cannot allocate memory
> any ideas? something is obviously different about initrd but i can't put my finger on what. it's starting to drive me crazy!
I'd get strace on your initrd and start both commands under
Are you sure you've got the scsi, sd and iscsi_sfnet modules all
loaded OK? (stick cat /proc/modules in your initrd).
To make life easy for myself I've often got initrd's working
using bash before switching to nash to save memory. ldd will tell
you what libraries you need to copy across.