adb ile root erişimi olmadan Android uygulamalarını yedekleme


Android 5.0 Lollipop, kurulum aşamasında uygulama geri yüklemelerini kolaylaştırmıştı. Android 5.0’tan sonra geri yükleme aşamasında uygulamalar Play Store’dan indiriliyor, sistem ayarları ve kayıtlı Wi-Fi ayarları gibi veriler de geri yükleniyordu. Google uygulamalarının büyük bir çoğunluğu verileri sunucu tarafında tuttuğu için bu geri dönüş aşaması sadece Google uygulamalarının kullanıldığı bir dünya için oldukça iyi bir yenilik olarak görülebilir ancak pek çok kişinin aktif olarak kullandığı uygulamalar ve oyunlar Google Drive senkronizasyonu, Play Oyunlar’da ilerlemeleri saklama gibi sunucu tarafında veri tutma gibi özellikleri desteklemediği için mevcut çözümler hâlâ mükemmel değil.

Eğer root erişiminiz varsa, Titanium Backup yıllardır Android’in en büyük eksikliğini kolaylıkla kapatıyor, ancak root erişimi yokken işler oldukça karışıyor. Root erişimi olmadan şu anda Android uygulamalarını ve uygulama verilerini yedeklemenin tek yolu adb backup komutunu kullanmak. Evet, Play Store’da root erişimi gerekmeden yedekleme ve geri yükleme yapmayı sağlayan uygulamalar mevcut ancak o uygulamalar da adb backup komutunu kullanıyor, dolayısıyla herhangi bir uygulamayı ve yaratacağı problemleri denkleme eklemeden adb backup komutunu doğrudan kullanmak daha sağlıklı.

adb ve genel olarak terminal kullanmak çoğu kullanıcıya eğlenceli görünmeyebilir. Sürücü kurulumu aşaması, gereken dosyaların indirilmesi gibi temel adımları henüz uygulamadıysanız öncelikle adb ve fastboot komutları nasıl kullanılır? yazısını okumanız ve adımları uygulamanız gerekiyor.

adb backup komutunun kullanımı

Hazırlıklarınızı tamamladıysanız, adb backup komutunu yakından bakalım. adb backup komutunun genel olarak kalıbı ve parametreleri şöyle:

adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all] [-system|-nosystem] [<packages…>]

-f

f parametresi yedek dosyasının varsayılan olarak kullanılan backup.ab isminden farklı olarak adlandırılmasını sağlıyor. Yeni yedeğin yanlışlıkla önceki yedeğin üzerinde yazılması gibi durumlarla karşılaşmamak için her yedeklemede bu parametre ile yedek dosyasına farklı bir isim vermenizde fayda var.

-apk|-noapk

apk ve noapk parametreleriyle yedeklere verilere ek olarak uygulamaların cihazdaki apk dosyalarının eklenip eklenmeyeceğini ayarlamamızı sağlıyor. Varsayılan olarak bu seçenek apk dosyalarını yedeklere dahil etmeyen -noapk parametresi ama uygulamaları Play Store’dan yeniden indirmek ya da yedeklenen versiyondan daha yeni bir versiyonun Play Store’dan inmesi ve yedeklenmiş verinin eski kalması nedeniyle uyumsuzluk yaşanmasını istemiyorsanız -apk parametresini kullanmanız daha güvenli olacaktır.

-obb|-noobb

obb ve noobb parametreleri uygulamaların büyük verilerini tuttukları obb dosyalarının yedeklenip yedeklenmeyeceğini ayarlamayı sağlıyor. Varsayılan seçenek noobb ve obb parametresini kullanmak yedeğin boyutunu büyütüyor ancak tam yedek alınmasını sağlıyor.

-shared|-noshared

Bu parametreler ile paylaşılan hafızadaki fotoğraf, ekran görüntüsü, zil sesleri gibi içerikler yedeklenebiliyor. Varsayılan seçenek bu yedeklemeyi içermeyen -noshared, -shared seçeneğini tercih etmeden önce yedeğin boyutunu normal seviyelerde tutmak için gereksiz dosyaları depolama alanından temizlemenizde fayda var.

-all

all parametresi tüm uygulamaların yedeklenmesini sağlıyor.

-system|-nosystem

system ve nosystem parametreleri sistem uygulamalarının yedeğe dahil edilip edilmeyeceğini ayarlanmasını sağlıyor. Varsayılan seçenek sistem uygulamalarını dahil ediyor ve aksini istemediğiniz sürece varsayılan seçeneği olduğu gibi bırakmanızda fayda var.

[<packages…>]

Paket dosyası adı parametresi ise sadece tek bir uygulamanın yedeklenmesini sağlıyor. -all parametresi kullanıldığı durumlarda paket dosyasını belirtmek gerekmiyor.


Bol bol parametrelerimiz var, bunları nasıl kullanabiliriz?

Örnek 1: Tüm uygulamaları apk, obb dosyalarını ile paylaşılan belleği dahil ederek yedekleyip, backup20150515.ab dosyası olarak kaydetmek istiyoruz:

adb backup -apk -obb -shared -all -f backup20150515.ab

Örnek 2: Sistem uygulamaları dışındaki uygulamaların sadece apk dosyaları ile yedeklemek istiyoruz.

adb backup -apk -all -nosystem -f backup20150515.ab

Varsayılan seçenekleri değiştirmek istemediğimiz sürece ilgili parametreleri yazmamız gerekmiyor, örneğin ikinci örnekte noob ve noshared seçeneklerini kullanmadım. Ancak hangi parametrenin varsayılan olduğunu hatırlamak zorunda olmadığınız için varsayılan parametreleri de yazmanız herhangi bir problem oluşturmaz. Örnek 2’yi alttaki gibi de yazabiliriz:

adb backup -apk -all -noobb -noshared -nosystem -f backup20150515.ab

Örnek 1 mevcut parametrelerle elde edebileceğiniz en kapsamlı yedeklemeyi sağlıyor. Terminalde bu kod yazıldığı anda cihazınızın ekranını açmanız ve yedekleme işlemini onaylamanız gerekiyor. Şifre belirleyerek(geri yüklerken buna ihtiyacınız olacak) yedeği şifreleme seçeneğiniz de bulunuyor(cihazınızda disk şifrelemesi etkin ise şifre belirlemeniz zorunluluk).

Android yedekleme

Yedekleme işlemi tamamlandıktan sonra ve yedeği daha sonra geri yüklemek istediğinizde ise kullanmanız gereken komut oldukça basit: adb restore [<dosyaadi>]

adb restore backup20150515.ab

adb backup kısıtlamaları

adb backup komutu uygulamaların apk dosyalarını ve verilerini yedekleyebiliyor ancak bazı uygulamalar kendini yedeklenemez olarak ayarlayabiliyor, adb backup ise bu isteğe saygı duyup yedekleme aşamasında bu uygulamaları atlıyor. Örneğin hassas bilgiler içeren Google Authenticatior, Authy veya DRM korumalı içeriğe sahip olan Spotify gibi uygulamalar adb backup ile yedeklenemiyor.

adb backup komutu ile yedekleme yapmak sevimli bir yöntem olmasa da görevini genel olarak başarıyla yerine getirebiliyor. Android M‘in daha iyi bir yedekleme çözümü sunmasını umalım.


Bir Cevap Yazın