• 締切済み

LinuxにおけるWindowsフォルダ的なディレクトリは何ですか

もし、Windows用ソフトをLinuxに移植するとしてWindowsフォルダを Linuxではどこのディレクトリに置き換えると一番適切でしょうか。 (需要や利用価値などは関係なくあくまでWindowsフォルダに一番近い 役割のディレクトリが知りたいという意味です) プログラムなどが入っているので /bin か /usr/bin や /sbin 辺りでしょうか。 (これらはどちらかというと %programfiles% っぽいですが) ついでに システムフォルダ(%windir%system32 など)とかも 分かると助かります。

みんなの回答

回答No.4

>もし、Windows用ソフトをLinuxに移植するとしてWindowsフォルダを このような発想もわからないでも、ないですが移植の基本は、「そのシステムに順ずる」です。 で、なければ移植の意味がありません。移植先のシステムに適合するのが目的で、Windows流を持ち込むと必ず失敗します。これは営業とか、市場調査等、意見でWindowsの時と使い勝手を同じにして欲しいと言う要望が大きい事にありますが、これは単にGUIの使い勝手だけを意味しています。移植したソフトの大抵は、次のバージョンのリリースは無くなってゆきます。そのソフトの寿命ですね。 逆に最初からマルチプラットフォームを考えて作るソフトは、その後もリリースが重なってゆきます。 結局、Windows流を持ち込むと、Linuxユーザーからはそっぽを向かれ、新規ユーザーの獲得に失敗します。これはMacでも同じです。いい例がPhotoShopなどですね。MacユーザーがWindowsのPhotoShopに移りませんね。逆にWindowsのPhotoShopユーザーは、Macでの使いやすさを、多く感じます。 これは移植に失敗した例です。今ではWindowsユーザーもたくさんいますが、そのユーザーたちは最初からWindowsに接したユーザーがほとんどです。 話を戻しますが、マルチプラットフォームができるJavaなどのシステムをまねるといいでしょう。 UNIX系では通常、3つぐらいにデフォルトでパーティションが設定されますね。 /usr /home /swap、etc 2つの場合もありますが、やはりそれぞれに意味があるわけです。で、Javaなどは /usr/java などですね。/usrの下はシステムファイル等OSに係わるファイルが格納されるわけです。 /etc でもかまいませんが、こちらはどちらかと言うと、設定ファイルなどです。 でお勧めは /usrの下に任意のフォルダーで作成です。他のフォルダーにはシンボリックリンクで作成。 /usr 以下をls -lなどで見るとわかると思いますが、シンボリックリンクや他のパーティションのマウントなど、この下がシステムのHomeになっています。/binは/usr/binのリンクになっています。

  • notnot
  • ベストアンサー率47% (4843/10252)
回答No.3

Linuxのディレクトリ構成はOS(ディストリビューション)で多少異なりますが、どの場合も、目的によってディレクトリを分けているので、WINDOWSフォルダのような、なんでもごっちゃ混ぜというようなディレクトリはありません。「存在しない」が答えです。 パッケージシステムを使ってインストールしてもらう場合は、そのパッケージシステム毎にファイルのインストール先の作法がありますので、それに従う。 ソースで配布して、make(コンパイル)してインストールする場合は、configureというプログラムを使って、そのOSに合った場所を調べてインストールするためのMakefileを生成します。

  • vaidurya
  • ベストアンサー率45% (2714/5983)
回答No.2

Windowsディレクトリーの役割がそもそも何か?という話にもなりますし Linuxでのソフトウェア管理のルールがあるのに 独自ルールでソフトウェアを開発することもナンセンスだと思います。 歴史的経緯から考えると、UNIXではOSがディスクを管理し ごく一部…つまり/homeだけを個人の領域としたのに対して FDという個人の領域の延長線上にHDD導入が行なわれたMS-DOSでは 個人のディレクトリーを一つに制限することは運用ルール上受け入れがたく ドライブレターシステムの限界もあって不可能。 ゆえに、逆にOSのディレクトリーをWINDOWSディレクトリーに集約したと言えます。 実際、WINDOWSディレクトリーに、サードパーティーアプリケーションのための 設定ファイルなどが組み込まれるのが普通なのだとしたら WindowsでのHDD管理は、アホみたいに面倒くさいものに見えます。 UNIX系のOSでは、ライブラリーのためのディレクトリーが存在し (これはUNIX系でも一定ではなく、Linuxの中でも多少の違いがある) 設定ファイルは、/etc以下に置かれるのが通例です。 さらに、ユーザー個人ごとの設定については それぞれのホームディレクトリー下の"."ではじまるドットファイル あるいは"."ではじまるディレクトリー内に保存するようになっています。 この運用ルールがあるため、lsコマンドなどは 標準状態では"."で始まるファイルを表示しません。 オープンソースのものでは、多くの環境での動作を期待し、ソースからの導入を簡単にすべく make installやmake uninstallのためのスクリプトがソースに添付されています。 これらのスクリプトに、必要なファイルの保存場所(コピー先)が記述されています。 バイナリーでの導入に限定する場合は、debかrpmについて理解する必要があるかもしれません。

  • ann_dv
  • ベストアンサー率43% (528/1223)
回答No.1

LinuxシステムでWindowsフォルダに該当するようなディレクトリは「無い」と言うのが厳密な答えになります。 単純にフォルダの参照先を変更した所で、WindowsのソフトウェアをLinuxに移植できる訳ではありませんので、Windowsを何処に置き換えるべきかを意識する必要は無いように思えます。 Linuxシステムにおける各ディレクトリの利用目的は、参考URLをご確認下さい。

参考URL:
http://www.atmarkit.co.jp/flinux/rensai/theory02/theory02a.html

関連するQ&A

  • linuxコマンドについて

    かなりのLinux初心者です。ですので本文中にも間違いがあるかもしれません。 Linuxのコマンドで、各コマンドというのはbinとかsbinの中にあるんですよね? そしてpathが通っていないと、/usr/local~とすべて記述しなくてはいけませんよね? そこで、質問です。 今、bin内にあるコマンド(who)をあるディレクトリで実行したい時、このpathの通し方を教えてもらいたいのです。 次の質問は、例えばwhoコマンドがどこのフォルダ(binやsbin)内にあるか分からない時、探し方を教えてもらいたいのです。 宜しくお願いします。 なにぶん初心者なので説明に不十分なところがあると思いますが、その時は補足要求してください。

  • ディレクトリ名はどんな略称から?

    ディレクトリ名のの略称とと役割に関して質問です。 LinuxおよびUnix系のディレクトリ名やコマンド名は英語の略称 が元になっているものが多いと思います。 しかし、その元となっていると思われる単語と実際の役割が 結構ずれている気がするので、「自分が、”元となっている単語” と思っているもの自体が間違っている」のではないかとも思います。 下記はルートディレクトリの役割 http://www.atmarkit.co.jp/flinux/rensai/theory02/theory02a.html に対し、→で自分の予想の単語を書き出したものです。 /   ルートディレクトリ ├ /bin 基本コマンド → バイナリ binary ├ /etc 設定ファイル → その他 etc. ├ /sbin システム管理用コマンドなど → 特権コマンド super user bin ├ /usr 各種プログラムなど → ユーザー user └ /var 変更されるデータ    → 変数 variations こうしてみると、 設定が”その他”とか 各種プログラムが”ユーザー”とか ちょっと感覚的にしっくりこないものが多いです。 Linux/Unixのディレクトリ構成は歴史的な流れの中で 当初の役割が変わってしまったのかもしれません。 歴史的な経緯や、慣習に詳しい人 このあたりにことを解説していただけると助かります。

  • Linuxのディレクトリへのファイル展開

    Linuxのディレクトリへのファイル展開 クロスコンパイルなどで、debパッケージのツリー構造のままコピーしたいんです。 例えば、展開したdebパッケージの~/temp/usr/bin/xxxを~/arm/rom/usr/bin/xxxに コピーする。あるいは、ディレクトリが無ければ、ディレクトリごとコピーする なんてことが必要になりますが、これを自動処理することはできないでしょうか? あるいは、自動処理のMakefileを自動で作るとか

  • LINUXサーバーについての質問です。

    LINUXサーバーについての質問です。 http://qiita.com/suin/items/5c4e21fa284497782f71 上記サイトのシェルスクリプトの42行目の PATH=/sbin:/usr/sbin:/bin:/usr/bin は何を意味してるのでしょうか? このシェルスクリプトのファイルの置かれているパスですか? そうであれば、シェルスクリプトには必ずパスを記入するものでしょうか? 教えてください。

  • LinuxにPHPをソースからインストールできない・・・

    Linuxを四苦八苦しながら触り始めて、一週間となります。 会社のLinuxにPHPをインストールしようかと思ったのですが、コンパイルエラーからなかなか進めません。 Linux Red Hat Enterprise Linux 4 RPM httpd httpd-2.0.52-9.ent httpd-devel-2.0.52-9.ent httpd-suexec-2.0.52-9.ent system-config-httpd-1.3.1-1 httpd-manual-2.0.52-9.ent RPM版のPHPは既にアンインストール済みです。 mysqlはソースでインストール済みです。 apxsの場所 /usr/sbin/apxs # perl -v This is perl, v5.8.5 built for i386-linux-thread-multi $PATH確認 /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin ソールからインストールしたいPHPは4.4.6です エラー内容 # ./configure --with-apxs2=/usr/sbin/apxs (中略) Configuring SAPI modules checking for AOLserver support... no checking for Apache 1.x module support via DSO through APXS... no checking for Apache 1.x module support... no checking for mod_charset compatibility option... no checking for Apache 2.0 filter-module support via DSO through APXS... no checking for Apache 2.0 handler-module support via DSO through APXS... Sorry, I cannot run apxs. Possible reasons follow: 1. Perl is not installed 2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs 3. Apache was not built using --enable-so (the apxs usage page is displayed) The output of /usr/sbin/apxs follows: Can't exec "/usr/bin/apr-config": No such file or directory at /usr/sbin/apxs line 48. Use of uninitialized value in scalar chomp at /usr/sbin/apxs line 53. -O2 -g -pipe -m64 apxs:Error: /usr/bin/apr-config not found!. configure: error: Aborting apr-config がない(?)と言われているようなのですが、aprを探したところなさそうです。 aprをインストールすればいいのでしょうか? ネットで探してみたのですが、解決方法はなかなか見つからず・・・。 できれば、apacheはこのまま使用したいのですが。 なにか解決法やアドバイスがあれば、よろしくお願いいたします。

  • linuxのフォルダと配置について

    linuxのフォルダと配置について そんなもの好きに配置すれば良いというのは分かっているとして。。。 windowsの場合、 ユーザー毎のモノはDocuments and Settingsに プログラムはProgrm Filesに その他は適当に適切な場所へ という使い方が一般的な形ですが、 linuxの場合、どうなのでしょうか? ユーザー毎のモノはhomeに それから、、、 プログラムはusrに入れるのが良いのか?それともvarか? この辺りがわかり辛いです。 同じデータベースソフトのデフォルトでも mysqlは /var/lib/mysql/ postgresは /usr/local/pgsql/ と、割れています。 くどいようですが、 そんなものただのデフォルトなので好きに配置すれば良いというのは分かっています。 varとusr、またその他の決まりモノのように存在するフォルダのあるべき考え方、使い方を教えてください。 個人的な印象では varはログやデータなどの置き場、 usrはアプリのインストール場所 という感じがします。 mysqlはデータをvarに置きつつも、コマンドは/usr/binにあります。 postgresはアプリのインストール場所についでにデータの置き場つくったって感じでしょうか。 あと、自作でプログラムやシェルを作った場合、 var、usr、home、その他 どこに置くのが妥当でしょうか?

  • sambaでLinuxからWindowsフォルダマウント時のフォルダ権限

    turbo linux 6.5からWindows2000上の共有フォルダを smbmount でマウントし、参照できるようにしました。 このときマウントしたフォルダの権限がマウント前は777なのに、755になってしまいます。 root権限をもたないユーザから、共有フォルダ上に ファイルを作成したいのですが、このためにできません。 smmountのオプションにdmask=777を付加してもだめです。 swatでsambaのパラメータに directory mask=0777 force directory mask=0777 も設定(再起動)してみましたが、やはり755になってしまいます。 ウィンドウズからのlinux上の共有フォルダへのアクセスもできています。 なにか、見落とし、勘違いなどありましたら、ご指摘ください。 よろしくお願いします。

  • VB6でOSごとのシステムディレクトリを求めたいです。

    VB6でOSごとのシステムディレクトリを求めたいです。 Windows95,Windows98,WindowsME,Windows2000,WindowsXP,Windows2003 Windowsの各エディションのsystemディレクトリをVisualBasicで取得したいのですが 何かスマートな方法はありますか? 私はXPしか持っていないので、他はわかりませんが、 %windir% と %OS% の環境変数を見れば判別できそうですが、 i%OS% = "WINDOWS_NT" なら   システムパス = %windir% & "\\system32" それ以外は、   システムパス = %windir% & "\\system" で、良いのでしょうか? Windows2000はsystem32だったような・・・・  それ以外はわからないので 詳しい人教えてください。 他にスマートな方法があるのでしたら、そちらもお願いします。

  • パス(PATH)の設定ファイルについて

    OSはRed Hat Linux 9 を使用しております。 また、シェルはbashを使用しております。 ユーザがシステムにログインする際は、通常ですと /etc/profile ~/.bash_profile ~/.bash_login ~/.profile ファイルを読込、パス(PATH)の設定を行うと思いますが、 sshでrootユーザでシステムにログインした際は、 「echo $PATH」の結果は以下でした。 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/sbin su -で再度rootユーザでログインした際、もしくは、他ユーザからsu -でログインすると 「echo $PATH」の結果は以下でした。 /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:/root/bin:/sbin ログインの仕方でパス(PATH)に違いがあります。 また、「/usr/local/bin」をパス(PATH)として設定している記述が 上記ファイルに見当たりません。 http://sakaguch.com/PastBBS/0038/B0018808.html http://oshiete1.goo.ne.jp/kotaeru.php3?q=800405 等のサイトを参考に、以下ディレクトリ配下を確認しましても /etc/profile.d /etc/rc.d/init.d /etc/rc.d/rc3.d 「/usr/local/bin」をパス(PATH)として設定している記述が 見当たりません。 ログインの仕方でパス(PATH)に何故違いがあるのか、 また「/usr/local/bin」をパス(PATH)として設定している記述がある ファイルをご存知の方ご教授頂きたく思います。 宜しくお願いします。

  • Debian Linuxでzip: command not found

    Debian Linuxでzip: command not foundエラー。 LinuxコマンドでZIPファイルを作ろうとすると、 エラーが発生してしまいます。 zipコマンドをインストールしたいのですが、 インストールコマンド(rpm? apt-get?)がわからず、 インストール用ファイルもWebから見つけられませんでした。 OSはDebian GNU/Linux(Debian 5.0 lenny)です。 WindowsVistaにダウンロードしてきた時に特別な方法を使わず解凍できれば、 ZIP形式にはこだわりません。 zipコマンドを使える方法について詳しい方がいましたら、 教えていただけますでしょうか。 -------------------------------------- # zip test_201010.zip *.gz -bash: zip: command not found # whereis zip zip: # apt-cache zip E: Invalid operation zip # echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin --------------------------------------