
私のマシンの一部では、無人アップグレードによって再起動が必要であることを通知するメールが送信され、次のように表示されます。
[reboot required] unattended-upgrades result for localhost: SUCCESS
一方、他の環境では、localhost ではなく正しいホスト名が指定されます。ホスト名を正しく指定するには、どこでこれを変更すればよいでしょうか?
答え1
私の知る限り、では127.0.0.1
または が使用されています。::1
/etc/hosts
次のような行:
127.0.0.1 server.yourdomain.xx server localhost
::1 server.yourdomain.xx server localhost ip6-localhost ip6-loopback
server.yourdomain.xx
Debianテストでテストされたというメッセージを出力します
答え2
/usr/bin/unattended-upgrade
私たちのシステムでは、python3 スクリプトがホスト名を把握する方法の違いが原因と思われます。
一部のマシン (Ubuntu 18.04) では次のようになります:
import os
#...
def host():
# type: () -> str
return os.uname()[1]
...一方、新しいマシン (Ubuntu 22.04) では次のようになります:
import socket
#...
def host():
# type: () -> str
return socket.getfqdn()
後者のバージョンはhost()
単純に返される"localhost"
ので、socket.getfqdn()
引数なしの場合。
このunattended-upgrade
脚本の変更は紹介されたバージョン間1.3
そして1.4
。
このプルリクエストにはすでにいくつかの議論が含まれています観察された回帰を導入することについてlocalhost
、また実際に機能する回避策についても示唆しています。
/etc/hosts
次のように目的のホスト名をリストする代わりに、
127.0.0.1 localhost
127.0.0.1 my-hostname
... 次のようにリストします:
127.0.0.1 localhost
127.0.1.1 my-hostname
...今必要なのは、なぜ127.0.1.1
の代わりにを使用すると127.0.0.1
、これが機能します...
https://www.debian.org/doc/manuals/debian-reference/ch05.en.html#_the_hostname_resolution確かに、解決策の正しさに対するさらなる信頼性を高めるのに役立ちますが、私にとっては、関連するメカニズムと根拠に関する十分な背景情報がまだ提供されていません。
(1)のマニュアルページにはhostname
FQDNに関するセクションがある。名前解決の複雑さを理解するのに役立ちます:
FQDNを設定するための推奨方法は、、DNS、またはNISを使用して、ホスト名を完全修飾名の別名にすることです
/etc/hosts
。たとえば、ホスト名が「」の場合、次のようなursula
行があります。/etc/hosts
127.0.1.1 ursula.example.com ursula
技術的には、FQDN は(2)
getaddrinfo
によって返されたホスト名に対して (3) が返す名前ですgethostname
。DNS ドメイン名は最初のドットの後の部分です。
/etc/host.conf
したがって、変更方法はリゾルバの設定(通常は )によって異なります。通常、hosts ファイルは DNS または NIS の前に解析されるため、 で FQDN を変更するのが最も一般的です/etc/hosts
。
答え3
関連するファイルの内容を変更します。etc/mailname
:
パッケージが、(たとえば) ローカルで生成される送信ニュースやメール メッセージで使用するホスト名を知る必要がある場合は、ファイルを使用する必要があります
/etc/mailname
。このファイルには、マシン上のユーザーの電子メール アドレスのユーザー名と @ (アット) 記号の後の部分 (改行が続く) が含まれます。
通常、それはFQDN名(長さ他のシステムによって解決されるサーバーのホスト名またはIPアドレス(名前)です。
簡単にするために、関連するパッケージを再設定するだけです。Debian 10のデフォルトエキシム4パッケージは実際にはexim4-config
:
dpkg-reconfigure -pcritical exim4-config
-pcritical
質問がほとんど行われないことを保証します。これを省略するか、または下げて、-plow
これらの質問の一部またはすべてを表示することができます。
OPは使用していないのでエキシム4しかしmsmtpこの場合、構成は次のようにトリガーできます。
dpkg-reconfigure msmtp
Create a system wide configuration file?
これまでにこれを行ったことがない場合は、フォローアップの質問に進むために、最初の質問 ( ) の答えが「はい」であることが重要です。
また、エキシム4、設定スクリプト ( にインストールされると/var/lib/dpkg/info/msmtp.config
) は をチェックしない/etc/mailname
ため、推奨される Debian ポリシーに従っていません。