Bagaimana tepatnya "root" bekerja? Apakah semua aplikasi berjalan sebagai root di ponsel saya setelah rooting?


45

Saya telah membaca tentang rooting ponsel, tetapi saya memiliki beberapa keraguan konsep: ketika Anda membeli ponsel Android dari operator, Anda tidak memiliki akses "root". Ketika Anda memulai telepon Anda, apakah itu berarti akun "pengguna" (seperti yang saya miliki di Linux / Mac, '/ home / diriku') digunakan? Apakah '/ rumah / saya sendiri' atau serupa ada di ponsel Android?

Jika saya "me-root" telepon, apakah saya akan memulai telepon sebagai root ketika saya menyalakannya? Akankah semua aplikasi sekarang berjalan sebagai root? Atau ketika mereka mencoba dijalankan sebagai root, saya perlu mengizinkannya?

Jika Android pada dasarnya adalah Linux, untuk membuat cadangan perangkat saya, bukankah seharusnya saya hanya dapat terhubung untuk melakukan root, lakukan secara penuh tar -cvzf /dan kemudian scp ke suatu tempat? Mengapa saya perlu memiliki Nandroid dan solusi lengkap ini?



Jawaban:


56

Ketika Anda memulai telepon Anda, apakah itu berarti akun "pengguna" (seperti yang saya miliki di Linux / Mac, '/ home / diriku') digunakan? Apakah '/ rumah / saya sendiri' atau serupa ada di ponsel Android?

Tidak. Android dirancang untuk sistem pengguna tunggal, dan banyak keputusan desain dibuat sedemikian rupa sehingga / home / saya sendiri tidak ada lagi. Di Android, kapabilitas multiuser kernel Linux digunakan untuk meningkatkan keamanan, dengan menjalankan setiap aplikasi sebagai penggunanya sendiri; oleh karena itu mengisolasi data masing-masing aplikasi dari satu sama lain.

Jika saya "me-root" telepon, apakah saya akan memulai telepon sebagai root ketika saya menyalakannya? Akankah semua aplikasi sekarang berjalan sebagai root? Atau ketika mereka mencoba dijalankan sebagai root, saya perlu mengizinkannya?

Tidak, Tidak, Ya. Dalam metode rooting modern (yang pada dasarnya setiap metode rooting kecuali yang paling awal), ada aplikasi yang disebut "Superuser" yang digunakan untuk mengelola aplikasi yang diizinkan untuk mendapatkan akses root.

Karena Android adalah Linux, saya tertarik untuk memiliki akses ke terminal dan beberapa utilitas unix (ssh, rsync, dll). Saya tidak keberatan harus menggunakan keyboard bluetooth dan vi (untuk mengedit / etc / hosts misalnya) jika diperlukan. Apakah ini mungkin? Bisakah saya memiliki terminal dengan banyak utilitas unix (saya tahu busybox tersedia)?

Ya, sebuah shell ada (tapi itu bukan shell bash). Anda mungkin perlu menginstal Terminal Emulator untuk mengaksesnya (beberapa custom ROM menginstalnya secara default) atau menggunakannya sebagai shell jarak jauh menggunakan ADB. Karena tidak menggunakan bash, terminal akan sedikit berbeda dari yang biasa Anda lihat di distro Linux biasa (terutama tidak memiliki pelengkapan otomatis) dan sebagian besar perintah shell yang Anda anggap "standar" tidak ada atau hanya ada dalam bentuk yang sangat barebone.

Jika Anda sering menggunakan terminal, Anda mungkin menginstal busybox dan bash untuk pengalaman terminal yang lebih akrab; Anda juga dapat menginstal utilitas ruang pengguna GNU, tetapi Anda akan memerlukan ponsel yang cukup canggih dengan banyak ruang disk untuk itu.

Singkatnya, apa yang Anda inginkan adalah mungkin; meskipun banyak alat tidak diinstal secara default pada ROM pabrikan. Dibutuhkan sedikit kerja yang adil untuk menginstal semua alat itu sendiri, rute termudah dan tercepat adalah menginstal ROM kustom yang menyediakan alat-alat seperti CyanogenMod.

Jika Android pada dasarnya adalah Linux

Android menggunakan kernel Linux, tetapi itu bukan GNU / Linux dan tidak menggunakan program-program khusus userspace GNU. Alih-alih menggunakan toolbox userspace, yang merupakan userspace yang sangat minimalis (bahkan lebih kecil dari busybox, toolbox bahkan tidak memiliki cp, Anda harus menggunakan cat sebagai gantinya untuk menyalin file). Beberapa ROM Android khusus menginstal busybox secara default.

untuk mencadangkan perangkat saya, bukankah seharusnya saya hanya dapat terhubung ke root, lakukan tar penuh -cvzf / dan mereka scp ke suatu tempat? Mengapa saya perlu memiliki Nandroid dan solusi lengkap ini?

yang pada dasarnya adalah apa yang dilakukan Nandroid (sebenarnya, cadangan Nandroid lebih seperti cadangan dengan dd daripada tar), kecuali dengan GUI yang jauh lebih nyaman. Kebanyakan orang, bahkan pengguna listrik, tidak suka mengetik perintah kompleks pada keyboard kecil atau harus menyambungkan keyboard eksternal setiap kali mereka ingin membuat cadangan (dan 99% dunia memiliki Terminal-phobia). Jauh lebih mudah untuk memulai aplikasi dan mengeklik tombol dan menyelesaikan semuanya untuk Anda.


2
"99% dunia memiliki Terminal-fobia" - sedih tapi benar. Tapi aku malah pecinta Terminal. Saya selalu ingin tahu perintah apa yang dikeluarkan di balik aplikasi. Itu sedang memproses data berharga saya setelah semua. Saya suka mengeluarkan perintah sendiri, terutama sebagai pengembang.
midnite

Bagaimana cara OEM menggunakan fungsi-fungsi root pada perangkat yang tidak di-root?
Shloime Rosenblum
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.