Trying to run the Mi Note 10 port on Mi Note 10 Lite

I got toco mount points

toco mount points
1|toco:/ $ ls -l /dev/block/platform/*/*/by-name/                                                                                                                                                                 
total 0
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 abl -> /dev/block/sde36
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 ablbak -> /dev/block/sde37
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 aop -> /dev/block/sde16
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 aopbak -> /dev/block/sde17
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 apdp -> /dev/block/sde8
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk01 -> /dev/block/sda4
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk02 -> /dev/block/sda5
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk03 -> /dev/block/sda6
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk04 -> /dev/block/sda7
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk05 -> /dev/block/sda10
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk06 -> /dev/block/sda13
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk07 -> /dev/block/sda15
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk08 -> /dev/block/sda20
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk09 -> /dev/block/sda22
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk31 -> /dev/block/sdd1
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk32 -> /dev/block/sdd3
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk33 -> /dev/block/sdd5
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk41 -> /dev/block/sde5
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk43 -> /dev/block/sde24
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk44 -> /dev/block/sde30
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk45 -> /dev/block/sde40
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bk47 -> /dev/block/sde50
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk51 -> /dev/block/sdf3
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 bk52 -> /dev/block/sdf4
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 bluetooth -> /dev/block/sde27
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 boot -> /dev/block/sde49
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cache -> /dev/block/sda29
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 catecontentfv -> /dev/block/sde29
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 catefv -> /dev/block/sde19
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cateloader -> /dev/block/sde32
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 cdt -> /dev/block/sdd2
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cmnlib -> /dev/block/sde20
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cmnlib64 -> /dev/block/sde22
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cmnlib64bak -> /dev/block/sde23
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cmnlibbak -> /dev/block/sde21
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 core_nhlos -> /dev/block/sde51
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 cust -> /dev/block/sda31
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 dbg -> /dev/block/sda3
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 ddr -> /dev/block/sdd4
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 devcfg -> /dev/block/sde14
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 devcfgbak -> /dev/block/sde15
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 devinfo -> /dev/block/sda17
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 dip -> /dev/block/sde28
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 dsp -> /dev/block/sde48
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 dtbo -> /dev/block/sde45
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 exaid -> /dev/block/sda30
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 frp -> /dev/block/sda9
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 fsc -> /dev/block/sdf2
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 fsg -> /dev/block/sdf1
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 gsort -> /dev/block/sde44
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 hyp -> /dev/block/sde42
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 hypbak -> /dev/block/sde43
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 ifaa -> /dev/block/sde46
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 imagefv -> /dev/block/sda27
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 keymaster -> /dev/block/sde25
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 keymasterbak -> /dev/block/sde26
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 keystore -> /dev/block/sda8
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 limits -> /dev/block/sde4
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 logdump -> /dev/block/sda24
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 logfs -> /dev/block/sda14
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 logo -> /dev/block/sde47
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 metadata -> /dev/block/sda19
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 minidump -> /dev/block/sda25
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 misc -> /dev/block/sda11
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 modem -> /dev/block/sde52
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 modemst1 -> /dev/block/sdf5
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 modemst2 -> /dev/block/sdf6
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 msadp -> /dev/block/sde9
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 multiimgoem -> /dev/block/sde1
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 multiimgqti -> /dev/block/sde2
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 oem_misc1 -> /dev/block/sda18
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 oops -> /dev/block/sda16
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 persist -> /dev/block/sdf7
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 persistbak -> /dev/block/sdf8
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 qupfw -> /dev/block/sde6
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 qupfwbak -> /dev/block/sde7
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 rawdump -> /dev/block/sda26
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 recovery -> /dev/block/sda28
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 secdata -> /dev/block/sde3
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 splash -> /dev/block/sda21
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 spunvm -> /dev/block/sde41
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 ssd -> /dev/block/sda2
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 storsec -> /dev/block/sde11
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 super -> /dev/block/sda23
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 switch -> /dev/block/sda1
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 toolsfv -> /dev/block/sde35
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 tz -> /dev/block/sde38
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 tzbak -> /dev/block/sde39
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 uefisecapp -> /dev/block/sde33
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 uefisecappbak -> /dev/block/sde34
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 uefivarstore -> /dev/block/sde18
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 userdata -> /dev/block/sda32
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 vbmeta -> /dev/block/sde10
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 vbmeta_system -> /dev/block/sde12
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 vbmeta_vendor -> /dev/block/sde13
lrwxrwxrwx 1 root root 16 1970-03-12 10:21 vm-data -> /dev/block/sda12
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 xbl -> /dev/block/sdb2
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 xbl_config -> /dev/block/sdb1
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 xbl_configbak -> /dev/block/sdc1
lrwxrwxrwx 1 root root 15 1970-03-12 10:21 xblbak -> /dev/block/sdc2

Oops. You have Dynamic Partitions…are you sure your device came like this 4-5 years ago? That’s a newer thing. There might have been custom roms that added that later, though.

That was actually visible from lsblk. And it explainds missing /dev/sda24 (as it got merged into sda23 probably, for more space).

Need to think more if we can retrofitt dynparts easily, maybe you have instructions how to revert if they were created by a custom ROM?

No, my device without any fw modifications.
According to information from GitHub - tchebb/parse-android-dynparts: Allows mounting Android Dynamic Partitions (a.k.a. super.img) files on Linux using "dmsetup create"
Most devices running Android 10 and higher use Android’s Dynamic Partitions feature
About Dynamic partitions:
Dinamik bölümlendirme uygulama  |  Android Open Source Project

BTW, maybe, it is possible to use this tool under Sailfish OS for mounting necessary stuff?

Other user-guide that I found
https://xdaforums.com/t/guide-flash-retrofit-dynamic-partition-roms-on-redmi-7a-8-8a.4515423/
Revert back to standard partition ROM:

  1. Enter recovery
  2. Untick “Settings > Unmount System before installing a ZIP”
  3. Do “Advanced > Unmap Super Devices”
  4. Flash the ROM
  5. Factory Reset (Format data is recommended)
  6. Reboot and Enjoy

From: adb - How to mount system under super partion? - Android Enthusiasts Stack Exchange
On devices with enough disk space one can convert ext4-dedup dynamic partition into r/w system partition.

This can be done

  1. offline on linux computer using (official) Dynamic Partition Tools lpunpack and lpmake for which precompiled binaries are available from (unofficial) OTA Tools
  2. offline on device from TWRP recovery with 3rd party tool super image dumper for which precompiled binaries can be downloaded from XDA super image tools
  3. online on device via 3rd party bash script SystemRW running entirely from /data/local/tmp
1 Like

There is a solution, give me some time to describe it.

L.E. since this is the configuration out of the box I would not go the “Unmap Super Devices” way, but if you want to, we can also try that. The advantage would be that there’s a chance the tucana build works unmodified. Adding suport for dynamic partitions means I need to build different set of images for toco if everything works.

Yes, this configuration is out of the box.
I can wait when you have a time for building different set of images for toco.
And we can test support for dynamic partitions. If it can help I can give to you access to

I am tried to repeat your steps. Maybe some steps save a time.

There’s a dynparts page in the Livecasting porting notes for Zenfone 8 that I will need to recap (heading for a meeting now, will post later)

1 Like

Ok, so I found the commit from Zenfone: mounts from fp4 · sailfishos-on-sake/droid-config-sake@40d0ab8 · GitHub (which is inspired from FP4… :slight_smile:

The steps required are:

  1. Get internet connection through USB on your device
  2. install parse-android-dynparts package
  3. (and the lengthiest) test dmsetup and commands from that commit (such as mounting /dev/mapper/dynpart-product_a to /product etc.

  1. Get internet through USB

According to HADK, if you’re connected through telnet over IP, you can do these changes on your host (Linux):
# iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE # means as root; wlan0 is your interface connected to the internet
# echo 1 > /proc/sys/net/ipv4/ip_forward # as root again

(On windows, the above would be obtained through Internet connection sharing of the correct adapter).

Then on device:
route add default gw 192.168.2.X # <- host's usb0 IP
echo 'nameserver 208.67.222.222' > /etc/resolv.conf


  1. Install parse-android-dynparts

From the sake repo you can probably just wget/curl the parse-android-dynparts-0.0.1+master.20230311225315.73a7052-1.3.2.jolla.aarch64.rpm and zypper in parse-android-dynparts*.rpm it.


  1. dmsetup and mount points.

If you look at the commit above, there is one script that does dmsetup create --concise "$(/usr/bin/parse-android-dynparts /dev/sda10)" You need a similar script for your sda23 if I remembered correctly.

(ignore “sparse/” part, that is just your rootfs on the device)

Also, you need to figure out what it created: for example, on sake, the sparse/usr/lib/systemd/system/product.mount mounts /dev/mapper/dynpart-product_a. That of course won’t be the case on your device (because it doesnt do _a / _b for instance). For each of the /dev/mapper/dynpart-* partitions you need to edit the systemd mount or create a new one.

You also need create a dmsetup.service as in that commit.

And last but not least, you need the dmsetup.service to have a “Before” line listing all mounts that use dynamic partitions, and also make sure that /usr/lib/systemd/system/local-fs.target.wants/ contains links to all of them.

Reboot and check logs until all mounts are succeeding.


  1. Document everything you do in a file, or back up (you can reverse ssh from telnet to your Linux host). May things go south you might want to re-do these steps
1 Like

Should I format /data from TWRP and repeat all steps 3.x?

About step 1.

  1. Get internet through USB
    I think this step can be optimized by simply pushing file “parse-android-dynparts-0.0.1+master.20230311225315.73a7052-1.3.2.jolla.aarch64.rpm” to phone without configuring internet, like it was with pushing sailfishos-tucana-release-$xyz.tar.gz
    3.2 adb push sailfishos-tucana-release-$xyz.tar.gz /data/ (replace $xyz with what you have)
    I just will download file “parse-android-dynparts-0.0.1+master.20230311225315.73a7052-1.3.2.jolla.aarch64.rpm” to my PC, and after will push file to phone
    '# adb push parse-android-dynparts-0.0.1+master.20230311225315.73a7052-1.3.2.jolla.aarch64.rpm /data/

Or internet is need for next steps?

Updated:
File pushed to phone

Installed by using command:
'# rpm -i parse-android-dynparts-0.0.1+master.20230311225315.73a7052-1.3.2.jolla.aarch64.rpm

Step
3. dmsetup and mount points.

image

In blkid output I see
/usr/lib/systemd/system # blkid
/dev/mapper/dynpart-vendor: LABEL=“vendor” UUID=“2b96c597-1e2f-5ee1-9851-c4a9fa9de36e” BLOCK_SIZE=“4096” TYPE=“ext4”
/dev/mapper/dynpart-system: LABEL="/" UUID=“4729639d-b5f2-5cc1-a120-9ac5f788683c” BLOCK_SIZE=“4096” TYPE=“ext4”

Good, so you only have two systemd mount files to change, plus creating the dmsetup service

so you only have two systemd mount files to change
Could please explain what it means? Or what files i need to change?
dmsetup.service is created.

1 Like

Edit /usr/lib/systemd/system/system_root.mount and use the /dev/mapper/dynpart-system device and /usr/lb/systemd/system/vendor.mount and use /dev/mapper/dynpart-vendor device.

1 Like

Done. Device stop responding after some time after connecting over telenet

output
Trying 192.168.2.15...
Connected to 192.168.2.15.
Escape character is '^]'.

Welcome to the Mer/SailfishOS Boat loader debug init system.

Log so far is in /init.log

To make post-switch_root halt before starting systemd, perform:
touch /init_enter_debug2
(When run post-switch_root, telnet is on port 2323, not 23)

~ # df -h
Filesystem Size Used Available Use% Mounted on
/dev/sda32 47.5G 4.5G 43.0G 10% /
/dev/sda32 47.5G 4.5G 43.0G 10% /data
devtmpfs 2.6G 988.0K 2.6G 0% /dev
tmpfs 2.7G 0 2.7G 0% /dev/shm
tmpfs 2.7G 7.9M 2.7G 0% /run
tmpfs 2.7G 0 2.7G 0% /sys/fs/cgroup
tmpfs 2.7G 0 2.7G 0% /tmp
/dev/mapper/dynpart-system
2.6G 2.6G 0 100% /system_root
/dev/mapper/dynpart-vendor
1.0G 1023.0M 0 100% /vendor
/dev/mapper/dynpart-system
2.6G 2.6G 0 100% /system
/dev/sda32 47.5G 4.5G 43.0G 10% /system/lib64/libprocessgroup_setup.so
/dev/sda32 47.5G 4.5G 43.0G 10% /system_root/system/lib64/libprocessgroup_setup.so
/dev/sda32 47.5G 4.5G 43.0G 10% /system/lib64/libprocessgroup.so
/dev/sda32 47.5G 4.5G 43.0G 10% /system_root/system/lib64/libprocessgroup.so
/dev/sda32 58.0M 2.7M 53.4M 5% /persist
overlay 47.5G 4.5G 43.0G 10% /vendor/etc
/dev/sdf7 58.0M 2.7M 53.4M 5% /mnt/vendor/persist
/dev/sdf7 58.0M 2.7M 53.4M 5% /persist
/dev/sda32 47.5G 4.5G 43.0G 10% /system/etc/ld.config.29.txt
/dev/sda32 47.5G 4.5G 43.0G 10% /system_root/system/etc/ld.config.29.txt
~ # blkid
/dev/mapper/dynpart-vendor: LABEL=“vendor” UUID=“2b96c597-1e2f-5ee1-9851-c4a9fa9de36e” BLOCK_SIZE=“4096” TYPE=“ext4”
/dev/sdf7: UUID=“2d35bc8a-6cb5-43dc-adbc-bacf286218c0” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“persist” PARTUUID=“e564318c-c2ae-55dd-8bce-2c99a9275fe0”
/dev/sdf5: PARTLABEL=“modemst1” PARTUUID=“8dd2e37f-2a73-2a18-387f-5176b46a15d8”
/dev/sdf3: PARTLABEL=“bk51” PARTUUID=“809725e6-d20c-e102-9da0-546a8afd9779”
/dev/sdf1: PARTLABEL=“fsg” PARTUUID=“d0b20b7f-a863-0699-af20-e1989314a412”
/dev/sdf8: UUID=“2d35bc8a-6cb5-43dc-adbc-bacf286218c0” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“persistbak” PARTUUID=“3ba9215e-6ef9-18ee-dc08-1a9f294005ab”
/dev/sdf6: PARTLABEL=“modemst2” PARTUUID=“f2b76a72-c795-85c4-430f-9ed494c668f9”
/dev/sdf4: PARTLABEL=“bk52” PARTUUID=“6772e53e-41e8-f952-b6da-f02c79b108f3”
/dev/sdf2: PARTLABEL=“fsc” PARTUUID=“5bb7a736-5bdf-e541-ec9e-c21176aa1217”
/dev/sdd2: PARTLABEL=“cdt” PARTUUID=“e43991cf-030a-515c-6a58-2e628c96e731”
/dev/sdd5: PARTLABEL=“bk33” PARTUUID=“65d702c1-f056-401b-af75-eccef61befc4”
/dev/sdd3: PARTLABEL=“bk32” PARTUUID=“ee411b7f-0670-9087-3ab9-d9c90fc9f938”
/dev/sdd1: PARTLABEL=“bk31” PARTUUID=“5252c9cc-1084-065e-af03-8aea9a9d9d77”
/dev/sdd4: PARTLABEL=“ddr” PARTUUID=“c209fbd2-3da7-2e41-90cf-bb296c2c23f4”
/dev/sdb2: PARTLABEL=“xbl” PARTUUID=“7a343c5f-296b-3b7f-9c21-57703fe7def4”
/dev/sdb1: PARTLABEL=“xbl_config” PARTUUID=“d7097f5b-2038-ad1d-cc34-d5f60a898a5f”
/dev/mapper/dynpart-system: LABEL="/" UUID=“4729639d-b5f2-5cc1-a120-9ac5f788683c” BLOCK_SIZE=“4096” TYPE=“ext4”
/dev/sde32: PARTLABEL=“cateloader” PARTUUID=“07d30ae9-a19e-65e1-9eec-ce6bcfaa2c03”
/dev/sde2: PARTLABEL=“multiimgqti” PARTUUID=“14b691fc-4194-68f3-ebf2-e09781320eb2”
/dev/sde22: PARTLABEL=“cmnlib64” PARTUUID=“d9530173-07f5-5aaf-7992-3cf83c72a70f”
/dev/sde50: PARTLABEL=“bk47” PARTUUID=“b32a6ba8-1b99-60e3-fa22-cf9ef623a23c”
/dev/sde12: PARTLABEL=“vbmeta_system” PARTUUID=“3fd83039-6309-a427-e81a-2e611a183bcc”
/dev/sde40: PARTLABEL=“bk45” PARTUUID=“54388fbc-a297-3397-3994-38c18b547997”
/dev/sde30: PARTLABEL=“bk44” PARTUUID=“afe45d26-2006-c7d5-2740-3da1cb122c67”
/dev/sde20: PARTLABEL=“cmnlib” PARTUUID=“9e2dfa6c-1c9f-2c77-448d-aa0883f67b98”
/dev/sde49: PARTLABEL=“boot” PARTUUID=“780eec73-83a4-dc39-7746-920349a4602a”
/dev/sde10: PARTLABEL=“vbmeta” PARTUUID=“16f6dfd5-3702-b198-630c-5972865cc9ac”
/dev/sde39: PARTLABEL=“tzbak” PARTUUID=“d84ba100-ba03-0e54-65ad-6a34d31f7ab0”
/dev/sde9: PARTLABEL=“msadp” PARTUUID=“ed59bc3a-2e92-158b-59f6-e3171b14ee58”
/dev/sde29: PARTLABEL=“catecontentfv” PARTUUID=“4ee230f2-feeb-6f3c-9b8c-56c980fe1e97”
/dev/sde19: PARTLABEL=“catefv” PARTUUID=“f1961659-6f20-337d-b300-cc8476ba3fb1”
/dev/sde47: PARTLABEL=“logo” PARTUUID=“f0464181-53d8-86b2-b32e-04616e225534”
/dev/sde37: PARTLABEL=“ablbak” PARTUUID=“e73c1800-995e-cf5e-08b6-030bfb15d67a”
/dev/sde7: PARTLABEL=“qupfwbak” PARTUUID=“aeac658c-84f5-8a00-2b64-3546af46847c”
/dev/sde27: SEC_TYPE=“msdos” UUID=“00BC-614E” BLOCK_SIZE=“4096” TYPE=“vfat” PARTLABEL=“bluetooth” PARTUUID=“49d6f14e-659f-0781-583d-d295bb955427”
/dev/sde17: PARTLABEL=“aopbak” PARTUUID=“ea6fa7be-78ea-ac87-a981-2d01b463506a”
/dev/sde45: PARTLABEL=“dtbo” PARTUUID=“f5dc5865-72dc-2ae1-4e44-9229c32cc5d9”
/dev/sde35: PARTLABEL=“toolsfv” PARTUUID=“dd33c201-db7d-f2f1-5091-ab87a55f8add”
/dev/sde5: PARTLABEL=“bk41” PARTUUID=“056e5562-f15e-a23d-26cf-fba7197d7184”
/dev/sde25: PARTLABEL=“keymaster” PARTUUID=“f9af5e39-32cf-6b4e-2058-021eb0b1d4e0”
/dev/sde15: PARTLABEL=“devcfgbak” PARTUUID=“a6875a5e-3762-e869-f4fe-fe5f440a01c9”
/dev/sde43: PARTLABEL=“hypbak” PARTUUID=“b6c6e8df-56c9-60f5-11d0-86e26e893899”
/dev/sde33: PARTLABEL=“uefisecapp” PARTUUID=“e0db4c46-a25e-f40c-d0a2-3d2b0444470c”
/dev/sde3: PARTLABEL=“secdata” PARTUUID=“a40f7ca9-868f-ca5c-d808-39ee1477fc2d”
/dev/sde23: PARTLABEL=“cmnlib64bak” PARTUUID=“52e5f5be-eb58-583f-df6f-146f8737dc25”
/dev/sde51: PARTLABEL=“core_nhlos” PARTUUID=“32744c5e-e79c-f1e6-0fca-e21e338e9eec”
/dev/sde13: PARTLABEL=“vbmeta_vendor” PARTUUID=“6810a532-7863-bd69-5674-7f84569d0a11”
/dev/sde41: PARTLABEL=“spunvm” PARTUUID=“b9aba849-7261-0451-e72c-b24c4ff63383”
/dev/sde31: PARTLABEL=“bk44” PARTUUID=“508d43be-fc11-1001-b810-c01bb16e82c5”
/dev/sde1: PARTLABEL=“multiimgoem” PARTUUID=“ecb1ea1d-3175-7631-37a1-5e62c74a5e83”
/dev/sde21: PARTLABEL=“cmnlibbak” PARTUUID=“8a2569b9-47df-881d-a11f-c15caee00368”
/dev/sde11: PARTLABEL=“storsec” PARTUUID=“bd76f8af-3c29-d46b-c545-7fc39e50a507”
/dev/sde48: LABEL=“dsp” UUID=“af32c008-2a39-7e5b-a5dc-201456d93103” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“dsp” PARTUUID=“39d4553a-5a57-7423-19c0-a9bed9b1f604”
/dev/sde38: PARTLABEL=“tz” PARTUUID=“619a51bc-3f0a-9244-1273-9fcf5a5e57fd”
/dev/sde8: PARTLABEL=“apdp” PARTUUID=“79c2e699-65bb-f5da-0563-23f9d3e440c2”
/dev/sde28: PARTLABEL=“dip” PARTUUID=“dd68ca4e-9436-c7ae-d1c3-64347ae6b95b”
/dev/sde18: PARTLABEL=“uefivarstore” PARTUUID=“20c1d9dd-2644-3044-bd29-eb9b72162ab1”
/dev/sde46: PARTLABEL=“ifaa” PARTUUID=“eb456794-bd63-9282-7a98-ae1a5c3da7f4”
/dev/sde36: PARTLABEL=“abl” PARTUUID=“16fd21cc-d108-af0a-fd61-36ca8cd938b1”
/dev/sde6: PARTLABEL=“qupfw” PARTUUID=“4b0ac7e5-888c-ea7d-98ff-01ac95992bf7”
/dev/sde26: PARTLABEL=“keymasterbak” PARTUUID=“052afdb6-7aef-3546-d85a-a9a22520af99”
/dev/sde16: PARTLABEL=“aop” PARTUUID=“79349e9f-062d-63ab-d967-5af2be421f55”
/dev/sde44: PARTLABEL=“gsort” PARTUUID=“776462af-8e02-4c31-be26-a3d91702f7c9”
/dev/sde34: PARTLABEL=“uefisecappbak” PARTUUID=“3b482312-3759-6b87-47c1-3f755ab346be”
/dev/sde4: PARTLABEL=“limits” PARTUUID=“b7ba0008-4d7b-5411-c937-8059950d7d8f”
/dev/sde24: PARTLABEL=“bk43” PARTUUID=“ed37b464-eb6d-b465-e960-74639517458b”
/dev/sde52: SEC_TYPE=“msdos” UUID=“00BC-614E” BLOCK_SIZE=“4096” TYPE=“vfat” PARTLABEL=“modem” PARTUUID=“93ed7146-b393-ef69-f080-f8475cb210e9”
/dev/sde14: PARTLABEL=“devcfg” PARTUUID=“edce4593-8440-14a4-2d0c-73f98fb0b9e7”
/dev/sde42: PARTLABEL=“hyp” PARTUUID=“08f08ebc-11a7-9767-6cbf-ea74c1f6ff4e”
/dev/sdc2: PARTLABEL=“xblbak” PARTUUID=“007b932c-2883-ae39-09c3-2ccd257159c9”
/dev/sdc1: PARTLABEL=“xbl_configbak” PARTUUID=“ad453d60-8365-b9a8-8112-d04349a3c73b”
/dev/sda4: PARTLABEL=“bk01” PARTUUID=“159df18d-cde0-fb33-4641-de14fd25912e”
/dev/sda26: PARTLABEL=“rawdump” PARTUUID=“602c9596-9872-7968-c960-9443258f8998”
/dev/sda16: PARTLABEL=“oops” PARTUUID=“9d0b8c4c-794e-c5f8-6d42-8bbbb48943f7”
/dev/sda2: PARTLABEL=“ssd” PARTUUID=“b15463b0-eb98-9b36-d27e-88d0c03879db”
/dev/sda24: PARTLABEL=“logdump” PARTUUID=“711fdbdb-75c9-8a89-5fd9-c382104862bc”
/dev/sda14: SEC_TYPE=“msdos” LABEL=“LOGFS” UUID=“D273-55EA” BLOCK_SIZE=“4096” TYPE=“vfat” PARTLABEL=“logfs” PARTUUID=“ff540b61-91e7-9ffa-87da-e79b85088ad7”
/dev/sda32: UUID=“cf279b97-d2be-45d0-ab76-f996558b2170” BLOCK_SIZE=“4096” TYPE=“f2fs” PARTLABEL=“userdata” PARTUUID=“e19d44ff-926f-b9e4-a5b1-ef37b2e46dda”
/dev/sda22: PARTLABEL=“bk09” PARTUUID=“e0442119-6f47-a86a-09c5-91b5b08ab69f”
/dev/sda12: PARTLABEL=“vm-data” PARTUUID=“42f88045-6ed6-d205-d8e6-a9e7495dc061”
/dev/sda9: PARTLABEL=“frp” PARTUUID=“e2495557-344a-4c44-baef-348577b9dbf6”
/dev/sda30: PARTLABEL=“exaid” PARTUUID=“35960405-2a78-1b9b-de81-df3f83a65eed”
/dev/sda20: PARTLABEL=“bk08” PARTUUID=“01b23c75-031e-98e2-5683-4fcda9050041”
/dev/sda10: PARTLABEL=“bk05” PARTUUID=“26a4be96-acd3-0b1c-d0c2-6af9f09cf86b”
/dev/sda7: PARTLABEL=“bk04” PARTUUID=“4e24d1f2-ce30-1cf9-3b67-37e690cad34d”
/dev/sda29: UUID=“735d9d73-abee-411d-a4bf-c57bc1e77a60” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“cache” PARTUUID=“b42bbd7c-f61f-b6c8-cbbc-60a0ecfb8821”
/dev/sda19: UUID=“2b750f4b-dc22-49a6-a6dc-e3ee8310dec4” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“metadata” PARTUUID=“4b9cbd02-e89f-7e9a-b8d7-c7f8482855dc”
/dev/sda5: PARTLABEL=“bk02” PARTUUID=“0054517f-e8fb-ca69-de9a-56f0866c9d00”
/dev/sda27: PARTLABEL=“imagefv” PARTUUID=“25d05a73-70cc-2f66-793d-8e8b1509a9bf”
/dev/sda17: PARTLABEL=“devinfo” PARTUUID=“122ff74e-6a15-5ccc-d660-9617c743a395”
/dev/sda3: PARTLABEL=“dbg” PARTUUID=“ba156041-43d8-9466-8742-1b78f85387b6”
/dev/sda25: PARTLABEL=“minidump” PARTUUID=“693c8a43-e393-ee7a-57bc-83f8e834cbfd”
/dev/sda15: PARTLABEL=“bk07” PARTUUID=“7fb4f41c-2292-a77d-e657-5e3819398307”
/dev/sda1: PARTLABEL=“switch” PARTUUID=“db68403e-f27a-dff3-3792-55037e6f117a”
/dev/sda23: PARTLABEL=“super” PARTUUID=“5c5bdb29-c767-7eda-7b03-f5d60cf047ed”
/dev/sda13: PARTLABEL=“bk06” PARTUUID=“5058eaf3-1582-80cc-3643-b188436b60b5”
/dev/sda31: LABEL=“cust” UUID=“6bd92fa5-c011-48f0-86ce-795013b1d9d4” BLOCK_SIZE=“4096” TYPE=“ext4” PARTLABEL=“cust” PARTUUID=“eb432a82-6dca-2cdc-0743-ece970cf0e56”
/dev/sda21: PARTLABEL=“splash” PARTUUID=“a11b5a5d-937e-6d6b-e497-724ecb2c4e67”
/dev/sda11: PARTLABEL=“misc” PARTUUID=“eab82c96-57ce-14fa-e6e3-6d1ff260a5bb”
/dev/sda8: PARTLABEL=“keystore” PARTUUID=“0be45f1b-2e05-091b-5a61-9574a137a1a0”
/dev/sda6: PARTLABEL=“bk03” PARTUUID=“9b091c9c-f5ba-d6d7-b043-090334a82d9a”
/dev/sda28: PARTLABEL=“recovery” PARTUUID=“560b10e9-a72f-5448-65bb-e91933d57167”
/dev/sda18: PARTLABEL=“oem_misc1” PARTUUID=“49bd9c74-338c-359d-5d3b-81d27d67f941”
~ #


I can try to remove symlinks from /usr/lib/systemd/system/local-fs.target.wants/

That might be the usb-moded service kicking in. You can, in the short time you have before being kicked out, telnet and systemctl disable usb-moded, then reboot and grab a new journalctl -b

Or you could work around by re-connecting the usb cable, don’t know if that still works

I have disabled usb-moded
by using command # systemctl disable usb-moded
But after re-connecting the usb cable, that still works
Got the logs
https://paste.fo/raw/6fb74a67be1d

1 Like

Ok, mount: /product: mount(2) system call failed: Too many levels of symbolic links. might mean the following:

The system partition on tucana is actually system-as-root, that is, it has a system folder within and was mounted in android as root partition. This is achieved by /usr/lib/systemd/system/system_root.mount, while /usr/lib/systemd/system/system.mount just mounts /system as /system_root/system.

If you dont have a “system” folder in /system_root it means toco's is not system-as-root. That means that the devmapper partition needs to actually be mounted to /system (either change the system.mount to do that or edit the system_root mount, and disable the other mount.

Can you show ls of /system_root to confirm non-system-as-root folder structure?

`ls` of /system_root
/usr/lib/systemd/system # ls -lah /system_root/
total 244K   
drwxr-xr-x   23 root     root        4.0K Jan  1  2009 .
drwxr-xr-x   32 root     root        3.4K Jun 21 15:25 ..
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 acct
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 apex
lrw-r--r--    1 root     root          11 Jan  1  2009 bin -> /system/bin
lrw-r--r--    1 root     root          50 Jan  1  2009 bugreports -> /data/user_de/0/com.android.shell/files/bugreports
drwxrwx---    2 system   cache       4.0K Jan  1  2009 cache
lrw-r--r--    1 root     root          19 Jan  1  2009 charger -> /system/bin/charger
dr-xr-xr-x    2 root     root        4.0K Jan  1  2009 config
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 cust
lrw-r--r--    1 root     root          17 Jan  1  2009 d -> /sys/kernel/debug
drwxrwx--x    2 system   system      4.0K Jan  1  2009 data
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 debug_ramdisk
lrw-------    1 root     root          23 Jan  1  2009 default.prop -> system/etc/prop.default
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 dev
lrw-r--r--    1 root     root          11 Jan  1  2009 etc -> /system/etc
lrwxr-x---    1 root     shell         16 Jan  1  2009 init -> /system/bin/init
-rwxr-x---    1 root     shell        277 Jan  1  2009 init.batteryd.rc
-rwxr-x---    1 root     shell        881 Jan  1  2009 init.batterysecret.rc
-rwxr-x---    1 root     shell       2.2K Jan  1  2009 init.environ.rc
-rwxr-x---    1 root     shell          0 Jan  1  2009 init.exaid.hardware.rc
-rwxr-x---    1 root     shell        163 Jan  1  2009 init.mi_thermald.rc
-rwxr-x---    1 root     shell        434 Jan  1  2009 init.mishow.ctl.rc
-rwxr-x---    1 root     shell        642 Jan  1  2009 init.miui.cust.rc
-rwxr-x---    1 root     shell       3.7K Jan  1  2009 init.miui.early_boot.sh
-rwxr-x---    1 root     shell       1.3K Jan  1  2009 init.miui.google_revenue_share.rc
-rwxr-x---    1 root     shell        648 Jan  1  2009 init.miui.google_revenue_share_v2.rc
-rwxr-x---    1 root     shell        342 Jan  1  2009 init.miui.nativedebug.rc
-rwxr-x---    1 root     shell        545 Jan  1  2009 init.miui.post_boot.sh
-rwxr-x---    1 root     shell        100 Jan  1  2009 init.miui.qadaemon.rc
-rwxr-x---    1 root     shell      10.7K Jan  1  2009 init.miui.rc
-rwxr-x---    1 root     shell      33.3K Jan  1  2009 init.rc
-rwxr-x---    1 root     shell        402 Jan  1  2009 init.recovery.hardware.rc
-rwxr-x---    1 root     shell       3.1K Jan  1  2009 init.recovery.qcom.rc
-rwxr-x---    1 root     shell       9.4K Jan  1  2009 init.usb.configfs.rc
-rwxr-x---    1 root     shell       5.5K Jan  1  2009 init.usb.rc
-rwxr-x---    1 root     shell        563 Jan  1  2009 init.zygote32.rc
-rwxr-x---    1 root     shell        981 Jan  1  2009 init.zygote64_32.rc
drwx------    2 root     root       16.0K Jan  1  2009 lost+found
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 metadata
drwxr-xr-x    2 root     system      4.0K Jan  1  2009 mnt
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 odm
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 oem
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 proc
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 product
lrw-r--r--    1 root     root          24 Jan  1  2009 product_services -> /system/product_services
drwxr-xr-x    3 root     root        4.0K Jan  1  2009 res
drwxr-x---    2 root     shell       4.0K Jan  1  2009 sbin
lrw-r--r--    1 root     root          21 Jan  1  2009 sdcard -> /storage/self/primary
drwxr-x--x    2 root     sdcard_r    4.0K Jan  1  2009 storage
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 sys
drwxr-xr-x   16 root     root        4.0K Jan  1  2009 system
-rw-r--r--    1 root     root        2.5K Jan  1  2009 ueventd.rc
drwxr-xr-x    2 root     shell       4.0K Jan  1  2009 vendor
-rw-r--r--    1 root     root         524 Jan  1  2009 verity_key

Looks good, as system-as-root, so you don’t need changes mentioned above. What about /system?

ls -lah /system/
/usr/lib/systemd/system # ls -lah /system/
total 15M    
drwxr-xr-x   16 root     root        4.0K Jan  1  2009 .
drwxr-xr-x   32 root     root        3.4K Jun 21 15:47 ..
drwxr-xr-x    2 root     root        4.0K Jan  1  2009 apex
drwxr-xr-x  101 root     root        4.0K Jan  1  2009 app
drwxr-x--x    4 root     shell       8.0K Jan  1  2009 bin
-rw-------    1 root     root       11.7K Jan  1  2009 build.prop
drwxr-xr-x  224 root     root        4.0K Jan  1  2009 cust
drwxr-xr-x    3 root     root        4.0K Jan  1  2009 data-app
drwxr-xr-x   27 root     root        4.0K Jan  1  2009 etc
drwxr-xr-x    2 root     root       12.0K Jan  1  2009 fonts
drwxr-xr-x    6 root     root        4.0K Jan  1  2009 framework
drwxr-xr-x   10 root     root       20.0K Jan  1  2009 lib
drwxr-xr-x    9 root     root       24.0K Jan  1  2009 lib64
drwxr-xr-x    5 root     root        4.0K Jan  1  2009 media
drwxr-xr-x   74 root     root        4.0K Jan  1  2009 priv-app
lrw-r--r--    1 root     root           8 Jan  1  2009 product -> /product
-rw-r--r--    1 root     root       14.4M Jan  1  2009 recovery-from-boot.p
drwxr-xr-x    7 root     root        4.0K Jan  1  2009 usr
lrw-r--r--    1 root     root           7 Jan  1  2009 vendor -> /vendor
drwxr-x--x    2 root     shell       4.0K Jan  1  2009 xbin
/usr/lib/systemd/system #

Ok, you may have other mounts to find the correct device and fix, e.g.:

bad superblock on /dev/sde51
bad superblock on /dev/sde47
bad superblock on /dev/sde26

I will try

blkid

/dev/sde51: PARTLABEL=“core_nhlos” PARTUUID=“32744c5e-e79c-f1e6-0fca-e21e338e9eec”
/dev/sde47: PARTLABEL=“logo” PARTUUID=“f0464181-53d8-86b2-b32e-04616e225534”
/dev/sde26: PARTLABEL=“keymasterbak” PARTUUID=“052afdb6-7aef-3546-d85a-a9a22520af99”