こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Win・MacでできてLinuxでできないこと

どうしてLinuxではファイルをダブルクリックorドラッグするだけでアプリケーションのインストールをすることができないんでしょうか?
windowsやMacではオフライン環境でもソフトウェアをインストールすることが可能なことが9割以上ですがLinuxでwindowsやMacのようにインストールできることはほぼ皆無です。
Linuxは実質webインストーラしかなく99パーセントのソフトでスタンドアロンインストーラは用意されていません。なぜWin/Macで当たり前にできることがLinuxではできないのか。
情報収集を行う海外の怪しげなソフトや認証のある有料ソフトがオンラインインストール限定ならわかりますが、フリーでOSSのLinuxでそれが主流な理由を教えてください。

投稿日時 - 2012-09-03 07:08:02

QNo.7677887

暇なときに回答ください

質問者が選んだベストアンサー

ただの勘違い。

Windowsにはデファクトスタンダードとなるパッケージ管理システムがありません。
ソフトウェアのインストールと削除を行うツールはありますが…
フリーソフトウェアを中心に、これに対応していないソフトが非常に多く
また機能の重複による問題などを回避する仕組みもありません。
(例:セキュリティソフトの二重導入による異常負荷など)

ですから、Windows用のソフトの配布パッケージは
実行ファイルの形態をとることが少なくありません。

ダブルクリックでインストールできるようにする必然性があり
その最もシンプルな方法が、実行ファイル形式での配布だったわけです。


対して、Linuxでは、パッケージの再編が自由なFLOSSがほとんどですから
パッケージは、debやrpmなどのパッケージ管理システム向けのものが主流です。
パッケージ自体を、実行ファイルとして作成する必然性は無く
これは、素の実行ファイルとして流通しないため、ウィルス感染にも若干強いと言えます。

しかし、debやrpmのパッケージを、拡張子連動によって処理するツールがあれば
普通に、ダブルクリックで処理することができます。

ただ、ほとんどのソフトについてはdebやrpmの形式で
aptやyumのリポジトリーの中に収録されています。

ソースパッケージから、第三者aptやyum向けのパッケージとして再編し
PPAというカタチで、リポジトリーを提供することすら認められています。


ですから、これらは、通常は統合的なパッケージ管理で
選択、ダウンロード、インストール、アップグレードが統合されます。

個別のパッケージを、ダブルクリックしてもインストールすることができますが
それをする必然性が、通常は無いのです。


視点を切り替えると、つまり、aptやyumでインストールできないものを導入しようとした結果
ダブルクリックでインストールできない形態のパッケージを入手することが多い。

だから、そこで勘違いがおきているだけだと思います。


たとえば、Adobe AIRとかCorel AfterShotProなどのパッケージは
debやrpmで配布されていて、ダブルクリックでインストールできたと記憶しています。

逆に、Windows用でも、ダブルクリックでインストールができないものはあります。
フリーソフトでは、zipやlzhのパッケージで配布されるものが多々ありますが
これらは、汎用のアーカイブ管理ツールで展開した上で
別途インストーラーを起動する必要があったり…
あるいは、アーカイブ展開が、実質的なインストール処理となり
無分別に管理していると、HDD容量の浪費や混乱を招くことがあります。



なお、deb形式には、dpkg,apt,aptitude,synapticといったツールがあり
またそれらとは別に、ダブルクリックで処理するためのツールもあります。
rpm形式にも、似たようなソフトが揃っています。

LinuxOSはディストリビューションとして、いくつもの配布元がありますが、それぞれの配布元で
パッケージ管理にdebとrpmのどちらかを使うかが決められています。
(正確には、システムの構成や採用ソフトのバージョンの違いや標準設定の違いなどいろいろ違います)


ですから、この組み合わせが適合しない場合は、ダブルクリックでは導入できません。
普通は、適合する形式のパッケージを探します。

あるいは、ソースから、適合する形式のパッケージを自分で作る手もありますし
いくつかの選択肢や裏技があります。


比較的めんどうくさいことになるのは、ソースからインストールする場合で
ダブルクリックしても、なにもできないか、よくてパッケージを展開できるだけで
そこから何をすべきかわからなくなったりすると思います。

そういう状況は、そうよくあることでは無いと思いますが
それは、ソフト自体がニッチなため、あるいは若すぎるソフトであるため
あるいは、その他の問題があるために起きた、個別の問題と考えられます。



オンラインでのパッケージ管理が一般化しているのは、それが手軽だから。
ダウンロードとインストールとアップグレードとダウンロードを
個別の作業として行うのはめんどうくさいことです。

また、パッケージ管理によって、使用されるバージョンが基本的に一定となり
組み合わせによるトラブルが発生した場合に、検証が効率良く行えます。

このサイトを見るとわかりますが、ほとんどの人は、トラブルが起きているのに
使っているソフトのバージョンを明記しません。
ゆえに「最新版にしていないなら、最新版にしてみましょう」みたいな解答がよくあります。

バージョンが一定であれば、問題がおきるなら、ソースコードから原因が探せますし
また、改善されたコードは、パッケージ管理システムによって、他のユーザーにも告知されます。
新規に導入する人が、改善前のものをインストールしてハマるようなことも回避できます。


まぁ、たしかにインターネット回線が無いと、面倒くさいかもしれませんけどね。
ライブラリーの依存関係が複雑になるのは、それだけ個々のソフトウェアが
部品化を効率的に行なってきた結果で、それはLinuxの美点でもあるのです。

Windowsでは40GBのHDDを食いつぶして、何を消して良いのかわからなくなったりしますが…

Linuxは、普通は10GBもあれば、システムだけなら不足はしません。
それだけ、重複した、余計なコードがHDDに置かれていないことを意味し
つまり、それは複雑な依存関係と共にある美点なのです。


ちなみに、8GBのUSBメモリーにUbuntu12.04LTSを導入して
ネットに繋がるところで、追加ソフトと依存パッケージをインストールすると
一時ファイルとして、/var/cache/apt/archiveにパッケージが保存されます。

まったく同じ構成の、ネットに繋がらないUbuntu機に追加ソフトを入れる場合
そのarchiveディレクトリーに依存するパッケージも揃っているので
ダブルクリックで、それらを全部導入すれば、導入順はあるものの、普通に動くはずです。

ネットに繋がっていない状態でaptを使うとなると
リポジトリー情報のアップデートが必須になるので…
どうやってやればいいのかは知りません。


なお、そういう方法で導入すると、依存関係によって導入されたものを
そうと識別する情報が保存されないので
ソフトを削除しても、不要になった依存していたパッケージを自動削除する機能が働きません。

また、個々のアップデートが繰り返される中で
依存関係が維持できない場合もありえるので、オススメの手段とは言えません。

投稿日時 - 2012-09-03 22:25:01

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:20

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(7)

Macは昔のしか知らないのでパス。あくまでもWindows使いの「感想」を言います。

>どうしてLinuxではファイルをダブルクリックorドラッグするだけでアプリケーションのインストールをすることができないんでしょうか?

専門知識も何もない誰でもインストールできて運用できるようにという「幻想」を前提に作ろうとしているWindowsと、それなりに知識のある人だけが使うという前提の元に作られたLinuxの違い、と理解すれば話は早いんじゃないかな?

もっと言うと、ダブルクリックするだけでインストール(これには実運用を前提とした設定も含みます)が完了することが大前提だと思っているのであれば、WindowsであれLinuxであれ、セットアップとか運用とかをする側ではなくて、「単に使う側」でいた方が幸せかもしれません。

例えばあなた様は、Windows OSそのものであるとか、その上で動作するIISとか、etc.... をインストールした事はありますか?単にダブルクリックするだけでインストール作業は完了しますか?違いますよね。色々と設定内容について聞かれるハズです。その内容に的確に応えるためには、それなりの専門知識が必要とされますよね?

Linuxのありとあらゆるインストーラーがダブルクリックだけで終わらないというのはちょっと記憶にないのですが。百歩ゆずって仮にそうだったとして&インストール後に詳細な設定が必要だったと仮定しても。

WindowsのインストーラーとLinuxのインストーラーでは、システムを構築・運用するとした場合に如何ほどの違いがあるのでしょうか?

最後に一言。私のような管理屋さんは、プログラム(インストーラーもプログラムです)を実行する前にどのようなオプションスイッチがあるのかを事前に調べるのが通常です。むしろ、例えばの話ですが。勝手にCドライブにインストールされるコマンド(インストーラー)をどうすればDドライブにインストールできるのか?と言った事に四苦八苦したりもします。ダブルクリックだけで全てが完了してしまうプログラム(インストーラー)なんて御免被るのが実情だったりします。ましてや後に設定変更も何もできないのなんて問題外です。(くどいようですが、Windowsでのお話。つまりこれはOSの違いじゃないですよ。)

投稿日時 - 2012-09-04 00:00:15

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:14

ANo.5

・インストールしたいソフトに必要なパッケージ等を自分で調べて、それぞれダウンロードして、順番にインストールする
・パッケージ管理ソフトにまかせて、インストールしたいソフトだけ指定して、あとは自動

のどちらでも可能ですよ。後者の場合は、自動化が売りなので、ネットもしくは全パッケージ入りのDVD等が前提になります。で、DVDだと最新版かどうかわからないので、普通はネット上の最新版を自動的にとってくる設定になっています。

Windowsのソフトだと前提ソフトが、.NETフレームワークとか、VBランタイム、VCランタイムなどのように比較的大きい単位のMS製の物の事が多いので、あまり前提ライブラリを意識する必要が無く、ファイルをダウンロードしてクリック一発のように思ってしまうのでしょう。以前は、解凍ソフトだと、各ファイル形式のDLLをあちこちから集めてくる必要のある物もありましたね。

投稿日時 - 2012-09-03 21:31:52

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:24

ANo.4

>windowsやMacではオフライン環境でもソフトウェアをインストールすることが可能なことが9割以上ですがLinuxでwindowsやMacのようにインストールできることはほぼ皆無です。
>Linuxは実質webインストーラしかなく99パーセントのソフトでスタンドアロンインストーラは用意されていません。なぜWin/Macで当たり前にできることがLinuxではできないのか。
それ単純に質問者の力量が無いだけ。
普通にリポジトリからパッケージをDLして来てローカルでインストールできる。

>フリーでOSSのLinuxでそれが主流な理由を教えてください。
パッケージの依存関係の問題があるからリポジトリから直接インストールするのが楽だから。
ただしリポジトリからパッケージをDLしてきて普通にスタンドアローンでもインストール出来る。

投稿日時 - 2012-09-03 12:04:14

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:28

ANo.3

そのアプリをみんなで作っているからでは?
作成環境がオンラインなので、ついでにオンラインで、インストールするのかと。
基本的にはlinuxは、みんなで協力して作る!がベースの考え方なので、スタンドアローンのようなものは、あまり想定してないのかもしれません。
あとは、ソースからコンパイルすることが多いので、色々な種類に対応させるために、実行形式では配布してないからかと。

ただ、私もubuntuですが、圧縮ファイルから入れてるものもありますよ。
どっちかというと、コマンドやオンラインが便利なのでみんなそうしてるだけで、圧縮ファイルからインストールはできるかと思いますが。

基本的には、圧縮してあるものを、ダウンロード。
終わったら、解凍&インストールが、自動に行われてるだけだと思いますが。

開発元のHPで探すか、ダウンロードのみで、止めて、元のソースを保存。
スタンドアローンに移動して、コンパイルすれば、インストールできると思いますよ。
ただ、依存関係がかなり厄介になるきもしますが、その都度対応で。

ソースがスタンドアローンようでしょ。
まぁ、ライセンスの関係や中身を見るためってものあるとは思いますが。

投稿日時 - 2012-09-03 10:24:59

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:34

> どうしてLinuxではファイルをダブルクリックorドラッグするだけでアプリケーションのインストールをすることができないんでしょうか?

ディストリビューションによるかもしれんが、一般的なディストリビューションなら普通にできることだと思うよ。できると思う、というのは無責任なので検証してみよう。

 1. Ubuntu 10.04 LTS で Opera の配布ファイルをダウンロード
 2. ダウンロードしたファイルをダブルクリックする
 3. パッケージインストーラ(GDebi)が起動

という結果。今回はインストールを中止したけど、このまま進めるなら「パッケージのインストール」を押せばいい。

> windowsやMacではオフライン環境でもソフトウェアをインストールすることが可能なことが9割以上ですがLinuxでwindowsやMacのようにインストールできることはほぼ皆無です。

使ってるのが Ubuntu なので APT で話すけど、APT が普及する前はパッケージを入手して(ネットワーク経由とは限らない)、dpkg コマンドでインストールしてた。パッケージは入手済みなのでインストール自体はオフラインで作業できる。

この仕組みは今でも生きていて、APT でインストールしてもバックエンドでは dpkg を実行してる。したがって、昔と同じようにやりたければ dpkg を直接使えばいいだけ。ちなみに、APT でもローカルのパッケージを扱えるからそれでもいいんだけど。

ということで、質問者さんの疑問には「誤解」があると思う。前提が変わってくるので(Linux ではできない → Linux でもできる)、以降の質問には回答しない。

具体的な例(ディストリビューションやインストールしたいプログラムなど)が補足されたら、回答が変わる可能性はあります。

投稿日時 - 2012-09-03 09:03:44

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:39

ANo.1

>>Linuxは実質webインストーラしかなく99パーセントのソフトでスタンドアロンインストーラは用意されていません。なぜWin/Macで当たり前にできることがLinuxではできないのか。

フリーOSですので、OSの環境はさまざま、バラエティに富んでいます。WinやMacのように「メーカが基本をきっちりと決めた構成だけ」じゃあないからですね。
なお、私にとっては、Linux環境でも、スタンドアロンのインストーラのほうが多かったものです。最近は状況は変わったのでしょうね。

そして、WinやMacでも、フリーソフトを導入する場合、オンライン環境でインストールしないといけないケースもあります。これは、そのフリーソフトを導入する環境が整っていない場合に足りないものをオンラインでインストールする必要があるからです。

>>フリーでOSSのLinuxでそれが主流な理由を教えてください。

上記のように、導入環境で不足するソフトを簡単に追加するには、オンラインインストールにするのが、ソフト作成者にとっても、ユーザにとっても簡単だから。

投稿日時 - 2012-09-03 08:33:26

お礼

ありがとうございます

投稿日時 - 2012-09-04 10:32:43

あなたにオススメの質問