I have an IP camera with the armv5tejl processor. My aim is to send videos from camera to GoogleDrive. I downloaded gdrive but it can be run only with bash. Is it possible to run gdrive somehow without bash?

# uname -m

#ls -l $SHELL
lrwxrwxrwx    1 root     root             7 Jul 11  2014 /bin/sh -> busybox

# ./gdrive-linux-arm about
Illegal instruction

No it isn't possible. But I have written gdrive especially for xiaomi smart ip camera to send videos to google drive. It works good. 1 MB of free RAM is totally enough. You can take it here: https://github.com/porunov/xiaomi_gdrive

closed as unclear what you're asking by Jakuje, sam, MelBurslan, Raphael Ahrens, Rui F Ribeiro Jul 7 '16 at 12:11

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • # echo $SHELL /bin/sh – Alexandr Jul 6 '16 at 15:30
  • 2
    Why do you think bash is required? I took a look at the documentation and saw no mention of bash, nor did any of the source files (other than some internal build and test tools) reference it. – drewbenn Jul 6 '16 at 15:53
  • 1
    You probably want an arm version, not 386, if you're running on an arm processor. – drewbenn Jul 6 '16 at 15:57
  • 1
    There’s not enough information here to answer your question. You should edit it to include details such as which Unix-like system you are running (uname -a), the details other commentators have mentioned, and which shell you’re using, ls -l $SHELL (presuming you’re not using a shell other than your login shell). – Anthony Geoghegan Jul 6 '16 at 15:58
  • 1
    FYI @Alexandr this is a good example of an XY Problem. Next time, include more details about what you tried and what didn't work, and that will help us find the solution sooner. – drewbenn Jul 6 '16 at 16:08

Your IP camera is embedded system. This means that it have so little resources available that it cannot even store "fat" bash binary on itself.

It's probably has too little RAM too to store it on memory or the operating system inside it is locked down so you will not be able to store bash binary permanently on it.

You need to find out how to receive streams from that device and send them (optionally with converting to save bandwidth) from your main computer or server.

More, you should check your binaries are compatible. You cannot just run i386 binary on arm machine unless there is some kind of emulator is there. file command is helpful there.

  • I have found streams, also I ran a script which uploads videos on a remote ftp server. But the problem is that I need somehow send these videos to the google drive. It's a pity that google drive doesn't have ftp access. – Alexandr Jul 6 '16 at 15:53
  • 1
    It's not clear where you do not have bash installed. On the camera is most likely. On your computer - why don't you have bash? – user140866 Jul 6 '16 at 15:56
  • I talk only about camera. Of Course I have the bash on my laptop. – Alexandr Jul 6 '16 at 15:59
  • So summary is: your gdrive-linux-386 is i386 executable which will run on your laptop but will not run on your camera, because camera has arm cpu. And even if there was a gdrive-linux-arm it probably will not run correctly on camera, unless it's statically linked and has low memory requirements, which are both very unlikely. So you still have to find out how to obtain a raw stream from camera and proxy it to google drive from laptop. – user140866 Jul 6 '16 at 16:01
  • 2
    @siblynx actually the pre-compiled versions are statically linked :) He just needs to get gdrive-linux-arm, like you said. – drewbenn Jul 6 '16 at 16:04

Not the answer you're looking for? Browse other questions tagged or ask your own question.