Yes. The LRP is real linux, don't forget that. Just copy it over (and any libraries it needs) and back up the root.
First of all, did you strip the binary (man strip) Second, check how you linked the binary. Is it staticly linked ?
The most common reason for this is that you lack a library on LRP that does exist on the Linux distribution you used to create the binary. If using an old Linux Distribution (RedHat 4.*, Debian 1.1, Slackware x.x) you probably have the old C library. LRP uses GNU libc, aka glibc, aka libc 6. The old libc 5, aka a.out has been used on old LRP versions. On full blown Linux distributions, you cna have both. On LRP there is no space, hence there is only one, the latest one. libc 6.
Another reasing is your binary got linked against another library that you have on your distribution, but not on your LRP disk. Use the ldd (man ldd) command to find out which.
paul: LRP might use some smart script to toss out all functions in libc that aren't used in a set of binaries to make the libc smaller. Adding a binary might add the neccesity to redo this if another function was called. Dave?
tftp, sneakernet, or scp (using sshd package) or create a real .lrp package
You were a Good Hacker[tm] and didn't make the package as root. So when you
tarred up the files they were owned by you and not root. Try adding the
options --owner=root
and --group=root
as options to tar.
Ofcourse, it could be much simpler. you didn't add the correct lrpcfg files
in the /var/lib/lrpcfg/packagename
directory and LRP doesn't KNOW it has
to backup your files.
Nice pointers to things we might like to see as LRP package Jonathan French seems to have ideas (?) PIKT
ntop would be cool to have
iplogger-ident-1.1.tar.gz
also
Basically any sane modern distribution should work fine. Any modern Linux distribution uses this (eg: RedHat 5.x, Debian 1.3/2.x, SuSe?, TurboLinux ? and perhaps even some Slackware's)
It depends on how those binaries were made. Since LRP, like all modern distributions, uses the GNU C library, you can't use old distributions. So in that respect Debian "bo" and Redhat 3.x/4.x is are out (pun intended)
A second thing however, is the library dependancy. A full distribution has a lot more libraries then we can fit on a floppydisk, so some shaded libraries will be missing or be reduced in functionality on LRP. So you might need to recompile some things and add some static library calls if you do.
You might need to use some tools to extract the source from a distribution binary. Useful tools are "rpm" and "alien". Usually you can get the source from the distribution package as well. for RedHat you still need to use rpm to get "fixed" source (I think rpm -b to build it from the spec after downloading the source RPM). It's easier for Debian, where you can get the [packagename].orig.tar.gz and the [packagename].diff.* files.
Old LRP:
Put the package (ie ppp.tgz
) on the root of the boot medium. Add the
package name (ie ppp) to the /var/lib/lrpkg/root.map
file (Also on
system menu). Back-up the root package from the menu system and then
reboot.
Recent LRP:
Put the package (ie ppp.lrp
) on the root of the boot medium and add
the string "ppp" to the LRP= boot paramter of your bootloader (eg
syslinux.cfg
)
Cave-at: There are some bugs in syslinux, if you notice your package
isn't getting loaded, add a dummy package to the LRP= line. It seems
on some versions, it's not loading the last entry on the list.