Baru-baru ini saya melakukan root pada Droid X saya dan semuanya tampak berfungsi dengan baik. Saya membuat beberapa perubahan build.prop
dan ketika saya lakukan adb push build.prop /system/
saya mendapatkan error berikut: failed to copy 'c:\build.prop' to '/system//build.prop': Read-only file system
.
Bagaimana saya bisa memperbaikinya?
adb remount
, apa yang Anda dapatkan?Jawaban:
Tidak semua ponsel dan versi android memiliki hal-hal yang sama.
Membatasi opsi saat remount akan menjadi yang terbaik.
Cukup remount sebagai rw (Baca / Tulis):
Setelah Anda selesai melakukan perubahan, pasang kembali ke ro (hanya baca):
sumber
adb root
atau Anda akan mendapatkan Izin Ditolak saat mendorong file.Balazss-MBP:tools varh1i$ adb shell
generic_x86_64:/ # mount -o rw,remount /system
'/dev/block/vda' is read-only
mv hosts /system/etc/hosts
bekerja untuk saya dan tampaknya menjadi solusi paling sederhana.
sumber
Not running as root. Try "adb root" first.
. Dan kemudianadbd cannot run as root in production builds
.$ adb disable-verity
dan kemudian reboot perangkat sebelum kita dapat menjalankan$ adb remount
Not running as root. Try "adb root" first.
. Saya masukadb root
dan sekali lagiadb remount
tetapi masih kesalahan yang sama:Not running as root. Try "adb root" first.
Turun dari forum Android tempat saya mengajukan pertanyaan yang sama. Semoga ini bisa membantu orang lain.
Pada emulator terminal di telepon:
Kemudian pada prompt cmd, lakukan
adb push
sumber
adb shell <command>
dapat digunakan dari komputer (jika Anda tidak memiliki terminal di ponsel)Sementara saya tahu pertanyaannya adalah tentang perangkat yang sebenarnya, jika seseorang datang ke sini dengan masalah serupa di emulator, dengan alat apa pun yang terbaru pada Februari 2017, emulator perlu diluncurkan dari baris perintah dengan:
Agar segala sesuatu dapat ditulisi ke
/system
. Tanpa bendera ini tidak ada kombinasiremount
ataumount
akan memungkinkan seseorang untuk menulis/system
.Setelah emulator diluncurkan dengan bendera itu, satu
adb remount
setelahadb root
cukup untuk mendapatkan izin untuk mendorong/system
.Berikut adalah contoh dari baris perintah yang saya gunakan untuk menjalankan emulator saya:
Nilai untuk
-avd
bendera berasal dari:sumber
Saya pikir cara teraman adalah remounting sistem / sebagai read-write, menggunakan:
dan setelah selesai, remount sebagai read-only:
sumber
Pada Samsung galaxy mini S5570 saya (setelah mendapat root di ponsel):
Fist, sebagai root, aku berlari:
sebagai pengguna normal:
Berikan izin root pada layar sentuh
daftarkan semua mount point yang kita miliki dan kita dapat melihat, dalam kasus saya, bahwa / dev / stl12 sudah di-mount pada / sistem sebagai ro (hanya siap), jadi kita hanya perlu melakukan:
sumber
Coba yang berikut ini pada command prompt:
sumber
adb root remount
Ini berfungsi untuk saya, dan merupakan solusi paling sederhana.
sumber
Inilah yang bekerja untuk saya. Saya menjalankan perangkat Android 7.1.1 (Nougat) yang dicontoh.
Di terminal, saya menekan perintah berikut. Satu hal yang perlu diperhatikan adalah flag -writable-system
Di tab lain
Semua perubahan yang Anda lakukan pada / isi sistem akan bertahan hidup restart.
sumber
Saya diperiksa dengan emulator dan berikut berhasil.
Seperti disebutkan di atas juga, jalankan langkah kedua dalam satu tembakan.
sumber
Buka emulator terminal di ponsel: lalu
setelah itu daemon dimulai
maka read only diubah menjadi read-Write.
sumber
bekerja untukku
sumber
sumber
Saya menemukan artikel ini dari google, dan saya pikir saya akan menambahkan langkah-langkah yang diperlukan pada Sony Xperia Z (4.2.2).
Sony memiliki proses pengawas yang mendeteksi ketika Anda telah mengubah ro ke rw pada / dan / sistem (ini adalah satu-satunya yang saya coba modifikasi) dan mungkin yang lain.
Berikut ini adalah apa yang saya jalankan untuk melakukan perubahan yang saya coba capai. Saya menempelkan ini ke jendela, karena menghapus bit eksekusi dari / sbin / ric perlu dilakukan dengan cepat untuk menghentikannya restart itu sendiri. (Saya mencoba
stop ric
; ini tidak berhasil - walaupun itu bekerja pada versi android sebelumnya di telepon).Saya memodifikasi file host di sini, jadi ini adalah tempat Anda membuat perubahan yang Anda perlukan untuk sistem file. Untuk meninggalkan sesuatu seperti yang kami temukan, lakukan ini:
Pada titik ini ric harus secara otomatis restart. (Ini dimulai kembali untuk saya secara otomatis.)
sumber
Menambahkan sedikit lebih banyak ke jawaban Jan Bergström: Karena Android adalah sistem berbasis Linux, dan jalur di Linux berisi garis miring (../), saat menggunakan perintah push, gunakan "/" untuk menentukan jalur tujuan di perangkat Android.
Sebagai Contoh, perintahnya: adb push C: \ Users \ admin \ Desktop \ 1.JPG sdcard / gambar /
Perhatikan bahwa di sini, garis miring digunakan untuk menentukan jalur sumber file yang akan didorong dari windows PC dan garis miring digunakan untuk menentukan jalur tujuan karena Android adalah sistem berbasis Linux. Anda tidak harus bertindak sebagai root untuk menggunakan perintah ini dan juga, itu berfungsi dengan baik pada perangkat produksi.
sumber
Terkadang Anda mendapatkan kesalahan karena lokasi tujuan di telepon tidak ada. Sebagai contoh, beberapa lokasi penyimpanan eksternal ponsel android
/storage/emulated/legacy
bukan/storage/emulated/0
.sumber
Terima kasih, Sérgio , untuk perintah "mount" tanpa gagasan parameter. Aku akan perlu untuk dibuat
adb push
menjadi/data/data/com.my.app/lib
beberapa masalah tes, dan "Read-only filesystem" pesan.Perintah ini menunjukkan kepada saya:
root@android:/ # ls -l /data/data/com.my.app/
drwxrwx--x u0_a98 u0_a98 2016-05-06 09:16 cache drwxrwx--x u0_a98 u0_a98 2016-05-06 09:04 files lrwxrwxrwx system system 2016-05-06 11:43 lib -> /mnt/asec/com.my.app-1/lib
Jadi, dapat dipahami bahwa direktori "lib" dipisahkan dari direktori aplikasi lain.
Perintah
mount -o rw,remount /mnt/asec
tidak menyelesaikan masalah "r / o fs", ia menginginkan parameter perangkat sebelum parameter direktori.Perintah "df" juga tidak membantu, tetapi menunjukkan bahwa
/mnt/asec/com.my.app-1
direktori saya berada pada titik mount terpisah.Lalu aku melihat
mount
dan voila!root@android:/ # mount ......... /dev/block/dm-4 /mnt/asec/com.my.app-1 ext4 ro,dirsync,relatime 0 0
Langkah selanjutnya sudah dijelaskan ke atas: remount ke RW, dorong dan remount kembali ke RO.
sumber
itu sama yang harus mengekstrak dan mengemas kembali initrc.img dan mengedit
init
file dengan kode mount / sistemsumber
Salin file ke kartu SD?
Yah, saya anggap Anda suka menyalin data ke kartu SD dari komputer pengembang? Anda mungkin telah me-rooting alat dan membuat area yang Anda tangani tersedia?) Saya memiliki masalah yang sama untuk mengunggah file data untuk aplikasi saya (Android Studio 1.3.2 di Win7), tetapi.
Jadi misalnya perintah adb dapat terlihat seperti ini:
adb push C: \ testdata \ t.txt /sdcard/download/t.txt
sumber
Jika ada kegagalan dalam menyalin file read-only, Anda dapat mencoba mencari file asli di direktori root dan memodifikasinya dengan editor teks root (lebih disukai) editor teks RB, ia datang dengan aplikasi ROM Toolbox.
sumber
Coba ini di Terminal Emulator sebagai root:
sumber
Dalam kasus saya, saya menggunakan perintah adb push
~/Desktop/file.txt ~/sdcard/
Saya mengubahnya menjadi
~/Desktop/file.txt /sdcard/
dan kemudian berhasil.Pastikan untuk memutuskan dan menghubungkan kembali telepon.
sumber
Seperti yang disebutkan oleh chen-xing , cara paling sederhana adalah:
Tetapi bagi saya, saya harus mengubah pengaturan saya terlebih dahulu:
Pengaturan → Opsi pengembang → Akses root
Pastikan ADB memiliki akses Root:
sumber