質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Q&A

解決済

MacやWindows上でわざわざLinuxを使用する理由

task4233
task4233

総合スコア104

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

6回答

2グッド

10クリップ

39768閲覧

投稿2018/01/31 06:28

##聞きたいこと
タイトルの通り、なぜMacやWindows上でわざわざLinuxを使用する人が多いのか知りたいです。

というのも、Youtubeでtutorialなどの動画を見ていると、
元々のOSがWindowsやMacOSでありながらわざわざVirtualBoxなどの仮想化ツールを使用してLinuxを使っている人が多く見られます。

その動画の中で使用しているエディタはOSに依存しないSublime TextやVim、EmacsなどといったわざわざLinuxを使用する必要性がないものばかりです。

また、ブラウザに関してもほとんどがChromeを使用しており、
正直Linuxでなくとも元々のOSで問題がないように感じます。

なぜ彼らはわざわざ仮想化をしてまでLinuxを使用するのでしょうか?

nuttstock, terra_san👍を押しています

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答6

14

その動画の中で使用しているエディタはOSに依存しないSublime TextやVim、EmacsなどといったわざわざLinuxを使用する必要性がないものばかりです。

また、ブラウザに関してもほとんどがChromeを使用しており、

正直Linuxでなくとも元々のOSで問題がないように感じます。

問題はそこではなく、実際にコードを書いて動かすソフトウェアの方です。たとえばRuby on RailsをWindowsでやろうとすると、Gemによっては「Windowsで動かす環境構築が手間取る」「Windows付属のライブラリが古いのでそのままではうまく動かない」、甚だしくは「Windowsに入れる手順が確立されていない」「Windowsでは新しいバージョンが動かない」など、ローカル環境のためだけに悪戦苦闘しなければならない事態となってしまいます。

実際のサーバはLinuxなどUnix系が主流ですので、ローカルでもLinuxを使えば、「ローカル環境でのインストール≒本番サーバでのインストール」となって、ローカルだけのために手間取ってしまうという事態を避けることができます。

なので、Android向けの開発のように、真にマルチプラットフォームでできるものは、わざわざLinuxを使うまでもありません。

投稿2018/01/31 06:39

maisumakun

総合スコア141476

gouf, xozeit, miyabi-sun, nuttstock, catsforepaw, CHERRY, kei344, GrassfieldK, gochuumonha, Udomomo, 他4名👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

8

ベストアンサー

LinuxはオープンソースのOSなので、世界中の誰でも利用出来ます。
その中には発展途上国等のWindowsやMacが購入出来ない人も含まれています。

そしてLinuxは20〜30年以上も昔から堅牢なOSとして人気だったUnixのクローン的な存在であり、
今日ではUnixに負けず劣らず堅牢であり、構造がシンプルなので軽いOSなのです。
つまり絶対に停止してはならないWebサーバ等の用途にはうってつけなわけですね。

このあたりの前提知識を元にすればすぐに想像出来ますが、
ありとあらゆるサーバやコマンドラインのツールがLinuxに集まってきます。
つまり、Linuxはサーバ用途の最先端を走っており、WindowsやMacはその成果を移植されるのをただ待っているような状態なんですね。

VirtualBoxなどの仮想化ツールを使用してLinuxを使っている人が多く見られます。

その結果がこれですね。

例えば最近の開発用マシンの流行はDockerですが、DockerもLinuxでしか動作しないツールです。
「Docker for Windows」や「Docker for Mac」ではLinuxの超軽量仮想マシンを起動させ、
マシン内に中継専用のDockerコマンドを導入したような作りになっています。

エディタはOSに依存しないSublime TextやVim、EmacsなどといったわざわざLinuxを使用する必要性がないものばかりです。
また、ブラウザに関してもほとんどがChromeを使用しており

GUIに比較的近い層はおっしゃる通り、
エディタやIDEもWindows、Mac、LinuxとOS問わず動くものばかりです。
しかし、サーバ用のアプリは前述の通りLinuxが強いのです。

従ってGUIに近い層は普段使い慣れているWindowsやMacを使い、
サーバーに近い層はVirtualBox越しにLinuxを操る。
こういう使い分けをしている人が多くいます。

投稿2018/01/31 06:41

miyabi-sun

総合スコア21039

gouf, coinbura, catsforepaw, kei344, Udomomo, chromitz, task4233, kaogei👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

task4233

2018/01/31 07:11

質問がそれてしまいますが、回答の中で「最近の開発用マシンの流行はDocker」とおっしゃっていましたがDockerとは何なのでしょうか? https://qiita.com/yuki_ycino/items/b94ae2bf7d78685cd6f5 Dockerというのは新たな概念なのか、もしくはVirtualBoxのような仮想化ツールなのかイマイチよくわかりません……
task4233

2018/01/31 07:16

はったリンクは参考にしたサイトです。すみません、記載が漏れました。
maisumakun

2018/01/31 07:21

Dockerは、Linuxの「カーネルより上だけ」仮想化するためのツールです。仮想化がマシンごとではないので、起動が高速などの特徴がありますが、もちろんLinuxカーネルの上でしか動きません。
task4233

2018/01/31 07:39

動かす部分のみを仮想化するツールってことですね。 そうすると、DockerのためにLinuxを仮想化する必要がありますよね……? 高速化できるといえど、なんだかややこしいですね……
miyabi-sun

2018/01/31 08:01

WindowsやMacでのDockerは一度仮想マシンのLinuxを用意しなければならないので、 速度面の優位性は殆どありませんね。 これは補助的な役割です。 大昔から本番環境のLinuxはツール同士の干渉等に頭を悩まされていました。 「くそう、本番環境で出る不具合が、ローカルだと再現しない…」 このため、WindowsやMacでVirutalBox越しにLinuxを立ち上げ、極力似たような環境を構築するという対策を行いました。 しかしそれはあくまで似た環境なのであり、AWSなどが用意している環境を100%再現するには至りません。 もし上司に本番環境にVirtualBoxを入れましょう、そうすれば環境の違いを無視出来ますよ!…と進言すると「アホか、オーバーヘッドデカすぎで使い物にならんわ」と頭叩かれます。 今回のDockerというかコンテナの技術は特効薬になりえます。 殆どオーバーヘッドが出ませんので、ローカルで作った環境をそのまま本番環境へ移植して利用出来ます。 まさに本番環境でVirtualBoxを動かすという事をやってのけるわけですね。 実際にはそう簡単に上手く行かず、ネットワーク関係、ファイル関係、ログ関係で苦労しているようですが、 長い目で見れば開発者は使いこなして当然の技術になることでしょう。 既にAWSなどでDockerのコンテナに対応するサービスはちらほら出始めています。
task4233

2018/01/31 08:35

開発する際にコンテナという技術が有用だということですね。 最初の質問からそれてしまいましたが、色々と教えてくださりありがとうございました。

7

「みんなが仮想環境を使う理由」は、簡単に言えば「タダで手に入る、どんなに汚しても壊しても構わないスペース」だからです。仮想環境の中で作業していれば、間違えてsudo rm -r /といった取り返しのつかない行為をしても、あなたのパソコンは無事で、吹き飛ぶのは仮想環境の中だけです。実験をするのにも、新たなサービスを検証するのもいいですね。仮想環境を分ければ、お互いにインストールしたものが競合することもありません。PHPやApacheのバージョンも仮想環境ごとに分ければ1つのPCに無理やり別バージョンを併用する必要もありません。
「みんなが仮想環境にLinuxを選ぶ理由」はタダで手に入るからです。そして、世の多くのサービスはLinuxで動かせるようになっているからです。

投稿2018/01/31 06:49

編集2018/01/31 06:50
masaya_ohashi

総合スコア9198

xozeit, miyabi-sun, nissyan_hk, catsforepaw, kei344, GrassfieldK, task4233👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

4

Linuxな理由は環境構築で無駄にハマることが少ないから。Linuxなら管理者用コマンドひとつでインストールできるソフトウェア(ライブラリ)が、Windowsに入れようとすると大変、というのが普通だからです。(こちらはすでに回答がついているとおり)

仮想環境なのには、動画収録や環境構築のテスト(動画の準備として当然やりますよね)などでは大きなメリットがあります。
なにか失敗して最初からやりなおす時に、ボタン1つ押せば元の状態に戻せるのが楽だからです。
AをやってBをやってCをやってDをやってEをやって……って進んだ後にAが間違ってた! と気づいたとしましょう。
最初から動画収録やり直しだ! って時に、Aをやる前と完全に同じ状況に戻すまで、実ハードで動いているWindwosやMacでどのぐらい時間と手間がかかりますか?
仮想環境ならボタン1つで、大抵は数秒、かかってもせいぜい数分でしょう。

動画を見ていてそう思ったのでしたら、後者の理由は大きいと思いますよ。

投稿2018/01/31 07:15

quickquip

総合スコア10425

catsforepaw, kei344, TakeoAsai, task4233👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

1

WEBサービスを公開する時に使うサーバーOSはLinuxが多いです。
自分のPC(Windows)で動作確認したい場合にVirtulBoxに
Linuxを入れておけば簡単に動作確認できます。

またちょっとだけ試しに使ってみようという場合にも
VirtulBoxは便利です。

僕のPCのVirtulBoxにはCentOS6と7、FedoraとUbuntuが入っています。

投稿2018/01/31 08:17

apo

総合スコア348

kaogei👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

1

正直Linuxでなくとも元々のOSで問題がないように感じます。

すべての仕事がWindowsでできるわけではありません。巷に溢れかえっているネットサービスやWebアプリを動かしているサーバーの多くはLinux(を含むUnix系OS)だったりします。その手の仕事をしている人たちにとってはホームグラウンドはUnix系なので、たとえWindowsマシンを所有していたとしても、使い慣れた環境を手元に置いておくためにLinuxを入れるのです。

趣味あるいは研究用にLinuxを使うケースも多いと思います。Windowsでの開発は、基本マイクロソフトが提供する開発ツールを利用するわけですが、提供元の都合もあり、プログラミング言語の仕様が改訂されて新しい機能が追加されても使えるようになるまでにタイムラグが生じます。Linuxでは、実験的にいち早く導入するということが広く行われているため、新しい機能をすぐにでも試したいという人たちがLinuxを使うのです。

また、それと関連して、いろいろいじりたいけどリアルな環境を汚したくない、というときにも仮想マシンを利用することがあります。仮想マシンなら、たとえ起動できなくなる程いじくり回してもOSを再インストールすれば済みますし、スナップショット(あるいはチェックポイント)などの機能をうまく利用すれば、即座に元に戻せます。あるいは、ネットワーク絡みの実験をしたいときは、あたかも複数のマシンが存在するかのように振る舞う仮想マシンの利用は必然です。そのような利便性を求めて仮想マシンを利用する向きはかなり多いと思います。そして、Windowsだと仮想マシンごとにライセンス(要するにWindowsの購入)が必要ですが、Linuxは無料ということもあり、自然とLinuxを利用するようになる、ということだと思います。

投稿2018/01/31 07:54

catsforepaw

総合スコア5936

task4233👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。