few days ago I decided to move to "Cyanogen Mod" (kabaldan),
and i did the move from EXT2 to EXT4 and here what I did
Code:
ext2 to ext3 convert:
boot to AOR and pick a console
umount /dev/block/mmcblk0p2
/system/bin/e2fsck -f /dev/block/mmcblk0p2
/system/bin/tune2fs -j /dev/block/mmcblk0p2
ext3 to ext4:
first two step is same as before
/system/bin/tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p2
/system/bin/e2fsck -fpDC0 /dev/block/mmcblk0p2
and now I tried the Ginger MIUI but then my EXT4 partition dont work
and it writes me this
Code:
The superblock could not read or does not describe a correct ext2 filesystem.
if the device is vaild and is 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>
I really need help on this bcuz my 8gb sd card now have 6gb how do I fix this?
it will be great if you can post here the lines to write in the terminal and explain it to me a bit
BTW im back on cyanogen for good bcuz of that good built in hebrew
Code:
Note: Before you apply the update if you have upgraded to ext4 it is advised to upgrade your OR. Please refer this post
http://forum.xda-developers.com/show...postcount=2755
This is mentioned in the MIUI rom thread. Have you upgraded OR yet?
Related
I am using CyanogenMod v3.6.8.1 and I decided I wanted a swap partition.
I partitioned my 2GB SD with a 32MB swap partition and formatted using gparted.
From the shell (using adb) I remounted /dev/block/mtdblock3 with rw and edited /system/etc/fstab and added a line for the swap. Here is what the entire file looks like now:
Code:
/dev/block/mtdblock3 /system yaffs2 rw
/dev/block/mtdblock4 /cache yaffs2 rw
/dev/block/mtdblock5 /data yaffs2 rw
/dev/block/mmcblk0p1 /sdcard vfat rw
/dev/block/mmcblk0p2 /system/sd auto rw
/dev/block/mmcblk0p3 none swap sw
/system/modules/modules.sqf /system/modules squashfs ro,loop
/system/xbin/xbin.sqf /system/xbin squashfs ro,loop
I can turn on the swap with 'swapon -a' which works and shows up in /proc/swaps and with the 'free' command, but upon boot, swap isn't activating.
I'm not really familiar with the android init scripts, so I'm not sure how I can enable the swap automatically upon boot. Any advice would be appreciated.
Okay I fixed it.
I downloaded one of Drizzy's roms that I know use swap, extracted, and searched for 'swap' in all the files. I found it in /system/bin/a2sd at the end. Here is what's there:
Code:
if [ -n /dev/block/mmcblk0p3 ];
then
mkswap /dev/block/mmcblk0p3;
fi;
if [ -e /dev/block/mmcblk0p3 ];
then
echo 30 > /proc/sys/vm/swappiness;
swapon /dev/block/mmcblk0p3;
fi;
The first if doesn't make sense to me as it's a string test which will always be true, so I got rid of it and just kept the test for the file existing, but I changed it to -b to be a little more specific (to see if it's a block device), and I commented out the swappiness change to leave it at default.
Im using same rom and i woild love to do this but is there any other way as im totally unfamiliar with adb
turboyo said:
Im using same rom and i woild love to do this but is there any other way as im totally unfamiliar with adb
Click to expand...
Click to collapse
I just used adb because I can use the copy/paste function of my gnome terminal and it's easier than using the shell on the phone itself.
Here is what is needed:
Get into a root shell, either on the phone or using adb.
Code:
mount -t yaffs2 -o rw,remount /dev/block/mtdblock3 /system
vi /system/bin/a2sd
press capital G which will take you to the bottom of the file
press lower case o which will open a line below your cursor for editing.
type in the following:
Code:
if [ -b /dev/block/mmcblk0p3 ];
then
echo 30 > /proc/sys/vm/swappiness;
swapon /dev/block/mmcblk0p3;
fi;
press escape to exit insert mode (I read that in the terminal emulator you have to hold the trackball and press 1 for esc)
type :wq and press enter.
exit terminal and reboot. To see if it's working, get back into a terminal and use the command 'free'
you can also do 'swapon -a' instead of specifying the swap partition itself. Note that the above example uses the third partition of the SD card as the swap.
This also assumes you have already created the swap partition and formatted it as swap.
You can omit the swappiness line to leave it at the linux default of 60.
I used the method to enable swap in Linux and it works like designed.
I used Amon_RA Recovery 1.52 to partition my SDCARD and the new recovery lets you choose the size of your partitions.
So I created a 256MB Swap.
From a console/terminal do the following after creating your swap partition the size you want it:
Type each line below in order and hit enter after each in the terminal.
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
mkswap /dev/block/mmcblk0p3
echo "swapon -a" >> /system/etc/init.d/05userinit
echo "/dev/block/mmcblk0p3 swap swap" >> /system/etc/fstab
reboot
This works on all roms i have run into. It does help the performance on the memory hobbled G1.
Once you have rebooted go back into a terminal and run the "free" command. You should see that you have a working swap partition.
TGA_Gunnman
The UNIX Dude
Hello. i wanted to know if anybody has tried moving your swap to your data or cache partition on your phone since it's faster then sd. I found this and i'm guessing you could remount your your cache as swap instead of sdcard.
i'm new to the android/linux thing and this site, but this has really helped alot!
There's some smart mofo's and TONS of info on here.
i found this more or less. This is a mixture of threads
Enable swap:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
mkswap /dev/block/mmcblk0p3
echo "swapon -a" >> /system/etc/init.d/05userinit (on my phone it was 20userinit)
echo "/dev/block/mmcblk0p3 swap swap" >> /system/etc/fstab (i didnt have fstab, use > instead)
reboot
Move swap to data:
mkdir /data/swap
echo "ln -s /data/swap mtdblk0p3" >> /system/etc/init.d/??userinit (whatever it is on your phone)
so i guess this thread can be deleted. sorry
Please Read Carefully!
Do NOT, I repeat DO NOT put swap on the phone's nand. Swap is accessed very often and causes further wearing of the NAND chips.This is why it was never implemented before, it can end up killing the chip completely, you're better off leaving it on the SD card. And the phone is about 2-3yrs of age now, so the NAND is probably worn something bad...
rdhoggattjr said:
i found this more or less. This is a mixture of threads
Enable swap:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
mkswap /dev/block/mmcblk0p3
echo "swapon -a" >> /system/etc/init.d/05userinit (on my phone it was 20userinit)
echo "/dev/block/mmcblk0p3 swap swap" >> /system/etc/fstab (i didnt have fstab, use > instead)
reboot
Move swap to data:
mkdir /data/swap
echo "ln -s /data/swap mtdblk0p3" >> /system/etc/init.d/??userinit (whatever it is on your phone)
so i guess this thread can be deleted. sorry
Click to expand...
Click to collapse
Uh, this doesn't do what you might think it does. The swap remains on the sd card (mmcblk0p3), assuming you typo'ed on the ln command...
Jeff
Ditto what they said about wearing out the internal flash...
SDcard is replacable, plus if your builtin is faster, you need a new card.
Class 10 cards are much faster, and far cheaper than killing your phone by wearing out the flash.
Hey,
I like to mount my external SD Card as ext3 to support large files. The SD Card is formatted with ext3 but now Android shows only an empty folder.
So i tried to remount the SD:
Code:
mount -o rw,remount -t ext3 /dev/block/vold/197:33 /mnt/sdcard/externald_sd
But it doesnt use something... Does anybody has an idea? Some Example or sthing else?
Greetz
FaxXer said:
Hey,
I like to mount my external SD Card as ext3 to support large files. The SD Card is formatted with ext3 but now Android shows only an empty folder.
So i tried to remount the SD:
Code:
mount -o rw,remount -t ext3 /dev/block/vold/197:33 /mnt/sdcard/externald_sd
But it doesnt use something... Does anybody has an idea? Some Example or sthing else?
Greetz
Click to expand...
Click to collapse
u need a kernel that supports ext3. u can ask one of the guys compiling at the moment if they have time to add an ext3 module for u.
May be a stupid question:
would ext4 work instead? I thought the system partition would use this FS.
filesystem is already ext4
wintel_mac said:
May be a stupid question:
would ext4 work instead? I thought the system partition would use this FS.
Click to expand...
Click to collapse
well the system uses ext4 so it should work, but i'm not sure what u're trying to achieve. i use a 16 gb class 10 formatted fat32
Blumdum said:
filesystem is already ext4
Click to expand...
Click to collapse
He's talking about formatting external sd-card
When I get him right, he has a file that exceeds the 4GB FAT32 limit.
So he looks for an alternative to FAT32, which might be some kind of ext*-FS.
wintel your right!
In the Android-Hilfe Forum someone said the system expect first an vfat partition and then the ext. I think thats wrong cause its not working but somehow it has to go.
Hmm should I write these mount command I postet in the init.rc? Or something else. Would be very nice if you post your ideas!
Thanks
init.rc+ ext3 module/object included in kernel
Hmm okay thats good but how do I use them? So I can read and write to my external sd card with an ext3 or ext2 partition.
Thanks
Come on guys where are the great developers?!
Ok I did a test with busybox inbuilt mount, but I tried only with an image.
Not with a real SD card! This worked for me:
On a linux box:
# dd if=/dev/zero of=/tmp/image bs=1M count=1k
# mkfs.ext4 /tmp/image
Copy file to your phone. Then:
On the phone with terminal:
# mkdir /sdcard/mmnt
# busybox mount -o loop /sdcard/image /sdcard/mmnt
To unmount:
# busybox umount -l /sdcard/mmnt
Anybody tried that?
If I understand u right u puting an image file (ext3/4) on the sd and mount that as a virtual disk. Wouldn't the image file be bound to the same restrictoins as other content on a fat32 file system? Like the 4 gig limit!
YOU WILL LOSE ALL DATA ON YOUR SDCARD IF YOUR FDISK
BACKUP WHATEVER IS ON THERE FIRST!!!
YOU'VE BEEN WARNED
using a photon 4g but....
what i did was get an external sdcard reader writer...
(used ubuntu) and let it mount
fdisk device and DELETE ALL PARTITIONS
write
fdisk again
create a linux primary type 83
type mount and grab the /dev/sdcX value (it was /dev/sdc1 for me)
umount that
then
mkfs.ext3 /dev/sdcX ... ( heres the thing though with cyanogen mod 7 kernel 2.6.32.9 SMP PREEMPT)
had to reboot twice for it to be seen in file manager...
its buggy but it does work for the most part
Reviving an old thread, but I just found that I can format a MicroSD under NTFS and it will work with Paragon's NTFS module. At the very least, my phone will mount the drive. I partitioned and formatted it with ext4 on my Linux machine and it didn't recognize it, but I did have it use the GUID partition table. Hoping to be able to load up some videos to take with me.
ext4 sdcard mount works
FaxXer said:
Hey,
I like to mount my external SD Card as ext3 to support large files. The SD Card is formatted with ext3 but now Android shows only an empty folder.
So i tried to remount the SD:
Code:
mount -o rw,remount -t ext3 /dev/block/vold/197:33 /mnt/sdcard/externald_sd
But it doesnt use something... Does anybody has an idea? Some Example or sthing else?
Greetz
Click to expand...
Click to collapse
The problem is with the shell interpreting the special character ":"
To make it work, first create a symlink to the device node:
Code:
ln -s /dev/block/vold/197\:17 /dev/sd2
Then mount it:
Code:
busybox mount /dev/sd2 /mnt/tmp
Code:
sh-4.1# ls -l /dev/sd2
lrwxrwxrwx root root 2013-11-16 14:45 sd2 -> /dev/block/vold/179:17
sh-4.1# mount|grep sd2
/dev/sd2 /mnt/tmp ext4 rw,relatime,user_xattr,acl,barrier=1,data=ordered 0 0
success mounting ext formatted SD Card on Android
An improvement in technique to mount ext formatted SDcard:
1) be root and open terminal
2) insert the card
3) see the block device and partition names from dmesg
4) mount device to location of choice (create the directory if needed)
Below is an example of an SD card with one ext4 partition on it
Code:
bash-4.1# dmesg | tail | grep mmc
<6>[20230.719541] mmc1: new high speed SDHC card at address 0007
<6>[20230.722803] mmcblk1: mmc1:0007 SD32G 29.3 GiB (ro)
<6>[20230.728352] mmcblk1: p1
bash-4.1# busybox mount /dev/block/mmcblk1p1 /data/mnt/sdcard2
tribh said:
An improvement in technique to mount ext formatted SDcard:
1) be root and open terminal
2) insert the card
3) see the block device and partition names from dmesg
4) mount device to location of choice (create the directory if needed)
Below is an example of an SD card with one ext4 partition on it
Code:
bash-4.1# dmesg | tail | grep mmc
<6>[20230.719541] mmc1: new high speed SDHC card at address 0007
<6>[20230.722803] mmcblk1: mmc1:0007 SD32G 29.3 GiB (ro)
<6>[20230.728352] mmcblk1: p1
bash-4.1# busybox mount /dev/block/mmcblk1p1 /data/mnt/sdcard2
Click to expand...
Click to collapse
Would this work just the same way with i9000?
After this, no more access to the extSD by the Windows PC but only with Ubuntu, right?
tetakpatak said:
Would this work just the same way with i9000?
After this, no more access to the extSD by the Windows PC but only with Ubuntu, right?
Click to expand...
Click to collapse
Since it's generic Linux kernel and busybox functionality it should work on any 'droid. The SDcard device name might be different than in the above example - you will see the correct device and partition names after you insert SDcard and run `dmesg | tail` on the tablet or phone.
(of course your device must be rooted and have busybox...)
Typically Windows is engineered not to recognise anything that does not come from Microsoft, so you will not be able to mount the Linux partition via Windows.
(sorry for my bad english and i still cant post link now)
According to http:// forum.xda-developers.com/showpost.php?p=20976390&postcount=294 ,
I think it may work to redirect partition into SD card, so that safestrap will work on non-VZW-phones.
Safestrap uses /preinstall as a new /system partition to install 2nd ROM on it,
We can make a new partition on SD card to replace "/preinstall".
Here is my steps:
backup your SD card and make partitions
boot to safestrap recovery with usb connected to your PC
plug to PC first, then boot to safestrap recovery mode,
now you can use adb shell to control your system.
1.1 make partitions on your SD Card (ref: http:// forum.xda-developers.com/showthread.php?t=534714)
SD card is /dev/block/mmcblk0 so use parted to modify it
Code:
~ # [B]parted /dev/block/mmcblk0[/B]
GNU Parted 1.8.8.1.179-aef3
Using /dev/block/mmcblk0
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) [B]print[/B]
Model: SD SU08G (sd/mmc)
Disk /dev/block/mmcblk0: 7948MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 7946MB 7946MB primary fat32 lba
(parted)
as you can see i have a 8G SD card, fullly used as fat32 partition,
we use rm and mkpartfs to modify our SD card partition, make sure you have backuped your SD card.
for compatibility i choose to make fat32 partition first,
(512mb/1G for new system size is enough, but i want my 2nd system partiton bigger)
Code:
rm 1
mkpartfs primay fat32 0 6G
mkpartfs primay ext2 6G 100%
after done all the things you can see your partition by print,
e.g.
Code:
(parted) [B]print[/B]
Model: SD SU08G (sd/mmc)
Disk /dev/block/mmcblk0: 7948MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 5996MB 5996MB primary fat32 lba
2 5996MB 7946MB 1949MB primary ext2
(parted) [B]quit[/B]
1.2 format fat32 partitions
Code:
busybox mkdosfs /dev/block/mmcblk0p1
1.3 make ext2 -> ext3
sometimes you have to mount /dev/block/mmcblk0p2 first, depends on the tune2fs version
Code:
tune2fs -j /dev/block/mmcblk0p2
or you can do ext3 -> ext4 by typing (i never tried, dont know if safestrap support ext4 ??)
Code:
tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p2
e2fsck -fpDC0 /dev/block/mmcblk0p2
Modify safestrap to use our new partition as 2nd system partition
after you install safetrap 1.08, you have some files in your original system,
we have to modify the /preinstall partition (/dev/block/mmcblk1p23) to our new partition (/dev/block/mmcblk0p2 as example here):
2.1 modify /system/bin/logwrapper
find /dev/block/mmcblk1p23, replace to your new partition
Code:
# mount preinstall and move /preinstall/etc/rootfs/* to /
/sbin/busybox mount -t ext3 [B]/dev/block/mmcblk0p2[/B] /preinstall
2.2 modify fixboot.sh in /system/etc/safestrap/2nd-init.zip
find /dev/block/mmcblk1p23, replace to your new partition
Code:
/sbin/busybox ln -s [B]/dev/block/mmcblk0p2[/B] system
2.3 modify etc/recovery.fstab in /system/etc/safestrap/recovery.zip
find /dev/block/mmcblk1p23, replace to your new partition
Code:
/system ext3 [B]/dev/block/mmcblk0p2[/B]
reboot for reloading settings
safestrap need to reload settings, we need reboot.
modify your 2nd ROM to make sure everything works
safestrap loads etc/rootfs from your new partition,
we need to modify /dev/block/mmcblk1p23 to our partition.
you can modify the ROM (.zip) file directly or edit them after installing ROM
just find /dev/block/mmcblk1p23 and replace them to your new partition (e.g. /dev/block/mmcblk0p2 here)
Special thanks to hashcode.
Enjoy safestrap on non-VZW-phones !