Ich habe die Disk Info App installiert und in den Optionen den Expertenmodus aktiviert und Nicht gemountete Partitionen . Es steht nicht "Swap", aber es zeigt deutlich, dass es die einzige andere Partition auf der SD-Karte ist und die richtige Größe hat, also /dev/block/mmcblk1p2
muss derjenige sein:
Swapper 2 ist für die Verwendung von /dev/block/mmcblk0p3
konfiguriert standardmäßig, daher bin ich froh, dass ich mich nicht für die Standardeinstellung entschieden habe.
fdisk -l
funktioniert, wenn Sie den gesamten Plattengerätenamen explizit übergeben (z. B. fdisk -l /dev/block/mmcblk1
); Was nicht funktioniert, ist die automatische Erkennung von Blockgeräten (anscheinend, weil Android Blockgerätedateien unter dem /dev/block
platziert Verzeichnis, aber fdisk
erwartet, diese Dateien direkt in /dev
zu sehen ). Daher besteht eine Möglichkeit darin, die Liste der vollständigen Festplattengeräte (/dev/block/mmcblk0
, /dev/block/mmcblk1
, …) und schauen Sie sich ihre Partitionstabellen mit fdisk -l <device>
an . Diese Whole-Disk-Geräte sind in /proc/partitions
aufgeführt vor den entsprechenden Partitionen.
Die blkid
Das Dienstprogramm sieht sich die Partitionstabelle überhaupt nicht an – es öffnet alle dem System bekannten Blockgeräte und erkennt den Dateisystemtyp anhand der tatsächlichen Daten auf diesen Geräten; daher blkid
zeigt keine korrekten Informationen für die Swap-Partition an, bis diese Partition durch mkswap
initialisiert wurde . Das bedeutet, dass blkid
ist für Ihre aktuelle Aufgabe nutzlos (herauszufinden, welche Partition an mkswap
übergeben werden soll ).
mount
zeigt normalerweise Geräte unter /dev/block/vold
an , die nach ihrer Haupt- und Nebennummer benannt sind. Um den üblichen Gerätenamen zu erhalten, können Sie in /proc/partitions
nachsehen um eine Zeile zu finden, die in den ersten beiden Spalten die gleichen Zahlen enthält. Dann können Sie die p<number>
entfernen Teil vom Ende des Gerätenamens, fügen Sie /dev/block/
hinzu am Anfang und übergebe den resultierenden Namen an fdisk -l
um die Partitionstabelle des entsprechenden Geräts anzuzeigen.
Beachten Sie das, wenn Sie sich den fdisk -l
ansehen Ausgabe für den internen eMMC-Flash finden Sie möglicherweise viele Partitionen mit seltsamen Typen, insbesondere auf Qualcomm-basierten Geräten. Siehe z. B. die Partitionstabelle für Samsung Galaxy W (GT-I8150):
# fdisk -lu /dev/block/mmcblk0
Disk /dev/block/mmcblk0: 3959 MB, 3959422976 bytes
1 heads, 16 sectors/track, 483328 cylinders, total 7733248 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 212991 106495+ c Win95 FAT32 (LBA)
Partition 1 does not end on cylinder boundary
/dev/block/mmcblk0p2 * 212992 213991 500 4d Unknown
Partition 2 does not end on cylinder boundary
/dev/block/mmcblk0p3 213992 221183 3596 46 Unknown
Partition 3 does not end on cylinder boundary
/dev/block/mmcblk0p4 221184 7733247 3756032 5 Extended
Partition 4 does not end on cylinder boundary
/dev/block/mmcblk0p5 229376 239615 5120 47 Unknown
/dev/block/mmcblk0p6 245760 285759 20000 49 Unknown
/dev/block/mmcblk0p7 286720 292863 3072 58 Unknown
/dev/block/mmcblk0p8 294912 306175 5632 48 Unknown
/dev/block/mmcblk0p9 311296 324271 6488 50 Unknown
/dev/block/mmcblk0p10 327680 333823 3072 4a Unknown
/dev/block/mmcblk0p11 335872 342015 3072 4b Unknown
/dev/block/mmcblk0p12 344064 360447 8192 90 Unknown
/dev/block/mmcblk0p13 360448 375807 7680 91 Unknown
/dev/block/mmcblk0p14 376832 387071 5120 92 Unknown
/dev/block/mmcblk0p15 393216 1488895 547840 93 Unknown
/dev/block/mmcblk0p16 1490944 1613823 61440 94 Unknown
/dev/block/mmcblk0p17 1613824 3887103 1136640 95 Unknown
/dev/block/mmcblk0p18 3891200 3993599 51200 96 Unknown
/dev/block/mmcblk0p19 3997696 3998695 500 97 Unknown
/dev/block/mmcblk0p20 4005888 4013079 3596 98 Unknown
/dev/block/mmcblk0p21 4014080 4024319 5120 99 Unknown
/dev/block/mmcblk0p22 4030464 4070463 20000 9a Unknown
/dev/block/mmcblk0p23 4071424 4081663 5120 9b Unknown
/dev/block/mmcblk0p24 4087808 4101807 7000 9c Unknown
/dev/block/mmcblk0p25 4104192 4114431 5120 9d Unknown
/dev/block/mmcblk0p26 4120576 4130815 5120 9e Unknown
/dev/block/mmcblk0p27 4136960 4147199 5120 9f BSD/OS
/dev/block/mmcblk0p28 4153344 7733247 1789952 a0 Thinkpad hibernation
Partitionstypcodes sind dort sogar gefährlich falsch, weil /dev/block/mmcblk0p1
, die als Win95 FAT32 (LBA)
deklariert wird , enthält tatsächlich einige Systemdaten (einschließlich Speicherorte und MD5-Hashes verschiedener ROM-Teile); jedoch /dev/block/mmcblk0p28
, das ist der FAT16-formatierte „interne Datenspeicher“, hat einen Typ, der völlig falsch aussieht. In diesem Fall hat der Hersteller den 0x82
nicht wiederverwendet (Linux-Swap)-Typcode für ihre eigenen Zwecke, aber ich bin mir nicht sicher, ob solche Kollisionen niemals auftreten, also sollten Sie nicht blind versuchen, eine Partition zu verwenden, die wie Swap aussieht – überprüfen Sie zuerst, ob die Gerätegröße und das Partitionslayout Ihren Vorstellungen entsprechen erwarten, auf Ihrer SD-Karte zu sehen.
/proc/mtd
ist nie nützlich, um eine Swap-Partition auf einer SD-Karte zu finden (MTD-Treiber werden verwendet, um auf direkt angeschlossene Raw-Flash-Chips zuzugreifen, sie können nicht mit externen SD-Karten arbeiten).