プログラミング
15年前のネットブックをArch Linuxで復活させる
Reviving a 15-year-old netbook with Arch Linux (parksb.github.io)
要約
筆者は2009年製のASUS Eee PC 1000HE(Intel Atom N280、1GB RAM)をArch Linux 32で再活用する試みについて詳述しています。Windows XPの動作が著しく遅くなったため、軽量なOSとしてArch Linux 32を選択し、ブートメディアの準備、インターネット接続、システムクロック設定、ディスクパーティショニングといったインストールプロセスを解説しています。
全文翻訳
15年前のネットブックをArch Linuxで復活させるArch Linux 32をEee PC 1000HEにインストール 2026.07.04KO | EN新しいオペレーティングシステムインストール前の準備ブートメディアの準備インターネットへの接続システムクロックの設定ディスクのパーティショニングインストールシステムの設定ブートローダーの設定ネットワークの設定インストール後Arch User Repositoryデスクトップ環境RAMの増設私は2009年に購入したネットブックをまだ持っています。ASUS Eee PC 1000HEはIntel Atom N280と1GBのDDR2 RAMを搭載しています。Atom Nシリーズは、ネットブック向けのIntelの安価で低性能なCPUラインでした。このチップには56KBのL1キャッシュと512KBのL2キャッシュがあり、クロック速度は1.667GHzです。2023年にリリースされた予算型ラップトッププロセッサであるIntel Core i3 N305と比較すると、L1キャッシュは768KB、L2キャッシュは4MBで、3.8GHzで動作します。これにより、Eee PCのパフォーマンスがいかに低いかがわかります。ネットブックにはこのような妥協されたスペックが付随していたため、その性能の悪さを嘆いてもあまり意味がありません。当時でさえラップトップには及びませんでしたが、文書の編集やウェブの閲覧といった軽い作業には十分でした。しかし、2012年頃までには、日常的なタスクでさえ使用するのが困難になっていました。プログラムは機能を追加し続け、ウェブサイトはよりインタラクティブになり、ネットブックの小さなHDDは老朽化していました。最終的に、ウルトラブックがネットブックに取って代わりました。そして、そのネットブックは倉庫で眠りにつきました。新しいオペレーティングシステム10年以上後の2023年、私は突然そのネットブックのことを思い出しました。倉庫から取り出したマシンは、保管したときと全く同じように見え、起動後に表示される安っぽいWindows XPのUIは、私が覚えていた通りでした。Windows Explorerを開くだけでも数秒かかり、ロード中はカーソルが途切れ途切れになりました。マシンがさらに遅くなったのか、それとも常にこうだったのか、そしてかつてはこれでも速いと思っていたのか、思い出せませんでした。ネットブックが再び倉庫から出されたので、サーバーとして、あるいはYouTubeマシンとして、再び使えるように復活させることにしました。私の最初の考えは、2014年にサポートが終了したWindows XPは捨てなければならないということでした。Windows 7以降のWindowsリリースは、少なくとも1GBのRAMを必要とします。ネットブックにはちょうど1GBのRAMが搭載されていたため、快適に使用するにはより軽量なオペレーティングシステムが必要だと考えました。Ubuntuは最低512MBのRAMを必要としましたが、過去に低スペックのラップトップにUbuntuをインストールしたとき、パフォーマンスは特に良くありませんでした。私は、最小限のものだけを備えた、非常に軽量なオペレーティングシステムが必要でした。不要なデフォルト機能がなく、このネットブックのためだけにゼロから環境を構築できるものでなければなりませんでした。答えは明白でした。Arch Linuxです。Arch Linuxは、シンプルさ、モダンさ、実用主義、ユーザー中心、そして汎用性という原則に基づいて構築されたLinuxディストリビューションです。以前からArch Linuxを試してみたいと思っていたので、良い機会だと感じました。セットアッププロセスでオペレーティングシステムについて多くのことを学べるという事実も、学期が始まる直前に始めるのに良い趣味になりました。インストール前の準備Arch Linuxは2017年以降、x86アーキテクチャのサポートを公式に終了しました。Atom N2xxプロセッサは32ビットのみをサポートしているため、コミュニティによって維持されているArch Linux 32を使用するしかありませんでした。Arch Linux 32のインストールプロセスは、ArchWikiのArch Linuxインストールガイドとそれほど違いはありませんでしたが、マシンの限られたパフォーマンスが予期せぬ展開をもたらしました。この記事では、このネットブックにArch Linux 32をインストールした個人的な経験を詳細に記録したいと思います。ブートメディアの準備まず、Arch Linuxのディスクイメージが必要でした。Arch Linux 32のダウンロードページで、イメージファイル(.iso)と署名ファイル(.sig)をダウンロードし、gpgコマンドを使用してイメージが改ざんされていないことを確認しました。$ gpg --keyserver-options auto-key-retrieve --verify archlinux32-2023.03.02-i686.iso.sigすべてがチェックアウトしたら、ブートメディアを作成します。私はWindowsデスクトップでRufusを使用して、ダウンロードしたISOファイルをUSBドライブに書き込みました。次に、USBドライブをネットブックに接続し、BIOS(Basic Input/Output System)に入り、USBを最初のブートオプションに設定して再起動しました。これにより、コンピュータはハードディスクではなくUSBドライブから起動します。インターネットへの接続Arch Linuxのインストールイメージは、デフォルトのシェルとしてzshを使用します。Arch Linuxをインストールするには、マシンにインターネット接続が必要です。まず、ネットワークインターフェイスがアップしているか確認します。$ ip link 1: lo ... state UNKNOWN ... link/loopback 00:00:00:00:00:00 2: enp3s0 ... state DOWN ... link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff 4: wlan0 ... state UP ... link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ffここで、loはループバックインターフェイスです。ループバックインターフェイスは、システムが自身に接続するために使用する仮想ネットワークインターフェイスです。IPアドレス127.0.0.1は、それに割り当てられたループバックアドレスです。enp3s0は、マザーボードのPCIバス3(p3)、スロット0(s0)上のイーサネットデバイス(en)に対応するインターフェイスです。イーサネットは有線ネットワークの標準です。wlan0は無線LANインターフェイスです。Wi-Fiで接続する予定だったので、wlan0がUP状態であることを確認しました。次に、rfkillを使用して、インターフェイスがブロックされていないか確認します。$ rfkill ID TYPE DEVICE SOFT HARD 0 wlan eeepc-wlan unblocked unblocked 1 bluetooth eeepc-bluetooth unblocked unblocked 2 wwan eeepc-wwan3g unblocked unblocked ...有線接続が利用可能な場合は、LANケーブルを接続するだけです。ただし、Wi-Fiで接続するには、iwctlを使用してアクセスポイントをスキャンし、手動で接続する必要があります。iwctlは、Intel製の無線ネットワークデーモンであるiwd(iNet wireless daemon)によって提供されるクライアントプログラムです。Arch Linuxのインストールイメージには、デフォルトでiwdが含まれています。$ iwctl [iwctl]# device list Devices ----------------------------------------------------------- Name Address Powered Adapter Mode ----------------------------------------------------------- wlan0 xx:xx:xx:xx:xx:xx on phy0 station [iwctl]# station wlan0 scan [iwctl]# station wlan0 get-networks Available networks ---------------------------------- Network name Security Signal ---------------------------------- iptime psk **** iptime_2.4G psk **** [iwctl]# station wlan0 connect iptime_2.4G Type the network passphrase for iptime_2.4G psk. Passphrase: ******** [iwctl]# exitネットブックの無線カードは5GHzネットワークをサポートしていなかったので、2.4GHzに接続するしかありませんでした。最後に、archlinux32.orgにpingを送信して、インターネット接続が機能していることを確認します。$ ping -c3 archlinux32.orgシステムクロックの設定システムクロックを更新します。まずNTP(Network Time Protocol)を有効にし、次にクロックが正しいことを確認します。NTPは、サーバーから正しい時間を受信してシステムクロックを同期するプロトコルです。これは、Unix時間における鉄道時刻表の仕組みで簡単に説明しています。$ timedatectl set-ntp true $ timedatectlディスクのパーティショニングfdiskコマンドを使用すると、コンピュータに接続されているディスクを確認できます。$ fdisk -l Disk /dev/sda: 14.8 Gib, x bytes, x sectors Disk model: Flash Disk ... Disk /dev/sdb: 149.0 GiB, x bytes, x sectors Disk model: ST9160410AS ...sdaはインストール用USBで、sdbはネットブック内のHDDなので、sdbを選択しました。$ fdisk /dev/sdb既存のパーティションはWindows用に設定されていました。1つのHDDはCドライブとDドライブに分割され、EFIパーティションとリカバリパーティションもありました。もう必要のない古いパーティションをすべて削除し、すべてをゼロから設定したかったのです。それを行うには、まずシステムのマザーボードを理解する必要がありました。マザーボードのROMには、システムが電源を受け取ったときに最初に実行され、起動に必要なハードウェアを初期化するファームウェアが格納されています。大まかに言うと、ファームウェアにはBIOS、EFI(Extensible Firmware Interface)、UEFI(Unified Extensible Firmware Interface)の3種類があります。EFIはBIOSを改善し、UEFIはEFIを改善したため、最近のハードウェアは通常UEFIを搭載しています。古いマザーボードは通常