Paano Magpatakbo ng GUI Apps bilang root sa Mac OS X

Anonim

Alam ng mga pamilyar sa command line na ang pagpapatakbo ng mga bagay na may mga pribilehiyo ng super user ay karaniwang bagay lamang ng paggamit ng sudo command. Totoo pa rin iyon sa paglulunsad ng mga GUI app sa OS X na may mga pribilehiyo sa ugat, ngunit hindi lamang ito isang bagay ng pag-prepending ng sudo sa kapaki-pakinabang na open command, dahil ang 'bukas' ay naglulunsad ng mga app bilang orihinal na user, mayroon man o walang sudo. Ang solusyon sa halip ay ang paggamit ng sudo na direktang tumuturo sa executable na nasa loob ng isang naibigay na file ng package ng application.

Paglulunsad ng OS X GUI Apps bilang root user

Ang command syntax ay ang sumusunod:

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

Sa karamihan ng mga kaso, iyon ay mga application na naka-imbak sa /Applications/ directory, at ang executable ay halos palaging nakaimbak sa Package/Contents/MacOS/ bilang anuman ang pangalan ng application ay:

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

Halimbawa, pinapatakbo ng command na ito ang pamilyar na TextEdit app bilang root:

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

Upang ilunsad ang TextEdit bilang background app, ibig sabihin, hindi ito magsasara kung isasara mo ang terminal window, ilapat ang -b flag sa sudo: sudo -b /Applications/TextEdit .app/Contents/MacOS/TextEdit

Maaari mong kumpirmahin na ang application ay tumatakbo bilang root sa pamamagitan ng paggamit ng ps command na may grep, muli gamit ang TextEdit bilang halimbawa:

ps au|grep TextEdit

Bilang kahalili, maaari mong tingnan ang OS X process management app Activity Monitor at hanapin ang application na tumatakbo doon bilang 'root' user, gaya ng ipinapakita sa screenshot sa itaas at ang maikling video sa ibaba:

Kung balak mong magpatakbo ng isang partikular na app nang madalas bilang root, maaari mong isaalang-alang ang paglalagay ng alias sa .bash_profile upang paikliin ang command string.

Sa kabila ng paggana bilang root, hindi lahat ng system file ay maaaring mabago at ang ilan ay maaaring mamarkahan bilang "Naka-lock" kapag binuksan sa ilang app tulad ng TextEdit. Madalas na mareresolba ang isyung iyon sa pamamagitan ng pagpapagana sa root user kung hindi mo pa ito nagagawa, ngunit hindi lahat ng app ay magkakaroon ng limitasyong iyon.Gayunpaman, para sa ilang partikular na gawain tulad ng pag-edit ng hosts file, mas mabuting manatili ka pa rin sa command line at text based editor, o paggamit ng app tulad ng BBEdit o TextWrangler.

Paano Magpatakbo ng GUI Apps bilang root sa Mac OS X