Debian10インストールメモ
2020/05/06 (2021/12/12追記)
Ubuntuが18.10からx86用イメージを提供しなくなったので手持ちの32bitノートPCをDebian 10(Buster)に置き換えた。その際、調べたことや手順などのメモ。
Wi-Fi環境でのインストール
訳あってWi-Fiしかない環境でインストールすることになった。手持ちのUSB Wi-Fiアダプタ(後述)はDebianではインストール時には認識せず使えなかったが、スマホのUSBデザリング機能を使い、Wi-Fi子機として有線接続することでインターネットへのアクセスが可能になった。
スマホ側のWi-Fi設定が済んでいる前提で:
- 「ネットワークハードウェアの検出」までにPCとスマホをUSBケーブルで接続し、USBデザリングをオンにする。
または
- 「ネットワークの自動認識に失敗しました」の画面が出たら、「Debian インストーラーメインメニュー」まで戻り、PCとスマホをUSBケーブルで接続してUSBデザリングをオンにしたら「インストールプロセスの次のステップの選択:」メニューから「ネットワークハードウェアの検出」または「ネットワークの設定」を選ぶ。
内蔵の有線LANコネクタがある場合など、ネットワークインターフェイスが複数あるときは、デバイスの選択メニュー画面になるので、「enp0s29f7u1: 未知のインターフェイス」などと表示されているデバイスを選ぶ。(デバイス名は接続するUSBポートなどによって変化する)
すると有線ネットワークとして自動認識、設定されて「ユーザとパスワードのセットアップ」画面になるので以後は通常通りインストールする。
USB Wi-Fiアダプターのセットアップ
TP-LinkのTL-WN725NはLinux対応を謳っていて、Ubuntuでは挿すだけで使用可能だったが、Debianではドライバを入れる必要があった。メーカー公式のドライバは2018年5月から更新されておらず、Busterでビルドしても動かない。調べたところ、動作可能なものがhttps://github.com/lwfinger/rtl8188euで公開されていた。インストール方法は次のとおり。
準備
sudo apt update sudo apt upgrade
ソースを拾ってくるのにgit、ビルドにはlinux-headersとbuild-essentialが必要。ビルド環境が整っていなかったらmakeをインストールすれば必要なものが芋づる式に入る。
sudo apt install make git linux-headers-$(uname -r) build-essential
適当なディレクトリで次のコマンドを実行する。
git clone https://github.com/lwfinger/rtl8188eu
するとrtl8188euというサブディレクトリが作られ、中にソースがダウンロードされる。
パッチ当て(2021年12月現在)
JVNDB-2021-004944 「Linux Kernel における境界外書き込みに関する脆弱性」に対処するため、ioctl_linux.c.patchを当てる。(tektonさん情報ありがとうございます。)
ioctl_linux.c.patch sec_len = *(pos++); len -= 1; - if (sec_len > 0 && sec_len <= len) { + if (sec_len > 0 &&sec_len <= len &&sec_len <= 32) { ssid[ssid_index].SsidLength = sec_len; - memcpy(ssid[ssid_index].Ssid, pos, ssid[ssid_index].SsidLength); + memcpy(ssid[ssid_index].Ssid, pos, sec_len); ssid_index++; } pos += sec_len;
ioctl_linux.c.patchを./rtl8188euの中にコピーしたら、./rtl8188euに移動してpatchを実行する。
cd rtl8188eu patch os_dep/ioctl_linux.c ioctl_linux.c.patch
ビルド&インストール
patchが正常終了したら、makeする。
make all
エラーが出ずに終了したらインストールする。
sudo make install
最後に以下のコマンドでドライバの設定を行いシステムを再起動する。(再起動だけでいいかも)
sudo modprobe 8188eu.ko
再起動時、アダプタが付けっぱなしだと認識しないことがあるが、挿し直せば認識する。それ以降は付けっぱなしでも正常動作する。後はネットワーク接続の設定をすればOK。繋がればスマホのUSBデザリングは以後不要。
タッチパッドでスクロールさせる設定
タッチパッドの縁をなぞってホイールのようにスクロール(ついでに左右ボタン同時押しでミドルクリック)させるには、/usr/share/X11/xorg.conf.d/40-libinput.confを次のように編集する。
Section "InputClass" Identifier "libinput touchpad catchall" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Driver "libinput" + Option "ScrollMethod" "edge" + Option "MiddleEmulation" "on" EndSection
再起動後、タッチパッドの右辺を上下スワイプで縦スクロール、下辺を左右スワイプで横スクロールができる…はずなのだが、何故かこのノートPCでは横スクロールが機能しなかった。横スクロールもしたい場合は、Synaptics製タッチパッドドライバをインストールする。
sudo apt install xserver-xorg-input-synaptics
/usr/share/X11/xorg.conf.d/70-synaptics.confを次のように編集する。
Section "InputClass" Identifier "touchpad catchall" Driver "synaptics" MatchIsTouchpad "on" + Option "VertEdgeScroll" "on" + Option "HorizEdgeScroll" "on" + Option "Emulate3Buttons" "on" EndSection
Synapticsドライバを入れると自動でlibinputドライバは無効化される。なお将来的にはlibinputに集約される模様。
OpenSSLの設定
OpenSSL 1.1.1以降、デフォルトの鍵長が2048に変更されたため、メールサーバーによってはSSLでの送受信が「dh key too small」というエラーで失敗する。解決法として、/etc/ssl/openssl.confの最後の方にある次の設定を変更する。
[system_default_sect] -MinProtocol = TLSv1.2 -CipherString = DEFAULT@SECLEVEL=2 +MinProtocol = None +CipherString = DEFAULT
これでOpenSSL 1.1.0以前と同じ設定となる。ただしセキュリティ的には若干弱くなるので、メールサーバーが対応次第元に戻したい。
Xfceメニューのカスタマイズ
使わないけれども依存関係で削除したくないアプリ等をメニューから隠す方法。
1.ディレクトリ~/.local/share/applications/を作る。
mkdir ~/.local/share/applications
2.そのディレクトリに隠したいアプリの.desktopファイルを/usr/share/applicationsからコピーする(ファイラーでD&Dした方が楽)
cp /usr/share/applications/○○○.desktop ~/.local/share/applications/
3.コピーした.desktopファイルをテキストエディタで開き、以下の行を追加する。
NoDisplay=true
これでメニューから消える。NoDisplay=trueのかわりにHidden=trueとすると「他のアプリケーションで開く(A)...」からも消え、アプリそのものが存在しない扱いになる(デフォルトで開くアプリになっている場合を除く)。
他にもシステムファイルをいじらずにメニューのカテゴリやサブカテゴリを消したり追加したりできる。やり方は公式サイトhttps://wiki.xfce.org/ja/howto/customize-menuを参照。
インストールしたアプリケーション
リポジトリにあるもの
- Engrampa(書庫マネージャ)…Xarchiverが好みでなかったので。
- Fcitx(インプットメソッド)…uimがタスクトレイに収納できなくなっていた(2018年頃にドロップされたらしい)ので乗り換え。
- medit(テキストエディタ)…サイト管理用に文字コードが指定できる軽いエディタを探してたところコレを見つけた。
- Sylpheed(メールクライアント)…マルチプラットフォームでThunderbirdより軽い。
- Web(ブラウザ)…元Epiphany。記事が読めればいいときは軽くて良い。XfceのMidoriよりは安定している。
- seahorse(暗号鍵の管理)…そんなに使うわけではないが一応。
- gufw(ファイアウォール)…ufwのGUI。最低限のセキュリティは確保したい。
- ClamTk(アンチウィルス)…ClamAVのGUI。ただ公式サイトのパッケージの方が新しいのでそっちを利用したほうがいいかも。
- lightdm-gtk-greeter-settings…ログイン画面のカスタマイズで遊びたかった。
- thunar-gtkhash…ダウンロードしたファイルの確認用に。
それ以外
- ViValdi(ブラウザ)…起動は重いものの、時間が経過しても安定して使用できたので。
- FileZilla(FTPクライアント)…サイト管理やバックアップ用に。リポジトリにもあるが公式サイトのパッケージの方が新しいので。
- X Tile(ウィンドウの整列)…ウィンドウのタイリングは超便利。
Vivaldi 3.7 ほか
2021/03/20
Google Chrome 89 から SSE3 が必須になったことを受けて、Vivaldi 3.7 も SSE3 必須となりました。これでうちのポンコツノート PC では Vivaldi が使用不可に。Firefox に出戻りです。早く買い換えろって話ですが。
ポンコツノート PC といえば、最近 NomadBSD を試しています。32bit 版があるデスクトップ用途のBSDディストリビューションはこれと MidnightBSD しかなかったので。NomadBSD(FreeBSD) を使うメリットとして、
- 内蔵スピーカーから音が出るようになる。おそらくスピーカーが内蔵モデムを介して音源に接続されていて、その内蔵モデムが Debian 系 Linux のカーネルでは未対応もしくは標準で無効にされているので音が出ないっぽい。
- 手持ちの USB Wi-Fi アダプターがデフォで使える。Debian ではカーネルアップデートのたびにリビルドする羽目になるのでありがたい。
一方、デメリットは、
- pkg は apt ほど便利ではない。パッケージをインストールした後に自分で設定ファイルを変更しなければならないなど。そこらへんは「ソフトウェアは自分でビルドするもの」という BSD 界隈の風習らしい。
- 日本語環境を整えるのに手間がかかる。開発途上のディストロあるあるですが。
- Linux 系に比べて重い。もっともこれはチューニング次第かと。
さいわい NomadBSD は USB メモリーで使えるので、いろいろ研究してみようかと。
[カテゴリ:日記]
これ以前の日記は一覧から見られます。
最終更新時間:2012年04月05日 19時00分09秒