Wie mounte ich /system als Lese-/Schreibzugriff in Android?

kann /system in Android mit folgendem Befehl nicht mounten, hat jemand eine Lösung dafür?

root@hwG7-UL20:/ # mount -o rw,remount,rw /system
mount: Invalid argument

255|root@hwG7-UL20:/ # mount -o remount rw /system
mount: Invalid argument

root@hwG7-UL20:/ # mount|grep system
/dev/block/bootdevice/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0

Die vollständige Ausgabe für mount ist:

255|root@hwG7-UL20:/ # mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,size=970220k,nr_inodes=155384,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,size=970220k,nr_inodes=155384,mode=750,gid=1000 0 0
none /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0
none /dev/frz cgroup rw,relatime,freezer 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,size=970220k,nr_inodes=155384,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,size=970220k,nr_inodes=155384,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
/dev/block/bootdevice/by-name/log /log vfat rw,nosuid,nodev,relatime,uid=1000,gid=1007,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0
/dev/block/bootdevice/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,relatime,noauto_da_alloc,data=ordered 0 0
/dev/block/bootdevice/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/modem /firmware vfat ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/data/media /mnt/shell/emulated sdcardfs rw,nosuid,nodev,relatime,uid=1023,gid=1023 0 0
/dev/block/bootdevice/by-name/cust /cust ext4 ro,seclabel,relatime,data=ordered 0 0

Danke vielmals!

Wo machst du das? Im Wiederherstellungsmodus oder im Terminal auf Ihrem Gerät.
im Terminal "adb shell" mit root
Was passiert, wenn Sie den Namen des Geräts angeben? dhmount -o remount,rw /dev/block/bootdevice/by-name/system /system
sagte immer noch: mount: Ungültiges Argument
Hallo und willkommen! A) Welche Gerätemarke/-modell? B) Welche Android-Version? C) Vermute ich richtig, dass SELinux eingeschaltet ist?
Die Befehle sind ein wenig anders, wenn Sie auf Nougat sind.
Alte Frage, aber ich habe das gleiche Problem wie jetzt. Hat jemand eine Lösung dafür?

Antworten (3)

Lösung ist einfach. Um ein gemountetes System neu zu mounten, benötigen Sie Root-Rechte. Mach ein Su. Sie gelangen in den Root-Modus. Führen Sie dann den folgenden Befehl aus. Es wird funktionieren, ich habe es viele Male gemacht.

Hier also die Schritte:

 adb shell  
 su  
 mount -o rw,remount -t ext4 /system

Edit: Bessere Lösung gefunden

Führen Sie auf dem Hostcomputer (Linux- oder Windows-PC) die folgenden Befehle aus.

>> adb root  
>> adb remount

remount wird standardmäßig die /system-Partition mit rw neu einhängen, wenn Sie die Berechtigungen haben.

Hinweis 1: Um su oder adb rooten zu können, muss Ihr Gerät gerootet sein und su ausführbar haben. Wenn Sie ein su ausführen und es ordnungsgemäß ausgeführt wird, ändert sich Ihre Terminal-Eingabeaufforderung von $ zu #. Danke..

Hinweis 2: In den letzten Handys, nur wenige von Acer und Samsung, die ich kenne, wurde die Sicherheit verschärft, und selbst nach dem Rooten des Telefons würde das erneute Einhängen von Adb nicht funktionieren. Soweit ich weiß, gibt es dafür bisher keine Lösung.

Ich würde vorsichtig sein, die Option „-t“ zur Auswahl des Dateisystems einzufügen, da dies dazu führen kann, dass es versucht, als „ext4“ erneut zu mounten, wenn es zuvor möglicherweise „f2fs“ war (von neueren benutzerdefinierten ROMs verwendet). Sie sollten nur sagen müssen ... mount -o rw,remount /system , um als Read-Write- und als Read-Only-Remount erneut zu mounten ... mount -o ro,remount /system
adbd cannot run as root in production builds
Big up für 'adb remount' - das hat bei mir unter Android 9 funktioniert, wenn mount -o rw,remount -text ext4 /system nicht funktioniert hat - danke!

siehe diese verwandten Artikel hier und Stack-Exchange-Antwort hier

Grundsätzlich

  1. Du brauchst root

  2. Besser adb secure apk installiert haben

  3. Überprüfen Sie, wie die /system-Partition als schreibgeschützt (ro) gemountet ist. Beachten Sie insbesondere das Gerät

    # mount | grep system
    /dev/block/stl12 /system ext4 ro,relatime,barrier=1,data=ordered 0 0
    
  4. Hängen Sie das dann als /system erneut ein

    # mount -o rw,remount /dev/block/stl12 /system
    
  5. Schließlich können Sie es bestätigen

    # mount | grep system
    /dev/block/stl12 /system ext4 rw,relatime,barrier=1,data=ordered 0 0
    

Wenn Sie root sind, können Sie ES File Explorer aus dem Play Store herunterladen, drücken Sie das Symbol mit dem dreizeiligen Menü oben links. Scrollen Sie als Nächstes nach unten, bis Sie Root Explorer sehen. 2-3 Sekunden gedrückt halten. Ein Menü sollte erscheinen. Drücken Sie „Mount R/W“. Setzen Sie den Punkt für „System“ in den RW-Abschnitt. Möglicherweise ist ein Neustart erforderlich.

Keine Ergebnisse, immer noch RO. Es verwendet wahrscheinlich den gleichen Befehl.