インフラ系専門学生の日記Privacy Policy

書くこともないので初心者さん向けにLinuxをおすすめする

こういうしょうもない事を書くためにQiitaとは別でアウトプットする場が欲しかったんですね。静的サイトジェネレータはやはり面倒だった。

目次

まずLinuxって何よ

一口にLinuxと言ってもまずLinuxというのはまずUNIXという商用のOSから派生してフィンランドのちょっと怖いお兄さんが作ったOSでして今はそれをベースとしたディストロが……(オタク特有の早口)(マジックテープバリバリ)(アディダスの財布)(コーナーで差をつけろ)(瞬足)

冗談はおいといて、Linuxというのはフィンランドの(当時)大学生、リーナス・トーバルズ氏が作ったOSで、当時からカルト的な人気を誇っていたそうです。(当時生まれてないんで実際の所は知らない)(でもリーナス・トーバルズ氏が作ったのは本当)(ついでに筆者に彼女がいないのも本当)

まあ実際、Linuxはそれなりに歴史の古いOSでして、最初にリリースされたのが1991年。Windows95よりも前なんですね。ペンギンのマークぐらいはみなさんも見たことがあるかもしれません。後はAndroidとか、一部の組み込み端末にもLinuxが使われているので、そっちで知らず知らず使っている人が多いかもしれません。

まあ歴史の話は置いといて、Linuxというのはつまり、「Windowsでも、macでもないOS」という認識で概ね問題ないと思います。Windowsとかmacについては筆者の管轄外なので飛ばします。一応、OSという単語の意味とそれが指す物についてだけ分かっていれば大丈夫なように書いていくつもりです。

……とまあ、もう少しLinux自体の説明をしても良かったんですが、あまり掘り下げるとよく分からん単語がぽんぽん飛び交うようになるので、とりあえず最低限の話だけに留めます。興味が湧いたら調べてみると面白いかも知れません。

Linuxのいい所

大きく三つあります。

仕様が公開されている

これに尽きます。

Windowsとかmacとかっていうのは、いわゆる『プロプライエタリ(独占的な)ソフトウェア』と呼ばれるもので、その中身が公開されていません。ソフトウェアの開発者向けに最低限の仕様は公開されているのですが、『OSそのもの』に手を加える事が許可されていないんですね。これはまあ、商業的に仕方ない話でもあるのですが、実はこれ、開発者だけでなく一般ユーザー的にも困る事があります。

例えば、Windowsのある機能にバグがあったとします。それがMicrosoft側の単純な(=少し見ればすぐに分かる)プログラムミスに起因するもので、かつ一度発動すれば甚大な被害を及ぼす致命的な物だと仮定します。しかし、このバグはその機能を『そのプログラムが想定する通りに使っている』時には起こりえないため、外からの発見は困難です。

ん? じゃあこのバグは放っておいてもいいんじゃないの? と思う方もいるかもしれませんが、そうは問屋が卸さないんですね。もう一度、さっきの文を読み返してみましょう。

『そのプログラムが想定する通りに使っている』時には起こりえないため、発見は困難です。

分かりましたか?

答え合わせをすると、そのプログラムが想定している使い方と、Microsoftが想定している使い方は違う、という話なんですね。ヒントは最初に書いた

Microsoft側のプログラムミスに起因する

という文言です。そりゃプログラムが間違ってればMicrosoftの想定通りに動くはずもありません。例えMicrosoftのマニュアル通りに使っていたとしても、マニュアルを作ったMicrosoftはこのバグの存在を知りませんからバグは発動し得ます。可能性は低いかもしれませんが、ゼロではないんですね。

ここで問題なのが、そのバグは一度発動するまで存在すら認識されません。外部の人間はこのプログラムミスを知りませんからね。つまり、このバグの存在が明らかになった時点で、少なくとも一人は犠牲者が存在する事になります。

しかし、Linuxのように仕様が完全に公開されているソフトウェアなら、分かる人がみれば一目瞭然なバグなんてすぐに報告されますし、すぐに対応されます。

対してWindowsは、一度そのバグが見つかっても中々すぐには対応されません。場合によっては『緊急パッチ』としてすぐにアップデートが配信されますが、優先度が低いと判断されたバグについては月例アップデートまで待つ他ありません。不便極まりませんね。

Windows10になってから始まった半年周期のメジャーアップデートもそうですね。この間の『2019 May Update』も、結局バグまみれになってリリース後すぐに配信中止になりましたし。まあ、あれは不具合が発生する環境限定の話だったと思いますが。

これはまあ、Microsoftがどうだappleがどうだって話より、仕様が公開されていないソフトウェア全般の弱点なんですね。そもそも、あのMicrosoftが少しコードレビューすれば分かるようなプログラムミスをするとは思えませんし。(実際にあったかどうかは知らない)

自由に使える

バグの対応スピードについて軽く書きましたが、Linuxのメリットはそれだけではありません。というより、これはある思想の副産物に過ぎません。

例外こそあれど、Linuxを始めとするオープンソースコミュニティの基本理念は概ね『自由』を軸としています。

自由なオープンソースソフトウェアこそ至高、不自由で低俗なソフトウェアなど要らぬ。

……全てのオープンソースコミュニティがそうだとは言いませんが、大体こんな感じだと思います。多くの開発者がこの思想を旨として活動した結果、誰でも簡単に貢献できるオープンソースコミュニティが生まれました。

開発者でなくても、そのプログラムを使っていて「ん?」と思った部分があれば、開発者に報告して貢献できます。それによって何かしらの金銭的な見返りは期待できませんが、代わりに多くの感謝と名声を受ける事ができるかも知れません。

閑話休題。

与太話は置いといて、Linuxは自由を基本としたOSです。つまり、ユーザーがしたいと思った事のほとんどは実現できます。Windowsやmacとそのまま同じ……とは行きませんが、大体の物事には代わりの手段が用意されています。ただし、ゲームについてはあまり期待しないほうがいいと思います。

Linuxは使い方次第で、少なくともWindowsを大きく超える性能を発揮してくれます。音楽を高音質で聞きたいなら、それ用に特化したカスタマイズを施せばハイレゾ音源をズンズンドコドコ流せますし、そうでなくてもそれなりの音質で聞けます。動画や画像の編集も、さすがにmacには及びませんが、かなりの水準でこなせるはずです。

やはりと言いますか、ガチガチのプロフェッショナル志向で行くならmacに軍配が上がりますね。仕方ないです。でなきゃ誰もmacにウン十万も払いません。

どうしてもLinuxは良くも悪くも特化させないとその性能を十全に発揮できないので、複合的な要素を含むゲームなんかは苦手になってしまうんですね。

しかし、Windowsと違って勝手にアップデートされるような事はなく、完全に自分のペースで使えるのがLinuxの強みです。

ソフトウェアのインストールが簡単

『仕様が公開されていて』『自由に使える』(※例外アリ)Linuxですが、ぶっちゃけ『使いやすけりゃなんでもいい』という方も多いと思います。そしてそんな方の需要にもしっかりとマッチしているのがLinuxです。ぶっちゃけこれ一つでLinuxを使ってもいいぐらいだと個人的には思ってます。

Windowsを使っている時、ソフトウェアをどうやってインストールしていますか?

多くの方はまずWindowsPCを買った時、『Edgeを起動してBingでChromeと検索してChromeのインストーラーをダウンロードしてそのインストーラーをダブルクリックしてChromeをインストールする』という手順を踏むと思います。Firefox派ならそう置き換えてもらって構いません。ちなみに筆者はVivaldi派です。

しかし、Linuxならそんな面倒な手順を踏む必要はありません。使っているディストリビューション(Linuxの派生エディションみたいな奴)にもよるのですが、Arch Linuxの場合は

sudo pacman -S chromium

で終わりです。え? Chromiumじゃヤダ? Google Chromeがいい? 安心してください。ちょっと設定すれば簡単にGoogle Chromeも使えます。まあ個人的にはChromiumで十分だと思いますが。ちなみにFirefoxはそのままで使えます。良かったですね。

ちなみにアンインストールする時は

sudo pacman -Rs chromium

で終わりです。レジストリ? そんな女々しいもんないから安心してください。たまにゴミディレクトリとかファイルが残るかもしれませんが、自分で簡単に消せる範囲です。肥大化したレジストリに比べればなんてことありません。

一応、Linuxにもレジストリ相当の設定ファイルはあるのですが、基本的に肥大化とは無縁に思えます。(※個人の感想です)

基本的に、Linuxは『ユーザーの言う通りにしか動かない、素直なOS』なんです。お節介と定期的なアップデートで環境をぶっ壊してくれるWindowsとは大違いですね。

Linuxの種類について

ここまでLinuxの良さについて並べ立てて来ましたが、実を言うとLinuxそれ自体は一般的に言われる『OS』を指すものではありません。一応OSを指す単語でもあるのですが、『Linux』は本当にちっちゃなファイル群とその規格に過ぎません。そのLinuxをベースに色々と手を加えて作られたのが、先程もチラッと出てきた『Linuxディストリビューション』です。

では、その『Linuxディストリビューション』は一体どれぐらいあるのでしょうか。とりあえず代表的なものだけ並べたいと思います。

Redhat系

大元はRedhat社が提供するRedhat Linux(RHEL)という商用のディストリビューション(長いので以下ディストロ)です。

ん? フリーなのがLinuxのウリなはずなのに商用? と思う方もいらっしゃるかもしれませんが、フリーだからこそ商用展開できるのがLinuxのいい所です。なんて、これだけ聞くと『フリーソフトを勝手に売って飯食ってる悪徳企業』にしか見えないかもしれません。でもそれなら儲からないはずですよね。みんなフリーの方を使えばいいんですから。

そんな事はRedhat社も分かってたはずです。なので『金を払えば不具合が起きようが全部対応してやるしメンテナンスもしっかりする』と宣言しました。要するに、安心を売って儲けようとしたんですね。そしてこれが大当たり。フリーのOSだと全部自己責任ですが、金を払ってRHELを使えばRedhat社が責任を持って対応してくれる。企業なんかで使うにはこれ以上ない選択肢ですね。結果的に法人向けのLinux市場はRedhat社の一人勝ちとなりました。

で、そんなRHELから派生したディストロがこちら。

  • CentOS

    RHELのクローンOS。要するに同じ思想の後追いOSですが癖が強く、良く言えば枯れた、悪く言えば古臭い仕様になってます。しかしその分安定している上に無料なのでサーバー用途としてはそれなりに使われています。

  • Fedora

    Redhat社が無償で提供するOS。実験段階の機能を盛り込んでいるので最先端のソフトウェアを使えますがその分不安定。ここでテストした機能を本流のRHELに取り込むための実験用OSに近いですね。無料で使えるのも『最先端の機能をタダで使わせてやるからバグとかあったら報告してくれよな!』という狙いからです。(多分)CentOSとは別方向で癖が強く、こちらの方がギーク感が増しています。

Debian系

大元はそのままDebianというディストロ。基本的に使いやすさを追求しています。

  • Ubuntu

    初心者がLinuxを使うならまずこれをおすすめするレベル。名前のUbuntuは南アフリカの言葉で『思いやり』という意味です。その名を裏切らない使いやすさでライト層に人気です。筆者はもう使わなくなって久しいですが、最初の頃はこれを使っていました。

  • Linux Mint

    Ubuntuから更に派生したディストロ。機能が増えすぎてややこしくなってきたUbuntuから、洗練された機能美を追求して作られました。Ubuntuのとっつきやすさをそのままに、余計な部分を排除して使いやすさが向上しています。(筆者は使ったことがないので受け売りですが)

Arch系

  • Arch Linux

    Arch系の源流にあたるディストロ。シンプル・ミニマルを極限まで追求し、グラフィカルなインストーラなんて甘ったれた物はついていません。全部コマンドでインストールし、最初はデスクトップすら入ってないので自分好みに環境を構築できます。ちなみに筆者のお気に入りでもあります。(この記事もArchの入ったPCで書いてる)

  • Manjaro Linux

    Archから派生したディストロ。Arch Linuxの追求するシンプルさをできる限り残した上で、インストーラやデスクトップを最初から用意した、初心者にもとっつきやすい仕上がりになっています。

その他

  • Gentoo Linux

    Arch Linuxを鼻で笑うレベルでやばいディストロです。もしあなたの周りにGentoo Linuxを使っている人がいれば、ぜひ仲良くなっておきましょう。もしかしたらゴリッゴリの過激思想の持ち主かもしれませんが、それなりに付き合いを持っといた方がいいです。詳細は調べてください。

  • Linux From Scratch(LFS)

    厳密にはディストロではありませんが、一応載せておきます。名前でなんとなく想像が付くかもしれませんが、これは文字通り『Linuxを一から作る』というもので、言ってみれば自作ディストロです。もしあなたの周りで自作ディストロを使っている人がいれば、ぜひ仲良くなっておきましょう。恐らく過激派とかそんな言葉さえぬるいレベルの人だと思われますが、コネを持っておけば後々役に立つ可能性がないとも限りません。

……ぶっちゃけRHEL以外は特筆すべき所もなかったので雑ですが、有名なディストロといえばこんな感じですかね。

おすすめのディストロ

個人的にはLinux Mint、次点でManjaro Linuxをおすすめします。どちらもとっつきやすく、それなりにコミュニティも成熟しているので情報収集も簡単です。ぶっちゃけ好みでいいと思いますが、多分この二つ辺りが挫折しにくいと思います。参考までにどうぞ。

おすすめのサイト

  • ArchWiki

    Arch LinuxについてのWikiですが、Arch自体がシンプルなOSなので、他のディストロにも応用が利きます。

  • Qiita

    Linuxを実際に使っている方の記事がたくさんあるので、Wikiでも分からない事があったらこっちで調べてみると解決するかもしれません。

まとめ

とりあえず書きたいことを書き殴った感じの記事ですが、参考になれば幸いです。そのうち筆者の環境も改めて紹介できたらと思ってます。