OS X Bearbeiten Sie eine Datei mit TextEdit als Root oder Superuser

Zum Bearbeiten einiger Dateien auf einem OS X-System sind Superuser- oder Root-Berechtigungen erforderlich. In der Regel wird dies mit sudo erreicht (autorisierte Benutzer können optional von den Optionen Superuser, Umhang und Strumpfhose ausgehen) und vi. Für Uneingeweihte kann es zu Darmbeschwerden und Haarausfall kommen. Eine Alternative ist die Verwendung von TextEdit, der grafischen Texteditoranwendung. Unter normalen Umständen können Sie jedoch eine Systemdatei wie Hosts öffnen, aber nicht speichern. Befolgen Sie die Schritte in diesem Rezept, um eine Systemdatei mit TextEdit zu bearbeiten und das Lernen von vi auf einen anderen Tag zu verschieben.


Die Sudo-Befehlszeilenanwendung ermöglicht es einem Benutzer, eine andere Anwendung als einen anderen Benutzer auszuführen. Am häufigsten (und standardmäßig) ist der andere Benutzer root, der Superuser des Systems, der alle Dateien auf der Box bearbeiten kann. In diesem Fall möchten wir die Anwendung TextEdit starten.

Wenn Sie noch nie eine Anwendung in OS X angeschaut haben, ist es interessant, einen Blick darauf zu werfen. Wenn Sie den Ordner / Applications in einem Finder-Fenster anzeigen, werden die Anwendungen nach Namen wie TextEdit aufgelistet. Wenn Sie die Dateien über die Befehlszeile auflisten (ls -l / Applications), handelt es sich tatsächlich um Verzeichnisse und nicht um Dateien. Sie haben die Erweiterung .app wie TextEdit.app. Sie können das Verzeichnis in eines dieser Verzeichnisse ändern und sich umsehen. Wenn Sie einige davon betrachten, werden Sie feststellen, dass es eine Standardorganisation in ihnen gibt, und Sie sollten sich in dieser Situation etwas wärmer und möglicherweise fusseliger fühlen. Diese Verzeichnisstruktur ermöglicht es den Anwendungen, viele unterstützende Dateien und Ressourcen in sich zu haben. Für uns ist der Ort der eigentlichen ausführbaren Datei im App-Verzeichnis von Interesse. Im Fall von TextEdit lautet der Pfad zu dieser ausführbaren Datei /Applications/TextEdit.app/Contents/MacOS/TextEdit

Basierend auf diesen Informationen wird das Ausführen von TextEdit mit sudo zum Bearbeiten der Datei / etc / hosts zu einer einfachen Aufgabe (wenn eine recht lange Befehlszeile verwendet wird, sorry):


sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit / etc / hosts

In vielen Systemen funktioniert dieser Terminalbefehl möglicherweise besser:

Sudo öffnen -t / etc / hosts

Wenn Sie diesen Befehl über eine Befehlszeile (in einem Terminalfenster) ausführen, werden Sie zur Eingabe eines Kennworts aufgefordert. Das richtige Kennwort ist Ihr eigenes (das Kennwort des in OS X angemeldeten Benutzers, auch das Kennwort, das Sie bei Systemaktualisierungen usw. angeben), nicht das Kennwort des Root-Benutzers (das ohnehin nicht standardmäßig vorhanden ist).

Sobald Sie Ihr Passwort eingegeben haben, wird ein TextEdit-Fenster geöffnet und der Inhalt der Datei, die Sie bearbeiten, wird angezeigt. Bearbeiten Sie nach Herzenslust und speichern Sie Ihre Daten, wenn Sie fertig sind. Denken Sie jedoch daran, dass die meisten Systemdateien aus gutem Grund vor dem Schreiben geschützt sind (wenn Sie z. B. einen Fehler machen, können schlimme Dinge passieren). Bearbeiten Sie sie daher auf eigene Gefahr.

Aktualisieren:

Die Versionierungsfunktionen von OS X Lion verhindern, dass dieses Lernprogramm ordnungsgemäß funktioniert. Obwohl Sie als Superuser ausgeführt werden, wird die Datei in TextEdit gesperrt. Seit der Markteinführung von Lion habe ich mich auf die alte Standby-Funktion zurückgesetzt, Nano zum Bearbeiten zu verwenden.

Sudo Nano / etc / hosts

Sicher, Nano hat dieses Retro-Terminal-Feeling, aber es ist eine einfache Methode, um einfache Änderungen an Host-Dateien vorzunehmen.