【Linux入門】初心者のための基礎知識・講座

HOME > 【Linux入門】初心者のための基礎知識・講座

【Linux入門】初心者のための基礎知識・講座:記事リスト

【Linux入門】初心者のための基礎知識・講座のカテゴリーには以下の記事がリストされています。

WSL2でLinuxを始める手順|インストールから基本コマンドまで初心者向け解説

2026年4月 4日
「Linuxって、サーバーで使うものでしょ?自分には関係ない。」
そう思っていませんか?

実は今のWindows 10・11には、PCを買い替えたり仮想マシンを用意したりしなくても、数分でLinux環境が動かせる仕組みが標準で入っています。それが WSL2(Windows Subsystem for Linux 2) です。

この記事では、Linuxを一度も使ったことがない方を対象に、WSL2のインストールから基本コマンドの実行まで、実際の画面イメージを交えながらステップごとに解説します。
読み終えたころには、あなたのWindowsパソコンの中でLinuxが動いているはずです。

この記事のポイント

・WSL2はWindows上でLinuxをネイティブ動作させる公式機能
・インストールはコマンド1行で完了、再起動のみで使える
・Ubuntu 24.04 LTSが自動でセットアップされ、即日コマンド練習が可能
・ls、cd、cat など現場で使われる基本コマンドを実際に確認できる

続きを読む "WSL2でLinuxを始める手順|インストールから基本コマンドまで初心者向け解説"

/etc/fstabファイル(ファイルシステムテーブル)

2013年6月12日
システムで利用するファイルシステムの情報は、/etc/fstabファイルに記述されています。
マウントするときは、/etc/fstabファイルが参照されるため、
マウント頻度の高いファイルシステムを記述します。

また、マウントオプションの「noauto」が指定されていない/etc/fstab内のエントリは、「mount -a」コマンドによってシステム起動時も含めてすべてマウントされます。

■/etc/fstabファイルの例
/dev/hda4               /                  ext3    defaults        1 1
/dev/hda1               /boot              ext3    defaults        1 2
/dev/cdrom              /mnt/cdrom         iso9660 noauto,owner,ro 0 0
/dev/hda2               /var               ext3    defaults        1 3
/dev/hda3               swap               swap    defaults        0 0

/etc/fstabファイルの書式は下記の通りです。
上記実行例の左側からの項目説明です。
デバイスファイル名(/dev/hda1)
デバイスファイル名、もしくはリモートファイルシステムを指定します。

マウントポイント(/boot)
ファイルシステムのマウント先になるディレクトリを指定します。

ファイルシステムの種類(ext3)
ファイルシステムの種類を指定します。
■ファイルシステムの種類
ext2 Linuxの標準ファイルシステム
ext3 ext2にジャーナリング機能を追加したファイルシステム
reiserfs 高速なジャーナリングファイルシステム
xfs SGIが開発したジャーナリングファイルシステム
jfs IBMが開発したジャーナリングファイルシステム
iso9660 CD-ROM、DVD-ROMのファイルシステム
msdos MS-DOSのファイルシステム
vfat Windows 9xのファイルシステム
nfs NFS(Network File System)

マウントオプション(defaults)
マウントする際に必要になるオプションを指定します。
複数のオプションを指定する場合は「,」(カンマ)で区切ります。
■マウントオプション
async ファイルシステムの非同期入出力を設定する
auto -aオプションでmountコマンドを実行したときにマウントする
noauto -aオプションでmountコマンドを実行してもマウントされない
defaults デフォルトのオプションを設定する(async auto dev exec nouser rw suid)
exec バイナリの実行を許可する
noexec バイナリの実行を許可しない
ro 読み出し専用でマウントする
rw 読み書きを許可してマウントする
unhide 隠しファイルも表示する
suid SUIDとSGIDを有効にする
user 一般ユーザーでもマウント可能にする
users マウントしたユーザー以外でもアンマウントできるようにする
nouser 一般ユーザーのマウントを許可しない

dumpフラグ(1)
1であればdumpコマンドによるバックアップ対象になり、
通常ext2、ext3ファイルシステムは1を、
その他のファイルシステムは0を指定します。

ブート時にfsckがチェックする順序(1)
Linuxが起動する時に、fsckがチェックする順序を0、1、2・・・と
指定します。0を指定するとチェックされません。
ルートファイルシステム(/)は1である必要があります。

Linuxのファイルシステムの作成

2012年11月30日

パーティションを作成した後に、ファイルシステムを作成します。
作成するには、「mkfs」や「mke2fs」コマンドを使用します。
パーティション管理コマンド

そもそもファイルシステムとは、
ファイルとしてディスク上のデータを扱う仕組みのことを言います。

ファイルシステムがなければ、ディスク上のデータを
読み出す場合もセクタを指定する必要になります。

例えば、
「193765セクタと193766セクタのデータを読み出す」
というような非常に面倒な操作になります。

しかし、ファイルシステムがあれば、
「/varディレクトリ内にあるlog.txtファイルを開く」と
いうように、分かりやすくデータを扱うことが出来ます。

セクタとはディスク上の区画を表しますが、
記録媒体よって1セクタのバイト数は様々です。
例えば、ハードディディスクでは1セクタが512バイト、
CD-ROMでは2,048バイトとなります。

しかし、ファイルシステムでは
ブロックという単位でデータを保存して管理します。
この管理法のお陰で、アプリケーションは、
物理的な媒体の種類に関係なく、ブロック単位で
データを扱うことが可能になります。

なお、ファイルシステムを作成した際、
最初のブロックに「スーパーブロック」が作成されます。

このブロックは、ファイルシステムの情報
(サイズ、ブロックサイズ、未使用のブロック数、
未使用のiノートリスト等)を管理するために使用されます。

スーパーブロックが破損するとファイルシステムが
使用不能になるため、一定のブロック数毎に同じ情報を
保有するスーパーブロックが作成されます。
これは、最初のスーパーブロックが破損しても
修復出来るよう用意されています。

また、Linuxのファイルシステムでは、
「データ(ファイルの中身)」と「ファイルの属性や管理情報」は
別々に保存します。

「ファイルの属性や管理情報」を格納しているのが、
「iノード(Indexノード)」と呼ばれる管理領域になり、
ファイルシステムを作成した時に予め用意されています。

iノードは、ファイルやディレクトリを作成する度に
1つずつ使用され、すべてのファイルやディレクトリには、
それを管理するiノードがあります。

メイク(make)する

2010年6月 1日

ソースコードで配布されるプログラムは、
そのままではインストールする事ができません。

実行形式(オブジェクトコード、ネイティブコードとも呼ばれます。)と
呼ばれる形式に変換する必要があり、その変換を行う作業がメイクになります。

LinuxではGNUが提供しているGCCが使用されるのが一般的で、
makeコマンドを実行することでメイクを行います。

実行方法としては、「Makefile」や「makefile」が保存された
ディレクトリに移動してオプション、引数無しでmakeを実行します。

■ メイクする
----------------------------------------------------------------------
[root@Tiger ~]# cd /usr/local/src/apache_1.3.42
[root@Tiger apache_1.3.42]# make  ←「make」を実行します。
===> src
make[1]: ディレクトリ `/usr/local/src/apache_1.3.42' に入ります
make[2]: ディレクトリ `/usr/local/src/apache_1.3.42/src' に入ります

(省略)

make[2]: ディレクトリ `/usr/local/src/apache_1.3.42/src/support' から出ます
<=== src/support
make[1]: ディレクトリ `/usr/local/src/apache_1.3.42' から出ます
<=== src
[root@Tiger apache_1.3.42]#
----------------------------------------------------------------------

また、メイクを実行擦る前に、事前にエラーが発生しないか、
テスト(メイクテスト)することも出来ます。
メイクテストは、公開されているプログラムの他、
自作プログラムのテストを行うのにも使用できます。

メイクテストを実行するには、↓のようにmakeコマンドに
オプション「-n」を付けて実行します。

■ メイクテストする
----------------------------------------------------------------------
[root@Tiger ~]# cd /usr/local/src/apache_1.3.42
[root@Tiger apache_1.3.42]# make -n  ←「make -n」を実行します。
echo "===> src"
make -f ./Makefile -n root= build-std
make[1]: ディレクトリ `/usr/local/src/apache_1.3.42' に入ります

(省略)

make[1]: ディレクトリ `/usr/local/src/apache_1.3.42' から出ます
touch ./src/.apaci.build.ok
echo "<=== src"
----------------------------------------------------------------------

■ 関連記事
プログラムソース(ソースコード)を最適化する
インストール(make install)する

Linuxのシステム起動の流れと起動時のイベント確認

2010年3月25日

今回は、Linuxのシステム起動の流れと起動時のイベントについて紹介します。

Linuxを起動すると最初にBIOSが起動します。BIOSの役割はハードウェアの
初期化を行い、ディスクのブートセクタを読み出し、ブートローダへ制御を渡します。

ブートローダは、ハードディスク上からカーネルをメモリ上へ読み込みます。

カーネルはメモリの初期化やシステムクロックの設定を行い、
最後にinitプログラムを実行します。

initはシステムの初期化スクリプトを実行し、ランレベルに応じて
指定されたデーモンを起動します。最後にログインプロンプトが表示され
起動処理が終了します。

この流れを図にすると下記の様になります。

linux_boot.jpg
「PCの起動」→「BIOS」→「ブートローダ」→「カーネル」→「init」→「ログイン」


また、Linuxを起動すると処理された内容が画面に表示されますが、
速く、多くのメッセージが表示されるので一つ一つ内容を確認するのは困難です。

そのような起動時のイベントの確認をするには「dmesg」コマンドを使用します。

[root@Dolphin root]# dmesg

PCI: No IRQ known for interrupt pin A of device 00:1f.1
PCI: No IRQ known for interrupt pin B of device 00:1f.3
PCI: Using ACPI for IRQ routing
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
apm: BIOS not found.
powernow: AMD processor not detected.
cpufreq: P4/Xeon(TM) CPU On-Demand Clock Modulation available
gx-suspmod: error: no MediaGX/Geode processor found!

システムログを記録する「/var/log/messages」にも起動時のメッセージが
記録されます。また、dmesgコマンドはカーネルが出力したメッセージを
一時的に蓄えておくバッファの内容を表示するコマンドになりますので、
バッファに収まり切らなくなった古いメッセージは消えていきます。

ですので長期間稼働しているのシステムでは、dmesgコマンドを
実行してもシステム起動時のメッセージが残っていない事がありますので
注意が必要になります。

Linuxのディレクトリ構造(一覧)を理解する

2010年2月27日
「Linuxのディレクトリ構造(階層)っていまいち分からない」
「WindowsならCとかDドライブに保存するけど、Linuxはどこにファイルを置けばいいの?」
「/etc や /var って何が入っているディレクトリ?」
Linuxを触り始めた初心者が、最初に必ずつまずくのがこの「ディレクトリ構造(階層)」の概念です。

この記事では、Linuxのディレクトリ構造(FHS規格)の全体像と、現場のエンジニアが「これだけは絶対に暗記している」という主要なディレクトリの役割を一覧で分かりやすく解説します。

WindowsとLinuxの構造の大きな違い

Windowsでは「Cドライブ」「Dドライブ」といったドライブごとに階層が分かれていますが、Linuxにはドライブという概念がありません。

Linuxでは、すべてのファイルやディレクトリが /(ルートディレクトリ) を頂点とした1つの巨大な「木(ツリー)」のような階層構造になっています。

どんなにディスクを追加しても、すべてはこのルートディレクトリの傘下(/mnt や /media など)にぶら下がる形(マウント)で管理されます。

続きを読む "Linuxのディレクトリ構造(一覧)を理解する"

Linuxのディレクトリ構造

2010年2月16日

ディレクトリとは、ファイルを階層的に分類、整理する為の仕組みです。
Windowsで言うフォルダに相当し、オペレーティングシステムの
基本機能として組み込まれています。

Linuxのディレクトリ構造は「/」(ルート)を頂点とした
1つのツリー(木)構造を採用していることに特徴があります。
フロッピーディスクやCD-ROMドライブなどの異なるファイルシステムは
ディレクトリツリーにマウントすることで使用可能になります。


Linuxのディレクトリを操作する上に置いて、覚えておかなくてはならない
重要なパスの指定方法が2種類あります。

それは「絶対パス指定」と「相対パス指定」です。

続きを読む "Linuxのディレクトリ構造"

Linuxの種類(ディストリビューション)

2010年2月15日

Linuxの種類(ディストリビューション)

Linuxにも様々な種類があります。
初心者向けのものから上級者向けのもの、またはクライアント向き、
サーバー向きなど用途によっても様々です。

Windowsではマイクロソフトからしか発売されていませんが、Linuxの場合様々な
メーカーから発売されており、これらメーカーを「ディストリビューター」(配布者)と呼び、
Linuxの種類を「ディストリビューション」(配布)と呼びます。

例えば、有名なところで言えば、RED HAT Linux、やFedora Core、Vine Linuxなどに
なります。

もっと具体的にいうならRED HAT Linuxは「レッドハット株式会社」がディストリビューターで
配布している製品、「Red Hat Enterprise Linux 5」がディストリビューションということになります。

下記にて代表的なLinuxを紹介します。


Red Hat Linux(レッドハット・リナックス)
ソフトウェアを簡単にインストールしたり、削除する事が出来るRPM(RPM Package Manager)
システムを開発したディストリビューションで、以前は無償で使用できサポートも受けられる
ディストリビューションとして知られていましたが、現在では有料サポートを主力とした
企業向けRed Hat Enterprise Linuxは発売しています。

以前の無償部分はFedora ProjectとしてRed Hatとは独立した組織になっていますが、
Red Hatはスポンサーとして参加し、開発エンジニアなどの派遣も行い積極的に支援しています。

また、一部のインターネットユーザの間では「赤帽」と呼ばれることがあります。


Fedora(Fedora Core)
フェドラと読み、2003年末に開発を終了したRedhat Linuxの後継を開発するために設立された
「Fedora Project」によって開発されるディストリビューションです。
レッドハットと同じくRPMパッケージを採用しており、バージョン6までは「Fedora Core」と
呼ばれていました。

Fedoraの特徴としては、「フリー/オープンソースソフトウェアの世界を迅速に発展させること」を
謳っていることから、UbuntuやopenSUSEと同様、いち早く最新新技術を取り込む
ディストリビューションとして有名です。

また、リリースサイクルが非常に短く約半年ごとに新バージョンがリリースされ、
メンテナンス期間が短いというデメリットもあります。
これはコミュニティ主導で高度な開発を行い、その成果をRed Hat Enterprise Linuxに
取り込むことを目的としている為だと考えられます。


CentOS
セントオーエスと読み、Red Hat Enterprise Linuxとの完全互換を目指したフリーの
Linuxディストリビューションです。

Red hat社が無料公開しているソースコードから、同社の商標、商用パッケージを
取り除いた形で配布されているため、無償で使用することができます。
また、この経緯からRHELクローン」とも呼ばれます。

CentOS という呼び名は「コミュニティベースで開発された、
エンタープライズクラスのオペレーティングシステム」
(Community ENTerprise Operating System)に由来しています。

また、Red Hat社はCentOSの配布、過初荷は関与していないため、
同社のサポートを受けることはできません。

用途としては、大手レンタルサーバーでの採用からわかるように
企業のサーバー構築を主目的としたOSになります。


Vine Linux
ヴァイン・リナックスとよみ、日本国産のディストリビューションになります。
以前はRed hat Linuxの派生Linuxでしたが、現在はProject Vineの元、独自に開発が
行われています。

Vine Linuxは日本語をそのまま扱うことができるようになった日本語対応の
Linuxディストリビューションの先駆けの一つになります。

Vine Linuxは、目新しさよりも安定性を重視する傾向にあり、リリース間隔を長くとり、
採用しているソフトウェアのバージョンも最新版でない事が多く、新機能の取り込みに
時間を掛けるのが特徴です。


Ubuntu
ウブントゥと読み、使いやすく、最新かつ安定したOSを開発目標としており、その使いやすさから
DELLが自社製品のOSに採用している実績があります。

Ubuntu は、Canonical Ltd.から支援を受けて開発されていて、
ディストリビューション名の Ubuntu は、南アフリカのズールー語の言葉で
「他者への思いやり」などの意味をもっています。

Ubuntu は、Debian GNU/Linuxをベースに開発されており、
なるべく自由なソフトウェアを使うことを方針としていて、
思想的にはDebianに近い位置に立っています。

また、近年日本でも人気のあるディストリビューションの一つとなってきています。


Debian
デビアンと読み、Debian Projectによって開発が行われています。
歴史が長く、Debian上で利用できるデスクトップ環境やサーバー運用向けの
ソフトウェアなどを多く提供しています。

また、このDebianは多くのLinuxに影響を与えており、Ubuntu、MEPIS、Xandros、
sidux、KNOPPIXなどの派生Linuxを生んでいます。


Turbo Linux
日本に本社があるターボリナックス社によって開発が行われているLinuxです。
比較的早い段階でのLinuxカーネル 2.6の採用や、Windows Mediaを再生できる
ソフトウェアを同梱したパッケージの販売、AMD64へのいち早い対応で有名です。

また、Microsoft Windowsとの互換性強化にも積極的に取り組んでいるのも特徴の一つです。

Linuxが使えるをパソコン見極める方法

2010年2月15日

Linuxが使えるをパソコン見極める方法

もし、あなたがこれからLinuxを始めようとした場合、Linuxが使えるパソコンを
手に入れようとすると思います。

今回、あなたがLinuxが動作するパソコンを手に入れようとした時、
実際にどのように探せばいいのかということをお話させてもらいます。

まず最初に知っておいて欲しいことは、市販されているPCの多くはWindows向けに
製造されていて、決してLinux向けに作られていないという事です。
残念な事にメーカーがLinuxの動作保証していないPCについては、
実際にインストールしてみないとわからないというが現状になります。

ですから、もしあなたがこれからLinuxを始めたい、インストールをしてみたいと
考えているなら、とにかく目の前に余ってるPCがあるならLinuxのインストールを
してみることが重要です。

続きを読む "Linuxが使えるをパソコン見極める方法"

Linuxのログとは

2010年2月15日

Linuxのログとは

ログとは、Linuxの動作状況をログファイルとして保存する仕組みのことを指します。

例えば、システム上の不具合やエラー、セキュリティに関する情報など、
障害やハッキングの被害に遭ったときに対処するための必要な情報が
記録されますので、Linuxにとって、とても重要な仕組みになります。

ログはソフトウェアが記録する場合と、syslogデーモンが記録する
場合の2種類があります。

ここでいうソフトウェアとは、WebサーバーなどのApacheを指し、
記録形式などをユーザー自身で設定することも可能ですが、
その場合、そのログを記録するプログラムをそのソフトウェア自身が
実装していないといけません。

一方Linuxシステムに組み込まれているsyslogデーモンは、
デーモンとして動作し続け、様々なソフトウェアからのリクエストを
受け付けて、ログを記録するプログラムになります。

続きを読む "Linuxのログとは"

Linuxとは?Linuxって何?

2009年12月28日

Linuxとは?Linuxって何?

Linuxとは1991年にリーナス・トーパルズ氏によって生み出されたオペレーティングシステム(以下OS)です。

「OS」とはコンピュータ本体やキーボード、マウス、ディスプレイと言った様々な機器(ハードウェア)の
機能すべてを司る役割と、ワープロソフトや表計算ソフトなどのアプリケーションソフトが正しく
動作するよう手助けする役割があります。

一番身近なものとして、WindowsやMAC OSなどがあり、Linuxもそれらと同じOSになります。

また、Linuxは古くから存在するUNIXというOSの流れをくんでおり、その設計思想を真似て開発されている為、
「UNIXクローン」とも呼ばれたりします。

Linuxの一番の特徴は「無料」で使用できる点です。

無料と聞くと「安かろう悪かろう」という印象があるかもしれませんが、
Linuxは無料で使用できる上、非常に優れた安定性と信頼性があり、
昨今では企業の基幹システムで採用される事が多くなっています。

なぜ、そのような事が可能かというと、Linuxは開発当初からオープンソースという、
インターネットにソースコードを公開する配布形式を採用しているからです。

ソースコードとは、プログラミング言語で書かれたテキストファイルの事を指します。
ソフトウェアはプログラム言語で書かれ、そのままではコンピュータが理解出来ないため、
コンパイラで機械語に翻訳して始めてソフトウェアとして使うことができます。

コンパイラを通す前のテキストファイル → ソースコード
コンパイラを通した後の実行ファイル  → バイナリファイル

バイナリファイルはコンピュータが理解出来るよう記述されているため、
人間が見ても理解できません。しかし、ソースコードを見れば、ソフトウェアが
どのような機能を持ち、どのような動きをするのかすぐに知ることができます。

また、ソースコードがあれば、それを元に新しいソフトウェアを開発することができます。

ですので、市販されているソフトウェアは、一般的にソースコードが公開されていません。
ソースコードを公開すれば、そのソフトが持つ機能や脆弱性を公開する事になり、
なによりそのソフトウェアメーカーが持つ技術を外部に公開する事になってしまうからです。
ですから、ソースコードはソフトウェアメーカーにとって「トップシークレット」なのです。

しかし、Linuxは「オープンソース」というソースコードを公開する形で
今まで開発が続けられてきました。

オープンソースで開発するメリットは、世界中の多くのプログラマが
Linuxの中身を自由に知ることができるので、問題点の早期発見や、新機能の追加などが
短期間で実現できる点です。

多くの人の目にさらされることで、Linuxはすべてガラス張り状態にあると言っても
過言ではないと思います。

問題点があれば、インターネット上の誰かがそれを指摘し、直ちに修正されます。
これが市販のソフトウェアなら、メーカーが対応しなければその問題点は
いつまで経っても改善しません。

このオープンソースという無料であるが故の開発スピードと透明性が
現在のLinuxの地位を築いたと言えるでしょう。

\n\n\n\n\n\n\n\n\n