[General Questions and Answers] Ggff5:
a copy/paste of this

It would be lovely if I could manually allocate a portion of space to create a partition for backup that's separated from the other partions that gets wiped or replaced when flashing a custom rom so for example as root if I can create /dev/sda99 Mount it backup the custom rom and other files and in twrp recovery I can mount it again and flash the custom rom and the backup and it doesn't get wiped when I format the data in twrp. But I don't know if it's even possible. This is a list of my partition

.../files/home # ls -alth /dev/block/by-name/
total 0
drwxr-xr-x 6 root root 3.3K Jul 16 16:55 ..
drwxr-xr-x 2 root root 1.8K Apr 12 1971 .
lrwxrwxrwx 1 root root 15 Apr 12 1971 frp -> /dev/block/sda5
lrwxrwxrwx 1 root root 14 Apr 12 1971 sdc -> /dev/block/sdc
lrwxrwxrwx 1 root root 15 Apr 12 1971 bluetooth -> /dev/block/sde5
lrwxrwxrwx 1 root root 16 Apr 12 1971 featenabler -> /dev/block/sde24
lrwxrwxrwx 1 root root 16 Apr 12 1971 uefivarstore -> /dev/block/sde41
lrwxrwxrwx 1 root root 16 Apr 12 1971 devinfo -> /dev/block/sde28
lrwxrwxrwx 1 root root 15 Apr 12 1971 dsp -> /dev/block/sde9
lrwxrwxrwx 1 root root 15 Apr 12 1971 modem -> /dev/block/sde4
lrwxrwxrwx 1 root root 16 Apr 12 1971 cmnlib64 -> /dev/block/sde13
lrwxrwxrwx 1 root root 16 Apr 12 1971 limits -> /dev/block/sde35
lrwxrwxrwx 1 root root 16 Apr 12 1971 modemdump -> /dev/block/sde39
lrwxrwxrwx 1 root root 16 Apr 12 1971 msadp -> /dev/block/sde32
lrwxrwxrwx 1 root root 16 Apr 12 1971 splash -> /dev/block/sde34
lrwxrwxrwx 1 root root 15 Apr 12 1971 tz -> /dev/block/sde2
lrwxrwxrwx 1 root root 15 Apr 12 1971 abl -> /dev/block/sde8
lrwxrwxrwx 1 root root 16 Apr 12 1971 keymaster -> /dev/block/sde10
lrwxrwxrwx 1 root root 16 Apr 12 1971 vbmeta_vendor -> /dev/block/sde17
lrwxrwxrwx 1 root root 16 Apr 12 1971 vm-linux -> /dev/block/sde23
lrwxrwxrwx 1 root root 15 Apr 12 1971 xbl_config -> /dev/block/sdb2
lrwxrwxrwx 1 root root 15 Apr 12 1971 ALIGN_TO_128K_1 -> /dev/block/sdd1
lrwxrwxrwx 1 root root 15 Apr 12 1971 ocdt -> /dev/block/sdd6
lrwxrwxrwx 1 root root 14 Apr 12 1971 sdb -> /dev/block/sdb
lrwxrwxrwx 1 root root 14 Apr 12 1971 sde -> /dev/block/sde
lrwxrwxrwx 1 root root 15 Apr 12 1971 xbl -> /dev/block/sdb1
lrwxrwxrwx 1 root root 15 Apr 12 1971 mdm1m9kefs3 -> /dev/block/sdf8
lrwxrwxrwx 1 root root 15 Apr 12 1971 mdmddr -> /dev/block/sdd4
lrwxrwxrwx 1 root root 15 Apr 12 1971 cache -> /dev/block/sda6
lrwxrwxrwx 1 root root 15 Apr 12 1971 fsc -> /dev/block/sdf7
lrwxrwxrwx 1 root root 16 Apr 12 1971 logdump -> /dev/block/sde38
lrwxrwxrwx 1 root root 16 Apr 12 1971 mdm1oemnvbktmp -> /dev/block/sdf12
lrwxrwxrwx 1 root root 16 Apr 12 1971 oplusreserve2 -> /dev/block/sdf14
lrwxrwxrwx 1 root root 15 Apr 12 1971 rawdump -> /dev/block/sda9
lrwxrwxrwx 1 root root 16 Apr 12 1971 vm-data -> /dev/block/sde44
lrwxrwxrwx 1 root root 15 Apr 12 1971 hyp -> /dev/block/sde3
lrwxrwxrwx 1 root root 16 Apr 12 1971 mdm1m9kefsc -> /dev/block/sdf11
lrwxrwxrwx 1 root root 16 Apr 12 1971 oplus_sec -> /dev/block/sde27
lrwxrwxrwx 1 root root 16 Apr 12 1971 oplusreserve1 -> /dev/block/sdf13
lrwxrwxrwx 1 root root 16 Apr 12 1971 uefisecapp -> /dev/block/sde20
lrwxrwxrwx 1 root root 15 Apr 12 1971 ddr -> /dev/block/sdd3
lrwxrwxrwx 1 root root 15 Apr 12 1971 mdm1m9kefs1 -> /dev/block/sdf9
lrwxrwxrwx 1 root root 16 Apr 12 1971 oplusreserve4 -> /dev/block/sdf16
lrwxrwxrwx 1 root root 15 Apr 12 1971 persist -> /dev/block/sda2
lrwxrwxrwx 1 root root 15 Apr 12 1971 vm-system -> /dev/block/sda8
lrwxrwxrwx 1 root root 15 Apr 12 1971 keystore -> /dev/block/sda4
lrwxrwxrwx 1 root root 15 Apr 12 1971 mdtp -> /dev/block/sde7
lrwxrwxrwx 1 root root 16 Apr 12 1971 spunvm -> /dev/block/sde33
lrwxrwxrwx 1 root root 16 Apr 12 1971 userdata -> /dev/block/sda11
lrwxrwxrwx 1 root root 16 Apr 12 1971 multiimgoem -> /dev/block/sde21
lrwxrwxrwx 1 root root 16 Apr 12 1971 vm-keystore -> /dev/block/sde43
lrwxrwxrwx 1 root root 16 Apr 12 1971 apdp -> /dev/block/sde30
lrwxrwxrwx 1 root root 15 Apr 12 1971 engineering_cdt -> /dev/block/sdd5
lrwxrwxrwx 1 root root 15 Apr 12 1971 oplusdycnvbk -> /dev/block/sdf2
lrwxrwxrwx 1 root root 15 Apr 12 1971 ALIGN_TO_128K_2 -> /dev/block/sdf1
lrwxrwxrwx 1 root root 16 Apr 12 1971 oplusreserve3 -> /dev/block/sdf15
lrwxrwxrwx 1 root root 14 Apr 12 1971 sda -> /dev/block/sda
lrwxrwxrwx 1 root root 15 Apr 12 1971 ssd -> /dev/block/sda1
lrwxrwxrwx 1 root root 15 Apr 12 1971 aop -> /dev/block/sde1
lrwxrwxrwx 1 root root 16 Apr 12 1971 devcfg -> /dev/block/sde14
lrwxrwxrwx 1 root root 16 Apr 12 1971 limits-cdsp -> /dev/block/sde36
lrwxrwxrwx 1 root root 15 Apr 12 1971 mdtpsecapp -> /dev/block/sde6
lrwxrwxrwx 1 root root 15 Apr 12 1971 misc -> /dev/block/sda3
lrwxrwxrwx 1 root root 16 Apr 12 1971 qupfw -> /dev/block/sde15
lrwxrwxrwx 1 root root 16 Apr 12 1971 secdata -> /dev/block/sde42
lrwxrwxrwx 1 root root 16 Apr 12 1971 apdp_full -> /dev/block/sde31
lrwxrwxrwx 1 root root 15 Apr 12 1971 cdt -> /dev/block/sdd2
lrwxrwxrwx 1 root root 16 Apr 12 1971 cmnlib -> /dev/block/sde12
lrwxrwxrwx 1 root root 16 Apr 12 1971 dip -> /dev/block/sde29
lrwxrwxrwx 1 root root 16 Apr 12 1971 imagefv -> /dev/block/sde25
lrwxrwxrwx 1 root root 16 Apr 12 1971 logfs -> /dev/block/sde37
lrwxrwxrwx 1 root root 14 Apr 12 1971 sdd -> /dev/block/sdd
lrwxrwxrwx 1 root root 16 Apr 12 1971 storsec -> /dev/block/sde40
lrwxrwxrwx 1 root root 16 Apr 12 1971 DRIVER -> /dev/block/sdf18
lrwxrwxrwx 1 root root 15 Apr 12 1971 fsg -> /dev/block/sdf6
lrwxrwxrwx 1 root root 16 Apr 12 1971 mdm1m9kefs2 -> /dev/block/sdf10
lrwxrwxrwx 1 root root 15 Apr 12 1971 modemst1 -> /dev/block/sdf4
lrwxrwxrwx 1 root root 15 Apr 12 1971 modemst2 -> /dev/block/sdf5
lrwxrwxrwx 1 root root 16 Apr 12 1971 multiimgqti -> /dev/block/sde22
lrwxrwxrwx 1 root root 16 Apr 12 1971 oplusreserve5 -> /dev/block/sdf17
lrwxrwxrwx 1 root root 15 Apr 12 1971 oplusstanvbk -> /dev/block/sdf3
lrwxrwxrwx 1 root root 14 Apr 12 1971 sdf -> /dev/block/sdf
lrwxrwxrwx 1 root root 16 Apr 12 1971 boot -> /dev/block/sde11
lrwxrwxrwx 1 root root 16 Apr 12 1971 dtbo -> /dev/block/sde19
lrwxrwxrwx 1 root root 15 Apr 12 1971 metadata -> /dev/block/sda7
lrwxrwxrwx 1 root root 16 Apr 12 1971 recovery -> /dev/block/sde26
lrwxrwxrwx 1 root root 16 Apr 12 1971 super -> /dev/block/sda10
lrwxrwxrwx 1 root root 16 Apr 12 1971 vbmeta -> /dev/block/sde18
lrwxrwxrwx 1 root root 16 Apr 12 1971 vbmeta_system -> /dev/block/sde16

I know must of Android uses mmcblk as reference for all the partions but the layout on my device is different I don't know why.

As you can see the bootloader abl and the recovery are on separated block sde

userdata and super partion are on sda block so if were to use parted on /dev/block/sda to create a partition, is it safe ? Is it going to have an impact on recovery and bootloader? is it even possible to allocate memory without shrinking other partions? Overall it seems like a risky process but it's worth it