Eine Befehlszeilenanwendung zur Wiederherstellung von Firmware-Dateien auf iOS-Geräten.
Die iDevicerestore -Anwendung ist eine vollständige Neuauflagen aller granularen Schritte, die während der Wiederherstellung einer Firmware auf ein Gerät durchgeführt werden.
Im Allgemeinen sind Upgrades und Herabstufungen möglich, vorbehaltlich der Verfügbarkeit von SHSH -Blobs von Apple zur Unterzeichnung der Firmware -Dateien.
Einige wichtige Funktionen sind:
Warnung: Dieses Tool kann Ihre Benutzerdaten leicht irreversibel zerstören .
Verwenden Sie mit Vorsicht und stellen Sie sicher, dass Sie Ihre Daten sichern, bevor Sie versuchen, wiederherzustellen.
In jedem Fall ist die Verwendung auf eigenes Risiko.
Sie müssen einen Arbeitskompiler (GCC/Clang) und eine Entwicklungsumgebung zur Verfügung haben. Dieses Projekt verwendet Autotools für den Build -Prozess, sodass gemeinsame Build -Schritte über verschiedene Plattformen hinweg auftreten können. Nur die Voraussetzungen unterscheiden sich und sie werden in diesem Abschnitt beschrieben.
sudo apt-get install
build-essential
pkg-config
checkinstall
git
autoconf
automake
libtool-bin
libreadline-dev
libusb-1.0-0-dev
libplist-dev
libimobiledevice-dev
libimobiledevice-glue-dev
libtatsu-dev
libcurl4-openssl-dev
libssl-dev
libzip-dev
zlib1g-devlibtatsu-dev ) ist eine neue Bibliothek, die erst kürzlich veröffentlicht wurde. Sie müssen sie aus der Quelle ausbauen. Außerdem sind andere *-dev -Pakete möglicherweise nicht für Ihre Verteilung verfügbar, sodass Sie diese Pakete auch selbst erstellen müssen. Stellen Sie sicher, dass die Xcode -Befehlszeilen -Tools installiert sind.
Option 1 : Der einfachste Weg, um idevicerestore für macOS zu erstellen und zu installieren, ist das folgende Build -Skript, das die Arbeit für Sie erledigt. Er baut alle erforderlichen Abhängigkeiten auf und installiert:
mkdir -p limd-build
cd limd-build
curl -o ./limd-build-macos.sh -L https://is.gd/limdmacos
bash ./limd-build-macos.sh Befolgen Sie die Eingabeaufforderungen des Skripts und Sie sollten über einen funktionierenden idevicerestore stehen.
Option 2 : Verwenden Sie entweder MacPorts oder Homebrew, um automake , autoconf und libtool zu installieren.
Verwenden von MacPorts:
sudo port install libtool autoconf automakeMit Homebrew:
brew install libtool autoconf automake idevicerestore hat einige Abhängigkeiten vom LibimobileDevice -Projekt. Sie müssen Folgendes erstellen und installieren:
Überprüfen Sie ihre README.md , um Anweisungen zu erstellen und zu installieren.
Die Verwendung von MSYS2 ist die offizielle Art, dieses Projekt unter Windows zusammenzustellen. Laden Sie den MSYS2 -Installationsprogramm herunter und befolgen Sie die Installationsschritte.
Es wird empfohlen, die MSYS2 Mingw 64-Bit -Schale zu verwenden. Führen Sie es aus und stellen Sie sicher, dass die erforderlichen Abhängigkeiten installiert sind:
pacman -S base-devel
git
mingw-w64-x86_64-gcc
make
libtool
autoconf
automake-wrapper
pkg-config
libcurl-devel
mingw-w64-x86_64-libzipHinweis: Sie können eine andere Shell und einen anderen Compiler entsprechend Ihren Anforderungen verwenden. Passen Sie den obigen Befehl entsprechend an.
idevicerestore hat einige Abhängigkeiten vom LibimobileDevice -Projekt. Sie müssen Folgendes erstellen und installieren:
Überprüfen Sie ihre README.md , um Anweisungen zu erstellen und zu installieren.
Sie können den Quellcode aus einer Git -Kasse oder aus einem .tar.bz2 -Release -Tarball aus Releases erstellen. Bevor wir es bauen können, muss der Quellbaum für das Gebäude konfiguriert werden. Die Schritte hängen davon ab, woher Sie die Quelle bekommen.
Aus Git
Wenn Sie es noch nicht getan haben, klonen Sie das eigentliche Projektrepository und wechseln Sie in das Verzeichnis.
git clone https://github.com/libimobiledevice/idevicerestore.git
cd idevicerestoreKonfigurieren Sie den Quellbaum zum Erstellen:
./autogen.shAus Release Tarball (.tar.bz2)
Bei Verwendung eines offiziellen Release-Tarballs ( idevicerestore-xyztar.bz2 ) ist das Verfahren geringfügig unterschiedlich.
Den Tarball extrahieren:
tar xjf idevicerestore-x.y.z.tar.bz2
cd idevicerestore-x.y.zKonfigurieren Sie den Quellbaum zum Erstellen:
./configure Beide ./configure und ./autogen.sh (das generiert und auf Anrufe configure ) akzeptieren einige Optionen, z. B. --prefix , damit das Erstellen eines anderen Zielordners erstellt wird. Sie können sie einfach so weitergeben:
./autogen.sh --prefix=/usr/localoder
./configure --prefix=/usr/localSobald der Befehl erfolgreich ist, sehen die letzten Ausgangszeilen wie folgt aus:
[...]
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
Configuration for idevicerestore 1.1.0:
-------------------------------------------
Install prefix: .........: /usr/local
Now type 'make' to build idevicerestore 1.1.0,
and then 'make install' for installation.
Wichtig
IDEVICERESTORE benötigt eine ordnungsgemäß installierte USBMUXD für das Wiederherstellungsverfahren. Bitte stellen Sie sicher, dass es entweder ausgeführt oder so konfiguriert wird, dass sie automatisch gestartet werden, sobald ein Gerät im normalen und/oder Wiederherstellungsmodus erkannt wird. Wenn dies ordnungsgemäß installiert wird, wird dies von Udev/systemd behandelt.
Das primäre Szenario besteht darin, eine neue Firmware auf einem Gerät wiederherzustellen. Befestigen Sie zunächst Ihr Gerät an Ihrem Computer.
Dann einfach rennen:
idevicerestore --latestDadurch werden eine Auswahl an Firmware -Versionen gedruckt, die derzeit unterschrieben werden und auf das beigefügte Gerät wiederhergestellt werden können. Dann wird versucht, die ausgewählte Firmware herunterzuladen und wiederherzustellen.
Standardmäßig wird eine Update -Wiederherstellung durchgeführt, mit der Benutzerdaten erhalten bleiben.
Wenn die Firmware -Datei keine "Kunden -Upgrade -Installationsvariante" enthält, wird eine Erase -Wiederherstellung durchgeführt.
Sie können das Wiederherstellen des Löschens aller Daten erzwingen und das Gerät im Grunde genommen zurücksetzen, indem Sie Folgendes verwenden:
idevicerestore --erase --latestBitte wenden Sie sich an die Nutzungsinformationen oder die manuelle Seite, um eine vollständige Dokumentation der verfügbaren Befehlszeilenoptionen zu erhalten:
idevicerestore --help
man idevicerestoreWir begrüßen Beiträge von jedem und sind für jede Pull -Anfrage dankbar!
Wenn Sie einen Beitrag leisten möchten, geben Sie bitte die master -Filiale aus, ändern sich, verpflichten und senden Sie eine Pull -Anfrage zur Überprüfung. Sobald es genehmigt wurde, kann es in die Hauptcode -Basis verschmolzen werden.
Wenn Sie vorhaben, größere Änderungen oder ein großes Refactoring beizutragen, erstellen Sie zuerst ein Ticket, um die Idee im Voraus zu besprechen, um weniger Anstrengungen für alle zu gewährleisten.
Bitte stellen Sie sicher, dass Ihr Beitrag an:
Dieses Projekt ist im Rahmen der GNU Lesser General Public Lizenz v3.0 lizenziert, auch im Repository in der COPYING enthalten.
Apple, iPhone, iPad, iPod, iPod Touch, Apple TV, Apple Watch, Mac, iOS, iPados, TVOS, WatchOs und MacOS sind Marken von Apple Inc.
Dieses Projekt ist eine unabhängige Softwareanwendung und wurde nicht von Apple Inc. autorisiert, gesponsert oder auf andere Weise genehmigt.
Readme aktualisiert auf: 2024-10-22