Category:
Linux
Ubuntu Server インストーラの initramfs には SD カードのドライバが入っておらず難儀しました。
必要なドライバは linux-image というパッケージ (ここらへんからインストーラの kernel に合致したものを探してください。今回は 32-bit だったので linux-image-3.2.0-23-generic-pae_3.2.0-23.36_i386.deb を利用) に含まれているので、ここからドライバを抽出してインストーラ環境で insmod してやればよいです。
まず、既存の Ubuntu 環境で以下の手順を実行します (インストーラ環境では deb パッケージの展開に必要な dpkg コマンドが利用できないため、パッケージの展開を別環境で行い、展開されたドライバをインストーラ環境に転送する必要があります)。
次に、インストーラ環境で Ctrl-Alt-F2 を押してコンソールに落ち、mmc_driver.tgz をダウンロードしてモジュールを (ざくっと全部) insmod します。
# VM で SD カードにインストールしてから移動するとか、USB な SD カードアダプタを使う方が簡単だったかも...。
必要なドライバは linux-image というパッケージ (ここらへんからインストーラの kernel に合致したものを探してください。今回は 32-bit だったので linux-image-3.2.0-23-generic-pae_3.2.0-23.36_i386.deb を利用) に含まれているので、ここからドライバを抽出してインストーラ環境で insmod してやればよいです。
まず、既存の Ubuntu 環境で以下の手順を実行します (インストーラ環境では deb パッケージの展開に必要な dpkg コマンドが利用できないため、パッケージの展開を別環境で行い、展開されたドライバをインストーラ環境に転送する必要があります)。
wget "http://ftp.jaist.ac.jp/pub/Linux/ubuntu/pool/main/l/linux/linux-image-3.2.0-23-generic-pae_3.2.0-23.36_i386.deb"mmc_driver.tgz は適当な Web サーバにアップロードしておきます (インストーラ環境では SCP も使えません)。
dpkg -x "linux-image-3.2.0-23-generic-pae_3.2.0-23.36_i386.deb" extract
tar czf mmc_driver.tgz extract/lib/modules/3.2.0-23-generic-pae/kernel/drivers/mmc/
次に、インストーラ環境で Ctrl-Alt-F2 を押してコンソールに落ち、mmc_driver.tgz をダウンロードしてモジュールを (ざくっと全部) insmod します。
cd /tmpこれで、SD カードが /dev/mmcblk0 に見えるようになり、インストーラに認識されます。
wget http:// ... /mmc_driver.tgz
tar xzf mmc_driver.tgz
find extract -type f -exec insmod {} \;
# VM で SD カードにインストールしてから移動するとか、USB な SD カードアダプタを使う方が簡単だったかも...。
Comments