なんでLinuxのディレクトリ構造はあんな複雑なの? [転載禁止]©2ch.net
一つのアプリを、あちこちにばらまくって
仕組みが駄目だった。
一つのアプリを一つのディレクトリに入れるようにすれば
/binとか/sbinとか/usr/binとか/usr/sbinとか迷うことなく、
/programs以下とかに全部入れられた。 むしろわかりやすいだろ
>>6
Winblows? >>2
お前が削除依頼だせ
自治する気あるのか
ないなら出ていけ ディレクトリ構造を再定義したLinuxディストリビューション
Gobolinux
http://www.gobolinux.org/index.php
というのはがあったけど、普及しなかった。
Linuxのディレクトリ構造が最初からこのように設計されていたら... https://ja.wikipedia.org/wiki/GoboLinux
によると
/Programs
/Users
/System
/index
/bin
/include
/lib
/share
/Environment
/Tasks
/Settings
/BootScripts
/Variable
/tmp
/Kernel
/Boot
/Devices
/Modules
/Objects
/Status
/Files
/Mount
/Depot
直観的にわかりやすい構造 あ、アップしたらインデントがすべて消えてしまったw >Linuxのディレクトリ構造が最初からこのように設計されていたら...
LinuxはUNIXモドキとして生まれてきたOSなんだから
そんな未来はありえない >>10
実はそれに近い構造はWindowsだったりするw
Usersとかまんまだしな。 Cドライブ = / と読み替えるといいよ。
そして、その他のドライブ = /mnt以下 OSXはBSDベースだけあってそこそこ綺麗に纏まってるぞ /Programs
/Users
/System
├ /Index
├ /bin
├ /include
├ /lib
└ /share
/Environment
/Tasks
/Settings
└/BootScripts
/Variable
└ /tmp
Kernel
├ /Boot
├/Devices
├/Modules
├/Objects
└/Status
/Files
/Mount
/Depot 複雑なのはいいんだが、ディストリビューションごとに違うそれは
複雑から混沌を生み出している。 ディレクトリ構造なんか見ずにAndroidのように使うのが正解 Linuxディストリ全般
とりあえずなんでもかんでも /usr/bin にぶち込むのやめろよ
コンソールアプリなのかGUIアプリなのかわかんねーじゃねーかよ
少なくとも /usr/X11R6/bin を復活させろ
じゃなきゃBSDから戻ってやんねーよ? 仮にスタートメニューに、コマンドが全て羅列されたら
酷いことになるだろうね。 windowsとはソフトに対する考え方が違うからな。
winは1つのソフトで一連の仕事が完結するように作る。
linuxは1つのソフトで1つの仕事をするように作る。
仕事が決まっているライトユーザーはwinの方が便利だけど
ちょっと変なことをしたいオタクはlinuxで仕事を組み合わせる方が便利だと感じる。 >>20
でもあれはいざという時に画像ファイルがどこにあるのかわからなくて困る
さがすのに非常に苦労するから嫌い 誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
KHQ4AGHP94 僕の知り合いの知り合いができた副業情報ドットコム
関心がある人だけ見てください。
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
QBPDH set path=(/usr/local/*/bin)
って感じはできないの。 >32
PATH=$(find /usr/local -type d -name bin | tr "\n" :) >>32
そんなことするほうが気持ち悪いやん
アプリケーションのセットは/usr/lib 辺りに纏めてあって
/usr/bin にはリンクか実行ファイルが一つだけとか
そうやって配置してあるアプリケーション割とあるだろ >>25
windowsだって結局は
パス通ってる所とかスタートメニューフォルダに
ショートカットなんかが全部ぶち込んであるだけなんだよな
いちいちエクスプローラからアプリケーションのフォルダまで行って実行するわけじゃないし
そんなんでいいならlinuxだって同じようにできるし >>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の場合は、共有する決められた場所っていうのが
たくさんあってバラバラに配置しかないって話なんだが