Frage:
Warum kann ich meine Hosts-Datei nicht bearbeiten?
Elad Benda
2014-12-09 20:53:04 UTC
view on stackexchange narkive permalink

Ich versuche, meine Hosts-Datei zu bearbeiten, da ssh <some host in hosts> nicht in ip übersetzt werden kann.

Entspricht der Finder-Benutzeroberfläche unter:

enter image description here Wenn ich jedoch versuche, cat hosts vom Terminal aus auszuführen, wird folgende Fehlermeldung angezeigt:

  etc / etc cat hostscat: hosts: Keine solche Datei oder kein solches Verzeichnis  

Ich habe versucht, eine neue Hosts-Datei zu erstellen, aber dann wird neben der ersten eine weitere

enter image description here p erstellt >

aber wenn ich versuche, die zweiten Hosts zu bearbeiten, muss ich zu einem anderen Ziel duplizieren. Ich kopiere es nach / etc und wieder tritt das erste Problem auf.

Ich habe versucht, die Berechtigungen so zu ändern, dass jeder lesen und schreiben kann. Aber es hat nicht geholfen.

Fünf antworten:
klanomath
2014-12-09 21:12:41 UTC
view on stackexchange narkive permalink

Normalerweise darf nur der Root-Benutzer die Datei hosts ändern.

Dazu müssen Sie Ihre Hosts-Datei oder Ihren Ordner / etc reparieren (je nachdem, wo Sie den Lesevorgang durchgeführt haben) / Schreibberechtigungen) Führen Sie die folgenden Schritte aus:

  1. Werfen Sie Ihre neu erstellte Hosts -Datei weg (aber nicht die alte!)
  2. Reparieren Sie Ihre Berechtigungen mit Disk Utility . enter image description here
  3. Öffnen Sie das Terminal und geben Sie sudo nano / etc / hosts ein und drücken Sie ↵ kbd>
  4. Geben Sie Ihr Passwort ein (es wird nicht angezeigt!) und drücken Sie ↵ kbd>
    Die Standard-Hosts-Datei in Yosemite sieht folgendermaßen aus: nano
  5. Bearbeiten Ihre hosts -Datei.
    Das Format für jede Zeile ist die IP-Adresse, dann eine Registerkarte oder ein einzelnes Leerzeichen und die Hostnamen. Beenden Sie die Datei mit einer leeren nachfolgenden Zeile.
  6. Schreiben Sie die Änderungen mit ctrl O kbd> auf die Festplatte, gefolgt von ↵ kbd>, und beenden Sie das Programm nano mit ctrl x kbd>
  7. Geben Sie exit ein, drücken Sie ↵ kbd> und beenden Sie das Terminal .app
  8. ol>

    Alternativ zu den Schritten 3-7 können Sie hosts.prefpane herunterladen und installieren und dort Ihre zusätzlichen Hosts eingeben.

samh
2014-12-09 21:24:55 UTC
view on stackexchange narkive permalink

Es sollte keine Möglichkeit geben, zwei identisch benannte Dateien im Ordner / etc zu haben. Können Sie Informationen zum Original abrufen und die Namens-&-Erweiterung überprüfen (und sicherstellen, dass die Erweiterung nicht ausgeblendet ist und am Ende des Namens keine Leerzeichen stehen)?

einer war `hosts.txt`
Dies kann passieren, wenn Sie die Datei in TextEdit (oder einer ähnlichen App) von Grund auf neu erstellen und einfach im Ordner / etc / speichern und die Erweiterung sowie die Option "Erweiterung ausblenden" nicht besonders beachten.
WM.
2014-12-09 20:56:13 UTC
view on stackexchange narkive permalink

Ändern Sie einfach, was Sie am Duplikat ändern möchten, und ersetzen Sie dann die alte Datei hosts .

Flying Trashcan
2014-12-09 21:14:51 UTC
view on stackexchange narkive permalink

Ich habe festgestellt, dass ich die Hosteinstellungen am besten ändern kann, indem ich:

1) ein Duplikat erstelle (was Sie bereits getan haben)

2) Verschieben Sie das Duplikat in ein neues Speicherort, z. B. der Desktop

3) Erstellen Sie ein weiteres Duplikat auf dem Desktop und benennen Sie es in "hosts ORIGINAL" um, damit Sie wissen, dass es sich um die ursprüngliche Hosts-Datei handelt, falls Sie zurückkehren müssen.

4) Nehmen Sie die Änderungen an "Hosts" auf dem Desktop vor und speichern Sie sie.

5) Löschen Sie die "Hosts" -Datei in / etc oder benennen Sie sie in "Hosts ALT" um.

6) Ziehen Sie "Hosts" vom Desktop nach / etc. (Möglicherweise werden Sie nach Administratorrechten gefragt.)

Patrick
2015-06-24 00:39:50 UTC
view on stackexchange narkive permalink

Dieses Problem ist in Yosemite 10.10.3 aufgetreten. Ich konnte die Lösung nicht finden, bis ich anfing, über den Tellerrand hinaus zu denken.

Die meisten Leute wissen es nicht, aber standardmäßig den Ordner "/ private / etc" und "/ private / etc / hosts" "Dateiberechtigungen sind auf" schreibgeschützt "eingestellt. Wenn Sie also nur die Dateiberechtigungen "Hosts" in "Lesen und Schreiben" ändern, können Sie sie in TextEdit immer noch nicht bearbeiten. Die Datei "hosts" ist aufgrund des Ordners "/ private / etc" gesperrt. Der Trick besteht darin, dass Sie sowohl die Berechtigungen des Ordners "/ private / etc" als auch die Datei "/ private / etc / hosts" ändern müssen.

sudo chmod 777 / private / etc; chmod 777 / private / etc / hosts; open -t / private / etc / hosts

Es ist mir egal, ob es sich um einen Fehler handelt oder nicht!

Sie benötigen keine Schreibberechtigungen für den enthaltenen Ordner, um den Inhalt einer Datei zu ändern.So funktioniert das Unix-Berechtigungssystem nicht.
@JensErat Sie benötigen keine Schreibberechtigungen, um eine Datei an Ort und Stelle zu bearbeiten.Einige GUI-Editoren schreiben jedoch in eine temporäre Datei im selben Ordner. Wenn dies funktioniert, löschen sie die alte Datei und benennen sie in alt um.DIESER Prozess erfordert das Schreiben in den übergeordneten Ordner.


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...