なんでLinuxのディレクトリ構造はあんな複雑なの? [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
>>36
ぜんぜん違うぞ
Windowsはアプリごとにディレクトリが別れていて
そのアプリ(の一部)のショートカットが
スタートメニューに現れているだけ
そしてパス指定せずにコマンドだけで実行したいなら
PATHにアプリのディレクトリを追加する
Linuxの場合は、コマンドを実行するためにPATHはいじらず、
PAHTが通っている所にコマンドをコピーする。
だから消す時大変 。それがどのアプリのコマンドかわからない
アプリごとディレクトリを分けてPATHに追加するようにしていればよかったんだが >PAHTが通っている所にコマンドをコピーする。
>だから消す時大変 。それがどのアプリのコマンドかわからない
シンボリックリンクにしとけばええやん >Windowsはアプリごとにディレクトリが別れていて
>そのアプリ(の一部)のショートカットが
スタートメニューに現れているだけ
linuxもそんな感じになってるだろ
binディレクトリに置いてあるのはアプリの一部のリンクだけ
それもシンボリックリンクなら
消すときもアプリのディレクトリをそのまま消せは良いだけになる >>39
へー、じゃあなんのアプリ見ればいい?
参考にFirefoxでも持ってくるね
https://packages.debian.org/ja/stretch/amd64/firefox-esr/filelist
/usr/bin firefoxなどのコマンド
/usr/lib/ よくわからんのいっぱい
/usr/share/applications/ firefox-esr.desktopとかいうの
/usr/share/bug/ ?
/usr/share/doc/ ドキュメント
/usr/share/ よくわからんのいっぱい
/usr/share/icons アイコン
/usr/share/man/man1/ ドキュメント
/usr/share/pixmaps/ ?
これだけのディレクトリにバラけてインストールされる Linuxは一時的に入れて消したいとき困るんだよな
そのために/optがあって/etc/ld.so.confがある windowsアプリもインストーラー使って入れれば
ProgramFilesディレクトリとスタートメニューとデスクトップとレジストリと
あちこち色々なところに散らばって入るやん >>40
shareについては他のアプリからも使われるものなんだから
当然といえば当然じゃね
アイコンとかいろんなアプリから必要じゃん
あと.desktop はwindowsで言うところのショートカットだぞ >>43
Windowsの場合、アプリ本体(ドキュメントなども含む)が
入るのはProgram Files以下の一つのディレクトリ
スタートメニューもデスクトップもそこへのショートカットに過ぎない
レジストリに至っては、ただの設定ファイル相当
ホームディレクトリ以下のドットファイルだよ >>44
> shareについては他のアプリからも使われるものなんだから
share以下の何が他のアプリから使われるの? windowsアプリだって全然纏まってなんかいないっての
アマチュアの公開してるインストーラーも無いようなフリゲーなんかだと纏まってるだろうが
そうでないちょっと大きめのアプリなんて
インストーラーがあちこちに色んなもん散らかすやん
インストーラーで入れたアプリは手動で消さないだろ 逆の例として
GNU IceCatのバイナリ配布版
これはインストーラーも無いしパッケージでもないから
そのままフォルダのまま使えるぞ
消すときもフォルダ消すだけ
設定ファイルはユーザーのディレクトリに作られるが
それ以外は何も無い >>45
そうでもないっての
例えばVisualStudioなんか
ProgramFilesとProgramFiles(x86)に別のフォルダが別れて入ったりするし
大量のdllなんかも入れまくるだろ >>46
アイコンの例を挙げてるだろ
例えばウィンドウマネージャーとかシステムモニターがアイコン表示したいときに必要になる >>49
Visual Studioはメタパッケージみたいなもんだよ
複数のパッケージの集まりだからそうなるってだけ
Linuxは一つのパッケージの内容がバラバラに保存される >>51
VC++だけでも
コンパイラとGUIとあと他のツール類と
それぞれ別々にバラバラに配置されるんだがな
これらを別のパッケージだから分けてるって言えるなら
Linuxのほうだって同じように言えるだろ Program Files以下にサブディレクトリ作るWindowsのほうが素直って言えば素直だね。
ディレクトリ配置に変な小細工しないだけスッキリしてる。 /binと/usr/binの区分けはよくわからんな
あと/usrはもう/userでいいんじゃないかと思う 大雑把に言えば、/binはOSやFHSが決めたコマンドがある。原則ユーザーが増やしたり出来ない。どのユーザーでも使えるコマンド群
/usr/binは一般的なコマンドの置き場所。コマンドマネージャー(aptなんか)で増やしたりもできる。ただ、緊急時やシステム保守に使うようなコマンドは置かない。 WindowsもProgram Filesに全部置くんじゃなくて、管理用のアプリケーションはwindowsとか、systemに起きてるだろ。
一個のディレクトリに全部置くなんて発想は昔はないよ。検索に時間がかかりすぎる。 >>55
いまどき/usrがNFSにあることもないだろうし
/binが/usr/binへのシンボリックリンクになってる環境もあるね
http://poppycompass.hatenablog.jp/entry/2017/12/21/004636
/usrは別に変える必要なくね 割とWindows使ってる人もLinux使ってる人も的はずれなレスが多いから以下のURL見てくれ。
https://qiita.com/yuba/items/669f718fe6e62dbaab19
俺はFHSのほうがまだ直感的でいい。binはバイナリー、libはバイナリーだし。Windowsの重くなる原因はレジストリだったりするし。
複雑に見えるのは全部見せてるからで、Windowsは見せやすいところしか見せないから複雑に見えないだけで、Windowsのほうがもっと複雑だろ。 >>58
archは管理上シンプルにするためにシンボリックリンクにしてる。でも万一ハードコードがあるといけないんで、動かせないんだろう。
運用上で区分け必要だろうってこと。 >>61
すまんただの表記ゆれだ。FHSによるディレクトリの区分けのこと。 「/binは残しとかなきゃいけない」っていう話?
別になくす必要もなくね >>52
的外れだなぁw
Linuxの場合は、共有する決められた場所っていうのが
たくさんあってバラバラに配置しかないって話なんだが >>59
すまん誤字
>libはバイナリーだし
libはライブラリーだ。 ■ このスレッドは過去ログ倉庫に格納されています