點擊訪問原文
您還可以加入全棧技術交流群(QQ群號:254842154)
在這里收集與開發相關的OS X相關的問題列表。
Operation not permitted
當一個操作需要root權限時,命令前面沒有加上sudo
,通常會報這個錯誤。但是,有時候就算你加了sudo
,有時候也會提示Operation not permitted
。
我最近遇到這個問題是因為把OSX升級到了OS X EI Capitan 10.11。在編譯php的一個so文件時,最后一步提示:
Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20121212/
cp: /usr/lib/php/extensions/no-debug-non-zts-20121212/#INST@826#: Operation not permitted
真是奇怪,我在命令前面輸入了sodu
,而且輸入了密碼,還提示我無權限。進入目錄/usr/lib/php/extensions/no-debug-non-zts-20121212/
,也沒有任何修改文件的權限。
于是我懷疑是最近升級系統的原因。Google之后找到了答案:
http://apple.stackexchange.com/questions/208815/error-configuring-mcrypt-after-upgrading-to-el-capitan
主要是因為OS X EI默認開啟了:
http://arstechnica.com/apple/2015/09/os-x-10-11-el-capitan-the-ars-technica-review/8/
可以把它關閉后再進行自己的操作,之后可以再設置回來。主要是在安全模式(重啟電腦,黑屏后按住?+R直到出現白蘋果)的終端中輸入命令:csrutil disable
關閉SIP。要開啟,輸入 csrutil enable
。詳細設置方法:
https://www.quora.com/How-do-I-turn-off-the-rootless-in-OS-X-El-Capitan-10-11?share=1
升級成OS X 10.12后,“允許從以下位置下載的應用”沒有“任何來源”
升級成OS X 10.12,安裝從別的地方下載來的應用時會提示沒有權限,到系統偏好設置
- 安全性與隱私
- 允許從以下位置下載的應用
里發現并沒有 任何來源
這個選項。需要手動關閉Gatekeeper。在命令行輸入以下命令:
sudo spctl --master-disable
需要注意的是,如果在系統偏好設置的安全性與隱私
中重新選中允許 App Store
和 被認可的開發者 App
,即重新打開 Gatekeeper 后,允許任何來源
App 的選項會再次消失,可運行上述命令再次關閉 Gatekeeper。
Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.
今天打開PhpStorm從svn拉取代碼時,提示:Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.
。第一反應是我的XCode引起的,因為今天有一個比較大的XCode更新。于是打開XCode,按照提示安裝協議后問題解決。或者在終端輸入命令:sudo xcodebuild -license
,按照提示看完協議然后輸入agree即可。
該問題的主要原因是因為XCode的更新需要用戶主動同意某個新協議(agreement),OS X系統的很多軟件都需要依賴XCode。
MAC開啟隱藏文件顯示
出于安全考慮,跟windows一樣,OS X默認情況下是無法看到隱藏文件的。假如有需要,可以開啟隱藏文件顯示。
1、命令行查看
ls -a
這個方法只在命令行中可查看隱藏文件。
2、在終端中輸入命令
//開啟隱藏文件顯示
defaults write com.apple.finder AppleShowAllFiles -bool true
//關閉隱藏文件顯示
defaults write com.apple.finder AppleShowAllFiles -bool false
//重啟finder生效
killall Finder
這個方法會對系統所有文件生效。
MAC開啟Finder中顯示全路徑
在Finder中打開文件夾,默認情況下只會顯示文件夾的名字,有時候不方便在命令行中定位到文件夾。可以通過命令開啟顯示全路徑:
defaults write com.apple.finder _FXShowPosixPathInTitle -bool TRUE;killall Finder
關閉
defaults delete com.apple.finder _FXShowPosixPathInTitle;killall Finder
您需要安裝舊 Java SE 6 運行環境才能打開 XXX
這時需要安裝一個<a target="_blank" >低版本</a>的jvm運行環境。