读者来信
我饶有兴趣地阅读了您关于开源 sendmail 的文章。虽然您提出了关于其技术和部署的一些很好的观点,但其中有一些不准确之处,在下面指出。这些更正由 Sendmail, Inc. 做出,该公司是 sendmail 作者 Eric Allman 于 1998 年共同创立的商业实体。
文章:实际上,8.11 是一个“功能”版本:它发布不是为了修补安全漏洞,而是因为 sendmail 团队添加了对 TLS 加密和 SMTP-AUTH 扩展到 SMTP 的支持。
更正:SMTP AUTH 在 8.10 中发布,8.11 添加了在使用 SMTP AUTH 时对加密的支持。
文章:设置 SMTP 网关的第一个也是可能最长的任务是生成 /etc/sendmail.cf。
更正:路径是 /etc/mail/sendmail.cf。
文章:下面是一个带有两个不同操作的 mailertable
polkatistas.org smtp:internalmail.polkatistas.org mail.polkatistas.org local:postmaster
除了传递规则外,sendmail 需要知道哪些电子邮件目的地应被视为本地(SMTP 网关的)主机名的同义词。这些在 /etc/mail/local-host-names 中指定,每行一个
mail.polkatistas.org更正:mail.polkatistas.org 应该在 mailertable 或 local-host-names 中,而不是两者都在。
文章:请注意,这不适用于别名,别名有自己的实用程序 newaliases。运行不带任何标志的 newaliases 以自动将您更改的 /etc/aliases 文件转换为新的 /etc/aliases.db 文件。
更正:路径应该是 /etc/mail/aliases(和 /etc/mail/aliases.db)。
—Anna Vrechek
Mick 回复: 首先,是的,aliases、aliases.db 和 sendmail.cf 的官方位置已从 /etc/ 更改为 /etc/mail。但是,在我撰写本文时用于测试的 Linux 发行版(SuSE 7.1 和 Red Hat 7.0)上,Linux 供应商提供的 sendmail 软件包将这些文件安装在 /etc/ 中,可能是出于历史原因(即,许多用户可能仍然期望它们在那里)。我的文章有意反映了我的大多数读者的实际情况,即使这与从最新源代码构建的 sendmail 发行版或从 Sendmail, Inc. 的最新 sendmail 安装介质安装的实际情况略有不同。其次,我确实混淆了 Sendmail 8.10 与 8.11 的功能添加日期,这证明了在深夜反复阅读相同的发行说明有时会产生与其澄清事物的预期效果相反的效果。感谢您澄清事实。第三,还要感谢您澄清 mailertable 与 local-host-names 的冗余。我为自己辩护的唯一理由是:1) 我描述的方法确实有效,即使它是冗余的;2) sendmail 的文档(免费版本中包含的文档)完全不清楚这些文件之间的关系,所以我真诚地感谢您对此事的反馈。
我想祝贺 Greg Kroah-Hartman 的 Kernel Korner 文章“热插拔”[LJ,2002 年 4 月]。我特别喜欢这篇文章,因为它以像我这样的凡人(C++/Qt 比 C 更符合我的风格,谢谢)可以理解的方式编写,同时仍然保持相当的技术性。它还教会了我很多关于热插拔的知识——我以前对此一无所知。我希望看到更多这样的功能。感谢这本伟大的杂志!
—Chris Howells
我刚刚读完 2002 年 4 月号的 Linux Journal,并对 Andrew Trice 的文章“使用 Perl Sybase 模块连接到 Microsoft SQL 2000”有一些评论。
首先,最初版本的 Microsoft SQL Server 是基于 Sybase 技术构建的,因此可以使用 Sybase 连接器。
其次,有一种更简单的方法可以连接到 SQL Server 2000。SQL Server 2000 可以通过虚拟目录(以及补丁、补丁、补丁!)连接到 IIS,然后可以使用 HTTP 请求执行查询,例如
http://IISServer/nwind?sql=SELECT+*+ FROM+Customers+FOR+XML+AUTO&root=root
此示例连接到 nwind 数据库并执行简单的选择;然后数据作为 XML 文档返回,根元素作为最顶层元素。然后可以使用标准方法在 Perl 中解析它。
此方法不允许访问 ODBC 连接的一些方便元素,也不允许轻松的插入/更新机制,尽管它们可以使用模板和 OpenXML 执行。
如果使用 SQL Server 的全部目的只是运行即席查询,这是一个简单的解决方案。
—David Scott
您的 2002 年 4 月号的封面上有“Antiquing Your Desktop”字样。嗯?在哪里?诚然,我只浏览了索引并翻阅了每一页,还没有时间从头到尾阅读(好吧,花花公子 与此同时到了)。但我对一篇似乎不存在的文章产生了浓厚的兴趣。请伟大的神明们,揭示真相!
—Andrew Bell
Andrew,您说的“antiquing your desktop”指的是 Marcel Gagné 的文章“与我互操作”,他在文章中“重温了过去一些熟悉的桌面环境”。如果我们可怜的文字游戏让您寻找有关家具修复的东西,我深感抱歉。我希望您发现 Marcel 的文章同样有趣。
—编辑
我想说,我发现 Robert Adam 的文章“m4 宏包”(在 LJ 2002 年 4 月号中)非常有趣且立即有用。我在上班的火车上读到它,并在当天很好地利用了 m4!感谢您用这样的文章让我对 LJ 着迷。
—Fred Daoud
2002 年 4 月号中的文章“CodeWeavers CrossOver 插件”非常令人兴奋。然而,这篇文章激发的希望是虚假的,因为文章未能提及一个要求:x86 处理器。只有在查看网页后才发现这个要求,这非常令人失望。
我本以为 Linux Journal 的作者和编辑会意识到除了 x86 之外还存在指令集架构。实际上,有很多不同的硬件架构可以很好地运行 Linux。就我而言,我选择了使用优于 x86 的架构,只是因为厌恶段寄存器、前缀字节、A20M 引脚、基于 8008 的寄存器模型等。
—Robert M. Riches Jr.