OS X 10.11 El Capitanのインストーラーには”/bin”や”/usr”などシステム保護ディレクトリにあるファイルやコマンドを移動してしまう機能があるので注意してください。詳細は以下から。
本日、OS X 10.11 El Capitanのレビューが解禁され、様々なレビューが公開されていますが、Ars TechnicaのAndrewさんのレビューを読んでいたところ、AppleはEl Capitanのインストーラーに新たに導入されたシステム整合性保護(SIP)機能”Rootless”に関する面白い機能を実装しているようです。
非Apple以外のファイルを移動
その機能とは「El Capitanのインストーラーには、古いOSからアップデートするさい、Appleが新たに導入するSIPで保護するディレクトリから非Apple製のファイルを探しだし” QuarantineRoot”というディレクトリに移動させる」というもので、
When upgrading to a version of OS X that supports System Integrity Protection, the system migrates any existing third-party content as part of its installation process. The installer takes the existing system, moves it to a temporary location, and writes the new system to the root volume.
[File System Protections – Apple]
試してみましたが、確かにQuarantineRootディレクトリに今まで”/usr”や”/sbin”, “/System”ディレクトリを利用していたサードパーティアプリのドライバやフレームワーク、X11R6のエイリアス、man、フォント、dyldなどが移動されていました。
When upgrading from previous versions of OS X to El Cap, any and all non-Apple files found to be residing in those directories will be picked up and moved to /Library/SystemMigration/History/Migration-(some UUID)/QuarantineRoot/—which will almost certainly render whatever application or piece of hardware that depended on those files nonfunctional.
[OS X 10.11 El Capitan: The Ars Technica Review – Ars Technica]
Ars TechnicaではこれによりEl Capitanにアップデート後、動かなくなるアプリケーションやハードウェアが出てくると予想しており、さらにこの情報はAppleが開発者向けに公開している情報とは違うと指摘しているので古いOS Xからアップデートされる方は注意して下さい。(GM版ではQuarntineRootに移動されましたが、リリース版ではPriviousSystemsに設定されているかもしれません)
- Appleの情報 : /Library/PreviousSystems
- 実際 : /Library/SystemMigration/History/Migration-(some UUID)/QuarantineRoot
(Correction: We originally listed /Library/PreviousSystems as the SIP third-party migration target, since that location was the one given in Apple’s prerelease developer documentation for SIP, but this is incorrect. The correct location, complete with a randomly-assigned UUID, is now shown above.)
[OS X 10.11 El Capitan: The Ars Technica Review – Ars Technica]
関連リンク:
コメント
なんでこういう勝手なことするんかな?Appleは。
UNIXとして売り込むのはやめたのか?
せめてちゃんとアナウンスしろよ。
今後はAppleの認めたバイナリ以外は移動すると。
地雷の予感…しばらく様子見かな
*1
MacはUNIXベースだったからよかったのにね〜
これじゃあここまでやられるとカスタムOSすぎてPOSIXの意味すらなくなってくる気がする…
外部アプリの除去が楽になっていいと思うけどな
ていうか仕様変更にキレてるならAppleの製品使うのやめたほうがいい、ていうかうざいからやめてくれ。
OSX以降、曲がりなりにもオープンソース指向で来て、UNIXであることを売りにしてた面もあったのに、ここ数年は一気にクローズ指向に向かいつつあるんだから文句の一つも言いたくなるさ。
“普段使いしやすいUNIX”として使ってる人も一定数いるだろうし。
仕様変更はいいんだよ。その変更を告知しないのがAppleの悪いところ。
ここが治らないかぎりMacが主流になることは絶対にないと断言出来るくらいの悪癖だよ。
ちなみに、アプリの削除は別に楽にはならんよ。
usr/binやLibraryの下にごった煮状態で各種アプリのファイルが散らばるのには変わりないから。
*1
*3
El CapitanはUNIX認証取得済みですよ
ttp://www.opengroup.org/openbrand/register/brand3612.htm
UNIXとして使うことが多い自分としては、これは歓迎かな。
もともと/binや/usrに自分で入れることはないけど、たまに変なことしているやつとかあったりしたら嫌だから
その可能性が減るってだけでも安心して使える。