Android, açık kaynak kodlu olmasının verdiği rahatlıkla, kullanıcıların ve geliştiricilerin özgürce istedikleri gibi değiştirmesine, kurcalamasına olanak veren, hatta buna teşvik eden bir işletim sistemi. Ama maalesef bu çoğu zaman telefonunuzu alır almaz, işletim sisteminin tüm detaylarına, gizli kalmış köşelerine erişim hakkınızın olduğu anlamına gelmiyor. Çünkü neredeyse hiçbir telefon üreticisi android tabanlı telefonlarında kullanıcılara “root” (bu tanımın detaylarına aşağıda geleceğim) hakları sunmuyor, google bile (ama itiraf etmeliyiz, nexus one’da bu erişimi sağlamak diğer telefonlara göre çok daha basit).
Root Erişimi Nedir?
“Root” sözcüğü aslında android’in de temel alındığı linux dünyasından gelmektedir, ve linux sistemlerindeki en yetkili kullanıcıyı ifade eder. Windows sistemlerinde bu kullanıcıyı “Administrator” olarak biliyoruz. Telefonunuza root erişimi sağlamak da (“getting root”, “rooting”) işletim sistemini modifiye edilerek size bu “root” kullanıcısının haklarını vermek, böylece sistem üzerinde tam kontrol hakkı tanımaktır. Bunu da sisteme su (superuser) programını yükleyerek isteyen programlara bu yetkiyi tanıyarak gerçekleştirir.
Bu sayede telefonunuz üzerinde gelen gereksiz programlardan kurtulmaya tutun da, hosts dosyasını değiştirmek, hatta telefonunuza başka bir ROM yüklemeye kadar root olmadan yapamayacağınız bir çok işlemi yapmanızı sağlamakta.
Yeri gelmişken açıklayalım, root işlemi ve sisteminize başka bir ROM yüklemek tamamen farklı işlemlerdir. Rooting -çoğu zaman- çok basit bir işlem ile yapılarak telefonuzun garantisine ve içinde hazır gelen işletim sisteminin bütünlüğüne dokunmazken, yeni bir ROM yüklemek, recovery, system, boot (hatta bazen radio) partisyonlarını flashlamayı gerektirir ve sonuçta bambaşka bir android versiyonu kullanırsınız.
Uyarı! Root işleminin, genelde sorunsuz ve basit bir işlem olsa da, her standart dışı modifikasyonda olduğu gibi, deneyimsiz ve dikkatsiz iseniz telefonunuza kalıcı olarak zarar verme ihtimali vardır. Bu yüzden lütfen bu konulardaki dökümanları, tartışmaları, kılavuzları iyi ve dikkatli bir şekilde okuyun.
Root İşleminin Yararları, Neden Telefonumu Root Etmeliyim?
Buraya kadar iyi hoş da, pratikte ne iş yarar bu root, ne diye telefonumu bu kadar kurcalayayım diyenler için, root işleminin size sağladığı yararlara biraz göz atalım:
Sistem Üzerinde Tam Kontrol
Root işleminin en temel yararı, size sistemin daha önce erişmediğiniz köşelerine, detaylarına erişim hakkı (sadece okuma hakkı değil, yazma / değiştirme hakkı da) sunmasıdır. Bu sayede tüm sistem dosyalarını silebilir, değiştirebilir, yeni temalar yükleyebilir, gereksiz sistem programlarını sistemden kaldırabilirsiniz.
Örneğin Türkiye’de bizim hiç kullanamadığımız Google Voice ve Amazon mp3 gibi programlar, ayrıca birçok daha iyi alternatifi olmasına rağmen sistemle otomatik yüklenen twitter uygulaması gibi programlar sistem partisyonunda boş yere yer harcıyor, bunları silip telefon hafızasında çok değerli alanlar kazanabilirsiniz.
Yeni Bir Recovery Imajı Yükleme ve Sistem Yedeği Alma
Eğer telefonunuzda root erişimine sahipseniz android’le gelen hazır recovery partisyonu yerine (recovery: sistem kurtarmak ve diğer bazı sistem açılışından önce yapılması gereken işlemleri yapmak için kullanılan bölüm) ClockworkMod ya da AmonRa gibi çok daha yetenekli recovery imajları yükleyebilirsiniz.
Bu recovery imajlarının tüm detaylarına burada girmeyeceğim, ancak sistem yedeği alma (nandroid backup) işleminden biraz bahsedeyim.
Biliyorsunuz google, contact’larınızı, application ayarlarınızı vs. kendi serverlarına sürekli olarak senkronize ediyor. Yani işletim sistemini upgrade ettiğinizde, ya da yeni bir android telefona geçtiğinizde contaclarınız, ayarlarınız vs. bu serverlardan geri yükleniyor. Ama sürekli telefonu ile uğraşanlar, özel ROM’lar yükleyenler, sistemin detaylarını kurcalayan programlar yükleyenler ve işleri sağlama almak isteyenler için, bu kadarından fazlası gerekecektir.
İşte bu recovery imajları içinde bulabileceğiniz nandroid yöntemi ile sistem yedeği almak tam da bu noktada işimize yarıyor. Nandroid ile aldığınız backup, sistemin o andaki birebir imajını (tüm işletim sistemi, cache, data dosyaları, application’lar vs.) SD kartınıza saklıyor, ve telefonuzda birşeylerin ters gitmesi durumda eski haline döndürmeniz için orada tutuyor.
Değişik ROM’lar yükleme
Android işletim sistemi bildiğiniz gibi açık kaynak kodlu. Bu yüzden birçok uygulama geliştirci, bu kaynak kodundan yararlanarak kendi android versiyonlarını (Mod) çıkarıyorlar; CyanogenMod, DamageControl, Kang-o-rama gibi. Bu ROM’ları yüklemek, sistemi, boot dosyalarını tamamen değiştirmek anlamına geldiğinden daha önceden root erişimine açık bir sisteme sahip olmanızı gerektiriyor.
Örneğin CyanogenMod’un son versiyonu için yükleme işleminin detaylı anlatımını burada bulabilirsiniz.
Değişik Kernel (Çekirdekler)’ler yükleme
Android’in linux tabanlı bir sistem olduğunu biliyoruz. Bu işletim sisteminin çekirdeği (kernel) de linux çekirdeği. Tıpkı değişik rom’lar gibi bu kernellerin de bağımsız geliştiriciler tarafından değiştirilerek derlenmiş versiyonları mevcut.
Kernel, linux sistemlerinde en alt seviye işlemleri gerçekleştiren birimdir (işlemci ve hafıza yönetimi, donanım sürücüleri vs.). Bu kerneli özelleştirerek elde edilebilecek avantajları sıralarsak:
İşlemcinin voltajını düşürerek daha az pil harcamasını sağlamak
İşlemciyi overclock ederek daha hızlı çalışmasını sağlamak
Çipin üzerinde olmasına rağmen kernel’de driver’ı olmadığı için kullanamadığınız 720p HD video kaydı, FM Radio gibi özellikleri kullanabilmek
Ses seviyelerini çekirdek seviyesinde arttırmak
Bu çekirdekleri yüklemek de sistemin en alt seviyelerine erişim gerektirdiği ve recovery’den yapılması gerektiği için root’lu olmanız burada da ön koşul.
Root Erişimi gerektiren Uygulamaları Çalıştırma
Bu yukarıda saydığım avantajar dışında, android market’te ya da çeşitli kaynaklarda bazı yararlı application’lar var ki, root erişimi olmadan işlevlerini yerine getiremiyorlar. Bu programlar root erişimi gerektiği zaman sistemden bu izni izniyorlar ve bu izni onaylayıp onayalamadığınızı sormak için karşınıza bir “superuser request (superuser isteği)” penceresi çıkıyor, eğer onaylarsanız o uygulama artık superuser olarak yani root haklarıyla gereken işlemleri gerçekleştirebiliyor.
Root Erişimi Nedir?
“Root” sözcüğü aslında android’in de temel alındığı linux dünyasından gelmektedir, ve linux sistemlerindeki en yetkili kullanıcıyı ifade eder. Windows sistemlerinde bu kullanıcıyı “Administrator” olarak biliyoruz. Telefonunuza root erişimi sağlamak da (“getting root”, “rooting”) işletim sistemini modifiye edilerek size bu “root” kullanıcısının haklarını vermek, böylece sistem üzerinde tam kontrol hakkı tanımaktır. Bunu da sisteme su (superuser) programını yükleyerek isteyen programlara bu yetkiyi tanıyarak gerçekleştirir.
Bu sayede telefonunuz üzerinde gelen gereksiz programlardan kurtulmaya tutun da, hosts dosyasını değiştirmek, hatta telefonunuza başka bir ROM yüklemeye kadar root olmadan yapamayacağınız bir çok işlemi yapmanızı sağlamakta.
Yeri gelmişken açıklayalım, root işlemi ve sisteminize başka bir ROM yüklemek tamamen farklı işlemlerdir. Rooting -çoğu zaman- çok basit bir işlem ile yapılarak telefonuzun garantisine ve içinde hazır gelen işletim sisteminin bütünlüğüne dokunmazken, yeni bir ROM yüklemek, recovery, system, boot (hatta bazen radio) partisyonlarını flashlamayı gerektirir ve sonuçta bambaşka bir android versiyonu kullanırsınız.
Uyarı! Root işleminin, genelde sorunsuz ve basit bir işlem olsa da, her standart dışı modifikasyonda olduğu gibi, deneyimsiz ve dikkatsiz iseniz telefonunuza kalıcı olarak zarar verme ihtimali vardır. Bu yüzden lütfen bu konulardaki dökümanları, tartışmaları, kılavuzları iyi ve dikkatli bir şekilde okuyun.
Root İşleminin Yararları, Neden Telefonumu Root Etmeliyim?
Buraya kadar iyi hoş da, pratikte ne iş yarar bu root, ne diye telefonumu bu kadar kurcalayayım diyenler için, root işleminin size sağladığı yararlara biraz göz atalım:
Sistem Üzerinde Tam Kontrol
Root işleminin en temel yararı, size sistemin daha önce erişmediğiniz köşelerine, detaylarına erişim hakkı (sadece okuma hakkı değil, yazma / değiştirme hakkı da) sunmasıdır. Bu sayede tüm sistem dosyalarını silebilir, değiştirebilir, yeni temalar yükleyebilir, gereksiz sistem programlarını sistemden kaldırabilirsiniz.
Örneğin Türkiye’de bizim hiç kullanamadığımız Google Voice ve Amazon mp3 gibi programlar, ayrıca birçok daha iyi alternatifi olmasına rağmen sistemle otomatik yüklenen twitter uygulaması gibi programlar sistem partisyonunda boş yere yer harcıyor, bunları silip telefon hafızasında çok değerli alanlar kazanabilirsiniz.
Yeni Bir Recovery Imajı Yükleme ve Sistem Yedeği Alma
Eğer telefonunuzda root erişimine sahipseniz android’le gelen hazır recovery partisyonu yerine (recovery: sistem kurtarmak ve diğer bazı sistem açılışından önce yapılması gereken işlemleri yapmak için kullanılan bölüm) ClockworkMod ya da AmonRa gibi çok daha yetenekli recovery imajları yükleyebilirsiniz.
Bu recovery imajlarının tüm detaylarına burada girmeyeceğim, ancak sistem yedeği alma (nandroid backup) işleminden biraz bahsedeyim.
Biliyorsunuz google, contact’larınızı, application ayarlarınızı vs. kendi serverlarına sürekli olarak senkronize ediyor. Yani işletim sistemini upgrade ettiğinizde, ya da yeni bir android telefona geçtiğinizde contaclarınız, ayarlarınız vs. bu serverlardan geri yükleniyor. Ama sürekli telefonu ile uğraşanlar, özel ROM’lar yükleyenler, sistemin detaylarını kurcalayan programlar yükleyenler ve işleri sağlama almak isteyenler için, bu kadarından fazlası gerekecektir.
İşte bu recovery imajları içinde bulabileceğiniz nandroid yöntemi ile sistem yedeği almak tam da bu noktada işimize yarıyor. Nandroid ile aldığınız backup, sistemin o andaki birebir imajını (tüm işletim sistemi, cache, data dosyaları, application’lar vs.) SD kartınıza saklıyor, ve telefonuzda birşeylerin ters gitmesi durumda eski haline döndürmeniz için orada tutuyor.
Değişik ROM’lar yükleme
Android işletim sistemi bildiğiniz gibi açık kaynak kodlu. Bu yüzden birçok uygulama geliştirci, bu kaynak kodundan yararlanarak kendi android versiyonlarını (Mod) çıkarıyorlar; CyanogenMod, DamageControl, Kang-o-rama gibi. Bu ROM’ları yüklemek, sistemi, boot dosyalarını tamamen değiştirmek anlamına geldiğinden daha önceden root erişimine açık bir sisteme sahip olmanızı gerektiriyor.
Örneğin CyanogenMod’un son versiyonu için yükleme işleminin detaylı anlatımını burada bulabilirsiniz.
Değişik Kernel (Çekirdekler)’ler yükleme
Android’in linux tabanlı bir sistem olduğunu biliyoruz. Bu işletim sisteminin çekirdeği (kernel) de linux çekirdeği. Tıpkı değişik rom’lar gibi bu kernellerin de bağımsız geliştiriciler tarafından değiştirilerek derlenmiş versiyonları mevcut.
Kernel, linux sistemlerinde en alt seviye işlemleri gerçekleştiren birimdir (işlemci ve hafıza yönetimi, donanım sürücüleri vs.). Bu kerneli özelleştirerek elde edilebilecek avantajları sıralarsak:
İşlemcinin voltajını düşürerek daha az pil harcamasını sağlamak
İşlemciyi overclock ederek daha hızlı çalışmasını sağlamak
Çipin üzerinde olmasına rağmen kernel’de driver’ı olmadığı için kullanamadığınız 720p HD video kaydı, FM Radio gibi özellikleri kullanabilmek
Ses seviyelerini çekirdek seviyesinde arttırmak
Bu çekirdekleri yüklemek de sistemin en alt seviyelerine erişim gerektirdiği ve recovery’den yapılması gerektiği için root’lu olmanız burada da ön koşul.
Root Erişimi gerektiren Uygulamaları Çalıştırma
Bu yukarıda saydığım avantajar dışında, android market’te ya da çeşitli kaynaklarda bazı yararlı application’lar var ki, root erişimi olmadan işlevlerini yerine getiremiyorlar. Bu programlar root erişimi gerektiği zaman sistemden bu izni izniyorlar ve bu izni onaylayıp onayalamadığınızı sormak için karşınıza bir “superuser request (superuser isteği)” penceresi çıkıyor, eğer onaylarsanız o uygulama artık superuser olarak yani root haklarıyla gereken işlemleri gerçekleştirebiliyor.