Internal Memory issue - AT&T, Rogers, Bell, Telus Samsung Galaxy S III

I am getting the following error while checking the internal memory of my phone. Any help will be highly appreciated
C:\android-sdk-windows\sdk\platform-tools>adb shell
~ # cat etc/fstab
cat etc/fstab
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 rw
~ # e2fsck -fv dev/block/mmcblk0p01
e2fsck -fv dev/block/mmcblk0p01
e2fsck 1.41.14 (22-Dec-2010)
e2fsck: No such file or directory while trying to open dev/block/mmcblk0p01
Possibly non-existent device?
~ # e2fsck -fv dev/block/mmcblk0p
e2fsck -fv dev/block/mmcblk0p
e2fsck 1.41.14 (22-Dec-2010)
e2fsck: No such file or directory while trying to open dev/block/mmcblk0p
Possibly non-existent device?
~ # cat etc/fstab
cat etc/fstab
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 rw
~ # e2fsck /dev/block/mmcblk0p2
e2fsck /dev/block/mmcblk0p2
e2fsck 1.41.14 (22-Dec-2010)
e2fsck: Superblock invalid, trying backup blocks...
e2fsck: Bad magic number in super-block while trying to open /dev/block/mmcblk0p
2
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>

Related

ext4 module 2.6.29 (enclair 2.1) without reflash (raw lag fix)

I compiled ext4 module to work with enclair 2.1 kernel 2.6.29, tested with XXJF5 stock firmware. Need root access, tune2fs and mke2fs static binary (e2fsprog-bin.tgz.zip)
mkdir -p /system/lib/modules/2.6.29/
#copy module.tar.gz in /system/lib/modules/2.6.29/
cd /system/lib/modules/2.6.29/
tar zxvf module.tar.gz
insmod /system/lib/modules/2.6.29/kernel/fs/jbd2/jbd2.ko
insmod /system/lib/modules/2.6.29/kernel/lib/crc16.ko
insmod /system/lib/modules/2.6.29/kernel/fs/ext4/ext4.ko
if=/dev/zero of=/sdcard/sd/filesystem.ext4 bs=1048576 count=2048
losetup /dev/block/loop1 /sdcard/sd/filesystem.ext4
mke2fs -t ex4 /dev/block/loop1
tune2fs -c 0 -i 0 -m 0 /dev/block/loop1
mkdir /sdcard/sddata
mount -t ext4 /dev/block/loop1 /sdcard/sddata
cp -rp /data/data /sdcard/sddata
cp -rp /data/system /sdcard/sddata
cp -rp /data/dalvik-cache /sdcard/sddata
cp -rp /data/app /sdcard/sddata
cp -rp /data/app-private /sdcard/sddata
mount -t ext4 -o bind /sdcard/sddata/data /data/data
mount -t ext4 -o bind /sdcard/sddata/system /data/system
mount -t ext4 -o bind /sdcard/sddata/dalvik-cache /data/dalvik-cache
mount -t ext4 -o bind /sdcard/sddata/app /data/app
mount -t ext4 -o bind /sdcard/sddata/app-private /data/app-private
run your quadrant test, i got 1793. enjoy.
ps: if you want make it permanent look at RyanZA playlogos1 trick. Also make sure your ext4 filesystem is available at boot time instead /sdcard/sddata
Note:
- due its nature ext4 keep data in RAM much more than ext3 before writing on disk, therefore if a powerloss happens before data got written this may results in lost of data. (see delayed allocation). On the other hand a temporary file wont be written to disk, but kept on RAM avoiding read/write cycles. Inode reservation can increase performance as well.
- barrier can be disabled but this may result in a corrupt journal
explain please
you may want to use ext4 without reflash, and at the same time keep your /data untouchable, just in case you need a recovery backup. eg: if /sdcard got corrupt, system will mount your original /data. (desynced)
I had to disable vold, and mv /etc/vold.conf /etc/vold.old, otherwise it coundnt find /sdcard/filesystem.ext4 so I mount it just before everything.
userinit.sh
--
/system/bin/mount -t vfat -o errors=remount-ro /dev/block/mmcblk1p1 /sdcard
insmod /system/lib/modules/2.6.29/kernel/fs/jbd2/jbd2.ko
insmod /system/lib/modules/2.6.29/kernel/lib/crc16.ko
insmod /system/lib/modules/2.6.29/kernel/fs/ext4/ext4.ko
/data/local/bin/losetup /dev/block/loop1 /sdcard/filesystem.ext4
/system/xbin/e2fsck -p /dev/block/loop1
/system/bin/mount -t ext4 /dev/block/loop1 /sdcard/sddata
/system/bin/mount -t ext4 -o bind /sdcard/sddata/data /data/data
/system/bin/mount -t ext4 -o bind /sdcard/sddata/system /data/system
/system/bin/mount -t ext4 -o bind /sdcard/sddata/dalvik-cache /data/dalvik-cache
/system/bin/mount -t ext4 -o bind /sdcard/sddata/app /data/app
/system/bin/mount -t ext4 -o bind /sdcard/sddata/app-private /data/app-private
--
mv /system/bin/playlogos1 /system/bin/playlogosnow
Do not forget to create /system/bin/playlogos1 as follow:
#!/system/bin/sh
sh /system/bin/userinit.sh
/system/bin/playlogosnow
I got 1858
this is just proof do not use on your device if you dont know what you doing. Since vold does not mount partition some application may not recognize /sdcard mounted that way.
id like to find a way to start vold before playlogos1 and resolve this issue, buts vold seems check argv[0] before start.
e2fsprogs recompiled as well ? In other words, will the e2fsprogs from cynogen work on ext4? These do use libs, btw.
I might build support for this into CFLagFix if I can freely use the files
yeah static bin.
husq510 said:
yeah static bin.
Click to expand...
Click to collapse
Just want to ask if it's ok to implament this in my lagfix zips
Ofc ill credit you
sure you can.
Thanks for the statically linked e2fsck
Nvm got it working on captivate also

Who would like a 1GB System Partition???

THIS IS FOR DEVELOPMENT ONLY!!!! THIS IS ONLY A CONCEPt FORGETTING THE 1GB SYSTEM PARTITION.
30-Jan-13 update
Ok so using this method I now have a ported rom from the Samsung Galaxy S3 that has a 680+mb system booting on my G2. If any of you feel like helping me get it up and running PM me or you can download it from here http://sourceforge.net/projects/sgs3forg2/files/FJB4G2-orig-runtime.zip/download and see for yourself...
MAJOR EDIT: SO THE UPLOAD MUST HAVE BEEN CORRUPTED FOR THE EM1.zip. IT IS NON FUNCTIONAL. ALL CREDIT TO THE ONE I WILL PUT UP GOES TO FLINNY. I IN NO WAY DID ANYTHING TO CREATE THIS ROM JUST ALTERED THE MOUNTS TO GET THE 1GB SYSTEM PARTITION. THE FILE IS NAMED f10.zip. it is his 10.1 base.
Ok so I know its been a while but I have something I can not keep away from the community. Anyone want to get a 1GB System and 549MB Data partition??? Yes thats right we can swap the partitions. here is a link to some screen shots and another to, with the permission of nik3r, the modified Elitemod Rom. just go into recovery, format all partitions(sorry you will have to start over in order to swap the partitions, well for now that is), and flash the EM1.zip
http://www.mediafire.com/?ka8yq4hzs6upj
Ok so this all started after my wife got her new phone the samsung galaxy s3. in love with the phone and what it could do but unable to, due to financial constraints and TMobiles unwillingness to give me one for free like they did my wife, I set forth trying to find a way to port its OS to our G2. finally i have found a way, or at least now the space in which to put it. now will begin the porting phase. hence this thread, I bring you this solution to our space issue cause really is 1.3GB for G2 or 1GB for DZ partition for data really needed???
So here is what I did...
1. First I got android sdk all setup
2. Then I downloaded the android kitchen
3. Also downloaded the Elitemod Rom from nik3r's thread and set it up in the android kitchen
4. In the android kitchen I extracted the kernel and ramdisk from the boot.img
5. I editted all the init files in the BOOT-EXTRACTED/boot.img-ramdisk directory and changed the mount section of the init.rc to
# mount mtd partitions
# Mount /system rw first to give the filesystem a chance to save a checkpoint
mount yaffs2 /dev/block/mmcblk0p26 /system
mount yaffs2 /dev/block/mmcblk0p26 /system ro remount
mount yaffs2 /dev/block/mmcblk0p25 /data nosuid nodev
mount yaffs2 [email protected] /cache nosuid nodev
and the init.vision.rc mounts i also swapped
on early-fs
mkdir /system
mkdir /data 0771 system system
mkdir /cache 0770 system cache
mkdir /devlog 0700 root root
mount ext4 /dev/block/mmcblk0p26 /system wait ro barrier=1
setprop ro.crypto.tmpfs_options size=128m,mode=0771,uid=1000,gid=1000
mount ext4 /dev/block/mmcblk0p25 /data wait noatime nosuid nodev barrier=1 noauto_da_alloc
mount ext4 /dev/block/mmcblk0p27 /cache wait noatime nosuid nodev barrier=1
mount ext4 /dev/block/mmcblk0p28 /devlog wait noatime nosuid nodev barrier=1
6. now in order for it to boot right i had to get the files to go to the right place so i editted the updater-script and changed the mount for system to /dev/block/mmcblk0p26 (which as you know is the normal data partition) and the data mount to /dev/block/mmcblk0p25( normally system) now the files are going to places we want and the init files on boot remount the system on 0p26 and data on 0p25 (in reverse from normal) but it boots. so here we go lets get the life put back in this phone now we have the space.
Mad props to nik3r for his rom and permission to use it
UPDATE: For some reason the wifi got broken but to fix there is the MOD_Elitekernel zip found in the link at the top of this post that will fix that. I also put EdKeys wifi calling as well, have it running now on my phone so let me know if you find anything else.
UPDATE 2: I have put a hacked version of S Voice from the galaxy S3 in the link for the G2 *TO BE USED WITH THIS PROJECT ONLY*.
UPDATE 3: there must be some confusion with this. This is not a new rom with some timeframe to get it working. I have a fully opperational rom with no problems with apps or anything right now. This is about a mod that can be adapted to any rom or as brought up gapps which will be uploaded here tomorrow. My point is that any rom should be able to be altered this way.
So this means you're giving us Nature UX in the near future? Good luck :good: also does this open up multi booting possibilities (proper multi booting, not anything like Boot Manager)? 'Cause that'd be awesome, but would there need to be a special kernel?
WOW, Congrats man! Looking forward to this! As if the G2 will ever die! Pffft! And Kudos To nik3r for all his work towards this community!
BUT COME BACKKKKKK nik3r, we miss you!!
HTCDreamOn said:
So this means you're giving us Nature UX in the near future? Good luck :good: also does this open up multi booting possibilities (proper multi booting, not anything like Boot Manager)? 'Cause that'd be awesome, but would there need to be a special kernel?
Click to expand...
Click to collapse
working on one of those... not sure what it would take for multiboot... could look into it once my main task is done -> SGS3 to G2
So, this would allow me to install more apps and less moving apps to sd card? Noob question, but I really do not know the answer.
Sent from my HTC Vision using xda app-developers app
Less apps, lager rom, kinda like custom mtd partions for older devices. Probably would need to have an ext partition to hold apps if you need a lot... gotta say I've been waiting for something like this!
Sent from my HTC Vision using xda premium
So all roms need to be modefied in order to get this to work? I can go back to my previous rom without problems cause partitions are only mounted in different order by this rom? Just to be shure...
And multitasking wil benefit a lot of this?
Yes, the updater script just writes system to the data partition and since the init files are in the boot.img.they mount the "data" partition as /system and "system" partition as /data. Minor alterations to any rom would take advantage of this work around. And yes you can swap back and forth between a bacckup and this or any other altered rom but just remember in recovery(for now) formating system clears data and factory reset (clearing data) deletes the rom.
ineedone said:
So all roms need to be modefied in order to get this to work? I can go back to my previous rom without problems cause partitions are only mounted in different order by this rom? Just to be shure...
And multitasking wil benefit a lot of this?
Click to expand...
Click to collapse
Oke i wiped all partitions with 4ext, installed rom, rebooted, but now it hangs on bootlogo?
It does take a min to boot... remember there's no cache. What does logcat say????
ineedone said:
Oke i wiped all partitions with 4ext, installed rom, rebooted, but now it hangs on bootlogo?
Click to expand...
Click to collapse
I really mean the htc bootlogo. I can boot into recovery and when i take a look at the partition table, i see systeem is still 549 and there is a 500mb swap partition.. have no knowledge of logcat but i can try and see later tonight when I'm home.
Edit: data partition is now 549
ineedone said:
I really mean the htc bootlogo. I can boot into recovery and when i take a look at the partition table, i see systeem is still 549 and there is a 500mb swap partition.. have no knowledge of logcat but i can try and see later tonight when I'm home.
Edit: data partition is now 549
Click to expand...
Click to collapse
Did you do changes in ramdisk?
Sent from my HTC Vision using xda app-developers app
EnZl said:
Did you do changes in ramdisk?
Sent from my HTC Vision using xda app-developers app
Click to expand...
Click to collapse
as i stated in the OP... yes i did change the mounting in the init.rc and init.vision.rc in the ramdisk. once the updater script sends the info tho the partitions i needed to edit those to make it boot with it making /dev/block/mmcblk0p26(originally data) the system mount. same for data mount is now the 0p25 partition
ineedone said:
I really mean the htc bootlogo. I can boot into recovery and when i take a look at the partition table, i see systeem is still 549 and there is a 500mb swap partition.. have no knowledge of logcat but i can try and see later tonight when I'm home.
Edit: data partition is now 549
Click to expand...
Click to collapse
Oke forget this post, I had the wrong partition info, and forgot about the 500mb swap on my sd because i don't use it, sorry
This is the partition table after installing this rom:
------------------ Info -------------------
mount point | fs | size | free
system ext4 549.2MiB 539.3MiB
data ext4 1.0GiB 792.8MiB
cache ext4 295.3MiB 290.5MiB
sdcard fat32 28.7GiB 12.8GiB
sd-ext ext4 129MiB 108.9MiB
swap swap 513MiB -
Current Rom: unknown
There are some errors in the recover.log of 4ext touch recovery, which i included. Maybe someone can help me out
ineedone said:
Oke forget this post, I had the wrong partition info, and forgot about the 500mb swap on my sd because i don't use it, sorry
This is the partition table after installing this rom:
------------------ Info -------------------
mount point | fs | size | free
system ext4 549.2MiB 539.3MiB
data ext4 1.0GiB 792.8MiB
cache ext4 295.3MiB 290.5MiB
sdcard fat32 28.7GiB 12.8GiB
sd-ext ext4 129MiB 108.9MiB
swap swap 513MiB -
Current Rom: unknown
There are some errors in the recover.log of 4ext touch recovery, which i included. Maybe someone can help me out
Click to expand...
Click to collapse
you have to remember that recoveries still look to the 0p25 as system but i have a way to show you if it is installing right.
reboot into recovery
plug phone into usb and usb into computer - make sure adb works... type in a terminal or command prompt "adb shell" and hit enter
you should be in an android shell... you should see this ~ #
then type df and hit enter - this will show the partitions and how they are mounted
select to install the rom and as soon as it starts press the up arrow and hit enter (if the up arrow does not bring up the df command just type it)
do this repeatedly and you will watch as the rom is installed, the space on and which partition is what.
let me know
ok so an update I have gotten Flinny's latest 10.1 to work also but I will not put it out until/ if I get his permission to do so
[/SIZE]
OdiemanSAM said:
you have to remember that recoveries still look to the 0p25 as system but i have a way to show you if it is installing right.
reboot into recovery
plug phone into usb and usb into computer - make sure adb works... type in a terminal or command prompt "adb shell" and hit enter
you should be in an android shell... you should see this ~ #
then type df and hit enter - this will show the partitions and how they are mounted
select to install the rom and as soon as it starts press the up arrow and hit enter (if the up arrow does not bring up the df command just type it)
do this repeatedly and you will watch as the rom is installed, the space on and which partition is what
Click to expand...
Click to collapse
Here is the output:
Partitions seem to change and i lose 500MB some how
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk0p25
1099608 18840 1080768 2% /system
/dev/block/mmcblk0p26
1099608 18840 1080768 2% /data
/dev/block/mmcblk1p2 127936 16404 111532 13% /sd-ext
/dev/block/mmcblk1p1 30102144 16812160 13289984 56% /sdcard
/dev/block/mmcblk0p26
562384 10216 552168 2% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk0p25
562384 10216 552168 2% /system
/dev/block/mmcblk0p26
562384 10216 552168 2% /data
/dev/block/mmcblk1p2 127936 16404 111532 13% /sd-ext
/dev/block/mmcblk1p1 30102144 16815296 13286848 56% /sdcard
/dev/block/mmcblk0p25
562384 10216 552168 2% /data
~ # df
also from previous recovery.log:
About to install:
EM1-1.zip
Continue install?
-- Installing: /sdcard/Download/EM1-1.zip
Finding update package...
I:Update location: /sdcard/Download/EM1-1.zip
Opening update package...
Installing update...
package_extract_file: no system/bin/backuptool.sh in package
set_perm: chown of /tmp/backuptool.sh to 0 0 failed: No such file or directory
set_perm: chmod of /tmp/backuptool.sh to 777 failed: No such file or directory
about to run program [/tmp/backuptool.sh] with 2 args
run_program: execv failed: No such file or directory
run_program: child exited with status 1
Creating filesystem with parameters:
Size: 1143992320
Block size: 4096
Blocks per group: 32768
Inodes per group: 7760
Inode size: 256
Journal blocks: 4363
Label:
Blocks: 279295
Block groups: 9
Reserved block group size: 71
Created filesystem with 11/69840 inodes and 9114/279295 blocks
warning: wipe_block_device: Discard failed
Initiating EliteMod ICS 120728
================================
Designed for HTC Desire Z/G2
Applying AOKP m6 and gapps...
minzip: Extracted file "/...........................................
.....................................................snip
minzip: Extracted file "/system/xbin/su"
package_extract_file: no system/bin/backuptool.sh in package
set_perm: chown of /tmp/backuptool.sh to 0 0 failed: No such file or directory
set_perm: chmod of /tmp/backuptool.sh to 777 failed: No such file or directory
about to run program [/tmp/backuptool.sh] with 2 args
run_program: execv failed: No such file or directory
run_program: child exited with status 1
package_extract_file: no system/bin/modelid_cfg.sh in package
set_perm: chown of /tmp/modelid_cfg.sh to 0 0 failed: No such file or directory
set_perm: chmod of /tmp/modelid_cfg.sh to 777 failed: No such file or directory
about to run program [/tmp/modelid_cfg.sh] with 2 args
run_program: execv failed: No such file or directory..............................................
.......................
minzip: Extracted file "/data/local/postsetup/undervolt.txt"
Applying EliteKernel 120728...
set_perm: chown of /system/etc/init.d/04mountsddl to 0 0 failed: No such file or directory
set_perm: chmod of /system/etc/init.d/04mountsddl to 775 failed: No such file or directory
set_perm: chown of /system/etc/init.d/11apps2sd to 0 0 failed: No such file or directory
set_perm: chmod of /system/etc/init.d/11apps2sd to 775 failed: No such file or directory
set_perm: chown of /system/etc/init.d/61swap2sd to 0 0 failed: No such file or directory
set_perm: chmod of /system/etc/init.d/61swap2sd to 775 failed: No such file or directory
set_perm: chown of /system/etc/init.d/64swapmarker to 0 0 failed: No such file or directory
set_perm: chmod of /system/etc/init.d/64swapmarker to 775 failed: No such file or directory
set_perm: chown of /system/xbin/virtuous_oc to 0 0 failed: No such file or directory
set_perm: chmod of /system/xbin/virtuous_oc to 775 failed: No such file or directory
about to run program [/sbin/busybox] with 3 args
minzip: Extracted file "/tmp/dump_image"
minzip: Extracted file "/tmp/mkbootimg"
minzip: Extracted file "/tmp/mkbootimg.sh"
Extracting Kernel files...
minzip: Extracted file "/tmp/unpackbootimg"
minzip: Extracted file "/tmp/zImage"
Installing kernel...
about to run program [/tmp/dump_image] with 3 args
about to run program [/tmp/unpackbootimg] with 3 args
BOARD_KERNEL_CMDLINE no_console_suspend=1
BOARD_KERNEL_BASE 4000000
about to run program [/tmp/mkbootimg.sh] with 1 args
minzip: Extracted file "/tmp/vision_wipe_efs"
about to run program [/tmp/vision_wipe_efs] with 1 args
Backing up partition /dev/block/mmcblk0p13 to /sdcard/part13backup-1358877146.bin ...
Backing up partition /dev/block/mmcblk0p14 to /sdcard/part14backup-1358877146.bin ...
Wiping partition /dev/block/mmcblk0p13...
Wiping partition /dev/block/mmcblk0p14...
Successfully wiped partitions 13 and 14.script result was []
EliteMod ICS installed successfully!
Credits to all the amazing devs that made this possible! Thank You!
Install from sdcard complete.
..................................................................
it also seems like only some files get written to data partition around 200mb, nothing to system...
you have dual mounts!!!! system and data are both mounted to both partitions. go into mounts windows in recovery and unmount both system and data partitions... then try again.
OdiemanSAM said:
you have dual mounts!!!! system and data are both mounted to both partitions. go into mounts windows in recovery and unmount both system and data partitions... then try again.[/QUOTE
mounted them last time because they didn't show up in fist instance :silly:
output:
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
/dev/block/mmcblk0p26
1099608 31892 1067716 3% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
/dev/block/mmcblk0p26
1099608 136220 963388 12% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
/dev/block/mmcblk0p26
1099608 288248 811360 26% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16827968 13274176 56% /sdcard
/dev/block/mmcblk0p25
562384 10216 552168 2% /data
~ # dfFilesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
/dev/block/mmcblk0p26
1099608 31892 1067716 3% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
/dev/block/mmcblk0p26
1099608 136220 963388 12% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16824752 13277392 56% /sdcard
/dev/block/mmcblk0p26
1099608 288248 811360 26% /system
~ # df
df
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 188504 32 188472 0% /dev
/dev/block/mmcblk0p27
302356 4804 297552 2% /cache
/dev/block/mmcblk1p1 30102144 16827968 13274176 56% /sdcard
/dev/block/mmcblk0p25
562384 10216 552168 2% /data
~ # df
Click to expand...
Click to collapse
so is it working for you now???
UPDATED OP
Sorry , still on htc bootlogo
Only files seems to be written to data
Is there a way to view if/what data is written to the different partitions or boot ? Or do i need to install aditional gapps?

[Guide] Find7 9GB App storage and mount External SD-Card as SD0

In this Guide you will learn how to modify your system to handle the 9GB Partition 29 as Data (App-Storage) and use the external SD-Card as internal.
Don't be afraid, this is a lot of text mostly to explain the whole procedure, the steps are straight forward.
Thanks go to Kishd (oppoforums), Coldbird and alienmind (xdadevelopers)
Beside of the public made solutions i will do the following:
Instead of repartitioning the device i will change only the partition name of "sdcard" to "userdata", mount the external SD as internal and use the remaining 3GB Partition as external SD.
So partition 15 will become "sdcard1" and partition 29 will become "userdata"
On the Find7a you will have 9 gigs of application space and xx gigs for the internal sd (size of the sdcard).
This should work on Find7 too, someone has to check the partition layout if it is equal, than you will have 25 gigs of application space and xx gigs for the internal sd (size of the sdcard).
PRECAUTIONS:
If you mess around with partition table you could brick your device, so be careful!
Thes procedure worked for me, i am not responseable for any missing or mistyped commands/procedures, so THINK BEFORE YOU DO ANYTHING!
I am not an android Pro, nor an Develper. My Spare time is very limited so i can't help you out if something goes wrong!
I've done this with Gummy Rom, not tryed with ColorOS or another custom rom but it should work on all AOSP-based ROMS.
The swapped SD-cards do not belong to recovery, so the internal SD is accessed as before.
What do you need:
1.: Time: This is not done in 5 minutes, so please be patient.
2.: A Linux-PC with working ADB and Fastboot
3.: TWRP recovery image on your PC or installed on the device: http://techerrata.com/browse/twrp2/find7a (I used 2.7.1.0)
4.: An SD card with at least 16Gb inseted into your Find7a
5.: Fully charge your Device before messing around, some jobs will need a lot of time.
6.: A fitting custom ROM installed, i've done this with Gummy-M2.3-06-29-14-NIGHTLY-find7 which is suitable for find7 and find7a which can be found here: http://crackflasher.com/gummy-m2-3-06-29-14-nightly-find7-zip-oppo-find-7a-gummy/
7.: The zip-file of the custom rom on your local PC
What are we going to do:
0.: Boot into recovery and access the Device via ADB
1.: Format external SD to Ext4 Filesystem
2.: Backup the original partition layout and all partitions too
3.: Copy Data from internal SD to external
4.: Rename two partitions
5.: Format the new "userdata" partition and move all content of the old to the new location
6.: Format the new "sdcard1" partition
7.: Edit/replace fstab files in /etc to tell TWRP and System the new mountpoints
OK, let's do the trick
Step0.: Booting into recovery and accessing the Device via ADB-shell:
Put the phone into fast boot mode. (Power Volume Up simultaneously)
Open a terminal in your linux-PC and do the following as root (sudo -r):
#: fastboot devices ( check that fastboot is up and running)
#: fastboot boot openrecovery-twrp-2.7.1.0-find7a.img (or boot into TWRP if already installed)
The phone will boot into twrp.
Connect the phone and go into adb
#: adb shell
After entering the adb shell you should see the following in your terminal:
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
~ #
Step1.: Format external SD to Ext4 Filesystem
First we have to write a new partition table as i dont know how your SD-card looks:
umount /external_sd (could cause errors if no filesystem is present on SD - dont mind)
parted /dev/block/mmcblk1 (you should see parted welcome message, no errors!)
mklabel msdos (this will write a new partition table on your sdcard)
mkpart primary ext4 1 -1 (this will make a ext4 partition which uses the whole sd)
quit
Now we are going to format the ext4 partition:
mke2fs -t ext4 -m 0 -L sdcard /dev/block/mmcblk1p1
tune2fs -c 0 -i -1 -C -1 /dev/block/mmcblk1p1
mount /dev/block/mmcblk1p1 /external_sd (Mount the new formatted sd-card -- this should show no errors)
If all is done without errors, proceed to step2
Step2.: Backup the original partition layout and all partitions too
dd makes physical imagea of partitions so you can put it back if needed
While DD is copying you will see no progress bar or any output, so BE PATIENT!
Code:
mkdir /external_sd/backup
parted /dev/block/mmcblk0 print > /external_sd/backup/partitions (original partition Layout for later reference)
dd if=/dev/block/mmcblk0p1 of=/external_sd/backup/modem
dd if=/dev/block/mmcblk0p2 of=/external_sd/backup/sbl1
dd if=/dev/block/mmcblk0p3 of=/external_sd/backup/dbi
dd if=/dev/block/mmcblk0p4 of=/external_sd/backup/ddr
dd if=/dev/block/mmcblk0p5 of=/external_sd/backup/aboot
dd if=/dev/block/mmcblk0p6 of=/external_sd/backup/rpm
dd if=/dev/block/mmcblk0p7 of=/external_sd/backup/boot
dd if=/dev/block/mmcblk0p8 of=/external_sd/backup/tz
dd if=/dev/block/mmcblk0p9 of=/external_sd/backup/pad
dd if=/dev/block/mmcblk0p10 of=/external_sd/backup/modemst1
dd if=/dev/block/mmcblk0p11 of=/external_sd/backup/modemst2
dd if=/dev/block/mmcblk0p12 of=/external_sd/backup/oppodycnvbk
dd if=/dev/block/mmcblk0p13 of=/external_sd/backup/oppostanvbk
dd if=/dev/block/mmcblk0p14 | gzip -c | split -b 2000m -a 3 - /external_sd/backup/system.gz
dd if=/dev/block/mmcblk0p16 of=/external_sd/backup/persist
dd if=/dev/block/mmcblk0p17 of=/external_sd/backup/cache
dd if=/dev/block/mmcblk0p18 of=/external_sd/backup/recovery
dd if=/dev/block/mmcblk0p19 of=/external_sd/backup/fsg
dd if=/dev/block/mmcblk0p20 of=/external_sd/backup/fsc
dd if=/dev/block/mmcblk0p21 of=/external_sd/backup/ssd
dd if=/dev/block/mmcblk0p22 of=/external_sd/backup/misc
dd if=/dev/block/mmcblk0p23 of=/external_sd/backup/LOGO
dd if=/dev/block/mmcblk0p24 of=/external_sd/backup/DRIVER
dd if=/dev/block/mmcblk0p25 of=/external_sd/backup/reserve1
dd if=/dev/block/mmcblk0p26 of=/external_sd/backup/reserve2
dd if=/dev/block/mmcblk0p27 of=/external_sd/backup/reserve3
dd if=/dev/block/mmcblk0p28 of=/external_sd/backup/reserve4
dd if=/dev/block/mmcblk0p30 of=/external_sd/backup/grow
It is not urgently needed to make dd backups of userdata and (internal) sdcard but here for refernce:
Do a compressed multispan backup with dd so you can use the files on an FAT32 filesystem too:
dd if=/dev/block/mmcblk0p15 | gzip -c | split -b 2000m -a 3 - /external_sd/backup/userdata.gz.
dd if=/dev/block/mmcblk0p29 | gzip -c | split -b 2000m -a 3 - /external_sd/backup/sdcard.gz.
Example of restoring partition 29:
cat /external_sd/backup/userdata.gz.* | gzip -dc | dd of=/dev/block/mmcblk0p29
Step3.: Copy Data from internal SD to external SD:
cp -a -i /internal_sd/* /external_sd/ (this can take a while)
ls /external_sd/ (you should see a bunch of files here)
If nothing went wrong go to step4
Step4.: Rename partitions:
umount /internal_sd/
umount /and-sec/
umount /data/
parted /dev/block/mmcblk0
name 15 sdcard
name 29 userdata
print (should show you the renamed layout)
quit
If nothing went wrong go to step5
Step5.: Format the new "userdata" partition and move all content of the old to the new location:
mke2fs -t ext4 -m 0 -L userdata /dev/block/mmcblk0p29
tune2fs -c 0 -i -1 -C -1 /dev/block/mmcblk0p29
mount /dev/block/mmcblk0p15 /internal_sd
mount /dev/block/mmcblk0p29 /data
cp -a -i /internal_sd/* /data/ (this can take a while)
If nothing went wrong go to step6
Step6.: Format the new "sdcard1" partition:
umount /internal_sd/
mke2fs -t ext4 -m 0 -L sdcard1 /dev/block/mmcblk0p15
tune2fs -c 0 -i -1 -C -1 /dev/block/mmcblk0p15
If nothing went wrong go to step7
Step7.: Edit/replace fstab.qcom file to tell System the new mountpoints:
Guide from Coldbird: http://www.oppoforums.com/threads/unpack-repack-find-7-a-boot-img.14538/
Unpack update.zip and make a working directory.
copy file boot.img from update.zip into this directory
download https://github.com/xiaolu/mkbootimg_tools
unpack bootimage:
mkboot boot.img extracted (this will create a folder "extracted" with the content of boot.img where you can find fstab.qcom
edit fstab.qcom co match your needs (i.e. swap internal and external storage as shown below)
pack bootimage:
mkboot extracted newboot.img (creates newboot.img)
test bootimage (via fastboot):
sudo fastboot boot newboot.img
flash bootimage (via fastboot):
sudo fastboot flash boot newboot.img
sudo fatboot reboot
This is how the original file looks:
Code:
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#TODO: Add 'check' as fs_mgr_flags with data partition.
# Currently we dont have e2fsck compiled. So fs check would failed.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337 wait
/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:29,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:auto,noemulatedsd
/devices/platform/xhci-hcd auto auto defaults voldmanaged=usbdisk:auto
Code:
This is the changed file:
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait
# Use internal sdcard as /data
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
#/dev/block/platform/msm_sdcc.1/by-name/sdcard /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
# CM11 hack: Swap sdcard1 and sdcard0 - both in ext4 and (internal)sdcard1 as emulated
#/devices/msm_sdcc.2/mmc_host auto vfat defaults voldmanaged=sdcard0:auto,noemulatedsd
#/dev/block/platform/msm_sdcc.1/by-name/userdata /storage/sdcard1 ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,nodelalloc,uid=1023,gid=1023,dmask=0007,fmask=0007 defaults
#/dev/block/platform/msm_sdcc.1/by-name/sdcard auto ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,nodelalloc,uid=1023,gid=1023,dmask=0007,fmask=0007 voldmanaged=sdcard1:29,nonremovable,noemulatedsd
# Original Entry of Gummy rom:
#/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:29,nonremovable,noemulatedsd
#/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:auto,noemulatedsd
# Working with switched sd-cards, Aut0mat3d:
/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:15,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:auto,nonremovable,noemulatedsd
/devices/platform/xhci-hcd auto vfat defaults voldmanaged=usbdisk:auto
Reserved
Reserved1
This should work for most people until we fully unify the storage.
Good job there.
MrColdbird said:
This should work for most people until we fully unify the storage.
Good job there.
Click to expand...
Click to collapse
Thanks. without your Help with storage mounting i'd dropped the project
I really want to try it out but I fear that I screwed something up... I use the unofficial AOSB port. Could somebody check, if my modifications to the fstab.qcom file are correct?
Original file:
Code:
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
/devices/msm_sdcc.1/mmc_host auto ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,nodelalloc,uid=1023,gid=1023,dmask=0007,fmask=0007 voldmanaged=sdcard0:29,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto vfat defaults voldmanaged=sdcard1:auto,noemulatedsd
/devices/platform/xhci-hcd auto vfat defaults voldmanaged=usbdisk:auto
And the new one:
Code:
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
/devices/msm_sdcc.1/mmc_host auto auto noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,nodelalloc,uid=1023,gid=1023,dmask=0007,fmask=0007 voldmanaged=sdcard1:15,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto auto defaults voldmanaged=sdcard0:auto,nonremovable,noemulatedsd
/devices/platform/xhci-hcd auto vfat defaults voldmanaged=usbdisk:auto
Did I miss something? I would really appreciate your help because I don't want to mess up my device...
looks pretty fine, just give it a try. If it doesnt work it will not damage your device.
alternatively you can use the following lines tested on Gummy and CM11:
Code:
/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:15,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:auto,nonremovable,noemulatedsd
For getting the job more easy i have made a AROMA installer that handles with partition renaming and flashing boot.img:
http://www.oppoforums.com/threads/a...rage-and-mount-external-sd-card-as-sd0.17852/
This can use on stock color OS?
vincent_smoox said:
This can use on stock color OS?
Click to expand...
Click to collapse
in principe: Yes
You have to modify fstab in boot.img to swap sd cards
I did it
Thanks a lot. It worked. Now I have a 128 GB SD Card in my Find7.
If anybody reads this and wants the Files needed for AOSB 1.3.6 - I uploaded the ROM including new boot.img and the boot.img alone to mega. Download here:
ROM+Boot.img
Boot.img only
I hope it works for you too
Everything was working fine until after 2 days, without warning, the screen went blank and then when I rebooted, I'm unable to save screenshots and gallery images are unavailable and external storage unavailable is the error. Sdcard0 is empty under /storage
Sent from my Find7 using XDA Free mobile app
Happened Again! Random reboot followed by corrupt partition. Cannot repair via TWRP also.
defective SD card?
Gesendet von meinem Find7 mit Tapatalk
Possible.
Sent from my Find7 using XDA Free mobile app
can you repeat step 7 again? I don't understand which zip file I have to download and how are the next small steps (command lines)?
Thank you very much for your help
jowar said:
can you repeat step 7 again? I don't understand which zip file I have to download and how are the next small steps (command lines)?
Thank you very much for your help
Click to expand...
Click to collapse
update.zip means the zip file of custom rom you have installed. next steps are in command line like steps before.
Aut0mat3d said:
In this Guide you will learn how to modify your system to handle the 9GB Partition 29 as Data (App-Storage) and use the external SD-Card as internal.
Don't be afraid, this is a lot of text mostly to explain the whole procedure, the steps are straight forward.
Thanks go to Kishd (oppoforums), Coldbird and alienmind (xdadevelopers)
Beside of the public made solutions i will do the following:
Instead of repartitioning the device i will change only the partition name of "sdcard" to "userdata", mount the external SD as internal and use the remaining 3GB Partition as external SD.
So partition 15 will become "sdcard1" and partition 29 will become "userdata"
On the Find7a you will have 9 gigs of application space and xx gigs for the internal sd (size of the sdcard).
This should work on Find7 too, someone has to check the partition layout if it is equal, than you will have 25 gigs of application space and xx gigs for the internal sd (size of the sdcard).
PRECAUTIONS:
If you mess around with partition table you could brick your device, so be careful!
Thes procedure worked for me, i am not responseable for any missing or mistyped commands/procedures, so THINK BEFORE YOU DO ANYTHING!
I am not an android Pro, nor an Develper. My Spare time is very limited so i can't help you out if something goes wrong!
I've done this with Gummy Rom, not tryed with ColorOS or another custom rom but it should work on all AOSP-based ROMS.
The swapped SD-cards do not belong to recovery, so the internal SD is accessed as before.
What do you need:
1.: Time: This is not done in 5 minutes, so please be patient.
2.: A Linux-PC with working ADB and Fastboot
3.: TWRP recovery image on your PC or installed on the device: http://techerrata.com/browse/twrp2/find7a (I used 2.7.1.0)
4.: An SD card with at least 16Gb inseted into your Find7a
5.: Fully charge your Device before messing around, some jobs will need a lot of time.
6.: A fitting custom ROM installed, i've done this with Gummy-M2.3-06-29-14-NIGHTLY-find7 which is suitable for find7 and find7a which can be found here: http://crackflasher.com/gummy-m2-3-06-29-14-nightly-find7-zip-oppo-find-7a-gummy/
7.: The zip-file of the custom rom on your local PC
What are we going to do:
0.: Boot into recovery and access the Device via ADB
1.: Format external SD to Ext4 Filesystem
2.: Backup the original partition layout and all partitions too
3.: Copy Data from internal SD to external
4.: Rename two partitions
5.: Format the new "userdata" partition and move all content of the old to the new location
6.: Format the new "sdcard1" partition
7.: Edit/replace fstab files in /etc to tell TWRP and System the new mountpoints
OK, let's do the trick
Step0.: Booting into recovery and accessing the Device via ADB-shell:
Put the phone into fast boot mode. (Power Volume Up simultaneously)
Open a terminal in your linux-PC and do the following as root (sudo -r):
#: fastboot devices ( check that fastboot is up and running)
#: fastboot boot openrecovery-twrp-2.7.1.0-find7a.img (or boot into TWRP if already installed)
The phone will boot into twrp.
Connect the phone and go into adb
#: adb shell
After entering the adb shell you should see the following in your terminal:
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
~ #
Step1.: Format external SD to Ext4 Filesystem
First we have to write a new partition table as i dont know how your SD-card looks:
umount /external_sd (could cause errors if no filesystem is present on SD - dont mind)
parted /dev/block/mmcblk1 (you should see parted welcome message, no errors!)
mklabel msdos (this will write a new partition table on your sdcard)
mkpart primary ext4 1 -1 (this will make a ext4 partition which uses the whole sd)
quit
Now we are going to format the ext4 partition:
mke2fs -t ext4 -m 0 -L sdcard /dev/block/mmcblk1p1
tune2fs -c 0 -i -1 -C -1 /dev/block/mmcblk1p1
mount /dev/block/mmcblk1p1 /external_sd (Mount the new formatted sd-card -- this should show no errors)
If all is done without errors, proceed to step2
Step2.: Backup the original partition layout and all partitions too
dd makes physical imagea of partitions so you can put it back if needed
While DD is copying you will see no progress bar or any output, so BE PATIENT!
Code:
mkdir /external_sd/backup
parted /dev/block/mmcblk0 print > /external_sd/backup/partitions (original partition Layout for later reference)
dd if=/dev/block/mmcblk0p1 of=/external_sd/backup/modem
dd if=/dev/block/mmcblk0p2 of=/external_sd/backup/sbl1
dd if=/dev/block/mmcblk0p3 of=/external_sd/backup/dbi
dd if=/dev/block/mmcblk0p4 of=/external_sd/backup/ddr
dd if=/dev/block/mmcblk0p5 of=/external_sd/backup/aboot
dd if=/dev/block/mmcblk0p6 of=/external_sd/backup/rpm
dd if=/dev/block/mmcblk0p7 of=/external_sd/backup/boot
dd if=/dev/block/mmcblk0p8 of=/external_sd/backup/tz
dd if=/dev/block/mmcblk0p9 of=/external_sd/backup/pad
dd if=/dev/block/mmcblk0p10 of=/external_sd/backup/modemst1
dd if=/dev/block/mmcblk0p11 of=/external_sd/backup/modemst2
dd if=/dev/block/mmcblk0p12 of=/external_sd/backup/oppodycnvbk
dd if=/dev/block/mmcblk0p13 of=/external_sd/backup/oppostanvbk
dd if=/dev/block/mmcblk0p14 | gzip -c | split -b 2000m -a 3 - /external_sd/backup/system.gz
dd if=/dev/block/mmcblk0p16 of=/external_sd/backup/persist
dd if=/dev/block/mmcblk0p17 of=/external_sd/backup/cache
dd if=/dev/block/mmcblk0p18 of=/external_sd/backup/recovery
dd if=/dev/block/mmcblk0p19 of=/external_sd/backup/fsg
dd if=/dev/block/mmcblk0p20 of=/external_sd/backup/fsc
dd if=/dev/block/mmcblk0p21 of=/external_sd/backup/ssd
dd if=/dev/block/mmcblk0p22 of=/external_sd/backup/misc
dd if=/dev/block/mmcblk0p23 of=/external_sd/backup/LOGO
dd if=/dev/block/mmcblk0p24 of=/external_sd/backup/DRIVER
dd if=/dev/block/mmcblk0p25 of=/external_sd/backup/reserve1
dd if=/dev/block/mmcblk0p26 of=/external_sd/backup/reserve2
dd if=/dev/block/mmcblk0p27 of=/external_sd/backup/reserve3
dd if=/dev/block/mmcblk0p28 of=/external_sd/backup/reserve4
dd if=/dev/block/mmcblk0p30 of=/external_sd/backup/grow
It is not urgently needed to make dd backups of userdata and (internal) sdcard but here for refernce:
Do a compressed multispan backup with dd so you can use the files on an FAT32 filesystem too:
dd if=/dev/block/mmcblk0p15 | gzip -c | split -b 2000m -a 3 - /external_sd/backup/userdata.gz.
dd if=/dev/block/mmcblk0p29 | gzip -c | split -b 2000m -a 3 - /external_sd/backup/sdcard.gz.
Example of restoring partition 29:
cat /external_sd/backup/userdata.gz.* | gzip -dc | dd of=/dev/block/mmcblk0p29
Step3.: Copy Data from internal SD to external SD:
cp -a -i /internal_sd/* /external_sd/ (this can take a while)
ls /external_sd/ (you should see a bunch of files here)
If nothing went wrong go to step4
Step4.: Rename partitions:
umount /internal_sd/
umount /and-sec/
umount /data/
parted /dev/block/mmcblk0
name 15 sdcard
name 29 userdata
print (should show you the renamed layout)
quit
If nothing went wrong go to step5
Step5.: Format the new "userdata" partition and move all content of the old to the new location:
mke2fs -t ext4 -m 0 -L userdata /dev/block/mmcblk0p29
tune2fs -c 0 -i -1 -C -1 /dev/block/mmcblk0p29
mount /dev/block/mmcblk0p15 /internal_sd
mount /dev/block/mmcblk0p29 /data
cp -a -i /internal_sd/* /data/ (this can take a while)
If nothing went wrong go to step6
Step6.: Format the new "sdcard1" partition:
umount /internal_sd/
mke2fs -t ext4 -m 0 -L sdcard1 /dev/block/mmcblk0p15
tune2fs -c 0 -i -1 -C -1 /dev/block/mmcblk0p15
If nothing went wrong go to step7
Step7.: Edit/replace fstab.qcom file to tell System the new mountpoints:
Guide from Coldbird: http://www.oppoforums.com/threads/unpack-repack-find-7-a-boot-img.14538/
Unpack update.zip and make a working directory.
copy file boot.img from update.zip into this directory
download https://github.com/xiaolu/mkbootimg_tools
unpack bootimage:
mkboot boot.img extracted (this will create a folder "extracted" with the content of boot.img where you can find fstab.qcom
edit fstab.qcom co match your needs (i.e. swap internal and external storage as shown below)
pack bootimage:
mkboot extracted newboot.img (creates newboot.img)
test bootimage (via fastboot):
sudo fastboot boot newboot.img
flash bootimage (via fastboot):
sudo fastboot flash boot newboot.img
sudo fatboot reboot
This is how the original file looks:
Code:
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#TODO: Add 'check' as fs_mgr_flags with data partition.
# Currently we dont have e2fsck compiled. So fs check would failed.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337 wait
/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:29,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:auto,noemulatedsd
/devices/platform/xhci-hcd auto auto defaults voldmanaged=usbdisk:auto
Code:
This is the changed file:
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait
# Use internal sdcard as /data
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
#/dev/block/platform/msm_sdcc.1/by-name/sdcard /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check,encryptable=footer,length=-16384
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic wait,check
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait
/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1026,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
# CM11 hack: Swap sdcard1 and sdcard0 - both in ext4 and (internal)sdcard1 as emulated
#/devices/msm_sdcc.2/mmc_host auto vfat defaults voldmanaged=sdcard0:auto,noemulatedsd
#/dev/block/platform/msm_sdcc.1/by-name/userdata /storage/sdcard1 ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,nodelalloc,uid=1023,gid=1023,dmask=0007,fmask=0007 defaults
#/dev/block/platform/msm_sdcc.1/by-name/sdcard auto ext4 noatime,nosuid,nodev,barrier=1,data=ordered,noauto_da_alloc,nodelalloc,uid=1023,gid=1023,dmask=0007,fmask=0007 voldmanaged=sdcard1:29,nonremovable,noemulatedsd
# Original Entry of Gummy rom:
#/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:29,nonremovable,noemulatedsd
#/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:auto,noemulatedsd
# Working with switched sd-cards, Aut0mat3d:
/devices/msm_sdcc.1/mmc_host/mmc0 auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard1:15,nonremovable,noemulatedsd
/devices/msm_sdcc.2/mmc_host auto auto uid=1023,gid=1023,fmask=0007,dmask=0007 voldmanaged=sdcard0:auto,nonremovable,noemulatedsd
/devices/platform/xhci-hcd auto vfat defaults voldmanaged=usbdisk:auto
Click to expand...
Click to collapse
Does this work with Color is 2.1.5?
unpack-repack-find-7-a-boot-img
Does anybody has unpack-repack-find-7-a-boot-img ? OppoForums are down. I need this file.

Experiences with disabled journalism on EXT4

To optimise and speed up my OP3T I have done several optimisations in build.prop and userinit.sh, using LOS 16.
One of the things I had not tried was disabling journalism, but on the internet everyone who did it is speaking about huge speed improvements.
On my OP3T I did from twrp recovery terminal:
Code:
mount -o remount,ro /cache
mount -o remount,ro /data
mount -o remount,ro /system
# Disable journalism on drives
# /system
tune2fs -o journal_data_writeback /dev/block/sde20 &>/dev/null
tune2fs -O ^has_journal /dev/block/sde20 &>/dev/null
# /cache
tune2fs -o journal_data_writeback /dev/block/sda3 &>/dev/null
tune2fs -O ^has_journal /dev/block/sda3 &>/dev/null
# /data
tune2fs -o journal_data_writeback /dev/block/sda15 &>/dev/null
tune2fs -O ^has_journal /dev/block/sda15 &>/dev/null
mount -o remount,rw /cache
mount -o remount,rw /data
mount -o remount,rw /system
Ofcourse it is important not to format drives on cleanup, but to use rm -rf, so I also changed default behavior in settings in twrp for cleaning before update.
Tune2fs commands without errors or issues, device booting fine afterwards so seems to be implemented.
And I am mounting my drives in userinit.sh as following:
Code:
mount -o remount,noatime,noauto_da_alloc,nodiratime,barrier=0,commit=60,nobh /system
mount -o remount,noatime,noauto_da_alloc,rw,nosuid,nodev,nodiratime,barrier=0,commit=60,nobh /data
mount -o remount,noatime,noauto_da_alloc,rw,nosuid,nodev,nodiratime,barrier=0,commit=60,nobh /cache
Now my question;
I do not see any difference in bootup speed, starting apps or other stuff after changing the journalism settings with tune2fs.
Did someone try this, or is someone using this and what are YOUR experiences?
At this moment I am thinking of switching back to default because disabling journalism ofcourse also means more risque for loosing data on crash or else...
It seems of no interest to people here?
No one ever tried ext4 without journalism?
Never mind, I went back to default settings.
My experience; no difference for normal usage with or without.
Not enough benefits to take the risk, so my recommendations is to let it default and not change settings as mentioned above.

Invalid argument error when mounting /dev/block/sda1

I'm trying to follow this post: https://forum.xda-developers.com/showpost.php?p=59166089&postcount=124 to try to get link2sd up and running, I've followed the instructions until I encountered an issue:
mount -t ext4 /dev/block/sda1 /storage/usb
mount: '/dev/block/sda1'->'/storage/usb': Invalid argument
Click to expand...
Click to collapse
The device's name is valid, I've even tried umounting the usb drive in /storage, but it still gives me that error. Have I missed something? The post is quite old and some things might have changed since then.
/system/bin/mount -t ext4 /dev/block/sda1 /storage/usb
Child's Play said:
/system/bin/mount -t ext4 /dev/block/sda1 /storage/usb
Click to expand...
Click to collapse
same thing. I've run fsck on the usb drive, just to be sure, but it seems to work perfectly well.
dictorclef said:
same thing. I've run fsck on the usb drive, just to be sure, but it seems to work perfectly well.
Click to expand...
Click to collapse
Do
ls -l /dev/block/sda1
ls -l /storage/usb
to make sure both exist.
dcarvil said:
Do
ls -l /dev/block/sda1
ls -l /storage/usb
to make sure both exist.
Click to expand...
Click to collapse
they do
ls -l /dev/block/sda1
brw------- 1 root root 8, 1 1969-12-31 19:00 /dev/block/sda1
ls -l /storage/usb
total 0
Click to expand...
Click to collapse
Should have tried this already:
/system/bin/mount -vt ext4 /dev/block/sda1 /storage/usb
mount: '/dev/block/sda1'->'/storage/usb': Invalid argument
try '/dev/block/sda1' type 'ext4' on '/storage/usb'
Click to expand...
Click to collapse
It's as if it doesn't see ext4 in the command. I wonder if it could be a bug with this magisk module? https://forum.xda-developers.com/fire-tv/development/magisk-amazon-firetv4k-ntfs-f2fs-ext4-t3991981
dictorclef said:
Should have tried this already:
It's as if it doesn't see ext4 in the command. I wonder if it could be a bug with this magisk module? https://forum.xda-developers.com/fire-tv/development/magisk-amazon-firetv4k-ntfs-f2fs-ext4-t3991981
Click to expand...
Click to collapse
Did you read note 3 at that link?
"Note 3: Some EXT4 drives may fail to mount,most likely this is because e2fsck it's failing to check for errors. In the next version i will try to add a newer version of e2fsck.However, formatting to EXT4 directly on the device will fix the issue."
You can do "cat /proc/filesystems" to make sure you have ext4 support (should NOT have "nodev" before ext4), but you still may need to format the USB drive on your firestick.
dcarvil said:
Did you read note 3 at that link?
"Note 3: Some EXT4 drives may fail to mount,most likely this is because e2fsck it's failing to check for errors. In the next version i will try to add a newer version of e2fsck.However, formatting to EXT4 directly on the device will fix the issue."
You can do "cat /proc/filesystems" to make sure you have ext4 support (should NOT have "nodev" before ext4), but you still may need to format the USB drive on your firestick.
Click to expand...
Click to collapse
Device does have ext4 support:
cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev ramfs
nodev bdev
nodev proc
nodev cgroup
nodev tmpfs
nodev configfs
nodev debugfs
nodev tracefs
nodev sockfs
nodev pipefs
nodev devpts
ext3
ext2
ext4
vfat
msdos
iso9660
fuseblk
nodev fuse
nodev fusectl
nodev selinuxfs
nodev functionfs
Click to expand...
Click to collapse
And I did try to format the drive using aparted on my firestick, still no luck.
I think I might actually be an idiot, /dev/block/sda1 was already mounted to /mnt/media_rw/[a bunch of numbers and letters]. Unmounted it and it will now mount where I want. Link2sd detects the partition just fine.

Categories

Resources