する質問をすることでしか得られない、回答やアドバイスがある。34聞きたいことタイトルの通り、なぜMacやWindows上でわざわざLinuxを使用する人が多いのか知りたいです。元々のOSがWindowsやMacOSでありながらわざわざVirtualBoxなどの仮想化ツールを使用してLinuxを使っている人が多く見られます。TextやVim、EmacsなどといったわざわざLinuxを使用する必要性がないものばかりです。Linuxでなくとも元々のOSで問題がないように感じます。彼らはわざわざ仮想化をしてまでLinuxを使用するのでしょうか?attachmentクリップ5気になる質問をクリップするクリップした質問は、後からいつでもマイページで確認できます。クリップした質問に回答があった際、通知やメールを受け取ることができます。自分も答えを知りたい質問者以外のユーザにも役立つ評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。質問の評価を上げたことを取り消します低評価-評価を下げられる数の上限に達しました評価を下げることができません1日5回まで評価を下げられます1日に1ユーザに対して2回まで評価を下げられます質問の評価を下げるteratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。コメントをしてください。送信する質問の評価を下げる機能の利用条件この機能を利用するためには、以下の事項を行う必要があります。TextやVim、EmacsなどといったわざわざLinuxを使用する必要性がないものばかりです。Linuxでなくとも元々のOSで問題がないように感じます。問題はそこではなく、実際にコードを書いて動かすソフトウェアの方です。RailsをWindowsでやろうとすると、Gemによっては「Windowsで動かす環境構築が手間取る」「Windows付属のライブラリが古いのでそのままではうまく動かない」、甚だしくは「Windowsに入れる手順が確立されていない」「Windowsでは新しいバージョンが動かない」など、ローカル環境のためだけに悪戦苦闘しなければならない事態となってしまいます。実際のサーバはLinuxなどUnix系が主流ですので、ローカルでもLinuxを使えば、「ローカル環境でのインストール≒本番サーバでのインストール」となって、ローカルだけのために手間取ってしまうという事態を避けることができます。Android向けの開発のように、真にマルチプラットフォームでできるものは、わざわざLinuxを使うまでもありません。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。commentコメント投稿linkcheckベストアンサー+6LinuxはオープンソースのOSなので、世界中の誰でも利用出来ます。その中には発展途上国等のWindowsやMacが購入出来ない人も含まれています。今日ではUnixに負けず劣らず堅牢であり、構造がシンプルなので軽いOSなのです。絶対に停止してはならないWebサーバ等の用途にはうってつけなわけですね。このあたりの前提知識を元にすればすぐに想像出来ますが、ありとあらゆるサーバやコマンドラインのツールがLinuxに集まってきます。Linuxはサーバ用途の最先端を走っており、WindowsやMacはその成果を移植されるのをただ待っているような状態なんですね。VirtualBoxなどの仮想化ツールを使用してLinuxを使っている人が多く見られます。その結果がこれですね。最近の開発用マシンの流行はDockerですが、DockerもLinuxでしか動作しないツールです。Mac」ではLinuxの超軽量仮想マシンを起動させ、マシン内に中継専用のDockerコマンドを導入したような作りになっています。TextやVim、EmacsなどといったわざわざLinuxを使用する必要性がないものばかりです。ブラウザに関してもほとんどがChromeを使用しておりGUIに比較的近い層はおっしゃる通り、エディタやIDEもWindows、Mac、LinuxとOS問わず動くものばかりです。サーバ用のアプリは前述の通りLinuxが強いのです。従ってGUIに近い層は普段使い慣れているWindowsやMacを使い、サーバーに近い層はVirtualBox越しにLinuxを操る。いう使い分けをしている人が多くいます。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。16:16はったリンクは参考にしたサイトです。すみません、記載が漏れました。リンクは参考にしたサイトです。すみません、記載が漏れました。16:21Dockerは、Linuxの「カーネルより上だけ」仮想化するためのツールです。仮想化がマシンごとではないので、起動が高速などの特徴がありますが、もちろんLinuxカーネルの上でしか動きません。Dockerは、Linuxの「カーネルより上だけ」仮想化するためのツールです。仮想化がマシンごとではないので、起動が高速などの特徴がありますが、もちろんLinuxカーネルの上でしか動きません。16:39動かす部分のみを仮想化するツールってことですね。すると、DockerのためにLinuxを仮想化する必要がありますよね......?高速化できるといえど、なんだかややこしいですね......動かす部分のみを仮想化するツールってことですね。速度面の優位性は殆どありませんね。これは補助的な役割です。大昔から本番環境のLinuxはツール同士の干渉等に頭を悩まされていました。「くそう、本番環境で出る不具合が、ローカルだと再現しない...」このため、WindowsやMacでVirutalBox越しにLinuxを立ち上げ、極力似たような環境を構築するという対策を行いました。それはあくまで似た環境なのであり、AWSなどが用意している環境を100%再現するには至りません。上司に本番環境にVirtualBoxを入れましょう、そうすれば環境の違いを無視出来ますよ!...と進言すると「アホか、オーバーヘッドデカすぎで使い物にならんわ」と頭叩かれます。今回のDockerというかコンテナの技術は特効薬になりえます。殆どオーバーヘッドが出ませんので、ローカルで作った環境をそのまま本番環境へ移植して利用出来ます。本番環境でVirtualBoxを動かすという事をやってのけるわけですね。長い目で見れば開発者は使いこなして当然の技術になることでしょう。AWSなどでDockerのコンテナに対応するサービスはちらほら出始めています。速度面の優位性は殆どありませんね。これは補助的な役割です。大昔から本番環境のLinuxはツール同士の干渉等に頭を悩まされていました。このため、WindowsやMacでVirutalBox越しにLinuxを立ち上げ、極力似たような環境を構築するという対策を行いました。それはあくまで似た環境なのであり、AWSなどが用意している環境を100%再現するには至りません。上司に本番環境にVirtualBoxを入れましょう、そうすれば環境の違いを無視出来ますよ!...と進言すると「アホか、オーバーヘッドデカすぎで使い物にならんわ」と頭叩かれます。今回のDockerというかコンテナの技術は特効薬になりえます。殆どオーバーヘッドが出ませんので、ローカルで作った環境をそのまま本番環境へ移植して利用出来ます。本番環境でVirtualBoxを動かすという事をやってのけるわけですね。長い目で見れば開発者は使いこなして当然の技術になることでしょう。AWSなどでDockerのコンテナに対応するサービスはちらほら出始めています。17:35開発する際にコンテナという技術が有用だということですね。最初の質問からそれてしまいましたが、色々と教えてくださりありがとうございました。開発する際にコンテナという技術が有用だということですね。最初の質問からそれてしまいましたが、色々と教えてくださりありがとうございました。キャンセル完了するlink+5「みんなが仮想環境を使う理由」は、簡単に言えば「タダで手に入る、どんなに汚しても壊しても構わないスペース」だからです。/といった取り返しのつかない行為をしても、あなたのパソコンは無事で、吹き飛ぶのは仮想環境の中だけです。実験をするのにも、新たなサービスを検証するのもいいですね。仮想環境を分ければ、お互いにインストールしたものが競合することもありません。PHPやApacheのバージョンも仮想環境ごとに分ければ1つのPCに無理やり別バージョンを併用する必要もありません。「みんなが仮想環境にLinuxを選ぶ理由」はタダで手に入るからです。世の多くのサービスはLinuxで動かせるようになっているからです。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。commentコメント投稿link+4Linuxな理由は環境構築で無駄にハマることが少ないから。Linuxなら管理者用コマンドひとつでインストールできるソフトウェア(ライブラリ)が、Windowsに入れようとすると大変、というのが普通だからです。(こちらはすでに回答がついているとおり)仮想環境なのには、動画収録や環境構築のテスト(動画の準備として当然やりますよね)などでは大きなメリットがあります。なにか失敗して最初からやりなおす時に、ボタン1つ押せば元の状態に戻せるのが楽だからです。気づいたとしましょう。時に、Aをやる前と完全に同じ状況に戻すまで、実ハードで動いているWindwosやMacでどのぐらい時間と手間がかかりますか?仮想環境ならボタン1つで、大抵は数秒、かかってもせいぜい数分でしょう。動画を見ていてそう思ったのでしたら、後者の理由は大きいと思いますよ。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。commentコメント投稿link+1正直Linuxでなくとも元々のOSで問題がないように感じます。すべての仕事がWindowsでできるわけではありません。巷に溢れかえっているネットサービスやWebアプリを動かしているサーバーの多くはLinux(を含むUnix系OS)だったりします。その手の仕事をしている人たちにとってはホームグラウンドはUnix系なので、たとえWindowsマシンを所有していたとしても、使い慣れた環境を手元に置いておくためにLinuxを入れるのです。趣味あるいは研究用にLinuxを使うケースも多いと思います。Windowsでの開発は、基本マイクロソフトが提供する開発ツールを利用するわけですが、提供元の都合もあり、プログラミング言語の仕様が改訂されて新しい機能が追加されても使えるようになるまでにタイムラグが生じます。Linuxでは、実験的にいち早く導入するということが広く行われているため、新しい機能をすぐにでも試したいという人たちがLinuxを使うのです。それと関連して、いろいろいじりたいけどリアルな環境を汚したくない、というときにも仮想マシンを利用することがあります。仮想マシンなら、たとえ起動できなくなる程いじくり回してもOSを再インストールすれば済みますし、スナップショット(あるいはチェックポイント)などの機能をうまく利用すれば、即座に元に戻せます。ネットワーク絡みの実験をしたいときは、あたかも複数のマシンが存在するかのように振る舞う仮想マシンの利用は必然です。そのような利便性を求めて仮想マシンを利用する向きはかなり多いと思います。Windowsだと仮想マシンごとにライセンス(要するにWindowsの購入)が必要ですが、Linuxは無料ということもあり、自然とLinuxを利用するようになる、ということだと思います。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。commentコメント投稿link0WEBサービスを公開する時に使うサーバーOSはLinuxが多いです。自分のPC(Windows)で動作確認したい場合にVirtulBoxにLinuxを入れておけば簡単に動作確認できます。試しに使ってみようという場合にもVirtulBoxは便利です。僕のPCのVirtulBoxにはCentOS6と7、FedoraとUbuntuが入っています。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。頂いたご意見への回答は行っておりません。