LoginSignup
10
11

More than 3 years have passed since last update.

Debian 11 Bullseye インストール

Last updated at Posted at 2021-05-03

Debian インストーラーのRC1が出てきて、パッケージもだいたい固定されました。正式リリースまで現状から大きな変化は無いので、RC1インストーラー使用後にやっておくとよさそうなことをまとめます。Debian amd64 の話で、ラズパイ用のRaspberry Pi OSではない純正Debianは https://qiita.com/kakinaguru_zo/items/e69adff9c92a959c9453 を見て下さい。Raspberry Pi OSのパッケージをDebian 11 Bullseyeに更新する手順は https://qiita.com/kakinaguru_zo/items/78aa8ba3912a131fd078 を見て下さい。デスクトップ環境(GUI)の話はほとんどありません。

インストーラー(ファームウェア付き)

普通にインストーラーをダウンロードするとファームウェア無しのものが来ますが、それだと無線LANが使えません。 https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/ から無線LANなどのファームウェアが含まれるCDイメージをUSBメモリーなどに書き込んで使用して下さい。それでもインストール時に無線LANを使えないことがありますが、インストールしてNetworkManagerなどを設定するとつかえるようになる場合が多いです。デスクトップ環境や日本語環境は不要ですが、インストーラーから「標準パッケージ」を入れておかないとあとで不便なことになることが多いので入れたほうがいいです。

インストール終了後rootでログインしてから行う作業

apt関連の設定

/etc/apt/apt.conf.d

/etc/apt/apt.conf.d/00myconf
APT::Default-Release "bullseye";
APT::Install-Recommends 0; インストール時に必須ではないが推奨されるパッケージを入れないなら
APT::Get::Purge 1; アンインストールしたときに設定ファイルも一緒に消すなら
APT::Get::Upgrade-Allow-New 1;
Acquire::http::Proxy "http://127.0.0.1:8000/"; もしsquid-deb-proxyapt-cacher-ng を使っているなら

/etc/apt/sources.list

RC1インストーラーはbullseye-updatesbullseye-backports を選択しても sources.list に追加してくれないので、手作業で以下のように追加します。追加したら apt-get update して下さい。

/etc/apt/sources.list
deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://security.debian.org/ bullseye-security main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb http://deb.debian.org/debian bullseye-backports main contrib non-free

ファームウェアやCPUマイクロコードのインストール

必要なファームウェアを自分で選択して入れる必要があるところが、Ubuntuとの違いです。

CPUマイクロコード

を必ずインストールします。そうしないとバグがあるままCPUを用いることになり危険です。

一般のファームウェア

linux-firmware-freefirmware-misc-free をまず入れます。その他に名前がfirmwareから始まるパッケージ で必要そうなものを入れます。よく必要になるものは以下の通りです。

無線やサウンドなどのの製造元はlspciで調べます

/etc/fstab へのマウントオプション追加

ファイルシステムはext4btrfsを仮定しています。書き込みを速くするものが多いです。
例:

/etc/fstab
UUID=ナントカ / ext4 rw,async,lazytime,strictatime,data=writeback,journal_async_commit,nobarrier 0 1
  • lazytime タイムスタンプの更新以外の書き込み操作が無いときはその書き込みを先送りする。これを用いるとよく勧められる noatimerelatime の代わりに遅いと言われる strictatime を用いても遅くなりません
  • nobarrier ディスクデバイスドライバがキューに溜まっている書き込みの順番変更を許容するようにし、ストレージデバイスにより適した順番でデータを書き出せるようになります。
  • data=writeback (ext4のみ) これをrootパーティションに使うときは tune2fs -o journal_data_writeback /dev/ナントカ をマウントしたままで構わないので行わないとrootのマウントできなくなり起動しなくなります…
  • journal_async_commit (ext4のみ) 前提として data=writeback が必要です。

ネットワークの設定

DebianおよびUbuntuでネットワークの設定を行うパッケージには主に

がありますが、どれか一つを選びそれ以外のネットワーク設定パッケージをすべて apt-get purge します(systemd-networkd はデフォルトでは起動しないのでそのままでよい)。とくにifupdownpurge した後は、rm -rf /etc/network で関連する設定ファイルを消しておきます。CUIのnmtuiコマンドまたはGUIで設定できるNetworkManagerがもっともユーザーフレンドリーです。無線LANを使う場合はwireless-regdbと、wpasupplicantまたはiwdをインストールします。

wpasupplicant を用いる場合NetworkManager付属のnmtuiなどで簡単に無線LANの設定を行えますが、iwdを用いる場合以下の設定が必要になります。

/etc/NetworkManager/NetworkManager.confに追加
[device]
wifi.backend=iwd

root で以下のコマンドを実行した後に、nmtui を使用します。

# apt-get install iwd
# systemctl disable --now wpa_supplicant
# systemctl restart NetworkManager

その他のパッケージ

メール関係

入れないとエラー関連のメールが届かないので…

記憶媒体の監視

SSD にせよ HDD にせよ経年劣化でそのうち壊れますが、ヤバくなってきたときにメールを送ってくれるパッケージ smartmontools を入れます。メールが来ないで突然死することもあります。

まず smartctl -x /dev/デバイス名 で診断情報を表示できるか調べます。表示されない場合 man smartctl するか、デバイスが対応していないと考えて諦めます。

/etc/smartd.conf
/dev/監視したいデバイス  -a -o on -S on -s (S/../.././02|L/../../6/03) -m root

などと書いておくと定期的にセルフテストを行わせ、ヤバイときに root にメールさせられます。

ハードウェア乱数生成器の活用

最近のデバイスにはハードウェア乱数生成器が付属している場合が多いですが、 rng-tools5 を入れておくとハードウェア乱数生成器を /dev/random などで活用できるようになるため、無線LANなどでも必要になる暗号鍵の生成などがより安全かつ高速になります。

ファイアーウォール関連

ファイアーウォール関連の設定は最近では nftables で行われ、従来使われていた iptables のパッケージページには「いますぐ移行を検討して下さい」 と書かれてしまっています…😱しかし、/etc/nftables.conf を手書きで書くのはなかなかシンドいです(私はそうしていますが…)

そこで、Debian/Ubuntu ではもう少し親切なユーザーインターフェースとしてufw が用意されていて、これを用いると自動的にnftablesを用いた設定になります。

また、RedHat/Fedora系の標準であるfirewalldも問題なく使えますが、必ずufwを apt-get purge してから使います。ufwとfirewalldを同時に使うとわけがわからないことになります。GUIを用いてfirewalldを設定するときにはfirewall-configfirewall-appletを入れると便利です。

一般ユーザーのグループへの追加

特殊なグループ に所属する一般ユーザーは以下のことができるようになります。必要に応じて adduser ユーザー名 グループ名 というコマンドを用いて追加します。adduserを用いて新ユーザーを作成したときに自動的に所属するグループは /etc/adduser.confEXTRA_GROUPSADD_EXTRA_GROUPSを用いて設定できます。

  • netdev: NetworkManagerを用いてネットワーク設定を変更できるようになります
  • plugdev: USBやSDカードの記録媒体にアクセスできるようになります
  • video: ウェブカムやフレームバッファデバイスなどにアクセスできるようになります
  • audio: 音声出力や入力をできるようになります
  • bluetooth: ブルーツースを使えるようになります
  • cdrom, floppy, tape: それぞれのデバイスにアクセスできます
  • kvm: qemuを直接使うときにKVMをつかえるようになります。
  • libvirt: virt-manager, virsh などlibvirtを用いた仮想マシンやコンテナへのアクセスをできるようになります
10
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
11