当我安装 show (sudo apt-get install nmh) 时,它失败并出现以下错误:
The hostname -f command returned: $1
Your system needs to have a fully qualified domain name (fqdn) in
order to install the var-qmail packages.
但如果我这样做:hostname -f
,它会返回:
ubuntu 系统
为什么我的安装失败?
答案1
因为这不是 FQDN。您需要类似 ubuntu-sylario.example.com 的内容,您可以通过使 /etc/hostname 包含ubuntu-sylario
和 /etc/hosts 包含(在包含 127.0.0.1 或 127.0.1.1 的行上,如果您使用 Debian/ubuntu,并确保它具有 FQDN 后跟主机名,即:127.0.0.1 ubuntu-sylario.example.com ubuntu-sylario
。下次重新启动时,使用和检查hostname
,hostname -f
哪个应该分别报告ubuntu-sylario
和ubuntu-sylario.example.com
答案2
执行以下操作,一次一行:
sudo apt-get purge qmail qmail-run tripwire mailutils
sudo apt-get -f install
sudo dpkg --configure -a
sudo apt-get update
sudo apt-get dist-upgrade
答案3
真正的答案是安装程序要求 qmail 或 smtp 不需要的东西。但是,如果您不想购买或伪造 fqdn(如果您愿意,您可以告诉它您是 foo.amazon.com),另一种方法是从源代码安装(例如使用 qmail 的 life)或使用类似 qmail-rocks 的东西。然后您会遇到的问题是,当您对系统进行发行版升级时,它可能会破坏您的 qmail 安装。因此,向 BOFH 想要成为软件包维护者的人施压,让他们取消这个愚蠢的要求。在他们这样做的同时,他们可以提供一些有用的东西,就像 exim 安装那样,比如询问您是否要使用智能主机(如果您在没有 fqdn 的机器上安装,并且需要在 qmail 的控制文件 smtproutes 中指定它,您可能会这样做)。