[MODULES]Tun.ko(OpenVPN) and CiFS.ko - Samsung Galaxy R i9103

If u dont know what CIFS and TUN are,u probably don't need it
Instructions:
1)Extract the modules inside the zip to,say, /system/lib/modules
2)Fire up terminal and type this command
Code:
insmod /system/lib/modules/tun.ko
insmod /system/lib/modules/cifs.ko
DONE!
Note:If u use above method ,u need to execute above commands on every reboot!
if u want to avoid that hassle,use an app on XDA called "MODULE LOADER"(Google it/Use Search) and bamm..done!
Downloads Tun.ko and CIFS.ko from here- https://github.com/sakindia123/GalaxyR-i9103-Kernel/downloads
Regards

If i use ur cranium kernel, the CIFS and TUN are already preloaded right?
sakindia123 said:
If u dont know what CIFS and TUN are,u probably don't need it
Instructions:
1)Extract the modules inside the zip to,say, /system/lib/modules
2)Fire up terminal and type this command
Code:
insmod /system/lib/modules/tun.ko
insmod /system/lib/modules/cifs.ko
DONE!
Note:If u use above method ,u need to execute above commands on every reboot!
if u want to avoid that hassle,use an app on XDA called "MODULE LOADER"(Google it/Use Search) and bamm..done!
Downloads Tun.ko and CIFS.ko from here- https://github.com/sakindia123/GalaxyR-i9103-Kernel/downloads
Regards
Click to expand...
Click to collapse

ishafiq said:
If i use ur cranium kernel, the CIFS and TUN are already preloaded right?
Click to expand...
Click to collapse
Tun is present
Cifs is enabled,but not present.U have to load it

Great work brother

I cant find tun.ko in the link given...please help

Nc_553 said:
I cant find tun.ko in the link given...please help
Click to expand...
Click to collapse
Github removed it.I will put it up soon

Oh...thank you so much Really appreciate it

Nc_553 said:
Oh...thank you so much Really appreciate it
Click to expand...
Click to collapse
Tun.ko is up

Tun.ko is not found
Sent from my GT-I9103 using XDA

Related

[KERNEL] CIFS + UTF8 NLS support for the official HTC Desire Froyo kernel

with the release of the source code for the bravo kernel this has become redundant
to be able to directly access my stuff on samba shares i made a _patch_ for the cifs code in 2.6.32.15 and built cifs.ko and nls_utf8.ko with arm-eabi-4.4.0
i thought i'd share them here in case it was of use to anyone else
this is how i installed them:
Code:
(boot into recovery mode)
$ adb shell mount /system
$ adb push cifs.ko /system/lib/modules
$ adb push nls_utf8.ko /system/lib/modules
$ adb shell chmod 644 /system/lib/modules/*.ko
$ adb shell "cd /system/lib/modules; ln -s . 2.6.32.15-gf9c0527"
$ adb shell umount /system
(reboot)
this is how i tested them:
Code:
sh-3.2$ su
sh-3.2# modprobe nls_utf8
sh-3.2# modprobe cifs
sh-3.2# busybox mount -t cifs -o user=<username>,password=<password>,uid=1000,gid=1015,file_mode=0775,dir_mode=0775,iocharset=utf8,nodfs //10.0.1.2/public2 /sdcard/smb/public2
(1015 is the gid of 'sdcard_rw')
--
cifs_bravo_2.6.32.15-gf9c0527.zip
cifs_bravo_2.6.32.15-gd96f2c0.zip
Hey cheers for this will try it out
Sent from my C64
just tried
init_module 'cifs.ko' failed (Exec format error)
epyon1873 said:
init_module 'cifs.ko' failed (Exec format error)
Click to expand...
Click to collapse
as stated above it works with the stock htc kernel, which is 2.6.32.15-gf9c0527
check the output of uname -r
snq- said:
as stated above it works with the stock htc kernel, which is 2.6.32.15-gf9c0527
check the output of uname -r
Click to expand...
Click to collapse
Thx find htc kernel is 2.6.32.15-g1fc4045 @ NexTSense Rom orz
epyon1873 said:
Thx find htc kernel is 2.6.32.15-g1fc4045 @ NexTSense Rom
Click to expand...
Click to collapse
afaik the current nextsense comes with Myshkinbob's cifs module (although not with the latest one) - it's module version id was simply patched to suppress the version mismatch error message you got
here is mine if still interested:
(be sure to type "ln -s . 2.6.32.15-g1fc4045" instead of "ln -s . 2.6.32.15-gf9c0527" when installing)
--
cifs_bravo_2.6.32.15-g1fc4045.zip
Thx~! go to try it.
Greetings,
I tried using your patch on the source for the supersonic (evo) and it went in and compiled perfectly, i was able to do an insmod and loaded the driver fine, but when i go to do a mount the phone crashes.
any ideas?
(i have tried both the arm-eabi-4.4.0 and the arm-2010q1 toolchains)
Thanks!!
adambot said:
I tried using your patch on the source for the supersonic (evo) and it went in and compiled perfectly, i was able to do an insmod and loaded the driver fine, but when i go to do a mount the phone crashes.
any ideas?
(i have tried both the arm-eabi-4.4.0 and the arm-2010q1 toolchains)
Click to expand...
Click to collapse
the patch does not cleanly apply to supersonic-2.6.32.15-g746f4f0, as it is for vanilla 2.6.32.15
please overwrite fs/cifs with the vanilla sources before you apply it
just tried and was able to build the very same .ko published in the first post (except for the buildstamp of course):
pulled the supersonic kernel source from developer.htc.com
overwrote fs/cifs/* with vanilla
pulled & applied the patch from pastebin
pulled .config from my phone
in menuconfig
set the localversion (general setup)
selected cifs + nls_utf8 to be built as module
did _not_ touch the debug options already set
did 'make modules'
stripped the modules with arm-eabi-strip --strip-debug
insmod worked, mount worked, browsing the share worked
if you get crashes, check /proc/last_kmsg after reboot
snq- said:
the patch does not cleanly apply to supersonic-2.6.32.15-g746f4f0, as it is for vanilla 2.6.32.15
please overwrite fs/cifs with the vanilla sources before you apply it
Click to expand...
Click to collapse
What is considered "vanilla sources"?
I used git and pulled the whole android repo but am not finding the vanilla sources there...
do you mean the vanilla linux sources??
[edit]
i tried the cifs files from the vanilla linux source (same version) but the phone still crashes (even after the debug strip)
Should i try to use a different config (rather than the one from the supersonic templates?)
Do you have an evo that you tested this on?
Thanks again!!!
[/edit]
adambot said:
do you mean the vanilla linux sources??
Click to expand...
Click to collapse
sorry if i wasn't clear enough. linux-2.6.32.15.tar.bz2 (kernel.org)
adambot said:
Should i try to use a different config
Click to expand...
Click to collapse
i pulled the config from the device ($adb shell zcat /proc/config.gz > .config)
i do not own an evo, the only reason for me to use evo/incredible sources is that htc haven't released bravo-froyo kernel sources yet
adambot, please let me know if this works for you
--
cifs_supersonic_2.6.32.15-g746f4f0.zip
snq- said:
adambot, please let me know if this works for you
Click to expand...
Click to collapse
WOW!!! That worked PERFECTLY!!!!!
Thanks SO MUCH!!!
(now i just have to figure out why mine wasn't working... I'll try again with your steps and compare the good one to mine with diff)
if you don't mind just to recap:
get linux vanilla kernel source
get supersonic kernel source
replace supersonic fs/cifs with vanilla
edit Makefile with extra EXTRAVERSION info
get .config from running device
make CROSS_COMPILE=CROSS_COMPILE=arm-eabi-4.4.0/bin/arm-eabi- oldconfig (accept defaults)
edit .config and make cifs and nls_utf8 modules
make CROSS_COMPILE=arm-eabi-4.4.0/bin/arm-eabi- modules
arm-eabi-4.4.0/bin/arm-eabi-strip fs/cifs/cifs.ko and fs/nls/nls_utf8.ko
adambot said:
WOW!!! That worked PERFECTLY!!!!! Thanks SO MUCH!!!
Click to expand...
Click to collapse
no problem, glad it worked out
adambot said:
if you don't mind just to recap: ...
Click to expand...
Click to collapse
- i don't see the step where you applied the patch
- i didn't edit the makefile per hand
- i didn't edit .config per hand
- as i don't own an evo, instead of pulling the config from the device i did a 'make supersonic_defconfig' before 'make menuconfig'
snq- said:
no problem, glad it worked out
- i don't see the step where you applied the patch
- i didn't edit the makefile per hand
- i didn't edit .config per hand
- as i don't own an evo, instead of pulling the config from the device i did a 'make supersonic_defconfig' before 'make menuconfig'
Click to expand...
Click to collapse
I got it to work FINALLY!!! I will be posting the step by step (copy/paste) directions in the evo section. Do you mind if i post the patch here as an attachment? also -- how do you want credit -- do snq- or do a different name?
thanks again!!
Adam
adambot said:
Do you mind if i post the patch here as an attachment?
Click to expand...
Click to collapse
feel free to use it for whatever you want
you might however want to post the patch directly applicable to the supersonic source (attached)
thanks for crediting me, using the nick is fine
--
supersonic-2.6.32.15-g746f4f0_cifs.patch
snq- said:
feel free to use it for whatever you want
you might however want to post the patch directly applicable to the supersonic source (attached)
thanks for crediting me, using the nick is fine
Click to expand...
Click to collapse
What did you do differently? (or what is the difference between cifs-supersonic and cifs-vanilla) -- I would look myself, but i'm not the best at coding... (that's what i get for being a sysadmin and not a dev -- but i can script until the cows come home )
Help me
I need nls_utf8.ko for 2.6.34 kernel
I would like cifs module for 2.6.32.15-g6a358a9 kernel, is it posible?
Thanks!
any for 2.6.32.15-ge2fb08e?

CIFS Manager on CM 7

Here is what I've tried:
1. Settings -> about tablet to get kernel version: 2.6.32.39-cyanogenmod [email protected] #1
2. Go to http://droidbasement.com/db-blog/ and find the kernel for gTab. There are several one, I just picked one with Gingerbread and downloaded
lib-2632.39_gb.tar.gz
Unpack on put cifs.ko under /system/lib/modules
3. Install CIFS Manger
4. Run CIFS Manager, add the share
5. If there is problem mount it in rw mode, use option "rw,noperm" (thanks, rajeevvp)
The share is successfully mounted.
Thanks!
redhonker said:
Here is what I've tried:
1. Settings -> about tablet to get kernel version: 2.6.32.39-cyanogenmod [email protected] #1
2. Go to http://droidbasement.com/db-blog/ and find the kernel for gTab. There are several one, I just picked one with Gingerbread and downloaded
lib-2632.39_gb.tar.gz
Unpack on put cifs.ko under /system/lib/modules
3. Install CIFS Manger
4. Run CIFS Manager, add the share
The share is successfully mounted.
The only issue I have is that it can't seem to mount a share in read-write mode even though it's shared with write permission. Does anyone know how to fix it?
Thanks!
Click to expand...
Click to collapse
After pushing the cifs module to the tablet you need to add an chmod and then you also need a insmod line every time you want to use it (at least after following a reboot).
Go back and read the instructions on droid basement. He has the details of the steps following loading the cifs.ko.
Good luck.
Sent from my ADR6300 using Tapatalk
CIFS manager already loads the module fine. Are you saying in order to mount in rw mode, it needs permission on cifs.ko file?
redhonker said:
CIFS manager already loads the module fine. Are you saying in order to mount in rw mode, it needs permission on cifs.ko file?
Click to expand...
Click to collapse
No, you don't.
CIFS Manager should have an option to do a read-write mount.
Otherwise, you can try changing the mounting back into read-write mode:
Code:
$ su
# /system/xbin/mount -w -o remount /CIFS/PATH
Replace, /CIFS/PATH with the directory you provided to CIFS Manager.
Also, understand my cautions, as mentioned in the other thread, about mixing and matching kernels and kernel modules. I would suggest that you also install the kernel that goes with the module file you downloaded--ie. get the one in the same blog post.
Appreciate your advice on not mixing kernel and modules. I could not tell which exact build CM 7 uses so I had to pick one. When I get more experienced with Android, I may start changing kernels.
Doesn't CIFS uses rw mount by default? If not, what's the option? rw? I've tried that as well.
If I change the system file to mount it by default, I'd have to save the password on the command line, right? Will wireless be ready at that time? And if server or wireless is not ready at the time, I'd need to manually remount with some tool, do I?
Thanks!
redhonker said:
Appreciate your advice on not mixing kernel and modules. I could not tell which exact build CM 7 uses so I had to pick one. When I get more experienced with Android, I may start changing kernels.
Doesn't CIFS uses rw mount by default? If not, what's the option? rw? I've tried that as well.
If I change the system file to mount it by default, I'd have to save the password on the command line, right? Will wireless be ready at that time? And if server or wireless is not ready at the time, I'd need to manually remount with some tool, do I?
Thanks!
Click to expand...
Click to collapse
Cm7 includes pershoots kernel. The gb one.
Sent from my ADR6300 using Tapatalk
not to confuse issue with whatop is having but I wonder if anyone has run into a problem with cifs in which it doesn't include all of the folders from your windows shares.
redhonker said:
Here is what I've tried:
1. Settings -> about tablet to get kernel version: 2.6.32.39-cyanogenmod [email protected] #1
2. Go to http://droidbasement.com/db-blog/ and find the kernel for gTab. There are several one, I just picked one with Gingerbread and downloaded
lib-2632.39_gb.tar.gz
Unpack on put cifs.ko under /system/lib/modules
3. Install CIFS Manger
4. Run CIFS Manager, add the share
The share is successfully mounted.
The only issue I have is that it can't seem to mount a share in read-write mode even though it's shared with write permission. Does anyone know how to fix it?
Thanks!
Click to expand...
Click to collapse
OP,
See modified instructions from your first post. This should get you up and running.
1. Settings -> about tablet to get kernel version: 2.6.32.39-cyanogenmod [email protected] #1
2. Go to http://droidbasement.com/db-blog/ and find the kernel for gTab. There are several one, I just picked one with Gingerbread and downloaded
lib-2632.39_gb.tar.gz
Unpack on put cifs.ko under /system/lib/modules/2.6.32.39-cyanogenmod/
From ADB or terminal emulator (enable SU and do not need the adb part)
adb remount
adb shell chmod 644 /system/lib/modules/2.6.32.39-cyanogenmod/MODULE.ko
adb shell insmod /system/lib/modules/2.6.32.39-cyanogenmod/MODULE.ko
3. Install CIFS Manger
4. Run CIFS Manager, add the share
I wanted to help you with this earlier but been sidetracked. I hope this helps
redhonker said:
Doesn't CIFS uses rw mount by default? If not, what's the option? rw?
Click to expand...
Click to collapse
Yes, by default it should be mounted read-write. If, for some reason, it gets mounted read-only, you can use the remount command I gave earlier to make the mount read-write again.
But, there could be other reasons for you not being able to write to the share directory. Permission and UID/GID mismatches could be one reason. Try adding the "noperm" flag to tell Linux not to check permissions locally ie. do the permission checking only on Windows:
Code:
/system/xbin/mount -t cifs //SERVER-IP-ADDRESS/SHARENAME /some/path -o rw,noperm,domain=DOMAIN,username=USER.NAME,password=PASSWORD
If I change the system file to mount it by default, I'd have to save the password on the command line, right? Will wireless be ready at that time? And if server or wireless is not ready at the time, I'd need to manually remount with some tool, do I?
Click to expand...
Click to collapse
Which system file? If you mean /etc/fstab, then that file does not exist on Android.
CIFS Manager (I haven't used it) should have an option to let you store the password securely. On normal Unix systems, the mount command accepts a "credentials=/some/file.txt" option which can be used in place of the "domain=XXX,username=YYY" options when mounting. Unfortunately, the mount command on the gTablet does not understand that option--I checked: you have to do it the old-fashioned way. You can't even skip the "password=" bit. On Unix, if you skip that, the mount command will prompt you for the password.
The solution, if you don't use CIFS Manager, is to place all the commands--the insmod and the mount--into a shell-script and give it 700 permissions. That way only the owner can see what's inside it and you can run the script after the wireless has come up.
noperm does the trick. Will update first post.
Oozura said:
From ADB or terminal emulator (enable SU and do not need the adb part)
adb remount
adb shell chmod 644 /system/lib/modules/2.6.32.39-cyanogenmod/MODULE.ko
adb shell insmod /system/lib/modules/2.6.32.39-cyanogenmod/MODULE.ko
[/B]
Click to expand...
Click to collapse
Could you explain the exact process for doing this from a terminal emulator. My main hold up is the /system directory being read only, so I can't copy the module (CIFS.KO in this case) to that directory.
h3llphyre said:
Could you explain the exact process for doing this from a terminal emulator. My main hold up is the /system directory being read only, so I can't copy the module (CIFS.KO in this case) to that directory.
Click to expand...
Click to collapse
You don't need to put cifs.ko into /system. If CIFS Manager asks for the path to a cifs.ko file, then you can put the file anywhere you want.
I have a new problem. There seems to be a limit on the file size. I have a 3 GB file shows up as 28 KB. Does anyone have success with large file? Thanks
I tried your instruction... there are two problems...(my rom is also cm7.0.3)
1. I can't put the cifs.ko into /system/lib/modules~ it seems that it is forbid to copy some files into system folder...
2. so I tried to put the cifs.ko in the /mnt/cifs.ko, and made the related setting in cifs manager(path to cifs.ko), then i mounted, but it showed that:"no route to host"
but i am sure that my ip and password is correct... so is there anyone know how to solve this problem?
I used Root Explorer. I am sure there are other means to put it under /system. I am not sure if that's necessary
savage0 said:
I tried your instruction... there are two problems...(my rom is also cm7.0.3)
1. I can't put the cifs.ko into /system/lib/modules~ it seems that it is forbid to copy some files into system folder...
2. so I tried to put the cifs.ko in the /mnt/cifs.ko, and made the related setting in cifs manager(path to cifs.ko), then i mounted, but it showed that:"no route to host"
but i am sure that my ip and password is correct... so is there anyone know how to solve this problem?
Click to expand...
Click to collapse
I literally just went through this today. Download Terminal Emulator (free on the market).
PS: Don't type the '#' sign below.
#su
#/system/xbin/mount -w -o remount /system
#cp /SDCARD/cifs.ko /system/lib/modules/2.6.32.41-cyanogenmod/
#/system/xbin/mount -r -o remount /system
Then, just add the path /system/lib/modules/2.6.32.41-cyanogenmod/ into CIFS Manager. Should be all set.
redhonker said:
I have a new problem. There seems to be a limit on the file size. I have a 3 GB file shows up as 28 KB. Does anyone have success with large file? Thanks
Click to expand...
Click to collapse
File size limits depend on the underlying filesystem.
I tried the following command on an external NTFS formatted USB HDD connected to a Linux desktop mounted on the gTablet at /mnt/usbdisk via CIFS, and had no problems.
Code:
# ls -l /mnt/usbdisk/rvp/bak/hda3.img
-rw-rw-rw- 1 root root 8011422720 Apr 17 2010 /mnt/usbdisk/rvp/bak/hda3.img
# dd if=/mnt/usbdisk/rvp/bak/hda3.img of=/dev/null bs=1M skip=7500
140+1 records in
140+1 records out
147102720 bytes (140.3MB) copied, 150.135761 seconds, 956.8KB/s
The command skips the initial 7.5 GB of a 8,011,422,720 byte file and reads the rest (~140 MB).
rob_z11 said:
not to confuse issue with whatop is having but I wonder if anyone has run into a problem with cifs in which it doesn't include all of the folders from your windows shares.
Click to expand...
Click to collapse
I had the same issue, but I found the guide on abettergeek which helped me fix it. Turns out the problem is that the mount point created by Cifs Manager doesn't have execute permissions.
I don't have enough seniority to post the link, but it's a recent post on abettergeek.com. If someone with enough seniority wants to paste it, some others may find it extremely helpful.
archmcd said:
I had the same issue, but I found the guide on abettergeek which helped me fix it. Turns out the problem is that the mount point created by Cifs Manager doesn't have execute permissions.
I don't have enough seniority to post the link, but it's a recent post on abettergeek.com. If someone with enough seniority wants to paste it, some others may find it extremely helpful.
Click to expand...
Click to collapse
The link I believe you are refering to is here: http://blog.abettergeek.com/hardwar...n-cyanogenmod-7-0-3-on-the-viewsonic-gtablet/
I have the same issue. I haven't tried this fix yet, but I will give it a go.
ByteWrencher
Pls, where I can put "rw,noperm" in cifs manager? I tried in module path as:
/system/lib/modules/slow-work.ko:/system/lib/modules/cifs.ko rw,noperm
And:
/system/lib/modules/slow-work.ko:/system/lib/modules/cifs.ko:rw,noperm
But still don't working as rw.
Ty.

[FOR CHEFS] xpad/cifs/hfs/squashfs/btrfs modules for stock kernel ICS v9.2.1.11

I took a vanilla 2.6.39.4 linux source tree, copied in the .config from /proc from my running ICS v9 build. And compiled it.
After that, turned on CIFS and XPAD support in the config and compiled them as modules.
These modules load fine if I insmod them, and I can confirm that after loading ff_memless and xpad I now have my xbox360 pad working on the home screen (I can move through screens and icons).
edit: Just played a round of Riptide GP, works fine .
edit: I updated the cifs module and included the md4 crypto module, and they now work! I manually 'insmodded' md4.ko and then cifs.ko, and from the command line and / or from cifsmanger I can now mount a share.
As I said, these modules load fine, but in dmesg there is a notion that the version magic isn't perfect yet. So I might make updated ones with proper versionmagic set. But for now it seems to be working.
Might be handy for ROM chefs who are working with the stock ICS kernel for which we have no sources yet.
TUN module is _builtin_ by default on ICS stock kernel, so no need for it anymore.
EDIT v2 zips: I recompiled them with the correct version info, so they give no more warnings when loaded through insmod. I added them to my stock rom to auto-load during boot (created a simple /system/etc/install-recovery.sh) and all seems fine so far.
For voodoo sound to work, is it a simple module which I can get anywhere? I only see 2.6.36 kernel trees on Project Voodoo website
----------------------------------------------------------
hfs @ http://forum.xda-developers.com/showpost.php?p=23018909&postcount=19
squashfs + btrfs @ http://forum.xda-developers.com/showpost.php?p=23019453&postcount=20
good for those complaining about cifs
dipje said:
I took a vanilla 2.6.39.4 linux source tree, copied in the .config from /proc from my running ICS v9 build. And compiled it.
After that, turned on CIFS and XPAD support in the config and compiled them as modules.
These modules load fine if I insmod them, and I can confirm that after loading ff_memless and xpad I now have my xbox360 pad working on the home screen (I can move through screens and icons).
edit: Just played a round of Riptide GP, works fine .
edit: I updated the cifs module and included the md4 crypto module, and they now work! I manually 'insmodded' md4.ko and then cifs.ko, and from the command line and / or from cifsmanger I can now mount a share.
As I said, these modules load fine, but in dmesg there is a notion that the version magic isn't perfect yet. So I might make updated ones with proper versionmagic set. But for now it seems to be working.
Might be handy for ROM chefs who are working with the stock ICS kernel for which we have no sources yet.
TUN module is _builtin_ by default on ICS stock kernel, so no need for it anymore.
For voodoo sound to work, is it a simple module which I can get anywhere? I only see 2.6.36 kernel trees on Project Voodoo website
Click to expand...
Click to collapse
in case you want to try that too because its faster than cifs
nfs support is in the kernel, no additional modules required
to get it working with cifsmanager mountings nfs shares i did the following
(it also works with commandline)
### as su and /system readwrite mounted
### remove symlink to toolbox
rm /system/bin/mount
### and use busybox instead
ln -s /system/xbin/busybox /system/bin/mount
mount options: rw,intr,soft,nolock
the modules are already working.
NFS support is nice for people with linux boxes but most windows users don't have a use for it , that's why they want cifs .
I don't care much for overclocking, so with cifs support + xbox360 support I'm more than happy with rooted stock now . And rom chefs can include the modules in their optimized ROMs until we have proper kernel source
Care to share how to get this loaded into the current ics roms. I have copied to /system/lib/modules and tried to load using mount manager and cifs manager with no luck.
comfort69 said:
Care to share how to get this loaded into the current ics roms. I have copied to /system/lib/modules and tried to load using mount manager and cifs manager with no luck.
Click to expand...
Click to collapse
you can e.g. create a script (like I believe OP did) in /etc/system/install-recovery.sh with
#!/system/bin/sh
insmod cifs.ko
insmod md4.ko
or you can mount it by hand in terminal (with insmod)
or you can simply create init.d script and call it 91modules:
#!/system/bin/sh
sleep 1
insmod /system/lib/modules/cifs.ko
echo "CIFS support activated";
and place it in system/etc/init.d if custom ROM supports init.d support.
comfort69 said:
Care to share how to get this loaded into the current ics roms. I have copied to /system/lib/modules and tried to load using mount manager and cifs manager with no luck.
Click to expand...
Click to collapse
jerry was close. Module auto-loading won't work, so you have to do it by hand.
Through an 'adb shell' or with a terminal emulator app from the market, type the following:
su -
insmod /system/lib/modules/md4.ko
insmod /system/lib/modules/cifs.ko
cifsmanager should work, until you reboot, you'll have to do the lines again.
Creating a file /system/etc/install-recovery.sh will do it auto on boot:
Code:
#!/system/bin/sh
insmod /system/lib/modules/md4.ko
insmod /system/lib/modules/cifs.ko
Make sure to create the file executable (permissions 777 will do ).
I hope rom chefs will use them and make them auto-load at boot until we have the sources from Asus.
edit: What mike said works, IF you have init.d support. Most custom ROMs have this, stock rom has not I believe.
dipje said:
jerry was close. Module auto-loading won't work, so you have to do it by hand.
Through an 'adb shell' or with a terminal emulator app from the market, type the following:
su -
insmod /system/lib/modules/md4.ko
insmod /system/lib/modules/cifs.ko
cifsmanager should work, until you reboot, you'll have to do the lines again.
Creating a file /system/etc/install-recovery.sh will do it auto on boot:
Code:
#!/system/bin/sh
insmod /system/lib/modules/md4.ko
insmod /system/lib/modules/cifs.ko
Make sure to create the file executable (permissions 777 will do ).
I hope rom chefs will use them and make them auto-load at boot until we have the sources from Asus.
Click to expand...
Click to collapse
Keep in mind that install-recovery.sh is executed from ramdisk (init.ventana.rc or init.rc, don't remember now) and some chefs (including me) removed that execution line. So much easier to add init.d script I think. Just a suggestion
EDIT:
yeah, for those on stock ROMs install-recovery.sh method is good, for those using custom ROMs it's better to use init.d
I tried to get it to run manually using terminal emulator and get
failed file exists
Sent from my Transformer TF101 using Tapatalk
comfort69 said:
I tried to get it to run manually using terminal emulator and get
failed file exists
Sent from my Transformer TF101 using Tapatalk
Click to expand...
Click to collapse
my guess is you're trying to load them double or something.
If you give the command 'lsmod' you get a listed of loaded modules. Check if they're there or not.
Anyone got Junos working with the builtin tun.ko ?
comfort69 said:
Care to share how to get this loaded into the current ics roms. I have copied to /system/lib/modules and tried to load using mount manager and cifs manager with no luck.
Click to expand...
Click to collapse
cifsmanager - preferences:
check "load with insmod"
if its not already, adjust path to cifs.ko and other modules
btw: as rmmod tries to remove /lib/modules/cifs.ko instead of /system/lib/modules/cifs.ko there's no way to unload the module other than rebooting.
just sharing how I did manage cifs to work
I've installed Revolution HD 3.00 (ICS 4.0.3), installed CifsManager, didn't work, tried to copy cifs.ko and md4.ko in /system/lib/modules with File Expert or Root Explorer, couldn't because of a read-only system files, plugged my tablet on a PC, launched an adb session and typed:
$ adb shell
$ su
$ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
pushed through adb cifs.ko and md4.ko in /system/lib/modules
changed the permission to 777 using File Expert
launched cifs and md4 using terminal emulator:
insmod /system/lib/modules/cifs.ko
insmod /system/lib/modules/md4.ko
in cifsmanager settings, didn't check load modules on boot and load through insmod
tried to connect my shares: succeed
Hope it will help somebody
jeanvdr said:
$ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
Click to expand...
Click to collapse
hmm strange
my /system is mounted elsewhere
/dev/block/mmcblk0p1 on /system type ext4
anyway
another method without terminal (and.revol hd 3.0.0 only)
adb shell sysrw
adb push cifs.ko /system/lib/modules
adb push md4.ko /system/lib/modules
adb shell chmod 644 /system/lib/modules/*.ko
adb shell insmod /system/lib/modules/cifs.ko
adb shell insmod /system/lib/modules/md4.ko
If the modules don't cause problems, they will likely be in the next ARHD version.
Remounting goes like this: busybox mount -o remount,rw /system
Yaffs2 filesystem isn't used anymore, and 'remount ' ignores these parameters anyway .
Please keep it readable for people on stock ics, custom roms will get these modules somehow anyway.
Adb sysrw will not work without modified bootdisk AFAIK.
Wat is Janos? ? Maybe it needs more than the tun module, like crypto modules?
Btw, my tablet still working fine. Never had a Sleep of Death. Actually, never EVER had a SOD with my tablet, and I can't seem how any cifs module can cause it like some people are saying.
woti23 said:
cifsmanager - preferences:
check "load with insmod"
if its not already, adjust path to cifs.ko and other modules
Click to expand...
Click to collapse
The problem is this cifs.ko module required md4.ko, and AFAIK cifsmanager doesn't try to load it.
dipje said:
The problem is this cifs.ko module required md4.ko, and AFAIK cifsmanager doesn't try to load it.
Click to expand...
Click to collapse
actually it does, if you
check "load cifs module at start"
check "load per insmod"
fill out "path to cifs.ko":
/system/lib/modules/cifs.ko:/system/lib/modules/md4.ko:/system/lib/modules/nls_iso8859_1.ko
[email protected]:/~# >lsmod
nls_iso8859_1 3107 0 - Live 0xbf066000
cifs 218286 0 - Live 0xbf12a000
md4 3007 0 - Live 0xbf003000
it is a little work to type the pathes, and you surely are right that for most people its easier if it is loaded in the rom (init.d or somewhere else) automagically
btw: if you once compile modules again would you mind compiling the hfsplus module en passant? it should compile without any troubles and dependencies and allows manually (command line) mounting a mac os x external harddisk?
woti23 said:
btw: if you once compile modules again would you mind compiling the hfsplus module en passant? it should compile without any troubles and dependencies and allows manually (command line) mounting a mac os x external harddisk?
Click to expand...
Click to collapse
I haven't tested them (as in, didn't even try if they would load OK).
I just noticed I screwed up the vermagic again, so you'll get a warning in dmesg while loading. Should load ok though.
edit: Ok I've redone them. Proper cpu + vermagic now
And if people wanna experiment, mess with stuff:
squashfs
btrfs

GT-P3113 Romswell 1.1 cifs.ko nls_utf8.ko and md4.ko

Here is the kernel modules compiled with samsung stock 4.0.3 kernel, but versiontag corresponding to work with Romswell 1.1 or stock P3113UEBLH2.
You can load manually and try with mount command or use cifs manager apk.
If you wanna load via cifs manager you have to do a litle trick instead of set the /path/cifs.ko, you have to set "/path/md4.ko; insmod /path/nls_utf8.ko; insmod /path/cifs.ko"
The modules are on /zip/QyF_mqDG/cifs.html after 4shared dot com
sorry can't post url because of 10 posts restriction...

[GUIDE] How To Add Init.d Support to Your Kernel & Rom

What is init.d ?
Init.d is a feature which allows you to run brunch of scripts at boot . Thats really useful while you want to set values which reset at boot or run/do any thing at every boot or install tweaks , engines and....
There are some ways to add this feature to you rom but always best way is to add init.d support directly by your kernel . I want to help you to do this
Requirements
1- Ability to unpack boot.img & ramdisk
2- Some basic linux shell knowloedge
3- Having Busybox located in /system/bin/busybox at your rom
Step 1: Making kernel ready
1- Unpack kernel then ramdisk
2- Open Init.rc with a text editor
3- Add this codes at the end , before the paragraph which there is "stop bootanim" command in it :
Code:
service sysinit /system/bin/sysinit
oneshot
4- Save , Exit and repack ramdisk and boot.img
Step 2 : Making Rom Ready !
1- Open /system/bin/sysinit
2- Add this codes :
Code:
#!/system/bin/sh
export PATH=${PATH}:/system/bin:/system/xbin
chmod 777 /system/etc/init.d/*
logwrapper busybox run-parts /system/etc/init.d/
3- Set permissions of sysinit to 777 or 755 ( rwxrwxr-x | rwxrwxrwx )
4- Make a directory at system/etc and name it init.d
Now you have init.d support !
Bull*hit. JUST INSTALL pimpmyrom and finish ..Easy.:victory:
Someone had to document this ^^, good job
RobyRc said:
Bull*hit. JUST INSTALL pimpmyrom and finish ..Easy.:victory:
Click to expand...
Click to collapse
Pimp uses one of the worst method to add this feature to your ROM ! it doesn't effect on kernel so : 1- running init.d is slower 2- init.d is not stable at all 3- not usable for ones want to add this feature to his/her kernel 4- not run init.d at end of boot so some script which needs some binaries that are not loaded yet doesn't work 5- Can not be used for room devs
This method is the official method which is used on most famous kernels such as brood kernel . and best for devs and users
any way that depends on users idea that this is good or not
RobyRc said:
Bull*hit. JUST INSTALL pimpmyrom and finish ..Easy.:victory:
Click to expand...
Click to collapse
Why are you so rude?
There are ways and ways to express own opinions... And alireza has just explained you why this method is better then PIMPMYROM.
Sent from my AriesVe using xda premium
alireza7991 said:
Pimp uses one of the worst method to add this feature to your ROM ! it doesn't effect on kernel so : 1- running init.d is slower 2- init.d is not stable at all 3- not usable for ones want to add this feature to his/her kernel 4- not run init.d at end of boot so some script which needs some binaries that are not loaded yet doesn't work 5- Can not be used for room devs
This method is the official method which is used on most famous kernels such as brood kernel . and best for devs and users
any way that depends on users idea that this is good or not
Click to expand...
Click to collapse
You are wrong.
RobyRc said:
You are wrong.
Click to expand...
Click to collapse
well, if he is wrong you can explain why, he explained why according to him is better this way, you could explain why not
What happens if your ROM doesn't have /system/bin/sysinit?
vMAC said:
What happens if your ROM doesn't have /system/bin/sysinit?
Click to expand...
Click to collapse
* Your rom has sysinit -> You have already init.d support and no need to this guide
* Your rom has'nt it -> You need to do my guide to get init.d support
alireza7991 said:
* Your rom has sysinit -> You have already init.d support and no need to this guide
* Your rom has'nt it -> You need to do my guide to get init.d support
Click to expand...
Click to collapse
And is it possible to create sysinit and init.d folder with an updater script?
GT-af said:
And is it possible to create sysinit and init.d folder with an updater script?
Click to expand...
Click to collapse
sure but do'nt forget :
1- your kernel must support init.d ( look at first post step 1)
2- do step 2 at fist post on sys init or you wo'nt have init.d support !
I have MTK 6577 device this will work ?
andrman1 said:
I have MTK 6577 device this will work ?
Click to expand...
Click to collapse
all android devices are supported
alireza7991 said:
all android devices are supported
Click to expand...
Click to collapse
In init.rc file I haven't code "stop bootanim" why and where I put this code ?
And I haven't in /system/bin file "sysinit" ?
andrman1 said:
In init.rc file I haven't code "stop bootanim" why and where I put this code ?
And I haven't in /system/bin file "sysinit" ?
Click to expand...
Click to collapse
Place those codes on the middle of init.rc ; the only difference is execute order . if you put it at first init.d wont execute becuase we have'nt system mounted still and if you put it at the end you will stop at your homescreen for a few secound so its better to execute it while you are seeing bootanimation
make new file name it sysinit and put codes siad in OP inside it .
Step 2 : Making Rom Ready !
1- Open /system/bin/sysinit
2- Add this codes :
Code:
#!/system/bin/sh
export PATH=${PATH}:/system/bin:/system/xbin
chmod 777 /system/etc/init.d/*
logwrapper busybox run-parts /system/etc/init.d/
Is this needed?
I've seen some ROMs not having /system/bin/sysinit but init.d kernel support, and I've tested a ROM myself not having this file, but the
99test init.d script gave some output to /data/tmp. So I guess it was executed properly.
t-ryder said:
Step 2 : Making Rom Ready !
1- Open /system/bin/sysinit
2- Add this codes :
Code:
#!/system/bin/sh
export PATH=${PATH}:/system/bin:/system/xbin
chmod 777 /system/etc/init.d/*
logwrapper busybox run-parts /system/etc/init.d/
Is this needed?
I've seen some ROMs not having /system/bin/sysinit but init.d kernel support, and I've tested a ROM myself not having this file, but the
99test init.d script gave some output to /data/tmp. So I guess it was executed properly.
Click to expand...
Click to collapse
There are many ways to get init.d working , you may include sysinit in init.rc or you may completely remove it and use a direct code in init.rc to execute init.d scripts or ....
Here in this method , I used sysinit in user-space to let init.d be dynamicly modifed or removed without repacking the kernel
alireza7991 said:
There are many ways to get init.d working , you may include sysinit in init.rc or you may completely remove it and use a direct code in init.rc to execute init.d scripts or ....
Here in this method , I used sysinit in user-space to let init.d be dynamicly modifed or removed without repacking the kernel
Click to expand...
Click to collapse
So just the file
Code:
#!/system/bin/sh
export PATH=${PATH}:/system/bin:/system/xbin
chmod 777 /system/etc/init.d/*
logwrapper busybox run-parts /system/etc/init.d/
would make it run (having busybox in /xbin) without having to mess around in the kernel using e.g. virtous ten studio?
t-ryder said:
So just the file
Code:
#!/system/bin/sh
export PATH=${PATH}:/system/bin:/system/xbin
chmod 777 /system/etc/init.d/*
logwrapper busybox run-parts /system/etc/init.d/
would make it run (having busybox in /xbin) without having to mess around in the kernel using e.g. virtous ten studio?
Click to expand...
Click to collapse
there are many strange and not suggested methods which add init.d without repacking kernel but the best method is using init.rc .
But I have some ideas on getting init.d working withouy messing around kernel . I am going to test them ;
alireza7991 said:
there are many strange and not suggested methods which add init.d without repacking kernel but the best method is using init.rc .
But I have some ideas on getting init.d working withouy messing around kernel . I am going to test them ;
Click to expand...
Click to collapse
Hi; I googled for a while to find a way to add init.d to my ROM and found your thread. Can you also explain how to adjust the source tree before compilation that I get the init.d? I am compiling AOSP with the stock kernel. I saw a few posts before that this method just works for a kernel which supports init.d. I have no clue if the stock kernel does. Thanks

Categories

Resources