目次
新しいリリースで導入された変更点には副作用が避けられず、どこか他の場所でバグを出してしまうことがあります。この章では、現時点で私たちが知っている問題点を記載しています。正誤表・関連パッケージの付属文書・バグ報告や、「もっと読みたい」で触れられているその他の情報も読んでください。
この項では stretch から buster へのアップグレードに関連した項目を取り扱います。
/proc
に hidepid
マウントオプションを利用すると現在のバージョンの systemd では問題が生じることが知られており、systemd
の開発元ではこの設定は非サポートとされています。/etc/fstab
を編集してこのオプションを有効にしているユーザーは、buster
でのログインセッションが動作することを保証するため、アップグレード作業の前に必ず無効にしてください (再度有効にする方法については Wiki の
Hardening
に概要があります)。
ypbind
のデフォルトオプションが変更されています。変更されているのですが、このファイルを編集していた場合は旧来のデフォルト設定が更新されないので、必ず
/etc/default/nis
中の YPBINDARGS=
オプションで -no-dbus
が含まれていないことを確認してください。-no-dbus
オプションがあると
ypbind は起動に失敗し、ログイン不能になるかもしれません。詳細は bug #906436 を参照してください。
The default behavior of rpcbind
has
changed to no longer answer remote calls from NIS clients. On NIS servers
you will need to add the (Debian-specific) -r
flag to the
command line options of rpcbind, otherwise users will not
be able to log into your NIS client machines. For more info see bug #935492.
sshd
の
PubkeyAcceptedKeyTypes
のセマンティクスおよび類似の
HostbasedAcceptedKeyTypes
オプションが変更されています。以前は受理する鍵の種類を設定していた箇所ですが、現在は対応する認証方法に応じて受理する署名アルゴリズムを指定します。この点は
RSA/SHA2 署名アルゴリズムである rsa-sha2-256
や
rsa-sha2-512
とそれらの証明書関連で問題になりえます。それらのオプションを上書きはしているものの、アルゴリズム名を省略してしまっている場合には、認証で失敗が生じます。
これらのオプションがデフォルトの場合は特に対応不要です。
systemd
はブート中にエントロピーを必要とするので、十分なエントロピーが得られない場合にはカーネルはそのようなシステムコールをブロッキング扱いします。randomness
サブシステムが十分に初期化されるまで (random: crng init done
が完了するまで)
に、数分から場合によっては数時間止まっているように見えることがあります 。amd64
システムでは
RDRAND
命令があるため、この問題は Debian カーネルの標準設定
(CONFIG_RANDOM_TRUST_CPU
) では回避されます。
amd64
以外のシステムや、ある種の仮想マシンで高速な起動を維持するには、エントロピー確保に別の手段を要します。Debian インストーラープロジェクトは
haveged
をこの目的のために選択しました。ハードウェアによるエントロピー確保ができないシステムの場合に役立ちます。仮想マシンについてはホストから各仮想マシンへ
virtio_rng
を用いて提供してください。
もし遠隔システムをこの文書を確認される前に buster にアップグレードしてしまった場合は、ping をネットワーク経由で当該システムに送信し続けてください。それによってエントロピーが増してランダムネスプールが確保されれば、システムへの ssh アクセスが再度可能になります。
詳細は wiki を参照し、他の手段については DLange さんによるこの問題の概要説明を確認ください。
もし以前のシステムからアップグレードを続けてきていて、streth で非推奨となった古いスタイルのネットワークインターフェイス名 (例えば
eth0
や wlan0
といったもの) をまだ使っている場合、
(いくつかのケースで動作はし続けるでしょうが) buster の udev
では最早それらを/etc/udev/rules.d/70-persistent-net.rules
ファイル経由でのサポートをしない点に注意してください。buster
へのアップグレード後にネットワーク接続を喪失する危険性を回避するために、前もって新スタイルの命名方式に移行しておいてください
(PCIバスやスロット位置で決まる名前で、通常 enp0s1
や
wlp2s5
のような名前になります)。インターフェイス名をハードコーディングしているファイアーウォール設定や
ifupdown
設定などに注意ください。
The alternative is to switch to a supported mechanism for enforcing the old
naming scheme, such as a systemd .link
file (see systemd.link(5)). The
net.ifnames=0
kernel commandline option might also work
for systems with only one network interface (of a given type).
新しい形式の命名が適応できるかを検討する前に、まず現状のインターフェイス名をご確認ください:
$ echo /sys/class/net/[ew]*
結果出力の名前ごとに、設定ファイルでの利用状況の確認と、udev
が選択するであろう名前の確認を行います:
$ sudo rgrep -weth0
/etc $ udevadm test-builtin net_id /sys/class/net/eth0
2>/dev/null
This should give enough information to devise a migration plan. (If the
udevadm
output includes an 「onboard」 or
「slot」 name, that takes priority; MAC-based names are normally
treated as a fallback, but may be needed for USB network hardware.)
命名規則の変更準備が整ったら、70-persistent-net.rules
をファイル名変更か各行毎のコメントアウトで無効にします。仮想マシンでは
/etc/systemd/network/99-default.link
を削除し、(もし virtio
ネットワークデバイスを利用していれば)
/etc/systemd/network/50-virtio-kernel-names.link
も削除します。その後に
initrd
を再生成してください:
$ sudo update-initramfs -u
その後に再起動すれば、システムは新規命名スタイルを利用します。その他に関連する設定ファイルを修正し、システム動作を試験してください。
See the wiki, upstream
documentation, and the udev
README.Debian
for further information.
Systems using channel bonding and/or dummy interfaces, for instance to
configure a machine as a router, may encounter problems upgrading to
buster. New versions of systemd
install a file /lib/modprobe.d/systemd.conf
(intended
to simplify configuration via systemd-networkd) which
contains the lines
options bonding max_bonds=0 options dummy numdummies=0
Admins who were depending on different values will need to ensure they are
set in the correct way to take precedence. A file in
/etc/modprobe.d
will override one with the same name
under /lib/modprobe.d
, but the names are processed in
alphabetical order, so /lib/modprobe.d/systemd.conf
follows and overrides (for instance)
/etc/modprobe.d/dummy.conf
. Make sure that any local
configuration file has a name that sorts after
「systemd.conf
」, such as
「/etc/modprobe.d/zz-local.conf
」.
様々なセキュリティ推奨に従い、標準の最低 TLS バージョンが TLSv1 から TLSv1.2 に変更されました。
TLS 接続のセキュリティレベルについても同様で、レベル 1 からレベル 2 に変更されています。これは 80 bit から 112 bit へのセキュリティレベル変更と 2048 ビット長以上の RSA ないし DHE 鍵を必要とすることを意味し、224 ビット長以上の ECC 鍵と SHA-2 ハッシュも要件となります。
システムレベルでの設定は /etc/ssl/openssl.cnf
で変更できます。各アプリケーションはそれぞれの設定項目でそれらを上書きも可能です。
標準の /etc/ssl/openssl.cnf
には
MinProtocol
と CipherString
があります。CipherString
にはセキュリティレベルも設定可能になりました。セキュリティレベルの詳細については SSL_CTX_set_security_level(3ssl)
マニュアルページをご参照ください。プロトコルの最低要件バージョンについては SSL_CONF_cmd(3ssl)
に記載してあります。その他の情報は ciphers(1ssl)
および config(5ssl) に記載があります。
システムレベルの /etc/ssl/openssl.cnf
による設定は次の設定で元の値に戻すことができます:
MinProtocol = None CipherString = DEFAULT
標準設定で問題が生じる場合は、当該する遠隔サイトへ連絡して頂くことを推奨します。
buster では GNOME の標準ディスプレイマネージャーが Xorg から Wayland に変更されました (「GNOMEは標準で Wayland を利用します」 参照)。人気のパッケージマネージャー synaptic
や標準の中国語 (簡体字) 入力メソッド、fcitx
、そして多くのスクリーンレコードアプリケーションは Wayland
で適切に動作するように更新されていません。それらを用いる場合は GNOME on Xorg
セッションでログインする必要があります。
以下は、よく知られていて特に時代遅れとなってしまったパッケージの一覧です (説明については 「利用されなくなったパッケージ」 参照)。
時代遅れとなったパッケージの一覧には以下が含まれます:
パスワードを管理する revelation
パッケージは
buster に含まれません。keepass2
は XML
ファイル形式で revelation
からエクスポートされたパスワードデータベースをインポートできます。アップグレードの前には、パスワードアクセス方法の喪失を防ぐために、必ず
revelation のエクスポートを行ってください。
ipsec-tools
と racoon
パッケージは、開発元が新たな脅威への適応に追従できておらず、buster
からは除外されました。
利用者は libreswan
への移行が推奨されます。より広いプロトコル互換性があり、上流での更新も活発に行われています。
libreswan
は racoon
で利用されている通信プロトコルの上位互換を提供しているため、完全な互換性があると考えられています。
シンプルなMTA ssmtp
パッケージが buster
で無くなりました。これは TLS 証明書の検証に問題があるためです。bug
#662960 を参照してください。
The ecryptfs-utils
package is not
part of buster due to an unfixed serious bug (#765854). At the time of writing this
paragraph, there was no clear advice for users of eCryptfs, except not to
upgrade.
次のリリースである Debian 11 (コードネーム bullseye) では、いくつかの機能が非推奨となります。11 へ更新する際にトラブルを防ぐためには、ユーザーは他の選択肢へ移行する必要があります。
これには以下の機能が含まれます:
Python 2 は開発元でのサポート打ち切りが 2020年1月1日
に予定されています。Debian では python-2.7
パッケージを Debian 11 で無くす予定です。python
コマンドに依存したものがある場合は、python3 への移行の準備を開始してください。
Icinga 1.x is EOL upstream since 2018-12-31; while the icinga
package is still present, users should
use the buster lifetime to migrate to Icinga 2 (icinga2
package) and Icinga Web 2 (icingaweb2
package). The icinga2-classicui
package is still present to
use the Icinga 1.x CGI web interface with Icinga 2, but the support for it
will be removed in Icinga 2.11. Icinga Web 2 should be used instead.
The Mailman mailing list manager suite version 3 is newly available in this
release. Mailman has been split up into various components; the core is
available in the package mailman3
and the full suite can be obtained via the mailman3-full
metapackage.
The legacy Mailman version 2.1 remains available in this release in the
package mailman
, so you can migrate
any existing installations at your own pace. The Mailman 2.1 package will
be kept in working order for the foreseeable future, but will not see any
major changes or improvements. It will be removed from the first Debian
release after Mailman upstream has stopped support for this branch.
Everyone is encouraged to upgrade to Mailman 3, the modern release under active development.
The packages spf-milter-python
and
dkim-milter-python
are no longer
actively developed upstream, but their more feature-rich replacements,
pyspf-milter
and dkimpy-milter
, are available in buster. Users
should migrate to the new packages before the old ones are removed in
bullseye.
apt full-upgrade
が完了した時点で、「正規」のアップグレードは完了しています。buster
へのアップグレードについては、再起動の実行前に必要となる特別な作業はありません。
![]() | 注記 |
---|---|
This section does not apply if you have decided to stick with sysvinit-core. |
After the switch to systemd as default init system in Jessie and further refinements in Stretch, various SysV related packages are no longer required and can now be purged safely via
apt purge initscripts sysv-rc insserv startpar
Debian がセキュリティ問題に対する最小限のバックポートを約束できないパッケージがいくつか存在しています。これらについては以下の章で触れられています。
Debian 10
は複数のブラウザエンジンを含んでおり、これらは一定の割合でセキュリティ脆弱性の影響を受けます。高い脆弱性率と一部開発元での長期間サポートブランチの欠落によって、セキュリティ修正をバックポートしてこれらのブラウザならびにブラウザエンジンをサポートする事が難しくなっています。さらに、ライブラリへの内部依存性のため、開発元での新しいリリースへの更新を極めて難しくしています。従って
buster に含まれているものの例として webkit や khtml エンジン[6]を使ったブラウザがありますが、これらはセキュリティサポートはされません。一般的にこれらのブラウザを信用できないウェブサイトを閲覧するのに使うべきではありません。webkit2gtk
ソースパッケージはセキュリティサポートの対象となっています。
一般的なウェブブラウザ利用として我々は Firefox または Chromium を推奨しています。安定版向けに現行の ESR リリースをリビルドすることで最新を維持します。同じ手法が Thunderbird にも適用されます。
The Debian infrastructure currently doesn't properly enable rebuilding packages that statically link parts of other packages on a large scale. Until buster that hasn't been a problem in practice, but with the growth of the Go ecosystem it means that Go based packages won't be covered by regular security support until the infrastructure is improved to deal with them maintainably.
If updates are warranted, they can only come via regular point releases, which may be slow in arriving.
大抵の場合、stretch から buster へのアップグレードは淀み無く進むはずです。しかし、少数ではあるもののアップグレード前後で介入が必要となる場合があります。以下にパッケージごとの詳細を記載します。
Starting with glibc
2.26, Linux
kernel 3.2 or later is required. To avoid completely breaking the system,
the preinst for libc6
performs a
check. If this fails, it will abort the package installation, which will
leave the upgrade unfinished. If the system is running a kernel older than
3.2, please update it before starting the distribution upgrade.
su
has changed semantics in buster and no longer
preserves the user environment variables DISPLAY
and
XAUTHORITY
. If you need to run graphical applications
with su
, you will have to explicitly set them to allow
access to your display. See bug #905409
for an extensive discussion.
stretch から buster へのアップグレードの際、glibc
のロケールデータがアップグレードされています。具体的には、これは PostgreSQL
がテキストのインデックスでどのようにデータをソートするかについて、変更を与えます。破損を防ぐため、locales
パッケージまたは locales-all
パッケージのアップグレード直後、データベースを運用に戻す前にこのようなインデックスは REINDEX
を実施する必要があります。
推奨コマンド:
sudo -u postgres reindexdb --all
別の方法として、pg_upgradecluster を使って PostgreSQL 11
へアップグレードするのがあります (これはすべてのインデックスを再ビルドする pg_dump
をデフォルトで利用します。-m upgrade
または pg_upgrade
の利用は、ロケールの変更で正しいものでは無くなってしまったインデックス順を保持するので安全ではありません。
詳細については PostgreSQL Wiki を参照して下さい。
In stretch, the package mutt
had
patches applied from the sources at https://neomutt.org. Starting from buster,
the package providing /usr/bin/mutt
will instead be
purely based on the original sources from http://www.mutt.org, and a separate
neomutt
package is available
providing /usr/bin/neomutt
.
This means that some of the features that were previously provided by
mutt
are no longer available. If
this breaks your configuration you can install neomutt
instead.
Without a pointing device, there is no direct way to change settings in the
GNOME Settings app provided by gnome-control-center
. As a work-around, you can
navigate from the sidebar to the main content by pressing the Right
Arrow twice. To get back to the sidebar, you can start a search
with Ctrl+F, type
something, then hit Esc to cancel the search. Now you can
use the Up Arrow and Down Arrow to
navigate the sidebar. It is not possible to select search results with the
keyboard.
Users of the initial buster release images should not change the LUKS
password of encrypted disks with the GNOME graphical interface for disk
management. The gnome-disk-utility
package in buster had a very nasty bug
(#928893) when used to change the LUKS password: it deleted the old
password but failed to correctly set the new one, making all data on the
disk inaccessible. This has been fixed in the first point release.
Users using evolution
as their email
client and connecting to a server running Exchange, Office365 or Outlook
using the evolution-ews
plugin
should not upgrade to buster without backing up data and finding an
alternative solution beforehand, as evolution-ews has been dropped due to
bug #926712 and their email inboxes,
calendar, contact lists and tasks will be removed and will no longer be
accessible with Evolution.
The evolution-ews
package has been
reintroduced via buster-backports. Users upgrading from stretch to buster
can enable buster-backports after the upgrade and then they will be able to
reinstall evolution-ews
.
When installing Debian from live media using the Calamares installer (「Debian Live チームからのお知らせ」) and selecting the full disk encryption feature, the disk's unlock key is stored in the initramfs which is world readable. This allows users with local filesystem access to read the private key and gain access to the filesystem again in the future.
This can be worked around by adding UMASK=0077
to
/etc/initramfs-tools/conf.d/initramfs-permissions
and
running update-initramfs -u. This will recreate the
initramfs without world-readable permissions.
A fix for the installer is being planned (see bug #931373) and will be uploaded to debian-security. In the meantime users of full disk encryption should apply the above workaround.
When using s3ql
with Amazon S3
buckets, the configuration needs updating for a change in the URL. The new
format is:
s3://<region>/<bucket>/<prefix>
The shipped configurations for /var/log/btmp
and
/var/log/wtmp
have been split from the main
configuration file (/etc/logrotate.conf
) into separate
standalone files (/etc/logrotate.d/btmp
and
/etc/logrotate.d/wtmp
).
If you have modified /etc/logrotate.conf
in this
regard, make sure to re-adjust the two new files to your needs and drop any
references to (b|w)tmp from the main file, since duplicate definitions can
cause errors.
[6] These engines are shipped in a number of different source packages and the
concern applies to all packages shipping them. The concern also extends to
web rendering engines not explicitly mentioned here, with the exception of
webkit2gtk
.