OS X: Redigere en fil med TextEdit som root eller superuser

OS X: Redigere en fil med TextEdit som root eller superbruker

Redigering noen filer på en OS X-systemet krever superbruker eller root rettigheter. Vanligvis er dette oppnås ved bruk av sudo (som lar autoriserte brukere anta superbruker krefter, cape og tights valgfritt) og vi. For den uinnvidde kan vi føre intestinal nød og håravfall. Et alternativ er å bruke TextEdit, grafisk tekst editor program, men under normale omstendigheter, kan du åpne en systemfil som verter, men kan ikke lagre det. Å følge trinnene i denne oppskriften, kan du redigere et system fil ved hjelp av TextEdit og frata læring vi for en annen dag.


sudo kommandolinje program lar brukeren kjøre et annet program som om de er en annen bruker. Oftest (og som standard) den andre brukeren er roten, superbruker av systemet som kan gjøre noe til en fil på boksen. I dette tilfellet ønsker vi å starte TextEdit programmet.

Hvis du aldri har poked rundt på et program i OS X, er det interessant å ta en titt. Når du ser på mappen /Programmer i Finder-vinduet, vil du se programmene som er oppført etter navn som TextEdit. Hvis du liste opp filene fra kommandolinjen (ls -l /Applications) de er faktisk kataloger, ikke bare filer, og har en .app forlengelse som TextEdit.app. Du kan endre katalog til en av disse katalogene og se deg rundt. Hvis du ser på noen, vil du se at det er noen standardiseringsorganisasjon i dem, og som bør få deg til å føle deg litt varmere og muligens mer uklart om hele situasjonen. Dette katalogstruktur gjør at programmer for å ha mange støtte filer og ressurser pent finnes i dem. Av interesse for oss er plasseringen av selve kjørbar fil inne i app-katalogen. I tilfelle av TextEdit, banen til denne kjør er /Applications/TextEdit.app/Contents/MacOS/TextEdit

Basert på denne informasjonen, kjører TextEdit med sudo for å redigere /etc /hosts-filen blir en enkel oppgave (hvis en ganske lang kommandolinje, sorry):


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

I mange systemer denne terminalen kommandoen kan fungere bedre:

sudo open -t /etc /hosts

Når du kjører denne kommandoen fra en kommandolinje (i et terminalvindu), vil du bli bedt om å oppgi et passord. Riktig passord er din egen (passordet til brukeren er logget inn OS X, også passordet du oppgir når du gjør systemoppdateringer og så videre), ikke root brukerens passord (som ikke eksisterer som standard, uansett).

Når du skriver inn passordet, vil en TextEdit vindu åpne og innholdet av filen du redigerer vises. Rediger til ditt hjerte innhold og lagre normalt når du er ferdig. Bare husk at de fleste systemfiler er beskyttet fra å skrive for en god grunn (for eksempel hvis du gjør en feil å redigere dem, kan dårlige ting skje) så redigere på egen risiko

Oppdatering:.
< p> versjone funksjoner av OS X Lion vil hindre denne opplæringen fungerer som det skal. Selv om du kjører som en superbruker, vil filen i TextEdit være låst. Siden Lion har rullet ut, har jeg gått tilbake til den gamle standby for å bruke nano til å redigere.

sudo nano /etc /hosts

Sure nano har som retro terminal føler, men det er en enkel nok metode for å gjøre enkle vert filendringer.