Der Befehl mount gibt die Verwendung bei korrekten Argumenten aus

Ich habe root für adb aktiviert und dann Folgendes versucht:

root@crespo:/ # mount /dev/block/platform/s3c-sdhci.0/by-name/media /storage/sdcard0
Usage: mount [-r] [-w] [-o options] [-t type] device directory
1|root@crespo:/ # mount /dev/block/mmcblk0p3 /storage/sdcard0
Usage: mount [-r] [-w] [-o options] [-t type] device directory
1|root@crespo:/ # mount /dev/block/mmcblk0 /storage/sdcard0
Usage: mount [-r] [-w] [-o options] [-t type] device directory

aber selbst wenn -tes optional ist, bekomme ich eine andere Fehlermeldung, wenn ich es hinzufüge:

1|root@crespo:/ # mount -t vfat /dev/block/mmcblk0 /storage/sdcard0
mount: Device or resource busy

Vielleicht ist die Analyse der Argumente des Befehls durcheinander ... scheint ein Fehler in busybox zu sein, oder geht etwas viel mehr Fußgänger schief?

Überprüfen Sie, ob es sich /dev/block/mmcblk0um einen Geräteknoten /system/sdcard0handelt und ob es sich um ein Verzeichnis (kein Symlink) handelt.
/storage/sdcard0hoppla, mir ist aufgefallen, dass das nicht das richtige ziel ist /system/sdcard0... das ergebnis ist übrigens immer noch dasselbe
@DanHulme stat /dev/block/mmcblk0sagt, es ist ein block special fileund stat /storage/sdcard0sagt, es istdirectory
Ich habe auch eine Mail an die Busybox-Mailingliste gesendet: listen.busybox.net/pipermail/busybox/2014-January/080328.html
Sie können mmcblk0 nicht mounten, Sie können nur Partitionen mounten (xxxxxxYpZ)
Fügen Sie keine zusätzlichen Leerzeichen in Befehlen hinzu, das wird nicht funktionieren.
Ich stimme zu, die Aufteilung der Argumente wird von der Shell durchgeführt, busybox befindet sich auf einer niedrigeren Ebene ... Ich bin mir nicht sicher, welche Art von Shell auf cyanogenmod läuft, aber es war ein kleiner Sprung anzunehmen, dass es wichtig wäre. .. da die Frage ohne das klarer ist, werde ich sie entfernen

Antworten (1)

Es stellte sich heraus, dass mount eigentlich nicht von geliefert wird busybox, sondern von toolbox.

Mit diesem Wissen war es einfach, die Ursache des Fehlers aufzuspüren: Da ich im Gegensatz zu busybox keine andere „Toolbox“-Implementierung mit einem korrekt funktionierenden mountBefehl habe, wäre das Verhalten wahrscheinlich leicht aus der ersichtlich gewesen Code.

Tatsächlich liegt das Problem hier in Zeile 330 : Es prüft if type == NULL, gibt dann aber ein aus USAGE, das fälschlicherweise -tals optional angezeigt wird

Vergleichen Sie mit busybox in Zeile 1930 :// Loop through filesystem types until mount succeeds