Logo ar.androidermagazine.com
Logo ar.androidermagazine.com

ماذا يعني تأصيل هاتفك في الواقع؟

جدول المحتويات:

Anonim

نحن نحب الحصول على أسئلتك. إنه أمر جيد دائمًا عندما نتمكن من مساعدة بعضنا البعض ، ونتعلم الأشياء بأنفسنا عندما نبحث عن الإجابات. على الرغم من أننا لا نستطيع إيجاد وقت للإجابة عليها جميعًا ، إلا أن هناك في بعض الأحيان طرح سؤال يكفي يستحق إجابة مفصلة.

"ماذا يعني الجذر؟" هو واحد من هذه الأسئلة. قد يكون هذا المفهوم بسيطًا بالنسبة لبعضنا ، ولكن بالنسبة للعديد من الأشخاص الذين لم يقضوا وقتًا في التغلب على Android أو أي نظام تشغيل آخر قائم على الأذونات ، فهذا شيء لطرح الأسئلة عليه. سأحاول الإجابة عليها جميعًا بأفضل ما يمكنني.

أذونات

قبل أن نحدد الجذر ، من المهم أن نفهم سبب وجوده وكيف يعمل. ذلك لأن Android يستخدم أذونات (أذونات تستند إلى Linux ، على وجه الدقة) في بنية الملف. كل ملف وكل مجلد وكل قسم لديه مجموعة من الأذونات. تحدد هذه الأذونات من يمكنه قراءة ملف (انظر إلى المحتويات أو الوصول إليها دون تغييرها) أو الكتابة إلى ملف (تكون قادرًا على تغيير محتويات هذا الملف أو إنشاء ملف جديد داخل مجلد أو قسم) وتنفيذ ملف (قم بتشغيل الملف إذا كان نوعًا يمكن تشغيله ، مثل التطبيق). يتم ذلك استنادًا إلى المستخدمين والأذونات - يمكن لبعض المستخدمين الوصول ، بينما يتم منع المستخدمين الذين ليس لديهم الأذونات الصحيحة من الوصول.

عند إعداد هاتفك لأول مرة وتشغيله لأول مرة ، يتم تعيين معرف مستخدم لك. إذا قام مستخدم آخر بتسجيل الدخول عبر Google ، فسيتم تعيين معرف مستخدم مختلف له. عند تثبيت أحد التطبيقات على هاتفك ، يتم أيضًا تعيين معرف مستخدم خاص به. النظام نفسه هو مستخدم والعمليات الأخرى التي تحتاج إلى تشغيل على هاتفك قد يكون لها معرف مستخدم خاص بها. كل ما يمكنه فعل أي شيء لأي ملفات على Android هو مستخدم.

نظام المستخدمين والأذونات هو كيفية قيام Android بتتبع من يمكنه فعل ما.

لنفترض أنك قمت بتثبيت تطبيق المراسلة. يحصل على تعيين معرف مستخدم عند تثبيته. يحصل أيضًا على نقطة في قسم البيانات الخاص بك ، إنه فقط يمكنه الوصول إليها. لديك أذونات لتنفيذ التطبيق ، وعند تشغيل التطبيق ، يكون لديه إذن بالوصول إلى مجلد البيانات والملفات الخاصة به. قد يطلب التطبيق أيضًا إذنًا للوصول إلى أشياء مثل دفتر العناوين أو بطاقة SD أو مكتبة الصور. إذا قمت بالإجابة بنعم على هذه الطلبات (أو إذا كنت توافق على الأذونات الموجودة على الإصدارات القديمة من Android) ، فسيُمنح معرف مستخدم التطبيق إذنًا لملفات البيانات الخاصة بهذه الأشياء ، مما يعني أنه يمكن أن ينظر إلى مجلد البيانات ومحتوياته وربما يتغير لهم أو إضافة ملفات جديدة. لا يمكن للتطبيق الوصول إلى أي ملفات بيانات ليس لديه إذن "بالاطلاع عليها". هذا يعني (في مثالنا) أنه لا يمكنه القيام بأشياء مثل إلقاء نظرة على قاعدة بيانات الإعدادات ، أو الوصول إلى مجلد البيانات في تطبيق آخر. غالبًا ما يتم استخدام المصطلح sandbox لهذا - يتم وضع التطبيقات في الصندوق ويمكن تشغيلها فقط في الصناديق الرملية التي لديهم الإذن بالدخول إليها.

بالنسبة للملفات التي يمكن تشغيلها (مثل التطبيقات) ، يتم تطبيق نفس نموذج الإذن. معرف المستخدم الخاص بك لديه إذن لتشغيل التطبيقات التي قمت بتثبيتها أثناء تسجيل الدخول. يمتلك مستخدم النظام إذنًا لتشغيلها والمستخدمين الآخرين على مستوى النظام يمكنهم الوصول إلى التطبيقات أو بعض العمليات التي تستخدمها التطبيقات. لا يمكن للتطبيقات الأخرى بدء تشغيل التطبيقات التي ليس لديهم إذن ببدء التشغيل. إذا أضفت مستخدمًا ثانويًا ، فلن يتمكن من الوصول إلى التطبيقات أو الملفات والعكس صحيح. هناك ملفات ومجلدات وتطبيقات على هاتفك لا يملك معرّف المستخدم الخاص بك الإذن برؤيتها أو تبديلها أو تشغيلها. عادةً ما تتطلب تلك الأجزاء من Android أذونات على مستوى النظام (معرف مستخدم النظام) للقيام بأي شيء ، وأنت لست مستخدم النظام أو مستخدم لديه أذونات على مستوى النظام.

تبديل الأذونات

على الرغم من أنه من المحتمل تقنيًا تغيير الطريقة التي يعمل بها هاتفك والملفات التي يستخدمها لبدء تشغيل النظام وتعيين أذونات مرتفعة لمعرف المستخدم الخاص بك ، إلا أنها ليست آمنة ولا عملية. لكن Android (ومعظم الأنظمة المستندة إلى Unix أو Linux) لديها ما يسمى مستخدم الجذر ، وتدعم SubstituteUser الثنائية (فكر في ثنائي كتطبيق صغير) لتغيير معرفات المستخدم. تلك تستخدم لإدارة النظام على المستوى الأساسي.

نظرًا لأن الأشخاص الذين قاموا بإنشاء هاتفك لا يريدون أن يكون لديك وصول سهل إلى معرف المستخدم الجذر - وليس كل الأسباب أنانية لأنه يحميك أيضًا وبياناتك الخاصة - لا يتم تضمين ثنائي البديل في معظم تصميمات ذكري المظهر. بدون SubstituteUser ، لا يمكننا تبديل معرف المستخدم الخاص بنا. معظم الأشياء على مستوى النظام في Android لها أسماء سهلة مماثلة ، بالمناسبة. تم أيضًا تصميم الأمان الأساسي (الملفات الموجودة في أداة تحميل التشغيل و / أو النواة نفسها) بطريقة تمنعك من تبديل معرفات المستخدم كجزء من SELinux (S ecurity - E nhanced Linux - أخبرتك أن الأسماء سهلة). تتمتع بعض الهواتف (تتبادر Knox من سامسونج) بحماية إضافية ، وتتطلب جميع الشركات التي تصنع أندرويد تقريبًا ، من أجل إجراء تغييرات ، أن يكون برنامج تحميل أداة الإقلاع بحاجة إلى إلغاء القفل حتى يمكن تغيير هذه الملفات وتسمح لك بالتبديل معرفات المستخدمين. بعض الهواتف ، مثل BlackBerry Priv ، تخطو خطوة إلى الأمام ولن تقوم بالتمهيد إذا قمنا بتغيير أي شيء (حتى لو استطعنا).

لتصبح الجذر ، تحتاج إلى طريقة لتغيير معرف المستخدم الخاص بك.

بمجرد تجاوز كل ذلك - إما عن طريق إلغاء قفل أداة تحميل التشغيل من خلال الوسائل المصرح بها أو باستخدام نوع من الاستغلال - يمكننا وضع أداة SU الثنائية (SubstituteUser) في مكان يمكن تشغيله فيه عندما يتم استدعاء تشغيله - وهذا ما يسمى PATH. إذا كان أي تطبيق موجود في PATH لمعرف المستخدم الخاص بك ، فسيتم تشغيله دون إخبار النظام بمكانه بالضبط. تحتاج أيضًا إلى التأكد من أن الملف SU الثنائي في مكان ما بهوية هوية المستخدم لديك لتنفيذ (تشغيل) الملفات. أي تطبيق آخر (يحتوي Google Play على الكثير من التطبيقات التي تحتاج إلى أذونات الجذر) سيحتاج أيضًا إلى نفس الوصول. عند استخدام طريقة لتصفية هاتفك ، يتم فرز كل ذلك بواسطة الأشخاص الذين قاموا ببناء طريقة الجذر.

بمجرد وضع كل ذلك في مكانه ، يمكننا تشغيل SU ثنائي (أو يمكن تطبيق آخر تشغيل SU ثنائي).

الحصول على وصول الجذر

هذا هو المكان الذي يتم فيه الوصول إلى الجذر. تستخدم أداة SU binary الأعلام عند تشغيلها لإعلام النظام بمعرف المستخدم الذي تريد التبديل إليه. على سبيل المثال ، إذا قمت بتشغيل الملف SU الثنائي على جهاز الكمبيوتر الخاص بي في Ubuntu مثل "su Jim -c nano" ، فسأقوم بتشغيل الأمر nano باسم Jim للمستخدم (بعد توفير كلمة مرور Jim). إذا قمت بتشغيل الملف SU الثنائي بدون أي إشارات أو وسيطات ، فسيحولك إلى المستخدم الجذر. ستحتاج عادةً إلى توفير كلمة مرور ، ولكن بما أن "root" مستخدم غير مستخدم على نظام Android ، فلا يوجد لديه كلمة مرور. سيؤدي تشغيل الأمر "su" إلى تبديلك إلى جذر المستخدم ، وتعيين معرف المستخدم الخاص بك 0 ، ووضعك في مجموعة الجذر. أنت الآن المستخدم سوبر.

باعتبارك Super User ، يمكنك فعل أي شيء لأي ملف أو مجلد أو قسم على جهاز Android. بأي حال ، نعني حرفيا أي شيء. يمكنك إزالة تطبيقات bloatware ويمكنك أيضًا إزالة ملفات النظام الأساسية التي تكسر هاتفك. يمكنك أيضًا عمل أشياء على الأجهزة مثل تغيير تردد وحدة المعالجة المركزية وتدمير هاتفك إلى الأبد.

الجذر هو المستخدم الفائق ، الذي يمكنه فعل أي شيء. ونحن نعني أي شيء.

يمكن للتطبيقات أن تفعل الشيء نفسه. يتم وضع SU في مكانه في تطبيق PATH وأي تطبيق يمكنه الاتصال به وتشغيله. يحتوي هذا التطبيق بعد ذلك على أذونات Super User ، ويمكنه فعل أي شيء يحبه لأي ملف في أي مكان على هاتفك. هذا هو السبب في أن الأشخاص الذين قاموا بعمل هاتفك لا يريدونك حقًا أن يكون لديك هذا المستوى من الوصول ، والشركات التي تسمح لك بإلغاء تأمين أداة تحميل الإقلاع وتغيير الأشياء لا تزال لا تضع ملف SU الثنائي على هاتفك افتراضيًا. إن الوصول إلى الجذر دون أي وسيلة للتحكم في من أو من يمكنه استخدامه يعد أمرًا خطيرًا على برنامج هاتفك وبياناتك الشخصية.

لهذا السبب تحتاج إلى تثبيت تطبيق يفرض عليك السماح بالوصول إلى الجذر في أي وقت تحاول فيه أنت أو تطبيق آخر استدعاء أذونات Super User. في معظم الأوقات عند استخدام طريقة الجذر لهاتفك ، سيتم تضمين واحدة ، إلى جانب بعض الثنائيات المفيدة الأخرى مثل مجموعة أدوات BusyBox. إذا قمت بالأشياء يدويًا ، فستحتاج إلى تثبيت واحدة بنفسك. SuperSU by Chainfire في Google Play هو بداية جيدة.

خلاف وينتهي

تقوم العديد من الهواتف وبعض الأساليب الجذرية بعمل الأشياء بطريقة مختلفة قليلاً (Android 4.3 أحدثت الكثير من التغييرات) وتتطلب نصوصًا أو خفيًا (سترى كلمات مثل daemonsu أو su.d المذكورة) بدلاً من مجرد إسقاط SU الثنائية في مكانها. يتم استخدام هذه للاتصال بـ SubstituteUser حتى تتمكن من التبديل إلى مستخدم الجذر تمامًا مثل الطريقة الثنائية الأولية. قام الأشخاص الذين اكتشفوا كيفية إجراء نسخ جذري لهاتفك بتصنيف كل ذلك وسيعملون بنفس الطريقة على جانب المستخدم.

من الممكن أيضًا "مؤقت الجذر" لبعض أجهزة Android. هذا يعني أنه يمكنك الحصول على أذونات Super User والقيام ببعض الأشياء التي تحتاج إلى القيام بها ، ولكن إعادة التشغيل تأخذ الوصول إلى الجذر. وبالمثل ، يمكنك الحصول على "shell-root" حيث يمكنك فقط الوصول إلى مستخدم الجذر عبر adb من جهاز الكمبيوتر الخاص بك.

أخيرًا ، أود التأكيد على أنه إذا كانت لديك هذه الأسئلة ، فيجب أن تفكر فيما إذا كنت مستعدًا للحصول على أندرويد ذي جذر. لم نكن نمزح عندما قلنا أنه من السهل تدمير هاتفك باستخدام وصول SuperUser. لا يوجد سبب للخجل من أنك بحاجة إلى قراءة صغيرة أو طرح بعض الأسئلة الإضافية قبل القيام بأشياء يمكن أن تكسر هاتفك أو تتيح لبعض التطبيقات العشوائية الوصول إلى جميع بياناتك.

هذا ما نحن هنا من أجله.