Android'de hosts dosyasını değiştirme ve geri yükleme — hızlı ve güvenli
Kısaca: Root erişiminiz varsa /system/etc/hosts dosyasının yedeğini alın, dosyayı düzenleyin, izinleri 644 olarak ayarlayın ve yeniden başlatın; sorun çıkarsa yedeği geri kopyalayın ve yeniden başlatın. Root yoksa özel DNS veya VPN tabanlı engelleyiciler kullanın.
Root kontrolü ve hazırlık
- Root erişimini kontrol edin (modern Android sürümlerinde Magisk tercih edilir). Root olmadan /system yazılabilir değildir.
- Root modlu bir dosya yöneticisi kurun (Root Explorer) veya Termux/adb + su kullanın.
- Değişikliklerden önce mutlaka yedek oluşturun:
- Dosyayı kopyalayın: /system/etc/hosts → /sdcard/hosts_backup.txt
- Terminal kullanıyorsanız:
su
mount -o rw,remount /system
cp /system/etc/hosts /sdcard/hosts_backup.txt
mount -o ro,remount /system
- Pilinizin şarjlı olduğundan ve harici depolama alanında veya bulutta çalışan bir yedeğinizin bulunduğundan emin olun.
Root işlemi garantiyi geçersiz kılar ve güvenlik risklerini artırır. Android 13+ üzerinde Magisk daha güvenli bir yöntemdir; şüpheli root araçlarından kaçının.
hosts dosyasını nasıl değiştirirsiniz: adım adım
- hosts dosyasını bir düzenleyicide açın (Root Explorer üzerinden veya Termux'ta):
su
mount -o rw,remount /system
nano /system/etc/hosts
- Satır formatı:
<IP> <alan_adı>. Örnekler:- Engelleme:
0.0.0.0 ads.example.com - Yerelleştirme:
192.0.2.10 mysite.example
- Engelleme:
- Düzenlemeyi tamamladıktan sonra dosyayı kaydedin ve doğru izinleri ayarlayın:
chmod 644 /system/etc/hosts
mount -o ro,remount /system
reboot
- Kontrol: Termux'ta
ping -c 3 google.comkomutunu çalıştırın veya sorunlu web sitelerini/uygulamaları açın.
Reklamları toplu olarak engellemek istiyorsanız AdAway kullanın (root gerektirir); bu uygulama liste güncellemelerini otomatikleştirir ve elle düzenleme sırasında hata yapma riskini azaltır.
hosts dosyasını varsayılana nasıl döndürürsünüz (güvenli şekilde)
Web siteleri yüklenmiyorsa veya uygulamalar çöküyorsa orijinal dosyayı hızla geri yükleyin.
- Yedeğiniz varsa:
su
mount -o rw,remount /system
cp /sdcard/hosts_backup.txt /system/etc/hosts
chmod 644 /system/etc/hosts
mount -o ro,remount /system
reboot
- Yedeğiniz yoksa standart minimum bir dosya oluşturun:
127.0.0.1 localhost
::1 ip6-localhost
Bu içeriği /system/etc/hosts dosyasına 644 izinleriyle yazın ve yeniden başlatın.
3. Geri yüklemeden sonra ağ ayarlarını temizleyin: Ağ → Wi‑Fi/mobil verileri sıfırla veya Wi‑Fi'yi kapatıp açın.
Sık yapılan hatalar
- "Permission denied": Root erişimi yok veya /system bölümü salt okunur olarak bağlı.
suve remount işlemlerini kontrol edin. - Düzenlemeler sonrası bootloop: Recovery moduna (TWRP) girin, ADB ile yedeği geri yükleyin (
adb push hosts /system/etc/) veya değişiklikleri geri alın. - SELinux yazmayı engelliyor: Magisk ve mevcut Android sürümüyle uyumlu modülleri kullanın.
- Android 14+ üzerinde elle düzenleme superpartition'lar nedeniyle çalışmayabilir — Magisk modülleri (örneğin Hosts Manager) veya root gerektirmeyen alternatifler kullanın.
SSS
-
hosts dosyasını root olmadan değiştirebilir miyim?
Hayır. /system/etc/hosts root erişimi gerektirir. Root olmadan özel DNS (NextDNS, AdGuard DNS) veya VPN tabanlı engelleyiciler (Blokada, Intra) kullanın. -
Reklam engellemek için hosts dosyasına ne yazmalıyım?
0.0.0.0 ads.example.comveya127.0.0.1 adserver.domainbiçiminde satırlar ekleyin.localhostiçeren satırı silmeyin. -
Düzenlemeden sonra internet bağlantısı kesilirse ne yapmalıyım?
Yedeği geri yükleyin, izinlerin 644 olduğundan emin olun, cihazı yeniden başlatın ve ağ ayarlarını sıfırlayın. -
Bu amaçla güvenle nasıl root yapılır?
Magisk'i (systemless root) inceleyin, işlem öncesi tam yedek alın ve cihaz modelinize uygun güvenilir rehberleri kullanın.
Adımları uyguladıktan sonra sorun devam ederse cihaz modelinizi ve Android sürümünüzü belirtin; değiştirdiğiniz hosts dosyasını ve alınan hataları (örneğin logcat çıktısı veya ping sırasında görünen mesajlar) açıklayın.