“ รูท” ทำงานอย่างไร? แอปพลิเคชันทั้งหมดทำงานเป็นรูทบนโทรศัพท์ของฉันหลังจากการรูทหรือไม่


45

ฉันได้อ่านเกี่ยวกับการรูทโทรศัพท์ แต่ฉันมีข้อสงสัยบางอย่างเกี่ยวกับ: เมื่อคุณซื้อโทรศัพท์ Android จากผู้ให้บริการคุณไม่สามารถเข้าถึง "รูท" เมื่อคุณเริ่มโทรศัพท์หมายความว่ามีการใช้บัญชี "ผู้ใช้" (อย่างที่ฉันมีใน Linux / Mac ใช้ '/ home / me') หรือไม่ มี '/ home / me' หรือคล้ายกันในโทรศัพท์ Android

หากฉัน "รูท" โทรศัพท์ฉันจะสตาร์ทโทรศัพท์เป็นรูทเมื่อเปิดเครื่องหรือไม่? แอปพลิเคชันทั้งหมดจะทำงานเป็นรูตหรือไม่ หรือเมื่อพวกเขาพยายามที่จะรันในฐานะ root ฉันจะต้องอนุญาตพวกเขาเหรอ?

หาก Android เป็นลินุกซ์เป็นหลักในการสำรองข้อมูลอุปกรณ์ของฉันฉันไม่ควรเชื่อมต่อกับรูทได้หรือไม่ทำแบบเต็มtar -cvzf /และจากนั้นไปที่อื่น? ทำไมฉันต้องมี Nandroid และวิธีแก้ไขปัญหาเหล่านี้?


เป็นไปได้ที่ซ้ำกัน: android.stackexchange.com/questions/236/...
เบียร์

ดูเพิ่มเติม: android.stackexchange.com/questions/1/...
เบียร์

คำตอบ:


56

เมื่อคุณเริ่มโทรศัพท์หมายความว่ามีการใช้บัญชี "ผู้ใช้" (อย่างที่ฉันมีใน Linux / Mac ใช้ '/ home / me') หรือไม่ มี '/ home / me' หรือคล้ายกันในโทรศัพท์ Android

ไม่ Android ได้รับการออกแบบมาสำหรับระบบผู้ใช้คนเดียวและการตัดสินใจด้านการออกแบบจำนวนมากทำให้ / home / ตัวเองไม่มีอยู่อีกต่อไป ใน Android ความสามารถของผู้ใช้หลายคนของ Linux kernel ใช้เพื่อเพิ่มความปลอดภัยแทนโดยการเรียกใช้แต่ละแอปพลิเคชันในฐานะผู้ใช้ของตนเอง ดังนั้นการแยกข้อมูลของแต่ละแอปพลิเคชันออกจากกัน

หากฉัน "รูท" โทรศัพท์ฉันจะสตาร์ทโทรศัพท์เป็นรูทเมื่อเปิดเครื่องหรือไม่? แอปพลิเคชันทั้งหมดจะทำงานเป็นรูตหรือไม่ หรือเมื่อพวกเขาพยายามที่จะรันในฐานะ root ฉันจะต้องอนุญาตพวกเขาเหรอ?

ไม่ไม่ใช่ ในวิธีการรูตที่ทันสมัย ​​(ซึ่งโดยทั่วไปจะเป็นวิธีการรูทยกเว้นที่เก่าที่สุด) มีแอปพลิเคชันที่เรียกว่า "Superuser" ซึ่งใช้ในการจัดการแอปพลิเคชันที่ได้รับอนุญาตให้เข้าถึงรูทได้

เนื่องจาก Android เป็น Linux ฉันสนใจที่จะเข้าถึงเทอร์มินัลและยูทิลิตี้บางอย่างของยูนิกซ์ (ssh, rsync และอื่น ๆ ) ฉันไม่รังเกียจที่จะต้องใช้แป้นพิมพ์บลูทู ธ และ vi (เพื่อแก้ไข / etc / hosts เป็นต้น) หากจำเป็น เป็นไปได้ไหม ฉันสามารถใช้เครื่องเทอร์มินัลที่มียูทิลิตี้ยูนิกซ์จำนวนมากได้หรือไม่ (ฉันรู้ว่าสามารถใช้งาน busybox ได้)

ใช่มีเชลล์อยู่แล้ว (แต่ไม่ใช่เชลล์ bash) คุณอาจต้องติดตั้ง Terminal Emulator เพื่อเข้าถึง (บาง ROM ที่กำหนดเองจะติดตั้งเป็นค่าเริ่มต้น) หรือใช้เป็นเชลล์ระยะไกลโดยใช้ ADB เนื่องจากมันไม่ได้ใช้ bash เทอร์มินัลจะแตกต่างจากสิ่งที่คุณเคยเห็นใน Linux distros เล็กน้อย (โดยเฉพาะอย่างยิ่งมันไม่มีการเติมข้อมูลอัตโนมัติ) และคำสั่งเชลล์ส่วนใหญ่ที่คุณเห็นว่า "มาตรฐาน" ไม่มีอยู่หรืออย่างเดียว มีอยู่ในรูปแบบแบร์โบนมาก

หากคุณใช้เครื่องเทอร์มินัลบ่อยครั้งคุณสามารถติดตั้ง busybox และ bash เพื่อรับประสบการณ์การใช้งานเครื่องที่คุ้นเคย คุณยังสามารถติดตั้งยูทิลิตี้ผู้ใช้ GNU ได้ด้วย แต่คุณต้องมีโทรศัพท์ระดับสูงพอสมควรที่มีพื้นที่ดิสก์เหลือเฟือ

ในระยะสั้นสิ่งที่คุณต้องการเป็นไปได้; แม้ว่าเครื่องมือจำนวนมากจะไม่ได้รับการติดตั้งโดยค่าเริ่มต้นใน ROM ของผู้ผลิต ใช้งานได้พอสมควรในการติดตั้งเครื่องมือทั้งหมดด้วยตัวคุณเองเส้นทางที่ง่ายที่สุดและเร็วที่สุดคือการติดตั้ง ROM แบบกำหนดเองที่ให้เครื่องมือเหล่านั้นเช่น CyanogenMod

ถ้า Android เป็นลีนุกซ์เป็นหลัก

Android ใช้เคอร์เนล Linux แต่ไม่ใช่ GNU / Linux และไม่ได้ใช้โปรแกรมผู้ใช้ GNU ทั่วไป แต่จะใช้กล่องเครื่องมือ userspace ซึ่งเป็น userspace ที่เรียบง่ายมาก (แม้จะเล็กกว่า busybox กล่องเครื่องมือก็ไม่มี cp คุณต้องใช้ cat แทนเพื่อคัดลอกไฟล์) ROM Android แบบกำหนดเองบางตัวจะติดตั้ง busybox เป็นค่าเริ่มต้น

ในการสำรองข้อมูลอุปกรณ์ของฉันฉันไม่ควรเชื่อมต่อกับรูทได้หรือไม่ทำ tar -cvzf เต็ม / และใช้ scp กับที่อื่น? เหตุใดฉันจึงต้องมี Nandroid และโซลูชันการเป่าเต็มรูปแบบเหล่านี้

ซึ่งเป็นสิ่งที่ Nandroid ทำ (พูดอย่างเคร่งครัดการสำรองข้อมูลของ Nandroid นั้นเหมือนกับการสำรองข้อมูลกับ dd แทนที่จะเป็น tar) แม้ว่าจะมี GUI ที่สะดวกกว่า คนส่วนใหญ่แม้แต่ผู้ใช้ระดับสูงไม่ชอบพิมพ์คำสั่งที่ซับซ้อนบนแป้นพิมพ์ขนาดเล็กหรือต้องเชื่อมต่อแป้นพิมพ์ภายนอกทุกครั้งที่ต้องการสำรองข้อมูล (และ 99% ของโลกมีเทอร์มินัล - หวาดกลัว) มันง่ายกว่ามากที่จะเริ่มแอพและคลิกที่ปุ่มและทำทุกอย่างให้คุณ


2
"99% ของโลกมีเทอร์มินัล - ความหวาดกลัว" - เศร้า แต่จริง แต่ฉันเป็นคนรักเทอร์มินัลแทน ฉันอยากรู้ว่าคำสั่งใดบ้างที่ออกให้หลังแอพ มันกำลังประมวลผลข้อมูลที่มีค่าของฉันหลังจากนั้น ฉันรักการออกคำสั่งด้วยตัวเองโดยเฉพาะในฐานะนักพัฒนา
midnite

OEM ใช้ฟังก์ชันรูทบนอุปกรณ์ที่ไม่ได้รูทอย่างไร
Shloime Rosenblum
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.