升級(jí) OS X 10.11 cocoapods 使用不正常的問題

Rootless 的說明

在OS X 10.11中蘋果引入的Rootless機(jī)制含滴。
關(guān)于Rootless的小小說明:

Rootless討論的前提是假定root賬戶是OS
X(或者其他Unix系統(tǒng))中對(duì)抗惡意程序保護(hù)操作系統(tǒng)的最后一道防線遭商。意思是一個(gè)應(yīng)用程序一旦獲得了root賬戶權(quán)限日月,將會(huì)獲得系統(tǒng)的無限的權(quán)限幽告。就可以進(jìn)行實(shí)時(shí)修改鉴逞、修改磁盤愉老、替換任何系統(tǒng)文件等驶兜。

目前吞鸭,許多傳統(tǒng)的Unix操作系統(tǒng)中珊蟀,root賬戶都是被強(qiáng)密碼保護(hù)著的菊值。這里的問題在于大部分的OS X系統(tǒng)基本上是單用戶系統(tǒng),也就是不存在單獨(dú)的root賬戶密碼育灸,root密碼就是管理員賬戶的密碼腻窒。簡(jiǎn)單來說,蘋果通過以下途徑來獲取root權(quán)限:大部分用戶會(huì)毫不猶豫的輸入密碼磅崭,都不會(huì)想他們到底授權(quán)了什么行為儿子。更重要的是,授權(quán)給了什么應(yīng)用程序砸喻∪岜疲可以說,對(duì)于一般的無經(jīng)驗(yàn)用戶割岛,他們沒有時(shí)間和專業(yè)知識(shí)來考慮這個(gè)問題愉适。他們不會(huì)意識(shí)到他們一旦輸入了密碼,請(qǐng)求的進(jìn)程就會(huì)獲得root權(quán)限癣漆。

什么是系統(tǒng)集成保護(hù)(System Integrity Protection)维咸?

使用了系統(tǒng)集成保護(hù),蘋果決定第三方應(yīng)用有一些永遠(yuǎn)不會(huì)被允許的事情惠爽。從某些層面來講癌蓖,這種保護(hù)和iOS更像了。第三方應(yīng)用相比起來更受限制疆股。這就是rootless一詞的由來费坊,系統(tǒng)在某種程度上限制了管理員賬號(hào)的權(quán)限。

rootless特性使得某些操作只有蘋果的應(yīng)用可以被許可(通過代碼簽名來判斷)旬痹。所以第三方應(yīng)用即使是運(yùn)行在root權(quán)限中附井,有一些操作也無法完成讨越。在我的測(cè)試中我注意到了以下幾點(diǎn):

  1. /System文件夾下的所有文件都不能被蘋果應(yīng)用以外的程序修改(例如各種安裝器和升級(jí)部件)

  2. 當(dāng)前的API例如task_for_pid不能在系統(tǒng)進(jìn)程下被調(diào)用了。這意味著以前注入系統(tǒng)進(jìn)程(Finder永毅、Messages或者系統(tǒng)內(nèi)核)的程序都不能用了把跨。

  3. 有意思的是,rootless依然允許已簽名的KEXT內(nèi)核拓展被載入沼死。問題是KEXT可以進(jìn)行許多無限制的系統(tǒng)及操作着逐。

** 總結(jié) **

Rootless機(jī)制的目的很明顯是改進(jìn)安全性和可靠性,使得惡意軟件以及木馬很難滲透進(jìn)系統(tǒng)意蛀。我很確信他將成為許多惡意軟件開發(fā)者的一個(gè)挑戰(zhàn)耸别,不過我也很確定人們會(huì)發(fā)現(xiàn)這一機(jī)制很多薄弱的環(huán)節(jié)。

這個(gè)特性對(duì)于一些合法的軟件有很多副作用县钥。對(duì)此秀姐,蘋果提供了一種方法使得用戶可以關(guān)閉這個(gè)特性,但這需要用戶以恢復(fù)模式啟動(dòng)(開機(jī)按住Command+R)

如果想了解更多若贮,可以參考蘋果的WWDC session視頻省有。

rootless 的關(guān)閉方法

更新后的關(guān)閉方法,兼容Beta7: (在正式版中一樣有效親試)

  1. 開機(jī)按住Command+R,進(jìn)入恢復(fù)模式谴麦,打開terminal蠢沿,鍵入:
 csrutil disable

回車,重新啟動(dòng)即可匾效。

要重新恢復(fù)舷蟀,只需將disable改為enable

csrutil enable

圖文教程:

  1. 先關(guān)機(jī)

  2. 先按住 command + r 不要松 再按 開機(jī)鍵 (開機(jī)鍵可以送 command + r 不可送)


    Snip20151009_2.png
  3. 之后會(huì)看到系統(tǒng)加載進(jìn)度 (command + r 這個(gè)時(shí)候還是不可以松的)


    Snip20151009_3.png
  4. 見到這個(gè)界面的時(shí)候松開 (command + r)


    Snip20151009_4.png
  5. 打開終端


    Snip20151009_5.png
  6. 輸入


    Snip20151009_6.png
  7. 回車 見到 表示已近成功


    Snip20151009_7.png
  8. 重啟電腦,這樣就可以盡情的使用cocoapods 了

注意:
這兩個(gè)指令已經(jīng)失效弧轧。
這個(gè)是關(guān)閉的指令:

sudo nvram boot-args="kext-dev-mode=1 rootless=0";sudo reboot

這個(gè)是開啟的指令:

sudo nvram -d boot-args && sudo reboot

cocoa pods 不能正常的原因

cocoa pods不能正常使用的在于蘋果開啟了 rootless 導(dǎo)致

/usr/bin

文件夾我們不能進(jìn)行正常的讀寫
如果是第一次在OS X 10.11下安裝 cocoa pod ( sudo gem install cocoa pods)見到的錯(cuò)誤就是

ERROR:  While executing gem ... (Errno::EPERM)       
 Operation not permitted - /usr/bin/xcodeproj

也就是我們沒有權(quán)限操作這個(gè)文件夾xcodeproj 執(zhí)行內(nèi)部的代碼

這個(gè)是我關(guān)閉 rootless 后的效果

Snip20151008_1.png

和在10.10 系統(tǒng)下使用沒有區(qū)別雪侥。不會(huì)出現(xiàn)警告和錯(cuò)誤碗殷。

參考的相關(guān)博客:
OS X 10.11 安裝Cocoapods 出現(xiàn)問題的解決方法
Mac升級(jí)10.11后Xcode的CocoaPods插件報(bào)錯(cuò) 這個(gè)問題也是系統(tǒng)升級(jí)導(dǎo)致的精绎,解決的。
OS X 10.11 安裝Cocoapods 出現(xiàn)有關(guān)問題的解決辦法
關(guān)于 mac OSX 10.11 下 Rootless 模式的一些見解
安裝Cocoapods锌妻, 更新gem出現(xiàn)的問題
stackoverflow 類似問題的解答
OS X 10.11中Rootless的實(shí)現(xiàn)與解釋以及關(guān)閉方法

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末代乃,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子仿粹,更是在濱河造成了極大的恐慌搁吓,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吭历,死亡現(xiàn)場(chǎng)離奇詭異堕仔,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)晌区,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門摩骨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來通贞,“玉大人,你說我怎么就攤上這事恼五〔郑” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵灾馒,是天一觀的道長茎用。 經(jīng)常有香客問我,道長睬罗,這世上最難降的妖魔是什么轨功? 我笑而不...
    開封第一講書人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮容达,結(jié)果婚禮上夯辖,老公的妹妹穿的比我還像新娘。我一直安慰自己董饰,他們只是感情好蒿褂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著卒暂,像睡著了一般啄栓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上也祠,一...
    開封第一講書人閱讀 51,541評(píng)論 1 305
  • 那天昙楚,我揣著相機(jī)與錄音,去河邊找鬼诈嘿。 笑死堪旧,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的奖亚。 我是一名探鬼主播淳梦,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼昔字!你這毒婦竟也來了爆袍?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤作郭,失蹤者是張志新(化名)和其女友劉穎陨囊,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體夹攒,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蜘醋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了咏尝。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片压语。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡闲先,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出无蜂,到底是詐尸還是另有隱情伺糠,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布斥季,位于F島的核電站训桶,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏酣倾。R本人自食惡果不足惜舵揭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望躁锡。 院中可真熱鬧午绳,春花似錦、人聲如沸映之。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽杠输。三九已至赎败,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蠢甲,已是汗流浹背僵刮。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鹦牛,地道東北人搞糕。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像曼追,于是被迫代替她去往敵國和親窍仰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容