Optware was originally developed as a distribution mechanism for software for the Open Source Linux project for the Linksys NSLU2 (a small low cost network storage device). That consumer storage device ran on Linux, and the community opened it up, but they needed a lightweight distribution mechanism for their lightweight devices.
Since 2004 Optware has been adopted by a variety of Linux communities and device developers including the webOS community working on the Palm Pre and Pixi, and developers for devices as diverse as Asus WL-500g,WL-HDD, WL-500gx, WL-500gP routers, the Synology DS-101 and DS-101g+ NAS devices.
At its core, Optware is a package manager to allow you to easly install and uninstall cross-compiled linux applications on your device over the internet. At this time, optware supports the automatic download and installation of over 1500 programs. (See the list at the end of the wiki article.)
Why should I use Optware?
Like the original slug, android devices lack a distribution mechanism to install Linux/command line tools programs and utilities. Many in the Android community who want or need to do command line processing on their device use a chroot of some sort (Debian seems popular) to get their distribution and package management tools. With Optware, it becomes possible to simply run whatever utility or program you want on the native underlying Linux.
Additionally, Optware For Android installs openSSH making it possible to access your Nook from any PC with SSH capability, and sets up an unprivileged username/password login system for the device at the command line. All in all then, since it can be installed with a single script, since it's lightweight, and since it's designed for small and embedded devices, Optware is a perfect fit for the Android community.
Optware for Nook is the first Optware for Android release by the Novaports team and is their gift to the Android community members who have helped them so much with information on Android devices.
What does it do?
The Optware bootstrap installed the IPKG package manager. It installs the optware Busybox. It installs openSSH and makes the ssh demon persistent. It creates an unprivileged user with a username and password you choose.
See Installation instructions and details at the Optware for Android page at Nookdevs.com
For completeness of licensing compliance, the source code for all optware package can be found at the following locations:
1) build scripts at svn.nslu2-linux.org in the /svnroot/optware/ area
2) tarballs at sources.nslu2-linux.org in the /sources area (this is a *large* directory)
To contribute code to Optware, see www . nslu2-linux . org in the /wiki/Optware/AddAPackageToOptware area
-- Rod Whitby
-- Original NSLU2-Linux Project Lead and Optware Architect
This works beautifully! Thank you!
Gonna try this and see if i can get samba to work.. a SMB mount over wifi would be awsome...
Many thanks!
I don't suppose there's a quick and easy way to completely remove optware?... not looking forward to culling through scripts and manually un-doing it all.....
adduser: not found
When it gets to the part in the install script to add the username of the unprivileged user, I enter a name, then it says: adduser: not found.
If it helps, I am using Rooted Stock 1.1.
Anyone get Optware to install on CM7 (newer nightly)
I am running CM7 #103 and would love to have optware installed.
But I get Fail if I try to use the method from Nookdevs
Tonight when I have more time I will look at the errors and see if I can tell what is up.
It looked like partially due to missing dir's for one (/tmp)
madrascafe said:
Gonna try this and see if i can get samba to work.. a SMB mount over wifi would be awsome...
Click to expand...
Click to collapse
The market has your answer and it's free:
https://market.android.com/details?id=com.funkyfresh.samba&feature=search_result
Am I the only one that wants Optware on CM7?
It goes fine on a manualnootered 1.2.0 NC But I prefer CM7 (And use the nightlies)
I would love to get this going on my NC as well. Running CM7 N121 w/ 6/30/2011 OC kernel. Was able to manually work past the tmp directory problem you mentioned, but I can't seem to execute the ipkg binary or installed. I've verified it indeed exists in the path I'm trying to execute it from, it has +x perms for user/ group/ other, but it always gives the error below:
/data/opt/bin/ipkg: not found
I've tried messing with bin directory and ipkg binary ownership, but no dice. If anything it should at least find it even if permissions aren't correct.
Looks like the contents of the binary reference ELF libraries which sounds like an issue attempting to execute in an Android environment. Going to see if I can chroot an environment that will work for it.
Sent from my NookColor using Tapatalk
This is happening because it's looking for /lib/ld-linux.so.3, and not finding it. I worked around by
ln -s /data/opt/lib/ld-linux.so.3 /lib/ld-linux.so.3
I also had to make these links:
ln -s /data/opt /opt
ln -s /data/tmp /tmp
And then set this:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lib
export PATH=$PATH:/opt/bin/:/opt/sbin
in my bash profile to get things to start working.
One problem is my symlinks seem to get erased every reboot. I worked around by re-creating them in my bash profile, but I wish I knew how to make them permanent. This may be a ROM specific thing - this was written for a rooted stock nook, and I'm on an Epic running SFR.
I do not have a ld-linux.so.3 file on my NC w/ CM7 125
I have many other errors that show up:
Downloading the latest ipkg-opt package from the Optware package feed:
Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
wget: can't open 'ipkg-opt_0.99.163-10_arm.ipk': File exists
(NOTE the above file 'ipkg-opt_0.99.163-10_arm.ipk' does not exist
(on my NC - from a find / -name ipkg-opt_0.99.163-10_arm.ipk)
Updating the Optware package database:
ERROR: Failed to update the local Optware package database
Updating the Optware package database:
/data/optware-bootstrap-0.0.1.shar: ipkg-opt: not found
ERROR: Failed to update the local Optware package database
Any ideas?
The actual file it needs is /data/opt/lib/ld-linux.so.3 - you need to create a symlink in /lib in order to see it. But I think that file comes from the optware installer - if the installer is failing, you won't have it there either. It sounds like you may have bits of a previous install that failed, and it's preventing the install from running properly. Try looking at the log in /data/tmp for more info. After that, try rm -rf /data/tmp/* to clean up the old install and trying again.
Thank You for any pointers.
I deleted everything in /data/tmp first last attempt - like you suggested.
Same result
I have it down to only this error now when I run it (optware-bootstrap-0.0.1.shar):
Updating the Optware package database:
optware-bootstrap-0.0.1.shar: ipkg-opt: not found
ERROR: Failed to update the local Optware package database
ipkg-opt should be in /data/opt/bin. Check to see if it's there... if not, something went wrong in one of the previous steps - probably somewhere around "Downloading the latest ipkg-opt package from the Optware package feed". See if wget is actually downloading anything, where it's putting it, and what it's doing with it afterwards.
If it is there, try running it manually. If you see /data/opt/bin/ipkg or /data/opt/bin/ipkg-opt but it claims it's not there when you run it, it may be a library linking error. Mine was looking for /lib/ld-linux.so.3 but it was actually installed at /data/opt/lib/ld-linux.so.3. mount -o remount,rw followed by ln -s /data/opt/lib/ld-linux.so.3 /lib/ld-linux.so.3 fixed that. I also had to run
ln -s /data/opt /opt
ln -s /data/tmp /tmp
before things started working.
By the way:
ntfsprogs - NTFS filesystem libraries and utilities
Could that be of any use? At the moment, it's not possible to mount NTFS storage on the NC
i would love to know how you guys get to this point even. When i try to install the very fist line of the script is an error and then nothing at all happens .... something about not finding busybox or something of that nature.
So you guys are getting WAY farther than I've been able to.
Tkx Tonygoes.
It is there in /data/opt/bin but it reports /data/opt/bin/ipkg: not found
I cannot find a ld-linux.so.3 on my NC at all.
I did the other links et al fro your comments also
obsid:
Try post 12 above:
and I had some other suggestions from someone:
might try thses FIRST the script seems to do it but may not actually get it done.
mount -o remount,rw / /
mount -o remount,rw /dev/block/mmcblk0p5 /system
you should also if tried before do this: rm -rf /data/tmp/
then do the items in post #12 above
NOTE for me the ln -s to ld-linux.so.3 does not work as I do not have that file on my system
Related
I'm sorry it took so long, I got lots of stuff to deal with. Good things are worth waiting for (i heard)
First off: You are responsible for any of your actions! Changes that are needed to boot Ubuntu on your folio will void your warranty!
Special Thanks goes to DerArtem for posting his Kernels, Weeds2000 for eMail support, topogigi for wifi hacking and last but not least the Ubuntu-Touch Team on IRC that made it possible for me to tweak the touchscreen driver.
However, the system you are about to create is not fully functional, there are still things missing (a working sound driver for example). Its nice to play with it anyway
Heres a quick walk-through:
We will flash a kernel to the toshiba folio tablet which makes it possible to boot from an sdcard or USB-stick (You have to choose one, we need at least 2GB, I'd recommend 4GB so you can install fancy stuff like OpenOffice etc.).
We will then create a root filesystem with rootstock, which will hold our Ubuntu system (similar to your hard drive-Ubuntu).
Finally, we have to tweak that filesystem and change passwords, copy wifi driver etc.
Then we're able to boot a beautiful Ubuntu.
Things you will need:
- A Computer running Linux (Debian / Ubuntu would be great. If you're not running Linux on your computer, running it on the folio would make absolutely no sense. Please don't ask, I don't know how to install it in Windows.)
- The files i added to this post
- A SD-Card, 2-4 GB should be fine.
- optional: A second SD-card, 128MB would be enough (for flashing)
- A USB hub (If you want to boot from USB AND use a keyboard.
- Some time... =)
The first thing you should do is flash one of the update.zip files; choose update-sdmmc.zip (this will boot your folio from sdcard) or update-usb.zip (this will boot from a usb pen drive), open it and unpack the content to a sdcard (This has to be a SDcard, we're gonna flash our device from there.)
Backup all your data on your folio (I'm serious! It'll be gone!) and turn it off.
Put the SDcard in its slot and turn the folio back on. Press + hold both power and volume up.
Follow instructions to do a system update (If you've never done this before you shouldn't start now =) )
When it reboots, your folio will show some funny black and white linux text stuff and hang somewhere. Congratulations! You just bricked your tablet. Now lets see how we can fix it... Turn it off (Keep power pressed for about 5 seconds) and take out the sdcard, put it in your PC.
It's getting messy now, so grab a beer and let's go:
Open a Terminal on your linux computer.
Code:
#echo "Hello world!"
If your console says "Hello World" you got it. Awesome! =)
Code:
#sudo apt-get install rootstock gparted
This will install rootstock, the tool we're gonna need to create our filesystem, as well as gparted, a tool for partitioning our flash drive. You can also install rootstock-gtk, the graphical version. Try it if you like:
Code:
#sudo apt-get install rootstock-gtk
I heard that ubuntu-netbook won't work because there are drivers missing, would somebody try that and report please?
If your beer is already empty when this is done, you need a faster computer. Tell your wife the guys at xda-developers told you so
Back to the terminal:
Code:
#sudo rootstock -f MyCoolHostName -l myCoolUserName -p myCoolPassword --seed xubuntu-desktop -i 2G --notarball
This will create our filesystem with a user called "myCoolUserName" and (theoretically) his password "myCoolPassword" and install a basic xubuntu-desktop. I had to change the password manually because it didn't work this way... We'll do that later.
Rootstock will download lots of packages (You could also set it up with "--seed ubuntu-desktop", then youll download even more packages or "--seed ubuntu-minimal" or kubuntu... I still didnt find a list of seeds online :-/
The creating will take quite some time, get another beer.
When this is done, you'll get a file like this : "qemu-armel-201104112120.img". We will now mount this image: (make sure the directory /mnt/ does exist and is empty:
Code:
#ls -la /mnt )
Code:
#sudo su
(its simpler to be root for now)
Code:
#mount -o loop qemu-armel-201104112120.img /mnt/
(You are aware that your filename is different, are you? Try this:
Code:
# mount -o loop qemu-armel-*TAB*
and your terminal will automatically fill in your filename. Awesome linux, huh? =)
)
Code:
#cd /mnt/etc/
#mv fstab fstab.bak
#echo "proc /proc proc defaults 0 0" > fstab
#echo "dev /dev tmpfs rw 0 0" >> fstab
Note that the first time we create a file called fstab (echo asdf > fstab), then we add one line to this file (echo asdfasdf >> fstab)
Now we need to copy our wifi-driver over. Remember I told you to write down the directory you put them in? =)
Code:
#cp /home/YourUserName/Desktop/FolioStuff/firmware /mnt/lib/firmware
We will now do something stupid: We chroot into our arm-based system from an intel-system. But since we're only changing passwords, we should be OK.
Code:
#cd /
#chroot /mnt/
#passwd myCoolUserName
#passwd
#exit
That's it, we're out of the chroot.
It's now time to prepare the SDcard (The steps are the same for a USB Flash drive, I think you'll figure them out.)
Find out how your SDcard can be accessed (You should still be root):
Code:
# fdisk -l
In my card reader, it's "/dev/mmcblk0", it could also be "/dev/sdb1" in your computer.
Now there are two possibilities:
1. You know what youre doing. Then it's easy: You wipe the only partition (or, if there are more than one, the first partition) on your sdcard and format it with ext3:
Code:
#mkfs.ext3 /dev/mmcblk0p1
Note: The device is called /dev/mmcblk0, the partition itself /dev/mmcblk0p1 (Partition 1)
2. You are not sure about this. No problem, start gparted: (as root!)
Code:
#gparted
In the upper right corner, select your flash drive, delete all partitions and create one formatted with ext3. Close gparted.
Mount your freshly created partition somewhere (i chose /mnt2/):
Code:
#mkdir /mnt2/
Code:
#mount /dev/mmcblk0p1 /mnt2
We can now copy our filesystem over. Make sure you use exactly the same flags (rfp for recursive, force, preserve (attributes))
Code:
#cp -rfp /mnt/* /mnt2/
OK, that could work. Unmount the sdcard:
Code:
#umount /mnt2/
Put it in your folio and cross your fingers.
Wifi drivers will be up soon...
It's recommend to add build-essentials to your rootstock image too..
Because then you can easily build the wireless lan drivers on your devices..
Maybe I'll post a howto this afternoon!
Is this Ubuntu really usable (for daily work) with the folio 100 (touch, response speed, ecc.)?
Thanks.
Yup, it's usable for everyday work. It's quite fast on the Folio 100, I've been pretty impressed when I tested it a few weeks ago.
Thanks ph84
It seems most difficult than expected but, great job !
Only i have 1 question, bricking the tablet sounds dangerous... is possible break out the tablet and get a rock?
Thanksss!!!!!
if ubuntu is installed on sd, does that mean that we can dual boot foliomod from nand and ubuntu from sd/usb?
Hm... I'm using Ubuntu 11.04 and I'm getting this error at the end of the rootfs creation :
E: Sub-process /usr/bin/dpkg returned an error code (1)
E: Second stage build in chroot failed !
E: Please see the log to see what went wrong.
I: Cleaning up...
.....
I: Umounting temporary Image
umount2: Dispositivo o risorsa occupata
umount: /tmp/tmp.zaZ1j1Tgt6/tmpmount/proc: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
umount2: Dispositivo o risorsa occupata
Click to expand...
Click to collapse
Do you have any idea where I can find the log?
And this procedure will build in the tablet a dual boot? Or dualboot is another procedure?
what is the *.rar????
No it's for singleboot only...
You can only start Ubuntu installed on SD-Card/USB-Stick with this procedure...
I don't know wether the boot-partition is locked when you are booting ubuntu/android..
If not it should be possible to build some applications to flash the boot-partition on the running system to change from ubuntu to android
When I do the rootstock step,I got this error!!!Please help!!!
I: Base system installed successfully.
I: First stage install done
I: Using Chroot for installer
Adding 'local diversion of /usr/sbin/invoke-rc.d to /usr/sbin/invoke-rc.d.rootstock'
Generating locales...
en_GB.UTF-8... done
Generation complete.
Generating locales...
en_US.UTF-8... done
Generation complete.
/bin/installer: line 53: syntax error near unexpected token `+'
E: Second stage build in chroot failed !
E: Please see the log to see what went wrong.
I: Cleaning up...
.....
I: Umounting temporary Image
I: A logfile was saved as //rootstock-201104140706.log
I: Done
Click to expand...
Click to collapse
Could you upload an *.img for us in this forum?
or a databank,etc?
mhmm it always hangs in the xulrunner configuration.. bahh someone know a solution for this? or does i realy have to chroot the rootfst and install everything manualy =(? Cant find any solution on google for this bug =/
sony_tornado said:
what is the *.rar????
Click to expand...
Click to collapse
Nvm, I was talking crap...
schnudergof said:
mhmm it always hangs in the xulrunner configuration.. bahh someone know a solution for this? or does i realy have to chroot the rootfst and install everything manualy =(? Cant find any solution on google for this bug =/
Click to expand...
Click to collapse
Just try rootstock without the parameters on --seed..
Maybe it will work..
You wont have a Desktop Enviroment like Gnome or something but you wont need that for installing the wireless drivers...
And after installing wireless drivers you can install ubuntu-desktop or something with apt-get!
Ok, I have been looking at rootstock, and if you install rootstock-gtk and than click on tasksel there is a whole list of seeds to chose from. I Think im going to try build the netbook build.
On a side note:
We will now do something stupid: We chroot into our arm-based system from an intel-system. But since we're only changing passwords, we should be OK
Click to expand...
Click to collapse
with chroot your only changing the root of your file system, your not running anything from there.
But its its in no way a complaint to your awesome guide! Thanks and keep up the good work!
shidima_101 said:
with chroot your only changing the root of your file system, your not running anything from there.
Click to expand...
Click to collapse
Thats right but when you change your root shell to the rootstock-fs you can also use sudo apt-get update/install and install it into the rootfs!
ph84 said:
Meanwhile, open another terminal. (This is linux! We're gonna multitask since our computer is capable of handling that!) Go to where you stored the attached files, for example
Code:
#cd /home/YourUserName/Desktop/FolioStuff
and unpack them:
Code:
#rar x *.rar
Click to expand...
Click to collapse
Where/what is the "attached files"?
Thanks
Just go to the first page, press STRG+F and type attached into the search window...
I hope you will find the attached files.. Else you dont have to try installing ubuntu on your folio >_<
°EraZoR° said:
Just go to the first page, press STRG+F and type attached into the search window...
I hope you will find the attached files.. Else you dont have to try installing ubuntu on your folio >_<
Click to expand...
Click to collapse
The files I found are only *.zip for update bootloader. Where is *.rar file?
Thanks
Hello guys,
I've compiled the CIFS module for our X10 (stock kernel version for 2.3.3, that is 2.6.29-00054-g5f01537 ).
Introduction
CIFS is for allowing to mount SAMBA/CIFS shares from Windows (mostly), so that they appear like a folder on the phone.
Specifically, you can watch movies on your X10 from a share, without first copying them to the phone. In fact you can mount any SAMBA share and do all operations with it.
There are two modules that do the job: cifs.ko (which is the main one) as well as nls_utf8.ko which just provides UTF-8 support for file/folder names within the shares.
Installation
Once you have unpacked the zip and extracted the two modules into the folder of your choice, the commands are these:
Code:
adb push "nls_utf8.ko" /sdcard/nls_utf8.ko
adb push "cifs.ko" /sdcard/cifs.ko
adb shell
su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system/lib/modules
cp /sdcard/nls_utf8.ko .
cp /sdcard/cifs.ko .
insmod nls_utf8.ko
insmod cifs.ko
mkdir /sdcard/cifs
mount -o username=<yours>,password=<yours>,iocharset=utf8 -t cifs //<serverip>/<sharename> /sdcard/cifs
Now you can cd to your /sdcard/cifs and see the files shared there.
Observations
1. nls_utf8.ko is not mandatory and if your files don't have UTF-8 characters and only ascii, you can skip it IF you remove the isocharset=utf8 from the mount command above.
2. Music will stutter with all players I've tried. found an opinion that might be android lowlevel subsystem for reading mp3 files, and that they don't buffer enough - and given the latency over WIFI, this will create pauses / stuttering in the music. However, you can still copy the audio files, etc.
3. Movie playing works! I've tried RockPlayer for few minutes and didn't have an issue (seems it handles buffering very well) since it is software and thus they don't rely on some Android codec / etc.
4. Skip works! Again in Rock Player, you can skip in the movie and it takes a bit to skip there, but it does.
5. umount usually fails, since I assume, Android apps don't really exit and don't really free the resources. Once a file open, it doesn't let me un-mount saying that the resource / device is busy.
Download
Use it at your own risk!
cifs.zip
Chefs can bundle the files within the ROMs they offer - but please add this link into descriptions so that people can discuss issues they might encounter.
Cool.. Will try..
Sent from my X10i using XDA Premium App
nice! i am gonna try this!
New toy I'll give this a go tonight and report back. Thanks!
Hi viulian,
Thanks for the module. Would you mind if I include it in the hotfix for my rom?
Cheers,
z
zdzihu said:
Hi viulian,
Thanks for the module. Would you mind if I include it in the hotfix for my rom?
Cheers,
z
Click to expand...
Click to collapse
Absolutely no problem Z please do.
This module definetly requires an app to manage CIFS, mounting them with selected user/pass/path.
You can try cifs manager, its good.
Btw i thought the new sources weren't released yet.
I'm using old 2.1 sources and I could build these modules using Sony's blog post about how to compile kernels (with their CodeSourcery compiler) and a bit of Google foo.
Btw, I have another one ready, the cpufreq_interactive one which I'm creating a new thread now.
Later edit:
Although initially I read posts complaining about Sony's decision to keep the old 2.1 kernel (2.6.29) instead of the recommended (2.6.32) for GingerBread, it turned out that it was actually a smart move
Basically, the cifs module at least was much more difficult to port, due to the slow_work.ko module that needed to be compiled as well and inserted before.
viulian said:
Hello guys,
I've compiled the CIFS module for our X10 (stock kernel version for 2.3.3, that is 2.6.29-00054-g5f01537 ).
Introduction
CIFS is for allowing to mount SAMBA/CIFS shares from Windows (mostly), so that they appear like a folder on the phone.
Specifically, you can watch movies on your X10 from a share, without first copying them to the phone. In fact you can mount any SAMBA share and do all operations with it.
There are two modules that do the job: cifs.ko (which is the main one) as well as nls_utf8.ko which just provides UTF-8 support for file/folder names within the shares.
Installation
Once you have unpacked the zip and extracted the two modules into the folder of your choice, the commands are these:
Code:
adb push "nls_utf8.ko" /sdcard/nls_utf8.ko
adb push "cifs.ko" /sdcard/cifs.ko
adb shell
su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system/lib/modules
cp /sdcard/nls_utf8.ko .
cp /sdcard/cifs.ko .
insmod nls_utf8.ko
insmod cifs.ko
mkdir /sdcard/cifs
mount -o username=<yours>,password=<yours>,iocharset=utf8 -t cifs //<serverip>/<sharename> /sdcard/cifs
Now you can cd to your /sdcard/cifs and see the files shared there.
Observations
1. nls_utf8.ko is not mandatory and if your files don't have UTF-8 characters and only ascii, you can skip it IF you remove the isocharset=utf8 from the mount command above.
2. Music will stutter with all players I've tried. found an opinion that might be android lowlevel subsystem for reading mp3 files, and that they don't buffer enough - and given the latency over WIFI, this will create pauses / stuttering in the music. However, you can still copy the audio files, etc.
3. Movie playing works! I've tried RockPlayer for few minutes and didn't have an issue (seems it handles buffering very well) since it is software and thus they don't rely on some Android codec / etc.
4. Skip works! Again in Rock Player, you can skip in the movie and it takes a bit to skip there, but it does.
5. umount usually fails, since I assume, Android apps don't really exit and don't really free the resources. Once a file open, it doesn't let me un-mount saying that the resource / device is busy.
Download
Use it at your own risk!
cifs.zip
Chefs can bundle the files within the ROMs they offer - but please add this link into descriptions so that people can discuss issues they might encounter.
Click to expand...
Click to collapse
Thanks viulian, very nice modules! May I include it in my rom?
Regards
Erick
Hello Erick, yes. Please add a link in your descriptions / thread / patches page etc, so people would also come here to check for possible issues, share experiences etc.
viulian said:
Hello Erick, yes. Please add a link in your descriptions / thread / patches page etc, so people would also come here to check for possible issues, share experiences etc.
Click to expand...
Click to collapse
For sure, thanks!
Hello friend,
Just wondering if I can install this through android terminal rather than adb?
Same commands/process? Thx
Aphex33 said:
Hello friend,
Just wondering if I can install this through android terminal rather than adb?
Same commands/process? Thx
Click to expand...
Click to collapse
Yes - if you handle copying the module to sdcard separately and then you become root in terminal, then it's the same.
viulian said:
Yes - if you handle copying the module to sdcard separately and then you become root in terminal, then it's the same.
Click to expand...
Click to collapse
Thx for quick response, become root in terminal? Explain please.....buy the way your modules rock! Currently using interactive.ko
Aphex33 said:
Thx for quick response, become root in terminal?
Click to expand...
Click to collapse
When you start the terminal, you notice you have a $ sign displayed to the left of the command prompt. That means you do not have the rights to do most things, since $ is for standard (limited) user.
What you need is to type command
Code:
su
And then your prompt will change to the dash sign #.
That means now you have full control over the phone, and you can start typing the commands.
Please double check what you do, and that you typed correctly - otherwise, as root, you might render your phone useless. Do not attempt if you don't feel confident enough and that you know what you are doing.
viulian said:
When you start the terminal, you notice you have a $ sign displayed to the left of the command prompt. That means you do not have the rights to do most things, since $ is for standard (limited) user.
What you need is to type command
Code:
su
And then your prompt will change to the dash sign #.
That means now you have full control over the phone, and you can start typing the commands.
Please double check what you do, and that you typed correctly - otherwise, as root, you might render your phone useless. Do not attempt if you don't feel confident enough and that you know what you are doing.
Click to expand...
Click to collapse
Thank you once again.
viulian said:
When you start the terminal, you notice you have a $ sign displayed to the left of the command prompt. That means you do not have the rights to do most things, since $ is for standard (limited) user.
What you need is to type command
Code:
su
And then your prompt will change to the dash sign #.
That means now you have full control over the phone, and you can start typing the commands.
Please double check what you do, and that you typed correctly - otherwise, as root, you might render your phone useless. Do not attempt if you don't feel confident enough and that you know what you are doing.
Click to expand...
Click to collapse
Hello, so If I have this correct, after placing the module in the correct place I have to type the commands in the first post word for word, correct? Apologize for being a noob, just wanna make sure.
hello guy
I dont know how to mount files from Windows. Someone explains clearly , please
Sorry for being noob. I think this module is awesome but dont know how to use
Got an exec format error when trying to insmod.
What can i try to solve this please ?
Thanks !
Knives & Forks
WHAT IS IT?
Knives & Forks is a set of Android tools for everyone. Every operating system, every device.
This cross-platform Android toolkit, written in Python, that is designed to work in Linux, Mac OS X or Windows. I wanted to create something that was unique, and offered a consistent and feature-filled set of tools for Android devs no matter what operating system they use, and for as many Android devices as possible.
WHAT DOES IT DO?
I just started work on this project, so it doesn't do very much yet. Right now we are just focusing on getting drivers and adb installed for as many devices as we can on all three platforms. Once we have adb working for everyone, the real fun can begin as we start to add more device tools that will make use of adb, such as rooting. Eventually ROM customization tools will be added, but we are focusing on device tools and cross-platform compatibility at this time.
View the changelog to see a list of included drivers. The only device that I can confirm is compatible with this script in Linux, Mac OS X, and Windows is the Samsung Galaxy S II, Sprint Epic 4G Touch. This just so happens to be my personal phone, but as I gather feedback I will create an official list of supported devices.
WHERE DO I GET IT?
This project is now being hosted by the Android Creative Syndicate. An up to date link to the most current version of the script, installation instructions for Linux, Max OS , and Windows, and other information can be found HERE. Registration is not required at the ACS forum to download or view installation instructions. You are free to reply in the thread you are reading right now if you don't want to register for another forum.
I HAVE IT INSTALLED, NOW WHAT?
You should be able to open up your terminal application (or command prompt) and run some adb commands. In the future we will be automating adb commands for you, but for now you can try the following as a simple test:
Code:
adb reboot
If everything worked, your Android device should reboot. For further reading on what you can do with adb you can read THIS PAGE.
HOW TO SUPPORT THIS PROJECT
FEEDBACK
Download my script, test it, let me know what happens. Let me know what other features/tools I should add.
THANKS
Hit the thanks button if you like what I'm doing here.
DONATIONS - I don't currently have a link to send me money, but I could quickly set something up if somebody decides they want to help me feed my kid. I am recently unemployed, but I am not relying on my scripting skills to feed my family. Save your cash for a more worthy project, or tuck it away and wait until the project turns into something amazing.
INFORMATION
TELL ME ABOUT YOUR ANDROID DEVICES!
If my script isn't getting adb setup for your device, let me know where to download the correct Windows driver and/or what udev rules I need to add in Linux.
The next phase of this project will be automating the rooting process. If you know the process for rooting your device, please share the details.
HOW TO REPLY TO THIS THREAD
Please do not reply by saying something like "This looks awesome, I'm going to download it now!".
Just download it, test it out, and then tell me about it.
If my script works for you, please don't post something like "It worked for me, this is the best thing since sliced bread!".
At the moment all my script will do is install adb and drivers for your device. In order to test please uninstall any drivers you may have already installed, run my script, then reply with the following information:
Operating System (including version and 32-bit or 64-bit architecture)
Android Device
If you open up a terminal/command prompt window and enter the following command, does your device reboot? If not, do you receive any error messages (while running that command or at any phase of running the Kinves & Forks script)?
Code:
adb reboot
CHANGELOG
Code:
------------------------------------------------------------------------------------
Knives & Forks: Changelog
------------------------------------------------------------------------------------
The most current version is available for download from:
http://knivesandforks.info/releases/knives-and-forks-current.php
**** 12.02.04 ****
http://knivesandforks.info/releases/knives-and-forks-12.02.04.php
- LINUX CHANGES:
-- "python2" is now called by "Knives-and-Forks-Linux.sh" instead of "python" on Arch.
- This prevents starting the script with Python 3, which results in errors.
-- Changes to "scripts/linux/install-adb-linux.sh":
- "su" will be used if "sudo" is not installed, or user doesn't have permissions to use it.
- Added 32-bit libs for more 64-bit distros:
- Arch (new in this release)
- CentOS (new in this release)
- Debian
- Fedora (new in this release)
- Ubuntu, Kubuntu, Xubuntu
- Added Debian version of '/etc/udev/rules.d/99-android.rules'
- Added '/lib/udev/rules.d/92-permissions.rules' for Debian.
This should fix permissions, allowing adb to run without sudo or su.
- WINDOWS CHANGES:
-- Fixed a couple of missing quotes which were breaking things under Windows XP
- "%userprofile%" was coming back as "c:\documents" instead of "c:\documents and settings\username" in a couple of places
-- "c:\python27" is now the only directory where we look for python.exe
- It is faster to download and install Python to "c:\Python27" than it is to search for it elsewhere.
- This will also prevent issues where Python 3 was installed instead of Python 2, since the script currently gives errors under Python 3.
-- Updated amd64 and x86 versions of setx.exe for updating system PATH on XP/VISTA/7
-- PATH is updated with adb.exe location after Python is installed.
-- The computer will now reboot after updating the PATH, to make sure it will be updated before running the main program.
**** 12.01.27 ****
http://knivesandforks.info/releases/knives-and-forks-12.01.27.php
- GENERAL CHANGES:
-- After adb is installed, adb will reset the android device by running "adb reboot" instead of displaying a list of attached devices with "adb devices".
adb was occasionally reporting no devices were attached, when they infact were. When this happened "adb reboot" still worked, so it is a better test to see if adb is setup properly.
-- Friendlier messages during adb install and testing
-- Added a startup check to make sure the script is running from the correct directory
-- Removed empty Project directory, as it is not being used yet.
- LINUX CHANGES:
-- Added support for "lxterminal" and "urxvt" in "Knifes-and-Forks-Linux.sh"
-- Changed idVendors for Linux udev rules to lowercase instead of uppercase.
- WINDOWS CHANGES:
-- Startup script searches for python in "C:\Program Files (x86)" then "C:\Program Files" and "c:\" last.
-- Drivers should now install even if the language is not English
-- Added drivers for Casio C771 G'zOne Commando
-- Added LG drivers
-- Replaced setx.exe
**** 12.01.25 ****
http://knivesandforks.info/releases/knives-and-forks-12.01.25.php
- Replaced "Knives-and-Forks-Mac.sh" with "Knives-and-Forks-Mac.app".
Starting the script on a Mac should now be as simple as double-clicking the new .app file.
**** 12.01.24 ****
http://knivesandforks.info/releases/knives-and-forks-12.01.24.php
- Fixed a typo which caused the script to crash when viewing the credits screen.
- Smarter python fix for Windows users.
-- "C:\" and all sub-directories are searched for python.exe.
-- If python is not not found, it will be downloaded from python.org and installed to c:\python27.
-- If python is found (in "C:\python27", "c:\python", "c:\xyz123", "c:\program files\python27" or in any directory with any name anywhere on drive c:) the main menu script will launch.
- Added changelog.txt to the release .zip file.
**** 12.01.23 ****
http://knivesandforks.info/releases/knives-and-forks-12.01.23.php
- Minor update to fix Python installation for Windows users, which was causing the script not to launch.
**** 12.01.22 ****
(FIRST PUBLIC RELEASE)
http://knivesandforks.info/releases/knives-and-forks-12.01.22.php
- Added option to install adb & fastboot for Linux, Windows, Mac
- Added Linux drivers for:
-- ACER
-- ASUS
-- DELL
-- FOXCONN
-- GARMIN-ASUS
-- Google
-- Hisense
-- HTC
-- HUAWEI
-- K-TOUCH
-- KT Tech
-- KYOCERA
-- LENEVO
-- LG
-- MOTOROLA
-- NEC
-- NOOK
-- NVIDIA
-- OTGV
-- PANTECH
-- PEGATRON
-- PHILIPS
-- PMC-SIERRA
-- QUALCOMM
-- SK TELESYS
-- SAMSUNG
-- SHARP
-- SONY ERICSSON
-- TOSHIBA
-- ZTE
- Added Mac drivers for:
-- Nothing. According to Google, "It just works." Let me know if they are right.
- Added a custom Windows installer with drivers for:
-- GOOGLE
-- HTC
-- HUAWEI
-- SAMSUNG
WHERE DID THE OLD POSTS GO?
In an attempt to reduce unnecessary clutter in my original thread, I created supporting threads in each Android device forum. The whole reason behind posting so many times was to keep certain information in the Chef Central post, and certain information out of it in an effort to reduce clutter. Who wants to read through 50 pages of how this, that, and the other thing is or isn't working on devices that you don't own? That system appeared to work very well, but apparently I broke the rules by posting in every Android device forum.
Learn from my mistakes, don't post similarly worded posts all over the place!
ATTENTION PYTHON PROGRAMMERS:
Any idea on what I can do to make the Python files work in Python 2 and Python 3? I have only tested in Python 2.7.2, but I have received reports that Python 3 gives errors. I'm not really doing anything all that fancy, so I'm not sure if something is just a matter or new syntax or something else needs to be imported or what. Any help would be appreciated.
The next release will call "python2" for Arch Linux users since "python" will use python 3.
ATTENTION LINUX USERS:
I am currently testing my Knives & Forks script in some virtual machines using VirtualBox, as well as my local Xubuntu installation.
For distro specific things (installing 32-bit libs, udev changes, etc) in the next release I will be detecting the distro using the following code:
Code:
echo " -- DETECTING LINUX DISTRO --"
if [ "`cat /etc/issue | grep Arch | wc -l`" == "1" ]; then
DISTRO_NAME="Arch"
elif [ "`cat /etc/issue | grep Cent | wc -l`" == "1" ]; then
DISTRO_NAME="CentOS"
elif [ "`cat /etc/issue | grep Debian | wc -l`" == "1" ]; then
DISTRO_NAME="Debian"
elif [ "`cat /etc/issue | grep Fedora | wc -l`" == "1" ]; then
DISTRO_NAME="Fedora"
elif [ "`cat /etc/issue | grep Ubuntu | wc -l`" == "1" ]; then
# DETECTS UBUNTU, KUBUNTU, XUBUNTU, ETC
DISTRO_NAME="Ubuntu"
else
DISTRO_NAME="UNKNOWN"
fi
echo " - $DISTRO_NAME"
Please let me know what other distros your using and if you are able to find the name using the "/etc/issue" method I am using in the above if statements.
I wrote a bash function to check if sudo is installed, and then to see if the current user has permissions to use sudo. If sudo is not installed, or if the current user does not have permission to use it, su will be used instead. This will be included in my next update, but I wanted to post it here first:
Code:
echo " -- CHECKING TO SEE IF 'SUDO' IS INSTALLED --"
CURRENT_USER=$USER
USE_SUDO="NO"
if [ -f "/usr/bin/sudo" ]; then
echo " - 'sudo' is installed."
echo ""
echo " -- CHECKING FOR PERMISSION TO USE 'SUDO' --"
echo ""
echo " If prompted, enter the password for the user '$CURRENT_USER'."
echo ""
if [ "$(sudo whoami)" != "root" ]; then
echo ""
echo " - Sorry, '$CURRENT_USER' does not have permission to use 'sudo'."
echo " - 'su' will be uses instead of 'sudo'."
echo ""
else
echo " - '$CURRENT_USER' has permission to use 'sudo'."
USE_SUDO="YES"
echo ""
fi
else
echo " - 'sudo' is not installed."
echo " - 'su' will be used instead of 'sudo'."
echo ""
fi
DO_SU()
{
echo ""
if [ $USE_SUDO == "YES" ]; then
# echo " -- USING 'SUDO' TO RUN '$1' --"
echo ""
echo " If prompted, enter the password for the user '$CURRENT_USER'."
echo ""
sudo $1
else
# echo " -- USING 'SU' TO RUN '$1' --"
echo ""
echo " If prompted, enter the password for the user 'root'."
echo ""
su -c "$1"
fi
echo ""
}
# EXAMPLE USAGE OF THE DO_SU() FUNCTION:
# NOTE THAT THE COMMAND TO RUN WITH SU OR SUDO HAS TO BE IN QUOTES
DO_SU "whoami"
I also found out why debian users were being forced to use sudo or su in order to use adb. The next release will include this fix, but for those who might be interested in making this change manually:
Open "/lib/udev/rules.d/91-permissions.rules" as root (su or sudo) in your favorite text editor and find this line
Code:
usbfs-like devices SUBSYSTEM==”usb”, ENV{DEVTYPE}==”usb_device”, \ MODE=”0664″
Change MODE to "0666"
Code:
usbfs-like devices SUBSYSTEM==”usb”, ENV{DEVTYPE}==”usb_device”, \ [B]MODE=”0666“[/B]
Instead of replacing or modifying your "/lib/udev/rules.d/91-permissions.rules" file, the next version of my script will actually create a "/lib/udev/rules.d/92-permissions.rules" for Debian users that contains only the following:
Code:
# usbfs-like devices
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \
MODE="0666"
This file will load right after the 91-permissions.rules and replace just the usbfs-like devices settings. I'm just doing this with my script so I don't accidently break anything on your system. If you are making the changes manually, editing the 91-permissions.rules file should be all you need to do.
Save your changes and then restart udev as root (using sudo or su)
Code:
/etc/init.d/udev restart
-- or --
Code:
service udev restart
This assumes of course that you already have a working udev rule for your android device, and that adb is working only with su or sudo currently. Once this change is made you should be able to use adb without being forced to use su or sudo.
First post updated with latest release, version 12.02.04.
Lots of changes for XP and various Linux distros. See changelog for more information, but things should work better in Arch, CentOS, Debian, Fedora, and Ubuntu (including Kubuntu, Xubuntu, etc).
Hi, I just downloaded the latest file (12.02.04) but it's only 4 KB.
Could you check please?
Thank you!
Trying to unzip the file in Ubuntu 11.10 and this what I get:
Archive: knives-and-forks-12.02.04.zip
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive. In the
latter case the central directory and zipfile comment will be found on
the last disk(s) of this archive.
unzip: cannot find zipfile directory in one of knives-and-forks-12.02.04.zip or
knives-and-forks-12.02.04.zip.zip, and cannot find knives-and-forks-12.02.04.zip.ZIP, period.
Any help?
I had a typo in the .zip filename, so if you tried to download the file yesterday you basically just downloaded an error message that the .php counter script gave when it couldn't find the file. I will have to take a look at that later because it is supposed to display the message not make you download it.
The problem is now fixed, sorry about that.
Thanks for update.
Downloaded and installed.
Now I can adb from linux.
Have one more question. I hope you can help me with that as well.
I don't see my device (E4GT) as external hard drive or USB drive when debuging is on to copy files to it.
When debuging is off it shows 2 Android devices but when I click on them I'm getting this message:
Error initializing camera: -60: Could not lock the device
Any ideas?
My guess is maybe they didn't get unmounted properly that last time you had it plugged in, but I have no idea why you would get an error message about the camera. I have not seen that one.
Try installing Dropbox and backing up anything important, then formatting the sdcard and try mounting again.
Maybe somebody else has had that error and has a better idea,
I'll try to format sd card tonight when I get home.
But what would be the problem with internal storage?
And what should or could I try to proper mount it?
agat63 said:
I'll try to format sd card tonight when I get home.
But what would be the problem with internal storage?
And what should or could I try to proper mount it?
Click to expand...
Click to collapse
First thing to check is that it isn't ROM related. Boot into recovery and try to mount as a usb drive and see if it works or not. If it does, I would say wipe and flash another ROM. If it doesn't work from recovery, then it could be a result of not unmounting before unplugging from your computer.
Sometimes if you have your phone mounted as a USB drive, or even just a regular flash drive, and it you unplug it before it is done unmounting (or if you don't use the safely remove hardward feature of Windows) the filesystem can get trashed. It hasn't happened alot with me, and I have seen the problem happen mostly when a flash drive is unplugged before the OS can finish writing to it.
After you get all of your important stuff backed up somewhere like dropbox, reboot into your recovery and repartition the sd card and/or your internal storage, whatever is giving you the problem. When you reboot into android you should be able to use it as normal, and dropbox should automatically copy everything back that you backed up.
This problem isn't really related to my script, so I if you can't get the issue resolved make a new post in Android QA or somewhere else. PM me if you post elsewhere and I can see if I can help you out there.
I didn't mean to say that the problem is related to your script.
Your script works just fine and I'm able to adb.
I'm kinda new to linux and still learning it.
I needed help and advise for how to connect phone to pc in linux.
It works in windows for me.
When I get on my PC I'm gnats give this awhirl. Ad for your mounting disk drives if ur on any ics rom it wont and I don't know how to enlighten me someone but if its gingerb then make sure u mount with the phones option when u plug in on ur handset ther should be some kind of way to switch between teather, disk and charge only? Wat fone u got?
Does this knife and forks compile? What does it do? Sorry to sound like a knob.
Sent from my GT-I9100 using XDA Premium App
This worked for my att gs2.
Sent from my GT-I9100 using Tapatalk
By using the Android Font you are violating their copyright rules. But you are free to modify the Android Robot, as long as you refer to them and say that you have permission.
Bad-Wolf said:
By using the Android Font you are violating their copyright rules. But you are free to modify the Android Robot, as long as you refer to them and say that you have permission.
Click to expand...
Click to collapse
The post where I found the font said it was an Android logo inspired font, and not the actual android logo font.
I have changed the font I'm using, and have updated my logo graphic to fight off any further concerns.
Colliebudz said:
Does this knife and forks compile? What does it do? Sorry to sound like a knob.
Click to expand...
Click to collapse
At the moment it simply automates getting adb setup on Linux, Mac, and Linux.
I have plans to add support for device rooting next, followed by some other adb commands, then rom customization tools as the last stage of development.
Pushing files to the phone, running shell commands, etc, requires that adb is setup properly, so that is where the focus is at right now. Getting the adb & driver installation scripts setup to run on all three platforms is also helping take care of some general troubleshooting, which is good to get out of the way before the main script gets tons of extra features.
All of this info should be in the first post, I'll try to clarify things when I make the next update.
Waddle said:
This worked for my att gs2.
Sent from my GT-I9100 using Tapatalk
Click to expand...
Click to collapse
Thanks for the feedback. What OS?
Hi
I tried to install AMP(apache, mysql, php5) since I was interested on using Atrix as a web server.
Apache was success, but MySQL was failure. No MySQL, No PHP5(of course)
I tried force installing Busybox using dpkg expecting to be updated(version stayed same), removing and making directories that makes the problem, No luck.
I think it's related to my outdated Busybox(readlink?) There's too many problems here.
Lot of people just say "it's impossible" but why not? At least I want to know why it fails.
I have terminal log below. Sorry for bad, bad english.
Thanks
[email protected]:/$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
obconf leafpad lxde-common linux-libc-dev lxrandr pcmanfm lxde-core lxappearance gpicview libc6-dev lxpanel
lxde-settings-daemon xarchiver
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 120 not upgraded.
3 not fully installed or removed.
After this operation, 0B of additional disk space will be used.
Setting up mysql-server-5.0 (5.1.30really5.0.75-0ubuntu10.5) ...
* Stopping MySQL database server mysqld [ OK ]
mkdir: cannot create directory `/var/log/mysql': No such file or directory
dpkg: error processing mysql-server-5.0 (--configure):
subprocess post-installation script returned error exit status 1
Setting up libapache2-mod-php5 (5.2.6.dfsg.1-3ubuntu4.6) ...
readlink: invalid option -- 'q'
BusyBox v1.10.2 (Ubuntu 1:1.10.2-2ubuntu7) multi-call binary
Usage: readlink [-f] FILE
Display the value of a symlink
Options:
-f Canonicalize by following all symlinks
ucf: Unable to determine The new file
dpkg: error processing libapache2-mod-php5 (--configure):
subprocess post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of php5-mysql:
php5-mysql depends on phpapi-20060613+lfs; however:
Package phpapi-20060613+lfs is not installed.
Package libapache2-mod-php5 which provides phpapi-20060613+lfs is not configured yet.
dpkg: error processing php5-mysql (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while processing:
mysql-server-5.0
libapache2-mod-php5
php5-mysql
E: Sub-process /usr/bin/dpkg returned an error code (1)
Click to expand...
Click to collapse
vctshim said:
Hi
I tried to install AMP(apache, mysql, php5) since I was interested on using Atrix as a web server.
Apache was success, but MySQL was failure. No MySQL, No PHP5(of course)
I tried force installing Busybox using dpkg expecting to be updated(version stayed same), removing and making directories that makes the problem, No luck.
I think it's related to my outdated Busybox(readlink?) There's too many problems here.
Lot of people just say "it's impossible" but why not? At least I want to know why it fails.
I have terminal log below. Sorry for bad, bad english.
Thanks
Click to expand...
Click to collapse
Hi, could you solve the issue? I wan to install it too, for my work.
Thanks!
douglasroos said:
Hi, could you solve the issue? I wan to install it too, for my work.
Thanks!
Click to expand...
Click to collapse
I found out it is impossible. Many repos are dead and crucially Ubuntu in this is outdated (without LTS)
I sold the Atrix and bought ARM-based Open PCs (e.g. Raspberry Pi, Cubieboard, Beaglebone Black, Udoo, etc..)
If you want low-power web server, this might be the way to go
(Ubuntu Phone might work but I'm not sure YET)
Hi,
before Oreo I happily used "Rsync for Android" to sync images from my NAS to my Pixel C (and backups the other way).
Since Oreo this no longer works. The rsync and ssh executables in /sdcard/Android/data/eu.kowalczuk.rsync4android/files/ are no longer executable, as the sdcard is mounted noexec.
The devices is rooted, stock ROM.
I am looking for either alternative apps that do not rely on executables on the sdcard or ways to make "Rsync for Android" usable again. Preferable a solution that survives system updates.
thx
afx
I am on the same boat. Any ideas?
prescaler said:
I am on the same boat. Any ideas?
Click to expand...
Click to collapse
Ok,
found something today:
Rsync Wrapper by Letscorp from the play store.
seems to work, though one needs to experiment a bit with the options.
cheers
afx
Rsync Wrapper doesn't work for me even on Nougat. One review says it may be a problem with running it on Lineage.
Could not create directory '/data/.ssh'.
Host key verification failed.
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at external/rsync/io.c(226) [sender=3.1.1]
I used llama + rsync4android to backup DCIM/Camera to my Linux server. Same problem w/ Oreo. The easiest work around is to use SmbSync2 instead. The other workaround is to use root the phone and use one of the following:
- llamaLab's Automate. (Search the community contributed tasks for an rsync example).
- Tasker + com.termux's plugin (I haven't tested this one)
The really hacker's method (My first attempt):
- install rsync4android
- install the rsync binaries (rsync, ssh, dropbearkey)
- generate dss_key
- as root, copy those binaries to to /system/bin (will need remount /system rw)
- chmod 755 those binaries
- install a cron scheduler (I used ru.kslabs.scheduler)
- create a task and directly run rsync. (Might need to run as root)
I have the same issues with rsync4android on LineageOS 15.1 (Oreo 8.1). The "really hacker's method" do not work at all. With my old, yet broken cellphone, running with CarbonROM Oreo 8.1, rsync4android worked fine.
Any ideas?
Any alternatives?
Been using rsync wrapper for quite a wile now and it works just fine (two stock Oreo systems).
Give it a try.
cheers
afx
a.f.x. said:
Been using rsync wrapper for quite a wile now and it works just fine (two stock Oreo systems).
Give it a try.
Click to expand...
Click to collapse
Thank you. I tried again with various options and for hours.
I always get this:
rsync: connection unexpectedly closed 90 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at external/rsync/io.c(226) [Receiver=3.1.2]
I found a solution for this issue.:
Connect the smartphone by USB to a computer.
Mount it with JMTPFS.
Write a bash script with different rsync commands.
Execute the rsync bash script.
That will do it for me. For Calendar and Contacts synchronization I use Radicale.
Still, the SD Card remains unencrypted and Adoptable SD Cards are no longer possible. I blame Google for this retrograde and insecure step.
Sorry, I was wrong. The mount with jmtpfs + rsync method did not work. Unfortunately, the files were not copied to the phone. For me this Google-FBE is a big disadvantage for Android and I have a broken smartphone, I want to get rid of it.
I faced 2 issues with rsync4android:
- The binaries didn't seem to work with Oreo
- Dropbearkey generates a DSS key instead of a RSA one
So I installed rsync wrapper and with the key it generates, it worked. But I want to be able to automate my backups with Tasker so it wbsn't perfect. So I overwrote the binaries of /data/data/eu.kowalczuk.rsync4android/files with those from /data/data/net.letscorp.rsyncwrapper/files. with the RSA key, it did work with rsync4android and Tasker
I finally got rsync wrapper to work in Lineage 15.1 by converting my dropbear formatted key to openssh format, and replacing my old rsync -e option with...
-e "ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 22 -i '/sdcard/id_rsa'"
Running LineageOS 15.1 and here is my finding:
The issue is with ssh client included in ROM. Workaround is to update the -e parameter in to include full path to local ssh instead
From: -e "ssh -l <your username>...
To: -e "/data/data/net.letscorp.rsyncwrapper/files/ssh -l <your username>...
An easy fix for Rsync Wrapper. But I was unable to edit command line for Rsync4android.
I just cannot get Rsync Wrapper to work, even playing with the options. My rsync4android command was
Code:
rsync -vHrltD --chmod=Du+rwx,go-rwx,Fu+rw,go-rw --no-perms --exclude=.trashcan --exclude=.android_secure --delete-after -e "ssh -y -p 22 -i '/sdcard/dss_key'" /storage/F975-D0D2/ [email protected]:/media/HDD/folder
I tried a number of variations including the ones you all suggested, with the end string being
Code:
rsync -vHrltD --chmod=Du+rwx,go-rwx,Fu+rw,go-rw --no-perms --exclude=.trashcan --exclude=.android_secure --delete-after -e "/data/data/net.letscorp.rsyncwrapper/files/ssh -y -p 22 -i '/sdcard/dss_key" /storage/F975-D0D2/ [email protected]:/media/HDD/folder
It just does not work: I always get as a result
Code:
/data/data/net.letscorp.rsyncwrapper/files/ssh: Exited: Error connecting: Connection refused
rsync: connection unexpectedly closed (0bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.2]
Would you kindly suggest any other attempts I could try? My phone is not rooted, and I wish to backup my SD Card to a raspberrypi I have in my home; with Nougat it worked wonderfully and it still does from my girlfriend's Nougat phone.