Yanıp sönen CM 11, `` set_metadata_recursive: bazı değişiklikler başarısız oldu '':


19

Samsung Galaxy Tab 2'yi (GT-P5113) Cyanogenmod 11'e güncellemeye çalıştığımda ClockworkMod Recovery v6.0.2.3 bana aşağıdaki hata veriyor:

Restarting adbd...
Finding update package...
Opening update package...
Installing update...
set_metadata_recursive: some changes failed
E:Error in /tmp/update.zip
(status 7)
Installation aborted.

Umutsuz olmak aynı şeyi Team Win Recovery Project (TWRP) v2.6.3.0 ile de denedim - aynı zamanda platofrm'ım için en son,

Checking for MD5 file...
Skipping MD5 check: no MD5 file file found.
set_metadata_recursive: some changes filed
E:Error: executing updater binary in zip '/data/media/0/sideload.zip'

Yanıtlar:


16

Kısacası, KitKat Android 4.4'ü flaş etmek istiyorsanız, CWM'nin v6.0.4.5'ten daha büyük bir sürümüne yükseltmeniz gerekir. Veya alternatif bir önyükleyici kullanın. Galaxy Tab 2 GT-P5113 veya GT-p5110 için talimatları burada bulabilirsiniz .


Bunun neden olduğuna dair herhangi bir referans veya bağlantı lütfen?
Sopalajo de Arrierez

@SopalajodeArrierez Daha fazla talimat için bağlantı hakkında bir açıklama yaptım. Bu bir hata mesajıdır (bilmeden önce denerseniz), diğer soru daha fazla ayrıntı içeren bir öğretici cevaptır.
Evan Carroll

6

Bir ürün yazılımı güncellemesi içeren bir zip paketi her zaman iki dosya içerir META-INF/com/google/android: updater-scriptve update-binary. updater-script, güncelleştirmeyi yüklemek için gereken komutları içeren bir metin dosyasıdır. update-binarykomutları ikili koda çevirir.

Android 4.4 KitKat'ta Google, updater-scriptizinleri ayarlamak için kullanılan arayüzü değiştirdi . Önceden kullanılan set_permyöntem kullanımdan kaldırıldı ve onunla değiştirildi set_metadata. Bu, özel kurtarma yazılımının eski sürümlerinin Android 4.4 paketleriyle (örn. CyanogenMod 11) başarısız olmasına ve "set_metadata_recursive: bazı değişiklikler başarısız oldu" hata iletisini görüntülemesine neden olur.

En iyi çözüm, özel kurtarma yazılımını güncellemektir. ClockworkMod'un cihazım için derlenmiş yeni bir sürümünü bulamadım, ancak TWRP'nin çalışması için en yeni sürümünü buldum.

İkinci seçenek, updater-scriptherhangi bir çağrıyı set_metadatave set_metadata_recursiveçağrıları eski sözdizimi ile değiştirerek düzeltmektir , yani set_permve set_perm_recursive. Bunu ben yapmadım, bu yüzden bunun ne kadar kolay olacağından emin değilim.

Üçüncü seçenek, update-binaryXDA üyesi tarafından oluşturulan yamalı bir tanesiyle değiştirmektir daniel_hk: http://forum.xda-developers.com/showthread.php?t=2532300 . Bunu yaptım ve iyi çalıştı, ancak ikili ARMv7 için derlenmiştir ve başka herhangi bir mimaride çalışmaz.


Deðiþtirilmesi update-binarybenim çalıştı Oppo 5 bulun ROM ve GAPPS ikisi için. Teşekkürler!
Qwerty

1

Cmullee'nin cevabına ek olarak , cm-10.1.3 ve cm-11 güncelleyici komut dosyası karşılaştırılarak yapılmıştır. Bu değiştirmeden sonra, cm-11-20141110-NIGHTLY-n7000.zipkurtarma 5 (ICS speedmod çekirdeğinde yerleşik) ile başarıyla yanıp söndüm.

set_metadata => set_perm
set_metadata_recursive => set_perm_recursive

sed -i "s|set_metadata(\(\"[^\"]*\"\), \"uid\", \([0-9]*\), \"gid\", \([0-9]*\), \"mode\", \([0-9]*\).*);|set_perm(\2, \3, \4, \1);|" updater-script

0

Bir metin düzenleyicide \ META-INF \ com \ google \ android \ updater-script dosyasını değiştirmenin ve tüm set_metadata_recursive'ın eski sürüm set_param_recursive tarafından değiştirilmesinin (işlevlerin imzası nispeten eşdeğerdir) çözüldüm. paketi yeniden sıkıştırmak ve dosyayı imzalamak zorunda. Değiştirmek ve nasıl yapılacağını bulmak için: google'da "set_metadata_recursive set_param_recursive phyton" ile arama yapın, birisi bir phyton betiği oluşturdu, ancak işlev imzalarını anlarsanız el ile yapabilirsiniz. - daha sonra yeniden paketleyip imzayı imzalayın.


-1

Yeni formatı eskisine dönüştüren bu arama / değiştirme desenini yazdım ve benim için çalıştı:

$ sed -i "s|set_metadata_recursive(\\(\"[^\"]\*\"\\), \"uid\", \\([0-9]\*\\), \"gid\", \\([0-9]\*\\), \"dmode\", \\([0-9]\*\\), \"fmode\", \\([0-9]\*\\),.*);|set_perm_recursive(\2, \3, \4, \5, \1);|" META-INF/com/google/android/updater-script

Sonunda google-play uygulaması da yüklemeyecekti, bu yüzden mermiyi recovery-clockwork-6.0.4.6-i9300.imgısırdım ve güncellenmiş bir kurtarma ( heimdal ile) parladım ve daha sonra değiştirilmemiş bir CM11'i flaş edebildim. Bir yana, Google Play 3G'yi devre dışı bırakana kadar (WiFi üzerinden IPv4'ü zorlayan) hatalar verdi, IPv6 üzerinden Play Sunucularına bağlanırken (geçici?) Sorunlar olduğu anlaşılıyor.


3
Biraz daha fazla bilgi faydalı olacaktır. Bunu bir forumdan aldın mı? Yoksa kendin mi yazdın? Her iki durumda da, random piece of codebazı yorumlar olmadan (özellikle düzenli ifadelerde) hepsi bu kadar yararlı değildir.
Stephen Schrauger

Tamam özür dilerim - yeni formatı eskisine dönüştüren bir arama / değiştirme kalıbı. Sonunda google-play uygulaması da yüklemez, bu yüzden mermiyi ısırdım ve güncellenmiş bir kurtarma (kurtarma-clockwork-6.0.4.6-i9300.img, heimdal ile) ve daha sonra değiştirilmemiş bir cm11 flaş yapabildim. Bir yana, google play 3G devre dışı bırakana kadar hatalar vardı (wifi üzerinden IPv4 zorlama), IPv6 üzerinden oyun sunucularına bağlanma sorunları (geçici?)
Var

-1

HATA DURUM 7, Samsung Galaxy Tab 2 GT-P5113 veya GT-p5110'a kitkat ve lolipop yüklemek için CWM sürümünü CWM v 6.0.4.4 sürümüne eşit veya daha yüksek bir sürüme yükseltmeniz gerekecek.


1
Bu doğru olabilir, ancak talebinizi kaynaklarla destekleyebilir misiniz?
Firelord

-2

Köklü telefonunuzdaki "Geliştirici seçenekleri" altında "USB Hata Ayıklama" yı etkinleştirdiğinizden emin olun. Bu benim için çalıştı.


Geliştirici seçeneklerinin kurtarma ile ne ilgisi var? CWM / TWRP'ye önyükleme yapıldığında bunlar hiçbir rol oynamaz. Özellikle yanıp sönen ROM'lar için değil.
Izzy

Tamamen ilgisizler.
SarpSTA

Bu cevabın, bazı cihazlarda / sürümlerde nvram'da gerçekten Kurtarma'dan okunabilir bir bayrak ayarlayabilen "USB Hata Ayıklama" ayarına atıfta bulunduğuna inanıyorum.
Matthew
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.