この記事はK4e Linux Distros Advent Calendar 2025の七日目の記事です
前書き
Linuxの用途の一つとして「古くなったPCの復活」があります。
古いPCではWindows11がまともに動きません。Windows11の最低動作条件を少し上げると
- CPU: 2コア以上 64bit
- メモリ: 4GB以上
- TPM対応
となっています。
7世代以前のintel CPU、TPM非対応、メモリ4GB未満だとインストール時にはじかれます。しかも最低要件ではまともにパソコンを使うことができません。例えばメモリは最低8GBないとまともに動きません。
Linuxディストリビューションには古いPCを対象にした軽量Linuxディストリビューションというものがあります。antiX、Linux Mintなどです。これらはメモリ2GB程度の古いPCでのサクサク動作します。いまだに32bitに対応しているものもあり、Windows2000時代のPCでも動くLinuxがまだあります。
そんな中でも今日は、特に動作が軽量で軽量Linuxの代表格として紹介されることも多いPuppy Linuxを紹介していきます。
概要
- 系統: 独自系(昔はSlackware互換)
- リリースタイプ: 不定期リリース(複数バージョンが独自にリリース)
- パッケージマネージャ: APT(Debian・Ubuntuベースのバージョン)、Puppy Package Manager(PPM)(互換性のため)
Puppy Linuxとは
Puppy Linuxは極端に軽量な独自系Linuxです。20年前のWindows XP初期のPCでもびっくりするくらいサクサク動きます。
高速動作の秘密はシステム起動時にあります。Puppyはシステム起動時にシステム全体をRAMに読み込みます。そのため、動作中ストレージの読み込みが発生しません。メモリ上ですべて動作するため、ストレージのI/Oが遅い古いシステムでも快適動作します。
提供される.imgを用いてLive USBとして動作させることができます。Live USBとして起動したとしても、システムはすべてメモリ上で動作するため快適に使用することができます。
Live USBとして利用するほかに、Puppyをシステムにインストールすることもできます。
PuppyのインストールにはFrugal installというとても面白い方法を用います。
Frugal Install
Frugal InstallとはOS全体を数個の圧縮ファイルとして既存のファイルシステムに保存するインストール方法です。通常のインストール方法とは異なり、HDDのパーティションを変更することなく現在のOSとのデュアルブート環境を作成することができます。
Frugal Installを行うと指定したフォルダにvmlinuzと初期RAMディスク、OSの本体であるpuppy.sfsなどの.sfsファイル、保存ファイル、その他数ファイルが保存されます。起動時はpuppy.sfsなどの.sfsファイルがメモリに書き出されます。
OSを数個のファイルで管理するため、既存のUSBメモリ、外付けSSDに状態を変えることなくOSをインストールすることができます。また、システムの変更は状態を保存するsavefileにのみ書き込まれるため、もし設定に失敗してもsavefileを消すだけで元通り。実験的な用途でも使用できます。
インストール
後から日本語環境を整備するのは面倒なので有志が作成している日本語版をインストールします。
以下のURLからダウンロードできます。
因みにhttps://sakurapup.comはPuppy Linuxに関する情報交換に使われる日本語掲示板です
wikiに書かれた情報は古く、BookwormPup64のイメージサイズは800MBを超えています。fossapupあたりからサイズが700MBを超え出し、CDにシステムが乗らなくなりました。無念。DVDかUSBに書きましょう。
今回はVentoyに.imgを置いてVentoy経由で起動させます。
初回起動
起動時Puppy特有の表示が出てきます。
Copying 'puppy_dpupbw64_10.0.12.sfs' to ram...
Copying 'adrv_dpupbw64_10.0.12.sfs' to ram...
Copying 'ydrv_dpupbw64_10.0.12.sfs' to ram...
Copying 'bdrv_dpupbw64_10.0.12.sfs' to ram...
...
Puppyのシステムは.sfsファイルとして保存されており、起動時にシステム全体がRAMにコピーされます。.sfsとはSquashFSという、Linux向けの圧縮された読み込み専用のファイルシステムです。ブロックデバイスやメモリの制限が厳しい、組込みシステムのようなシステムで使われます。起動時にシステム全体がRAMにシステムがコピーされるため、読み込み速度が遅い古いシステムでも爆速でアプリが起動し、I/Oに問題が起きてもUSBメモリを抜いても動作を継続できます。ハードウェアでの問題が起きやすい古いシステムでも問題なく使用することができます。
初回起動時の画面
日本語版のため何も変える必要はありません。
neofetch
デフォルトでneofetchがダウンロードされています。
Kernelバージョンは6.1.148。LTS系のカーネルでDebian12の既定カーネルです。
システムを全てメモリに移す関係でかなりメモリを食います。メモリが足らなくなるとストレージからの直接参照に切り替わるようです。古いPCでメモリが不足しているシステムだとPuppyの強みが生かせないというジレンマがあります...。
それではPuppyをインストールしていきます。
FrugalPup Installers
FrugalPup Installersというアプリが用意されています。FrugalPupボタンを押します。
Puppyボタンを押します。
インストール元は"このPuppy"を選択します。
Puppyをインストールするパーティションを選びます。今回は昨日の記事でインストールしたCachyOSに忍び込ませます。btrfsでも問題なくインストールできます。
パーティション内にフォルダを作成して、それを選択します。
今回は/mnt/nvme0n1p2/puppy/BookworkPup64というディレクトリを作成しました。
インストール先を確認してOKボタンを押しましょう。
(インストール先を/puppyとしてしまっている画像しか残ってませんでした。)
書き込まれました。
起動フォルダをどこに置くかを指定します。Frugal Installしたnvme0n1p2を指定します。
Grub2 ブートローダの設定
Menu>セットアップ>Grub2ブートローダの設定を開いてブートローダの設定をしましょう。
Puppy Linux用のGrubを用意する形になります。
まず、ブートパーティションを選びます。既にCachyOSで使われているnvme0n1p1を指定します。
起動ファイルの選択。uefiを選びます。
すでにsystemd bootがありますが、systemd bootとpuppy用のGrub2が共存する形でインストールがされます。
内容を確認してOKボタンを押します。
再起動
インストールが終わったら再起動します。
初回シャットダウン時にsavefileを作成します。
savefileを作成するパーティションを指定します。ここではnvme0n1p2を選択。
savefileを暗号化するかを選べます。今回は暗号化なしで。
保存スタイルを選択します。フォルダの中に保存が推奨されているのでこちらを選択。
保存ファイル名を指定します。johnとしたりpochiとしたりshibaとしたりお好きにどうぞ。
はい、保存します ボタンを押した瞬間にシャットダウンが始まります。
それでは再起動してみましょう。インストールした時点でPuppyを起動するGrub2が起動順序1位に変更されています。
起動しない?
備忘録としてエラー対処について書いておきます。
起動時エラーの対処
Grub2からの初期起動の際に問題が起きました。
root /puppy/BookwormPup64/puppy_ppupbw64_10.0.12.sfs not found.
システムが見つからないというエラーが出てきてしまいました。
ログを見てみます。
Partition root not found.
rootなどというパーティションはないはず。
問題となっているのはGrubの起動オプションです。
Grubのlinuxから始まる行の起動オプションに
pdrv=root
という記載があります。これが悪さをしています。
pdrvはsfsやinitrdの場所を指定するオプションです。本来はsda2やnvme0n1p2などのデバイスファイル名やUUIDが入る場所なのですが、なぜかrootというパラメータが設定されています。これを消しましょう。
pdrvの指定がない場合、全デバイスを順番にスキャンして自動検出します。pdrv=rootを消してF10で起動が出来ました。
私はnvmeにインストールしており、自動検出も一瞬で終わったため次回起動時にも単純にpdrvを消して起動を行うようにgrub.cfgを変更しました。
再起動後
今後は先ほど設定した保存ファイルにシャットダウン時自動で保存がされるようになります。
LibreOfficeのインストール
文書作成くらいはできるようにしたいです。フリーのオフィスソフトであるLibreOfficeをインストールしましょう。
BookwormPupはDebianベースで開発されているため、パッケージマネージャとしてaptが使えます。
# apt update
# apt install libreoffice
Menu>グラフィックにDrawとImpress、Menu>文書にWriter、Menu>ビジネスにCalcが追加されます。
日本語入力について
日本語版ではデフォルトでAnthyを用いた日本語入力環境が整備されています。半角/全角キーで英字ローマ字の切り替えが可能です。
まとめ
今日は超軽量Linux代表格である、Puppy Linuxを紹介しました。前回私が触ったPuppyはFossapup64で、こちらはUbuntu20.04ベースでした。今後もDebianかUbuntuをベースに開発されると、流石にメモリに乗らないくらいのシステムサイズになってきそうです。デフォルトで1000以上のパッケージがダウンロードされているため、いらないデフォルトパッケージを消して最適なシステムサイズに自分で調節する必要がありますね。
それにしてもFrugal installはPuppy独自の非常に面白い仕組みですね。grubを入れるEFIパーティションさえ用意しておけばpuppy本体はファイルとして保存ができます。USBメモリに仕組んでおいて、もしものときのリカバリーディスクとして持っておくのはおすすめです。システムはすべてメモリ上で動くためUSBブート特有の動作遅延がありません。
明日は非常に面白いシステム管理方法を採用しているセキュリティ重視のOS、Vanilla OSを紹介します。



























