Linuxについてかなりかみ砕いて説明してみる(初心者向け)
※Linux初心者が書いた記事です。
Linuxガチ勢の皆様から見たら細かいところの違いはあると思いますが、あくまで
「最低限Linuxを使う上で困らない程度」
にかみ砕いて説明していますので、ご了承ください。
...要するに細かいことは気にするなということです()
太平洋側のド田舎に住んでいるのにめっちゃ雪降ってます。
新潟にいた頃よりかは雪も湿ってないから楽とはいえだるいです。
どうも、さとくんです。
皆さんは、「Linux」というものをご存知でしょうか?
まぁ、たぶんここにたどり着くような人たちはおそらく名前だけでも知ってる人は多いかと思います。
すごくわかりやすく言えば、Windowsか、macOSか、それ以外という分類の「それ以外」です。
驚くことに、皆さんお使いのスマートフォンもLinuxで動いているものがあります。
そう、Androidです(Androidではありませんが、カスタムROMのUbuntu Touchなんかはもっとわかりやすいですね。)。
カーネル部分にLinuxを用いており、実際にソースコードを確認するとLinuxの存在を確認できます。また、Root権限取得するような人たちや開発者の皆さんは、SELinuxという文字を何回も見たことがあると思います。
今となっては身近となったLinuxですが、使ってみたいという人も少しはいるでしょう。
(え?WindowsやmacOSで十分だって?うるせえ、いると仮定させろ() )
しかし、いざ使ってみようとすると...
「コマンドばかりで分かんねぇ」
「Windowsと勝手が違いすぎる」
...こういった感想を持たれると思います。
そこで今回は、Linux初心者で分かりやすいように(実際私も初心者です。)、最低限これさえ覚えてれば困らない程度でLinuxについて書きたいと思います。
※PCをあまり使えない(没収されているので他人に借りることしかできない)都合上、スクリーンショットはありません。もしわからないところがありましたら、他サイトも併用して参照されることをお勧めいたします。
そもそもLinuxとは?
※お急ぎの方、「堅苦しい説明なんていらねぇんだよ」って方は読み飛ばしていただいて構いません。
...読んでくださることを選択してくださった画面の前にいる貴方に感謝しますw
というわけで、さとくんなりにものすごくかみ砕いて説明します。
...それでも長いよ。覚悟してね。
Linuxを一言で表すなら、「WindowsでもmacOSでもないやつ」です。
世の中に流通しているOSは大きく分けて3つあり、
この3つです(他にもTRONとかいろいろあげたらキリはないですが...)。
要するに、「Windowsか、macOSか、それ以外」の「それ以外」です。
Linux自体は無料です。GitHubに普通にカーネルコードあります。
なんなら「GitHub Linux」でググれば一発で出てきます。
そして、基本的にライセンスフリーです。すごくわかりやすく言えば、著作権的なもの、商標権などはありません。
だから今、目の前のそこのあなたが「あ、自分でOS作りたい!」って思ったらLinuxベースで開発し、それを自分のOSとして発表することも可能です(そこに含めるソフトウェアのライセンスはまた別です)。
なので、多くの方が開発しているLinuxディストリビューション(要するにLinuxのバリエーション的なやつ)は無料であり、OS代は基本的にかかりません(例外もあります。例えばZorin OSの最上級エディションなどは有料です)。
自作組んで一番ネックになるのがWindowsライセンスなんですが、メインをLinuxと決めればOS代はタダになります。
Windowsライセンスは平気で2万とかするからね、高すぎるよね。
こんな感じで、かなり自由に開発したり使ったりできるのがLinuxです。
これだけ自由に使ってよければ当然、改造しまくる人も多くいます。
その結果、いわゆるディストリビューションというものが生まれたのです。
現在有名な系統だと、
・Debian系
・RedHat系
・Arch Linux系
などがあります(openSUSEなどそのほかにもたくさんあります)。
これらはいわゆるオリジナルの(バニラということが多いです)Linuxからかなりカスタマイズされているので、それぞれの系統で使い方がかなり異なります。
ここの違いも、Linuxに対して抵抗感が生まれる原因の一つだったりします。
こうした、WindowsともmacOSとも似つかない(macOSはベースが同じなので多少似てます)OSがLinuxなのです。
じゃあLinux入れてはみたけど何覚えればいいのよ
...お待たせしました。
Linuxのインストール方法は、各ディストリビューションによって違うのでググってください。
ここでは、「とりあえずインスコ作業自体は終わったで」という状態で説明します。
・コマンド
Linuxの基本はコマンドです。
...画面の前のそこの貴方。
今、こう思いましたね?
「なんだよ結局コマンドじゃねぇか」
...仕方ありません。Linuxはバニラ状態ではコマンド操作が前提なのです。
文句言いたかったらリーナス・トーバルズ氏(Linuxカーネル開発者)に言ってください。
※今はほとんどリーナス氏が書いたコードはないようですが...(だいぶ書き換わった)
各ディストリビューションでGUIが使いやすくなったとはいえ、基本的なシステム管理は今でもコマンドなのです。
それでは、よく使う最低限覚えるべきコマンドをご紹介します。
⚫︎基本コマンド編
$ sudo <コマンド>
root権限でコマンドを実行します。
システムに関わる操作全般に必要です。
$ ls
ディレクトリ表示コマンドです。
Windowsで言うところの「dir」です。
$ cd <ディレクトリパス>
例: $ cd /home/satokun2668/Desktop
ディレクトリ変更コマンドです。
Windowsでも使われているコマンドです。
ちなみに「cd」だけ打つとホームディレクトリに移動できます。
ちなみにWindowsでcd単体実行すると挙動違います(後述)
$ pwd
現在の作業ディレクトリ確認コマンドです。
これで今どこのディレクトリにいるかを判断することもできます。
Windowsで言うところの「cd」(単体実行)です。
$ passwd
パスワード変更コマンドです。
スーパーユーザ権限(root権限)なら、「passwd <ユーザー名>」で他の人のパスワードも変えられます。
⚫︎パッケージ操作関連
Debian系とArch系とで違うので別々に書きます。
※RedHat系のDNF(yum)は使ったことがないので分かりません。すみません。
・Debian系
$ sudo apt update
リポジトリとの同期コマンドです。
要するにアップデートの確認です。
$ sudo apt upgrade
パッケージ更新コマンドです。
先程のapt updateと共によく使います。
$ sudo apt install <パッケージ名>
例: $ sudo apt install discord
パッケージのインストールコマンドです。
$ sudo apt remove <パッケージ名>
例: $ sudo apt remove discord
パッケージのアンインストールコマンドです。
・Arch系
$ sudo pacman -Syy
リポジトリとの同期コマンドです。
$ sudo pacman -Syu
パッケージ更新コマンドです。
$ sudo pacman -Syyu
上2つを一気に行えます。
$ sudo pacman -S <パッケージ名>
例: $ sudo pacman -S discord
パッケージのインストールコマンドです。
$ sudo pacman -R <パッケージ名>
パッケージのアンインストールコマンドです。
※注意
pacmanを実行する時のオプションの「S」や「R」は必ず大文字にしてください。
小文字にすると認識されません。
例: $ sudo pacman -syyu
これは認識されません。
※補足
yay(後述)でも同じような構文が使えます。
ただし、yayの場合はsudoを付けないようにしましょう。
yayはroot権限での実行は非推奨となっています。
例: $ yay -S google-chrome-stable
このように使います。
⚫︎ソフトウェア編
基本的にソフトウェアは人によって必要・不必要がありますが、その中でもこれだけは入れておけ!なものをリストアップします。
初期搭載のFireFoxで十分ならスルーしていいです。
・Discord
言わずと知れたチャットアプリですね。
・Fcitx-mozc
日本語入力IMEです。
ディストリビューションによって導入方法は異なりますのでおググりください。
・sl
入れたら分かります。
SLが走ります。
ただそれだけです。
・screenferch / neofetch
OSについての情報表示ツールです。
どちらでも問題ないです。迷ったらどっちも。
・htop
Linux版タスクマネージャです。
・vim / nano
Terminal上で動くテキストエディタです
どちらがいいかは好みによります。
その他、必要だと思ったものはググってみてください。
WindowsやmacOSにあるものは、割と有名どころならLinuxにもあります。
・デスクトップについて
Linux触ろうとしてる人がたまに混乱するものです。
デスクトップ環境(DE、Desktop Environmentを略してそう言います)とは、LinuxにGUIを提供するX-Window Systemというものの上で働くソフトウェアです。
これがないとコマンドでしか操作できません。
一番分かりやすい例だと、Arch Linuxの初期状態ですね。
その中にもいくつか種類があります。
これはWindowsにはない概念です。
また、Linuxはデスクトップ環境をいくつか併用してインストールすることも可能なので、軽量なデスクトップをインストールすることで古いマシンでもある程度サクサク動くことがあります。
というわけで、有名なデスクトップ環境について紹介していきます。
・Xfce
軽い。カスタマイズしやすい。
Linuxユーザーの多くが好んで使うDEです。私の周りでも使ってる人は多いです。
また、各ディストリビューションでも多く採用されているので、情報も多いです。
さらに、カスタマイズが非常にしやすいDEであるため、無限大のカスタムをすることが可能です。
・KDE
重い。カスタムしやすい。
アニメーション等がゴリゴリに使われている、とにかく見た目特化なDEです。
古い世代(Core 2 Duo世代等)のマシンだと多分少し重いです。最近のある程度パワーのあるマシンなら問題ないでしょう。
カスタムのための様々な素材が配布されており、カスタム性としては良好です。
ちなみに現在のさとくんのメインDEだったりします。
重い。カスタム厳しい。
Ubuntu標準搭載のDEです。
正直かなり重いです。個人的な見解ですが、アニメーションがゴリゴリ使われてるKDEよりも重い印象です。
また、カスタムもしづらいので、自分らしさを出すには少し物足りないかもしれません。
初心者でとりあえず定番で行くならアリだと思います。
・LXDE
軽い。すごく軽い。
軽量DEの代表格です。実はXfceよりも軽いらしいです(実際にはあまり使ったことはありません。)。
カスタム性は分かりません()
後継にLXQtというものもあり、LXDEよりもやや重いようですが、それでもXfceよりかは依然として軽く、それ以外はLXDEとほぼ変わりません。
・Cinnamon
重い。カスタマイズはまあまあ
Linux Mint標準DEです。
重めではありますが、比較的操作系統がWindowsに似ています。
また、いくつかテーマもあり、素材を揃えれば見た目をある程度Windowsに寄せたり…なんてこともできます。
私も、Ubuntuの時にWindowsに寄せて使っていたことがありますw
※この他にも、MATE(GNOME2ベースのDE)やBudgie、i3wm(キーボードで操作するタイル型ウインドウマネージャ)、その他色々ありますが、使っていないので割愛させていただきます。
DEは、個人の好みやマシンスペックによって好きなものを選ぶといいと思います。
一番よく使うGUIの元となる部分なので、好みのものを選んで好みのカスタムをすると、使いやすくなります。
Linuxってそもそもどれ選べばいいのよ
これだけ前に色々書いておきながら重要なことを書いていませんでした。
…というのも、Linuxディストリビューションは無数にあり、全ては紹介できず、どうしても私の見解だけになってしまうからです。
そこで今回は、さとくんが使ってきた中でいくつか紹介したいと思います。
・Manjaro
現在の私のメインです。
Arch Linuxベースで、安定した動作が特徴です。
Arch Linuxは元々、インストール含めコマンドラインでしか操作できません。
GUIを使いたければ自分でDEを用意する必要があります。
…それってすごく大変ですよね?
それならば初めからGUIのインストーラを揃えて、インストール後すぐにGUIが使えるようにすれば使いやすいんじゃね?と言ったことから開発されたのがManjaroです。
リポジトリは独自のものを使っており、Arch側で更新があった場合にはまずManjaro側が検証してからリリースするので、比較的安定したパッケージを使うことができます。
Linuxと言ったらまず言われるのがこれです。
初心者向けにさまざまなソフトウェアがプリインストールされており、初めてLinuxを使う人でも戸惑うことなく使うことができます。
ただし欠点が…重いんです。
人によってはWindows10よりも重いという意見もあります。
DEは重量級のGNOMEを使っており、また、ソフトウェアも多く入っており、さらに独自の仕様も入っているため、かなり重いです。
私もこの重い問題でManjaroに乗り換えました。
・Alter Linux
Fascode Networkと言う、日本の学生たちが集まったグループが開発している日本製Linuxです。
また、開発者曰く日本初のArchベースLinuxです。
Arch Linuxでは、どうしても日本語入力を用意するのが大変です。
Manjaroでも日本語入力をするには少し手間のかかる作業が必要です。
Alter Linuxでは、まずインストーラ時点(Live USBのことです)から日本語入力ができます。もちろん、インストール後すぐに日本語が打てます。
Arch Linuxに限らず、Linuxの大半は日本語入力をするためには面倒な作業が必要なため、日本人が初めて使うならこのAlter Linuxはかなりおすすめです。
私はBeta 2世代しか使っていない(最近RC3を入れました)ので詳しくは触っていませんが、かなりサクサク動く印象でした。
初めてLinux触るけど、重いのも嫌だし、人と同じようなものは嫌だ!という方は一味違ったAlter Linuxを試してみてはどうでしょうか。
DEは2021/01/23(執筆日)現在でCinnamon、Xfce、LXDE、i3wmが用意されています。
・Serene Linux
先述のAlter Linux同様、Fascode Networkが開発しているFedoraベースのLinuxです。
Beta 7まではUbuntuベースで開発されていました。
※開発者さん曰く、「Ubuntuの独自仕様とaptの仕様がキツくて方針転換した」とのことです…
Serene-Startdashという独自のパッケージマネージャがあり、サードパーティ製ソフトウェアも有名どころはある程度取り揃えられています。
初心者でも簡単にパッケージ管理をすることができます。
欠点があるとすれば、日本語入力でしょうか。
Beta 8はまだ試していないので分かりませんが、Beta 7時点ではインストール直後に日本語入力をすることはできず、Serene-Startdashからセットアップする必要がありました。
とはいえ、他のLinuxに比べれば(Alterははじめからですが…)圧倒的に簡単にセットアップできるので楽だと思います。
DEはXfceが標準で用意されています。
まとめ
今回は、初心者向けにLinuxをなるべくわかりやすく説明するという記事でした。
私もLinux歴はまだ1年行っておらず、初心者です。
それでも、初心者の私として分からなかったことなどを中心にこのような記事を書けば、今後Linuxを使い始める人も少しは助かるかな...と思って今回この記事を書きました。
結局"かみ砕いて説明してみる"と書いておきながら文字数は7298文字になってしまいました...
特にスマホからこの記事をご覧になってる方、長くて申し訳ありません...()
もし、今目の前のあなたが初めてLinuxを使い始めようと思っている方でしたら、この記事が参考になれば幸いです。
今回も、さとくんの記事をご覧いただきありがとうございました。
Twitterのフォローもよろしくお願いします。