/usr/bin/ と /usr/local/bin の違い
[urlpreviewbox url=”https://teratail.com/questions/59452″/]
上記のteratailは完全に僕自身の質問なのですが
要約すると、cocoapodsをインストールする際「ルートレス機能」で /usr/bin/ にアクセスが出来ない
だから、 /usr/local/bin にアクセスしてルートレスの影響を受けずにcocoapodsを使おうってことなのですが
そもそも/usr/bin/ と /usr/local/bin の違いってなんだろうって話で
エンジニアとして「なんで動いてるのかわからないけど動いてる」っていう状況は、あんまり承知したくないですよね
ちゃんと理解したい… ということで調べて、聞いて、考えて、納得しましょうということです
まあ、色々考え、僕なりに納得した結果はですね
teratailで回答してくださった @HiroshiWatanabe さんの回答が分かりやすいと思いますよ↓
/usr/bin/ はOSに標準的に最初から入っている ls とか cat とかのツール類が入ってる場所で
/usr/local/bin/ は自分が後から追加で組み込んだツール類等(apacheとか)を入れる場所
まあ要は、結局 /usr/bin/ と /usr/local/bin も /bin であることは変わらないんですよ
だから、 /usr/bin/ に ls コマンドがあろうが /usr/local/bin にls コマンドがあろうが
実行できることに変わりはないし、実行される結果も変わらない
だから、別にどっちでもいいんですね別に。
でも、今この状況は、sudo権限でもルートレス機能が原因で
/usr/bin/ にアクセスできないのでインストールできないってことであり
ルートレス機能を無理やりリカバリモードとかで無効にするくらいだったら
/usr/local/bin にインストールしてしまえば、
ルートレスの影響を受けずにコマンドが実行できるよってことでした