[WIP] Ubuntu on the Thrive! - Thrive Android Development

Hey guys!
A friend of mine who is into phone roms and modding, showed me Ubuntu running on his Nexus Android Phone, and thought about how cool it would be to get Ubuntu Running on the Thrive! With a bit of Research I found that there is an ARM port of Ubuntu. The reason why that is an awesome thing is because Linux has this cool thing called chrooting. chrooting is the process of running another version of linux within another running linux OS instance. The downside of chroot is that you can chroot an os made for your phones architecture. In this case, the Terga 2 IS Arm based, so we're all set to go on that. With a few hours of toying around, I have successfully gotten Ubuntu running on my Thrive.
What you'll Need:
- Basic working knowledge of linux.
- The Arm Port of Ubuntu. ubuntu.zip
Original Dev's Site: Download File - ubuntu_zip - DownloadAndroidROMs.com
Mirror 1: MEGAUPLOAD - The leading online storage and file delivery service
Mirror 2: http://www.zettech.net/ubuntu.zip
Mirror 3: ubuntu.zip - download now for free. File sharing. Software file sharing. Free file hosting. File upload. FileFactory.com
- A *ROOTED* Thrive, with busybox installed and atleast 3gb of spare space in the *INTERNAL* storage... Not the SDCard Storage. You can find out how to do this all at this thread: http://www.thriveforums.org/forum/t...ment/1399-full-working-rooted-thrive-now.html
- A computer with adb setup and the correct working drivers for your thrive. If your Thrive is rooted, than you should have working drivers, unless you rooted it from another pc, in which case you can look at the root thread in this development forum for help. You can check to see if ADB is working by typing "adb devices" at the command promt. A few lines that look like this should pop up.
List of devices attached
286416746464667 device
^ The numbers will look different. Thats OK. If the list is empty, you have a driver issue or connection issue with adb.
How to do it:
1. Download and extract the ubuntu.zip file from one of the above links to your hard drive.
2. Connect your thrive to the PC and Connect your Thrive to a Wifi Access Point.
3. A new storage device should show up. This is your thrive. Now place the ubuntu folder you just extracted in the root of the thrives storage device. NOTE: This is *NOT* actually the sdcard your storing the files on. This is the devices internal memory. (don't put it in the /sdcard-disk0 folder.)
4. Open up an adb shell. Do this by typing "adb shell" at the command promt. A "#" should appear, indicatng you are at a root shell on your thrive.
5. Type "cd /sdcard/ubuntu"
6. Type "sh ubuntu.sh" This is the script that sets all of the permissions for the ubuntu image. You *WILL* see errors on this part. Ignore them.
7. Type "bootubuntu". You should now see a command line that looks like this:
# bootubuntu
bootubuntu
net.ipv4.ip_forward = 1
Setting /etc/resolv.conf to Google Open DNS 8.8.8.8 and 8.8.4.4
Setting localhost on /etc/hosts
READY TO ROCK AND ROLL BABY!
Brought to you by NexusOneHacks.net and the open source community!
* Congrats. You have Ubuntu running on your thrive now... Now for a better way to control it...
8. Update the OS:
Code:
apt-get update
9. Change the root password:
Code:
passwd root
^ Set this to a secure password. Wouldn't want anyone sploit'en ya eh?
10. Find your Thrives IP Address:
Code:
ifconfig
^ It should be listed as "inet addr" under the wlan0 interface. (See? Told ya you would need basic linux skills. ).
11. Install SSH:
Code:
apt-get install openssh-server
^ Once thats installed, you should be able to ssh to your thrive by either connecting to 127.0.0.1 from a terminal emulater on the thrive, or your thrives IP from a PC on the same network.
12. Install and start a VNC Server:
Code:
apt-get install tightvncserver
Code:
export USER=root
^Tell's what user to start VNC as.
Code:
vncserver -geometry 1280×720
^This starts the VNC server. It will ask you for a password. Remember this password. You may also try 1280x800 if 1280x720 gives you issues.
Now that VNC is installed and running. You should be able to connect to it from a VNC client on port *5901*. If connecting from the Thrive itself, you can connect to 127.0.0.1, or you can connect from a PC by using the thrives IP.
What the issues are:
Ok... So I literally *JUST* got VNC up and running as I am writing this post. I'm actually just on my way out the door to go home for the weekend hahah, so I'm sure alot of these issues can be fixed with minor tweaks. I'm also sure there are more issues out there. I just wanted to get this posted up though so that people can start playing with it.
- VNC Resolution and colors are set incorrectly. This I believe is just an issue with the default configuration file for VNC. I believe the color quality setting just needs to be raised and the resolution adjusted to the native resolution of the thrive.
- Has to be install to Main memory: This is because the script that sets all of the permissions is hard coded with /sdcard/ubuntu as the location for the installation. /sdcard/ isn't actually the sdcard on the thrive. It's internal memory. I'm certain that a quick edit of the sh script will fix this. Is it really a good idea to run ubuntu off a slow, and limited write capacity sdcard?
All of the above issues i'll look at tonight when I get home! Happy hacking guys!

I cant seem to get vnc working the client keeps failing
Sent from my AT100 using Tapatalk

can you use the onscreen keyboard or do you have to use an external?

What you mean like the keyboard in ubuntu or while im in the vnc client
Sent from my AT100 using Tapatalk

I mean, can I put ubuntu on the tablet and use the tablet as a Ubuntu tablet or do I need to hook up a keyboard or use VNC in order to use the tablet?
With Android, I have a keyboard built into the software. Does Ubuntu have one?

Im not sure I havent made it that far. But you need to use a vnc client
Sent from my AT100 using Tapatalk

wrek said:
I mean, can I put ubuntu on the tablet and use the tablet as a Ubuntu tablet or do I need to hook up a keyboard or use VNC in order to use the tablet?
With Android, I have a keyboard built into the software. Does Ubuntu have one?
Click to expand...
Click to collapse
You download a VNC Client for Android, and connect to your Ubuntu Instance via that. VNC should support whatever on screen keyboard you have installed.

Ok, so it's not really a "Ubuntu" I can walk around with... not yet anyway.

wrek said:
Ok, so it's not really a "Ubuntu" I can walk around with... not yet anyway.
Click to expand...
Click to collapse
Well to an extent it is. You can use VNC right from the Thrive to connect to Ubuntu. Ubuntu would still be running locally on the thrive as well. You can also use a terminal emulator to ssh to ubuntu as well.
In all Honesty, I only posted this to show that the thrive does indeed have the power to run Ubuntu. The version of Ubuntu it runs is the ARM version; which doesn't have many working applications for it yet.

hey i am stuck at [email protected]:/#
nothing happened on the tab, im not sure what to do..? help?

past that..
okay so i am past the [email protected] blah blah blah... now i got an error saying
"chroot: applet not found
Shutting down ubuntu
failed.
failed.
failed.
failed.
losesetup: applet not found
any ideas.?

Is anyone still working on this? I am getting errors when I try to install openssh and tightvncserver.
Sent from my SPH-D710 using xda premium

I already have ubuntu running on my thrive through vnc viewer. Its not optimized that well but I can download software and use the keyboard and everything.
---------- Post added at 11:50 AM ---------- Previous post was at 11:48 AM ----------
I have a much easier method if you guys want it.

jayfrost10 said:
I already have ubuntu running on my thrive through vnc viewer. Its not optimized that well but I can download software and use the keyboard and everything.
---------- Post added at 11:50 AM ---------- Previous post was at 11:48 AM ----------
I have a much easier method if you guys want it.
Click to expand...
Click to collapse
Easier is better. How did you do it?
Sent from my SPH-D710 using xda premium

Okay, I am just gonna start a new thread. I'll get it up in a little while.

jayfrost10 said:
Okay, I am just gonna start a new thread. I'll get it up in a little while.
Click to expand...
Click to collapse
That would be great. Thank you!
Sent from my SPH-D710 using xda premium

Okay, my easy ubuntu thread is up.

sh ubuntu.sh
modprobe: module 'ext2' not found
←[H←[Jrm failed for -f, No such file or directory
rm failed for -f, No such file or directory
rm failed for -f, No such file or directory
rm failed for -f, No such file or directory
rm failed for -f, No such file or directory
mkdir failed for /data/local/mnt, File exists
←[H←[JUnable to chmod bootubuntu: Operation not permitted
←[H←[J
Ubuntu Chroot Bootloader v0.1
Ubuntu Bootloader is now installed!
i recive this failed when i type sh ubuntu.sh ... any sugestion ?

Related

[Q] MTP on linux Ubuntu

anyone been able to sync music/video's to there transformer from a linux machine ?
I have all of the mtp stuff set up for other devices, but i cannot get the transformer to show up ...
Any help would be appreciated
I don't believe the TF is an MTP device... it simply mounts as storage. Drag/Drop your music.
crater said:
I don't believe the TF is an MTP device... it simply mounts as storage. Drag/Drop your music.
Click to expand...
Click to collapse
It is actually an MTP device. This allows us to access the storage area without making it unavailable to the device like a USB mount does.
Here's how to get your Transformer to show up in Ubuntu for example. This includes stuff you will have setup but this will help others too.
Code:
$ sudo apt-get install mtpfs
$ sudo mkdir /media/transformer
$ sudo chmod 775 /media/transformer
$ sudo mtpfs -o allow_other /media/transformer
You should now be able to see the device under /media/transformer
To remove the device type:
Code:
$ sudo umount mtpfs
You may also need add a rule for the device to see it in Ubuntu:
Code:
$ sudo vi /etc/udev/rules.d/51-android.rules
Add this line to the 51-android.rules file:
Code:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4e0f", MODE="0666", OWNER="<your user name>" #Asus Transformer
Save the file, then chmod to all read:
Code:
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
i was reading a guide on xoom forums i believe that told you to edit fstab. is that not necessary? i did it without making a backup and i messed up my mounting points.
Roach2010 said:
It is actually an MTP device. This allows us to access the storage area without making it unavailable to the device like a USB mount does.
Click to expand...
Click to collapse
My mistake, I was completely unaware that they had made this change in honeycomb.
mtpfs works great, I've got it working on my gentoo netbook for managing music and videos on my Creative Xen X-Fi.
Crimton said:
i was reading a guide on xoom forums i believe that told you to edit fstab. is that not necessary? i did it without making a backup and i messed up my mounting points.
Click to expand...
Click to collapse
fstab is for automounts at system startup, I just tried adding an entry for mtpfs but I got 'An error occurred while mounting /media/transformer' so I can't help with that.
I could care less if it auto mounts I just want it to mount at all. so you have tested what you posted above and it definitely works? if so, that is awesome.
Sent from my ADR6400L using Tapatalk
edit: can't get this to work for me how do you get it to mount? if i do sudo mount mtpfs i get:
Code:
mount: wrong fs type, bad option, bad superblock on mtpfs,
missing codepage or helper program, or other error
(for several filesystems (e.g. nfs, cifs) you might
need a /sbin/mount.<type> helper program)
In some cases useful info is found in syslog - try
dmesg | tail or so
if i do /media/transformer i get:
Code:
bash: /media/transformer: Transport endpoint is not connected
i got it to work by starting a new mount point /media/tf101 and setting permissions on it.
I can't get this to work consistently, some times I can see all of the folders in the internal storage some times I only see the playlist folder and sometimes I see no folders and the "Transport endpoint is not connected" error message.
It is also worth noting that everytime I set up a new mountpoint it works but getting the files system to mount again is very unreliable.
Any ideas what this might be?
Don't really fancy setting up a new mount point every I want to transfer files onto the eee pad.
Using Ubuntu 11.04
I just use gmpt on Ubuntu (in the rare ocasions I need it - I mostly get files from Samba share).
Ok, so i got things mounted, but when i try to copy a 5gb file from my 2tb drive to my transformer, it seems to eat up space on my os disk when it tries to transfer. This definitely wont work for me as I only have a couple gigs of space free on my OS disk, which is meant for speed, not lots of storage (my 2tb drive is for that). Why is this happening? Some sort of temporary/caching action going on? Seems like a major design flaw with mtpfs if this is how it works. =(
Magnesus said:
I just use gmpt on Ubuntu (in the rare ocasions I need it - I mostly get files from Samba share).
Click to expand...
Click to collapse
gmtp doesnt seem to be able to see my transform. =(
I use QuickSSHD on my Transformer and sshfs on Linux. It is possible to use public key authentication. For pushing large files I use adb push. MTP works very unreliable. Sometimes files are randomly moved to different directories if they are recognized as media files. So after a few experiments I stay away from mtpfs.
Sent from my Transformer TF101 using Tapatalk
Has anyone figured this out yet, because this is really pissing me off. I understand the benefits of mtp, but if I can't use it linux (Ubuntu) to linux (Android), what's the point?
I use Ubuntu 10.04, AMD-64 bit and gMTP works pretty well. I did have to compile it because I understand that for some Linux versions it is broken.
I'm having problems too with Asus Transformer (Tested on Ubuntu 11.04 64 and 32bits).
I'm unable to transfer big files (like HD videos), it seems the transfer is completed but no file is stored. On the 64bits box I get messages about "the device is not connected" after trying to transfer big files, and I have to remount the device to be able to browse through folders.
Ok, here it's a tip: Enable USB Debugging under Settings → Applications
It seems it works enabling that. I have to do more tests with large files since mtpfs uses my root partition as temporally storage and I run out of free space
levenite said:
I use Ubuntu 10.04, AMD-64 bit and gMTP works pretty well. I did have to compile it because I understand that for some Linux versions it is broken.
Click to expand...
Click to collapse
i just got my 10.1v today and i'm trying to do this, but i havent even found gmtp source for 10.04
lacion said:
i just got my 10.1v today and i'm trying to do this, but i havent even found gmtp source for 10.04
Click to expand...
Click to collapse
I believe this is the link I used:http://chewy509.110mb.com/gMTP.html
Note: When you start gMTP make sure you give it time to initialize.
Crimton said:
[...]
edit: can't get this to work for me how do you get it to mount? if i do sudo mount mtpfs i get:
[...]
i got it to work by starting a new mount point /media/tf101 and setting permissions on it.
Click to expand...
Click to collapse
So wat was your mount command after all ?
Could you share please ?
Because from my point of view I have an additional issue, after my Tablet Mounted, if I try to open (with Nautilus) the mount point I have an error:
In French said:
Impossible d'afficher «*/media/transformer*».
Le type du fichier est inconnu
Click to expand...
Click to collapse
In English said:
Impossible to display « /media/transformer ».
Unknown file type
Click to expand...
Click to collapse
If you are using Fedora with Gnome3, like me.
yum install -y gnomad2
Since there is no mtpfs in the packge repo, use this or compile mtpfs.

Mount Transformer to Linux Mint - automated.

Hey TF owners,
For anyone looking for a way to mount their Transformer to Linux Mint, I wrote a script to automate the process of configuring your machine to allow you to browse/modify files on the tablet's SSD. This will probably also work on Ubuntu, but I have only so far tested it on Linux Mint.
Download the attached file, and run it.
Edit: Connect your Transformer to your PC before running.
Edit 2: You only need to run this script once - not every time you connect the tablet to your PC.
Hit the thanks button/comment if this worked for you. If not, also comment and I/someone will probably help you out. Also, if anyone tests it on Ubuntu successfully, be sure to comment and let people know.
Note: All configuration files are backed up in the script before changes are made. You can always revert safely.
I'll throw in the ever so popular "use at your own risk" for safe measure.
Cheers.
June 29: Updated script uploaded.
-Cleaner
-Removes an unnecessary comment pushed into fstab in the previous script
-Already executable. Just run it. [Thanks MagnusRagnarok for the idea]
-Packed in 7z from Linux Mint this time as opposed to in zip format from the TF, for [hopefully] universal accessibility.
-md5sum 615f2bfa820ee9ac8ea2c967149a2f03 TransformerMount2.7z
ok so maybe a stupid question, but does my tf need to be rooted to try this? also if you can create an automated script to install a linux distro you think it would be possible for you to create a script to root?? btw any idea on what actually works? can the tegra 2 run with compiz??
0lddirtypaki said:
ok so maybe a stupid question, but does my tf need to be rooted to try this? also if you can create an automated script to install a linux distro you think it would be possible for you to create a script to root?? btw any idea on what actually works? can the tegra 2 run with compiz??
Click to expand...
Click to collapse
I thin you've misunderstood the intention of the OP.
It was to be able to mount your Transformer under Linux and be able to read/write the files stored on the Transformer's internal storage. Not to actually install a full blown Linux Distro on your Transformer.
Wow, talk about reading before posting.
Sent from my Transformer TF101 using XDA Premium App
only on linux mint--
does it work on ubuntu?
Yes, this works perfectly on ubuntu
I have a problem extracting the zip file with Ubuntu 10.10
Do I need an alternate unzip program? If so please specify. I do not run MS products.
Error:
7-Zip 9.04 beta Copyright (c) 1999-2009 Igor Pavlov 2009-05-30
p7zip Version 9.04 (locale=en_CA.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
Processing archive: /tmp/TransformerMount.zip
Extracting TransformerMount.bash Unsupported Method
Sub items Errors: 1
I can extract it with 7zip on Windows on the work computer, and with both Explorer and AndroZip on the TF without issue.
Sent from my Milestone using XDA App
Acer Mod of the script
I'm trying to edit the file for use with an Acer Iconia. So far everything works but the modifying of the android.rules file. You see, it doesn't exist on my laptop (mint 11) in the directory the script looks at nor is there an android.rules file in lib/udev/rules.d. While I could probably write a rules file and make it work, I'd like to know where it comes from and maybe discover why it does not exist on my system. Anyone have any ideas? Also - rootblock - if I can get this to work would you object to my posting it in the Iconia forum? Thanks!
UPDATE:
Creating the file worked fine. Any reason to edit the script to check if the file exists and create it if it doe not or am I the exception to the rule? i.e. Would most users have it there in the first place?
3DSammy said:
I have a problem extracting the zip file with Ubuntu 10.10
Do I need an alternate unzip program? If so please specify. I do not run MS products.
Error:
7-Zip 9.04 beta Copyright (c) 1999-2009 Igor Pavlov 2009-05-30
p7zip Version 9.04 (locale=en_CA.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
Processing archive: /tmp/TransformerMount.zip
Extracting TransformerMount.bash Unsupported Method
Sub items Errors: 1
Click to expand...
Click to collapse
Probably a bad download. And you could also try file-roller to open it (I think its installed by default, it is on Debian/Gentoo)
Tortel1210 said:
Probably a bad download
Click to expand...
Click to collapse
I installed the "p7zip" deb, re-downloaded a few times with Firefox and even tried wget. Each time I get the same error result. I was more interested in examining the bash file as I do not have a TF yet. Oh well not a big deal.
3DSammy said:
I have a problem extracting the zip file with Ubuntu 10.10
Do I need an alternate unzip program? If so please specify. I do not run MS products.
Error:
7-Zip 9.04 beta Copyright (c) 1999-2009 Igor Pavlov 2009-05-30
p7zip Version 9.04 (locale=en_CA.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
Processing archive: /tmp/TransformerMount.zip
Extracting TransformerMount.bash Unsupported Method
Sub items Errors: 1
Click to expand...
Click to collapse
Had the same issue with Archive manager - Xarchiver worked, however.
ubuntu & Asus transformer
If anyone having a problem with mtpfs on ubuntu especially version 10.4 ( segfault problem which prevents from mounting the TF), use newer version of mtpfs in the link below.
http://pkgs.org/download/debian-wheezy/debian-main-i386/mtpfs_0.9-3_i386.deb.html.
1. install the package
ubuntu> sudo dpkg -i mtpfs_0.9-3_i386.deb
2. Then run rootblock script if you did not do it.
just wondering, would this have any effect for the adb connections ? My ubuntu cannot find the transformer from adb but could mount it just find
Try This....
anyone having issues try one of the following extensions.. tar.gz would be my first suggestion for those using ubuntu like myself. i also took the liberty of changing the perms to exe on the script before i compressed all these so now all you need to do is
1.download the extension pack i upped
(find the one that works for you)
2.open file
3.execute
*i also tossed the edited script in the pack for anyone who cannot get it to open.
fyi; ark also worked for me to access the file from the op, while my 7z kept erroring out.
​
ari197 said:
just wondering, would this have any effect for the adb connections ? My ubuntu cannot find the transformer from adb but could mount it just find
Click to expand...
Click to collapse
I can access the TF with adb just fine. Just cd to the android-sdk-linux_x86/platform-tools folder containing adb and run:
Code:
./adb devices
or
Code:
./adb shell
if that folder isn't already configured into your path. Works for me anyway.
I've been looking at this and trying to do it with udev instead, since I want the dynamic creation of the folder in /media. Mounting works great, but removing doesn't. So anyone with knowledge of udev rules is more than welcome to give me some hints. Here's the rules so far:
Code:
See below...
The command run when removing works if I enter it as root in a terminal, so it seems to me that it's either not run when removing or it's failing somehow when run from udev. Edit: I've figured out that it's not run at all. Looking into it...
Also, hint for those who follow the manual instructions you could also get the necessary permissions through Users and Groups instead of editing the groups file. You still have to edit /etc/fuse.conf to allow other though.
These are instructions for automatically mounting and unmounting your pad (not keyboard!). This will create (when plugged in and detected) and remove (when unplugged) the Transformer directory under /media, so that the experience is more in line with other USB devices.
For those of you who already have run the script in the first post, you need to do some cleanup. Edit /etc/fstab and /etc/udev/rules.d/51-android.rules and remove the lines which the script created. Which lines in fstab should be straight forward, and in 51-android.rules look for rows that either have no idVendor set or has it set to 0b05. If unsure, post here FIRST before making changes!
This is the content of /etc/udev/rules.d/51-android.rules:
Code:
ACTION=="add", SUBSYSTEM=="usb", ENV{ID_MODEL}=="MTP", ENV{ID_MODEL_ID}=="4e0f", MODE="0666", RUN+="/bin/bash -c 'mkdir -p /media/Transformer && mtpfs /media/Transformer -o allow_other'"
ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_MODEL}=="MTP", ENV{ID_MODEL_ID}=="4e0f", RUN+="/bin/bash -c 'fusermount -u /media/Transformer && rmdir /media/Transformer'"
If you have other Android devices you may or may not have other lines here too. If so, just add these two lines to the end of the file. My Transformer is bought in Sweden so if things don't work for you, maybe there's another idProduct/ID_MODEL_ID out there? Check with lsusb when your pad is plugged in, the vendor (xxxx) and product (yyyy) ID is [xxxx:yyyy] on the line that says ASUSTek Computer Inc. For my pad, the productID/ID_MODEL_ID is 4e0f.
You need to uncomment allow_other in /etc/fuse.conf and add your user to the fuse group (preferably via Users and Groups) apart from adding the above two lines to your 51-android.rules:
Start Users and Groups, choose your user and press Advanced settings. Under the tab User Privileges you should mark Mount user-space filesystems (FUSE).
Open and edit /etc/fuse.conf (see below on how to use nano). Uncomment user_allow_other in the end (remove the # at the beginning of the line).
After this you should reboot your computer. This will have two effects: The udev rules will be reloaded so the changes apply, and your user will have the necessary privileges granted.
Now you can try to plug in your pad and see if it shows up under /media. Give it some time, it takes a while. (Approx. 30 seconds for me.)
A note on editing files from the terminal window
When editing files from the terminal I always use nano. The command is (if opening a file that requires super user rights):
sudo nano [path-to-file]
The editing is straightforward, works just like any other text editor. When you're finished, press Ctrl+X (Exit) and answer the question with Y (if your system is in english that is) if you want to overwrite the earlier file.
Problems?
If you have ADB activated you could try rmbell's udev rules. This removes the match ID_MODEL == MTP and changes the productID to 4e1f. The productID changes depending on what functions are activated, as discussed in this post by ritterkeks. If you want the pad to be mounted with and without ADB activated, you can add all four rules.
If the udev rules doesn't work, run this command in the terminal and see what happens when you plug the pad in:
udevadm monitor --property --udev
Exit with Ctrl+C. Are the values the same as in the udev rules you're using? If not, change accordingly or deactivate some function which has made the productID change.
"unable to mount location" error
I'm getting an error that reads "Unable to mount location"
Then:
fusermount: failed to open /etc/fuse.conf: Permission denied
fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf
I'm a monkey in a spaceship when it comes to some of this stuff Any idea what I should do (in layman's terms)?
All help appreciated!
I'm not sure if your problem is from the script in the first post or my instructions. But as the message says you need to edit fuse.conf. Also, you need to be a member of the FUSE group.
Open and edit fuse.conf with this command in a terminal:
sudo nano /etc/fuse.conf
Uncomment (remove the #) user_allow_other in the end, exit with Ctrl+X and save with Y.
Start Users and Groups, choose your user and press Advanced settings. Under the tab User Privileges you should mark Mount user-space filesystems (FUSE). I believe that you need to reboot after this change, otherwise the necessary privileges hasn't kicked in.
Try it and let me know

Linux Working on Android

(I'm reposting this under a different title so web searches will bring it up)
I can get Ubuntu 11.04, 11.10 & Debian 6 to mount repeatedly in all sorts of ui updatable configurations using this information:
http://www.nerd65536.com/2011/07/ins...version-2.html
It's a friggin Christmas Miracle! Can't tell you how much time I've wasted working this out, and it all boils down to the sh and run scripts.
So, without further ado, here goes.
!!Make sure you're rooted!!
!!The quotes just tell you what to type. Don't type them!!
1.
Download one of the three builds on the website listed above (or build your own, it should work fine). Extract it from tar.bz2, they should all extract to a linux file, this includes the necessary scripts. Put it on the sd-card on your phone.
2.
Download the new scripts that (Nerd) listed found here: http://ohm.nerd65536.com/android-lin...latest.tar.bz2
And extract them. You'll have another file that says linux. Open it, take the three files inside (install.sh, root-scripts & scripts) and paste them in the linux folder you moved to your sd-card. They will overwrite the ones currently there. These scripts work for sgs4g, the originals did not.
3.
Install the latest BusyBox in both xbin and .bin if it's not already installed (must be rooted), Latest is 1.19.3. Make sure Outside Sources and USB debugging are both enabled in your settings menu. Open your Superuser App and update binaries.
4.
Download a terminal client, like Better Terminal Emulator or Android Terminal Emulator. I use the first. The terminal needs to run the commands as root, especially the linux vnc command as it didn't want to work for me no matter if I started by typing su. Better Terminal Emulator has a check box to always start in root.
5.
Open up your terminal emulator and type su if you are not rooted there. Then change directory to the linux file on the sd-card. run the sh file there.
Like this:
"su"
"cd /sdcard/linux"
"sh install.sh"
If it works, the resulting dialog in terminal won't throw up any problems.
6.
Get back to / on sd by typing in terminal:
"cd /"
You should then have a: / # prompt, which means you are still rooted.
Enter:
"linux"
Which should result in a: [email protected]:/#
This means Linux is running. Congratulations. It should continue to run unless you shut down your phone.
7.
Download a VNC client, like Android VNC Viewer (free) or Remote VNC Pro, which I use. Add a new entry in it, with the following settings:
Host: localhost
Port: 5901
Password: cheesecake
Color: 24-bit
Name: Linux
When that's done save if you can or back out if you can't, and go back to your terminal emulator.
8.
It should still say: [email protected]:/#
If it doesn't, fine, if it does, just go back to root prompt by typing:
"exit"
Which should get you: / #. Then type:
"linux vnc"
Which should run itself and mount the chroot environment. It should tell you your new 'X' desktop is localhost:1, and have a: / # prompt again.
It might also ask you for a password, if so then put whatever password you'll remember in that's longer than 6 characters and verify it. This only happens once.
9.
Go back to your VNC client and if you entered a password in step 8. then edit your listing to your password instead of cheesecake, if not then don't.
Click on the Linux link and BAM! (shameless Emerilism), you're at your Linux desktop which should be running a iceWM desktop interface, which is fast. The LXDE desktop is nicer and if you want that then go into you're terminal and get into the linux shell by typing:
"linux"
And then switch to LXDE by typing:
"apt-get autoremove icewm- lxde+"
Which will run through the removal/ installation, and verify you want to download the <400mb files. Type:
"y"
And give it time to finish. When finished, just go back to your VNC client and hit Linux again, and you will have a nice looking functional desktop, with a cpu load graph on the bottom. I tried using Gnome desktop and Unity 2d, but both of these would install and not fully run with all options. They are heavier and slower, but cool non-the-less. Let me know if anyone has luck with these on Android.
Notes-
You only have to type "linux vnc" once in terminal to start linux every time you boot your phone. Otherwise, just open your VNC client and click on Linux to use it. Easy!
You will want to update and upgrade your linux after install, do so by typing in terminal:
"apt-get update"
"apt-get upgrade"
Also, you might run across a problem if you try to add-apt-repository, that's because that python command is not present. To use it, enable by typing:
"apt-get install python-software-properties"
Also of note, the downloadable linux builds are sized to about 2.15gig on your sd, which is big enough for most. There is a way to resize them which I tried but it gave me trouble in loading. I will try again and see if I can get it to work.
Here's the link from Dangermouse:
http://www.androidfanatic.com/commun...atid=9&id=1610
Thanks to Nerd65536 for the info, write-up and files. He fixed my problem.
You might want to put quote or code tags around all the commands to make them easier to see and read, but good guide! I'll try it out soon since I haven't gotten any linux build to run on my phone in a good while.
Thanks for the post!
I wrote the post noob-style to make it easy for beginners to follow, as I've had to search and test forever to find information that works.
Let me know if you have any problems, I'd be happy to assist. Don't expect you'll have any issues with your knowledge of the os. It works pretty well on the Android system, fun to use.
wasn't this posted ages ago?
No, it's a bleed over from a question post I made under Q&A a week or so ago. I threaded this because I had such a hard time finding a thread with working steps for the Galaxy S under google search. There's not that much new from this post http://www.nerd65536.com/2011/07/in...showComment=1323566336074#c553594301247543088 by Nerd65536 (which took me forever to find and was the only one that worked). Other than that, just a few of my own thoughts and hints on the process.
krylon360 said:
wasn't this posted ages ago?
Click to expand...
Click to collapse
meant to quote not thanks, but anyways, to answer.
There has been a few times this has been posted, but its been many months and this seems like the first the issues have been sorted.
Sent from my SGH-T959V using Tapatalk
Ok, a little more use of Linux builds on my phone and I'm starting to understand why it does or does not work.
Certain kernel builds seem to work well, others not at all. Most of the kernel's I've tried have been problematic, and trying to install the .sh file will fail.
When you install your new kernel (or on your existing one) you need to open your Superuser app which should be there if your phone is rooted. There is a button to update binaries, and they need to be updated. Some builds don't seem to let this work easily and give failure notifications.
Make sure Outside Sources is enabled and USB debugging is too, both are in the settings menu.
Use BusyBox installer to install in both the .bin and .xbin directories, this will not cause any conflicts (or hasn't yet . If this gives you an error, and it will if Superuser did, then either usb debugging has not been selected or the kernel is not playing nice.
Ok, so this kernel by RaverX3X will work for linux, I'm on it now:
http://forum.xda-developers.com/showthread.php?t=1305145
(Thanks for this)
Oh yeah, and Back|Track5 Linux is working too
Fixing the packet injection for the Broadcom now.
sconsylman said:
Oh yeah, and Back|Track5 Linux is working too
Fixing the packet injection for the Broadcom now.
Click to expand...
Click to collapse
. Keep us posted on that. Should be pretty handy.
Wait. why do we need LInux to run on our phone?
Can someone explain?
Android doesn't come with most of what this has:
http://www.backtrack-linux.org/
I know, but why do we need it?
Enlighten me
airfluip1 said:
Wait. why do we need LInux to run on our phone?
Can someone explain?
Click to expand...
Click to collapse
I've seen this comment on every single thread online regarding Linux on Android. It's a joke right?

ICS vmware image

you have all probably heard of android-x86.org, but i had some problems with their images.
i need something to run honeycomb of ice cream sandwich for my project and i cannot afford a tablet. so i thought i might try running x86 image in vmware because android emulator is just painfully slow.
as said i had some problems with default images, not booting, stuck etc...
then i found this working vmware image on some torrent tracker(i suppose there is nothing illegal, since it's free software) and cleaned it up a bit.
and i thought i would share.
warning big download, ~800mb
http://uploading.com/files/af251f69/ics_vmware.zip/
use "netcfg" command in terminal emulator to obtain ip address and then "adb connect ip_address" in your terminal to connect. you can then use it as if connected by usb-adb commands and eclipse debugging works like a charm
tl;dr
clean vmware image of ICS for developing
heyya
google sent me here because i searched ics for vmware
i once had a working version (without sound) but me stupid deleted it..
it was lot of reading to get it working , didnt want to do it again, so i was looking for a working one..
your version seemd nice, also torrent takes like forever
only one problem, cant get online with it...
Code:
# su
# netcfg eth0 up
# netcfg eth0 dhcp
action 'dhcp' failed (timer expired)
Code:
# dhcpcd
Android requires Interface
also added
Code:
ethernet0.virtualDev = "vlance"
to the vmx file
no luck, any suggestions?
Well this is interesting, thanks for the share!

SSHFS on Android - Extend Android features with Debian KIT

HI,
I would like to share the way how I mounted my NAS folders with SSHFS based on Debian KIT.
SSH-FS is ssh based mountable file system. If you have SSH account you can mount and access that server like a windows share.
Forewords:
Debian KIT is free! and it is _NOT_ yet another chroot debian!
This method is an alternative and FREE way to have SSHFS vs to the unique native Android SSHFS app (which is unfortunately paid. )
It is fully integrated with Androitd! Less ram resources and faster than chroot. Debian libraries are binded to Android.
So you enjoy Android and Debian advantages all together.
Steps to have SSHFS:
Set up Debian on your Android! Go to Debian Kit page and set up Debian!
Run Debian. Open Terminal Emulator and type
Code:
$deb
$sudo su
Set up SSHFS
Code:
#apt-get update
#apt-get install sshfs
Mount SSHFS
Code:
#mkdir /mnt/nas
#sshfs [email protected]:/ /mnt/nas/ -o allow_other
Checking mount:
Code:
#mount
[email protected]:/ on /mnt/nas type fuse.sshfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,max_read=65536)
Then SSHFS will ask your root password and that all!
If no error then its ok, You Mounted!!
You done! :laugh:
Go back to Android and use your mounted share with any Android file manager under /mnt/nas (or where ever you mounted.)
Finishing all, just
Code:
#deb u
(It will umount and close debian session.)
For more comfort, set up password-less login to ssh server with authorized_keys.
#ssh-keygen
#cat ~/.ssh/id_rsa.pub >> /mnt/nas/root/.ssh/authorized_keys
#chmod 600 /mnt/nas/root/.ssh/authorized_keys
After above steps your ssh server wont ask root password from this site to that site logging in with root user.
Press "Thanks" button if its helps for you.
Regards
Robert
Convert docs to pdf with Openoffice within Debian Kit
Another great usage example of Debian kit:
Use your installed Open/Libre/Star/Office to convert your document to pdf:
#!/bin/bash
time soffice --headless --convert-to pdf $1
exit
Check your doc converted to pdf after a minute.
Thanks for the awesome guide. Any idea about mounting virtual drives from my Ubuntu?
whu007 said:
Thanks for the awesome guide. Any idea about mounting virtual drives from my Ubuntu?
Click to expand...
Click to collapse
Hi,
thanks.
>mounting virtual drive...
Can you please describe a little, what is the scenario?
Regards Robert
SSHFS problems @ Android 4.2.2 Nexus 10 - apps cannot see mounted content
Hi,
Robert, thanks for the guide to sshfs with debian-kit. I've been longing to get sshfs on my Android for three years
My problem is that Android Apps cannot see the mounted content, which is what I desire.
I have managed to get debian-kit + sshfs installed, and my nas mounted using sshfs. I can browse the files on the nas from the mounted directory in the ConnectBot Shell, but I cannot see the mounted directory through android apps (or adb shell), eg TotalCommander, OI FileManager, MX video player. I have tried the TotalCommander Android app, and tried telling TotalCommander to always use root (in case user made a difference).
I mounted the nas using ConnectBot local shell with the command:
> sshfs [email protected]:/mnt/user/ /mnt/tower/ -o allow_other
I can see the /mnt/tower content both with the ConnectBot shell as normal user ([email protected]), as root, and with the shell I get after running 'deb' from a ConnectBot shell.
If I remote login from PC to an SSHDroid server on the Android, then I cannot see the mounted content of /mnt/tower (even as root). Neither can Android apps. If I install the openssh-server in debian and stop the SSHDroid server, then I can see the /mnt/tower content from my ssh login from PC.
Best Alex
I've an issue, after mounting the nas folder I try to add it into the Poweramp library, it recognizes it (I've mounted into /sdcard/nas) but none of the mp3 is added to library
thank you
Thanks for the great guide!
Now how can you unmount the SSHFS directory?
The normal way is with:
Code:
fusermount -u /mnt/share
However this causes an error:
Code:
fusermount: failed to bind parent to /: Invalid argument
Does that happen for everyone or is it just me?
Restarting the Debian system with
Code:
deb -u
also did not cause the SSHFS directory to unmount.
Sent from my Nexus 4 using xda app-developers app
Hi
Just try umount /mnt/mountpoint.
Robert
Sent from my GT-N8013 using xda app-developers app
Thank you for this guide! Unfortunately this solution isn't quite what I'm looking for. I found that in order to get my apps to recognize the mounted share I have to first run the app, then mount the share. Also, if the app gets killed I have to unmount the share and then remount it in order for the share to become visible again from within the android app. However, the share remains mounted when viewed from within the debian shell or adb.
Anyone have an idea why this might be happening?
Debian kit not working on S4
Hey, there. I have a rooted Samsung Galaxy S4 (VZW) running stock.
I get this error after all MD5 sums pass:
ash: id: Permission denied
Can someone please assist me or point me in the right direction?
aikeru said:
Hey, there. I have a rooted Samsung Galaxy S4 (VZW) running stock.
I get this error after all MD5 sums pass:
ash: id: Permission denied
Can someone please assist me or point me in the right direction?
Click to expand...
Click to collapse
did you get this right after you started installing? after you used the 'sh' command?
Sounds to me like you might not have root in android, or you didn't click the accept button when the app asked for root permissions.
---------- Post added at 10:46 AM ---------- Previous post was at 10:44 AM ----------
m2xtreme said:
Thank you for this guide! Unfortunately this solution isn't quite what I'm looking for. I found that in order to get my apps to recognize the mounted share I have to first run the app, then mount the share. Also, if the app gets killed I have to unmount the share and then remount it in order for the share to become visible again from within the android app. However, the share remains mounted when viewed from within the debian shell or adb.
Anyone have an idea why this might be happening?
Click to expand...
Click to collapse
I don't think there is much you can do to get around always having to have deb environment open. One way you might be able to kill a few steps is use the 'autofs' package in debian to automatically mount the sshfs share when you login to the debian envorinment.
I haven't tried autofs yet, but it's on my todo list, i'll report back with my findings.
---------- Post added at 11:19 AM ---------- Previous post was at 10:46 AM ----------
chrisonline1991 said:
I haven't tried autofs yet, but it's on my todo list, i'll report back with my findings.
Click to expand...
Click to collapse
So i had some problems running autofs and i can't seem to find the problem, maybe someone more knowledgeable can help. When i install autofs the output is below, but it looks like it did install fine.
Code:
Starting automount: Error: failed to load autofs4 module.
invoke-rc.d: initscript autofs, action "start" failed.
dpkg: error processing autofs5 (--configure):
subprocess installed post-installation script returned error exit status 1
configured to not write apport reports
Errors were encountered while processing:
nfs-common
autofs5
E: Sub-process /usr/bin/dpkg returned an error code (1)
When i run
Code:
$ sudo dpkg --configure -a
it returns
Code:
Setting up nfs-common (1:1.2.2-4squeeze2) ...
insserv: warning: script '99CleanTWEAKS' missing LSB tags and overrides
Starting NFS common utilities: statd failed!
invoke-rc.d: initscript nfs-common, action "start" failed.
dpkg: error processing nfs-common (--configure):
subprocess installed post-installation script returned error exit status 1
Setting up autofs5 (5.0.4-3.2) ...
insserv: warning: script '99CleanTWEAKS' missing LSB tags and overrides
Starting automount: Error: failed to load autofs4 module.
invoke-rc.d: initscript autofs, action "start" failed.
dpkg: error processing autofs5 (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
nfs-common
autofs5
I found this bug report which points to this bug report that says something about the newest autofs using a new upstart feature called 'wait-for-state' and something is going wrong with it. Looks like they added the bugfix to Ubuntu Precise. And looks like that fix might now have solved the problem as another bug was opened, but i'm not sure if it's related to this. I'm a little burnt out on this at the moment.
Hope this helps someone. If anyone else has some suggestions let me know and i'll try them out.
Hi
I have been trying to get something like this working for awhile...
Any chance by using debian kit this can automatically run at startup and mount my PC to my Android device?
my android apps just see an empty dir. In my terminal the sshfs command works as expected. When I cd into the mounted directory I can see its contents, android apps just see an empty dir.
Has any one managed to solve this?
late-2017 update
bisbal said:
my android apps just see an empty dir. In my terminal the sshfs command works as expected. When I cd into the mounted directory I can see its contents, android apps just see an empty dir.
Has any one managed to solve this?
Click to expand...
Click to collapse
I ran into a thread on stack exchange that says to mount the sshfs-accessed shares to subdirectories of /data/media/0/. I've yet to try it myself, but it sounds plausible.
(https://android.stackexchange[dot]com/questions/50246/mount-inside-subdir-of-storage-emulated-0)
I was initially reluctant to raise an old topic, but I think this is important; being able to mount a remote data store to your local filesystem is crucial to the mobile environment as the tendency of well-known phone companies like Samsung and Apple in removing the external sd card feature (even my OnePlus 3 doesn't have it). I did consider the Nextbit Robin as my next phone for the smart data storage design, but opted out because of the aging hardware.

Categories

Resources