View Single Post
Posts: 539 | Thanked: 518 times | Joined on May 2010 @ nanaurbusiness
#50
Originally Posted by Thoke View Post
On topic, while I researched about btrfs, wouldn't this be possible:
First change the mount-sd.sh as said here

Then create btrfs subvolume(s), for example music:
btrfs subvolume create /user/100000/media/sdcard/Music
That's what I'm using.

my mount-sd.sh now looks like this
Code:
#!/bin/bash

SDCARD=/mnt/sdcard
DEF_UID=$(grep "^UID_MIN" /etc/login.defs |  tr -s " " | cut -d " " -f2)
DEF_GID=$(grep "^GID_MIN" /etc/login.defs |  tr -s " " | cut -d " " -f2)
DEVICEUSER=$(getent passwd $DEF_UID | sed 's/:.*//')
MNT=/run/user/$DEF_UID/media/sdcard

if [ "$ACTION" = "add" ]; then
        if [ -b /dev/mmcblk1p1 ]; then
                ln -sf /dev/mmcblk1p1 $SDCARD
        elif [ -b /dev/mmcblk1 ]; then
                ln -sf /dev/mmcblk1 $SDCARD
        else
                exit $?
        fi
        su $DEVICEUSER -c "mkdir -p $MNT"
        mount $SDCARD $MNT -o uid=$DEF_UID,gid=$DEF_GID || mount -o subvol=sdcard,compress /dev/mmcblk1 /home/nemo/sdcard/
        mount -o subvol=Videos /dev/mmcblk1 /home/nemo/Videos/
        mount -o subvol=Desktop /dev/mmcblk1 /home/nemo/Desktop/
        mount -o subvol=Documents /dev/mmcblk1 /home/nemo/Documents/
        mount -o subvol=Downloads /dev/mmcblk1 /home/nemo/Downloads/
        mount -o subvol=Music /dev/mmcblk1 /home/nemo/Music/
        mount -o subvol=Pictures /dev/mmcblk1 /home/nemo/Pictures/
        mount -o subvol=Public /dev/mmcblk1 /home/nemo/Public/
        mount -o subvol=Templates /dev/mmcblk1 /home/nemo/Templates/
        mount -o subvol=.android /dev/mmcblk1 /data/sdcard/
else
        umount $SDCARD

        if [ $? = 0 ]; then
                rm -f $SDCARD
        else
                umount -l $MNT
                rm -f $SDCARD
        fi
fi
so now mount command shows:
Code:
/dev/mmcblk1 on /home/nemo/Public type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Templates type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /data/sdcard type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/sdcard type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Videos type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Desktop type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Documents type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Downloads type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Music type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
/dev/mmcblk1 on /home/nemo/Pictures type btrfs (rw,relatime,thread_pool=4,ssd,noacl,space_cache)
and df -h gives me...
Code:
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Public
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Templates
/dev/mmcblk1           60G  3.0G   53G   6% /data/sdcard
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/sdcard
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Videos
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Desktop
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Documents
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Downloads
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Music
/dev/mmcblk1           60G  3.0G   53G   6% /home/nemo/Pictures
No need to manually mount my btrfs subvolumes anymore.

I use bob_bipbip's guide posted here
but I added a hidden android subvolume (.android) and mounted the hidden .android subvolume to /data/sdcard and the sdcard itself to /home/nemo/sdcard

Code:
mount -o subvol=sdcard,compress /dev/mmcblk1 /home/nemo/sdcard/
mount -o subvol=.android /dev/mmcblk1 /data/sdcard/
Regards,

J4ZZ
__________________

N900 ~ $ make me a sandwich
-bash: no, make it yourself
N900 ~ $ sudo make me a sandwich
-bash: ok then...
 

The Following 2 Users Say Thank You to J4ZZ For This Useful Post: