Hur man kör GUI-appar som root i Mac OS X

Anonim

De som är bekanta med kommandoraden vet att att köra saker med superanvändarprivilegier vanligtvis bara är en fråga om att använda kommandot sudo. Det stämmer fortfarande med att lansera GUI-appar i OS X med root-privilegier, men det är inte bara en fråga om att prependera sudo till det annars användbara öppna kommandot, eftersom "öppna" startar appar som den ursprungliga användaren, med eller utan sudo. Lösningen är istället att använda sudo som pekar direkt på den körbara filen som finns i en given programpaketfil.

Startar OS X GUI-appar som rootanvändare

Kommandosyntaxen är följande:

sudo /Path/To/Application/ApplicationName.app/Path/To/Executable

I de flesta fall kommer det att vara applikationer som är lagrade i katalogen /Applications/, och den körbara filen lagras nästan alltid i Package/Contents/MacOS/ som vad applikationsnamnet än är:

sudo /Applications/ApplicationName.app/Contents/MacOS/ApplicationName

Det här kommandot kör till exempel den välbekanta TextEdit-appen som root:

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

För att starta TextEdit som en bakgrundsapp, vilket betyder att den inte stängs om du stänger terminalfönstret, använd flaggan -b på sudo: sudo -b /Applications/TextEdit .app/Contents/MacOS/TextEdit

Du kan bekräfta att programmet körs som root genom att använda kommandot ps med grep, återigen med TextEdit som exempel:

ps au|grep TextEdit

Alternativt kan du titta på OS X-processhanteringsappen Activity Monitor och hitta applikationen som körs där som "root"-användare, som visas i skärmdumpen överst och den korta videon nedan:

Om du tänker köra en viss app ofta som root, kan du överväga att placera ett alias i .bash_profile för att förkorta kommandosträngen.

Trots att de körs som root kan inte alla systemfiler vara modifierbara och vissa kan markeras som "Låsta" när de öppnas i vissa appar som TextEdit. Det problemet kan ofta lösas genom att aktivera root-användaren om du inte har gjort det ännu, men inte alla appar kommer att ha den begränsningen.Icke desto mindre, för vissa uppgifter som att redigera hosts-filen är det fortfarande bättre att hålla sig till kommandoraden och en textbaserad redigerare, eller använda en app som BBEdit eller TextWrangler.

Hur man kör GUI-appar som root i Mac OS X