[TUT] iPhone/iPod schneller machen

  • [TUT] iPhone/iPod schneller machen

    Hi,

    hier mal ein Tutorial wie man sein iPhone schneller machen kann. Hier geht es nicht um übertakten oder so etwas, sondern "einfach" überflüssige Ressourcenschlucker zu entfernen und damit Ressourcen für das iPhone/den iPod frei zu machen, damit dieser flüssiger läuft.


    Vorwort:

    Es erklärt sich von selbst das von allen Daten ein Backup gemacht sein sollte für den Fall das etwas schief geht. Selbstverständlich muß das Gerät gejailbreaked sein, ssh unterstützen und am besten auch "mobile terminal" und iFile beinhalten sollte.

    Ich übernehme natürlich keine Haftung falls bei jemandem etwas schief geht. Für jemanden mit 2 linken Händen ist das hier bestimmt genauso wenig etwas wie für Leute die nicht richtig lesen und irgendetwas dann löschen, denn dadurch greift Ihr tief ins System und es bleibt eventuell nur noch das neu AUfsetzen.

    Desweitern möchte ich sagen das ich das hier nicht selbst entdeckt oder entwickelt habe, sondern aus einem anderen Forum habe. Somit dient der Respeckt nicht mir, sondern shmi117, lll2for3lll und Fubaya .


    Einleitung:
    Es gibt natürlich die klassischen Selbstgänger: je mehr Programme und Tweaks usw. im Hintergrund laufen, desto mehr Arbeitsspeicher (RAM) wird belegt und steht dadurch nicht mehr zur Verfügung. Daher ist es nicht ratsam alles mögliche an Dingen zu installieren, die vielleicht nett sind, aber eigentlich dann doch nicht genutzt werden. Daher ist es mal als Beispiel nicht Sinnvoll z.B. den Backgrounder zu installieren wenn man ihn eh nie nutzt. Wir reden hier nur von den Sachen die im Hintergrund laufen. Apps und Games usw. die man sich so lädt belegen ja erst Speicher wenn Sie auch genutzt werden und nicht permanent. Man kann sich auch für einige Sachen Alternativen aussuchen, wie z.B. bei Themes. Hier muß es nicht zwangsweiße Winterboard sein, das zusammen mit Themes doch erhelblich Speicher fressen kann und das Gerät unter umständen weniger flüssig erscheinen läßt. Hier könnte man z.B: selbst Hand anlegen um Dock, Slider, Icons usw. zu tauschen. (siehe: Zeigt doch euer Springboard).


    Hier soll es aber eigentlich nicht um diese Sachen gehen, sondern um die eher versteckten Dinge die im Hintergrund laufen und eher zum System gehören:


    Teil 1: LaunchDaemons:

    Fangen wir mit den Launch Daemons an:

    Was ist ein Daemon? Wikipeadia sagt folgendes dazu:

    "Als Daemon oder Dämon (auch häufig in der Schreibweise Demon) bezeichnet man unter Unix oder unixartigen Systemen ein Programm, das im Hintergrund abläuft und bestimmte Dienste zur Verfügung stellt. Benutzerinteraktionen finden hierbei nur auf indirektem Weg statt..."

    Diese Programme werden also Beim Systemstart des iPhone/iPod geladen und sind im Hintergrund für bestimmt Dinge zuständig, wie z.B. das der Pushdienst überhaupt läuft usw. Hier ist es nun so das aber wie bei den meißten Computer "Dienste" laufen die der User nie brauchen wird, oder teilweise drauf verzichten kann. Diese werden aber trotzdem geladen, da andere User diese vielleicht benötigen könnten. Es gilt also zu schauen welche der daemons generell, oder userbezogen nicht benötigt werden, diese zu eliminieren um dadurch Ressourcen zu sparen und somit den Bootvorgang und das Gerät schneller zu machen.


    Als erstes gehen wir zu /System/Library per SSH, mobile Terminal oder iFile und kopieren uns den Ordner LaunchDaemons z.B. zu /System/Library/LaunchDaemons_original. Man sollte den Ordner noch zusätzlich auf den PC ziehen! Man kann auch einfach per SSH den Ordner LaunchDaemons auf den Rechner ziehen, umbenennen und wieder auf das Gerät hochladen als Kopie. Der kopierte Ordner auf dem Gerät muß noch mit den Rechten 755 ausgestattet werden, falls man zurücksichern muß.

    Um es Euch zu erleichtern hab ich mal ein Skript erstellt was Euch diese Arbeit abnimmt und das Backup lokal auf dem iPhone anlegt: LaunchDaemonCopy.sh
    Das Teil auf das iPhone/den iPod schieben, z.B. nach /var/mobile, mit den Rechten 755 versehen und euch dann im Mobile Terminal mit su + passwort anmelden, dorthin bewegen und per ./LaunchDaemonCopy.sh starten.

    Damit haben wir schon einmal das Backup für den Fall der Fälle.

    Nun geht es darum eben die entsprechenden Daemons zu identifizieren und einfach im LaunchDaemon Ordner zu löschen, damit diese nicht mehr starten. Hier dazu eine Liste der entsprechenden Daemons:

    Diese hier werden von keinem normalen User benötigt und können somit einfach gelöscht werden:
    com.apple.DumpPanic.plist - Generiert Speicherabbilder um diese für Apple vorzuhalten, damit diese eventuell analysiert werden können.
    com.apple.ReportCrash.(5 unterschiedliche Namen).plist - Hier gibt es 5 verschiedene und können gelöscht werden. Diese halten Angaben für Apple bereit welche Programme und Dinge gemacht wurden als etwas abgestürzt ist usw..
    com.apple.DumpBasebandCrash.plist - Hier werden Speicherabbilder des Baseband im Falle eines Absturzes generiert. iPod Benutzer haben aber nicht mal ein Baseband.
    com.apple.CrashHouseKeeping.plist - Hat genauso mit Abstürzen zu tun.
    com.apple.aslmanager.plist - Hier werden LOG-Dateien gemanaged .
    com.apple.syslogd.plist - Loggt Systemereignisse.
    com.apple.powerlog.plist - Überwacht inkompatibilitäten mit Netzteilen von Drittherstellern.
    com.apple.stackshot.server.plist - Diese Funktion ist nicht ganz genau bekannt, hat aber keine Auswirkung auf das Gerät beim Löschen. Ein wenig mehr technische Info dazu gibt es hier.
    com.apple.tcpdump.server.plist - Hier wird der Netzwerktraffic mitgeschnitten. Es nicht nicht ganz klar wofür, aber es hat keine negativen Auswirkungen wenn man es deaktiviert bisher.
    com.apple.iqagent.plist - Es nicht nicht ganz klar wofür der Daemon is, aber es hat keine negativen Auswirkungen wenn man es deaktiviert bisher.
    com.apple.mobile.profile_janitor.plist - Es nicht nicht ganz klar wofür der Daemon is, aber es hat keine negativen Auswirkungen wenn man es deaktiviert bisher.
    com.apple.chud.chum.plist - Dieser Daemon hat mit Apple's CHUD (Computer Hardware Understanding Developer) tools zu tun. Wenn man kein Entwickler ist ist es sicher den zu löschen.
    com.apple.chud.pilotfish.plist - Dieser Daemon hat mit Apple's CHUD (Computer Hardware Understanding Developer) tools zu tun. Wenn man kein Entwickler ist ist es sicher den zu löschen.



    Die folgenden Daemons sind spezifischer und sollten nur gelöscht werden wenn man Sie wirklich nicht braucht!:
    com.apple.searchd.plist - Dieser Daemon ist für die Spotlight Suche zuständig. Die Suchseite ist nach löschen zwar vorhanden, funktioniert aber nicht mehr.
    com.apple.AddressBook.plist - Wenn man diese löscht dauert es länger die Kontakte im Telefon zu sehen.
    com.apple.accessoryd.plist - Wenn man diese Daemon löscht funktionieren Dock, Transmitter und Zubehör am Dock nicht mehr, außer zum Aufladen. Wenn man eh nur aufläd kann das gelöscht werden.
    com.apple.apsd.plist - Dient den Push Benachrichtigungen. Push geht nicht mehr wenn man es löscht. Wer eh kein Push nutzt kann gefahrlos löschen.
    com.apple.dataaccess.dataaccessd.plist - Dient der Synchronisation von Exchange und Google über Exchange. Wenn man kein Exchange nutzt kann es gelöscht werden.
    com.apple.datamigrator.plist - Dient dem Transfer der Kontaktdaten von der SIM-Karte auf das iPhone, wenn man eh alles im Adressbuch hat kann es gelöscht werden. iPod User können es eh löschen.
    com.apple.racoon.plist - Benötigt für die Verbindung zu einem VPN. Wenn man kein VPN nutzt kann es gelöscht werden.
    com.apple.MobileInternetSharing.plist - Zuständig für Internet Tethering. Wenn man einen iPod Touch oder kein kein Tethering benötigt kann es gelöscht werden.
    com.apple.aggregated.plist - Hat mit dem Audio-Eingang zu tun. Wird vom iPhone benötigt. iPod Touch User die keine Spracheingabe oder ähnliches (skype) nutzen könen löschen.
    com.apple.AOSNotification.plist - Dient der Synchronisation mit MobileMe. Nutzt man kein MobileMe kann es gelöscht werden.
    com.apple.AdminLite.plist - Dieser Daemon schließt Apps die scheinbar abgestürzt sind.Wenn man hier länger warten will kann es gelöscht werden. Ich würde es lassen, also nicht löschen.
    com.apple.graphicsservices.sample.plist - Hat wohl mit der AlbumArt Darstellung zu tun. Ich würde hier die Finger von lassen.
    com.apple.UIKit.pasteboardd.plist - Dient Copy+Paste. Wer nie Copy+Paste benutzt kann löschen.



    Alle anderen Daemons ist mir jetzt zu lange aufzulisten und zu beschreiben, sollten aber auf jeden Fall in Ruhe gelassen werden.

    Nach den Änderungen dann das Gerät neu booten, nicht nur respring machen!

    Durch diese Maßnahmen verkürzt sich die Bootzeit schon merklich und auch das Gerät wird flüssiger und es steht mehr Speicher (sichtbar z.B. per SBSettings) zur Verfügung.

    Teil 2 im nächsten Post!
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"
    Werbung nur für nicht registrierte Nutzer sichtbar!

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von tullm () aus folgendem Grund: LaunchDaemonCopySkript hinzugefügt!

  • Teil 2: Language Files (SprachDateien):

    Was sind die Language Files?:

    Wie der Name schon sagt geht es hier um verschiedene Sprachen. Die eingebauten Apps und die meißten Programme bieten unterschiedliche Sprachen an. Diese werden entweder in den Optionen eingestellt, oder werden vom Programm aus den Einstellungen des Gerätes ermittel und entsprechend geladen.

    Die ganzen Sprachfiles sind in eigenen Ordner daher in jedem AppOrdner zu finden und heißen hier z.B. Englisch.lproj oder German.lproj. und beinhalten dann ein File Namens Localizable.strings. Löscht man nun alle Sprachfiles die nicht benötigt werden startetn die Programme schnelle, da sie diese gar nicht erst durchgehen oder prüfen.

    Nun könnte man natürlich per Hand in jeden Ordner gehen und die Ordner löschen, aber wer etliche Apps drauf hat wird den Aufwand wohl eher nicht auf sich nehmen wollen, zumal bei einem Update des Programms die Sprachfiles wieder neu drauf sind und wieder gelöscht werden müßten.

    Um die Files nun zu löschen gibt es neben oben genannten einen besseren Weg:

    Man nimmt ein ShellSkript und läßt es laufen!

    Info und Ansicht des Skripts hier: Skript Erklärung und Ansicht

    Download hier:Download Skript
    Für die die nicht so gut Englisch können habe ich das Skript mal übersetzt. Zu finden hier: LanguagePack deutsch

    Man geht nun folgendermaßen vor. (Achtung, falls Ihr Emoji-Symbole verwendet dürft Ihr auf keinen Fall die Japanische Sprache löschen!)

    Skript runterladen und per SSH auf das iPhone übertragen, z.B. nach /var/mobile nun noch die Berechtigung auf 755 setzen. Dann per MobileTerminal mit su + passwort die root Rechte bekommen und zu dem benutzten Ordner gehen, z.B. /var/mobile und den namen des Skripts so eingeben: ./langpack2deutsch1.sh

    Dadurch startet das Skript.

    Nun einfach den Anweisungen im Skript folgen.


    Zur Sicherheit kann man es ruhig mehrfach laufen lassen.


    Schlusswort:

    So, mit diesen Maßnahmen solltet Ihr ein wenig schneller unterwegs sein und mehr freien Speicher haben.

    Hab es jetzt bei mir und meiner Frau unter 3.0 und jetzt unter 3.1.3 getestet und das erfolgreich. Gerade noch auf dem iPhone 4 getestet. geht beides, auch wenn hier der Effekt nicht mehr wirklich sichtbar ist, da das Gerät an sich einfach schnell ist.

    Ich hoffe ich konnte Euch damit einen kleinen Einblick verschaffen und hoffe das es bei Euch auch so gut läuft, wenn Ihr die Hinweise beachtet!

    Bei Kritik oder anderen nützlichen Äußerungen bitte gerne melden!

    Gruß

    TUllm
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von tullm ()

  • Jup, ich habe es an 2 Geräten gemacht und es brachte eine Menge!

    Teil 1 und 2 sind jeweils ein Thread in einem anderen Forum und da hat es auch bei allen geklappt. Man muß eben nur genau die nehmen die man nicht braucht und darauf achten auch nur die zu erwischen. Wie gesagt und wie im Screenshot zu sehen hab ich damit schon 60MB Ram Frei gehabt auf einem 3G und das ist man ziemlich viel.

    Rechte vergibt man entweder auch gleich per SSH, oder direkt im Terminal mit entsprechenden UNIX Befehlen.

    Gruß

    TUllm
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"
  • tullm schrieb:

    Rechte vergibt man entweder auch gleich per SSH, oder direkt im Terminal mit entsprechenden UNIX Befehlen.
    also es reicht nicht wenn ich diese datein einfach rauslösche?
    ich habe echt keine ahnugn von der sache mit den rechten :(
    ich gehe über usb ifunbox auf das iphone da komm ich auch überall rein...
    Werbung nur für nicht registrierte Nutzer sichtbar!
  • Hi,

    einfach nur rauslöschen geht natürlich schon, aber dann hast Du kein Backup! Das mit den Rechten kommt ja nur bei dem kopierten Ordner als Backup zum tragen.

    Gruß

    TUllm
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"
  • Naja, die sollten für den Notfall auch auf dem iPhone verbleiben, damit man die hier gleich mit iFile oder MobileTerminal zurückhauen kann. Nein, die Rechte sind dann leider weg, weil Windows die so nicht kennt. Keine Ahnung ob iFunBox rechte vergeben kann. per SSH geht das oder manuell per Befehl in MobileTerminal mit chmod -R 0755 Verzeichnisname.

    So lange Du aber genau drauf achtest nicht die falschen, sondern nur die genannten nimmst, braucht man das Backup ja auch nicht, aber sicher ist eben sicher.

    Gruß

    TUllm
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"
    Werbung nur für nicht registrierte Nutzer sichtbar!
  • 19jesse19 schrieb:

    Mein iPod ist ja mal viel schneller :D
    Bedanke ich mich dann gleich mal :D

    Schön, freut mich! Glückwunsch!

    minimalist85 schrieb:

    also ich habs auch gemacht und da ist nichts mit von wegen schneller starten dauert genau so lange wie sonst

    sicher das Du alles gelöscht hast was Du nicht brauchst? Auch die Orangen die DU nicht benötigst?

    Bitte auch mal den freien Speicher vorher und nachher prüfen! Sollte sich schon was tun!

    PS: ich füge oben jetzt nochmal ein Skript zum Ordnerkopieren bei für das Backup im Mobile Temrinal.

    Gruß

    TUllm
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"
  • Ne, die roten hab ich gar nicht erst aufgeführt! Die sind Orange und da kann man eben raushauen was man erstmal nicht braucht, wie. z.B: VPN wenn man es nicht nutzt, was aber die wenigsten tun wenn sie nicht gerade in großen Firmen arbeiten.

    Gruß

    TUllm
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"
    Werbung nur für nicht registrierte Nutzer sichtbar!
  • tullm schrieb:

    com.apple.racoon.plist - Benötigt für die Verbindung zu einem VPN. Wenn man kein VPN nutzt kann es gelöscht werden.


    Da stehts. Das ist dafür da sich in ein Firmennetzwerk einzuwählen und das Gerät "denkt" dann das es tatsächlich vor Ort in dem Netzwerk ist. Vereinfacht gesagt . . .

    Dann lies Dir das mit den Sprachen nochmal genau durch und das Schritt für Schritt. Und dann kannst Du sagen was genau Du nicht verstehst . . .
    "peace to the brothers who had the nerve . . . to die in action in the war of words"
    by HiJack / taken from the album "The Horns Of Jericho"