Welcome! Log In Create A New Profile

Advanced

Pogoplug pink system command reduced

Posted by ThomFR 
Pogoplug pink system command reduced
September 05, 2011 08:54AM
New in this forum...

I was trying to instal Debian on an USB key on a new Pogoplug pink box (script from jeff doozan).

cd /tmp
wget http://ss4200.homelinux.com/dockstar/gogo-dock.sh
chmod 777 gogo-dock.sh
./gogo-dock.sh


Accessing security configuration on MyPogoplug, there is a new update process shown, which erases some commandes from /usr/bin like ar, find ,etc ... before we can activate ssh

So the install could not be achieved bacause of lack of system commands : exemple : ar xv debootstrap.deb
(perhaps some other commands too ...)

Any help will be appreciated :)
Re: Pogoplug pink system command reduced
September 05, 2011 09:09AM
Some more informations :
I've checked all commads supported by busymox (linked into almost all commands in /usr/bin directory)

Usage: busybox [function] [arguments]...
or: function [arguments]...

BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as.


Currently defined functions:
[, [[, arp, ash, awk, basename, brctl, bunzip2, bzcat, bzip2, cat,
chattr, chgrp, chmod, chown, chroot, clear, cmp, cp, crond, cut, date,
dd, depmod, df, diff, dirname, dmesg, dnsdomainname, du, echo, egrep,
eject, env, expr, false, fdflush, fdisk, fgrep, fsck, fuser, getty,
grep, gunzip, gzip, halt, head, hexdump, hostname, hush, ifconfig,
ifdown, ifplugd, ifup, init, insmod, ionice, ip, ipaddr, iplink,
iproute, iprule, iptunnel, kill, killall, less, ln, login, losetup, ls,
lsattr, lsmod, lspci, lsusb, lzop, lzopcat, md5sum, mkdir, mkdosfs,
mke2fs, mkfifo, mkfs.ext2, mkfs.vfat, mknod, modprobe, more, mount, mv,
nc, netstat, nice, nmeter, nohup, nslookup, od, passwd, pidof, ping,
ping6, pivot_root, poweroff, printf, ps, pwd, rdev, readlink, realpath,
reboot, renice, reset, rm, rmdir, rmmod, route, sed, seq, sh, sha1sum,
sleep, sort, split, stat, strings, stty, su, sulogin, sum, swapoff,
swapon, sync, sysctl, tail, tar, taskset, tee, telnet, telnetd, test,
time, top, touch, tr, traceroute, traceroute6, true, tty, tune2fs,
udhcpc, umount, uname, uniq, unlzop, uptime, usleep, vi, wc, wget,
which, who, whoami, xargs, yes, zcat, zcip
Re: Pogoplug pink system command reduced
September 06, 2011 12:47PM
Not sure what's going on here, but i can add the following that (might) help:

I purchased two PogoPinks back in August. I hacked one using Jeff's script (with no issues) and the other one is still running as a 'real' pogoplug (my wife wants to listen to her music from anywhere).

I'm ssh'd into my (factory) PogoPink right now, and here's what i get when i 'ls' the /usr/bin directory:
-bash-3.2# cd /usr/bin
-bash-3.2# ls
[               expand          nohup           taskset
[[              expr            nslookup        tcpsvd
ar              fdformat        od              tee
arping          find            openvt          telnet
awk             flash_eraseall  passwd          test
basename        fold            patch           tftp
bunzip2         free            printf          time
bzcat           ftpget          pscan           top
cal             ftpput          readahead       tr
chpst           fuser           readlink        traceroute
chrt            head            realpath        tty
chvt            hexdump         renice          ttysize
cksum           hostid          reset           udpsvd
clear           id              resize          unexpand
cmp             install         rpm2cpio        uniq
comm            ipcrm           runsv           unix2dos
crontab         ipcs            runsvdir        unlzma
cryptpw         killall         rx              unzip
cut             killall5        scp             uptime
dc              last            seq             uudecode
deallocvt       length          setkeycodes     uuencode
diff            less            setsid          vlock
dirname         loadfont        setuidgid       wc
dos2unix        logger          sha1sum         wget
dropbearkey     logname         softlimit       which
du              lzmacat         sort            who
dumpleases      md5sum          split           whoami
eject           mesg            strings         xargs
env             mkfifo          sum             yes
envdir          nandwrite       sv
envuidgid       nc              svlogd
ether-wake      nmeter          tail

Also,
-bash-3.2# ar
BusyBox v1.7.0 (2008-02-26 19:25:17 IST) multi-call binary

Usage: ar [-o] [-v] [-p] [-t] [-x] ARCHIVE FILES

Extract or list FILES from an ar archive

Options:
        -o      Preserve original dates
        -p      Extract to stdout
        -t      List
        -x      Extract
        -v      Verbose

And:

-bash-3.2# uname -a
Linux Pogoplug 2.6.22.18 #44 Mon Aug 10 12:57:36 PDT 2009 armv5tejl unknown

What does yours say when you do any of the above?
Re: Pogoplug pink system command reduced
September 06, 2011 04:47PM
Thanks for your answer.
Here is the first one:
/usr/bin # ls
[            dirname      killall      readlink     taskset      uptime
[[           dropbearkey  less         realpath     tee          wc
awk          du           lzopcat      renice       telnet       wget
basename     eject        md5sum       reset        test         which
bunzip2      env          mkfifo       scp          time         who
bzcat        expr         nc           seq          top          whoami
bzip2        fuser        nmeter       sha1sum      tr           xargs
clear        gdbserver    nohup        sort         traceroute   yes
cmp          head         nslookup     split        traceroute6
cut          hexdump      od           strings      tty
dbclient     ifplugd      passwd       sum          uniq
diff         iperf        printf       tail         unlzop
/usr/bin #
And here is the second :
/usr/bin # uname -a
Linux Pogoplug 2.6.31.6_SMP_820 #96 SMP Tue Feb 8 12:08:54 PST 2011 armv6l GNU/Linux
/usr/bin #

I found on the net this address :
http://www.nslu2-linux.org/wiki/Main/PlugComputers
indicating interesting information considering busybox
/usr/bin # busybox |more
BusyBox v1.16.1 (2010-12-01 15:27:23 PST) multi-call binary.
Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: function [arguments]...

        BusyBox is a multi-call binary that combines many common Unix
        utilities into a single executable.  Most people will create a
        link to busybox for each function they wish to use and BusyBox
        will act like whatever it was invoked as.

Currently defined functions:
        [, [[, arp, ash, awk, basename, brctl, bunzip2, bzcat, bzip2, cat,
        chattr, chgrp, chmod, chown, chroot, clear, cmp, cp, crond, cut, date,
        dd, depmod, df, diff, dirname, dmesg, dnsdomainname, du, echo, egrep,
        eject, env, expr, false, fdflush, fdisk, fgrep, fsck, fuser, getty,
        grep, gunzip, gzip, halt, head, hexdump, hostname, hush, ifconfig,
        ifdown, ifplugd, ifup, init, insmod, ionice, ip, ipaddr, iplink,
        iproute, iprule, iptunnel, kill, killall, less, ln, login, losetup, ls,
        lsattr, lsmod, lspci, lsusb, lzop, lzopcat, md5sum, mkdir, mkdosfs,
        mke2fs, mkfifo, mkfs.ext2, mkfs.vfat, mknod, modprobe, more, mount, mv,
        nc, netstat, nice, nmeter, nohup, nslookup, od, passwd, pidof, ping,
        ping6, pivot_root, poweroff, printf, ps, pwd, rdev, readlink, realpath,
        reboot, renice, reset, rm, rmdir, rmmod, route, sed, seq, sh, sha1sum,
The version of busybox may indicate that the firmware pre-loaded on my PogoPlug Pink is a "pro" one ...
so jeff's code could not works on this machine because of lacks of pre-defined commands in busybox software like "ar".

Any idea ?
Re: Pogoplug pink system command reduced
September 07, 2011 12:19PM
Okay, so this is getting a bit beyond me knowing what I'm talking about (only been using linux for around one year).

You have a newer version of the kernel, and this is probably where the problem is coming in.

Additionally, it would appear that you are on a ARMv6 rather than an ARMv5 processor:

mine:
-bash-3.2# uname -a
Linux Pogoplug 2.6.22.18 #44 Mon Aug 10 12:57:36 PDT 2009 armv5tejl unknown

yours:
/usr/bin # uname -a
Linux Pogoplug 2.6.31.6_SMP_820 #96 SMP Tue Feb 8 12:08:54 PST 2011 armv6l GNU/Linux
/usr/bin #

What version of the pogo do you have again? is there a model number on it?
Re: Pogoplug pink system command reduced
September 07, 2011 03:21PM
I think it's most likely one of the new pink Pogoplugs which are ARMv6

POGO-B03 - New Pink
POGO-B04 - New Pink

According to the Overview on Arch Linux ARM site:
http://archlinuxarm.org/platforms/armv6/pogoplug-provideov3

If it's one of these new pink Pogoplug, don't install Jeff's Uboot, it's for these "normal" pink Pogoplug (ARMv5):

POGO-E02
POGO-E02G

See the description here:
http://archlinuxarm.org/platforms/armv5/pogoplug-v2-pinkgray



Edited 1 time(s). Last edit at 09/07/2011 03:27PM by bodhi.
Re: Pogoplug pink system command reduced
September 07, 2011 03:36PM
pogoplug CLASSIC
Model:POGO-B04
Re: Pogoplug pink system command reduced
September 08, 2011 07:29AM
According to the Overview on Arch Linux ARM site:
http://archlinuxarm.org/platforms/armv6/pogoplug-provideov3

So it says that I'll never get Debian on this Pogoplug ...

The problem is that all new pogoplugs are deliverd with tihs kernel !

Solution: A) Change pogoplug to another device (which one ?)
B) Try to install Archilinuxarm ...

Any advice ?
Re: Pogoplug pink system command reduced
September 08, 2011 11:29AM
You can get debian on there, but its going to take some futzing around. First, you install Arch. It copies it's custom oxnas kernel into /dev/mtd1. (Two copies of it for redudnancy I presume.) From a running Arch install, you can install Debian onto another stick. You're going to need to copy /lib/modules/2.6.31.6_SMP_820 from your Arch rootfs to where you have Debian. If all goes well, that will boot. But it's not going to be perfect because you've shoehorned a pre-compiled custom kernel with modules into Debian. Ideally, you should get the oxnas kernel source tree so you can compile it and install it under Debian.

** edit **
I just noticed this in the uboot forum:
You would need to follow a similar procedure. But I would just leave Arch.

http://forum.doozan.com/read.php?3,5728,5799#msg-5799



Edited 1 time(s). Last edit at 09/08/2011 11:31AM by kraqh3d.
Re: Pogoplug pink system command reduced
September 08, 2011 04:34PM
kraqh3d Wrote:
-------------------------------------------------------
> ... But it's not going to be
> perfect because you've shoehorned a pre-compiled
> custom kernel with modules into Debian. Ideally,
> you should get the oxnas kernel source tree so you
> can compile it and install it under Debian.
...
--------------------------------------------------------

kraqh3d, I think perhaps some of the oxnas source are propriertaty? that's why nobody has done it? beside that, please explain further about the disadvantage of "squeezing" pre-compiled modules into Debian, is that simply because we'll have to follow 2 different branches of releases to update the modded Debian? is there any other pitfalls?
Thanks!



Edited 2 time(s). Last edit at 09/08/2011 04:36PM by bodhi.
Re: Pogoplug pink system command reduced
September 08, 2011 07:50PM
You could potentially run into some dependency checking issues later when adding or upgrading debian packages since the kernel and it's modules are not known by the package manager. Admittedly this is rare as there usually aren't kernel dependencies so it should work. And since the kernel ABI to user land ABI is pretty stable, I suspect it would only be an issue if you tried to install a debian binary for a "nonstandard" kernel module (ie not found in the mainline kernel tree).

To be absolutely safe, just run Arch. I didn't look into the Arch oxnas rootfs tarball but I presume it has a pacman.conf so you can install stuff from the Arch pacman repositories.



Edited 1 time(s). Last edit at 09/09/2011 05:40AM by kraqh3d.
Re: Pogoplug pink system command reduced
September 08, 2011 08:08PM
Glad some folks came around that know more about this than I do!

Just for reference, the info I posted above is for my E02.

Good luck!
Re: Pogoplug pink system command reduced
September 09, 2011 07:12AM
kraqh3d Wrote:
-------------------------------------------------------
> You could potentially run into some dependency
> checking issues later when adding or upgrading
> debian packages since the kernel and it's modules
> are not known by the package manager. Admittedly
> this is rare as there usually aren't kernel
> dependencies so it should work. And since the
> kernel ABI to user land ABI is pretty stable, I
> suspect it would only be an issue if you tried to
> install a debian binary for a "nonstandard" kernel
> module (ie not found in the mainline kernel tree).
>
>
> To be absolutely safe, just run Arch. I didn't
> look into the Arch oxnas rootfs tarball but I
> presume it has a pacman.conf so you can install
> stuff from the Arch pacman repositories.

I don't think that you can run in any problems when running Debian with a non-Debian kernel. The simplest solution would be to get the source (even if it has some proprietary stuff), compile it and create a personal deb kernel package. Install it, use mkimage and you're done. That's how I run my GoFlex Net with a custom vanilla kernel (without Debian patches). Are the sources for that oxnas kernel available at all?
Re: Pogoplug pink system command reduced
September 09, 2011 08:06AM
Yeah I agree. Replacing the kernel should be pretty safe. The only issue I can think of is if you try to load some non-mainline binary kernel module that you installed through apt, as it'll be built against the standard debian kernel. While the kernel's user land ABI is very stable, the kernel's module ABI is always subject to change. But I don't think anything would break. I'd suspect the module will just fail to load when try to modprobe it.

An example would be the native zfs filesystem driver. It will never make it into the mainline kernel because of licensing issues. But if it were to make it into the debian repo as a binary kernel module, it may not work with your custom kernel. And the keyword is "may." It all depends on if the module ABI has changed between the debian stock kernel and your custom one or not. (And even if the ABI remained the same, it still may not work as the module could do some compatibilty checking on its own and refuse to load because the kernel version is too new or something like that.)

This is why the better solution is to build the kernel from scratch, and preferably installing it the debian way by making it into a pkg. This way, you have the option of building that module as well. Some modules seem to require the entire source tree, while others just seem to need the headers.
Re: Pogoplug pink system command reduced
September 09, 2011 01:25PM
kraqh3d Wrote:
-------------------------------------------------------
> This is why the better solution is to build the
> kernel from scratch, and preferably installing it
> the debian way by making it into a pkg. This way,
> you have the option of building that module as
> well. Some modules seem to require the entire
> source tree, while others just seem to need the
> headers.

I completely agree with that. By the way, a few days ago I indeed faced the problem you've described. It happened when I decided to put iSCSI target (IET) on the GoFlex Net. Even though I added the kernel headers, make always complained about some ridiculous errors and failed. The solution was to cross-compile the module on my X86 Ubuntu box. Luckily, I still had the kernel source for my custom kernel with everything compiled and ready such that I finally got my IET modules and pushed them to GoFlex via depmod.

But apart from that a non-Debian kernel runs surprisingly well :)
Re: Pogoplug pink system command reduced
December 27, 2011 10:38PM
I had a question in this regard, especially about kraqh3d and Vlad's comments on installing modules. I have installed Varkey's Debian rootfs with the ALARM (Arch Linux) kernel on a Pogoplug Pro. It booted fine and is now running Debian. However, if possible I'd like to use Bluetooth. Unfortunately the ALARM module tree does not include the bluetooth modules.

So, in this case, what should I do? Should I attempt to install it from Debian, as kraqh3d pointed out that mainline kernel modules should be ok (this would be mainline)? In this case, though, which kernel image would one install?

Or should I try to get the oxnas kernel tree and compile it? That seems a more difficult task.

Apologies, rather confused :).
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: