Debian Linux/amd64 9.1をUSBメモリーにインストールし、カスタマイズされたLinuxカーネルを使う

普段は、NetBSD/amd64-currentを使用しているのだが、WindowsかLinuxでしか動かないデバイスを使ってみたり、どういう挙動をしているのか確認する際には、Linuxを一時的に起動させたい。 その際には、printkをいくつも追加してビルドしたLinuxカーネルで起動させたい。

USBメモリーまたはUSB HDDにDebian Linuxをインストールする

NetBSDだと、build.sh live-imageで、そのままgzcatとddコマンドで書き込めるXも含まれた環境のイメージファイルが作れるので、あるマシンで一時的にNetBSDを起動させようと言う場合には、非常に助かっている。 同じようにLinuxでもライブイメージを探してみたのだが、カーネルをISO 9660イメージの中に含めていて置き換えが難しいものしか見つからない。 確かにあっても、ルートディスクデバイスを決め打ちするので、あまり汎用性はないかもしれないが…。

Debian Linux/amd64 9.1を以下のような手順でインストールすれば、1台目のUSBメモリーやUSB HDDでどのマシンでも起動できるので、書いておく。

  1. Debian Linux/amd64 9.1のライブイメージをダウンロードする(今回はXFCE版を使用した)
  2. ダウンロードしたイメージファイルをDVD-Rに書き込む
  3. Debian Linux/amd64 9.1をインストールしたいUSBメモリーやUSB HDDをマシンにつなぐ
  4. 書き込んだDVD-RからDebian Graphical Installerを起動させる(USB接続のDVD-ROMドライブで良い)
  5. USBメモリーやUSB HDDにインストールする
  6. DVD-Rをドライブから抜き、あるいは、DVD-Rドライブを外して、USBメモリーまたはUSB HDDから起動させる
USBメモリーにダウンロードしたイメージファイルをddコマンドで書き込んでインストールする方が速いし楽なのだが、そうすると、grub.cfgを後で手修正しないといけないので、DVD-Rにしておくのがお勧めである。

Linuxカーネルをビルドする

Debian Linux 9.1では、linux-packageというパッケージはなくなっているようだが、それを使ったウェブページばかり検索されてくるので、 Debian Linux 9.1での場合を書いておく。 一部冗長な部分があるかもしれない。


# apt-get update
# apt-get install linux-source
# apt-get build-dep linux
$ cd ~/
$ tar Jxvf /usr/src/linux-source-4.9.tar.xz
$ cd ~/linux-source-4.9
$ cp /boot/config-4.9.0-3-amd64 ./.config
$ make -j4 bindeb-pkg
$ cd ../
$ sudo dpkg -i linux-headers-*.deb
$ sudo dpkg -i linux-image-*.deb
# reboot

NetBSDでwpa_supplicantを使ってWEPでWi-Fi接続する場合

NetBSDでWEPでWi-Fi接続する場合には、ifconfig(8)コマンドを使えば簡単なのだが、 wpa_supplicantを使っても接続してみたい。

まず、ifconfig(8)を使った場合を書いておく。run(4)なWi-Fiアダプターを使う場合である。


# ifconfig run0 ssid [SSID名] nwkey [パスフレーズ]
# dhcpcd run0

同じことをwpa_supplicantを使って設定する場合を書いておく。


$ cat ~/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
network={
        ssid="[SSID名]"
        scan_ssid=1
        key_mgmt=NONE # WEP
        wep_tx_keyidx=0
        wep_key0="[パスフレーズ]"
}
# wpa_supplicant -d -i run0 -c ~/wpa_supplicant.conf
# dhcpcd run0

今さらWEPもないはずなのだが、必要な時はあるので、書いておいた。

plgarc/wip/llama.cppでpkgsrcのBLASサポートを探る

この記事は、 NetBSD Advent Calendar 2024 の13日目の記事です。 llama.cppを使ってみる 以前に、 NetBSD/amd64でllama.cppを使ってみる という記事で llama.cpp を使ってみていました。 あれか...