Mounten Android FS onder Linux

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
Ik heb onlangs een Minix Z64-a aangeschaft, maar na een tijdje prutsen (geroot, vervolgens de xposed framework geinstalleerd) start het apparaat niet op, althans hij zit in een bootloop. Deze framework zou ik kunnen disablen, echter zou ik daarvoor wel toegang moeten hebben tot het filesystem, om een bepaald bestand te editen.

Mijn plan:
Linux live CD booten (Xubuntu, op USB stick), de betreffende Android partitie mounten, het bestandje aanpassen en voila.

Echter krijg ik de Android partitie(s) niet gemount. Het volgende geprobeerd:

Eerst de partities inzichtelijk gemaakt:

Afbeeldingslocatie: http://s10.postimg.org/x4vhsz67t/Screenshot_03112015_06_32_22_PM.png

Partitie 14 en 15 lijken me de partities waar het android systeem en de data op weggeschreven staat. Die wil ik dus gemount hebben.

Dus:

Afbeeldingslocatie: http://s30.postimg.org/uj7etxswx/Screenshot_03112015_06_35_01_PM.png

Maar ook met het meegeven van het filesystem krijg ik 'm niet gemount.
Zie ik iets over het hoofd? Mounten van de eerste partitie:

code:
1
mount /dev/mmcblk0p1 /mnt/bla


Is overigens geen enkel probleem. Maar dan krijg ik het EFI BIOS te zien :P.

Acties:
  • 0 Henk 'm!

  • roughtodacore
  • Registratie: Februari 2012
  • Laatst online: 11-09 16:06
En als je mount commando opgeeft zonder de -t ext4 flag? Meestal autodetect hij welk filesystem op de partitie aanwezig is. Sterker nog, hij ziet al dat het een ext4 filesystem is.

[ Voor 18% gewijzigd door roughtodacore op 11-03-2015 20:18 ]

Alles kan, zolang het maar mogelijk is...


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 11-09 21:28

CAPSLOCK2000

zie teletekst pagina 888

Bestaat /dev/mmcblk0p14 wel?

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
roughtodacore schreef op woensdag 11 maart 2015 @ 20:18:
En als je mount commando opgeeft zonder de -t ext4 flag? Meestal autodetect hij welk filesystem op de partitie aanwezig is. Sterker nog, hij ziet al dat het een ext4 filesystem is.
Geprobeerd, zie 4e regel van 2e screenshot :) .
Hoe kom ik daar achter?

[ Voor 20% gewijzigd door Kaspers op 11-03-2015 21:01 ]


Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 13:06
Ja. de helpful hint in je tweede screenshot. Doe dat eens?

Anders: dumpe2fs -h /dev/mmcblk0p14

[ Voor 42% gewijzigd door Thralas op 11-03-2015 22:33 ]


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 11-09 22:47

Hero of Time

Moderator LNX

There is only one Legend

Door 'ls /dev' te doen. Dan zie je al je device nodes, waaronder je schijven met partities. Een interne harde schijf bijvoorbeeld wordt weergegeven als /dev/sda, partities als /dev/sda1, /dev/sda2 etc.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 13:06
Ah! Ik trap zomaar in de smoke-and-mirrors van TS. Waarom probeer je uberhaupt mmcblk0 (de hele device) te mounten? Natuurlijk werkt dat niet.

Iets daarboven (tussen de relevante regels) zie ik nu ook 'special device does not exist'. Dat is dus duidelijk dan, de device mist.

Je kunt met `lsblk` de major id van mmcblk0 achterhalen, dan is de bijbehorende minor id van p14 als het goed is 14.

mknod /dev/mmcblk0p14 b X 14


Geen idee waarom die node mist. Volgens mij zijn de storage nodes in /dev direct afkomstig van de kernel devices, en ligt het dus niet aan udev...

Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
Het lijkt me een partitie op die schijf in ieder geval. Tenminste ik zie 'm verschijnen in "parted":

Afbeeldingslocatie: http://s10.postimg.org/x4vhsz67t/Screenshot_03112015_06_32_22_PM.png

een LS op /dev/ geeft:

Afbeeldingslocatie: http://s16.postimg.org/62wia9r79/ptra.png

En daar zie je de mmcblk0p14 idd niet tussen staan.
Thralas schreef op woensdag 11 maart 2015 @ 22:32:
Je kunt met `lsblk` de major id van mmcblk0 achterhalen, dan is de bijbehorende minor id van p14 als het goed is 14.
lsblk geeft:

Afbeeldingslocatie: http://s29.postimg.org/3sny19007/henk.png

Ziet er weinig hoopvol uit. Hier zie ik niet de p14 (2GB) en p15 (27GB) die "parted" me wel geven..

[ Voor 4% gewijzigd door Kaspers op 11-03-2015 23:59 ]


Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 13:06
Logisch, want de device node mist. Dat gdisk wel wat ziet zegt niets, partitietools parsen zelf partition records van de device, terwijl bijna alle andere tools van device nodes afhankelijk zijn.

Dus even proberen de device node aan te maken zoals ik in mijn vorige post beschreef en hopen dat het werkt (major/minor zou 179 14 moeten zijn).

Of uitzoeken waarom alles na p7 mist. Relevante regels uit de kernel log (dmesg) en /proc/partitions zouden een goede start zijn.

Voor de eerstvolgende post: gebruik [cmd][/cmd] om je terminaloutput te posten, het mooie van tekst is dat je het kunt kopieeren. Van screenshots van terminals word ik een beetje ongemakkelijk.

Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 11-09 21:28

CAPSLOCK2000

zie teletekst pagina 888

grrr, thralas is me net twee seconde voor en doet het in de helft van het aantal woorden :)

Met alle punten eens. Handmatig mknod proberen en in de logs kijken of er een reden is waarom hij de andere devices niet aanmaakt.

Ook met het punt over screenshots heeft hij helemaal gelijk. We geven hier erg de voorkeur aan tekst. Dat werkt altijd. Plaatjes verdwijnen en zijn onhandig op mobiele devices. Tekst past zich aan de kijker aan.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
Aight.

Node inmiddels aangemaakt, hij geeft nu bij een 2e poging:
root@xubuntu:/home/xubuntu# mknod /dev/mmcblk0p14 b 179 14
mknod: ‘/dev/mmcblk0p14’: File exists

een cat op /proc/partitions geeft:

root@xubuntu:/home/xubuntu# cat /proc/partitions
major minor  #blocks  name

   7        0     959232 loop0
 179        0   30535680 mmcblk0
 179        1      65536 mmcblk0p1
 179        2      65536 mmcblk0p2
 179        3      16384 mmcblk0p3
 179        4      16384 mmcblk0p4
 179        5      16384 mmcblk0p5
 179        6      16384 mmcblk0p6
 179        7      65536 mmcblk0p7
 179       24       4096 mmcblk0rpmb
 179       16       4096 mmcblk0boot1
 179        8       4096 mmcblk0boot0
   8        0    1956864 sda
   8        1    1002496 sda1
   8        2       2272 sda2

Grep met mmcblk0 op dmesg geeft:

root@xubuntu:/home/xubuntu# dmesg | grep mmcblk0
[   14.033676] mmcblk0: mmc0:0001 BWBC3R 29.1 GiB 
[   14.033817] mmcblk0boot0: mmc0:0001 BWBC3R partition 1 4.00 MiB
[   14.033961] mmcblk0boot1: mmc0:0001 BWBC3R partition 2 4.00 MiB
[   14.034085] mmcblk0rpmb: mmc0:0001 BWBC3R partition 3 4.00 MiB
[   14.037201]  mmcblk0: p1 p2 p3 p4 p5 p6 p7
[   14.040524]  mmcblk0boot1: unknown partition table
[   14.041440]  mmcblk0boot0: unknown partition table
[  407.984245] EXT4-fs (mmcblk0): VFS: Can't find ext4 filesystem

Maar dat kan ook te maken hebben met mn mount pogingen die ik eerder heb gedaan.

What's next na 't aanmaken van die node?
Het mounten geeft nu trouwens een andere error:
root@xubuntu:/home/xubuntu# mount -t ext4 /dev/mmcblk0p14 /mnt/bla2
mount: /dev/mmcblk0p14 is not a valid block device


mmcblk0p14 is overigens nog niet te zien binnen /dev/:
Dat issie wel:

root@xubuntu:/home/xubuntu# ls /dev | grep mmcblk
mmcblk0
mmcblk0boot0
mmcblk0boot1
mmcblk0p1
mmcblk0p14
mmcblk0p2
mmcblk0p3
mmcblk0p4
mmcblk0p5
mmcblk0p6
mmcblk0p7
mmcblk0rpmb

[ Voor 13% gewijzigd door Kaspers op 12-03-2015 08:22 ]


Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 13:06
Tja. Aanmaken van die node helpt blijkbaar niet, de kernel ziet echt maar 7 partities.

Wat zegt gdisk van je partition table? Lijkt me dat daar iets amiss is, maar in de parted output zie ik niets geks.

Om de praktische oplossingen er maar even in te houden, je kunt ook met parted/gdisk de byte offset van de partitie into mmcblk0 bepalen, en dan mmblk0 mounten met -o offset=BYTEOFF.

Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
Dank voor je tip, even geprobeerd op de 14e partitie:
root@xubuntu:/home/xubuntu# gdisk
GPT fdisk (gdisk) version 0.8.8
Type device filename, or press <Enter> to exit: /dev/mmcblk0
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): ?
b	back up GPT data to a file
c	change a partition's name
d	delete a partition
i	show detailed information on a partition
l	list known partition types
n	add a new partition
o	create a new empty GUID partition table (GPT)
p	print the partition table
q	quit without saving changes
r	recovery and transformation options (experts only)
s	sort partitions
t	change a partition's type code
v	verify disk
w	write table to disk and exit
x	extra functionality (experts only)
?	print this menu

Command (? for help): i
Partition number (1-15): 14
Partition GUID code: EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (Microsoft basic data)
Partition unique GUID: 80868086-8086-8086-8086-000000000007
First sector: 3735592 (at 1.8 GiB)
Last sector: 7929895 (at 3.8 GiB)
Partition size: 4194304 sectors (2.0 GiB)
Attribute flags: 0000000000000000
Partition name: 'system'

Offset gezet op 3735592:
root@xubuntu:/home/xubuntu# mount -t ext4 -o loop,offset=3735592 /dev/mmcblk0p14 /mnt/bla2
mount: /dev/mmcblk0p14: failed to setup loop device: No such device or address
root@xubuntu:/home/xubuntu# mount -t ext4 -o offset=3735592 /dev/mmcblk0p14 /mnt/bla2
mount: /dev/mmcblk0p14: failed to setup loop device: No such device or address

Helaas...
Dit geeft gdisk van de partition table:
Command (? for help): p
Disk /dev/mmcblk0: 61071360 sectors, 29.1 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): D7D5227B-3C53-BE1E-13B2-D6E1AC166F05
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 61071326
Partitions will be aligned on 8-sector boundaries
Total free space is 16357 sectors (8.0 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          131111   64.0 MiB    EF00  ESP
   2          131112          262183   64.0 MiB    0700  reserved
   3          262184          294951   16.0 MiB    0700  boot
   4          294952          327719   16.0 MiB    0700  recovery
   5          327720          360487   16.0 MiB    0700  fastboot
   6          360488          393255   16.0 MiB    0700  reserved_1
   7          393256          524327   64.0 MiB    0700  test
   8          524328          589863   32.0 MiB    0700  panic
   9          589864          852007   128.0 MiB   0700  factory
  10          852008         1114151   128.0 MiB   0700  misc
  11         1114152         1376295   128.0 MiB   0700  config
  12         1376296         3211303   896.0 MiB   0700  cache
  13         3211304         3735591   256.0 MiB   0700  logs
  14         3735592         7929895   2.0 GiB     0700  system
  15         7929896        61054975   25.3 GiB    0700  data

Acties:
  • 0 Henk 'm!

  • gekkie
  • Registratie: April 2000
  • Laatst online: 11:53
devmapper en kpartx -a gebruiken ?

Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
Ze zouden met kpartx -a /dev/mmcblk0 onder /dev/mapper zichtbaar moeten worden, maar hij komt helaas niet verder dan:
root@xubuntu:/home/xubuntu# kpartx -a -v /dev/mmcblk0
device-mapper: reload ioctl on mmcblk0p1 failed: Invalid argument
create/reload failed on mmcblk0p1
add map mmcblk0p1 (0:0): 0 131072 linear /dev/mmcblk0 40
device-mapper: reload ioctl on mmcblk0p2 failed: Invalid argument
create/reload failed on mmcblk0p2
add map mmcblk0p2 (0:0): 0 131072 linear /dev/mmcblk0 131112
device-mapper: reload ioctl on mmcblk0p3 failed: Invalid argument
create/reload failed on mmcblk0p3
add map mmcblk0p3 (0:0): 0 32768 linear /dev/mmcblk0 262184
device-mapper: reload ioctl on mmcblk0p4 failed: Invalid argument
create/reload failed on mmcblk0p4
add map mmcblk0p4 (0:0): 0 32768 linear /dev/mmcblk0 294952
device-mapper: reload ioctl on mmcblk0p5 failed: Invalid argument
create/reload failed on mmcblk0p5
add map mmcblk0p5 (0:0): 0 32768 linear /dev/mmcblk0 327720
device-mapper: reload ioctl on mmcblk0p6 failed: Invalid argument
create/reload failed on mmcblk0p6
add map mmcblk0p6 (0:0): 0 32768 linear /dev/mmcblk0 360488
device-mapper: reload ioctl on mmcblk0p7 failed: Invalid argument
create/reload failed on mmcblk0p7
add map mmcblk0p7 (0:0): 0 131072 linear /dev/mmcblk0 393256
device-mapper: reload ioctl on mmcblk0p8 failed: Invalid argument
create/reload failed on mmcblk0p8
add map mmcblk0p8 (0:0): 0 65536 linear /dev/mmcblk0 524328
device-mapper: reload ioctl on mmcblk0p9 failed: Invalid argument
create/reload failed on mmcblk0p9
add map mmcblk0p9 (0:0): 0 262144 linear /dev/mmcblk0 589864
device-mapper: reload ioctl on mmcblk0p10 failed: Invalid argument
create/reload failed on mmcblk0p10
add map mmcblk0p10 (0:0): 0 262144 linear /dev/mmcblk0 852008
device-mapper: reload ioctl on mmcblk0p11 failed: Invalid argument
create/reload failed on mmcblk0p11
add map mmcblk0p11 (0:0): 0 262144 linear /dev/mmcblk0 1114152
device-mapper: reload ioctl on mmcblk0p12 failed: Invalid argument
create/reload failed on mmcblk0p12
add map mmcblk0p12 (0:0): 0 1835008 linear /dev/mmcblk0 1376296
device-mapper: reload ioctl on mmcblk0p13 failed: Invalid argument
create/reload failed on mmcblk0p13
add map mmcblk0p13 (0:0): 0 524288 linear /dev/mmcblk0 3211304
device-mapper: reload ioctl on mmcblk0p14 failed: Invalid argument
create/reload failed on mmcblk0p14
add map mmcblk0p14 (0:0): 0 4194304 linear /dev/mmcblk0 3735592
device-mapper: reload ioctl on mmcblk0p15 failed: Invalid argument
create/reload failed on mmcblk0p15
add map mmcblk0p15 (0:0): 0 53125080 linear /dev/mmcblk0 7929896

[ Voor 21% gewijzigd door Kaspers op 12-03-2015 20:11 ]


Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 13:06
Fout! Bytes, niet sectors. 512 * 3735592 = 1912623104.
root@xubuntu:/home/xubuntu# mount -t ext4 -o offset=3735592 /dev/mmcblk0p14 /mnt/bla2
mmcblk0, niet p14 (dat werkte immers niet, dus dan pak je de hele device met een byte offset daarbinnen).

# mount -t ext4 -o offset=1912623104 /dev/mmcblk0 /mnt/bla2

Acties:
  • 0 Henk 'm!

  • Kaspers
  • Registratie: Juni 2004
  • Laatst online: 09:59
Thralas schreef op donderdag 12 maart 2015 @ 20:11:
# mount -t ext4 -o offset=1912623104 /dev/mmcblk0 /mnt/bla2
root@xubuntu:/home/xubuntu# mount -t ext4 -o offset=1912623104 /dev/mmcblk0 /mnt/bla2
root@xubuntu:/home/xubuntu# 


_/-\o_
Pagina: 1