Wxy 发布的文章

用过 Linux 的人大多都见过 Linux 载入内核时显示在屏幕上的小企鹅。你了解这只小企鹅吗?

这个小企鹅是 Linux 的吉祥物,是 Linux 内核 2.0 评比出来的,它的名字叫做 Tux。大多数人相信,“Tux” 这个名字来源于Torvalds UniX。上图是当时评比中选的Larry Ewing所绘。它有几个常见变形的样式,我最喜欢比较有质感的 水晶版

Linux 内核的不同版本,曾经有过一些变形,比如:

在 2.6.29 的 Linux 内核中,为支持拯救袋獾运动 Tux 被临时地替换成 Tuz

而在 3.11 版本的 Linux 内核,为了纪念 windows for workgroups 3.11,Linus 将该版本的内核命名为 Linux for workgroups,Tux 打了一支 Windows 的旗帜 :D 。

甚至你在 PS3 上安装 Linux,都会显示不一样的小企鹅们:

Linux 启动时显示的小企鹅的数量,就是你的 CPU 个数,你最多见过几个?欢迎分享给我们。

Postfix 3.0.0 正式版发布了,这次发布也标志着对其 2.8 版本的支持结束。

Postfix 2.x 系列从2003年开始发表,已经维护了十余年了。这次大版本跨越,带来了许多有趣的特性改进,主要如下:

  • 增加了SMTPUTF8 支持,支持使用国际化的域名和本地地址部分,它们由 RFC 6530 及相关文档定义(即支持类似这样的邮件地址: 商务@公司.中国,支持@技术.翻墙)。该实现是基于由 CNNIC 赞助的 Arnt Gulbrandsen 所提供的代码的。SMTPUTF8 的支持还在持续开发中, 预计会在 3.1 中完成。参见 SMTPUTF8\_README 。
  • 支持 Postfix 使用动态链接库和数据库插件。参见 INSTALL 查看可用选项的描述。
  • 由于 3.0 和2.x 系列的一些默认值不同,因此 Postfix 提供了一种安全网机制(compatibility\_level),可以用来兼容老版本的 2.x 设置。参见 COMPATIBILITY\_README 了解更多细节。
  • 支持对多个查询表的复合查询。如 pipemap:{map1,map2...} 支持多个查询表以管道方式连接起来(即前一个查询表的结果作为后一个查询表的查询条件);而 unionmap:{map1,map2,...} 会将同样的查询发送到多个查询表,并将结果联合起来返回。
  • 支持简单的伪查询表。如 inline:{key1=value1,key2=value2,...} 可以用于替代只有几个值的外部文件查询;而 randmap{value1,value2,...} 则可以从几个特定值内随机选择一个。
  • 支持对DNS 查询结果和投递状态代码和信息的查表转换。典型的,可以使用 PCRE 表来修复 DNS 查询的错误或投递错误信息。参见 smtp\_dns\_reply\_filter、 smtp\_delivery\_status\_filter 和 similarly-named 等参数。
  • 配置文件支持三元操作符,如 ${name?{iftrue}:{iffalse}};比较操作符,如 ${{expr1}==${expr2}?{iftrue}:{iffalse}};对每个过滤器/策略服务器指定超时及其它设置; master.cf 参数支持空格,输入和输出的环境变量可以包含空格,静态表查询结果可以包含空格;对 accsess(5)和 header/body\_checks(5) 的多表查询支持预期在 3.1 版本完成。
  • 入站邮件会话的命令交互情况按照会话进行记录。例如,一个暴力攻击密码的机器人会记录为: "disconnect from name[addr] ehlo=1 auth=0/1 commands=1/2",这代表着该客户端发送了一个成功的 EHLO 命令,而 AUTH 命令失败,并且没有 QUIT 即断开会话了。这些信息有助于你从大量日志中梳理出问题脉络。

更多细节信息可以参阅发布公告,及源代码中附带的 README\_FILES、INSTALL 等文档。

Postfix 3.0.0 下载地址: <ftp://mir1.ovh.net/ftp.postfix.org/postfix-release/index.html> (或选择其他的镜像)。

据 Tomcat 安全组确认,Tomcat 全系列产品均被发现严重安全漏洞:CVE-2014-0227 请求夹带漏洞。

级别:严重

受影响版本:

  • Apache Tomcat 8.0.0-RC1 to 8.0.8
  • Apache Tomcat 7.0.0 to 7.0.54
  • Apache Tomcat 6.0.0 to 6.0.41

描述:可以通过构造一个截断请求而在请求数据中夹带一个新的请求。

解决方案

升级到最新版本:

  • 升级到 Apache Tomcat 8.0.9 及其以上
  • 升级到 Apache Tomcat 7.0.55 及其以上
  • 升级到 Apache Tomcat 6.0.43 及其以上(6.0.42 包含了该修复,但是并未发布)

GitHub 开发的文本编辑器 Atom 最近刚刚发布了0.177.0版。在这次更新里面,也许有一些你所不知道的 Atom 的趣事。

Atom 是基于 Chrome 开发的

Atom 是完全基于web技术实现的。底层的架构是基于Chromium(是的就是Google Chrome浏览器的Chromium架构),所有的窗口都是一个本地渲染的网页。

当我们按下快捷键 Alt+Command+I 时,就可以看到熟悉的Chrome浏览器的调试界面了。

本次 0.177.0 版本是基于 Chrome 40 所开发的。

弃 Node.js 而用 io.js

Atom 之前是采用了 node.js 来访问文件系统和包管理。这样就让Atom的包管理具有很强的灵活性和可扩展性。面对浩如烟好的npm资源,Atom 的可配置型也变得异常突出。

本次发布的0.177.0版,其中一个引入注目的变化是从 Node.js 切换到了 io.js。

io.js是Node.js的分支,Node.js社区发生分裂后由核心开发者在去年12月创建的,已经发布了v1.1版,目前开发非常活跃。Atom是切换到io.js的一个重量级项目。

另外,也使用了 6to5 的 JavaScript 预处理器。

『Linux 中国』,由 wxy 和 DeadFire 创立于 2003 年。致力于 Linux 的推广教育、Linux 技术研究、自由和开源软件理念的传播。在知识传播、组织开源志愿者活动等方面,携手众多开源爱好者共同取得了一定成就。

『Linux 中国』通过网站、微博、微信和邮件列表等平台传播各种 Linux 技术和资讯,并组织了 LCTT 翻译组对国外的开源方面的文章进行大量翻译,得到了开源社区的认可。

Founded on 2003 as an open source community, Linux.cn has been focus on Linux developments, technical forums, Linux community events. Through its website subscription, weblog and wechat platforms, Linux.cn has produced tremendous technical articles and resources. Its volunteering group LCTT (ab. of Linux.Cn Technical Translation) has also contributed massive amount of technical articles from overseas for domestic learners. Our mission is to make Linux.cn a place that makes learning about Linux science and technology a fun and interactive adventure.

历史

『Linux 中国』创立于 2003 年,其前身是炎黄角马(CNGNU)。在创立初期,曾经长期以论坛的方式存在,发展较为缓慢。在首任站长 DeadFire 的坚持维系下,一直保持没有中断。『Linux 中国』在 2012 年以来发展较快,已经在多平台开展内容和互动通道,除网站之外,还在包括微博、微信、QQ 邮件列表、QQ 群讨论组等多个平台拥有较大影响力。

内容

『Linux 中国』主要涉及的内容方面包括:Linux 及开源方面的新闻事件、Linux 及开源技术方面的培训普及和宣传、IT 业界相关的评论访谈等等。内容建设的渠道主要来自原创写作、原创编译和按内容协议的转载。其中原创编译工作主要来自『Linux 中国』发起建立的翻译志愿者组织 LCTT

方向与宗旨

『Linux 中国』的发展方向为:推动 Linux 和开源在中国的发展,促进 Linux 及开源技术在国内的普及,构建开源社区环境。Linux 中国的发展宗旨是:“成为华文区一流的 Linux 与开源交流社区”

LCTT

LCTT,全称是:Linux.CN Translation Team,是由『Linux 中国』站长 wxy 于 2013 年 9 月 10 日倡议发起的。会员约有数百人之多,并有数十积极活跃会员。LCTT 成立以来翻译了来自国外的数千篇文章,得到业界好评。是国内开源网站重要的翻译组织之一。

官方网站: https://linux.cn/lctt/

翻译工作群: 198889102,验证信息:“志愿者” (仅供翻译志愿者加入)

团队

  • 创始人: DeadFire、wxy
  • 技术部分:

    • 首席技术顾问:Viz
    • 技术顾问委员会:Michael、netb2c、Bestony
  • LCTT 部分:

    • 选题:lujun9972
    • 校对:wxy
    • 发布:wxy
    • 技术:Bestony
  • 社群部分:

    • QQ 群总管理:Vio

... ...

站外平台

微信矩阵

Linux 中国的微信号形成一个矩阵联合,全方位的为您提供合适的信息资讯。

Linux中国 (linux-cn,订阅号)

十万级技术订阅号,依托于『Linux中国』(https://linux.cn/)社区,专注于 Linux 学习、技术研究、开源思想传播。微信号: linux-cn,搜索“linux”即可直达,或扫描/长按如下二维码:

长按或扫描,关注微信号“Linux中国”

Linux (cn-linux,订阅号)

Linux 技术专题订阅号,涵盖 Linux 入门学习、桌面使用技巧、系统运维、软件开发等内容,对 Linux 技术感兴趣的不容错过。微信号: cn-linux,搜索“linux”即可直达,或扫描/长按如下二维码:

长按或扫描,关注微信号“Linux”

其它第三方平台

QQ群

加群验证信息:“LINUX0819”

  • 总 群: 198889101
  • 翻译组: 198889102
    (翻译志愿者专属,请参考 LCTT 相关信息)
  • 运维群: 198889103
  • 开发群: 198889104
  • 虚拟化: 198889105
  • 嵌入式: 198889106
  • 水立方: 198889107
  • 白帽子: 198889108
  • 新手村: 198889109
  • 极客群: 198870538
  • 运维部: 120998193

我们会在各平台更新业界“新闻、观点、技术、分享”类文章,不定期举办各种活动。欢迎大家通过任何喜欢的方式联系我们,加入到Linux中国大家族。

合作素材

  • Logo:AI
  • 微信二维码:

    • 《Linux中国》:AI

缘起

一年前,我因为开发 Linux 中国的微信公众号,想着在公众号里面提供 Linux 的 man 手册应该是个不错的主意,因此在网上遍寻中文 man 手册。虽然我之前也寻找过中文的 man 手册,知道颇多不全和错漏,但是这次仔细搜寻之下,却发现还远较我预计的还差。

无奈之下,只能先使用了英文版本作为 man 的内容,并因此萌发了组织一个翻译 man 手册的活动或组织的想法。说干就干,当时我就在 Linux 中国的 QQ 群里面发起了倡议,还真得到了大家响应。

于是,2013 年 9 月 10日,草草而就的 LCTT 就成立了,很快就创建了一个 QQ 群作为交流,并确定了名称为“Linux.CN Translate Team”,简称 LCTT。考虑到需要多人协作,几乎没有多想,就决定了采用 GITHUB 作为翻译平台——虽然现在看起来,GITHUB 作为主要工作平台,有利也有弊,但是,总体来说还是不错的。LCTT 就这样启动了。

发展

次日,我们就组织起来了翻译,并初步拟定了翻译流程、分工之类的内容。

LCTT 草创,各种方面都没有经验,也出现过一些失误。比如说,开始时对于 GITHUB 以及 GIT,大部分人,包括我,都不是很熟悉,因此并未采用 Pull-Request 模式,而是共同控制的方式,也由于一些协调和经验的原因,出现过版本错误和回滚,甚至回滚得更乱。还有,初期还要求 LINUX 中国网站 的注册身份,但是后来发现这完全不必要。

本来成立 LCTT 的目标是为了 man 手册的翻译,但是经过研究,我发现翻译 man 手册还有一些困难:

  1. man 手册是二进制的 groff 格式,因此生成和解析需要一些额外的过程,甚至需要一些特定的环境;
  2. man 手册对翻译的能力要求较高,并且应该对 man 手册所对应的命令有足够的了解,才能翻译得当,因为一字之差就可能导致很多误解。

所以,当时商量决定,先期启动普通的 Linux 方面、开源方面的文章翻译,以此来摸索翻译流程和锻炼协作,并作为翻译 man 手册的人员筛选环节。

我安排 Linux 中国站长,原本经常独自翻译发表来自国外文章的 DeadFire 来做选题。他负责将选题从英文的页面,转换成 Markdown 格式。我又找了朋友 jasminepeng 和 carolinewuyan 帮忙做校对,我自己则主要承担发布的工作。

初期,很快就涌现出了一些积极参与的人员,如 tinyeyeser、vito-L、boredivanivan等等,不一一列举了,他们不但积极参与翻译,而且还帮助撰写了第一批的翻译组 Wiki 文档,对引导新人起到了很大作用。

伴随着 LCTT 的逐步运作,一个月之后,我和大家感觉时间比较成熟了,就启动了 man 翻译计划。

man 翻译计划的夭折

写下这个标题时,我也颇感觉惭愧的,这也算是我正视这个结果吧。不管怎么说,现在还是深夜,未过零点,我终究是在 LCTT 一周年之前正视了失败。

其实,前面提到过,我检索过各种可以找到的中文 man 翻译项目的结果,但种种结果让人无法满意,因此我觉得,我应该能吸取其中的教训,为 Linux、为开源做点实事出来。

我总结的之前的 man 翻译项目失败的原因大概如下:

  1. 缺乏足够的驱动力,翻译者无论从利益还是荣誉,都得不到鼓励,因此往往难以为继。
  2. 由于依赖个人热情,没有形成流动机制,因此,当某个人热情耗尽之后,就没有人继续接手维护。
  3. 翻译流程简单,没有形成初译、校对、发布等流程,无法保证质量,也没有保持同步更新的流程。

因此,我觉得,通过建立一个翻译的公益组织(即 LCTT)、建立翻译流程、翻译后保留翻译和校对等人员的署名,可以解决一些以上的问题。

但是,其实我还忽视了一点,翻译 man 手册,其实无论是环境还是流程,比较复杂,因此限制了参与者。参与门槛高,导致发展不能持续。

因此,实际上,man 翻译项目,在大概运作了一个月之后,就逐渐停滞下来了,虽然后期,willqian 独立完成了很多篇,但是总体来说,man 翻译项目算是失败了。

总结这一年

抛开 man 翻译项目的失败不说,其实,LCTT 还是成果累累。

这一年,我们完成了 5820 次提交,发起了 1482 个 PR,翻译了 805 篇文章。

这一年,我们有了 98 个贡献者,得到了 162 个 fork。

我使用了一个工具,根据这一年来我们 LCTT 翻译项目的 git 日志,生成了一段视频。看着视频中如辛勤的工蜂一样忙忙碌碌的志愿者们;看着如穿花蝴蝶一样,承担了更多工作量的选题、校对们;看着归档时如同施展魔法一样,瞬间变出了一朵朵花,我感觉我们这一年是有收获的一年!

请大家观赏我们这一年: (213M,720p)

这是我用 kdenlive 合成配音的。虽然我的乐感很差,只能选择一首自己觉得还算配的音乐;虽然我根本不会用 kdenlive,连配音淡出都琢磨半天;虽然我编译用于生成这个视频的 gource 都花费了几个小时来解决问题;但是,看到这份视频,我为我们 LCTT 这一年来的工作感到骄傲。

感谢你们

虽然很俗套,但是此刻,已经是 2014 年 9 月 10 日凌晨00:50了,我心情很激动,真心感谢所有的参与者、贡献者。几乎每个 LCTT 的成员我都知道,也有几个我特别熟悉;LCTT 的成员有新来的,也有逐渐淡出的,但是不论是那种,我都记得你们。

名单太长,我就不一一列举了: https://github.com/LCTT/TranslateProject/graphs/contributors

接下来

我会说,man 计划我不会放弃么?

是的,man 计划是 LCTT 之所以发起的原因,也是 LCTT 能够持久发展的基础,而 man 翻译也是真正对国内的 Linux 、开源发展有实在意义的事情,所以,我不会放弃。

我会投入精力开发一个翻译平台,用于 man 项目的翻译、校对和发布,将复杂的翻译环境配置和使用方法隐藏在后面;并增加可视化的图表和进度显示,明了的体现翻译工作进展;对接 man7.org 的最新更新,保持 man 内容的及时更新等等。

期待 LCTT 的下一个年度的发展吧!

加入我们

您可以先访问我们的官网了解 LCTT : http://lctt.github.io/ ,如果愿意作为志愿者参与到 LCTT 的活动中来,您可以加入 QQ 群: 198889102 ,验证信息:“志愿者”。

欢迎你,一起来吧!


LCTT wxy

2014 年 9 月 10 日