computer system foundationCSF 2026
演習4 / LINUX

Linux を体験する

GUIの裏側では、すべての操作がコマンドで行われている。 Linux シェルを実際に操作し、ファイルシステム・パーミッション・プロセスの仕組みを体験しましょう。

所要:40–60分 難易度:★★☆ 前提:OS 入門

この演習は3部構成である。1 と 2 は続けて進めてください。

Part 1
ガイド付き演習
擬似シェルにコマンドを実際に打つ。7つのミッション。
Part 2
本物の Linux
ブラウザの中で Debian が動く(WebVM)。制限なしで触れる。
発展
チャレンジ課題
自由探索。シェルスクリプトを書いてみる。
01

ガイド付き演習:Linux コマンド入門

ターミナルにコマンドを実際に入力してミッションをクリアしよう。好きな順で取り組んでよい。判定はコマンドの文字列ではなく、実際に起きたこと(移動できたか、ファイルができたか)を見ている。

進捗 0 / 7 ミッション完了
student@linux-sim:~$
▸ コマンドリファレンス(クリックで開く)
ナビゲーション
pwd現在のディレクトリを表示する
lsファイル一覧を表示する
ls -la詳細表示(. で始まる隠しファイルも出る)
cd <dir>ディレクトリを移動する
cd ..一つ上のディレクトリへ移動
ファイル操作
mkdir <name>ディレクトリを作成する
touch <file>空ファイルを作成する
echo "text" > fileテキストをファイルに書き込む
cat <file>ファイルの内容を表示する
chmod <mode> <file>パーミッションを変更する
テキスト処理
grep <pattern> <file>パターンに一致する行を検索
wc -l <file>ファイルの行数を数える
cat file | grep patternパイプで組み合わせる
cmd >> file追記する(> は上書き)
プロセス・システム
ps実行中プロセスの一覧
echo $$現在のシェルの PID を表示
uname -aOS・カーネル情報を表示
02

本物の Linux を触ってみよう

ブラウザの中で本物の Linux が動いている。ここでやるのは 擬似シェルには無いものを見ることである——本物のカーネルが持つ情報、本物のプロセス、本物のコンパイラ。 Part 1 と同じコマンドを打ち直すことではない。

注意: 初回起動に 30〜90秒 かかる(ブラウザ内で Linux カーネルを起動するため)。 ネットワーク接続が必要で、ページをリロードするとリセットされる。
黒いまま動かないときは——タブを「JSLinux(Alpine)」に切り替えるか、 webvm.io を別タブで開く。 どちらも駄目なら Part 1 の擬似シェルで課題を進めてよい(学内ネットワークが遮断していることがある)。
Debian GNU/Linux — WebVM 別タブで開く ↗

Part 2 の課題

実行したら出力を貼る。ここに書いたものはブラウザに保存され、最終課題でそのまま使える。

0 / 3
03

チャレンジ課題

Part 1・2 の完了後、WebVM または JSLinux で以下の追加課題を実行する。

スクリプト・実行権限

シェルスクリプトを書く

echo 'echo Hello' > hello.sh でファイルを作り、 chmod +x hello.sh で実行権限を与えて ./hello.sh で走らせる。権限が無いとどうなるかも見てみよう。

キーワード:スクリプト / 実行権限 / #!
パイプ・フィルタ

パイプラインを使う

cat /etc/passwd | grep root を実行し、 wc -l で行数を数える。 | が「前の出力を次の入力にする」ことの意味を考えよう。

キーワード:パイプ / stdin・stdout / フィルタ
ディレクトリ構造

ツリーを作って探す

mkdir -p project/src project/docs で入れ子のディレクトリを作り、 ファイルを置いて find . -type f で一覧にする。

キーワード:mkdir -p / find / ツリー構造
プロセス・資源

プロセスを観察する

ps auxtop で PID・CPU 使用率・メモリ使用量を読む。OS が資源をどう配っているかを、04 章のスケジューリングと重ねて考えよう。

キーワード:PID / CPU% / MEM% / デーモン
04

まとめ:学んだこと

ファイルシステム:Linux のディレクトリ構造は「/(ルート)」から始まるツリー型
パーミッション:rwx の3ビットが所有者・グループ・他人に設定される
プロセス:実行中のプログラムには一意の PID が付与される
パイプライン:コマンドの出力を次のコマンドの入力として渡せる
シェル:ユーザーと OS カーネルの間を取り持つインタープリタ
CLI vs GUI:CUI はスクリプト化・自動化に強く、サーバー運用の基本