どうも、とむむです。
今回は、内蔵無線LANをインストール時に有効にする方法とインストール後に有効にする方法を紹介したい。
また、twitterで「インストール時にopen-ssh serverを選択できませんか?」とコメントを頂いたので、その調査結果も合わせて触れておきたい。*1
インストール時に内蔵無線LANを有効にする方法
とむむの無線LAN環境ではうまく動かなかったので、ご自分の環境で動けばラッキーくらいの感覚でお試し頂きたい。
事前準備(dpkg-debコマンドが叩けるdebian/UbuntuなどのLinux環境)
前回のインストール時のネットワークハードウェアの検出にヒントがあるが、DG-STK1Bの無線LANを認識させるためのファームウェアファイルはrtl8723bs_nic.binだと分かる。
ここからの作業はdpkg-debコマンドが叩けるdebian/UbuntuなどのLinux環境を準備してから実施しよう。*2
1. ファームウェアファイルを探す
まずは、ファームウェアファイルを探すところからだ。
rtlxxxxはファイル名からも分かるように、Realtek製の無線LANだ。
2. ファームウェアが含まれるdebパッケージのダウンロード
Debianのnon-freeリポジトリ内にfirmware-realtekがあるので、以下のページへアクセスする。
上記のページ内にお目当てのファームウェアファイルが含まれていることを確認。
ちなみに、2021年8月17日現在のパッケージは、firmware-realtek_20210315-3_all.debだった。
3. インストールUSBメモリにファームウェアファイルをコピー
4. インストールUSBメモリをLinuxにマウント
とむむの場合はUSBメモリのデバイス名が/dev/sda1 だったので、以下のコマンドでマウントした。
$ sudo mkdir /mnt/usb $ sudo mount /dev/sda1 /mnt/usb $ mkdir /mnt/usb/rtlwifi
5. debパッケージからbinファイルを抽出してインストールUSBメモリにコピー
$ wget http://ftp.jp.debian.org/debian/pool/non-free/f/firmware-nonfree/firmware-realtek_20210315-3_all.deb
$ dpkg-deb -x firmware-realtek_20210315-3_all.deb realtek
$ cp realtek/lib/firmware/rtlwifi/rtl8723bs_nic.bin /mnt/usb/rtlwifi
インストール時に内蔵の無線LANを有効にする手順
以下の手順でインストールを進める。
- 以下の画面が出るまでは、前回と同様の手順でインストールする。
- 上記の画面が出てきたら、キーボードのAlt + F2を押す。
- 上記の画面で、Enterを押すように促されるので、Enterを押す。
- consoleモードにはいったら、dfなどで現在のマウント状態を確認する。
- /cd-romがマウントされていることを確認できたら、cp -r /cdrom/rtlwifi /lib/firmware を実行する。
- キーボードのAlt + F1を押して、以下の画面に戻り、「はい」を押す。
- ネットワークの設定で、wlan0: 無線 Ethernet (802.11x) を選択する。
- ネットワークの設定で、自宅やご近所の無線ネットワークのESSIDが見えるようになるので、自分のESSIDを選択する。
- ネットワークの設定で、自分のESSIDのパスフレーズを入力する。
- アクセスポイントとの鍵交換を試行中…が完了するのを待つ。*4
ここまで準備して無線LANに繋がらなかったら、前回の手順でインストールする。。
インストール後に内蔵無線LANを有効にする方法
ファームウェアのパッケージをインストールして、無線LANの設定をすれば終わり…のはずが、再起動時にうまく繋がらないことが分かった。
再起動時のワークアラウンドも見つけたので、その方法も記載しておく。
有線LANに接続してパッケージをインストールする
1. ポジトリを設定する
non-freeを追加する
$ sudo su - # echo "deb http://ftp.riken.jp/Linux/debian/debian/ bullseye non-free" >> /etc/apt/sources.list # echo "deb-src http://ftp.riken.jp/Linux/debian/debian/ bullseye non-free" >> /etc/apt/sources.list # apt update
2. firmware-realtekをインストールする
$ sudo su -
# apt install firmware-realtek -y
無線LANを設定する
1. 無線LANのコンフィグファイルを作成する。
$ wpa_passphrase "SSID名" *******(パスフレーズを入力) > /tmp/wpa_supplicant.conf $ sudo mv /tmp/wpa_supplicant.conf /etc/wpa_supplicant/
2. interfacesファイルを設定する。(一旦はdhcpで設定)
$ sudo vi /etc/network/interfaces -----<以下を追記 # WLAN auto wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
3. 無線LANを有効にする。
$ sudo ifup wlan0 $ ip addr show dev wlan0 2: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet xxx.xxx.xxx.xxx/xx brd xxx.xxx.xxx.255 scope global wlan0 valid_lft forever preferred_lft forever inet6 xxxx:xx:xxxx:xxx:xxxx:xxxx:xxxx:xxxxx/64 scope global dynamic mngtmpaddr valid_lft 14329sec preferred_lft 12529sec inet6 xxxx::xxxx:xxxx:xxxx:xxxxx/64 scope link valid_lft forever preferred_lft forever
起動時に無線LANを有効にする
このまま再起動しても無線LANのLinkがDownしたまま上がってくるので、小細工をする。
1. rc.localを追加にする。
$ sudo su - # cat <<EOF > /etc/rc.local #!/bin/sh -e ifdown wlan0 ifup wlan0 exit 0 EOF # chmod a+x /etc/rc.local
2. rc.localを有効にする。
$ sudo systemctl enable rc-local
3. 再起動する。
$ sudo reboot
インストール時にopen-ssh serverを選択できる? できない?
前回の最後の方で、以下のように書いていた。
Debianはデフォルトでopenssh-serverがインストールされないようなので、起動したら忘れずにインストールしておくこと。
結論から言うと、適切なインストールメディアを選べば、open-ssh serverの選択は可能だ。
上記はインストールの途中に戻るなどを押すと、インストールのメニューが確認できる。
左がlive-cdのインストール時、右がiso-cdやiso-dvdのインストール時だ。
live-cdとiso-cd/dvdの異なる点
- live-cdの方はシステムのインストールしかない。
- iso-cd/iso-dvdの方はベースシステムのインストールとソフトウェア選択とインストールが存在する。
なので、原因はlive-cdを利用していたことにある・・・。*6
オススメのインストールメディアは?
容量に関わらず、 debianのインストールにはネットワークが必要になるようだ。
なので、iso-cd がオススメだ。
700MB以下で済むので、1GBのUSBメモリにインストール可能だ。
以上で、Debian11のインストールは完了だ。
久々のDG-STK1Bだが、Debian11のおかげでまだまだ活用できる余地があることが分かった。
特に内蔵無線LANのみで運用できるようになったのは、意外と大きく、無線LANの届く範囲でUSB電源さえ確保できれば、置き場所を選ばなくなった。
これまでのエントリーを参考にしてもらい、DG-STK1系の復活に役立てて頂けると幸いだ。
それにしても、最近は64bitのLinuxばかり触っているので、32bitのLinuxは久しぶりだ。
しばらく使ってみて、32bitならではの制約などあれば、まとめてみたいと思う。