We have moved to a new Sailfish OS Forum. Please start new discussions there.

Revision history [back]

click to hide/show revision 1
initial version

posted 2015-09-11 08:49:01 +0200

Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

I am now using sailfish 1.1.9.28 and I noticed that alien.sh script has changed to

/opt/alien/system/script/alien_setup_chroot.sh

Previously I managed to get the mounts working changing the alien.sh script by moving word 'data' from this line (19 in the file) to the next for statement:

for d in bin sbin lib usr var etc tmp home vendor data; do
if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
echo "mount $ROOT/$d"
mount --bind /$d $ROOT/$d
fi
done

for d in dev sys run data; do
if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
echo "mount $ROOT/$d"
mount --rbind /$d $ROOT/$d
fi
done

but I don't seem to be able to figure out how excactly I should change the alien_setup_chroot.s. Anyone have any idea how to get this working? Thanks.

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

I am now using sailfish 1.1.9.28 and I noticed that alien.sh script has changed to

/opt/alien/system/script/alien_setup_chroot.sh

Previously I managed to get the mounts working changing the alien.sh script by moving word 'data' from this line (19 in the file) to the next for statement:

for d in bin sbin lib usr var etc tmp home vendor data; do
if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
echo "mount $ROOT/$d"
mount --bind /$d $ROOT/$d
fi
done

for d in dev sys run data; do
if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
echo "mount $ROOT/$d"
mount --rbind /$d $ROOT/$d
fi
done

but I don't seem to be able to figure out how excactly I should change the alien_setup_chroot.s. Anyone have any idea how to get this working? Thanks.

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

I am now using sailfish 1.1.9.28 and I noticed that alien.sh script has changed to

/opt/alien/system/script/alien_setup_chroot.sh

Previously I managed to get the mounts working changing the alien.sh script by moving word 'data' from this line (19 in the file) to the next for statement:

for d in bin sbin lib usr var etc tmp home vendor data; do
if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
echo "mount $ROOT/$d"
mount --bind /$d $ROOT/$d
fi
done

for d in dev sys run data; do
if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
echo "mount $ROOT/$d"
mount --rbind /$d $ROOT/$d
fi
done

but I don't seem to be able to figure out how excactly I should change the alien_setup_chroot.s. Anyone have any idea how to get this working? Thanks.

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

I am now using sailfish 1.1.9.28 and I noticed that alien.sh script has changed toAfter this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh

Previously I managed to get the mounts working changing the alien.sh script by moving word 'data' from this line (19 in the file) to the next for statement:

/opt/alien/system/script/alien_setup_chroot.sh:
<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor data; vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
 echo "mount $ROOT/$d"
 mount --bind /$d $ROOT/$d
 fi
done

#original: for d in dev sys run data; media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
 echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
 fi
done
</pre>

/usr/sbin/apkd-mount: 
<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

but I don't seem The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

you do it at your own risk, carefuly. On mistakes you have to be able to figure out how excactly I should change the alien_setup_chroot.s. Anyone have any idea know, how to get this working? Thanks.work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

You have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

/opt/alien/system/script/alien_setup_chroot.sh:
<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>
 

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

You have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  1,8G   12G  14% /
/dev/mmcblk0p28        14G  1,8G   12G  14% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  200K  405M   1% /dev/shm
tmpfs                 405M   31M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  4,0K  405M   1% /tmp
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  1,8G   12G  14% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p9         48M  9,0M   39M  19% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/data
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/bin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/sbin
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/lib
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/usr
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/var
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/etc
tmpfs                 405M  4,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/home
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  200K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   31M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/media
/dev/mmcblk0p28        14G  1,8G   12G  14% /opt/alien/system_jolla
/dev/fuse              14G  1,8G   12G  14% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

You have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

You have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Everything else is fine, but I can't seem to be able to make both fuse-mount points. df -h gives:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines unter the "#original:" tag:

You have to make changes in two files for 1.1.9.28, look the lines unter under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/media
/mnt/sd
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/sd
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

<pre>
#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done
</pre>

/usr/sbin/apkd-mount:

<pre>
if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi
</pre>

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

(edit jolladiho) preconditions: 1. your sd has a partitiontable 2. your first partition has a linux filesystem 3. your linux filesystem contains the folders .home and .android on root folder

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/sd
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

(edit jolladiho): enable the service with "systemctl enable mount-custom.service"

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done

/usr/sbin/apkd-mount:

if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

(edit jolladiho) preconditions: 1. preconditions:

  1. your sd has a partitiontable 2.
  2. your first partition has a linux filesystem 3. filesystem
  3. your linux filesystem contains the folders .home and .android on root folder

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/sd
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

(edit jolladiho): enable the service with "systemctl enable mount-custom.service"

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done

/usr/sbin/apkd-mount:

if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

Edit (Leinad): please don't change system files and take a look here: http://talk.maemo.org/showthread.php?p=1486543#post1486543

(edit jolladiho) preconditions:

  1. your sd has a partitiontable
  2. your first partition has a linux filesystem
  3. your linux filesystem contains the folders .home and .android on root folder

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/sd
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

(edit jolladiho): enable the service with "systemctl enable mount-custom.service"

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done

/usr/sbin/apkd-mount:

if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot

[1.1.9.28] Mounting SD card as home partition and android storage

Edit (Leinad): please don't change system files and take a look here: here instead: http://talk.maemo.org/showthread.php?p=1486543#post1486543

(edit jolladiho) preconditions:

  1. your sd has a partitiontable
  2. your first partition has a linux filesystem
  3. your linux filesystem contains the folders .home and .android on root folder

I am using this script to mount my home dir and android folder to SD card /usr/sbin/mount-sd.custom.sh

#!/bin/bash

ACTION=$1

if [ "$ACTION" = "add" ]; then
  mount /dev/mmcblk1p1 /mnt/sd
  mount -o bind /mnt/sd/.home /home/nemo
  mount -o bind /mnt/sd/.android /data/media
else
  umount /data/media
  umount /home/nemo
  umount /mnt/sd
fi

and then mount it with /lib/systemd/system/mount-custom.service

[Unit]
Description=Handle custom sdcard
After=local-fs.target
RequiresMountsFor=/home

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/mount-sd.custom.sh add
ExecStop=/usr/sbin/mount-sd.custom.sh remove

[Install]
WantedBy=multi-user.target

(edit jolladiho): enable the service with "systemctl enable mount-custom.service"

After this to make the fusermount work properly for android storage we have to make changes in two files for 1.1.9.28, look the lines under the "#original:" tag:

/opt/alien/system/script/alien_setup_chroot.sh:

#original: for d in bin sbin lib usr var etc tmp home vendor; do
for d in bin sbin lib usr var etc tmp vendor; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        mount --bind /$d $ROOT/$d
    fi
done

#original: for d in dev sys run media; do
for d in dev sys run media home; do
    if [ "" == "$(grep $ROOT/$d /proc/mounts)" ]; then
        echo "mount $ROOT/$d"
        if [ $d == "sys" ]; then
            mount --make-private /sys/fs/cgroup
        fi
        mount --make-private --rbind /$d $ROOT/$d
    fi
done

/usr/sbin/apkd-mount:

if [[ "$CMD" == "apkd-umount" ]]; then
    /bin/umount "$MOUNTDIR"
else # apkd-mount
    if [ ! -d "$MOUNTDIR" ]; then
        mkdir -p "$MOUNTDIR"
    fi
    # On tablet and other non-btrfs devices, do homeification
    DATADIR="/home/.android/data"
    if [ ! -d "$DATADIR" ]; then
        # On phone and btrfs devices, use /data directly
        DATADIR="/data"
    fi
#original:   /bin/mount --bind "$DATADIR" "$MOUNTDIR"
    /bin/mount --rbind "$DATADIR" "$MOUNTDIR"
fi

The "apkd-mount"is new in 1.1.9.28 and does the "data" part, that was done in older versions in "alien_setup_chroot.sh".

Now reboot your device and check with df -h that home folder and android storage is mounted to SD card:

Filesystem            Size  Used Avail Use% Mounted on
rootfs                 14G  2,3G   11G  17% /
/dev/mmcblk0p28        14G  2,3G   11G  17% /
devtmpfs              404M   64K  404M   1% /dev
tmpfs                 405M  464K  405M   1% /dev/shm
tmpfs                 405M   30M  375M   8% /run
tmpfs                 405M     0  405M   0% /sys/fs/cgroup
tmpfs                 405M  8,0K  405M   1% /tmp
/dev/mmcblk0p19       7,9M  4,1M  3,9M  52% /drm
/dev/mmcblk0p18        64M   45M   20M  70% /firmware
/dev/mmcblk0p28        14G  2,3G   11G  17% /home
/dev/mmcblk0p25       7,9M  4,2M  3,8M  53% /persist
/dev/mmcblk0p9         48M  8,5M   39M  18% /var/systemlog
tmpfs                 405M     0  405M   0% /mnt/asec
tmpfs                 405M     0  405M   0% /mnt/obb
/dev/mmcblk1p1         59G   25G   31G  45% /mnt/sd
/dev/mmcblk1p1         59G   25G   31G  45% /home/nemo
/dev/mmcblk1p1         59G   25G   31G  45% /data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/data
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/data/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/bin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/sbin
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/lib
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/usr
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/var
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/etc
tmpfs                 405M  8,0K  405M   1% /opt/alien/tmp
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/vendor
devtmpfs              404M   64K  404M   1% /opt/alien/dev
tmpfs                 405M  464K  405M   1% /opt/alien/dev/shm
tmpfs                 405M     0  405M   0% /opt/alien/sys/fs/cgroup
tmpfs                 405M   30M  375M   8% /opt/alien/run
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/media
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/home
/dev/mmcblk1p1         59G   25G   31G  45% /opt/alien/home/nemo
/dev/mmcblk0p28        14G  2,3G   11G  17% /opt/alien/system_jolla
/dev/fuse              59G   25G   31G  45% /opt/alien/home/nemo/android_storage
/dev/fuse              59G   25G   31G  45% /mnt/sd/.home/android_storage
/dev/fuse              59G   25G   31G  45% /home/nemo/android_storage

you do it at your own risk, carefuly. On mistakes you have to know, how to work with recovery mode.

This works great now. Thank you alot