diff --git a/README.md b/README.md index ddff91f237..9c14823d48 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ 简介 ------------------------------- -LCTT是Linux中国社区([http://linux.cn/](http://linux.cn/))的翻译组,负责从国外优秀媒体翻译Linux相关的技术、资讯、杂文等内容。 +LCTT是“Linux中国”([http://linux.cn/](http://linux.cn/))的翻译组,负责从国外优秀媒体翻译Linux相关的技术、资讯、杂文等内容。 LCTT已经拥有近百余名活跃成员,并欢迎更多的Linux志愿者加入我们的团队。 -![logo](http://img.linux.net.cn/static/image/common/linuxcn_qqq_lctt.gif) +![logo](http://img.linux.net.cn/static/image/common/lctt_logo.png) LCTT的组成 ------------------------------- @@ -18,11 +18,10 @@ LCTT的组成 **发布**,负责将校对后的文章,排版进行发布。 - 加入我们 ------------------------------- -请首先加入翻译组的QQ群,群号是:198889102,加群时请说明是志愿者。加入后记得修改您的群名片为您的github的ID。 +请首先加入翻译组的QQ群,群号是:198889102,加群时请说明是“志愿者”。加入后记得修改您的群名片为您的github的ID。 加入的成员,请先阅读[WIKI 如何开始](https://github.com/LCTT/TranslateProject/wiki/01-如何开始)。 @@ -39,62 +38,75 @@ LCTT的组成 - CORE [carolinewuyan](https://github.com/carolinewuyan), - CORE [DeadFire](https://github.com/DeadFire), - CORE [geekpi](https://github.com/geekpi), -- CORE [tinyeyeser](https://github.com/tinyeyeser), -- CORE [vito-L](https://github.com/vito-L), -- CORE [jasminepeng](https://github.com/jasminepeng), -- CORE [willqian](https://github.com/willqian), -- CORE [vizv](https://github.com/vizv), - CORE [GOLinux](https://github.com/GOLinux), -- [luoxcat](https://github.com/Luoxcat), +- CORE [reinoir](https://github.com/reinoir), +- Senior [tinyeyeser](https://github.com/tinyeyeser), +- Senior [vito-L](https://github.com/vito-L), +- Senior [jasminepeng](https://github.com/jasminepeng), +- Senior [willqian](https://github.com/willqian), +- Senior [vizv](https://github.com/vizv), - [runningwater](https://github.com/runningwater), +- [luoxcat](https://github.com/Luoxcat), - [bazz2](https://github.com/bazz2), - [Vic020](https://github.com/Vic020), -- [flsf](https://github.com/flsf), - [alim0x](https://github.com/alim0x), +- [KayGuoWhu](https://github.com/KayGuoWhu), +- [zpl1025](https://github.com/zpl1025), +- [blueabysm](https://github.com/blueabysm), +- [flsf](https://github.com/flsf), - [crowner](https://github.com/crowner), - [Linux-pdz](https://github.com/Linux-pdz), -- [KayGuoWhu](https://github.com/KayGuoWhu), - [Linchenguang](https://github.com/Linchenguang), -- [woodboow](https://github.com/woodboow), -- [zpl1025](https://github.com/zpl1025), -- [yechunxiao19](https://github.com/yechunxiao19), -- [blueabysm](https://github.com/blueabysm), - [linuhap](https://github.com/linuhap), +- [2q1w2007](https://github.com/2q1w2007), +- [yechunxiao19](https://github.com/yechunxiao19), +- [woodboow](https://github.com/woodboow), +- [su-kaiyao](https://github.com/su-kaiyao), - [scusjs](https://github.com/scusjs), - [hyaocuk](https://github.com/hyaocuk), -- [theo-l](https://github.com/theo-l), -- [NearTan](https://github.com/NearTan), -- [l3b2w1](https://github.com/l3b2w1), -- [ThomazL](https://github.com/ThomazL), - [MikeCoder](https://github.com/MikeCoder), -- [shipsw](https://github.com/shipsw), -- [boredivan](https://github.com/boredivan), +- [ThomazL](https://github.com/ThomazL), +- [theo-l](https://github.com/theo-l), - [jiajia9linuxer](https://github.com/jiajia9linuxer), +- [SteveArcher](https://github.com/SteveArcher), +- [l3b2w1](https://github.com/l3b2w1), +- [NearTan](https://github.com/NearTan), +- [shipsw](https://github.com/shipsw), +- [disylee](https://github.com/disylee), +- [Love-xuan](https://github.com/Love-xuan), +- [boredivan](https://github.com/boredivan), +- [cvsher](https://github.com/cvsher), +- [owen-carter](https://github.com/owen-carter), +- [JonathanKang](https://github.com/JonathanKang), +- [tenght](https://github.com/tenght), - [icybreaker](https://github.com/icybreaker), - [liuaiping](https://github.com/liuaiping), -- [tenght](https://github.com/tenght), - [rogetfan](https://github.com/rogetfan), +- [nd0104](https://github.com/nd0104), - [whatever1992](https://github.com/whatever1992), -- [2q1w2007](https://github.com/2q1w2007), -- [disylee](https://github.com/disylee), -- [SteveArcher](https://github.com/SteveArcher), -- [JonathanKang](https://github.com/JonathanKang), -- [zzlyzq](https://github.com/zzlyzq), -- [FineFan](https://github.com/FineFan), -- [ailurus1991](https://github.com/ailurus1991), +- [lfzark](https://github.com/lfzark), +- [CNprober](https://github.com/CNprober), +- [213edu](https://github.com/213edu), +- [johnhoow](https://github.com/johnhoow), - [yujianxuechuan](https://github.com/yujianxuechuan), +- [ggaaooppeenngg](https://github.com/ggaaooppeenngg), +- [zzlyzq](https://github.com/zzlyzq), +- [ailurus1991](https://github.com/ailurus1991), +- [FineFan](https://github.com/FineFan), - [tomatoKiller](https://github.com/tomatoKiller), - [stduolc](https://github.com/stduolc), - [Maclauring](https://github.com/Maclauring), -- [Hao-Ding](https://github.com/Hao-Ding), -- [small-Wood](https://github.com/small-Wood), - [zsJacky](https://github.com/zsJacky), +- [Hao-Ding](https://github.com/Hao-Ding), +- [luoyutiantang](https://github.com/luoyutiantang), +- [small-Wood](https://github.com/small-Wood), - [CHINAANSHE](https://github.com/CHINAANSHE), -- [ggaaooppeenngg](https://github.com/ggaaooppeenngg), +- [guodongxiaren](https://github.com/guodongxiaren), +- [cereuz](https://github.com/cereuz), - [lijhg](https://github.com/lijhg), -(更新于2014/06/18) +(更新于2014/09/09) 谢谢大家的支持! @@ -112,4 +124,5 @@ LCTT的组成 * 2014/01/02 增加了Core Translators 成员: geekpi。 * 2014/05/04 更换了新的QQ群:198889102 * 2014/05/16 增加了Core Translators 成员: will.qian、vizv。 -* 2014/06/18 由于GOLinux令人惊叹的翻译速度和不错的翻译质量,升级为Core Translators 成员。 \ No newline at end of file +* 2014/06/18 由于GOLinux令人惊叹的翻译速度和不错的翻译质量,升级为Core Translators 成员。 +* 2014/09/09 LCTT 一周年,做一年[总结](http://linux.cn/article-3784-1.html)。并将曾任 CORE 的成员分组为 Senior,以表彰他们的贡献。 \ No newline at end of file diff --git a/lctt2014.md b/lctt2014.md new file mode 100644 index 0000000000..760079c21f --- /dev/null +++ b/lctt2014.md @@ -0,0 +1,83 @@ +LCTT 2014 : LCTT 成立一年总结 +============================ + +### 缘起 ### + +一年前,我因为开发 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 日志,生成了一段[视频](http://img.linux.net.cn/static/video/lctt2014.mp4)。看着视频中如辛勤的工蜂一样忙忙碌碌的志愿者们;看着如穿花蝴蝶一样,承担了更多工作量的选题、校对们;看着归档时如同施展魔法一样,瞬间变出了一朵朵花,我感觉我们这一年是有收获的一年! + +请大家观赏我们这一年: http://img.linux.net.cn/static/video/lctt2014.mp4 (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 wxy + +2014 年 9 月 10 日 \ No newline at end of file diff --git a/translated/tech/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md b/published/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md similarity index 99% rename from translated/tech/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md rename to published/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md index 24edc71e15..33d5164a96 100644 --- a/translated/tech/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md +++ b/published/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md @@ -1,5 +1,5 @@ -Linux有问必答——如何为sudo命令定义PATH环境变量 +Linux有问必答——如何为sudo命令定义PATH环境变量 ================================================================================ >**问题**:我安装了一个程序到/usr/local/bin目录下,这个程序需要root权限才能执行,当我用sudo去执行它时,收到"sudo: XXXXX: command not found"的错误提示,不知道为什么/usr/local/bin没有被包含到PATH环境变量下面来,我该如何解决这个问题? diff --git a/translated/tech/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md b/published/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md similarity index 87% rename from translated/tech/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md rename to published/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md index e19c8f613a..4583ec0554 100644 --- a/translated/tech/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md +++ b/published/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md @@ -1,6 +1,6 @@ 使用Linux命令行管理DigitalOcean VPS水滴 ================================================================================ -[DigitalOcean][1]是云VPS主机市场中最炙手可热的新生儿。虽然没有提供像Amazon之类一样的综合服务业务,DigitalOcean已经成为定位于中小型企业和开发者的基于Linux的最佳云VPS服务的强有力的竞争者,这都得归功于他们具有竞争力的价格和对用户友好的管理界面。 +[DigitalOcean][1]是云VPS主机市场中最炙手可热的新生儿。虽然没有提供像Amazon之类一样的综合服务业务,但DigitalOcean定位于中小型企业和开发者,已经成为基于Linux的最佳云VPS服务的强有力竞争者,这都得归功于它们具有竞争力的价格和用户友好的管理界面。 ![](https://farm4.staticflickr.com/3841/14501627500_2ef275ac1c_z.jpg) @@ -20,13 +20,13 @@ $ sudo yum install ruby-devel $ sudo gem install tugboat -要在CentOS上安装tugboat,首先[安装或升级到最新的Ruby][5],因为在CentOS 6.5以及更早的版本上,默认的Ruby不满足拖船所需的最小版本(1.9及更高版本)。安装Ruby 1.9及更高版本后,请按如下方式安装tugboat。 +要在CentOS上安装tugboat,首先[安装或升级到最新的Ruby][5],因为在CentOS 6.5以及更早的版本上,默认的Ruby不满足Tugboat所需的最小版本(1.9及更高版本)。安装Ruby 1.9及更高版本后,请按如下方式安装tugboat。 $ sudo gem install tugboat ### tugboat首次使用配置 ### -在安装完后,就该实行一次配置,配置涉及了授权tugboat访问DigitalOcean帐号。 +在安装完后,就该进行一次配置,其中包括授权tugboat访问DigitalOcean帐号。 转到[https://cloud.digitalocean.com/api_access][6],并创建新的API密钥,记录客户ID和API密钥。 @@ -36,11 +36,11 @@ $ tugboat authorize -在提示你输入客户ID和API密钥时,请输入。它会询问几个其它问题,目前你可以接受默认的回答。我们打算在今后自定义默认设置。 +在提示你输入客户ID和API密钥时,请输入。它会询问几个其它问题,目前你可以接受默认的回答。我们将会在后面自定义默认设置。 [![](https://farm6.staticflickr.com/5596/14685122101_dba50fc86b_z.jpg)][7] -现在,让我们自定义默认水滴设置,以反映你典型的使用状况。要那么做,首先检查水滴提供的可用的东西(如,可用的镜像、区域、大小)。 +现在,让我们自定义默认水滴设置,以反映你典型的使用状况。要做到这一点,首先检查水滴提供的可用设置项(如,可用的镜像、区域、大小)。 运行以下命令,它会列出可用的水滴镜像。选取使用一个默认镜像,并记录相关的ID。 @@ -80,7 +80,7 @@ private_networking: 'false' backups_enabled: 'false' -### 创建并添加SSH密钥到数字海洋 ### +### 创建并添加SSH密钥到DigitalOcean ### 要访问水滴实例,一个安全的方式是通过[密钥验证][8]的SSH连接到该实例。 @@ -104,7 +104,7 @@ ssh_key: '182710' -### 拖船的基本用法 ### +### Tugboat的基本用法 ### 这里列出了tugboat命令行的一些基本使用情况。 @@ -138,7 +138,7 @@ $ tugboat resize -s -如果你想要知道特定命令的更多选项,运行: +如果你想要了解特定命令的更多选项,运行: $ tugboat help @@ -146,7 +146,7 @@ ### 排障 ### -1. 当我运行tugboat命令时,它出错了,并出现以下错误。 +1. 当我运行tugboat命令时,它出现以下错误。 /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': /usr/lib/ruby/gems/1.8/gems/tugboat-0.2.0/lib/tugboat/cli.rb:12: syntax error, unexpected ':', expecting kEND (SyntaxError) @@ -156,7 +156,7 @@ Tugboat要求Ruby 1.9及更高版本,你需要升级Ruby来解决该问题。 /usr/local/share/ruby/site_ruby/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- json/pure (LoadError) -安装以下gem来修复该问题。 +安装以下gem来修复该问题。 $ sudo gem install json_pure @@ -166,7 +166,7 @@ via: http://xmodulo.com/2014/07/manage-digitalocean-vps-droplets-command-line-li 原文作者:[Dan Nanni][a] -译者:[GOLinux](https://github.com/GOLinux) 校对:[校对者ID](https://github.com/校对者ID) +译者:[GOLinux](https://github.com/GOLinux) 校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/tech/20140723 How to access SoundCloud from the command line in Linux.md b/published/20140723 How to access SoundCloud from the command line in Linux.md similarity index 77% rename from translated/tech/20140723 How to access SoundCloud from the command line in Linux.md rename to published/20140723 How to access SoundCloud from the command line in Linux.md index 6027cffd0a..1bf697f712 100644 --- a/translated/tech/20140723 How to access SoundCloud from the command line in Linux.md +++ b/published/20140723 How to access SoundCloud from the command line in Linux.md @@ -1,6 +1,6 @@ 如何在Linux命令行下访问SoundCloud ================================================================================ -如果你喜欢流媒体音乐和原创音乐,你不能错过[SoundCloud][1]。这家云流媒体服务总部设在德国,这对任何音乐爱好者都非常有名且完善。自然,作为一个Linux爱好者,你可能想知道如何在Linux中加入你对音乐的热情。作为一个解决方案,我建议你使用Soundcloud2000,**SoundCloud的命令行客户端**脱胎于[Music Hack Day Stockholm '13][2]。 +如果你喜欢流媒体音乐和原创音乐,你不能错过[SoundCloud][1]。这家云流媒体服务总部设在德国,这对任何音乐爱好者都非常有名,且功能完善。自然,作为一个Linux爱好者,你可能想知道如何在Linux中体现你对音乐的热情。作为一个解决方案,我建议你使用Soundcloud2000,这是一个脱胎于[Music Hack Day Stockholm '13][2]的**SoundCloud的命令行客户端**。 ### 安装 ### @@ -43,24 +43,24 @@ Soundcloud2000非常容易使用。有些人甚至会说简单。我喜欢它的 ![](https://farm4.staticflickr.com/3861/14494436719_b5536f7b67_z.jpg) -这可能是Soundcloud2000的主要默认之一。而导航没有优化过,我寄予厚望的改善和支持的软件还是很年轻的。 +这可能是Soundcloud2000的主要缺陷之一。虽然导航没有优化过,但是我对这个很年轻的软件的改善和支持还是寄予厚望的。 -### 红利 ### +### 奖励 ### -另外一个额外的红利:如果你喜欢在终端上使用SoundCloud的想法,但不想安装任何额外的软件(也许你不能),我劝你去[cmd.fm][6]。该网站是一个伪装的SoundCloud,因为它隐藏在一个shell接口后。 +另外一个额外的奖励:如果你喜欢在终端上使用SoundCloud的想法,但不想安装任何额外的软件(也许你不能),我劝你去[cmd.fm][6]。该网站是一个伪装的SoundCloud,它隐藏在一个shell界面后。 [![](https://farm6.staticflickr.com/5580/14494448218_a16b05e3ee_z.jpg)][7] 输入“help”可以得到命令列表,这比Soundcloud2000长很多。比如,我看到: -- _genres to list all genres -- _play random to play a random track -- _pause to pause the current track -- _playlist new to make a new playlist -- _loop to loop current track -- _cinema to watch and ASCII version of Star Wars which completely blew my mind. +- _genres 列出所有流派 +- _play random 随机播放 +- _pause 暂停播放 +- _playlist new 建立新的播放节目单 +- _loop 循环播放 +- _cinema 如同星球大战一样的字幕 -它甚至支持通过tab键自动完成流派 +它甚至支持通过tab键自动补完流派名称 最后,Soundcloud2000的确是一个整洁的程序。我们可以原谅其目前的缺陷,因为它还年轻。我真的希望它会成长,并包含更多的功能(并从潜在的cmd.fm得到的灵感)。 @@ -74,7 +74,7 @@ via: http://xmodulo.com/2014/07/access-soundcloud-command-line-linux.html 原文作者:[Adrien Brochard][a] -译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID) +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/20140723 Top 10 Fun On The Command Line.md b/published/20140723 Top 10 Fun On The Command Line.md new file mode 100644 index 0000000000..85e3ef31ac --- /dev/null +++ b/published/20140723 Top 10 Fun On The Command Line.md @@ -0,0 +1,114 @@ +用命令行去发掘有趣的“前十” +================================================================================ + +**如果你喜欢做‘排名前10’之类的列表但又有点不好意思这样说,那么告诉人们你热爱数据的探索。为了进一步打动他们,向他们解释你在命令行间的数据探索。但是不要告诉他们这其实很容易,以免你的好形象就这样被毁灭了哦!** + +在这篇文章中,我将基于GNU/Linux工具和'单列表格'(也就是我所说的简单列表)来做一些数据探索。如若想在这里通过命令行查看更多的信息,请查看'man'页,或者在“注释”部分求解。 + +### 密码 ### + +在第一个列表里探讨的是马克.伯内特2011著的关于[10000 个最常用的密码][1]汇编。这个列表是有序的、使用最频繁的,也是广为人知的阶乘“密码”的最常用来源之一,与“123456”并列排名第二。在这里,我把该列表放到一个名为“passwords”的文件中,并且使用head命令把排名前10的列出来了: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/1.png) + +(伯内特解释他是如何收集这些密码的[这里][2]。你会注意到在列表中他把所有大写字母都转换成小写的。) + +OK,所以'password'是伯内特列表的顶部。那么每个数字呢? + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/2.png) + +非常有趣的是!数字'1'出现在密码列表中的次数多于第二个最常用数字'2'的两倍,而且,除了0和9之外,这十个数字出现的次数以其数字顺序排列。而排名前10的字母呢? + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/3.png) + +在 passwords 文件中出现最频繁的字母依次是EARONISTLC,类似于EAIRTONSLC,这是至少[一个出版的表格][3]中提到的常用英文单词中出现的字频。这是否意味着,大部分密码其实是一些常见的英语单词呢,也许会参杂一些数字呢? + +为了找到答案,我先把密码转换成一个纯字母的字符串列表,然后看看有多少字符串是可以在英语词典中找到的。 + +首先我将通过 **sed** 命令删除所有密码中的数字,然后删除所有的标点符号,再删除所有的空行。这将创建出一个纯字母的密码列表。然后我通过**sort** 和 **uniq**来修剪列表的排序,将重复项取出。(例如,'abc1234def'和'abc1!2!3!def!'都剔除剩下'abcdef'.) 。根据wc命令,我把1000个密码减至成8583个纯字母的字符串: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/4.png) + +我经常使用一本便携式的英语字典,我通常会使用`usr/share/dict/american-english`,这个文件是来自Debian Linux的一个发行版本。它包含了99171个单词。我会先通过**tr**命令将这个词表转换为纯小写的,然后使用**sort** 和 **uniq**删除掉任何重复的条目排序(例如'A' 和 'a' 都将成为 'a')。这样就将词表的数量减至97723项了: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/5.png) + +我现在可以用comm命令及'-23'的参数来比较两个列表,并报告纯字母文件中而没有出现在字典中的单词: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/6.png) + +总数是3137,所以至少有8583 -3137 = 5446个'核心'密码在伯纳特的纯小写字母列表中(大约63%)是简单的英语单词,或者是简单的单词附加一些数字或者标点符号。我之所以说“至少”,是因为在3137个字符串中有很大比例是只有经过轻微修改的纯英语单词、名称、或者在/usr/share字典中未能找到的名称修改而成的。在LA项中,例如,'labtec', 'ladyboy', 'lakeside', 'lalakers', 'lalala', 'laserjet', 'lasvegas', 'lavalamp' 和 'lawman'. + +### 地名 ### + +在之前的一篇[Linux Rain article][4],我描述了如何建立一张37万项澳大利亚的地名表。有了它,我现在可以回答一些类似这样的关键问题“Round Hill是澳大利亚山脉中最流行的名字吗?”和“桑迪是沙滩之最,而岩溪峡谷呢?” + +在地名表中地名字段的排名第2,所以这里有: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/7.png) + +哇。我当时甚至没有关闭这个终端。(但是请注意到我是如何通过**\^string1\^string2**命令保存打印的内容。它重复着最后一个命令,但是用第2个字符串代替了第1个字符串。这是多么有用的BASH绝招!) + +另一个亟待解决的问题是有多少地名有'Mile'在其中,例如'Six Mile Creek',而他们的排名又是如何: +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/8.png) + +我在我的澳洲之旅发现有很多Dead Horse Creeks,因此有这些地名: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/9.png) + + +### 种类 ### + +第三个列表是探索我今年出版的1961-2010年期间澳大利亚新种类昆虫名。从这个列表中,我去掉所有“物种的绰号”,就是种群组合的第二部分,比如像智人(你和我)和西方蜜蜂(欧洲蜜蜂)。 + +(科技小贴士:这个昆虫表,可以从开发数据Zenodo库中[https://zenodo.org/record/10481][5]取得,包括亚种。在我的‘top 10’练习中,我首先分离出所有独特的种群组合,这样避免了重复的,例如蜜蜂iberica的亚种,以避免蜜蜂的绰号intermissa,等等。最后一个物种文件有18155个绰号。) + +大多数人讲科学名称带玩笑式地用'-us'结局,如'Biggus buggus'。那么昆虫学家呢?有几个不错的,用命令行的方式获取字符串的最后2个字母,在这里我都会用到这2个: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/10.png) + +耶!昆虫学家喜欢也‘-us’结尾。接下来,我不知道有多少物种是以我的家乡Tasmania州来命名的?(下面我想看看前100行,来确保我得到的所有'tasman'组合.) + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/11.png) + +那么昆士兰呢? + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/12.png) + +一般来说,昆虫物种名单中的前10名分别是什么呢? + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/13.png) + +嗯,除了明显的'australis'和'australiensis',而地理方面的'occidentalis'(西部),另外昆虫学家创建7个在10个最流行列表中的绰号已经履行了其它昆虫学家的意愿。(绰号'commoni'是给澳大利亚蝴蝶和蛾专家Ian F.B. Common[1917-2006]的荣誉。) + +### 演变 ### + +上面的这些命令用在简单列表上。要从简单的列表变成文本块,那就再次需要我们的命令行朋友了。例如,我把澳大利亚参议院于2014年7月16日的[演讲][6]保存成文本文件hansard。将hansard分割成一个单词列表: +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/14.png) + + +现在看看讲话中的单词使用频率: + +![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/15.png) + +### 即将推出... ### + +从多列的表中做'top 10'等排名,需要更多些的命令行工具。我将会在未来的文章中证明他们的用处。 + + +-------------------------------------------------------------------------------- + +via: http://thelinuxrain.com/articles/top-10-fun-on-the-command-line + +原文作者:Bob Mesibov(Bob Mesibov is Tasmanian, retired and a keen Linux tinkerer.) + +译者:[disylee](https://github.com/译者ID) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://xato.net/passwords/more-top-worst-passwords/#.U8eD13AvDy0 +[2]:https://xato.net/passwords/how-i-collect-passwords/#.U8eEdnAvDy0 +[3]:http://www.rinkworks.com/words/letterfreq.shtml +[4]:http://www.thelinuxrain.com/articles/building-a-gazetteer-table-from-kml-files +[5]:https://zenodo.org/record/10481 +[6]:http://parlinfo.aph.gov.au/parlInfo/search/display/display.w3p;db=CHAMBER;id=chamber%2Fhansards%2F232fa1a8-d7e8-4b22-9018-1a99b5a96812%2F0025;query=Id%3A%22chamber%2Fhansards%2F232fa1a8-d7e8-4b22-9018-1a99b5a96812%2F0000%22 diff --git a/published/20 Amazing Linux Blogs For Beginners.md b/published/201408/20 Amazing Linux Blogs For Beginners.md similarity index 100% rename from published/20 Amazing Linux Blogs For Beginners.md rename to published/201408/20 Amazing Linux Blogs For Beginners.md diff --git a/published/20140528 Install Webmin On Ubuntu 14.04.md b/published/201408/20140528 Install Webmin On Ubuntu 14.04.md similarity index 100% rename from published/20140528 Install Webmin On Ubuntu 14.04.md rename to published/201408/20140528 Install Webmin On Ubuntu 14.04.md diff --git a/published/20140607 Got Linux--Add Proprietary Code.md b/published/201408/20140607 Got Linux--Add Proprietary Code.md similarity index 100% rename from published/20140607 Got Linux--Add Proprietary Code.md rename to published/201408/20140607 Got Linux--Add Proprietary Code.md diff --git a/published/20140611 Little Known Apache Mesos Project Helps Mesosphere Raise $10M From Andreessen Horowitz.md b/published/201408/20140611 Little Known Apache Mesos Project Helps Mesosphere Raise $10M From Andreessen Horowitz.md similarity index 100% rename from published/20140611 Little Known Apache Mesos Project Helps Mesosphere Raise $10M From Andreessen Horowitz.md rename to published/201408/20140611 Little Known Apache Mesos Project Helps Mesosphere Raise $10M From Andreessen Horowitz.md diff --git a/published/20140616 How to diskless boot a Linux machine.md b/published/201408/20140616 How to diskless boot a Linux machine.md similarity index 100% rename from published/20140616 How to diskless boot a Linux machine.md rename to published/201408/20140616 How to diskless boot a Linux machine.md diff --git a/published/20140617 Does Linux Lack a Killer App.md b/published/201408/20140617 Does Linux Lack a Killer App.md similarity index 100% rename from published/20140617 Does Linux Lack a Killer App.md rename to published/201408/20140617 Does Linux Lack a Killer App.md diff --git a/published/20140620 11 Advance MySQL Database 'Interview Questions and Answers' for Linux Users.md b/published/201408/20140620 11 Advance MySQL Database 'Interview Questions and Answers' for Linux Users.md similarity index 100% rename from published/20140620 11 Advance MySQL Database 'Interview Questions and Answers' for Linux Users.md rename to published/201408/20140620 11 Advance MySQL Database 'Interview Questions and Answers' for Linux Users.md diff --git a/published/20140624 Super Pi Brothers.md b/published/201408/20140624 Super Pi Brothers.md similarity index 100% rename from published/20140624 Super Pi Brothers.md rename to published/201408/20140624 Super Pi Brothers.md diff --git a/published/20140701 Get OpenVPN up and running, enjoy your privacy.md b/published/201408/20140701 Get OpenVPN up and running, enjoy your privacy.md similarity index 100% rename from published/20140701 Get OpenVPN up and running, enjoy your privacy.md rename to published/201408/20140701 Get OpenVPN up and running, enjoy your privacy.md diff --git a/published/20140702 CoreOS Linux ending the upgrade cycle.md b/published/201408/20140702 CoreOS Linux ending the upgrade cycle.md similarity index 100% rename from published/20140702 CoreOS Linux ending the upgrade cycle.md rename to published/201408/20140702 CoreOS Linux ending the upgrade cycle.md diff --git a/published/20140702 How to install Raspberry Pi camera board.md b/published/201408/20140702 How to install Raspberry Pi camera board.md similarity index 100% rename from published/20140702 How to install Raspberry Pi camera board.md rename to published/201408/20140702 How to install Raspberry Pi camera board.md diff --git a/published/20140702 Wine 1.7.21 (Development Version) Released--Install in RedHat and Debian Based Systems.md b/published/201408/20140702 Wine 1.7.21 (Development Version) Released--Install in RedHat and Debian Based Systems.md similarity index 100% rename from published/20140702 Wine 1.7.21 (Development Version) Released--Install in RedHat and Debian Based Systems.md rename to published/201408/20140702 Wine 1.7.21 (Development Version) Released--Install in RedHat and Debian Based Systems.md diff --git a/published/20140709 How to set up two-factor authentication for SSH login on Linux.md b/published/201408/20140709 How to set up two-factor authentication for SSH login on Linux.md similarity index 100% rename from published/20140709 How to set up two-factor authentication for SSH login on Linux.md rename to published/201408/20140709 How to set up two-factor authentication for SSH login on Linux.md diff --git a/published/20140711 How To Enable Tab Complete Heroku Commands In Oh-My-Zsh.md b/published/201408/20140711 How To Enable Tab Complete Heroku Commands In Oh-My-Zsh.md similarity index 100% rename from published/20140711 How To Enable Tab Complete Heroku Commands In Oh-My-Zsh.md rename to published/201408/20140711 How To Enable Tab Complete Heroku Commands In Oh-My-Zsh.md diff --git a/published/20140711 How to Install Lightweight Budgie Desktop in Ubuntu 14.04.md b/published/201408/20140711 How to Install Lightweight Budgie Desktop in Ubuntu 14.04.md similarity index 100% rename from published/20140711 How to Install Lightweight Budgie Desktop in Ubuntu 14.04.md rename to published/201408/20140711 How to Install Lightweight Budgie Desktop in Ubuntu 14.04.md diff --git a/published/20140711 How to simulate key press and mouse movement in Linux.md b/published/201408/20140711 How to simulate key press and mouse movement in Linux.md similarity index 100% rename from published/20140711 How to simulate key press and mouse movement in Linux.md rename to published/201408/20140711 How to simulate key press and mouse movement in Linux.md diff --git a/published/20140714 Linux slabtop command--Display Kernel Slab Cache Information.md b/published/201408/20140714 Linux slabtop command--Display Kernel Slab Cache Information.md similarity index 100% rename from published/20140714 Linux slabtop command--Display Kernel Slab Cache Information.md rename to published/201408/20140714 Linux slabtop command--Display Kernel Slab Cache Information.md diff --git a/published/20140714 Set Default Browser on Debian or Ubuntu Using Terminal.md b/published/201408/20140714 Set Default Browser on Debian or Ubuntu Using Terminal.md similarity index 100% rename from published/20140714 Set Default Browser on Debian or Ubuntu Using Terminal.md rename to published/201408/20140714 Set Default Browser on Debian or Ubuntu Using Terminal.md diff --git a/published/20140714 Test read or write speed of usb and ssd drives with dd command on Linux.md b/published/201408/20140714 Test read or write speed of usb and ssd drives with dd command on Linux.md similarity index 100% rename from published/20140714 Test read or write speed of usb and ssd drives with dd command on Linux.md rename to published/201408/20140714 Test read or write speed of usb and ssd drives with dd command on Linux.md diff --git a/published/20140716 5 Simple Ways To Make Cinnamon Feel at Home on Ubuntu.md b/published/201408/20140716 5 Simple Ways To Make Cinnamon Feel at Home on Ubuntu.md similarity index 100% rename from published/20140716 5 Simple Ways To Make Cinnamon Feel at Home on Ubuntu.md rename to published/201408/20140716 5 Simple Ways To Make Cinnamon Feel at Home on Ubuntu.md diff --git a/published/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md b/published/201408/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md similarity index 100% rename from published/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md rename to published/201408/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md diff --git a/published/20140716 How to analyze Squid logs with SARG log analyzer on CentOS.md b/published/201408/20140716 How to analyze Squid logs with SARG log analyzer on CentOS.md similarity index 100% rename from published/20140716 How to analyze Squid logs with SARG log analyzer on CentOS.md rename to published/201408/20140716 How to analyze Squid logs with SARG log analyzer on CentOS.md diff --git a/published/20140716 How to check RPM package dependencies on Fedora or CentOS or RHEL.md b/published/201408/20140716 How to check RPM package dependencies on Fedora or CentOS or RHEL.md similarity index 100% rename from published/20140716 How to check RPM package dependencies on Fedora or CentOS or RHEL.md rename to published/201408/20140716 How to check RPM package dependencies on Fedora or CentOS or RHEL.md diff --git a/published/20140716 Install Android 4.4 KitKat to Run Favourite Games and Applications in Linux.md b/published/201408/20140716 Install Android 4.4 KitKat to Run Favourite Games and Applications in Linux.md similarity index 100% rename from published/20140716 Install Android 4.4 KitKat to Run Favourite Games and Applications in Linux.md rename to published/201408/20140716 Install Android 4.4 KitKat to Run Favourite Games and Applications in Linux.md diff --git a/published/20140718 Linux Kernel Testing and Debugging 1.md b/published/201408/20140718 Linux Kernel Testing and Debugging 1.md similarity index 100% rename from published/20140718 Linux Kernel Testing and Debugging 1.md rename to published/201408/20140718 Linux Kernel Testing and Debugging 1.md diff --git a/published/20140718 Linux Kernel Testing and Debugging 2.md b/published/201408/20140718 Linux Kernel Testing and Debugging 2.md similarity index 100% rename from published/20140718 Linux Kernel Testing and Debugging 2.md rename to published/201408/20140718 Linux Kernel Testing and Debugging 2.md diff --git a/published/20140718 Linux Kernel Testing and Debugging 3.md b/published/201408/20140718 Linux Kernel Testing and Debugging 3.md similarity index 100% rename from published/20140718 Linux Kernel Testing and Debugging 3.md rename to published/201408/20140718 Linux Kernel Testing and Debugging 3.md diff --git a/published/20140718 Linux Kernel Testing and Debugging 4.md b/published/201408/20140718 Linux Kernel Testing and Debugging 4.md similarity index 100% rename from published/20140718 Linux Kernel Testing and Debugging 4.md rename to published/201408/20140718 Linux Kernel Testing and Debugging 4.md diff --git a/published/20140718 Linux Kernel Testing and Debugging 5.md b/published/201408/20140718 Linux Kernel Testing and Debugging 5.md similarity index 100% rename from published/20140718 Linux Kernel Testing and Debugging 5.md rename to published/201408/20140718 Linux Kernel Testing and Debugging 5.md diff --git a/published/20140718 Linux Kernel Testing and Debugging 6.md b/published/201408/20140718 Linux Kernel Testing and Debugging 6.md similarity index 100% rename from published/20140718 Linux Kernel Testing and Debugging 6.md rename to published/201408/20140718 Linux Kernel Testing and Debugging 6.md diff --git a/published/20140722 10 Useful Interview Questions and Answers on Linux Commands.md b/published/201408/20140722 10 Useful Interview Questions and Answers on Linux Commands.md similarity index 100% rename from published/20140722 10 Useful Interview Questions and Answers on Linux Commands.md rename to published/201408/20140722 10 Useful Interview Questions and Answers on Linux Commands.md diff --git a/published/20140722 Budgie Desktop 5.1 Is a Superb New Desktop Environment for Conservative Users.md b/published/201408/20140722 Budgie Desktop 5.1 Is a Superb New Desktop Environment for Conservative Users.md similarity index 100% rename from published/20140722 Budgie Desktop 5.1 Is a Superb New Desktop Environment for Conservative Users.md rename to published/201408/20140722 Budgie Desktop 5.1 Is a Superb New Desktop Environment for Conservative Users.md diff --git a/published/20140723 110 Fun Open Source Games and Apps.md b/published/201408/20140723 110 Fun Open Source Games and Apps.md similarity index 100% rename from published/20140723 110 Fun Open Source Games and Apps.md rename to published/201408/20140723 110 Fun Open Source Games and Apps.md diff --git a/published/20140723 Fix Missing Speaker Icon From Moka Icon Theme.md b/published/201408/20140723 Fix Missing Speaker Icon From Moka Icon Theme.md similarity index 100% rename from published/20140723 Fix Missing Speaker Icon From Moka Icon Theme.md rename to published/201408/20140723 Fix Missing Speaker Icon From Moka Icon Theme.md diff --git a/published/20140723 How to configure chroot SFTP in Linux.md b/published/201408/20140723 How to configure chroot SFTP in Linux.md similarity index 100% rename from published/20140723 How to configure chroot SFTP in Linux.md rename to published/201408/20140723 How to configure chroot SFTP in Linux.md diff --git a/published/20140724 Best Linux Browsers.md b/published/201408/20140724 Best Linux Browsers.md similarity index 100% rename from published/20140724 Best Linux Browsers.md rename to published/201408/20140724 Best Linux Browsers.md diff --git a/published/20140729 How To Easily Install Tor Browser In Ubuntu 14.04 And Linux Mint 17.md b/published/201408/20140729 How To Easily Install Tor Browser In Ubuntu 14.04 And Linux Mint 17.md similarity index 100% rename from published/20140729 How To Easily Install Tor Browser In Ubuntu 14.04 And Linux Mint 17.md rename to published/201408/20140729 How To Easily Install Tor Browser In Ubuntu 14.04 And Linux Mint 17.md diff --git a/published/20140729 Linux FAQs with Answers--How to check which fonts are used in a PDF document.md b/published/201408/20140729 Linux FAQs with Answers--How to check which fonts are used in a PDF document.md similarity index 100% rename from published/20140729 Linux FAQs with Answers--How to check which fonts are used in a PDF document.md rename to published/201408/20140729 Linux FAQs with Answers--How to check which fonts are used in a PDF document.md diff --git a/published/20140729 Use Pushbullet Indicator In Ubuntu To Send Files To Android Or iOS Devices.md b/published/201408/20140729 Use Pushbullet Indicator In Ubuntu To Send Files To Android Or iOS Devices.md similarity index 100% rename from published/20140729 Use Pushbullet Indicator In Ubuntu To Send Files To Android Or iOS Devices.md rename to published/201408/20140729 Use Pushbullet Indicator In Ubuntu To Send Files To Android Or iOS Devices.md diff --git a/published/20140731 Command Line Somedays--Part Six.md b/published/201408/20140731 Command Line Somedays--Part Six.md similarity index 100% rename from published/20140731 Command Line Somedays--Part Six.md rename to published/201408/20140731 Command Line Somedays--Part Six.md diff --git a/published/20140731 LibreOffice 4.3 Goes Live, Includes Fix for 11 Year Old Bug.md b/published/201408/20140731 LibreOffice 4.3 Goes Live, Includes Fix for 11 Year Old Bug.md similarity index 100% rename from published/20140731 LibreOffice 4.3 Goes Live, Includes Fix for 11 Year Old Bug.md rename to published/201408/20140731 LibreOffice 4.3 Goes Live, Includes Fix for 11 Year Old Bug.md diff --git a/published/20140731 Minimal Linux Live.md b/published/201408/20140731 Minimal Linux Live.md similarity index 100% rename from published/20140731 Minimal Linux Live.md rename to published/201408/20140731 Minimal Linux Live.md diff --git a/published/20140731 Red Hat aims to standardize Linux for 64-bit ARM servers.md b/published/201408/20140731 Red Hat aims to standardize Linux for 64-bit ARM servers.md similarity index 100% rename from published/20140731 Red Hat aims to standardize Linux for 64-bit ARM servers.md rename to published/201408/20140731 Red Hat aims to standardize Linux for 64-bit ARM servers.md diff --git a/published/20140731 Top 10 Free Linux Games.md b/published/201408/20140731 Top 10 Free Linux Games.md similarity index 100% rename from published/20140731 Top 10 Free Linux Games.md rename to published/201408/20140731 Top 10 Free Linux Games.md diff --git a/published/20140801 French City Toulouse Saved 1 Million Euro With LibreOffice.md b/published/201408/20140801 French City Toulouse Saved 1 Million Euro With LibreOffice.md similarity index 100% rename from published/20140801 French City Toulouse Saved 1 Million Euro With LibreOffice.md rename to published/201408/20140801 French City Toulouse Saved 1 Million Euro With LibreOffice.md diff --git a/published/20140804 Linux FAQs with Answers--How to check if I am in a running screen session.md b/published/201408/20140804 Linux FAQs with Answers--How to check if I am in a running screen session.md similarity index 100% rename from published/20140804 Linux FAQs with Answers--How to check if I am in a running screen session.md rename to published/201408/20140804 Linux FAQs with Answers--How to check if I am in a running screen session.md diff --git a/published/20140804 Linux FAQs with Answers--How to enable and configure desktop sharing on Linux Mint Cinnamon desktop.md b/published/201408/20140804 Linux FAQs with Answers--How to enable and configure desktop sharing on Linux Mint Cinnamon desktop.md similarity index 100% rename from published/20140804 Linux FAQs with Answers--How to enable and configure desktop sharing on Linux Mint Cinnamon desktop.md rename to published/201408/20140804 Linux FAQs with Answers--How to enable and configure desktop sharing on Linux Mint Cinnamon desktop.md diff --git a/published/20140804 Open-Source Media Center 'XBMC' Announces New Name.md b/published/201408/20140804 Open-Source Media Center 'XBMC' Announces New Name.md similarity index 100% rename from published/20140804 Open-Source Media Center 'XBMC' Announces New Name.md rename to published/201408/20140804 Open-Source Media Center 'XBMC' Announces New Name.md diff --git a/published/20140807 Command Line Tuesdays--Part Seven.md b/published/201408/20140807 Command Line Tuesdays--Part Seven.md similarity index 100% rename from published/20140807 Command Line Tuesdays--Part Seven.md rename to published/201408/20140807 Command Line Tuesdays--Part Seven.md diff --git a/published/20140807 Latest Intel Linux Graphics Drivers Now Available on Ubuntu 14.04 LTS.md b/published/201408/20140807 Latest Intel Linux Graphics Drivers Now Available on Ubuntu 14.04 LTS.md similarity index 100% rename from published/20140807 Latest Intel Linux Graphics Drivers Now Available on Ubuntu 14.04 LTS.md rename to published/201408/20140807 Latest Intel Linux Graphics Drivers Now Available on Ubuntu 14.04 LTS.md diff --git a/published/20140807 Linux FAQs with Answers--How to check what libraries are used by a program or process on Linux.md b/published/201408/20140807 Linux FAQs with Answers--How to check what libraries are used by a program or process on Linux.md similarity index 100% rename from published/20140807 Linux FAQs with Answers--How to check what libraries are used by a program or process on Linux.md rename to published/201408/20140807 Linux FAQs with Answers--How to check what libraries are used by a program or process on Linux.md diff --git a/published/20140807 Linux FAQs with Answers--How to fix 'fatal error--jsoncpp or json or json.h--No such file or directory'.md b/published/201408/20140807 Linux FAQs with Answers--How to fix 'fatal error--jsoncpp or json or json.h--No such file or directory'.md similarity index 100% rename from published/20140807 Linux FAQs with Answers--How to fix 'fatal error--jsoncpp or json or json.h--No such file or directory'.md rename to published/201408/20140807 Linux FAQs with Answers--How to fix 'fatal error--jsoncpp or json or json.h--No such file or directory'.md diff --git a/published/20140807 This Is What' s New In Linux 3.16.md b/published/201408/20140807 This Is What' s New In Linux 3.16.md similarity index 100% rename from published/20140807 This Is What' s New In Linux 3.16.md rename to published/201408/20140807 This Is What' s New In Linux 3.16.md diff --git a/published/20140808 Check Hard drive for bad sectors or bad blocks in linux.md b/published/201408/20140808 Check Hard drive for bad sectors or bad blocks in linux.md similarity index 100% rename from published/20140808 Check Hard drive for bad sectors or bad blocks in linux.md rename to published/201408/20140808 Check Hard drive for bad sectors or bad blocks in linux.md diff --git a/published/20140808 How to set up a Samba file server to use with Windows clients.md b/published/201408/20140808 How to set up a Samba file server to use with Windows clients.md similarity index 100% rename from published/20140808 How to set up a Samba file server to use with Windows clients.md rename to published/201408/20140808 How to set up a Samba file server to use with Windows clients.md diff --git a/published/20140808 Lime Text--An Open Source Alternative Of Sublime Text.md b/published/201408/20140808 Lime Text--An Open Source Alternative Of Sublime Text.md similarity index 100% rename from published/20140808 Lime Text--An Open Source Alternative Of Sublime Text.md rename to published/201408/20140808 Lime Text--An Open Source Alternative Of Sublime Text.md diff --git a/published/20140811 10 More Tweaks To Make Ubuntu Feel Like Home.md b/published/201408/20140811 10 More Tweaks To Make Ubuntu Feel Like Home.md similarity index 100% rename from published/20140811 10 More Tweaks To Make Ubuntu Feel Like Home.md rename to published/201408/20140811 10 More Tweaks To Make Ubuntu Feel Like Home.md diff --git a/published/20140811 Echo Command with Practical Examples.md b/published/201408/20140811 Echo Command with Practical Examples.md similarity index 100% rename from published/20140811 Echo Command with Practical Examples.md rename to published/201408/20140811 Echo Command with Practical Examples.md diff --git a/published/20140811 StuntRally 2.4 Is the Most Advanced Free Racing Game on Linux.md b/published/201408/20140811 StuntRally 2.4 Is the Most Advanced Free Racing Game on Linux.md similarity index 100% rename from published/20140811 StuntRally 2.4 Is the Most Advanced Free Racing Game on Linux.md rename to published/201408/20140811 StuntRally 2.4 Is the Most Advanced Free Racing Game on Linux.md diff --git a/published/20140812 'Ifconfig' Command Not Found In CentOS 7 Minimal Installation--A Quick Tip To Fix It.md b/published/201408/20140812 'Ifconfig' Command Not Found In CentOS 7 Minimal Installation--A Quick Tip To Fix It.md similarity index 100% rename from published/20140812 'Ifconfig' Command Not Found In CentOS 7 Minimal Installation--A Quick Tip To Fix It.md rename to published/201408/20140812 'Ifconfig' Command Not Found In CentOS 7 Minimal Installation--A Quick Tip To Fix It.md diff --git a/published/20140813 Linux FAQs with Answers--How to turn off server signature on Apache web server.md b/published/201408/20140813 Linux FAQs with Answers--How to turn off server signature on Apache web server.md similarity index 100% rename from published/20140813 Linux FAQs with Answers--How to turn off server signature on Apache web server.md rename to published/201408/20140813 Linux FAQs with Answers--How to turn off server signature on Apache web server.md diff --git a/published/20140818 How To Schedule A Shutdown In Ubuntu 14.04 [Quick Tip].md b/published/201408/20140818 How To Schedule A Shutdown In Ubuntu 14.04 [Quick Tip].md similarity index 100% rename from published/20140818 How To Schedule A Shutdown In Ubuntu 14.04 [Quick Tip].md rename to published/201408/20140818 How To Schedule A Shutdown In Ubuntu 14.04 [Quick Tip].md diff --git a/published/20140818 Install Atom Text Editor In Ubuntu 14.04 & Linux Mint 17.md b/published/201408/20140818 Install Atom Text Editor In Ubuntu 14.04 & Linux Mint 17.md similarity index 100% rename from published/20140818 Install Atom Text Editor In Ubuntu 14.04 & Linux Mint 17.md rename to published/201408/20140818 Install Atom Text Editor In Ubuntu 14.04 & Linux Mint 17.md diff --git a/published/20180813 Command Line Tuesdays--Part Eight.md b/published/201408/20180813 Command Line Tuesdays--Part Eight.md similarity index 100% rename from published/20180813 Command Line Tuesdays--Part Eight.md rename to published/201408/20180813 Command Line Tuesdays--Part Eight.md diff --git a/published/Linux System Administration Skills are Changing.md b/published/201408/Linux System Administration Skills are Changing.md similarity index 100% rename from published/Linux System Administration Skills are Changing.md rename to published/201408/Linux System Administration Skills are Changing.md diff --git a/published/Turin To Be The First Italian Open Source City.md b/published/201408/Turin To Be The First Italian Open Source City.md similarity index 100% rename from published/Turin To Be The First Italian Open Source City.md rename to published/201408/Turin To Be The First Italian Open Source City.md diff --git a/translated/tech/20140801 How To Install Java On Ubuntu 14.04.md b/published/20140801 How To Install Java On Ubuntu 14.04.md similarity index 82% rename from translated/tech/20140801 How To Install Java On Ubuntu 14.04.md rename to published/20140801 How To Install Java On Ubuntu 14.04.md index 5679645529..28b4c2b2c8 100644 --- a/translated/tech/20140801 How To Install Java On Ubuntu 14.04.md +++ b/published/20140801 How To Install Java On Ubuntu 14.04.md @@ -3,17 +3,17 @@ ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/07/Install_Java_Ubuntu_Linux_Mint.jpeg) -想知道**如何在Ubuntu 14.04中安装Java**?安装Java肯定是[安装Ubuntu 14.04后首先要做的几件事情之一](1),而且这也很简单 +想知道**如何在Ubuntu 14.04中安装Java**?安装Java肯定是[安装Ubuntu 14.04后首先要做的几件事情之一](1),而且这也很简单。 -许多人比较厌恶Java,但是很有可能因为某些原因,你需要安装Java,尽管你很讨厌它。在这篇文章中,我们将展示如何在Ubuntu 14.04安装Java(也可能在Linux Mint 17同样适用) +许多人比较厌恶Java,但是很有可能因为某些原因你需要安装Java,尽管你很讨厌它。在这篇文章中,我们将展示如何在Ubuntu 14.04安装Java(也可能在Linux Mint 17同样适用)。 ### JRE vs OpenJDK vs Oracle JDK ### -在我们继续了解如何安装Java之前,让我们快速地了解JRE,OpenJDK和Oracle JDK之间的不同之处 +在我们继续了解如何安装Java之前,让我们快速地了解JRE、OpenJDK和Oracle JDK之间的不同之处。 -- JRE(Java Runtime Environment),它是你运行一个基于Java语言应用程序的所正常需要的环境。如果你不是一个程序员的话,这些足够你的需要 -- JDK代表Java开发工具包,如果你想做一些有关Java的开发(阅读程序),这正是你所需要的 -- OpenJDK是Java开发工具包的开源实现,Oracle JDK是Java开发工具包的官方Oracle版本。尽管OpenJDK已经足够满足大多数的案例,但是许多程序比如[Android Studio](2)建议使用Oracle JDK,以避免UI/性能问题 +- JRE(Java Runtime Environment),它是你运行一个基于Java语言应用程序的所正常需要的环境。如果你不是一个程序员的话,这些足够你的需要。 +- JDK代表Java开发工具包,如果你想做一些有关Java的开发(阅读程序),这正是你所需要的。 +- OpenJDK是Java开发工具包的开源实现,Oracle JDK是Java开发工具包的官方Oracle版本。尽管OpenJDK已经足够满足大多数的案例,但是许多程序比如[Android Studio](2)建议使用Oracle JDK,以避免UI/性能问题。 ### 检查Java是否已经安装在Ubuntu上 ### @@ -33,7 +33,7 @@ ### 在Ubuntu和Linux Mint上安装Java ### -看了各种类型‘Java’的不同之后,让我们看如何安装他们 +看了各种类型‘Java’的不同之后,让我们看如何安装他们。 #### 在Ubuntu和Linux Mint上安装JRE #### @@ -47,7 +47,7 @@ sudo apt-get install default-jdk -特殊地,如果你想要安装Java 7或者Java 6等等,你可以使用openjdk-7-jdk/openjdk-6jdk,但是记住在此之前安装openjdk-7-jre/openjdk-6-jre +特殊地,如果你想要安装Java 7或者Java 6等等,你可以使用openjdk-7-jdk/openjdk-6jdk,但是记住在此之前安装openjdk-7-jre/openjdk-6-jre。 #### 在Ubuntu和Linux Mint上安装Oracle JDK #### @@ -58,17 +58,17 @@ sudo apt-get install oracle-java8-installer sudo apt-get install oracle-java8-set-default -如果你想安装Java 7(i.e Java 1.7),在上面的命令中用java7代替java8 +如果你想安装Java 7(i.e Java 1.7),在上面的命令中用java7代替java8。 -我希望这篇文章能够帮助你学会在Ubuntu,Linux Mint和其它基于Ubuntu的Linux发行版本上安装Java,我们欢迎所有问题或者建议 +我希望这篇文章能够帮助你学会在Ubuntu,Linux Mint和其它基于Ubuntu的Linux发行版本上安装Java,我们欢迎所有问题或者建议。 ------------------------------------------------------------------------------------------------------------------ -via: +via: http://itsfoss.com/install-java-ubuntu-1404/ 作者:[Abhishek][a] 译者:[su-kaiyao](https://github.com/su-kaiyao) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/tech/20140801 How to Create an Ubuntu Kiosk Computer.md b/published/20140801 How to Create an Ubuntu Kiosk Computer.md similarity index 56% rename from translated/tech/20140801 How to Create an Ubuntu Kiosk Computer.md rename to published/20140801 How to Create an Ubuntu Kiosk Computer.md index 0999dd477e..22a803736c 100644 --- a/translated/tech/20140801 How to Create an Ubuntu Kiosk Computer.md +++ b/published/20140801 How to Create an Ubuntu Kiosk Computer.md @@ -1,29 +1,30 @@ -如何创建Ubuntu信息端计算机 +如何创建Ubuntu 信息亭(kiosk) ================================================================================ -**Linux发行版可以作为全功能打包,也可以按需分解,驱动了从市内标示牌到市议会桌面系统在内的所有设备。** +**Linux发行版可以作为全功能打包,也可以按需分解,它驱动了从市内标示牌到市议会桌面系统在内的所有设备。** 正是这种多样化,几乎可塑的质量,让Linux发行版,包括Ubuntu在内,在众多不同领域如此成功。 -### 信息端和单功能计算机 ### -Ubuntu更为流行的使用之一,是在**信息端类计算机**中。这些设备趋向于运行功能剥离的,或者功能有限的OS版本,只允许**一个单一应用运行**。 +### 信息亭和单功能计算机 ### -信息端计算机可以设置提供短暂的或者被动的访问,对于网吧或者对于任何要求只有特定功能——如网页浏览器——可以让用户访问的机器十分理想。 +Ubuntu更为流行的使用之一,是在**信息亭(kiosk)类计算机**中。这些设备趋向于运行功能剥离的,或者功能有限的OS版本,只允许**一个单一应用运行**。 + +信息亭计算机可以设置提供短时的或者被动的访问,适用于网吧或只能让用户访问特定功能时(如网页浏览器)。 ### 构建Ubuntu信息端 ### -但你会怎样来创建这样一台计算机?好吧,保存你的Google。Linux开发者Oli Warner最近发布了两篇文章,介绍了使用Ubuntu 14.04和Google Chrome来创建单一功能的设备。 +但你会怎样来创建这样一台计算机?好吧,不用去Google了。Linux开发者Oli Warner最近发布了两篇文章,介绍了使用Ubuntu 14.04和Google Chrome来创建单一功能的设备。 他的第一篇指南从零开始,使用Ubuntu Server和少量的软件包来创建一个轻量级的X和Openbox的组合,开机启动Chrome。该安装需要最多2GB的磁盘空间和仅仅512MB的内存来运行。 -- [从零开始构建信息端计算机][1] +- [从零开始构建信息亭计算机][1] 第二篇教程反其道而行,一步一步介绍了将一个现存的Ubuntu桌面安装转变为一个更轻巧的单一功能的变形版本。 -- [将Ubuntu转换成信息端计算机][2] +- [将Ubuntu转换成信息亭计算机][2] -Neither guide is for the faint-hearted, but are simple enough for most intermediate-level users to follow. Follow the guides to get a functional setup, but don’t be afraid to strip out further packages and processes or double down on security, especially if intending to use an instance in a public space. -两个指南都不是给那些胆小的新手的,而对于大多数中级水平的用户而言却是简单易行的。跟着指南来获得一次实用的安装体验,不要畏首畏尾,大胆去剥离一些深层次的包和进程,或者加固安全吧,特别是如果想要在公共空间中使用一个实例。 + +两个指南都不是给那些胆小的新手的,而对于大多数中级水平的用户而言却是简单易行的。跟着指南来获得一次实用的安装体验,不要畏首畏尾,大胆去剥离一些深层次的包和进程,或者加固安全吧,特别是如果想要在公共环境中使用时。 -------------------------------------------------------------------------------- @@ -31,7 +32,7 @@ via: http://www.omgubuntu.co.uk/2014/07/create-ubuntu-kiosk 作者:[Joey-Elijah Sneddon][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/tech/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md b/published/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md similarity index 64% rename from translated/tech/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md rename to published/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md index bfa7a70fc5..28e3cad173 100644 --- a/translated/tech/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md +++ b/published/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md @@ -1,32 +1,32 @@ -Cheat - 一个给Linux初学者和管理员的终极命令行‘备忘单’ +Cheat—— 给Linux初学者和管理员一个终极命令行‘备忘单’ ============================================================================================== -当你不确定你所运行的命令,尤其是那些使用了许多选项的复杂命令的时候,你怎么做?在这种情况下,我们使用man pages来获取帮助。还有一些其它的选择可能包括像‘**help**’,‘**whereis**’和‘**whatis**’这样的命令。但是所有的这些既有优点,也有缺点 - -当我们浏览**man pages**来查看选项和帮助的时候,man pages里面的描述实在太冗长了,我们无法在很短的时间里理解它的意思 +当你不确定你所运行的命令,尤其是那些使用了许多选项的复杂命令时,你会怎么做?在这种情况下,我们使用man pages来获取帮助。还有一些其它的选择可能包括像‘**help**’,‘**whereis**’和‘**whatis**’这样的命令。但是所有的这些既有优点,也有缺点。 + +当我们浏览**man pages**来查看选项和帮助的时候,里面的描述实在太冗长了,我们无法在短的时间里理解它的意思。 ![Linux Man Pages](http://www.tecmint.com/wp-content/uploads/2014/07/Linux-Man-Pages.jpeg) Linux Man Pages -同样,‘**help**’命令可能不会给你想要的答案 +同样,‘**help**’命令可能也不会给你期待的答案。 ![Help Command](http://www.tecmint.com/wp-content/uploads/2014/07/help-command.jpeg) Help Command -‘**whereis**’命令几乎不给你任何信息,除了安装的二进制文件的位置(有些时候可能非常重要) +‘**whereis**’命令几乎不给你任何信息,除了安装二进制文件的位置(有些时候可能是重要的) ![Whereis Command](http://www.tecmint.com/wp-content/uploads/2014/07/whereis-command.jpeg) Whereis Command -‘**whatis**’命令给出一套很严格的答案---仅仅说出了所查询命令的作用,但,它并没有什么太大帮助。而且, 它从来不提及所查询命令所拥有的选项 +‘**whatis**’命令给出一套很严格的答案,它除了说出所查询命令的作用,并没有什么太大帮助。而且,它从来不说明可用的选项。 ![Whatis Command](http://www.tecmint.com/wp-content/uploads/2014/07/whatis-command.jpeg) Whatis Command -我们使用这些选项直到在困境中解决问题,但是现在来了一个交互式的备忘录应用程序‘**cheat**’,它将带领其余的命令查询命令 +直到在困难中解决问题前,我们已经使用了以上全部选项,但是现在来了一个交互式的备忘录应用程序‘**cheat**’,它将在其余的命令中脱颖而出。 ### 什么是cheat? ### -**cheat**是在GNU通用公共许可证下,为Linux命令行使用者发行的交互式备忘单应用程序。它提供显示Linux命令使用案例,包括该命令所有的选项和简短但尚可理解的功能介绍 +**cheat**是在GNU通用公共许可证下,为Linux命令行用户发行的交互式备忘单应用程序。它提供显示Linux命令使用案例,包括该命令所有的选项和简短但尚可理解的功能。 ![Cheat: Provides Easy Command Options](http://www.tecmint.com/wp-content/uploads/2014/07/cheat-sheet.jpeg) @@ -34,7 +34,7 @@ Cheat:提供简单命令选项 ### 在Linux系统中安装‘Cheat’ ### -‘**Cheat**’有两个主要的依赖 - ‘**python**’ 和 ‘**pip**’,在安装‘**cheat**’之前,确保你的系统安装了python和pip +‘**Cheat**’有两个主要的依赖——‘**python**’ 和 ‘**pip**’,在安装‘**cheat**’之前,确保你的系统安装了python和pip。 ### Install Python ### @@ -46,29 +46,29 @@ Install Pip # apt-get install python-pip (基于Debian的系统) # yum install python-pip (基于小红帽的系统) -**Note**:pip是一个简单的安装替代,是一个有极大改进的Python第三方包安装器 +**Note**:pip是一个简单的安装替代,是一个有极大改进的Python第三方包安装器。 ### 下载并安装Cheat ### -我们将通过Git下载‘Cheat’,确保你安装了‘git’包,如果没有最好安装下 +我们将通过Git下载‘Cheat’,确保你安装了‘git’包,如果没有最好安装一下。 # apt-get install git (基于Debian的系统) # yum install git (基于小红帽的系统) -接下来,通过运行下面的命令来安装所需要的python依赖包 +接下来,通过运行下面的命令来安装所需要的python依赖包。 # pip install docopt pygments -现在,clone cheat的[Git repository][1] +现在,复制cheat的[Git库][1] # git clone https://github.com/chrisallenlane/cheat.git -进入cheat目录,运行‘**setup.py**’(一个python脚本) +进入cheat目录,运行‘**setup.py**’(一个python脚本)。 # cd cheat # python setup.py install -如果安装很顺利,你就能够看到安装在系统上的cheat版本了 +如果安装很顺利,你就能够看到安装在系统上的cheat版本了。 # cheat -v cheat 2.0.9 @@ -79,9 +79,9 @@ Install Pip export EDITOR = /usr/bin/nano -你可以使用你喜欢的编辑器来替代‘**nano**’。保存文件然后退出,再次登录以确保修改生效 +你可以使用你喜欢的编辑器来替代‘**nano**’。保存文件然后退出,再次登录以确保修改生效。 -接下来,添加cheat的自动补全特性,来确保不同解释器下命令行的自动补全。为了到达该功能要求,简单地将‘**cheat.bash**’脚本clone下来,然后复制到你系统正确的路径下 +接下来,添加cheat的自动补全特性,来确保不同解释器下命令行的自动补全。为了到达该功能要求,简单地将‘**cheat.bash**’脚本clone下来,然后复制到你系统正确的路径下。 # wget https://github.com/chrisallenlane/cheat/raw/master/cheat/autocompletion/cheat.bash # mv cheat.bash /etc/bash_completion.d/ @@ -90,15 +90,15 @@ Install Pip - [Auto Completion Script for Various Shells][2] -不仅如此,如果需要的话,你也可以使用语法高亮。要想达到次功能,在你的‘**.bashrc**’文件中添加‘**CHEATCOLORS**’环境变量 +不仅如此,如果需要的话,你也可以使用语法高亮。要想做到这一点,在你的‘**.bashrc**’文件中添加‘**CHEATCOLORS**’环境变量。 export CHEATCOLOR=true -Cheat应用默认只提供最基本和最常用的命令。cheat备忘单的内容保存在**~/.cheat/.**目录里,我们可以手动在这个目录添加备忘单里面的内容,这样,我们的cheat应用将更强大 +Cheat应用默认只提供最基本和最常用的命令。cheat备忘单的内容保存在**~/.cheat/.**目录里,我们可以手动在这个目录添加备忘单里面的内容,这样,我们的cheat应用将更强大。 # cheat -xyz -这将打开xyz备忘单,如果没有的话就会创建一个。备忘单将使用**.bashrc**里设置的默认**编辑器**打开,默认编辑器就是上面内容所提及到的 +这将打开xyz备忘单,如果没有的话就会创建一个。备忘单将使用**.bashrc**里设置的默认**编辑器**打开,默认编辑器就是在上面**.bashrc**所设置的。 ### 一些Cheat命令的使用 ### @@ -107,7 +107,7 @@ Cheat应用默认只提供最基本和最常用的命令。cheat备忘单的内 ![tar command options](http://www.tecmint.com/wp-content/uploads/2014/07/cheat-tar.jpeg) tar命令选项 -除非在不同的地方咨询和核对后,我才使用**dd**命令,在此之前,无论我对这个命令多么的确定,我从不使用它。现在,事情就变得简单多了 +除非在不同的地方咨询和核对后,我才使用**dd**命令,在此之前,无论我对这个命令多么的肯定,我从不使用它。现在,事情就变得简单多了。 ![dd command options](http://www.tecmint.com/wp-content/uploads/2014/07/cheat-dd.jpeg) dd命令选项 @@ -122,42 +122,42 @@ uname命令选择 ![ifconfig command options](http://www.tecmint.com/wp-content/uploads/2014/07/ifconfig-command.jpeg) ifconfig命令选项 -‘top‘命令,一个对管理员和正常用户来说,最重要的命令之一 +‘top’命令,对管理员和普通用户来说,是最重要的命令之一。 ![top command options](http://www.tecmint.com/wp-content/uploads/2014/07/top-command.jpeg) top命令选项 -我们来骗骗cheat命令,如何(尽管别有意义)?得到可用命令的的列表,其实就是安装在你系统里的cheat备忘录 +我们来骗骗cheat命令,如何(尽管别有意义)?得到一个可用命令的列表,其实就是安装在你系统里的cheat备忘录。 ![List All Linux Commands](http://www.tecmint.com/wp-content/uploads/2014/07/linux-commands.jpeg) 列出所有Linux命令 -使用关键字搜索备忘单 +使用关键字搜索备忘单。 ![Search Cheat Sheet](http://www.tecmint.com/wp-content/uploads/2014/07/search-cheat-sheet.jpeg) 搜索备忘单 -来看看包含所有命令的内置备忘单 +来看看包含所有命令的内置备忘单。 $ cheat -d /home/avi/.cheat /usr/local/lib/python2.7/dist-packages/cheat/cheatsheets -复制内置的备忘单到你的本地目录 +复制内置的备忘单到你的本地目录。 # cp /usr/local/lib/python2.7/dist-packages/cheat/cheatsheets/* /home/avi/.cheat/ ### 结论 ### -这个有趣的工程在许多情况下担任救世主的角色,它给予你需要的信息,信息不冗余,不模糊,相反地,却击中要点。这是每个人都会需要的工具,很简单就能创建,安装,使用和理解,这个项目前途无量 +这个超棒的工具在许多情况下担任“救世主”的角色,它给予你需要的信息,信息不冗余,不模糊,相反地,却击中要点。这是每个人都会需要的工具,很简单就能创建、安装,使用和理解,这个工具前途无量。 -这个Git仓库已经添加了一个精彩的**gag**,这里我不打算去解释它,而留给你去解释 +这个Git仓库已经添加了一个精彩的**gag**,这里我不打算去解释它,而留给各位来解释。 ![Linux Gag](http://www.tecmint.com/wp-content/uploads/2014/07/linux-gag.jpeg) Linux Gag -好了,文章就要结束了,我会带着下一个你们爱读的有趣文章回到这里的,在此之前,时刻关注Tecmint。别忘了在下面的评论部分给我们提供你们有价值的反馈 +好了,文章就要结束了,我会带着下一篇你们喜欢的有趣文章回到这里的,在此之前,要时刻关注我们。别忘了在下面的评论部分给我们留下您宝贵的反馈信息。 ------------------------------------------------------------------------------------------------------------------------------- @@ -165,7 +165,7 @@ via: http://www.tecmint.com/cheat-command-line-cheat-sheet-for-linux-users/ 作者:[Avishek Kumar][a] 译者:[su-kaiyao](https://github.com/su-kaiyao) -校对:[校对者ID](https://github.com/校对者ID) +校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/tech/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md b/published/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md similarity index 68% rename from translated/tech/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md rename to published/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md index 9991685f8f..6beb3aab1c 100644 --- a/translated/tech/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md +++ b/published/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md @@ -1,15 +1,14 @@ -在RHEL / CentOS / 5.x / 6.x上禁用并使单用户模式受到密码保护 +在RHEL / CentOS / 5.x / 6.x上用密码保护单用户模式 ================================================================================ -大家好, - -如果您还没有使用密码保护单用户模式,这对你的Linux服务器会是一个很大的风险,所以在涉及到安全性时,使用密码保护单用户模式是非常重要的。 +大家好,如果您还没有使用密码保护单用户模式,这对你的Linux服务器会是一个很大的风险,所以在涉及到安全性时,使用密码保护单用户模式是非常重要的。 今天这篇文章我会向你展示如何在RHEL / CentOS 5.x 和 RHEL / CentOS 6.x上使用密码保护你的单用户模式。 请仔细地执行所给出的命令,不然你的系统将会无法正常启动。首先,我会请你先完整地读完,然后在尝试。请自己承担相应的后果:-) ![Password Protect](http://www.tejasbarot.com/wp-content/uploads//password-300x140.jpg) -Password Protect + +Password Protect ### 1. 对于 RHEL / CentOS 5.x ### @@ -17,11 +16,11 @@ Password Protect cp /etc/inittab /etc/inittab.backup -** 禁用并使单用户模式受到密码保护,用root执行下面的命令 :-** +**要使单用户模式受到密码保护,用root执行下面的命令 :-** - [root@tejas-barot-linux ~]$ sed -i '1i su:S:wait:/sbin/sulogin' + [root@tejas-barot-linux ~]# sed -i '1i su:S:wait:/sbin/sulogin' /etc/inittab -** 这样你会看到像下面这样的 ** +**这样你会看到像下面这样的** su:S:wait:/sbin/sulogin # Default runlevel. The runlevels used by RHS are: @@ -35,7 +34,7 @@ Password Protect # id:3:initdefault: -*NOTE: 如果你不想使用sed命令你可以在/etc/inittab 顶部加入 “su:S:wait:/sbin/sulogin” * +*NOTE: 如果你不想使用sed命令你可以在/etc/inittab 顶部加入 “su:S:wait:/sbin/sulogin”* ### 2. 对于 RHEL / CentOS 6.x ### @@ -43,9 +42,9 @@ Password Protect cp /etc/sysconfig/init /etc/sysconfig/init.backup -#### 2.2 禁用并使单用户模式受到密码保护,用root执行下面的命令 :- #### +#### 2.2 要使单用户模式受到密码保护,用root执行下面的命令 :- #### - [root@tejas-barot-linux ~]$#sed -i 's/SINGLE=\/sbin\/sushell/SINGLE=\/sbin\/sulogin/' /etc/sysconfig/init + [root@tejas-barot-linux ~]# sed -i 's/SINGLE=\/sbin\/sushell/SINGLE=\/sbin\/sulogin/' /etc/sysconfig/init **这样你会看到像下面这样的** @@ -53,15 +52,15 @@ Password Protect *注意 :- 如果你不想使用sed你可以在 /etc/sysconfig/init 中直接改成 “SINGLE=/sbin/sulogin”* -E享受Linux :) 享受开源 +享受Linux :) 享受开源 -------------------------------------------------------------------------------- -via: http://www.tejasbarot.com/2014/05/05/disable-password-protect-single-user-mode-rhel-centos-5-x-6-x/#axzz39oGCBRuX +via: http://www.tejasbarot.com/2014/05/05/disable-password-protect-single-user-mode-rhel-centos-5-x-6-x/ 作者:[Tejas Barot][a] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md b/published/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md new file mode 100644 index 0000000000..986b84f510 --- /dev/null +++ b/published/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md @@ -0,0 +1,39 @@ +Linux有问必答:如何检查Linux系统的最后重启时间 +================================================================================ + +> **问题**: 是否有一个命令可以快速地检查系统已经运行了多久? 也就是我怎么知道Linux系统最后的重启时间? + +有许多方法来查询系统最后的重启时间。 + +### 方法一 ### + +第一种方法是使用last命令 + + $ last reboot + +![](https://farm4.staticflickr.com/3925/14881994335_041e9c2f86_z.jpg) + +这条命令实际上显示的是最近几天的系统运行时间。last原本被设计来显示某个特定用户的登录历史。在Linux中,有一个特别的“伪用户”称为reboot会在系统重启的时候立即自动登录。这样通过检查reboot用户的登录历史,你就可以检查最后的重启时间。 + +### 方法二 ### + +另外一个检测系统最后启动时间的方法是使用who命令带上‘-b’选项。 + + $ who -b + +### 方法三 ### + +你同样可以使用uptime命令来推断系统最后的启动时间。uptime命令会显示当前的时间,同样也会显示系统已经运行的时间。从这些信息中,你就可以计算系统最后启动的时间了 + + $ uptime + +![](https://farm4.staticflickr.com/3915/14881660192_58f2843969_o.png) + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/check-last-time-system-rebooted-linux.html + +译者:[geekpi](https://github.com/geekpi) +校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md b/published/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md new file mode 100644 index 0000000000..2781931f54 --- /dev/null +++ b/published/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md @@ -0,0 +1,214 @@ +KDE Plasma 5 —— 给尚未确定桌面环境的 Linux 用户指明道路 +================================================================================ +> 点评 ———— 新的KDE 5版本既满足了传统桌面环境的需求,也兼顾了多设备长期支持计划 + +KDE 项目终于发布了备受瞩目的 KDE 桌面环境的最新主版本 ———— KDE Plasma 5。 + +Plasma 5 站在了一场正在进行的未来 Linux 桌面环境的争夺战中间。 + +一方面,有着 GNOME 和 Unity 这样的新生桌面代表。二者均通过某种重要方法打破了传统桌面模式的垄断,并且都不只是满足于桌面型计算机,而将其界面延伸到了备受期待的新型平板电脑([也许不久后就会面世][1])。 + +另一方面,Linux 桌面环境,如 KDE、XFCE、LXDE、Mate 甚至 Cinnamon,都是桌面环境的另一种类型 ———— 自发布以来没有什么大的变化,继续向用户提供传统的桌面环境体验,但这并不能表明这些项目没有成长和进步。这些发行版全部持续更新,并且根据成熟桌面应有的模式进行了不断的调整。 + +![Ubuntu 下的 Unity 桌面环境](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot-unity.png) + +Ubuntu 下的 Unity 桌面环境 + +![GNOME 3 桌面环境](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot-gnome.png) + +GNOME 3 桌面环境 + +GNOME 和 Unity 暂时在这场正在进行的争夺战中赢得了最大的优势。二者均新颖非凡,固执并极端。有的 Linux 用户对他们情有所钟,也有的 Linux 用户对他们恨之入骨。这使得在 Linux 世界里,没有哪条关于这两个桌面环境的评论或帖子是轻松活泼的。同时两大 Linux 阵营之间的差异不仅仅关乎于你未来桌面的样子,更决定了未来计算机会如何运作。 + +GNOME 和 Unity 相信未来的计算机运作方式,是由多台设备同时运行着相同的软件互相合作而成的 ———— 因此这两个项目发行的新版桌面只朝着这个方向努力。这些新版桌面并不是真正意义上作为未来桌面打造的,而是同时囊括了现在意义上的桌面,以及会出现在未来设备上的桌面的混合桌面。而另一派 Linux 桌面环境似乎完全忽视了这些。 + +与闭源操作系统的世界不同 ———— 那里所有变化都遗传了下来,与之仿效还是以之为戒?Linux 世界正在这两种对立的观点中徘徊着。 + +对用户群体来说,这也许很令他们沮丧。试想你正在努力完成工作,但此时你必须完成一个会彻底改变你现有桌面环境的更新,陌生的工作方式使你不得不花费时间来学习。即便最好的情况是,当你曾经最喜爱的桌面环境更新得面目全非的时候,你选择迁移到了其他桌面去。但你长久以来的使用习惯以及那种熟悉的感觉,却再也无法找回了。 + +幸运的是,有一个简单的方法去避免这种糟糕的情况并为你找到合适的桌面。简而言之:你想被桌面牵制,还是想控制桌面? + +如果你是第一派阵营的,并且乐于学习新的工作方式,那么 Unity 和 GNOME 3 将会是你最好的选择。如果你是后一派阵营的,XFCE、Cinnamon、Mate,还有许多其他的桌面环境,都将很好的满足你的需求。甚至如果你想尝试和 Unity 还有 GNOME 3 都不相同的新生桌面时,也有 Xmonad、Ratpoison 等其他非常小众的桌面环境供你选择。(说来惭愧,自从 Linus 说了“呃,嘿,这有个内核非常适合你的 GNU 操作系统”以来,Xmonad 可能是 Linux 里最好的东西了。) + +![KDE Plasma 5's new boot screen.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot01.png) + +KDE Plasma 5 的启动界面 + +那么对于犹豫不决的 Linux 用户呢,让他们随便选一种吗?他们喜欢传统桌面环境的带来体验,但也不想因此放弃新生桌面的菜单、快捷方式还有任务栏,同时他们还担心着平板电脑等其他问题,想着是否会有某个桌面能在所有设备上工作。假如你正在这么想,那么我的朋友,你绝对有必要尝试下 KDE 的最新版 Plasma 5。 + +KDE 正在尝试做其他 Linux 桌面都没有做过的事 ———— 向平板电脑及移动设备桌面前进的同时,继续向用户提供传统的、多功能的、高度定制化的桌面体验。 + +### KDE Plasma 5 与“通用”世界 ### + +经历过 KDE 3.5 升级至 KDE 4 的用户似乎仍然避免任何有关 KDE 的重要更新,但对 KDE 粉丝而言,Plasma 5 还是带来了一些好消息。确实这是一个重要更新,没错,但这只是极少数情况下出现的例外(因此我得花费点时间来解释一下,因为你还不太了解)。 + +事实证明,难以置信且艰难万分的 KDE 4 更新确实为一个更加美好的未来打下了坚实的基础 ———— 我们现在刚刚抵达这美好的未来。 + +通过这次更新,KDE 核心今后出现变化的可能性大大减小。我们确实提及了正迈向平板电脑以及其他设备的一步,这令人难以置信,但不要害怕。KDE 似乎准备去做 GNOME 和 Unity 无法做到的事 ———— 在不改变传统桌面模式的前提下,移植到其他设备上去。换言之,这一版本极力避免了所有因某些新技术的出现而随意尝试所导致的混乱结果。 + +(说点其他的:如果你没记住也没关系,但你认同 Canonical 继续通过 Unity 的更新来实现桌面通用这件事吗?早在 Canonical 让用户测试 GNOME 2 菜单中的阴影棕色以调配出最佳效果时,KDE 就开始决定实施桌面统一计划了) + +通过 KDE Frameworks 5、Qt5 还有其他一系列随同 Plasma 5 进行的更新,通用版本的 KDE 得以实现。KDE 将出现在任何需要它的地方。 + +因此当所有因素出现时,KDE 项目及其开发者打造出了全新的界面 ———— KDE 称这种新框架为“通用等离子壳层”(converged Plasma shell),在 Plasma 5 中作为支撑桌面环境的框架基础 ———— Plasma 5 桌面截至目前,是唯一的界面。KDE 计划打造出其他的界面,但针对 Plasma 5 的[官方声明][2]中提到“一个平板中心及用户体验媒体中心正在开发中”。 + +从这点来看,KDE 的通用版本和和 Ubuntu 所预想的并不相同;用户界面将基于设备和硬件进行改变。例如,当你在长椅上浏览网页的时候,你也许有台平板电脑正在管理着进行中的工作。然后你起身,走回办公室,连接无线键盘,平板电脑又变成了拥有键盘的友好操作界面。 + +这种情况下有些潜在的问题,部分 Win 8 用户也许已经习以为常了。比方说,假如键盘正在进行输入,而你仍然想通过触屏进行交互,会发生些什么?试想你正在操纵鼠标,但你同时却想活动活动手指。 + +我们提及这些并不是说 KDE 没有考虑过这些问题(希望他们已经考虑过了),而是指这个“通用”所有设备用户界面的想法将很难做到完美。并且 KDE 一直在做一件事 ———— 暗示用户这项计划的成功是遥遥无期的。 + +假如 KDE 能运行在平板设备上,那么用户将获得可以订制任何细节部分的体验。简单来说,会有一种方法让你决定当系统检测到键盘时进行什么操作,而不是让系统自己决定。 + +### Plasma 5 桌面 ### + +KDE Plasma 5 是由 KDE 4 演化来的,而不是任何一种意义上的界面革新。 + +![KDE Plasma 5 的桌面。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot02.png) + +KDE Plasma 5 的桌面。 + +我们早就用这个版本了 ———— 早在不太稳定的测试期时就开始了,尽管大部分错误提示已图形化,而不仅仅是文字警告 ———— 截至目前已在虚拟机上运行了超过一个月的时间。我们已经在 Retina 屏的 MacBook Pro 上进行过了双重启动测试,并且验证了 KDE 在更旧的硬件,一台古老的东芝笔记本上,表现如何。测试 KDE Plasma 5 期间我们使用了 Kubuntu(虚拟机和东芝笔记本)以及新安装的 Arch Linux(MacBook 上的双重启动)。 + +如果你想试试 Plasma 5,最简单的方法是下载[KDE 的官方 Neon live CD][3]。这样可以使你得到在 Ubuntu 上运行的 Plasma。如果你想在一个已经安装了 Kubuntu 的操作系统上安装测试,你可以使用以下命令: + + sudo add-apt-repository ppa:neon/kf5 + sudo apt-get update + sudo apt-get install project-neon5-session project-neon5-utils project-neon5-konsole project-neon5-breeze project-neon5-plasma-workspace-wallpapers + +重启你的机器,你将会在登录界面下找到启动 Neon 的新启动项。 + +当你安装完 Plasma 5 并且启动时,首先你将会注意到的是叫做 Breeze 全新 KDE 默认主题。 + +### Plasma 5 的全新外观 Breezy ### + +Breezy 主题是 KDE 所要呈现出的一种现代化界面,同时“减少了工作区的视觉混乱”。也就是说,很长时间以来一直作为 KDE 默认外观一部分的,那种给人以忙碌混乱的感觉已经成为了过去。 + +![KDE Plasma 5 的 Breeze 桌面主题最大程度上完善了开始菜单。每个标签下都有注释,方便搜索。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot03.png) + +KDE Plasma 5 的 Breeze 桌面主题最大程度上完善了开始菜单。每个标签下都有注释,方便搜索。 + +全部界面发生了极大的变化 ———— 更大的字体,更好的对比度,以及一种全新的平面布局,其“磨砂”外观有点类似并且介于 OS X Yosemite、Android L 还有 KDE 4.x 的风格。这并不是说 KDE 抄袭了苹果或者谷歌。这不可能是抄袭,因为 Plasma 5 和 Breeze 主题发布了很长时间之后苹果核谷歌那里才透漏出些许 Yosemite 还有 Android L 的信息出来。 + +当然,说 KDE 抄袭了任何产品都是不对的,从 Breeze 的视觉设计和整体审美性来看,其更偏向于长时间沉淀的作品。从这种角度看,它看起来很“现代化”,只要你把现代化定义为较多的尖锐元素,较少的纹理和轮廓,更多的半透感,以及单色图形。 + +KDE 的设计者将大量的工作放在了 Breeze 主题还有其外观上。这不仅仅是外观上的变化。Breeze 主题借由清爽的菜单、更有条理的通知中心以及全新的开始菜单,使 KDE 变得更加友好。 + +![清爽、有条理的通知中心。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot04.png) + +清爽、有条理的通知中心。 + +Breeze 出现了多少问题取决于你是否使用过它。KDE 更倾向于那些喜欢定制自己系统的用户,他们大概也喜欢定制主题。有件期待的事,有什么发行版会大幅修改默认 KDE 主题? ———— 显然是 OpenSUSE ———— 将会提供一个比 Breeze 所提供的更高的开始菜单栏。 + +目前而言,大多数发行版应该不会直接过渡到 Breeze 上去,因为其仍处于测试阶段。而且巧合的是,Breeze 将会是你注意到 Plasma 5 不完美的第一个标志。开始菜单上有许多很棒的新图标了,但其他界面上却没有。并且作为 Kubuntu PPA 可用的最新更新,Breeze 并未使用新版的窗口装饰。新版窗口装饰是已经安装了的,但默认并未被使用。你可以去系统设置中打开该选项以获得更完整的,但也更有可能出 bug 的 Breeze 体验。 + +![图片上半部分是默认的 Oxygen 窗口装饰,下半部分是最新的 Breeze 主题中的窗口装饰。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot05.png) + +图片上半部分是默认的 Oxygen 窗口装饰,下半部分是最新的 Breeze 主题中的窗口装饰。 + +并非所有都是理想的,有时很难分辨什么是 bug 或者什么地方是不完善的,以及哪里的设计不够好。比如,Breeze 下有很多窗口的时候会呈半透明覆盖状,其中一些看起来非常好看。但某些时候,这会成为一种妨碍。堆叠窗口与覆盖预览之后的是什么,在后台时很难看到这些。可以通过将之拉至前台来解决问题,但这样一来则很难评价透明的意义在哪里。 + +![透明... 意义何在?](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot06.png) + +透明... 意义何在? + +是的,Breeze 主题仍然处于测试中,不仅仅是功能和设计;工作重点放在了真正 bug 还有缺陷上。同时我们还遇到了一些意料之外的情况,特别是关于屏幕刷新的问题。这些问题频繁发生,很长时间才引起我们的注意。窗口时常消失,并且有时菜单栏只显示一半。 + +Plasma 5 在我们的测试期间从未崩溃过,并且从未遗失任何数据。但注意 ———— 经常会有一些图像方面的小 bug 出现。我们建议你在稳定版发布前不要尝试进行更新。 + +### Plasma 的垂直菜单 ### + +Breeze 给 Plasma 5 带来一种新外观,同时也带来了许多细节方面的变化。例如,窗口小部件和 ALT-TAB 窗口切换均呈现垂直显示,并且默认都具有相同的启动位置 ———— 当前屏幕的左侧。 + +![ALT-TAB 窗口切换的默认外观。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot07.png) + +ALT-TAB 窗口切换的默认外观。 + +共通性也许对于 KDE 的新特点是有利的,当需要帮助时所需资料会出现在屏幕的左侧,但这也许会对那些期待点其他东西的老用户感到失望。有些变化看上去不太合情理。 + +![窗口小部件。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot08.png) +窗口小部件。 + +KDE 项目称在像窗口小部件和窗口切换器等菜单中,垂直菜单将取代水平菜单,“提供更好的使用体验”。但并未提及会具体如何。发行文档称挪动窗口切换器至屏幕一端“使用户的注意力更加集中于应用和文档,以完成手头上的工作”。可是当你启用了窗口切换器,嗯,准备切换窗口时,你的注意力更可能是在不同的任务间而不是集中在某一个任务上面。 + +![KDE 依旧偏向于提供不同选择。注意右侧的暗灰色选择条,那是拖动窗口时的阴影选项。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot09.png) + +KDE 依旧偏向于提供不同选择。注意右侧的暗灰色选择条,那是拖动窗口时的阴影选项。 + +这就是 KDE,当然,不是 Unity;高度可定制化是其一大特色,而不是 bug。进入系统设置你可以调回旧版风格的窗口切换器,并且在 Plasma 5 中有 10 种不同的窗口切换器效果可供选择。如果默认风格并不是你最喜欢的,那么换一个吧。 + +### 告别 Nepomuk 语义桌面的时间,感谢长久以来支持着我们的粉丝 ### + +如果你是 KDE 重度用户,并且经历了 KDE 的顶峰和低谷,并仍抱有期待,那么你肯定已经知道了 Plasma 5 中的最大看点。没错,KDE 替换了 Nepomuk 语义桌面,取而代之的是称作 Baloo 的新搜索引擎。 + +Nepomuk 语义桌面最初是一个由欧盟赞助的搜索项目,高调宣称其目的是创建一个“使用网络环境提供个性化服务的,基于本地的知识库管理(Networked Environment for Personalized, Ontology-based Management of Unified Knowledge)”。当项目被引用到 KDE 上的时候,Nepomuk 成为了一个更加通用的桌面搜索工具,在辉煌与疯狂之间徘徊着。 + +![在 Plasma 5 中搜索文件。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot10.png) + +在 Plasma 5 中搜索文件。 + +Baloo 沿用了 Nepomuk 的大部分功能,全文字文件搜索和一种不可思议的文件衔接功能,比如,知晓与一个特定文件相关的其他文件并[予之改进][4]。实际上这使用于 Plasma 5 中的搜索功能,并且你可以在搜索栏的右边注意到两点:更快的速度以及每次索引更新时你的风扇并未发疯般狂转。 + +Baloo 大幅减少了搜索记录的资源,并且,根据 KDE 上的测试,其准确度更高了。我们不能保证后一点,因为我们从未在旧版 KDE 中使用大量搜索(参见风扇运转注释),但在计算精度上,Plasma 5 中的简单文件搜索达到了你使用 Ubuntu、OS X 等其他文件搜索方式的平均速度。涉及更复杂的搜索关系或复杂元数据的成功将更大程度上取决于你使用默认 KDE 应用的频率。比方说,如果你想利用基于 Baloo 的搜索引擎的优势进行涉及文件间关联的搜索时,你需要使用 Kontact 套件。 + +尽管这肯能会随着时间而改变,因为与 Nepomuk 相比另一个比较大的变化是新的、改进的开发者 API。搜索 API 意味着第三方应用可以配合 Plasma 5 中的语义搜索基础,并发挥默认应用所使用的相同工具的优势。 + +奇怪的是,其他可见的和 Baloo 具有相同任务量的搜索工具,其可见度与发掘性已经落后一步了。点燃 Plasma 5 的开始菜单 ———— KDE 对窗口开始菜单的回应 ———— 并且无法找到搜索栏。如果你仔细寻找,你将会找到一个非常小的提醒样式的“点击以进行搜索”,这是初版以来的第一步改变(没有你可以进行搜索的指示)。然而,可以发现这并不是一个专门的搜索框。 + +### Kickoff 开始菜单与他的新表弟 Kicker ### + +KDE 提交的关于窗口开始菜单的答案一直是过度包装的、狭小空间内拥挤的视觉外观,但在 Breeze 主题中开始菜单开始变得清爽,并更具有视觉观赏性。 + +![默认主题下的开始菜单。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot11.png) + +默认主题下的开始菜单。 + +如果这样对你的需求来说还是有点多,Plasma 5 提供了一个全新的、更加传统的菜单 ———— 称为 Kicker,基于原启动器。Kicker 所需完成的任务更少 ———— 它更接近于 XP 中的开始菜单,在需要提供扩展菜单的地方提供一种单一的、狭窄的面板 ———— 并且在你如果只是想启动应用或打开文件时,提供一种更加轻量级的选择。它也有一个非常显眼的搜索框。 + +![另一个选择 ———— 全新的 Kicker 菜单。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot12.png) + +另一个选择 ———— 全新的 Kicker 菜单。 + +菜单的另一侧得到了更新,变得更加清爽。最显著的变化是通知中心,减少了弹出次数,并且通过更好、更迅速方式来显示通知。 + +### OpenGL、QtQuick 以及 HiDPI 显示 ### + +Plasma 5 完成了 KDE 至 Qt 5 和 QtQuick 的迁移,后者使用硬件加速的 OpenGL 场景图进行图形渲染。OpenGL 的大部分更新都和任何可用的 GPU 图形卸载有关。这意味着,如果你拥有被支持的硬件,Plasma 5 将利用现今强劲的 GPU 充分发挥显卡优势。 + +事实上,在最新的硬件上(例如我们测试所用的 MacBook 的 NVIDIA GeForce GT 显卡)Plasma 5 的反应速度很迅捷,远比其老版本要快。也许更令人印象深刻的是,即使把 Plasma 5 相比 KDE 4.x 在 GPU 上的优势去除,其反应速度仍然很快。也就是说,虽然在老旧硬件上运行仍然不是 KDE 的强项,但其表现与之前相比已有所改观。不过,如果你想在老旧硬件上得到更多支持,请务必使用 Xfce、LXDE 或者某些像 Openbox 那样简单的桌面环境吧。 + +有趣的是,弥补 Plasma 5 图形叠加的修改过后的框架也向 KDE 切换至 Wayland 显示服务协议提供了道路。尽管 KDE 并没有急着切换到 Wayland,但注意全面支持技术将在“某个未来版本”实现。 + +这一版本也声称改进了对 HDPI 显示的支持。然而,结合 GNOME 和 Unity 对 HDPI 的支持,实际经验是忧喜参半的。特别是字体渲染远不及 OS X 所提供的渲染平滑。对我来说,即使安装 了 Infinality 并进行调整,也从来没有出现令我满意的结果。我们仍然不确定问题是否是在安装过程中出现的,并且我们也未亲眼见到 HDPI 的新功能。或许,KDE 对于究竟是什么构成了 HDPI 支持有一个完全不同的定义。但愿问题是出在安装过程中。 + +### 有哪些缺陷 ### + +在本文的前半部分,我们曾提到由 KDE 4 向 Plasma 5 的转变将不会像从 KDE 3 向 KDE 4 的转变那样艰难。对大多数人来说,这是真的,但是,对于某些人来说,也许会出现例外。 + +KDE 项目称这一版本的焦点已经“集中在了弥补核心工作流的工具上”,并表明“并不是所有 Plasma 4 系列中的功能都可以使用了”。这给那些经历了 KDE 3 向 KDE 4 转变的人敲响了警钟。 + +在测试期间,我们并未遇到任何性能上的差距或者功能上的显著缺失,除了提到:Breeze 主题的不完善、某些图形故障,以及某些可疑的设计方面的问题。也就是说,请查阅[已知问题列表][5],特别是性能方面的警示。 + +同时我们在此建议在你完全迁移至 Plasma 5 之前请提前测试,以确保你所必需的都已具备。 + +### 结论 ### + +KDE Plasma 5 版本缺乏使 Unity 和 GNOME 一跃成名的那种吸引人的代表性变化。与之相反,KDE 项目致力于改善其核心桌面体验。从任何意义上讲 Plasma 5 都不是完美的,但与 Unity 和 GNOME 不同,你可以随意改变那些你所不喜欢的地方。 + +这一版本最激动人心的地方在于 KDE 已经在完全没有弄乱现有桌面的情况下,为交互界面做出了大量铺垫。另一个好消息是速度方面的改善。如果你此前曾经尝试过 KDE 并觉得它过于“庞大”,那么你应该重新审视以下 Plasma 5 了。 + +-------------------------------------------------------------------------------- + +via: http://arstechnica.com/information-technology/2014/08/kde-plasma-5-for-those-linux-users-undecided-on-the-kernels-future/ + +作者:Scott Gilbertson +译者:[SteveArcher](https://github.com/SteveArcher) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://arstechnica.com/gadgets/2014/08/op-ed-tables-really-are-pcsbecause-theres-no-point-in-buying-new-ones/ +[2]:http://www.kde.org/announcements/plasma5.0/ +[3]:http://files.kde.org/snapshots/neon5-latest.iso.mirrorlist +[4]:https://dot.kde.org/2014/02/24/kdes-next-generation-semantic-search +[5]:https://community.kde.org/Plasma/5.0_Errata \ No newline at end of file diff --git a/translated/tech/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md b/published/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md similarity index 100% rename from translated/tech/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md rename to published/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md diff --git a/translated/tech/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md b/published/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md similarity index 81% rename from translated/tech/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md rename to published/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md index f470b075c4..0b180074cc 100644 --- a/translated/tech/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md +++ b/published/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md @@ -3,15 +3,15 @@ Linux终端:speedtest_cli检测你的实时带宽速度 ![](http://www.speedtest.net/result/3700218352.png) -什么是你在家(或者办公室)的上传和下载速度?你能保证,你支付费用给ISP的同时,你得到了等价的回报? +你在家(或者办公室)的上传和下载速度如何?你能保证,你支付费用给ISP的同时得到了等价的回报? -为了测试我们因特网连接的速度,当下存在着一些因特网服务,比如说SpeedTest,这是一种可以通过Web浏览器和手机应用程序浏览的web服务 +要想测试我们因特网连接的速度,当下存在着一些因特网服务,比如说SpeedTest,这是一种可以通过Web浏览器和手机应用程序浏览的web服务。 -现在,你可以很容易地检测你的网速,使用speedtest_cli同样很简单,它是一个使用[speedtest.net][2]来测试因特网[带宽][1]的命令行界面。通过这种方式,你也可以在没有浏览器或者图形化界面的服务器上做带宽测试 +现在,你可以很容易地检测你的网速,使用speedtest_cli同样很简单,它是一个使用[speedtest.net][2]来测试因特网[带宽][1]的命令行界面。通过这种方式,你也可以在没有浏览器或者图形化界面的服务器上做带宽测试。 ### 安装 ### -speedtest_cli是一个python脚本,所以它真的很容易安装和使用,你拥有许多方式安装它: +speedtest_cli是一个python脚本,所以它真的很容易安装和使用,你可以通过许多方式安装它: #### 1)pip / easy_install #### @@ -39,8 +39,11 @@ speedtest_cli是一个python脚本,所以它真的很容易安装和使用, getdeb仓库给我们提供了[安装包][3],按照下面的步骤,就可以轻松安装: - 安装[getdeb包][4] + 或者 -- 手动地配置仓库: + +- 手动配置仓库: + 进入系统管理软件源,第三方软件选项,加上: deb http://archive.getdeb.net/ubuntu trusty-getdeb apps @@ -56,7 +59,7 @@ getdeb仓库给我们提供了[安装包][3],按照下面的步骤,就可以 #### 4)下载(和以前的方式一样) #### -作为最后的选择,只需要下载python脚本,然后在你想运行的地方运行脚本: +最后一个选择,只需要下载python脚本,然后在你想运行的地方运行脚本: wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py chmod +x speedtest-cli @@ -68,7 +71,7 @@ getdeb仓库给我们提供了[安装包][3],按照下面的步骤,就可以 ### 基本用法 ### -你可以不带任何选项地运行speedtest_cli.py,然后你会在终端获得关于你带宽速度的报告,这就是我蹩脚的意大利Adsl输出: +你可以不带任何选项地运行speedtest_cli.py,然后你会在终端获得关于你带宽速度的报告,这就是我那糟糕的意大利Adsl输出: $ ./speedtest_cli.py Retrieving speedtest.net configuration... @@ -81,7 +84,7 @@ getdeb仓库给我们提供了[安装包][3],按照下面的步骤,就可以 Testing upload speed............................................... Upload: 0.34 Mbits/s -这就是简简单单的基本用法,这足以让你知道你因特网连接的好坏,但是有可能,你需要和朋友分享这条信息,为了到达此目的,只需要-share选项 +这就是基本用法,这足以让你知道你因特网连接的好坏,但是可能你想要和朋友分享这条信息,那么,只需要-share选项就可以 ./speedtest_cli.py --share Retrieving speedtest.net configuration... @@ -119,7 +122,7 @@ getdeb仓库给我们提供了[安装包][3],按照下面的步骤,就可以 2918) ReteIVO by D.t.s. Srl (Arezzo, Italy) [129.79 km] ... -现在,我知道围绕在我周围的服务器的ID,我可以使用-server选项选择一个特定的服务器,所以,为了选择位于Florence(ID 2710)的服务器,我使用下面的命令: +既然我知道了围绕在我周围的服务器的ID,我可以使用-server选项选择一个特定的服务器,所以,要想选择位于佛罗伦萨(ID 2710)的服务器,我使用下面的命令: ./speedtest_cli.py --server 2710 Retrieving speedtest.net configuration... @@ -135,18 +138,16 @@ getdeb仓库给我们提供了[安装包][3],按照下面的步骤,就可以 --- -via: http://linuxaria.com/howto/linux-terminal-speedtest_cli-checks-you -r-real-bandwidth-speed +via: http://linuxaria.com/howto/linux-terminal-speedtest_cli-checks-your-real-bandwidth-speed 译者:[su-kaiyao](https://github.com/su-kaiyao) -校对:[校对者ID](https://github.com/校对者ID) +校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [1]:http://linuxaria.com/article/tool-command-line-bandwidth-linux [2]:http://linuxaria.com/howto/speedtest.net [3]:http://www.getdeb.net/ -[4]:http://archive.getdeb.net/install_deb/getdeb-repository_0.1-1~getde -b1_all.deb +[4]:http://archive.getdeb.net/install_deb/getdeb-repository_0.1-1~getdeb1_all.deb [5]:http://www.asapy.com/ diff --git a/published/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md b/published/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md new file mode 100644 index 0000000000..53e6416202 --- /dev/null +++ b/published/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md @@ -0,0 +1,45 @@ +“林纳斯·托瓦兹是我的英雄”13岁的扎卡里杜邦说 +================================================================================ + +Zachary DuPon是一名6年级的学生,他马上年满13岁。他过去是Arch liunx的用户,并期待着尽快安装Gentoo Linux。 + +Zachary DuPon的故事是这样的-他的学校组织了一个活动,要求学生们给他们的英雄写一封信,大多数孩子写给社会名流,而Zachary DuPon写给了现代科技世界的“真”英雄-林纳斯·托瓦兹。 + +由于林纳斯在家工作,他没有透露自己的办公地点,Zach的信送到了Linux基金会,工作人员会在发送给林纳斯之前浏览全部的信件内容。当基金会看到了这封信,他们联系了扎克的学校,慷慨地邀请他做客LinuxCon,这样他就能见到他的英雄本人。 + +linux的执行董事长Jim Zemlin在主题小组讨论过后,引领Zach来到人群中。Zach见到了林纳斯并得到了linux之父签名的《linux圣经》;他也得到了林纳斯签名自传[《只为了好玩:一次偶然的革命》][1] + +![Linus Torvalds signing a book for Zachary DuPont](http://www.themukt.com/wp-content/uploads/2014/08/Linus_torvalds_zach_1.jpg) +林纳斯·托瓦兹为扎克里杜邦签名 + +![The DuPont family](http://www.themukt.com/wp-content/uploads/2014/08/zachary_dupont_family.jpg) +扎克里杜邦一家 + +![Swapnil Bhartiya with Zachary DuPont](http://www.themukt.com/wp-content/uploads/2014/08/swapnil_zach.jpg) +本文作者 Swapnil Bhartiya和扎克里杜邦 + +我不想失去这个机会,所以他们和林纳斯交谈一结束,我就走向这个家庭,安排了这次视频采访。我是一个两岁孩子的父亲,而作为一名父亲,我着实对Zach自信、清晰,明确的思想所感到惊讶。 + +我提供给你这次视屏采访的细节 + +- 他使用Arch linux。 +- 他打算一旦他擅长编程就做出自己的贡献。 +- 他没有提交任何漏洞报告,并且他认为他应该这样做。他也表示他没有发现任何漏洞。 +- 他对WINE没太大的兴趣。 +- 他喜欢KDE的原始桌面,但是它在他的网关机器上工作不是很好。 +- 他是一个装有XFCE桌面环境的Debian GNU/linux用户。 + +林纳斯也许是扎克的英雄,但是扎克是整个GNU/linux和自由软件社区的英雄,他不断地提醒我们,未来尽在我们掌握中。 + +-------------------------------------------------------------------------------- + +via: http://www.themukt.com/2014/08/24/linus-torvalds-hero-says-13-years-old-zachary-dupont/ + +作者:[Swapnil Bhartiya][a] +译者:[luoyutiantang](https://github.com/luoyutiantang) +校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.themukt.com/author/swapnil_bhartiya/ +[1]:http://www.amazon.com/gp/product/0066620732/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=0066620732&linkCode=as2&tag=muktware-20&linkId=HBKEBIFVZQC35GGK diff --git a/published/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md b/published/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md new file mode 100644 index 0000000000..16c638f99a --- /dev/null +++ b/published/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md @@ -0,0 +1,45 @@ +GIMP 2.8.12 发布了,来看看如何在Ubuntu上安装 +================================================================================ +**GIMP是深受欢迎的开源Photoshop替代软件,它的[新版本][1]现在可以下载了。** + +![GIMP is a Free Photoshop Alternative](http://www.omgubuntu.co.uk/wp-content/uploads/2012/05/screen-shot-2012-05-03-at-10.38.40.jpg) +GIMP是一款免费的可替代Photoshop的软件 + +正如在GIMP 2.8.x 系列中的最新条目——[自2012年起开始发布][2]并着重介绍长期追求的“单窗口模式”——版本2.8.12并没有重新去做它而是继续改进。如其所说,软件并没有发现面向用户的新特点。 + +然而,开发人员修复了一批新的漏洞,旨在提高整体的稳定性,安全性以及这款著名软件的风格。 + +- 插件的笔刷大小不再变形。 +- .XCF 文件的加载更稳固。 +- 小部件的方向现在匹配界面语言(例如 RTL)。 +- script-fu-server 的安全性提高。 + +文档,帮助以及翻译的更新也包括在其中。想了解在版本 2.8.10 和 2.8.12 之间所有修复完整更改日志,可以看[GNOME Git日志][2]。 + +### 在Ubuntu上安装最新的GIMP ### + +最新发布的源代码可以从官方网站上或者从[官方种子文件][3]下载。 + +在Ubuntu上呢?在Ubuntu 12.04 和14.04 LTS 上你可以通过添加[以下第三方PPA][4]软件源来安装GIMP 2.8.12: + + sudo add-apt-repository ppa:otto-kesselgulasch/gimp + + sudo apt-get update && sudo apt-get install gimp + +在安装完成后,你可以从Unity Dash(或者类似途径)来启动GIMP 2.8.12。 + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/08/whats-new-in-gimp-2-8-12-plus-install-ubuntu + +作者:[Joey-Elijah Sneddon][a] +译者:[linuhap](https://github.com/linuhap) +校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2012/05/gimp-2-8-released +[2]:https://git.gnome.org/browse/gimp/plain/NEWS?h=gimp-2-8 +[3]:http://download.gimp.org/pub/gimp/v2.8/gimp-2.8.12.tar.bz2.torrent +[4]:https://launchpad.net/~otto-kesselgulasch/+archive/ubuntu/gimp diff --git a/published/20140901 Awesome systemd Commands to Manage Linux System.md b/published/20140901 Awesome systemd Commands to Manage Linux System.md new file mode 100644 index 0000000000..770fb09c1d --- /dev/null +++ b/published/20140901 Awesome systemd Commands to Manage Linux System.md @@ -0,0 +1,290 @@ +真的超赞!用systemd命令来管理linux系统! +================================================================================ + +Systemd是一种新的linux系统服务管理器。 + +它替换了init系统,能够管理系统的启动过程和一些系统服务,一旦启动起来,就将监管整个系统。在本文中,我们用的是[安装有 systemd 216 版本的centos 7.0][1],其最新版本[可以从 freedesktop.org 下载得到][2]。 + +因为linux操作系统里出现的这一个新人,PID 1被“systemd”占据了,这能通过**pstree**命令看到。 + + [root@linoxide ~]# pstree + +![](http://linoxide.com/wp-content/uploads/2014/08/01.systemd_pstree.png) + +那么现在让我们来探索systemd擅长什么,它又有多大的可能性成为sysVinit的新的替代品。 + +### 1. 更快启动 ### + +sysvinit一次一个串行地启动进程。 + +而Systemd则并行地启动系统服务进程,并且最初仅启动确实被依赖的那些服务,极大地减少了系统引导的时间。 + +你可以用下面的命令看到系统引导用时: + + [root@linoxide ~]# systemd-analyze + +![](http://linoxide.com/wp-content/uploads/2014/08/02.systemd_analyze.png) + +使用 **time** 参数也能够显示同样的内容。 + + [root@linoxide ~]# systemd-analyze time + +![](http://linoxide.com/wp-content/uploads/2014/08/03.systemd_analyze2.png) + +如果你想以进程初始化所占用时间排序打印出所有正在运行的单元列表,那么**systemd-analyze**命令可以帮助你完成这个任务。 + + [root@linoxide ~]# systemd-analyze blame + +![](http://linoxide.com/wp-content/uploads/2014/08/04.systemd_blame.png) + +上面的截屏只显示了小部分进程,你可以就像less分页器那样用箭头滚动列表。 + +### 2. systemctl 命令 ### + +systemctl命令是自systemd出现以来被广泛讨论的命令。你可以通过这个命令管理你的整个系统,让我们通过探究这个命令来更进一步。 + +#### 2.1 列出单元 #### + +**systemctl**命令可以带上list-units,也可以什么选项都不带来列出所有正在运行的单元。 + + [root@linoxide ~]# systemctl + +或 + + [root@linoxide ~]# systemctl list-units + +![](http://linoxide.com/wp-content/uploads/2014/08/05.systemd_list_units.png) + +#### 2.2 列出失败的单元 #### + +运行失败的单元可以用带--failed选项的命令显示出来。 + + [root@linoxide ~]# systemctl --failed + +![](http://linoxide.com/wp-content/uploads/2014/08/06.systemd_failed.png) + +你可以在这篇文章很多地方看到systemctl的用法。 + +### 3. 管理服务 ### + +让我们来看看systemd是怎么管理系统服务的。 + +#### 3.1 激活的服务 #### + +所有被激活的服务可以同下面这条命令来查看。 + + [root@linoxide ~]# systemctl list-units -t service + +![](http://linoxide.com/wp-content/uploads/2014/08/07.systemd_active_services.png) + +#### 3.2 服务状态 #### + +在sysvinit中,我们可以用“**service**”命令来管理服务,但在systemd中,我们用systemctl这个命令。 +我们可以用下面这个命令来查看服务是否在运行。 + + [root@linoxide ~]# systemctl status dnsmasq + +![](http://linoxide.com/wp-content/uploads/2014/08/08.systemd_status.png) + +#### 3.3 启动一个服务 #### + +用下面这条命令来启动服务。 + + [root@linoxide ~]# systemctl start dnsmasq + +对应于**service**命令,这个命令不进行输出。但是毋庸置疑,我们可以通过再次查看这个刚刚被启动的服务的status(状态)来确认他是否被成功地启动了。 + +![](http://linoxide.com/wp-content/uploads/2014/08/09.systemd_start.png) + +#### 3.4 停止一个服务 #### + +现在聪明的你一定知道怎么在systemd下用命令来关闭服务了吧。 + + [root@linoxide ~]# systemctl stop dnsmasq + +![](http://linoxide.com/wp-content/uploads/2014/08/10.systemd_stop.png) + +#### 3.5 重启一个服务 #### + +类似的,重启系统服务是用‘**systemctl restart**’来管理的。 + + [root@linoxide ~]# systemctl restart dnsmasq + +![](http://linoxide.com/wp-content/uploads/2014/08/11.systemd_restart.png) + +#### 3.6 重新加载一个服务 #### + +在我们需要重新加载服务的配置文件又不想重启这个服务(例如ssh)时,我们可以用这个命令。 + + [root@linoxide ~]# systemctl reload sshd + +![](http://linoxide.com/wp-content/uploads/2014/08/12.systemd_reload.png) + +虽然上述几个命令的语法是可以工作的,但是官方文档建议我们用下面这种语法形式来运行命令(LCTT 译注,即使用在服务名后面跟上“.service”的完整名称): + + [root@linoxide ~]# systemctl status dnsmasq.service + +![](http://linoxide.com/wp-content/uploads/2014/08/13.systemd_alternate_syntax.png) + +### 4. 管理引导时的服务 ### + +**chkconfig**命令被用来管理系统引导时的服务。同样用systemd也可以管理引导时的系统服务。 + +#### 4.1 检查服务引导时是否运行 #### + +这条命令用来确定服务是否是引导时启动的。 + + [root@linoxide ~]# systemctl is-enabled dnsmasq.service + +![](http://linoxide.com/wp-content/uploads/2014/08/14.systemd_is_enabled.png) + +#### 4.2 让服务在引导时运行 #### + +**systemctl**命令是这样来enable(使之在引导时启动)一个服务的。(这相当于sysvinit中的‘**chkconfig on**’) + + [root@linoxide ~]# systemctl enable dnsmasq.service + +![](http://linoxide.com/wp-content/uploads/2014/08/15.systemd_enable.png) + +#### 4.3 取消服务在引导时运行 #### + +类似的,使服务不在引导时启动用这个命令。 + + [root@linoxide ~]# systemctl disable dnsmasq.service + +![](http://linoxide.com/wp-content/uploads/2014/08/16.systemd_disable.png) + +### 5. 管理远程系统 ### + +所有刚才提到的systemctl命令通常都能被用来管理远程主机,完成这个任务将用到**ssh**来进行通讯。你只需要像这样将远程主机和用户名添加到systemctl命令后。 + + [root@linoxide ~]# systemctl status sshd -H root@1.2.3.4 + +![](http://linoxide.com/wp-content/uploads/2014/08/17.systemd_remote.png) + +### 6. 管理目标 ### + +Systemd有一个完成与sysVinit的runlevels相似任务的构想。 + +sysVinit的runlevels大多是以数字分级的。这里是runlevers在systemd中的对应元素。 + +> 0 runlevel0.target, poweroff.target +> +> 1, s, single runlevel1.target, rescue.target +> +> 2, 4 runlevel2.target, runlevel4.target, multi-user.target +> +> 3 runlevel3.target, multi-user.target +> +> 5 runlevel5.target, graphical.target +> +> 6 runlevel6.target, reboot.target +> +> emergency emergency.target + +#### 6.1 改变当前目标 #### + +当前target可以用这个命令切换。 + + [root@linoxide ~]# systemctl isolate graphical.target + +![](http://linoxide.com/wp-content/uploads/2014/08/18.systemd_isolate.png) + +#### 6.2 列出当前目标 #### + +如果你想查看你正处于哪个target中,你需要列出相应的单元。虽然这样操作可能让你不太爽,但是这就是systemd工作的方式。 + + [root@linoxide ~]# systemctl list-units --type=target + +![](http://linoxide.com/wp-content/uploads/2014/08/19.systemd_targets.png) + +你可以看到“graphical.target”列在此处,这就是我们刚才切换到的目标。现在,让我们切换runlevel到multi-user.target,然后分析下列命令的输出。 + + [root@linoxide ~]# systemctl isolate multi-user.target + [root@linoxide ~]# systemctl list-units --type=target + +![](http://linoxide.com/wp-content/uploads/2014/08/20.systemd_multi-user.png) + +#### 6.3 列出默认目标 #### + +用这个systemctl命令来查看默认目标。 + + [root@linoxide ~]# systemctl get-default + +![](http://linoxide.com/wp-content/uploads/2014/08/21.systemd_get_default.png) + +#### 6.4 改变默认目标 #### + +通过systemctl的set-default命令可以将某个目标设置成默认目标。 + + [root@linoxide ~]# systemctl set-default graphical.target + +![](http://linoxide.com/wp-content/uploads/2014/08/22.systemd_set_default.png) + +### 7. 记录 systemd 的日志 ### + +journald是systemd独有的日志系统,替换了sysVinit中的syslog守护进程。命令**journalctl**用来读取日志。 + + [root@linoxide ~]# journalctl + +![](http://linoxide.com/wp-content/uploads/2014/08/23.systemd_logs.png) + +#### 7.1 查看引导信息 #### + +运行**journalctl -b**命令来查看所有引导日志。 + + [root@linoxide ~]# journalctl -b + +![](http://linoxide.com/wp-content/uploads/2014/08/24.systemd_boot.png) + +#### 7.2 即时显示引导日志 #### + +下面这个命令可以实时显示系统日志(类似**tail -f**)。 + + [root@linoxide ~]# journalctl -f + +![](http://linoxide.com/wp-content/uploads/2014/08/25.systemd_follow_logs.png) + +#### 7.3 查看特定服务的日志 #### + +你可以像这样运用**journalctl**来查看你只想看到的服务或可执行程序的日志。 + + [root@linoxide ~]# journalctl /usr/sbin/dnsmasq + +![](http://linoxide.com/wp-content/uploads/2014/08/26.systemd_specific.png) + +### 8. 电源管理 ### + +systemctl命令也可以用来关机,重启或者休眠。 + +要关机、重启、挂起和休眠,分别使用如下命令: + + [root@linoxide ~]# systemctl poweroff + + [root@linoxide ~]# systemctl reboot + + [root@linoxide ~]# systemctl suspend + + [root@linoxide ~]# systemctl hibernate + +### 9. 又及 ### + +**systemd**带来了一整套与操作系统交互的新途径,并且极具特色。举个栗子,你可以用hostnamectl命令来获得你的linux机器的hostname和其它有用的独特信息。 + + [root@linoxide ~]# hostnamectl + +![](http://linoxide.com/wp-content/uploads/2014/08/27.systemd_hostnamectl.png) + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/linux-command/linux-systemd-commands/ + +作者:[Raghu][a] +译者:[szrlee](https://github.com/szrlee) +校对:[ wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://linoxide.com/author/raghu/ +[1]:http://linoxide.com/linux-how-to/install-systemd-centos-redhat/ +[2]:http://www.freedesktop.org/software/systemd/ diff --git a/published/20140901 Remarkable--A New MarkDown Editor For Linux.md b/published/20140901 Remarkable--A New MarkDown Editor For Linux.md new file mode 100644 index 0000000000..25198752f6 --- /dev/null +++ b/published/20140901 Remarkable--A New MarkDown Editor For Linux.md @@ -0,0 +1,55 @@ +Remarkable:Linux平台下一个新的MarkDown编辑器 +=== + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/08/remarkable-about.png) + +[Remarkable][1]是一个全新,免费,功能齐全的Linux发行版Markdown编辑器。它拥有许多特性,比如:在线预览,这让你的Markdown编辑变得更加容易。它是一个轻量级的编辑器,而且它还有一个简洁的用户界面(UI)。 + +下面是Remarkable的主要特性: + +- 实时预览 +- 支持Github Markdown 语法 +- 支持导出为PDF和HTML +- 自定义CSS +- 语法高亮 +- 高度可定制 +- 字数实时计数 +- 键盘快捷键 + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/08/remarkable-full.png) + +你可以观看[这部YouTube视频][2](请自备梯子:-])了解Linux下的Remakable。 + +### 安装 ### + +根据不同的Linux发行版本,Remarkable拥有许多可供使用的安装源,下面是不同Linux发行版以及它们对应的安装文件 + +#### Ubuntu / Linux Mint: #### + +- [Dowbnload .DEB][3] + +#### Fedora: #### + +- [Download .RPM][4] + +#### Arch Linux (AUR): #### + + sudo yaourt -S remarkable + +喜欢吗? + +--- + +via: http://www.unixmen.com/remarkable-new-markdown-editor-linux/ + +作者:[Enock Seth Nyamador][a] +译者:[su-kaiyao](https://github.com/su-kaiyao) +校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.unixmen.com/author/seth/ +[1]:http://remarkableapp.net/ +[2]:https://www.youtube.com/watch?v=UpjAIcXti9s +[3]:http://remarkableapp.net/files/remarkable_0.965_all.deb +[4]:http://remarkableapp.net/files/remarkable-0.965.rpm diff --git a/published/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md b/published/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md new file mode 100644 index 0000000000..5363965014 --- /dev/null +++ b/published/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md @@ -0,0 +1,72 @@ +Ubuntu壁纸大赛落幕,推荐八张我们喜欢的 +================================================================================ + +**盖上你的镜头,放下你的笔,拔掉手绘板的电源,从你的GIMP前离开,[Ubuntu 14.10 壁纸大赛][1] 现在结束了** + +为 Ubuntu 发行版的配套的一年两次的社区壁纸大赛总是会带来人们的激动、热情和争议的讨论。*太单调了!太亮了!植物在哪里? 你为什么没有猫??!!* —— 他们总是这样吵吵。 + +随着终结时间的到来。。好吧,这就是最后期限了,现在不再接收任何新的提交了。 + +在接下来的一周,为了评选出最喜爱的作品,会由上一年获胜的艺术家组成的评委会将会对每一个作品进行筛选。**获胜的壁纸将会在2014年9月9日宣布**. + +### 我们最喜爱的仅仅意味着:这是属于我们的。 ### + +我们从[大约400张][2]中搜罗了一些我们最喜爱的,如同以往,这是一个非常苦难的任务,如此多的杰作,但我们的磁盘空间却如此的小... + +**否认声明**:我们不属于评委会,我们也没有直接或间接影响评委会的决定。每个提交作品都会根据他们的价值进行判断和展示。 + +如果喜欢下列作品,你可以点击进入艺术家作者在Flickr上的主页 + +#### Glden leaves #### + +[![](https://farm6.staticflickr.com/5577/14919901295_ec1cdd13cb_c.jpg)][3] + +#### Reminiscent Rain #### + +[![](https://farm4.staticflickr.com/3888/14858973848_30124e2360_c.jpg)][4] + +#### Bamboo Mat #### + +[![](https://farm3.staticflickr.com/2940/14222953450_5a63b591ee_z.jpg)][5] + +#### LSC_0440 #### + +[![](https://farm4.staticflickr.com/3864/14698997457_ca5aba49c1_c.jpg)][6] + +#### Ubuntu Wallpaper #### + +[![](https://farm3.staticflickr.com/2933/14573905897_ae415fe00b_c.jpg)][7] + +#### Ubur #### + +[![](https://farm9.staticflickr.com/8044/8423532123_a739bbfb49_c.jpg)][8] + +#### Abstract #### + +[![](https://farm4.staticflickr.com/3875/14969203701_f9a318da6f_c.jpg)][9] + +#### 500 #### + +[![](https://farm4.staticflickr.com/3848/14660376638_bd26a4b2ab_c.jpg)][10] + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/08/best-ubuntu-wallpaper-contest-entries-1410 + +作者:[Joey-Elijah Sneddon][a] +译者:[lfzark](https://github.com/lfzark) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2014/08/ubuntu-14-10-wallpaper-contest +[2]:https://www.flickr.com/groups/1410wallpapersubmissions/ +[3]:https://www.flickr.com/photos/mauro_campanelli/14919901295 +[4]:https://www.flickr.com/photos/fixem/14858973848 +[5]:https://www.flickr.com/photos/havaxinhua/14222953450 +[6]:https://www.flickr.com/photos/laurentschenkel/14698997457 +[7]:https://www.flickr.com/photos/57135082@N05/14573905897 +[8]:https://www.flickr.com/photos/anomalous_saga/8423532123 +[9]:https://www.flickr.com/photos/el_nando/14969203701 +[10]:https://www.flickr.com/photos/e4v/14660376638 diff --git a/published/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md b/published/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md new file mode 100644 index 0000000000..06f10c0615 --- /dev/null +++ b/published/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md @@ -0,0 +1,37 @@ +Ubuntu文本检索神器——SearchMonkey +================================================================================ +有时候,我们需要搜索包含有某些特定文本或单词的文件。如果你是个开发者或者程序员,经常会碰到这样的问题。现在,我们总是能够使用[Linux命令来查找包含有指定文本的所有文件][1],但不是每个人都热衷于命令行。我见过那些优秀的程序员,他们更多的是依赖于图形化工具,而不是命令行。 + +如果你也更喜欢图形化工具,那么[SearchMonkey][2]对于你而言是个十分完美的应用。 + +### SearchMonkey是你的桌面搜索引擎 ### + +SearchMonkey递归搜索目录,因此你可以在它工作的时候坐下放松一下。用户可以使用强大的正则表达式来搜索文件名和内容,这使得SearchMonky返回结果时更为精确。 + +此外,SearchMonkey不仅仅给你列出可能包含有你正在查找的内容的文件,它也高亮显示匹配的内容。 + +### 在Ubuntu 14.04中安装SearchMonkey ### + +SearchMonkey可以在Ubuntu 14.04的软件仓库中找到,你只需要通过Ubuntu软件中心或者通过以下命令来安装: + + sudo apt-get install searchmonkey + +安装完毕后,你可以从Unity Dash中启动SearchMonkey。界面简明直观,易于使用。 + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/SearchMonkey_Ubuntu.jpeg) + +SearchMonkey帮助你快速查找到你所需要的文件,不需要先构建一个驱动映射。每次搜索都是实时的,结果也会在找到后立即在上下文中显示!尤,其,它还是一个免费又开源的软件。 + +-------------------------------------------------------------------------------- + +via: http://itsfoss.com/searchmonkey-search-text-files-linux/ + +作者:[Amit Asthana][a] +译者:[GOLinux](https://github.com/GOLinux ) +校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://itsfoss.com/author/amit/ +[1]:http://www.computerandyou.net/2011/06/how-to-find-all-files-containing-specific-text-in-linux/ +[2]:http://searchmonkey.embeddediq.com/ diff --git a/published/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md b/published/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md new file mode 100644 index 0000000000..329fd69e8d --- /dev/null +++ b/published/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md @@ -0,0 +1,38 @@ +systemd 与 sysVinit 彩版对照表 +================================================================================ + +**systemd** 是一种新型init系统「译者注:每个操作系统都有一个启动程序,而Linux init是Linux系统操作中不可缺少的程序之一。所谓的init进程,它是一个由内核启动的用户级进程。内核自行启动(已经被载入内存,开始运行,并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。所以init始终是第一个进程(其进程编号始终为1)」,最早在Fedora中使用「译者注:真的吗?不是Arch?」,经过调整适应了其它许多发行版,例如RedHat、Suse和CentOS。 + +历史上,我们大部分人用过传统的SysV init 初始化脚本,它通常情况下在/etc/rc.d/init.d/文件夹下。这些脚本调用守护进程二进制代码,在后台fork一个进程。 + +尽管shell脚本非常的灵活,但是很难实现像superviseing(监管)进程和并行执行命令这样的任务。 + +通过对systemd的新式守护进程的介绍,我们发现systemd可以在runtime(运行时)更加简单的监管和控制守护进程,并且简化了监控的实现方式(implementation)。 + +**systemctl**命令是systemd团队一个非常好的首创。 + +这个命令能够显示更多的详细错误信息和包括启动错误在内的服务运行时错误。systemd引入了一个新术语:**cgroups**(控制组),它基本上是可被分层次安排的进程任务组。「译者注:这里简单介绍一下cgroup(control group)称为Containers,Containers着眼于资源的分配,利用configfs作配置。它有两个重要概念:第一是subsystem,内核可以给进程提供的服务/资源;第二是container,一个进程组,成员共享同样的一个或多个子系统分配限制。Containers是分层次的,一个container可以hold多个container。它的可取之处是创建了一个资源分配的框架,其它开发者可以利用这个框架去开发自己的资源分配patch,比如磁盘设备。」 + +如果仅仅通过原来的初始化系统,决定哪个进程是做什么的、属于哪个用户的变得越来越困难。 + +但是通过systemd,当一个进程派生其它进程时,这些子进程会被自动变成父进程控制组的成员,这样一来就可以避免继承的混乱。 + + +![](http://images.linoxide.com/systemd-vs-sysVinit-cheatsheet.jpg) + +有许多新的运行[在 rhel / centos 7.0 上的 systemd 命令][1]可以替代 sysvinit 的对应命令。你也可以下载 [本文的 PDF 版本][2]。 + + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/linux-command/systemd-vs-sysvinit-cheatsheet/ + +作者:[Bobbin Zachariah][a] +译者:[szrlee](https://github.com/szrlee) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://linoxide.com/author/bobbin/ +[1]:http://linoxide.com/linux-command/linux-systemd-commands/ +[2]:http://images.linoxide.com/systemd-vs-sysVinit-cheatsheet.pdf diff --git a/published/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md b/published/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md new file mode 100644 index 0000000000..2c2115d5c1 --- /dev/null +++ b/published/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md @@ -0,0 +1,79 @@ +12张Ubuntu 14.10壁纸竞赛(目前为止的)获奖壁纸 +================================================================================ +让我们欣赏一组你在未来几个月会看到一大堆的图片吧。是的,在[Ubuntu 14.10壁纸竞赛获奖者壁纸][1]已经公布了。 + +嗯,可以说是宣布吧。到目前为止12张背景图片已经正式被应用在Ubuntu 14.10版本中了。 + +由四月份的获奖作者组成的评审团筛选了几乎400张图片,最终选择了出了视觉上丰富又多彩的一组。我知道我每6个月就要说一次这个,但是这一次的作品看起来还是那么的棒(不仅仅是因为当中一两张是[我们的最爱][2]!)。 + +### 让我们瞧瞧这几张获奖图片 ### + +你能在下面看到目前选出的作品。需要强调的是,这是到目前为止的,如比赛的组织者[**Iain Farrell所说的**][3] :“我还在等一些回复,不过如果他们不给我回复就只能不包括他们的了!” + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/utopic.jpg) + +不可缺少的经典吉祥物壁纸 + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Empty-Space-by-Glenn-Rayat.jpg) + +‘空’ —— Glenn Rayat + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Horses-on-sand-dunes-by-Matthias-Siewert.jpg) + +沙漠与马 —— M. Siewert + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Golden-leaves-by-Mauro-Campanelli.jpg) + +金色的叶 + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/salcantayperu-by-Life-Nomadic.jpg) + +游牧生活 —— Sal’ + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/xgu.jpeg) + +‘xgu472hf2′ —— Lariliikala + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Redes-de-hilo-by-Juan-Pablo-Lauriente.jpg) + +多石海岸 —— Juan PL. + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/warm-grass.jpeg) + +‘暖草’ —— dcsearle.t21 + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Kronach-leuchtet-2014-by-Brian-Fox.jpg) + +克罗纳赫灯具 —— Brian Fox + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Night-Seascape-by-Davor-Dopar.jpg) + +达沃多帕的海景 + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Music-tomasino.cz_.jpg) + +托马西诺音乐 + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/Sunny-Autumn-by-Joel-Heaps.jpg) + +阳光之秋 + +如果有任何变化我们将会更新这篇文章,你可以[点击这里][4]获取这些参赛作品的压缩包。完整的乌托邦壁纸包,可能会包含进新的默认壁纸,这些都会在未来2天内发生。 + +通过下方的评论来让我们知道哪张图你的最爱吧!不要吝啬赞美之词! + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/09/ubuntu-14-10-wallpaper-contest-winners + +作者:[Joey-Elijah Sneddon][a] +译者:[ZTinoZ](https://github.com/ZTinoZ) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2014/08/ubuntu-14-10-wallpaper-contest +[2]:http://linux.cn/article-3745-1.html +[3]:https://bugs.launchpad.net/ubuntu/+source/ubuntu-wallpapers/+bug/1354341/comments/2 +[4]:https://bugs.launchpad.net/ubuntu/+source/ubuntu-wallpapers/+bug/1354341/+attachment/4199899/+files/14.10%20images.zip diff --git a/translated/tech/How to listen to Internet radio from the command line on Linux.md b/published/How to listen to Internet radio from the command line on Linux.md similarity index 73% rename from translated/tech/How to listen to Internet radio from the command line on Linux.md rename to published/How to listen to Internet radio from the command line on Linux.md index ca871d5012..25113f2e27 100644 --- a/translated/tech/How to listen to Internet radio from the command line on Linux.md +++ b/published/How to listen to Internet radio from the command line on Linux.md @@ -1,15 +1,16 @@ 如何在Linux命令行下收听网络电台 ======================================================================== -对于系统管理员和Linux爱好者来说,我们花大量的时间在Linux屏幕前,但是你们知道网络/本地电台上的音乐可以极大的提高我们的生产力吗?不管你相信与否,在工作环境中有适当的声音,如音乐或者喋喋不休的声音都可以提高我们的创造力。如果你喜欢在音乐环境中工作,这个教程也许会对你有用。我将会向你展示**如何在命令行中收听潘多拉(Pandora)在线电台**(LCTT译注:Pandora Internet Radio是一个仅为美国、澳大利亚和新西兰提供自动音乐推荐的系统。详细介绍[Prandoea电台][1]) -正如你已经知道的,Pandora是最有名的在线电台服务之一,它包含无数的不同种类的免费音乐流,同时它还有一个强大的音乐推荐引擎。Pandora可以通过不同的方法访问,如:浏览器,桌面客户端或者手机Apps,开源社区还给出了另一种访问Pandora音乐服务的方法:Linux命令行。 +对于花大量时间在Linux屏幕前的系统管理员和Linux爱好者来说,网络/本地电台上的音乐可以极大提高生产力,你们知道吗?不管你们相信与否,,在工作环境中有适当的声音,如音乐或者闲聊声包围,都可以提高我们的创造力。如果你喜欢在音乐环境中工作,这个教程也许会对你有用。我将会向你展示**如何在命令行中收听潘多拉(Pandora)在线电台**(LCTT译注:Pandora Internet Radio是一个仅为美国、澳大利亚和新西兰提供自动音乐推荐的系统。详细介绍[Prandoea电台][1]) -[pianobar][2]是一个播放Pandora在线电台音乐的开源命令行音乐播放器。它有一个简单的人机接口,用于播放和管理音乐电台。同时还有其他包括歌曲评价,即将上线音乐列表,播放历史,自定义快捷键绑定,远程控制等功能。对于那些居住在不可访问Pandora音乐服务区域的用户(即美国、澳大利亚和新西兰以外的用户)。Pianobar还配置了代理服务的支持。 +正如你已经知道的,Pandora是最有名的在线电台服务之一,它包含无数的不同种类的免费音乐流,同时它还有一个强大的音乐推荐引擎。Pandora可以通过不同的方式访问,如:浏览器,桌面客户端或者手机Apps,开源社区还给出了另一种访问Pandora音乐服务的方法:Linux命令行。 + +[pianobar][2]是一个播放Pandora在线电台音乐的开源命令行音乐播放器。它有一个简单的终端接口,用于播放和管理音乐电台。同时还有其他包括歌曲评价,即将上线音乐列表,播放历史,自定义快捷键绑定,远程控制等功能。对于那些居住在不可访问Pandora音乐服务区域的用户(即美国、澳大利亚和新西兰以外的用户),Pianobar还配置了代理服务的支持。 ###在Linux中安装Pianobar### -在Debian或者其他Debian的衍生品,如Ubuntu或LinuxMint中,Pianobar是一个已经编译好的软件包,因此安装Pianobar只是简单的输入如下命令: - $ sudo apt-get install pianobar +在Debian或者其他Debian的衍生品中,如Ubuntu或LinuxMint,Pianobar是一个已经编译好的软件包,因此安装Pianobar只是简单的输入如下命令: + $ sudo apt-get install pianobar 在Fedora中,Pianobar并不包含在基础的软件库中。因此,你需要通过源代码编译安装Pianobar。整个安装过程会有点麻烦,但是下面的教程将会实现Pianobar在Frdora系统中编译安装。该教程在Fedora20版本中测试通过。 @@ -31,7 +32,7 @@ >/usr/local/lib -重载所有的共享库 +重载所有的共享库 就这样,Pianobar已经在Fedora系统中安装完成。 @@ -46,6 +47,7 @@ paniobar的基本用法是输入如下命令: ![](https://farm6.staticflickr.com/5552/14993320301_58e58b5810_z.jpg) 按‘?’按键pianobar会列出一系列可用个命令,其中一些如下: + >- s: 更换电台 - u: 查看即将上线音乐列表 - h: 查看播放历史 @@ -61,8 +63,9 @@ paniobar的基本用法是输入如下命令: ![](https://farm6.staticflickr.com/5559/14993326991_ccdffd0fa6_z.jpg) -###将Pianobar配置为自动登录### -你可以再一个单独的配置文件中配置Pianobar的各项默认配置。例如:你可以将你的登录信息配置到配置文件中,这样你就不用每次都要手动输入。下面是如何创建一个配置文件的示例: +###将Pianobar配置为自动安装### + +你可以在一个单独的配置文件中配置Pianobar的各项默认配置。例如:你可以将你的登录信息放到配置文件中,这样你就不用每次都要手动输入。下面是如何创建一个配置文件的示例: > $ mkdir -p ~/.config/pianobar @@ -93,7 +96,7 @@ paniobar的基本用法是输入如下命令: ###远程控制Pianobar### -Pianobar的另一个优秀的特性是支持远程控制,你可以通过命令管道(FIFO)为Pianobar的一个运行实例发送命令。下面是远程控制Pianobar的示例: +Pianobar的另一个优秀特性是支持远程控制,你可以通过命令管道(FIFO)为Pianobar的一个运行实例发送命令。下面是远程控制Pianobar的示例: 首先在目录~/.config/pianobar下创建一个FIFO命令管道 @@ -113,9 +116,9 @@ Pianobar的另一个优秀的特性是支持远程控制,你可以通过命令 当然,你希望为登录到主机X的SSH登录认证[启用秘钥认证][5],这样你就不用每次都输入SSH密码。 -当你想在[树莓PI][6]上设置一个可以远程控制的在线电台播放器时,Pianobar的远程控制特性将会让你非常方便的实现该需求。 +当你想在[树莓Pi][6]上设置一个可以远程控制的在线电台播放器时,Pianobar的远程控制特性将会让你非常方便地实现该需求。 -希望你像我一样喜欢Pianobar,若有什么想法,请在评论中告诉我。 +希望你和我一样喜欢Pianobar,若有什么想法,请在评论中告诉我。 -------------------------------------------------------------------------------- @@ -123,7 +126,7 @@ via: http://xmodulo.com/2014/08/listen-to-internet-radio-command-line-linux.html 作者:[Dan Nanni][a] 译者:[cvsher](https://github.com/cvsher) -校对:[校对者ID](https://github.com/校对者ID) +校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/The Open Source Witch Hunts Have Returned.md b/published/The Open Source Witch Hunts Have Returned.md new file mode 100644 index 0000000000..a3c4d47878 --- /dev/null +++ b/published/The Open Source Witch Hunts Have Returned.md @@ -0,0 +1,62 @@ +开源女巫狩猎归来! +================================================================================ +![](http://readwrite.com/files/styles/1400_0/public/fields/shutterstock-open-gate.jpg) + +> 开源软件社区已经做出了改变,就像之前的美好时光。 + +开源已经变的温和了,之前我们有过各种不同的思潮,但是最近我们对分享代码和创新却有种奇怪的迷恋。 + +幸运的是,这一系列的使用主义注定要结束了。在过去的一段时间里,我们团结在Mozilla身边支持DRM版权保护以及嘲笑Red Hat和OpenStack之间的竞争。开源社区那些年仅有的几个开源软件明星和[Open Core 这种商业模式][1]产生了冲突而被反噬了。 + +噢,怎么变成这样了! + + +### Red Hat 退回到2003年 ### + +Red Hat,开源软件理想主义的典范,在几周前拒绝支持它的竞争对手。Jodi Mardesich[出色的][2]揭露了真相,而Red Hat在努力辩护,这个真相就是: + +Red Hat不想支持它的竞争对手,它的OpenStack的竞争对手也不想这样做。 + +在另外世界上这算是新闻吗? + +### Mozilla变成了麻瓜 ### + +Red Hat作为开源软件理想主义的典范代表很容易成为各种带颜色攻击的目标,Mozilla其实是更大的一个目标。 + +Mozilla致力于为用户服务,它最近进行了一场自我牺牲似的CEO 下台,同意加入DRM的技术,即纯Firefox浏览器源码可以使用户观看视频。 + +人们想看视频,Mozilla倾向于在它的浏览器中观看。 + +总是找到别人的思想滑坡的问题,开源软件组织[批评了][3] Mozilla,深切表达了自己对于Mozilla的失望,因为这种“为减轻市场份额的流失而妥协重要原则的决定”令人担忧。 + +但是,Mozilla为什么要做这样的傻事呢,为了用户,你懂的。 + +抛开道德说教的部分不说,[电子前沿基金会哀叹][4],“开放网络最后的抗争已经失败了”。它对Mozilla投降的做法争论道:“接受DRM会改变这个行业”!DRM的倡导者一再妥协,一个公司又一个公司(PC行业)演变成一个行业,它通过锁定装置,监视器,接受每一个人的管理建立自己的利益关系。 + +[Mitchell Bake解释道][5],Mozilla可能并没有投降:“Firefox用户会需要使用另外的浏览器来观看他们自己想看的视频,这会让人怀疑Firfox做一一个产品是否真的有用”。 + +嗯,好吧。 + +### 回到我们的思想源头 ### + +我们或许希望其它人都按照我们的想法来,但事实上他们却有着不同的考虑。免费的软件让步给更加务实的开源软件,认为只有“不二法门”的想法也逐渐消亡了。 + +这种意识在目前还是有用的,但它并不总是方便和舒服。我崇尚开源软件的实用主义和Apache软件基金会,这样有很大的好处提醒GPL组织在意识形态上的危机感。软件自由真的很重要。 + +这么多悲观的言论,我自己也感到了恐惧,希望回到一个不断会自我鞭策的免费的开软软件的组织。这使开源软件协作变少而且更难驾驭,但是会变得更有力而且关乎未来。 + +(译者注:本文来源于一篇国外的杂文,译者和校对在翻译时感觉颇为吃力,因此肯定有大量谬误和不足,敬请大家谅解,或提出指正。虽然这篇文章说的事情已经过去了一段时间了,但是其反映的问题和潜伏的暗流也许影响更为深远。) + +-------------------------------------------------------------------------------- + +via: http://readwrite.com/2014/05/21/open-source-witch-hunt-mozilla-openstack-redhat#feed=/hack&awesm=~oEYDhxfP0Qv5hE + +译者:[jiajia9linuxer](https://github.com/jiajia9linuxer) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://en.m.wikipedia.org/wiki/Open_core +[2]:http://readwrite.com/2014/05/16/red-hat-openstack-mirantis-rhel-support +[3]:http://www.fsf.org/news/fsf-condemns-partnership-between-mozilla-and-adobe-to-support-digital-restrictions-management +[4]:https://www.eff.org/deeplinks/2014/05/mozilla-and-drm +[5]:https://blog.mozilla.org/blog/2014/05/14/drm-and-the-challenge-of-serving-users/ diff --git a/sources/news/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md b/sources/news/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md deleted file mode 100644 index a499dbc8e3..0000000000 --- a/sources/news/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md +++ /dev/null @@ -1,46 +0,0 @@ -linuhap翻译中 -GIMP 2.8.12 Released — Here’s How to Install it on Ubuntu -================================================================================ -**A [new update][1] to the popular open-source Photoshop alternative The GIMP is now available for download.** - -![GIMP is a Free Photoshop Alternative](http://www.omgubuntu.co.uk/wp-content/uploads/2012/05/screen-shot-2012-05-03-at-10.38.40.jpg) -GIMP is a Free Photoshop Alternative - -As the latest entry in the GIMP 2.8.x series — [released back in 2012][2] and notable for introducing the long-sought ‘single window mode’ — version 2.8.12 continues to refine rather than reinvent. As such there are no new user-facing features to be found. - -Instead, developers bring a fresh batch of bug fixes to the table aimed at improving the overall stability, security and style of the famous app. - -- Brush sizes from plugins are no longer distorted -- ‘More robust’ loading of .XCF files -- Widget direction now matches interface language (e.g. RTL) -- Security improvements to the script-fu-server - -Documentation, help and translation updates are also included. For a complete change log of everything fixed between 2.8.10 and 2.8.12, see [the GNOME Git notes][2]. - -### Install Latest GIMP in Ubuntu ### - -Source for the latest release can be downloaded from the official website or via [an official torrent][3]. - -On Ubuntu? You can install GIMP 2.8.12 in Ubuntu 12.04 LTS and 14.04 LTS by adding the [following third-party PPA][4] to Software Sources: - - sudo add-apt-repository ppa:otto-kesselgulasch/gimp - - sudo apt-get update && sudo apt-get install gimp - -After installation has complete you can proceed to open GIMP 2.8.12 from the Unity Dash (or equivalent). - --------------------------------------------------------------------------------- - -via: http://www.omgubuntu.co.uk/2014/08/whats-new-in-gimp-2-8-12-plus-install-ubuntu - -作者:[Joey-Elijah Sneddon][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:https://plus.google.com/117485690627814051450/?rel=author -[1]:http://www.omgubuntu.co.uk/2012/05/gimp-2-8-released -[2]:https://git.gnome.org/browse/gimp/plain/NEWS?h=gimp-2-8 -[3]:http://download.gimp.org/pub/gimp/v2.8/gimp-2.8.12.tar.bz2.torrent -[4]:https://launchpad.net/~otto-kesselgulasch/+archive/ubuntu/gimp diff --git a/sources/news/20140901 LibreOffice 4.3.1 Has More than 100 Fixes and DOCX Embedded Objects Support.md b/sources/news/20140901 LibreOffice 4.3.1 Has More than 100 Fixes and DOCX Embedded Objects Support.md new file mode 100644 index 0000000000..e592d4c9f3 --- /dev/null +++ b/sources/news/20140901 LibreOffice 4.3.1 Has More than 100 Fixes and DOCX Embedded Objects Support.md @@ -0,0 +1,37 @@ +LibreOffice 4.3.1 Has More than 100 Fixes and DOCX Embedded Objects Support +================================================================================ +![LibreOffice selection menu](http://i1-news.softpedia-static.com/images/news2/LibreOffice-4-3-1-Has-More-Than-100-Fixes-and-DOCX-Embedded-Objects-Support-456916-2.jpg) +LibreOffice selection menu + +**The Document Foundation announces that the stable version of LibreOffice 4.3.1 has been released and is now available for download.** + +The developers from The Document Foundation have released a new update for the 4.3 branch of LibreOffice and they have implemented quite a few fixes and other various changes. The development cycle for this latest update has been rather short and the devs managed to repair most of the issues that have been found. + +LibreOffice 4.3.1 is just maintenance release, which means that the focus has been about the bugs found so far. Don't expect to find anything extraordinary, but you should upgrade the software nonetheless. + +"The Document Foundation announces LibreOffice 4.3.1, the first minor release of LibreOffice 4.3 'fresh' family, with over 100 fixes (including patches for two CVEs, backported to LibreOffice 4.2.6-secfix, which is also available for download now)." + +"All LibreOffice users are invited to update their installation as soon as possible to avoid security issues. This includes users who are running LibreOffice 4.2.6 as originally released on August, 5th 2014. LibreOffice 4.3.1 and LibreOffice 4.2.6 will be shown on stage at the LibreOffice Conference in Bern, from September 3 to September 5, with a large number of sessions about development, community, marketing and migrations," reads the announcement made by The Linux Foundation. + +According to the changelog, editing the text search with expanded fields is now working properly, the static value array for OOXML chart is now handled correctly, bullets now have the color as the following text by default, ww8import no longer creates a pagedesc if a continuous section changes margins, the 0 font height is now handled just like outdev, it's now possible to import OLE objects in the header with background wrapping, the XLSX export of revisions has been fixed in order to get it to work in Excel, and borders around data labels are now supported. + +Also, the table style for lastRow is now correctly applied, the rulers now have app-background by default, the graphics are now swapped in on DrawingML::WriteImage, the redundant 'Preferences' label has been removed in order to save some space, page breaks in tables are now ignored during the RTF import, some of the style hierarchy has been reworked, Data Statistics no longer crashes with any entry, DOCX embedded objects are now supported, and numerous other improvements have been made. + +More details about this release can be found in the official [announcement][1]. + +- [Download LibreOffice 4.3.1 for Linux][2] + + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/LibreOffice-4-3-1-Has-More-Than-100-Fixes-and-DOCX-Embedded-Objects-Support-456916.shtml + +作者:[Silviu Stahie][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:http://blog.documentfoundation.org/2014/08/28/libreoffice-4-3-1-fresh-announced/ +[2]:http://www.libreoffice.org/download/libreoffice-fresh/ \ No newline at end of file diff --git a/sources/news/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md b/sources/news/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md new file mode 100644 index 0000000000..4b0f23c5c6 --- /dev/null +++ b/sources/news/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md @@ -0,0 +1,27 @@ +disylee占个坑!来翻译了! +Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store +================================================================================ +![DowNow](http://i1-news.softpedia-static.com/images/news2/Ubuntu-Touch-Now-Has-a-Torrent-Clinent-in-the-Ubuntu-Store-457538-2.jpg) + +**The Ubuntu Touch platform is already the host of many interesting applications, and it looks like the developers have started to implement software that goes beyond what you might expect, like a torrent client for example.** + +The app store for Ubuntu Touch has been growing steadily over the past few months and interesting applications are added all the time. Most of them are covering some of the basic needs of the operating system, but there are quite a few that go well beyond regular users’ needs. + +A torrent client is not something that you will find on most phones. Android and Windows Phone already have this kind of apps and it looks like Ubuntu is now one of those platforms. Ubuntu developer [Alan Pope][1] posted a screenshot with a new application that's being developed for the Ubuntu platforms called DowNow. + +This is a relatively new application and it's still under development. You can find the click package for DowNow 0.3 in Launchpad, if you want to take a closer look, or you can download from Ubuntu Software Center. + +For now, the only supported devices are Nexus 4 and Nexus 7, if you want to test Ubuntu for phones, but that might change in the coming months. + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Ubuntu-Touch-Now-Has-a-Torrent-Clinent-in-the-Ubuntu-Store-457538.shtml + +作者:[Silviu Stahie][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:https://plus.google.com/u/0/+AlanPope/posts/Ej3vKVxBum8 diff --git a/sources/news/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md b/sources/news/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md new file mode 100644 index 0000000000..6f78db6067 --- /dev/null +++ b/sources/news/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md @@ -0,0 +1,37 @@ +Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop +================================================================================ +**I treat Conky setups a bit like wallpapers: I’ll find one I love, only to change it the next week because I’m bored of it and want a change.** + +Part of the impatience is fuelled by the ever-growing catalog of designs available. One of my most recent favourites is Jelly Conky. + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/jelly-conky.png) + +Jelly Conky sports the minimal design many of the Conky’s we’ve highlighted recently have followed. It’s not trying to be a kitchen sink. It won’t win favour with those who need constant at-a-glance data on their HDD temperatures and IP addresses. + +It comes with three distinct modes that can all add personality to an otherwise static background image: + +- Clock +- Clock plus date +- Clock plus date and weather + +Some people don’t understand the point of having a duplicate clock on show on the desktop. That’s understandable. For me, it’s more about form than function (though, personally, I find Conky clocks easier to see than the minuscule digits nestled in my upper panel). + +Chances are if you have a home screen widget on Android with the time, you won’t mind having one on your desktop, either! + +You can download Jelly Conky from the link below. The .zip archive contains a readme with instructions on how to install. For a guided walkthrough, [revisit one of our previous articles][1]. + +- [Download Jelly Conky on Deviant Art][2] + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/09/jelly-conky-for-linux-desktop + +作者:[Joey-Elijah Sneddon][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2014/07/conky-circle-theme-nod-lg-quick-cover +[2]:http://zagortenay333.deviantart.com/art/Jelly-Conky-442559003 \ No newline at end of file diff --git a/sources/news/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md b/sources/news/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md new file mode 100644 index 0000000000..45c365193e --- /dev/null +++ b/sources/news/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md @@ -0,0 +1,38 @@ +How to Go Hands On With the Utopic Unicorn – Literally! +================================================================================ +**Looking to go hands-on with the Utopic Unicorn ahead of its release? Now you can — [literally][1]!** + +A step-by-step guide to making your own paper Unicorn (to celebrate the upcoming release of the same name, obviously) has been posted online by Canonical. The instructions were offered as part of the company’s presence at the 2014 [deconstruct][2] event held in Brighton, UK in early September. + +![Image: Alejandra Obregon](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/ubuntu-unicorns-750x745.jpg) + +Image: Alejandra Obregon + +The one-day conference for creative professionals and digital culture enthusiasts served as an ideal place for Canonical to showcase an in-progress version of the upcoming Ubuntu Phone, its design and the user interaction benefits they believe it offers. + +Reaction was positive, they say. That will have made the prize of a brand new Ubuntu phone to the maker of the best origami unicorn all the more tempting! + +### Download Origami Unicorn ### + +No prizes are on offer to the rest of us attempting to fold our way to frustration, but a download of the how-to is. + +If you have a spare five hours minutes, why not make one for fun? If you make particularly epic success/fail of it be sure to send us a pic on [Twitter][3] or [Google+][4]. + +- [Download ‘Make a Unicorn’ Instructions][5] + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/09/unicorn-origami-download-pdf-ubuntu-utopic + +作者:[Joey-Elijah Sneddon][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://design.canonical.com/2014/09/canonical-and-ubuntu-at-dconstruct/ +[2]:http://2014.dconstruct.org/ +[3]:http://twitter.com/omgubuntu +[4]:http://plus.google.com/+omgubuntu +[5]:http://design.canonical.com/wp-content/uploads/042_CAN_dConstruct_instructions.pdf \ No newline at end of file diff --git a/sources/news/Munich Council- LiMux Demise Has Been Greatly Exaggerated.md b/sources/news/Munich Council- LiMux Demise Has Been Greatly Exaggerated.md deleted file mode 100644 index ed5209644c..0000000000 --- a/sources/news/Munich Council- LiMux Demise Has Been Greatly Exaggerated.md +++ /dev/null @@ -1,41 +0,0 @@ -慕尼黑市议会称: LiMux 项目的死讯被过分夸大了 -================================================================================ -![LiMux – 慕尼黑市议会的官方操作系统](http://www.omgubuntu.co.uk/wp-content/uploads/2014/07/limux-4-kde-desktop.jpg) - -LiMux - 慕尼黑市议会的官方操作系统 - -慕尼黑市议会的新闻发言人试图澄清其[计划重新审视当地政府 IT 系统使用的所有开源软件][1]的背后原因。 - -大量德国媒体披露,“慕尼黑市新任市长要求提交一份关于 LiMux 使用率的报告”,LiMux是一个在该市超过 80% 的市政府部门中使用的开源 Linux 发行版 ,慕尼黑市议会新闻发言人正是针对这条新闻所做的反应。 - -该报告引用了一位不愿透露姓名的市政府官员的话,他声称政府雇员在使用开源软件时“非常痛苦”,还有人人称其为“昂贵的失败”。副市长 Josef Schmid 说,(更换到开源系统)这件事是“意识形态驱使的”,并非理性的财务行为。 - -过去被看成是大规模迁移 Linux 的典范的慕尼黑市,如今这个背道而驰的新闻迅速像病毒一样扩散开来。现在市议会的新闻发言人 Stefan Hauf 正试着澄清这件事。 - -### “未来计划” ### - -Hauf 确认了新任市长要求重新审查城市 IT 系统以及操作系统选择的事,但这份报告的目的并不像之前报道中暗示的那样仅仅是为了决定什么时候退回到 Microsoft Windows。 - -**“这是有关机构、经费、性能和可用性以及用户满意度的事,”** [Techrepublic][2] 引用了他的言辞。 - -**“(这仅仅是在收集)现实情况,为我们决定市议会今后该如何处理提供依据。”** - -Hauf 同时也确认了市议会员工的确抱怨过 LiMux,但是主要集中在 OpenOffice 的兼容性问题上,有些问题只要换到 LibreOffice 就能解决。 - -那么,慕尼黑市会用回 Windows 吗?正如我们在之前的报道中所说:不能排除这种可能,但是现在下结论还太早。 - -目前该报告所建议的截止日期还没定,任何和慕尼黑 IT 基础设施相关的决定都需要由他们自己投票决定,主流选民目前抱有“支持” LiMux 的态度。 - --------------------------------------------------------------------------------- - -via: http://www.omgubuntu.co.uk/2014/08/munich-council-say-talk-limux-demise-greatly-exaggerated - -作者:[Joey-Elijah Sneddon][a] -译者:[sailing](https://github.com/sailing) -校对:[wxy](https://github.com/wxy) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:https://plus.google.com/117485690627814051450/?rel=author -[1]:http://www.omgubuntu.co.uk/2014/08/munich-city-linux-switching-back-windows -[2]:http://www.techrepublic.com/article/no-munich-isnt-about-to-ditch-free-software-and-move-back-to-windows/ diff --git a/sources/talk/20140624 Staying free--should GCC allow non-free plug ins.md b/sources/talk/20140624 Staying free--should GCC allow non-free plug ins.md index d2865199fc..6d6dcdfe81 100644 --- a/sources/talk/20140624 Staying free--should GCC allow non-free plug ins.md +++ b/sources/talk/20140624 Staying free--should GCC allow non-free plug ins.md @@ -1,3 +1,5 @@ +CNprober translating.. + Staying free – should GCC allow non-free plug ins? ================================================================================ > Arguments in favour of the use of non-free plug-ins in GCC have again been raised on GCC mailing-lists, but are trumped by the arguments for GCC as a vehicle for free software development diff --git a/sources/talk/20140626 Linux Administration--A Smart Career Choice.md b/sources/talk/20140626 Linux Administration--A Smart Career Choice.md index 924056cdd1..24a82d5be8 100644 --- a/sources/talk/20140626 Linux Administration--A Smart Career Choice.md +++ b/sources/talk/20140626 Linux Administration--A Smart Career Choice.md @@ -1,3 +1,5 @@ +CNprober translating... + Linux Administration: A Smart Career Choice ================================================================================ ![](http://www.opensourceforu.com/wp-content/uploads/2014/04/linux.jpeg) diff --git a/sources/talk/20140818 Where And How To Code--Choosing The Best Free Code Editor.md b/sources/talk/20140818 Where And How To Code--Choosing The Best Free Code Editor.md index 76f0e50e96..dd1461328e 100644 --- a/sources/talk/20140818 Where And How To Code--Choosing The Best Free Code Editor.md +++ b/sources/talk/20140818 Where And How To Code--Choosing The Best Free Code Editor.md @@ -1,3 +1,4 @@ +zpl1025 Where And How To Code: Choosing The Best Free Code Editor ================================================================================ A close look at Cloud9, Koding and Nitrous.IO. @@ -101,4 +102,4 @@ via: http://readwrite.com/2014/08/14/cloud9-koding-nitrousio-integrated-developm [8]:https://www.nitrous.io/desktop [9]:https://www.nitrous.io/desktop [10]:https://koding.com/Activity/steps-clone-projects-github-koding-1-create-account-github-2-open-your-terminal-3 -[11]:http://www.shutterstock.com/ \ No newline at end of file +[11]:http://www.shutterstock.com/ diff --git a/sources/talk/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md b/sources/talk/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md deleted file mode 100644 index d87c006bdd..0000000000 --- a/sources/talk/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md +++ /dev/null @@ -1,200 +0,0 @@ -[Translating by SteveArcher] -KDE Plasma 5—For those Linux users undecided on the kernel’s future -================================================================================ -> Review—new release straddles traditional desktop needs, long term multi-device plans. - -Finally, the KDE project has released KDE Plasma 5, a major new version of the venerable K Desktop Environment. - -Plasma 5 arrives in the middle of an ongoing debate about the future of the Linux desktop. On one hand there are the brand new desktop paradigms represented by GNOME and Unity. Both break from the traditional desktop model in significant ways, and both attempt to create interfaces that will work on the desktop and the much-anticipated, tablet-based future (which [may or may not ever arrive][1]). - -Linux desktops like KDE, XFCE, LXDE, Mate, and even Cinnamon are the other side of the fence. None has re-invented itself too much. They continue to offer users a traditional desktop experience, which is not to say these projects aren't growing and refining. All of them continue to turn out incremental releases that fine tune what is a well-proven desktop model. - -![Ubuntu's Unity desktop](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot-unity.png) -Ubuntu's Unity desktop - -![GNOME 3 desktop](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot-gnome.png) -GNOME 3 desktop - -GNOME and Unity end up getting the lion's share of attention in this ongoing debate. They're both new and different. They're both opinionated and polarizing. For every Linux user that loves them, there's another that loves to hate them. It makes for, if nothing else, lively comments and forum posts in the Linux world. But the difference between these two Linux camps is about more than just how your desktop looks and behaves. It's about what the future of computing looks like. - -GNOME and Unity believe that the future of computing consists of multiple devices all running the same software—the new desktop these two create only makes sense within this vision. These new versions aren't really built as desktops for the future, but they include a hybrid desktop fallback mode for now and appear to believe in devices going forward. The other side of the Linux schism largely seems to ignore those. - -And unlike the world of closed source OSes—where changes are handed down, like them or leave them—the Linux world is in the middle of a conversation about these two opposite ideas. - -For users, it can be frustrating. The last thing you need when you're trying to get work done is an update that completely changes your desktop, forcing you to learn new ways of working. Even the best case scenario, moving to another desktop when your old favorite suddenly veers off in a new direction, usually means jettisoning years of muscle memory and familiarity. - -Luckily, there's a simple way to navigate this mess and find the right desktop for you. Here it is in a nutshell: do you want to bend your will to your desktop or do you want to bend your desktop to your will? - -If you fall in the first camp and don't mind learning new ways of working, Unity and GNOME 3 will be your best bets. If you fall in the latter camp, XFCE, Cinnamon, Mate, and a host of others will all likely prove a good fit. And even if you want to go non-traditional in a different direction from GNOME 3 and Unity, there's always Xmonad, Ratpoison, and others that very few Linux users will ever try. (This is a small shame, as Xmonad may be the best thing in Linux since Linus said, uh, hey, here's a kernel for your GNU system.) - -![KDE Plasma 5's new boot screen.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot01.png) -KDE Plasma 5's new boot screen. - -So what about the undecided Linux users, all those people in the middle? You like the traditional desktop experience, and you're not ready to give up your menu and shortcuts for HUDs and other new tools. But at the same time, you're curious about tablets and other form factors, and you want something that will work across them all. You, my hypothetical friend, are an excellent candidate for the brand new KDE Plasma 5. - -KDE is attempting to do something no other desktop in Linux has tried to date—move toward the tablet and mobile device future while still producing a desktop experience that's familiar, functional, and infinitely customizable. - -### KDE Plasma 5 and the world of "convergence" ### - -KDE users who made it through the transition from KDE 3.5 to 4 likely still flinch at the mention of a major upgrade to any part of KDE, but there's good news for KDE fans in Plasma 5. This is a major update, yes, but it comes with a handful of exceptions (which I'll get into in a minute because you'd never know it). - -It turns out that the incredibly bumpy move to KDE 4 really did lay the groundwork for a better future—we are now in that future. - -With this update, KDE is laying future groundwork in a less disruptive way. We're referring to an inevitable move to tablets and other form factors, but fear not. KDE seems poised to do what GNOME and Unity could not—branch out to other form factors without abandoning the traditional desktop. In other words, this release resisted the urge to mess with the tried and true just because something new is on the horizon. - -(As a quick aside: You'd be forgiven for not remembering this, but the whole convergence thing that Canonical goes on about with each new Unity update? KDE started using the word "convergence" way back when Canonical was still running user tests to determine the optimal shade of brown for GNOME 2 menus.) - -With KDE Frameworks 5, Qt5, and some other updates to the plumbing that come along with Plasma 5, KDE's version of convergence is here. It's simply under the hood where it belongs. - -So while the components are there to allow the KDE project and its developers to build different interfaces—KDE calls these new frameworks the "converged Plasma shell," which is what loads up the desktop in Plasma 5—the Plasma 5 desktop is, thus far, the only interface. KDE plans to build out others, but the [official release announcement][2] for Plasma 5 says that "a tablet-centric and media center user experience are under development." - -In this sense, KDE's vision of convergence is not unlike what Ubuntu envisions; the user interface will change based on the device and hardware. For example, you might have the "tablet-centric" interface that's in the works running while you're reading the Web on the couch. But get up, walk back to your office, connect to your wireless keyboard, and the interface shifts to something more keyboard-friendly. - -This scenario has some potential problems, some of which Windows 8 users are likely already familiar with. For example, what will happen when a keyboard is plugged in, but you still want to interact with the screen via touch? What happens if you plug in a mouse, but you still want to scroll with your fingers? - -We mention these small points not to say that KDE hasn't thought them through (here's hoping they have), but because this idea of "convergence" of adaptive user interfaces will be very difficult to get right. And one thing KDE has long had that gives users hope for the project's success is limitless configurability. - -The hope for KDE on a tablet is that any user would be able to configure every last detail of the experience. Simply put, there would be a way for you to determine what you want to happen when a keyboard is detected rather than letting the OS determine it. - -### The Plasma 5 desktop ### - -KDE Plasma 5 is KDE 4 evolved rather than any kind of revolutionary new interface. - -![The KDE Plasma 5 desktop.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot02.png) -The KDE Plasma 5 desktop. - -We've been using this release—still not completely stable during testing, though most of the glitches have been graphical, not data threatening—for over a month now in virtual machines. We've been dual booting on a Retina MacBook Pro and, to see how well it holds up on older hardware, an aging, underpowered Toshiba laptop. KDE Plasma 5 was tested using Kubuntu (virtual machine and the Toshiba) and atop a fresh install of Arch Linux (dual boot MacBook). - -If you'd like to try out Plasma 5, the simplest way is to grab the [Neon live CD available from KDE][3]. That will get you Plasma with Ubuntu under the hood. If you want to commit and test it on an existing Kubuntu install, here are the commands for that: - - sudo add-apt-repository ppa:neon/kf5 - sudo apt-get update - sudo apt-get install project-neon5-session project-neon5-utils project-neon5-konsole project-neon5-breeze project-neon5-plasma-workspace-wallpapers - -Restart your machine and you should see a new option at the login screen offering to start up a Neon session. - -Once you have Plasma 5 up and running, the first thing you'll notice is the new default KDE theme, known as Breeze. - -### Plasma 5's Breezy new look ### - -Breeze is what KDE refers to as a modernized interface, with "reduced visual clutter throughout the workspace." Sure enough, the busy, somewhat cluttered feel that has long been a part of the default KDE look is gone. - -![The KDE Plasma 5 desktop's Breeze theme is most complete in the Kickoff menu. Note the type to search message.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot03.png) -The KDE Plasma 5 desktop's Breeze theme is most complete in the Kickoff menu. Note the type to search message. - -The entire interface has been flattened out, with bigger fonts, better contrast, and a sort of flat, "frosted" look that's somewhere between OS X Yosemite, Android L, and KDE 4.x. That's not to say KDE ripped off Apple or Google. They couldn't have, since Plasma 5 and the Breeze theme were well on their way before Apple revealed Yosemite or Google announced Android L. - -Still, while it would be incorrect to say KDE has ripped anyone off, Breeze's visual design and overall aesthetic are very much a product of its time. In that sense it looks "modern," so long as you define modern to mean lots of strong type, few textures or outlines, lots of translucency, and monochrome iconography. - -KDE's designers have put a lot of work into Breeze and it shows. This isn't just a new coat of paint. Breeze makes KDE more approachable out of the box with cleaned up menus, a less cluttered notification center, and a revamped Kickoff start menu. - -![A cleaner, less nagging notification center.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot04.png) -A cleaner, less nagging notification center. - -How much Breeze matters depends on whether or not you'll ever even use it. KDE tends to attract users that like customizing their systems, which, presumably, includes customizing the theme. One thing to look forward to is what distros that heavily customize the default KDE theme—notably OpenSUSE—will do now that Breeze provides a somewhat higher starting bar. - -Currently, most distros will likely not jump on Breeze, since it is very much a work in progress. And coincidently, Breeze is where you'll notice some of the first signs of incompleteness in Plasma 5. While the Kickoff menu has some nice new icons, much of the rest of the interface does not. And as of the latest updates available in the Kubuntu ppa, Breeze does not use its new Window Decorations. The Window Decorations are installed, but they aren't turned on by default. You can head to the System Settings app and turn them on for a more complete, though possibly buggier, Breeze experience. - -![Top is the default Oxygen Window Decorations, bottom the new Breeze theme.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot05.png) -Top is the default Oxygen Window Decorations, bottom the new Breeze theme. - -Not everything is ideal, and sometimes it's hard to tell what's a bug or incomplete feature and what is just poorly designed. For example, there's quite a bit of window and overlay translucency in Breeze, some of which looks nice. At other times, this gets in the way. Stacked windows and preview overlays bleed into what's behind them and become hard to read in the background. Pulling them to the foreground solves the problem, but it's hard to say what the value of the transparency is in this case. - -![Transparency... why?](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot06.png) -Transparency... why? - -So yes, Breeze is still a work in progress, and not just in terms of features and design; things are still being worked out in terms of genuine bugs and glitches. We have encountered some unexpected behavior accordingly, particularly with regard to screen redraws. Those happen frequently and slow enough to notice. Windows disappear at times, and the menu bar occasionally only draws half of itself. - -Plasma 5 has never crashed during our testing, nor has it lost any data. But be warned—little visual glitches abound. We would suggest waiting for things to stabilize and for the distro of your choice to integrate it before jumping in with both feet. - -### Plasma menus go vertical ### - -Breeze gives Plasma 5 a new look, but there are also a number of changes in behavior. For example, both the widget explorer and the alt-tab window switcher are now vertically oriented and located in the same place by default—the far left side of the screen. - -![The default look for the alt-tab switcher menu.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot07.png) -The default look for the alt-tab switcher menu. - -While that consistency is probably good for KDE newcomers, who need to learn to expect that various stuff will appear to the left of the screen, it can be a little frustrating for long-time users anticipating something else. Some of these changes seem somewhat arbitrary. - -![The widget explorer menu.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot08.png) -The widget explorer menu. - -The KDE project claims the shift to vertical instead of horizontal lists, in things like the widget explorer and window switcher, "provide better usability." It stops short of saying how exactly. The release docs claim that moving the window switcher to the side of the screen "shifts the user's focus towards the applications and documents, clearing the stage for the task at hand." But if you only call up the window switcher when you're, ahem, switching windows, then it seems more likely that the user is between tasks rather than involved in one. - -![KDE still loves offering options. Notice the dark gray bar to the right that's an artifact (glitch) from dragging the window.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot09.png) -KDE still loves offering options. Notice the dark gray bar to the right that's an artifact (glitch) from dragging the window. - -This is KDE, though, not Unity; infinite customization is a feature, not a bug. A trip to the System Settings will get your old style window switcher back, and there are some 10 different visual possibilities for the window switcher in Plasma 5. If the default is not to your liking, customize away. - -### So long Nepomuk, thanks for all the spinning fans ### - -If you're a heavy user of KDE's sometimes awesome, sometimes not, search features, this may be the biggest news in Plasma 5. It's true, KDE has ditched Nepomuk in favor of a new search engine known as Baloo. - -Nepomuk started life as an EU-funded metadata search project, with the lofty-sounding goal of creating a "Networked Environment for Personalized, Ontology-based Management of Unified Knowledge." By the time it trickled down to the KDE project, Nepomuk became a somewhat more mundane desktop search tool that alternated between brilliant and maddening. - -![Searching for files in Plasma 5.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot10.png) -Searching for files in Plasma 5. - -Baloo takes much of what made Nepomuk great—namely, full text file search and an uncanny ability to pick up on relationships between files, for example, knowing that particular document is related to a contact—and [improves it][4]. Actually use the search features in Plasma 5 and you'll notice two things right off the bat: it's faster and your fan doesn't go haywire every time something new is indexed. - -Baloo significantly reduces the resource footprint of searching and, according to KDE, is more accurate. We can't vouch for the latter, since we never used search much in older versions of KDE (see fan spinning comments), but in terms of accuracy, simple file searches in Plasma 5 are on par with what you'll find in Ubuntu, OS X, and elsewhere. The success of more complex searches involving relationships or complex metadata will vary depending on how much you use the default KDE apps. For example, you need to use the Kontact Suite if you want to take advantage of Baloo-based searches involving relationships between contacts and files. - -That will likely change as time goes on, though, because another big change from Nepomuk is the new, improved developer API. The API for searching means third-party apps can tie in Plasma 5's Semantic Search infrastructure and take advantage of the same tools the default apps use. - -Curiously, for something that has seen as much work as Baloo has, the visibility and discoverability of the search feature has taken a step backward. Fire up Plasma 5's Kickoff menu—KDE's answer to the Windows Start menu—and search is nowhere to be found. If you look closely, you'll see a tiny little reminder to "type to search," which is a step up from the first release (which had no indication that you could search). Still, this isn't as discoverable as a dedicated search box. - -### Kickoff and its new cousin, Kicker ### - -KDE's answer to the Windows Start button has always been overkill in these eyes, packing too much in too little space, but with Breeze the menu has been cleaned up a bit and feels less visually overwhelming. - -![The Kickoff menu in the default theme.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot11.png) -The Kickoff menu in the default theme. - -If it's still a bit too much for your needs, Plasma 5 offers a new, more traditional menu-based launcher called Kicker. Kicker does less—it's much closer to the Start menu in XP, a single, narrower pane that offers expanding menus where needed—and makes a lightweight alternative if all you want to do is launch applications and files. It also has a very obvious search box. - -![The new Kicker menu option.](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot12.png) -The new Kicker menu option. - -The other side of the menu bar has been revamped and cleaned up a bit as well. The most notable change is the notification app, which seems to kick up fewer notifications and does a better job of displaying them and quickly getting them out of the way. - -### OpenGL, QtQuick, and HiDPI Screens ### - -Plasma 5 finishes up KDE's migration to Qt 5 and QtQuick, the latter of which uses a hardware-accelerated OpenGL scenegraph to render graphics. Most of what's new with OpenGL pertains to offloading graphics to any available GPU. That means, provided you've got the hardware for it, Plasma 5 can take full advantage of today's powerful GPUs. - -Indeed, on newish hardware (our test MacBook's NVIDIA GeForce GT graphics card, for example) Plasma 5 is snappy, considerably snappier than its predecessor. Perhaps even more impressive, take away whatever GPU advantage Plasma 5 might gain over KDE 4.x systems, and it still feels faster. That is, running on older hardware still isn't KDE's strong point, but the story is better than it used to be. Still, if you're looking to get some extra mileage out of older hardware, stick with Xfce, LXDE or something even simpler like Openbox. - -Interestingly, the revamped Frameworks that make up Plasma 5's graphics stack also pave the way for KDE to switch to the Wayland display server protocol. KDE doesn't seem to be in a hurry to make the switch to Wayland though, noting only that full support will be available in "a future release." - -This release also claims improved support for HDPI displays. But, as with the HDPI support in GNOME and Unity, the actual experience is a very mixed bag. Font rendering in particular is nowhere near as smooth as what OS X offers. Even installing and fiddling with Infinality has never produced satisfactory results for me. We're still not sure if the problem is in setup, and we're not in fact seeing the new HDPI features. Or, possibly the KDE project just has a very different definition of what constitutes HDPI support. Hopefully it's the former. - -### What's missing ### - -Earlier in this review, we said that the transition from KDE 4 to the Plasma 5 desktop would not be as bumpy as the move from KDE 3.x to 4.x. For the most part, that's true, but, for some people, there may be exceptions. - -The KDE project says the focus for this release has been "concentrated on tools that make up the central workflows" and notes that "not all features from the Plasma 4.x series are available yet." That might ring a bell for those who made it through the KDE 3 to 4 transition. - -In testing, we didn't run across any noticeable gaps in functionality or obvious missing features, save what was mentioned: the incomplete Breeze theme, some graphical glitches, and some questionable design choices. That said, have a look at the [list of known issues][5], in particular the note about performance. - -And we suggest trying Plasma 5 first to make sure all your must-haves are there before you jump in with both feet. - -### Conclusion ### - -KDE's Plasma 5 release lacks the attention-grabbing, paradigm-shifting changes that keep Unity and GNOME in the spotlight. Instead, the KDE project has been focused on improving its core desktop experience. Plasma 5 is not perfect by any means, but, unlike Unity and GNOME, it's easy to change the things you don't like. - -What's perhaps most heartening about this release is that KDE has managed to get a lot of the groundwork done for alternate interfaces without messing with their desktop interface much at all. The speed improvements are also good news. If you've tried KDE in the past and found it too "heavy," you might want to give Plasma 5 a fresh look. - --------------------------------------------------------------------------------- - -via: http://arstechnica.com/information-technology/2014/08/kde-plasma-5-for-those-linux-users-undecided-on-the-kernels-future/ - -作者:Scott Gilbertson -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://arstechnica.com/gadgets/2014/08/op-ed-tables-really-are-pcsbecause-theres-no-point-in-buying-new-ones/ -[2]:http://www.kde.org/announcements/plasma5.0/ -[3]:http://files.kde.org/snapshots/neon5-latest.iso.mirrorlist -[4]:https://dot.kde.org/2014/02/24/kdes-next-generation-semantic-search -[5]:https://community.kde.org/Plasma/5.0_Errata \ No newline at end of file diff --git a/sources/talk/20140825 China Will Change The Way All Software Is Bought And Sold.md b/sources/talk/20140825 China Will Change The Way All Software Is Bought And Sold.md deleted file mode 100644 index 8983726e50..0000000000 --- a/sources/talk/20140825 China Will Change The Way All Software Is Bought And Sold.md +++ /dev/null @@ -1,69 +0,0 @@ -chi1shi2 is translating. - -China Will Change The Way All Software Is Bought And Sold -================================================================================ -![](http://a5.files.readwrite.com/image/upload/c_fill,h_900,q_70,w_1600/MTE5NDg0MDYyMzQ4MzE0MTI3.jpg) - -> It's all about open source. - -**China doesn't need you. Not your software. Not your** programmers. Not anything you have to offer. - -China mints over 100,000 new software engineers each year. Those engineers are writing an incredible volume of great software. What software China doesn't develop, it pirates, to the tune of 77% of all software used in China as of 2012. For Western technology vendors already struggling to meet the challenges of open source and cloud, China just made things harder. - -Much harder. - -China is challenging the way Western firms make money in China and everywhere else. For those companies that manage to figure out how to do business in China, their future looks very, very bright. - -### Resisting China ### - -Not everyone wants to play along, of course. Microsoft, for example, has opted to [use U.S. state attorneys general to block Chinese firms][1] from doing business in their states unless they pay for their Microsoft licenses. It's clever, and it may generate billions of dollars for Microsoft, but it ultimately feels like Microsoft is trying to fit a square peg in a round hole. - -China, quite simply, doesn't think about IP in the same way that Microsoft does. - -As [I've noted][2], "like their Indian counterparts, Chinese enterprises seem inclined to pay for complex, proprietary enterprise software that's more advanced than domestic firms have yet developed." But this won't last, as China's software industry is in warp speed and showing no signs of slowing. China pirates until it can build its own. - -But even then, it charges for software differently than in the U.S. Software is either delivered in appliances, the cloud or firms simply charge for support. None of these things can be pirated. - -And each, not surprisingly, is how companies make money with open source. - -### Open Sourcing China ### - -As captured in [J. Aaron Farr's report][3] on open source in China, Hu Ke, an analyst for CCID, notes that "China's open source communities are relatively small and don't have much influence. There is a lack of big projects, few participants, and little money." - -That's the bad news. - -The good news is that companies like Huawei view open source as a strategic priority. For example, while [Huawei's open source page][4] is outdated and weak, it belies what's actually going on in the technology behemoth. In conversations with the company and with consultants engaged with it, they cite a great deal of knowledge about open source within Huawei, though still a decided lack of know-how when it comes to engaging with open-source communities. - -That isn't likely to last. - -For one thing, Chinese biggest Web companies actively embrace open source, a sign of what's to come. Talk to anyone at Baidu, Alibaba, Weibo and you'll discover that their software stacks are open source, top to bottom, running on homegrown hardware, not Western name brands. - -In other words, exactly like in the United States and Western Europe. - -Take a look at [what software the industry's hottest startups use today][5] and you'll get a good sense of what China's mainstream enterprises will use tomorrow, just as is happening in the Western world. And, not surprisingly, much of it is open source. - -### Selling To China ### - -All of which means the future of China's software industry will necessarily look nothing like the history of the U.S. software industry. There won't be companies making billions of dollars selling proprietary shelfware. Intellectual property, in the Western sense, simply won't factor into China's tech economy. - -Instead, vendors will need to find a way to sell something other than software. Cloud services will succeed. Hardware appliances will, too. Ditto support and consulting services (though at lower margins). Basically, China's software industry will look like an industry filled with open source and no easy, proprietary crutches. - -Lead image by [hackNY.org][6] - --------------------------------------------------------------------------------- - -via: http://readwrite.com/2014/08/12/china-opensource-software-ip-programmers-united-states - -作者:[Matt Asay][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://readwrite.com/author/matt-asay -[1]:http://readwrite.com/2014/03/17/microsoft-anti-piracy-strategy-china -[2]:http://readwrite.com/2014/04/11/india-starts-paying-for-software-china-it -[3]:http://cdn.oreillystatic.com/en/assets/1/event/12/Open%20Source%20in%20China%20Presentation%201.pdf -[4]:http://huawei.com/en/about-huawei/Partner/openathuawei/index.htm -[5]:http://codingvc.com/which-technologies-do-startups-use-an-exploration-of-angellist-data -[6]:https://www.flickr.com/photos/hackny/8675057448/ \ No newline at end of file diff --git a/sources/talk/20140902 Happy Birthday Email.md b/sources/talk/20140902 Happy Birthday Email.md new file mode 100644 index 0000000000..b5db299b33 --- /dev/null +++ b/sources/talk/20140902 Happy Birthday Email.md @@ -0,0 +1,23 @@ +Happy Birthday Email +================================================================================ +**An Indian American had the brain to invent electronic mail without which we cannot figure out a single day in this era.** + +![](http://1-ps.googleusercontent.com/h/www.efytimes.com/admin/useradmin/photo/150x150xDbOx104130AM8312014.jpg.pagespeed.ic.QJJxt_P8uE.jpg) + +30 August, email turned 32. Now we wonder how this fast and quick method of message transfer came into existence. The credit goes to an Indian American, Shiva Ayyadurai. Shiva developed a full-scale software of the interoffice mail system and it was named email. + +He was officially acknowledged as the inventor of the computer programme on 30 August, 1982, by the US government. Born to Tamil family in Bombay, Shiva was just 14 years old when he invented the email system. He was studying at Livingston High School in New Jersey and he began working on this system for the University of Medicine and Dentistry of New Jersey. A copyright was given to the email system as no other way was known to protect software inventions at that time. + +Ayyadurai got the idea of the email system from the way mail was transported internally in offices. He tried to make a copy of ‘Pneumatic Tube System’ which was mostly used to send interoffice mails across offices. This system used a physical network of tubes which used to transport typed mails to secretaries. Each secretary used to have inbox, outbox, drafts, carbon copy paper, folders, address book, paper clips or attachments etc. All these were used to create and process incoming and outgoing mails. + +Shiva also took a note of the common templates like “To”, “From”, “Subject”, “Date”, “Body”, “CC”, “BCC” and so on. All these templates were incorporated in the version of the electronic mail too. Mail was written FORTRAN programming language and Shiva discovered an electronic version of the same. Shiva received many accolades for his extraordinary work and also won a Westinghouse Science Talent Search Award for high school seniors in 1981. Now Smithsonian Institution National Museum of American History (SINMAH) has the official US copyright for “Email”. But there is a controversy that not Ayyadurai but some other people have invented email. + +-------------------------------------------------------------------------------- + +via: http://www.efytimes.com/e1/fullnews.asp?edid=147170 + +作者:Sanchari Banerjee +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/sources/talk/20140902 The awesomely epic guide to KDE.md b/sources/talk/20140902 The awesomely epic guide to KDE.md new file mode 100644 index 0000000000..50da2c40ff --- /dev/null +++ b/sources/talk/20140902 The awesomely epic guide to KDE.md @@ -0,0 +1,116 @@ +The awesomely epic guide to KDE +================================================================================ +**Everything you ever wanted to know about KDE (but were too afraid of the number of possible solutions to ask).** + +Desktops on Linux. They’re a concept completely alien to users of other operating systems because they never having to think about them. Desktops must feel like the abstract idea of time to the Amondawa tribe, a thought that doesn’t have any use until you’re in a different environment. But here it is – on Linux you don’t have to use the graphical environment lurking beneath your mouse cursor. You can change it for something completely different. If you don’t like windows, switch to xmonad. If you like full-screen apps, try Gnome. And if you’re after the most powerful and configurable point-and-click desktop, there’s KDE. + +KDE is wonderful, as they all are in their own way. But in our opinion, KDE in particular suffers from poor default configuration and a rather allusive learning curve. This is doubly frustrating, firstly because it has been quietly growing more brilliant over the last couple of years, and secondly, because KDE should be the first choice for users unhappy with their old desktop – in particular, Windows 8 users pining for an interface that makes sense. + +But fear not. We’re going to use a decade’s worth of KDE firefighting to bring you the definitive guide to making KDE look good and function slightly more like how you might expect it to. We’re not going to look at KDE’s applications, other than perhaps Dolphin; we’re instead going to look at the functionality in the desktop environment itself. And while our guinea pig distribution is going to be Mageia, this guide will be equally applicable to any recent KDE desktop running from almost any distribution, so don’t let the default Mageia background put you off. + +### Fonts ### + +A great first target for getting your system looking good is its selection of fonts. It used to be the case that many of us would routinely copy fonts across from a Windows installation, getting the professional Ariel and Helvetica font rendering that was missing from Linux at the time. But thanks to generic quality fonts such as DejaVu and Nimbus Sans/Roman, this isn’t a problem any more. But it’s still worth finding a font you prefer, as there are now so many great alternatives to choose between. + +The best source of free fonts we’ve found is [www.fontsquirrel.com][1] – it hosts the Roboto, Roboto Slab (Hello!) and Roboto Condensed (Hello!) typefaces used throughout our magazine, and also on the Nexus 5 smartphone (Roboto was developed for use in the Ice Cream Sandwich version of the Android mobile operating system). + +TrueType fonts, with their **.ttf** file extensions, are incredibly easy to install from KDE. Download the zip file, right-click and select something from the Extract menu. Now all you need to do is drag a selection across the TrueType fonts you want to install and select ‘Install’ from the right-click Actions menu. KDE will take care of the rest. + +Another brilliant thing about KDE is that you can change all the fonts at once. Open the System Settings panel and click on Application Appearances, followed by the fonts tab, and click on Adjust All Fonts. Now just select a font from the requester. Most KDE applications will update with your choice immediately, while other applications, such as Firefox, will require a restart. Either way, it’s a quick and effective way of experimenting with your desktop’s usability and appearance. We’d recommend either Open Sans or the thinner Aller fonts. + +![Most distributions don’t include decent fonts. But KDE enables you to quickly install new ones and apply them to your desktop.](http://www.linuxvoice.com/wp-content/uploads/2014/09/kde-4.png) +Most distributions don’t include decent fonts. But KDE enables you to quickly install new ones and apply them to your desktop. + +### Eye candy ### + +One of KDE’s most secret features is that backgrounds can be dynamic. We don’t find much use for this when it comes to the desktops that tells us the weather outside the window, but we do like backgrounds that dynamically grab images from the internet. With most distributions you’ll need to install something for this to work. Just search for **plasma-wallpaper** in your distribution’s package manager. Our favourite is **plasma-wallpaper-potd**, as this installs easy access to update-able wallpaper images from a variety of sources. + +Changing a desktop background is easy with KDE, but it’s not intuitive. Mageia, for example, defaults to using ‘Folder’ view, as this is closer to the traditional desktop where files from the Desktop folder in your home directory are displayed on the background, and the whole desktop works like a file manager. Right-click and select ‘Folder Settings’ if this is the view you’re using. Alternatively, KDE defaults to ‘Desktop’, where the background is clear apart from any widgets you add yourself, and files and folders are considered links to the sources. The menu item in this mode is labelled Desktop Settings. The View Configuration panel that changes the background is the same, however, and you need to make your changes in the Wallpaper drop-down menu. We’d recommend Picture Of The Day as the wallpaper, and the Astronomy Picture Of The Day as the image source. + +Another default option we think is crazy is the blue glow that surrounds the active window. While every other desktop uses a slightly deeper drop-shadow, KDE’s active window looks like it’s bathed in radioactive light. The solution to this lies in the default theme, and this can be changed by going to KDE’s System Settings control panel and selecting Workspace Appearance. On the first page, which is labelled Window Decorations, you’ll find that Oxygen is nearly always selected, and it’s this theme that contains the option to change the blue glow. Just click on the Configure Decoration button, flip to the Shadows tab and disable Active Window Glow’. Alternatively, if you’d like active windows to have a more pronounced shadow, change the inner and outer colours to black. + +You may have seen the option to download wallpapers, for example, from within a KDE window, and you can see this now by clicking on the Get New Decorations button. Themes are subjective, but our favourite combination is currently the Chrome window decoration (it looks identical to Google’s default theme for its browser) with the Aya desktop theme. The term ‘desktop theme’ is a bit of a misnomer, as it doesn’t encapsulate every setting as you might expect. Instead it controls how generic desktop elements are rendered. The most visible of these elements is the launch panel, and changing the desktop theme will usually have a dramatic effect on its appearance, but you’ll also notice a difference in the widgets system. + +The final graphical flourish we’d suggest is to change the icon set that KDE uses. There’s nothing wrong with the default Oxygen set, but there are better options. Unfortunately, this is where the ‘Get New Themes’ download option often fails, probably because icon packages are large and can overwhelm the personal storage space often reserved for projects like these. We’d suggest going to [kde-look.org][2] and browsing its icon collections. Open up the Icons panel from KDE’s System Settings, click on the Icons tab followed by Install Theme File and point the requester at the location of the archive you just downloaded. KDE will take it from there and add the icon set to the list in the panel. Try Kotenza for a flat theme, or keep an eye on Nitrux development. + +![Remove the blue glow and change a few of the display options, and KDE starts to look pretty good in our opinion.](http://www.linuxvoice.com/wp-content/uploads/2014/09/kde-5.png) +Remove the blue glow and change a few of the display options, and KDE starts to look pretty good in our opinion. + +### The panel ### + +Our next target is going to be the panel at the bottom of the screen. This has become a little dated, especially if you’re using KDE on a large or high-resolution display, so our first suggestion is to re-scale and centre it for your screen. The key to moving screen components in KDE is making sure they’re unlocked, and this accomplished by right-clicking on the ‘plasma’ cashew in the top-right of the display where the current activity is listed. Only when widgets are unlocked can you re-size the panel, and even add new applications from the launch menu. + +With widgets unlocked, click on the cashew on the side of the panel followed by More Settings and select Centre for panel alignment. With this enabled you can re-size the panel using the sliders on either side and the panel itself will always stay in the middle of your screen. Just pretend you’re working on indentation on a word processor and you’ll get the idea. You can also change its height when the sliders are visible by dragging the central height widget, and to the left of this, you can drag the panel to a different edge on your screen. The top edge works quite well, but many of KDE’s applets don’t work well when stacked vertically on the left or right edges of the display. + +There are two different kinds of task manager applets that come with KDE. The default displays each running application as a title bar in the panel, but this takes up quite a bit of space. The alternative task manager displays only the icon of the application, which we think is much more useful. Mageia defaults to the icon version, but most others – and KDE itself – prefer the title bar applet. To change this, click on the cashew again and hover over the old applet so that the ‘X’ appears, then click on this ‘X’ to remove the applet from the panel. Now click on Add Widgets, find the two task managers and drag the icon version on to your panel. You can re-arrange any other applets in this mode by dragging them to the left and right. + +By default, the Icon-Only task manager will only display icons for tasks running on the current desktop, which we think is counterintuitive, as it’s more convenient to see all of the applications you may have running and to quickly switch between whatever desktops on which they may be running with a simple click. To change this behaviour, right-click on the applet and select the Settings menu option and the Behaviour tab in the next window. Deselect ‘Only Show Tasks From The Current Desktop’, and perhaps ‘Only Show Tasks From The Current Activity’ if you use KDE’s activities. + +Another alteration we like to make is to reconfigure the virtual desktops applet from showing four desktops as a 2×2, which doesn’t look too good on a small panel, to 4×1. This can be done by right-clicking on the applet, selecting Pager Settings and then clicking on the Virtual Desktops tabs and changing the number of rows to ‘1’. + +Finally, there’s the launch menu. Mageia has switched this from the new style of application launcher to the old style originally seen in Microsoft Windows. We prefer the former because of its search field, but the two can be switched by right-clicking the icon and selecting the Switch To… menu option. + +If you find the hover-select action of this mode annoying, where moving the mouse over one of the categories automatically selects it, you can disable it by right-clicking on the launcher, selecting Launcher Settings from the menu and disabling ‘Switch Tabs On Hover’ from the General settings page. It’s worth reiterating that many of these menu options are only available when widgets are unlocked, so don’t despair if you don’t see the correct menu entry at first. + +> ### Activities ### +> +> No article on KDE would be complete without some discussion of what KDE calls Activities. In many ways, Activities are a solution waiting for a problem. They’re meta-virtual desktops that allow you to group desktop configuration and applications together. You may have an activity for photo editing, for example, or one for working and another for the internet. If you’ve got a touchscreen laptop, activities could be used to switch between an Android-style app launcher (the Search and Launch mode from the Desktop Settings panel), and the regular desktop mode. We use a single activity as a default for screenshots, for instance, while another activity switches everything to the file manager desktop mode. But the truth is that you have to understand what they are before you can find a way of using them. +> +> Some installations of KDE will include the Activity applet in the toolbar. Its red, blue and green dots can be clicked on to open the activity manager, or you can click on the Plasma cashew in the top-right and select Activities. This will open the bar at the bottom of the screen, which lists activities installed and primed on your system. Clicking on any will switch between them; as will pressing the meta key (usually the Windows key) and Tab. +> +> We’d suggest that finding a fast way to switch between activities, such as with a keyboard shortcut or with the Activity Bar widget is the key to using them more. With the Activity Manager open, clicking on Create Activity lets you either clone the current desktop, add a blank desktop or create a new activity from a list of templates. Clone works well if you want to add some default applications to the desktop for your current setup. To remove an activity, switch to another one and press the Stop and Delete buttons from the Activity Manager. + +### Upgraded launch menu ### + +You may want to look into replacing the default launch menu entirely. If you open the Add Widgets view, for instance, and search for menus, you’ll see several results. Our current favourite is called Application Launcher (QML). It provides the same kind of functionality as the default menu, but has a cleaner interface after you’ve enlarged the initial window. But if we’re being honest, we don’t use the launcher that much. We prefer to do most launching through KRunner, which is the seemingly simple requester that appears when you hold Alt+F2. + +KRunner is better than the default launcher, because you can type this shortcut from anywhere, regardless of which applications are running or where your mouse is located. When you start to type the name of the application you want to run into KRunner, you’ll see the results filtered in real time beneath the entry field – press Enter to launch the top choice. + +KRunner is capable of so much more. You can type in calculations like **=sin(90)**, for example, and see the result in real time. You can search Google with **gg**: or Wikipedia with **wp**: followed by the search terms, and add many other operations through installable modules. To make best use of this awesome KDE feature, make sure you’ve got the **plasma-addons** package installed, and search for **runner** on your distribution’s package manager. When you next launch KRunner and click on the tool icon to the left of the search bar, you’ll see a wide variety of plugins that can do all kinds of things with the text you type in. In classic KDE style, many don’t include instructions on how to use them, so here’s our breakdown of the most useful things you can do with KRunner: + +![](http://www.linuxvoice.com/wp-content/uploads/2014/09/kde-3.png) + +### File management ### + +File management may not be the most exciting subject in Linux, but it is one we all seem to spend a lot of time doing, whether that’s moving a download into a better folder, or copying photos from a camera. The old file manager, Konqueror, was one of the best reasons for using KDE in the first place, and while Konqueror has been superseded by Dolphin in KDE 4.x, it’s still knocking around – even if it is labelled a web browser. + +If you open Konqueror and enter the URL as **file:/**, it turns back into that file manager of old, with many of its best features intact. You can click on the lower status bar, for example, and split the view vertically or horizontally, into other views. You can fill the view with proportionally sized blocks by selecting Preview File Size View from the right-click menu, and preview many other file types without ever leaving Konqueror. + +Mageia uses a double-click for most options, whereas we prefer a single click. This can be changed from the System-Settings panel by opening Input Devices, clicking on Mouse and enabling ‘Single-click To Open Files And Folders’. If you’ve become used to Apple’s reverse scroll, you’ll also find an option here to reverse the scroll direction on Linux. + +Konqueror is a great application, but it hasn’t been a focus of KDE development for a considerable period of time. Dolphin has replaced it, and while this is a much simplified file manager, it does inherit some of Konqueror’s best features. You can still split the view, for instance, albeit one only once, and only horizontally, from the toolbar. You can also view lots of metadata. Select the Details View and right-click on the column headings for the files, and you can add columns that list the word counts in text files, or an image’s size and orientation, or the artist, title and duration of an audio file, all from within the contents of the data. This is KDE’s semantic desktop in action, and it’s been growing in functionality for the last couple of years. Apple’s OS X, for example, has only just started pushing its ability to tag files and applications – we’ve been able to do this from KDE for a long time. We don’t know any other desktop that comes close to providing that level of control. + +### Window management ### + +KDE has a comprehensive set of windowing functions as well as graphical effects. They’re all part of the window manager, KWin, rather than the desktop, which is what we’ve been dealing with so far. It’s the window manager’s job to handle the positioning, moving and rendering of your windows, which is why they can be replaced without switching the whole desktop. You might want to try KWin on the RazorQt desktop, for example, to get the best of both the minimal environment RazorQt offers and the power of KDE’s window manager. + +The easiest way to get to KWin’s configuration settings is to right-click on the title bar of any window (this is usually the most visible element of any window manager), and select Window Manager Settings from the More Actions menu. + +The Task Switcher is the tool that appears when you press Alt+Tab, and continually pressing those two keys will switch between all running applications on the current desktop. You can also use cursor keys to move left and right through the list. These settings are mostly sensibly configured, but you may want to include All Other Desktops in the Filter Windows By section, as that will allow you to quickly switch to applications running on other desktops. We also like the Cover Switch visualisation rather than the Thumbnails view, and you can even configure the perceived distance of the windows by clicking on the toolbar icon. + +The next page on the window manager control module handles what happens at the edges of your screen. At the very least, we prefer to enable Switch Desktop On Edge by selecting Only When Moving Windows from the drop-down list. This means that when you drag a window to one edge, the virtual desktop will switch beneath, effectively dragging the window on to a new virtual desktop. + +The great thing about enabling this only for dragged windows is that it doesn’t interfere with KDE’s fantastic window snapping feature. When you drag a window close to the left or right edge, for instance, KDE displays a ghosted window where your window will snap to if you release the mouse. This is a great way of turning KDE into a tiling window manager, where you can easily have two windows split down the middle of the screen area. Moving a window into any of the corners will also give you the ability to neatly arrange your windows to occupy a quarter of the screen, which is ideal for large displays. + +We also enable a mode similar to Mission Control on OS X when the cursor is in the region of the top-left corner of the screen. On the screen edge layout, click on the dot in the top-right of the screen (or any other point you’d prefer) and select Desktop Grid from the drop-down menu that appears. Now when you move to the top-right of your display, you’ll get an overview of all your virtual desktops, any of which can be chosen with a click. + +Two pages down in the configuration module, there’s a page called Focus. This is an old idea where you can change whether a window becomes active when you click on it, or when you roll your mouse cursor over it. KDE adds another twist to this by providing a slider that progresses from click to a strict hover policy, where the window under the cursor always becomes active. We prefer to use one of the middle options – Focus Follows Mouse – as this chooses the most obvious window to activate for us without making too many mistakes, and it means we seldom click to focus. We also reduce the focus delay to 200ms, but this will depend on how you feel about the feature after using it for a while. + +KDE has so many features, many of which only come to light when you start to use the desktop. It really is a case of developers often adding things and then telling no one. But we feel KDE is worth the effort, and unlikely some other desktops, is unlikely to change too much in the transition from 4.x to 5. That means the time you spend learning how to use KDE now is an investment. Dive in!. + +![KDE visual effects (click for larger)](http://www.linuxvoice.com/wp-content/uploads/2014/09/kde-1.png) +KDE visual effects (click for larger) + +-------------------------------------------------------------------------------- + +via: http://www.linuxvoice.com/desktops/ + +作者:[Ben Everard][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.linuxvoice.com/author/ben_everard/ +[1]:http://www.fontsquirrel.com/ +[2]:http://kde-look.org/ \ No newline at end of file diff --git a/sources/talk/20140904 Making MySQL Better at GitHub.md b/sources/talk/20140904 Making MySQL Better at GitHub.md new file mode 100644 index 0000000000..1faf5d6e27 --- /dev/null +++ b/sources/talk/20140904 Making MySQL Better at GitHub.md @@ -0,0 +1,92 @@ +Making MySQL Better at GitHub +================================================================================ +> At GitHub we say, "it's not fully shipped until it's fast." We've talked before about some of the ways we keep our [frontend experience speedy][1], but that's only part of the story. Our MySQL database infrastructure dramatically affects the performance of GitHub.com. Here's a look at how our infrastructure team seamlessly conducted a major MySQL improvement last August and made GitHub even faster. + +### The mission ### + +Last year we moved the bulk of GitHub.com's infrastructure into a new datacenter with world-class hardware and networking. Since MySQL forms the foundation of our backend systems, we expected database performance to benefit tremendously from an improved setup. But creating a brand-new cluster with brand-new hardware in a new datacenter is no small task, so we had to plan and test carefully to ensure a smooth transition. + +### Preparation ### + +A major infrastructure change like this requires measurement and metrics gathering every step of the way. After installing base operating systems on our new machines, it was time to test out our new setup with various configurations. To get a realistic test workload, we used tcpdump to extract SELECT queries from the old cluster that was serving production and replayed them onto the new cluster. + +MySQL tuning is very workload specific, and well-known configuration settings like innodb_buffer_pool_size often make the most difference in MySQL's performance. But on a major change like this, we wanted to make sure we covered everything, so we took a look at settings like innodb_thread_concurrency, innodb_io_capacity, and innodb_buffer_pool_instances, among others. + +We were careful to only make one test configuration change at a time, and to run tests for at least 12 hours. We looked for query response time changes, stalls in queries per second, and signs of reduced concurrency. We observed the output of SHOW ENGINE INNODB STATUS, particularly the SEMAPHORES section, which provides information on work load contention. + +Once we were relatively comfortable with configuration settings, we started migrating one of our largest tables onto an isolated cluster. This served as an early test of the process, gave us more space in the buffer pools of our core cluster and provided greater flexibility for failover and storage. This initial migration introduced an interesting application challenge, as we had to make sure we could maintain multiple connections and direct queries to the correct cluster. + +In addition to all our raw hardware improvements, we also made process and topology improvements: we added delayed replicas, faster and more frequent backups, and more read replica capacity. These were all built out and ready for go-live day. + +### Making a list; checking it twice ### + +With millions of people using GitHub.com on a daily basis, we did not want to take any chances with the actual switchover. We came up with a thorough [checklist][2] before the transition: + +![](https://cloud.githubusercontent.com/assets/1155781/4116929/13fc6f50-328b-11e4-837b-922aad3055a8.png) + +We also planned a maintenance window and [announced it on our blog][3] to give our users plenty of notice. + +### Migration day ### + +At 5am Pacific Time on a Saturday, the migration team assembled online in chat and the process began: + +![](https://cloud.githubusercontent.com/assets/1155781/4060850/39f52cd4-2df3-11e4-9aca-1f54a4870d24.png) + +We put the site in maintenance mode, made an announcement on Twitter, and set out to work through the list above: + +![](https://cloud.githubusercontent.com/assets/1155781/4060864/54ff6bac-2df3-11e4-95da-b059c0ec668f.png) + +**13 minutes** later, we were able to confirm operations of the new cluster: + +![](https://cloud.githubusercontent.com/assets/1155781/4060870/6a4c0060-2df3-11e4-8dab-654562fe628d.png) + +Then we flipped GitHub.com out of maintenance mode, and let the world know that we were in the clear. + +![](https://cloud.githubusercontent.com/assets/1155781/4060878/79b9884c-2df3-11e4-98ed-d11818c8915a.png) + +Lots of up front testing and preparation meant that we kept the work we needed on go-live day to a minimum. + +### Measuring the final results ### + +In the weeks following the migration, we closely monitored performance and response times on GitHub.com. We found that our cluster migration cut the average GitHub.com page load time by half and the 99th percentile by *two-thirds*: + +![](https://cloud.githubusercontent.com/assets/1155781/4060886/9106e54e-2df3-11e4-8fda-a4c64c229ba1.png) + +### What we learned ### + +#### Functional partitioning #### + +During this process we decided that moving larger tables that mostly store historic data to separate cluster was a good way to free up disk and buffer pool space. This allowed us to leave more resources for our "hot" data, splitting some connection logic to enable the application to query multiple clusters. This proved to be a big win for us and we are working to reuse this pattern. + +#### Always be testing #### + +You can never do too much acceptance and regression testing for your application. Replicating data from the old cluster to the new cluster while running acceptance tests and replaying queries were invaluable for tracing out issues and preventing surprises during the migration. + +#### The power of collaboration #### + +Large changes to infrastructure like this mean a lot of people need to be involved, so pull requests functioned as our primary point of coordination as a team. We had people all over the world jumping in to help. + +Deploy day team map: + + + +This created a workflow where we could open a pull request to try out changes, get real-time feedback, and see commits that fixed regressions or errors -- all without phone calls or face-to-face meetings. When everything has a URL that can provide context, it's easy to involve a diverse range of people and make it simple for them give feedback. + +### One year later.. ### + +A full year later, we are happy to call this migration a success — MySQL performance and reliability continue to meet our expectations. And as an added bonus, the new cluster enabled us to make further improvements towards greater availability and query response times. I'll be writing more about those improvements here soon. + +-------------------------------------------------------------------------------- + +via: https://github.com/blog/1880-making-mysql-better-at-github + +作者:[samlambert][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://github.com/samlambert +[1]:https://github.com/blog/1756-optimizing-large-selector-sets +[2]:https://help.github.com/articles/writing-on-github#task-lists +[3]:https://github.com/blog/1603-site-maintenance-august-31st-2013 \ No newline at end of file diff --git a/sources/talk/20140904 The Masked Avengers.md b/sources/talk/20140904 The Masked Avengers.md new file mode 100644 index 0000000000..0cb5cdaeed --- /dev/null +++ b/sources/talk/20140904 The Masked Avengers.md @@ -0,0 +1,378 @@ +[Translating by SteveArcher] +The Masked Avengers +================================================================================ +> How Anonymous incited online vigilantism from Tunisia to Ferguson. + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_r25419-690.jpg) + +Anyone can join Anonymous simply by claiming affiliation. An anthropologist says that participants “remain subordinate to a focus on the epic win—and, especially, the lulz.” + +Paper Sculpture by Jeff Nishinaka / Photograph by Scott Dunbar + +---------- + +In the mid-nineteen-seventies, when Christopher Doyon was a child in rural Maine, he spent hours chatting with strangers on CB radio. His handle was Big Red, for his hair. Transmitters lined the walls of his bedroom, and he persuaded his father to attach two directional antennas to the roof of their house. CB radio was associated primarily with truck drivers, but Doyon and others used it to form the sort of virtual community that later appeared on the Internet, with self-selected nicknames, inside jokes, and an earnest desire to effect change. + +Doyon’s mother died when he was a child, and he and his younger sister were reared by their father, who they both say was physically abusive. Doyon found solace, and a sense of purpose, in the CB-radio community. He and his friends took turns monitoring the local emergency channel. One friend’s father bought a bubble light and affixed it to the roof of his car; when the boys heard a distress call from a stranded motorist, he’d drive them to the side of the highway. There wasn’t much they could do beyond offering to call 911, but the adventure made them feel heroic. + +Small and wiry, with a thick New England accent, Doyon was fascinated by “Star Trek” and Isaac Asimov novels. When he saw an ad in Popular Mechanics for a build-your-own personal-computer kit, he asked his grandmother to buy it for him, and he spent months figuring out how to put it together and hook it up to the Internet. Compared with the sparsely populated CB airwaves, online chat rooms were a revelation. “I just click a button, hit this guy’s name, and I’m talking to him,” Doyon recalled recently. “It was just breathtaking.” + +At the age of fourteen, he ran away from home, and two years later he moved to Cambridge, Massachusetts, a hub of the emerging computer counterculture. The Tech Model Railroad Club, which had been founded thirty-four years earlier by train hobbyists at M.I.T., had evolved into “hackers”—the first group to popularize the term. Richard Stallman, a computer scientist who worked in M.I.T.’s Artificial Intelligence Laboratory at the time, says that these early hackers were more likely to pass around copies of “Gödel, Escher, Bach” than to incite technological warfare. “We didn’t have tenets,” Stallman said. “It wasn’t a movement. It was just a thing that people did to impress each other.” Some of their “hacks” were fun (coding video games); others were functional (improving computer-processing speeds); and some were pranks that took place in the real world (placing mock street signs near campus). Michael Patton, who helped run the T.M.R.C. in the seventies, told me that the original hackers had unwritten rules and that the first one was “Do no damage.” + +In Cambridge, Doyon supported himself through odd jobs and panhandling, preferring the freedom of sleeping on park benches to the monotony of a regular job. In 1985, he and a half-dozen other activists formed an electronic “militia.” Echoing the Animal Liberation Front, they called themselves the Peoples Liberation Front. They adopted aliases: the founder, a towering middle-aged man who claimed to be a military veteran, called himself Commander Adama; Doyon went by Commander X. Inspired by the Merry Pranksters, they sold LSD at Grateful Dead shows and used some of the cash to outfit an old school bus with bullhorns, cameras, and battery chargers. They also rented a basement apartment in Cambridge, where Doyon occasionally slept. + +Doyon was drawn to computers, but he was not an expert coder. In a series of conversations over the past year, he told me that he saw himself as an activist, in the radical tradition of Abbie Hoffman and Eldridge Cleaver; technology was merely his medium of dissent. In the eighties, students at Harvard and M.I.T. held rallies urging their schools to divest from South Africa. To help the protesters communicate over a secure channel, the P.L.F. built radio kits: mobile FM transmitters, retractable antennas, and microphones, all stuffed inside backpacks. Willard Johnson, an activist and a political scientist at M.I.T., said that hackers were not a transformative presence at rallies. “Most of our work was still done using a bullhorn,” he said. + +In 1992, at a Grateful Dead concert in Indiana, Doyon sold three hundred hits of acid to an undercover narcotics agent. He was sentenced to twelve years in Pendleton Correctional Facility, of which he served five. While there, he developed an interest in religion and philosophy and took classes from Ball State University. + +Netscape Navigator, the first commercial Web browser, was released in 1994, while Doyon was incarcerated. When he returned to Cambridge, the P.L.F. was still active, and their tools had a much wider reach. The change, Doyon recalls, “was gigantic—it was the difference between sending up smoke signals and being able to telegraph someone.” Hackers defaced an Indian military Web site with the words “Save Kashmir.” In Serbia, hackers took down an Albanian site. Stefan Wray, an early online activist, defended such tactics at an “anti-Columbus Day” rally in New York. “We see this as a form of electronic civil disobedience,” he told the crowd. + +In 1999, the Recording Industry Association of America sued Napster, the file-sharing service, for copyright infringement. As a result, Napster was shut down in 2001. Doyon and other hackers disabled the R.I.A.A. site for a weekend, using a Distributed Denial of Service, or DDoS, attack, which floods a site with so much data that it slows down or crashes. Doyon defended his actions, employing the heightened rhetoric of other “hacktivists.” “We quickly came to understand that the battle to defend Napster was symbolic of the battle to preserve a free internet,” he later wrote. + +One day in 2008, Doyon and Commander Adama met at the P.L.F.’s basement apartment in Cambridge. Adama showed Doyon the Web site of the Epilepsy Foundation, on which a link, instead of leading to a discussion forum, triggered a series of flashing colored lights. Some epileptics are sensitive to strobes; out of sheer malice, someone was trying to induce seizures in innocent people. There had been at least one victim already. + +Doyon was incensed. He asked Adama who would do such a thing. + +“Ever hear of a group called Anonymous?” Adama said. + +---------- + +In 2003, Christopher Poole, a fifteen-year-old insomniac from New York City, launched 4chan, a discussion board where fans of anime could post photographs and snarky comments. The focus quickly widened to include many of the Internet’s earliest memes: LOLcats, Chocolate Rain, RickRolls. Users who did not enter a screen name were given the default handle Anonymous. + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_a18505-600.jpg) + +“I need to talk about my inner life.” + +Poole hoped that anonymity would keep things irreverent. “We have no intention of partaking in intelligent discussions concerning foreign affairs,” he wrote on the site. One of the highest values within the 4chan community was the pursuit of “lulz,” a term derived from the acronym LOL. Lulz were often achieved by sharing puerile jokes or images, many of them pornographic or scatological. The most shocking of these were posted on a part of the site labelled /b/, whose users called themselves /b/tards. Doyon was aware of 4chan, but considered its users “a bunch of stupid little pranksters.” Around 2004, some people on /b/ started referring to “Anonymous” as an independent entity. + +It was a new kind of hacker collective. “It’s not a group,” Mikko Hypponen, a leading computer-security researcher, told me—rather, it could be thought of as a shape-shifting subculture. Barrett Brown, a Texas journalist and a well-known champion of Anonymous, has described it as “a series of relationships.” There was no membership fee or initiation. Anyone who wanted to be a part of Anonymous—an Anon—could simply claim allegiance. + +Despite 4chan’s focus on trivial topics, many Anons considered themselves crusaders for justice. They launched vigilante campaigns that were purposeful, if sometimes misguided. More than once, they posed as underage girls in order to entrap pedophiles, whose personal information they sent to the police. Other Anons were apolitical and sowed chaos for the lulz. One of them posted images on /b/ of what looked like pipe bombs; another threatened to blow up several football stadiums and was arrested by the F.B.I. In 2007, a local news affiliate in Los Angeles called Anonymous “an Internet hate machine.” + +In January, 2008, Gawker Media posted a video in which Tom Cruise enthusiastically touted the benefits of Scientology. The video was copyright-protected, and the Church of Scientology sent a cease-and-desist letter to Gawker, asking that the video be removed. Anonymous viewed the church’s demands as attempts at censorship. “I think it’s time for /b/ to do something big,” someone posted on 4chan. “I’m talking about ‘hacking’ or ‘taking down’ the official Scientology Web site.” An Anon used YouTube to issue a “press release,” which included stock footage of storm clouds and a computerized voice-over. “We shall proceed to expel you from the Internet and systematically dismantle the Church of Scientology in its present form,” the voice said. “You have nowhere to hide.” Within a few weeks, the YouTube video had been viewed more than two million times. + +Anonymous had outgrown 4chan. The hackers met in dedicated Internet Relay Chat channels, or I.R.C.s, to coördinate tactics. Using DDoS attacks, they caused the main Scientology Web site to crash intermittently for several days. Anons created a “Google bomb,” so that a search for “dangerous cult” would yield the main Scientology site at the top of the results page. Others sent hundreds of pizzas to Scientology centers in Europe, and overwhelmed the church’s Los Angeles headquarters with all-black faxes, draining the machines of ink. The Church of Scientology, an organization that reportedly has more than a billion dollars in assets, could withstand the depletion of its ink cartridges. But its leaders, who had also received death threats, contacted the F.B.I. to request an investigation into Anonymous. + +On March 15, 2008, several thousand Anons marched past Scientology churches in more than a hundred cities, from London to Sydney. In keeping with the theme of anonymity, the organizers decided that all the protesters should wear versions of the same mask. After considering Batman, they settled on the Guy Fawkes mask worn in “V for Vendetta,” a dystopian movie from 2005. “It was available in every major city, in large quantities, for cheap,” Gregg Housh, one of the organizers of the protests and a well-known Anon, told me. The mask was a caricature of a man with rosy cheeks, a handlebar mustache, and a wide grin. + +Anonymous did not “dismantle” the Church of Scientology. Still, the Tom Cruise video remained online. Anonymous had proved its tenacity. The collective adopted a bombastic slogan: “We are Legion. We do not forgive. We do not forget. Expect us.” + +---------- + +In 2010, Doyon moved to Santa Cruz, California, to join a local movement called Peace Camp. Using wood that he stole from a lumberyard, he built a shack in the mountains. He borrowed WiFi from a nearby mansion, drew power from salvaged solar panels, and harvested marijuana, which he sold for cash. + +At the time, the Peace Camp activists were sleeping on city property as a protest against a Santa Cruz anti-homelessness law that they considered extreme. Doyon appeared at Peace Camp meetings and offered to promote their cause online. He had an unkempt red beard and wore a floppy beige hat and quasi-military fatigues. Some of the activists called him Curbhugger Chris. + +Kelley Landaker, a member of Peace Camp, spoke with Doyon several times about hacking. Doyon sometimes bragged about his technical aptitude, but Landaker, an expert programmer, was unimpressed. “He was more of a spokesman than a hands-on-the-keyboard type of person,” Landaker told me. But the movement needed a passionate leader more than it needed a coder. “He was very enthusiastic and very outspoken,” Robert Norse, also a member of Peace Camp, told me. “He created more media attention for the issue than anyone I’ve seen, and I’ve been doing this for twenty years.” + +Commander Adama, Doyon’s superior in the P.L.F., who still lived in Cambridge and communicated with him via e-mail, had ordered Doyon to monitor Anonymous. Doyon’s brief was to observe their methods and to recruit members to the P.L.F. Recalling his revulsion at the Epilepsy Foundation hack, Doyon initially balked. Adama argued that the malicious hackers were a minority within Anonymous, and that the collective might inspire powerful new forms of activism. Doyon was skeptical. “The biggest movement in the world is going to come from 4chan?” he said. But, out of loyalty to the P.L.F., he obeyed Adama. + +Doyon spent much of his time at the Santa Cruz Coffee Roasting Company, a café downtown, hunched over an Acer laptop. The main Anonymous I.R.C. did not require a password. Doyon logged in using the name PLF and followed along. Over time, he discovered back channels where smaller, more dedicated groups of Anons had dozens of overlapping conversations. To participate, you had to know the names of the back channels, which could be changed to deflect intruders. It was not a highly secure system, but it was adaptable. “These simultaneous cabals keep centralization from happening,” Gabriella Coleman, an anthropologist at McGill University, told me. + +Some Anons proposed an action called Operation Payback. As the journalist Parmy Olson wrote in a 2012 book, “We Are Anonymous,” Operation Payback started as another campaign in support of file-sharing sites like the Pirate Bay, a successor to Napster, but the focus soon broadened to include political speech. In late 2010, at the behest of the State Department, several companies, including MasterCard, Visa, and PayPal, stopped facilitating donations to WikiLeaks, the vigilante organization that had released hundreds of thousands of diplomatic cables. In an online video, Anonymous called for revenge, promising to lash out at the companies that had impeded WikiLeaks. Doyon, attracted by the anti-corporate spirit of the project, decided to participate. + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_a18473-600.jpg) + +During Operation Payback, in early December, Anonymous directed new recruits, or noobs, to a flyer headed “How to Join the Fucking Hive,” in which participants were instructed to “FIX YOUR GODDAMN INTERNET. THIS IS VERY FUCKING IMPORTANT.” They were also asked to download Low Orbit Ion Cannon, an easy-to-use tool that is publicly available. Doyon downloaded the software and watched the chat rooms, waiting for a cue. When the signal came, thousands of Anons fired at once. Doyon entered a target URL—say, www.visa.com—and, in the upper-right corner, clicked a button that said “IMMA CHARGIN MAH LAZER.” (The operation also relied on more sophisticated hacking.) Over several days, Operation Payback disabled the home pages of Visa, MasterCard, and PayPal. In court filings, PayPal claimed that the attack had cost the company five and a half million dollars. + +To Doyon, this was activism made tangible. In Cambridge, protesting against apartheid, he could not see immediate results; now, with the tap of a button, he could help sabotage a major corporation’s site. A banner headline on the Huffington Post read “MasterCard DOWN.” One gloating Anon tweeted, “There are some things WikiLeaks can’t do. For everything else, there’s Operation Payback.” + +---------- + +In the fall of 2010, the Peace Camp protests ended. With slight concessions, the anti-homelessness law remained in effect. Doyon hoped to use the tactics of Anonymous to reinvigorate the movement. He recalls thinking, “I could wield Anonymous against this tiny little city government and they would just be fucking wrecked. Plan was we were finally going to solve this homelessness problem, once and for all.” + +Joshua Covelli, a twenty-five-year-old Anon who went by the nickname Absolem, admired Doyon’s decisiveness. “Anonymous had been this clusterfuck of chaos,” Covelli told me. With Commander X, “there seemed to be a structure set up.” Covelli worked as a receptionist at a college in Fairborn, Ohio, and knew nothing about Santa Cruz politics. But when Doyon asked for help with Operation Peace Camp, Covelli e-mailed back immediately: “I’ve been waiting to join something like that my entire life.” + +Doyon, under the name PLF, invited Covelli into a private I.R.C.: + +> Absolem: Sorry to be so rude . . . Is PLF part of Anonymous or separate? +> +> Absolem: I was just asking because you all seem very organized in chat. +> +> PLF: You are not in the least rude. I am pleased to meet you. PLF is 22 year old hacker group originally from Boston. I started hacking in 81, not with computers but PBX (telephones). +> +> PLF: We are all older 40 or over. Some of us are former military or intelligence. One of us, Commander Adama is currently sought by an alphabet soup of cops and spooks and in hiding. +> +> Absolem: Wow that’s legit. I am really interested in helping this out in some way and Anonymous just seems too chaotic. I have some computer skills but very noob in hacking. I have some tools but no Idea how to use them. + +With ritual solemnity, Doyon accepted Covelli’s request to join the P.L.F.: + +> PLF: Encrypt the fuck out of all sensitive material that might incriminate you. +> +> PLF: Yep, work with any PLFer to get a message to me. Call me . . . Commander X for now. + +In 2012, the Associated Press called Anonymous “a group of expert hackers”; Quinn Norton, in Wired, wrote that “Anonymous had figured out how to infiltrate anything,” resulting in “a wild string of brilliant hacks.” In fact some Anons are gifted coders, but the vast majority possess little technical skill. Coleman, the anthropologist, told me that only a fifth of Anons are hackers—the rest are “geeks and protesters.” + +On December 16, 2010, Doyon, as Commander X, sent an e-mail to several reporters. “At exactly noon local time tomorrow, the Peoples Liberation Front and Anonymous will remove from the Internet the Web site of the Santa Cruz County government,” he wrote. “And exactly 30 minutes later, we will return it to normal function.” + +The data-center staff for Santa Cruz County saw the warning and scrambled to prepare for the attack. They ran security scans on the servers and contacted A.T. & T., the county’s Internet provider, which suggested that they alert the F.B.I. + +The next day, Doyon entered a Starbucks and booted up his laptop. Even for a surfing town, he was notably eccentric: a homeless-looking man wearing fatigues and typing furiously. Covelli met him in a private chat room. + +> PLF: Go to Forum, sign in—and look at top right menu bar “chat.” Thats Ops for today. Thank you for standing with us. +> +> Absolem: Anything for PLF, sir. + +They both opened DDoS software. Though only a handful of people were participating in Operation Peace Camp, Doyon gave orders as if he were addressing legions of troops: + +> PLF: ATTENTION: Everyone who supports the PLF or considers us their friend—or who cares about defeating evil and protecting the innocent: Operation Peace Camp is LIVE and an action is underway. TARGET: www.co.santa-cruz.ca.us. Fire At Will. Repeat: FIRE! +> +> Absolem: got it, sir. + +The data-center staff watched their servers, which showed a flurry of denial-of-service requests. Despite their best efforts, the site crashed. Twenty-five minutes later, Doyon decided that he had made his point. He typed “CEASE FIRE,” and the county’s site flickered back to life. (Despite the attack, the city’s anti-homelessness law did not change.) + +Doyon hardly had time to celebrate before he grew anxious. “I got to leave,” he typed to Covelli. He fled to his shack in the mountains. Doyon was right to be wary: an F.B.I. agent had been snooping in the I.R.C. The F.B.I. obtained a warrant to search Doyon’s laptop. + +A few weeks later, Doyon’s food ran out, and he returned to town. While he was at the Santa Cruz Coffee Roasting Company, two federal agents entered the shop. They brought him to the county police station. Doyon called Ed Frey, a lawyer and the founder of Peace Camp, who met him at the station. Doyon told Frey about his alter ego as Commander X. + +Doyon was released, but the F.B.I. kept his laptop, which was full of incriminating evidence. Frey, a civil-rights lawyer who knew little about cybersecurity, drove Doyon back to his hillside encampment. “What are you going to do?” Frey asked. + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_a18447-600.jpg) + +“Zach is in the gifted-and-talented-and-you’re-not class.” + +He spoke in cinematic terms. “Run like hell,” he said. “I will go underground, try to stay free as long as I can, and keep fighting the bastards any way possible.” Frey gave him two twenty-dollar bills and wished him luck. + +---------- + +Doyon hitchhiked to San Francisco and stayed there for three months. He spent his days at Coffee to the People, a quirky café in the Haight-Ashbury district, where he would sit for hours in front of his computer, interrupted only by outdoor cigarette breaks. + +In January, 2011, Doyon contacted Barrett Brown, the journalist and Anon. “What are we going to do next?” Doyon asked. + +“Tunisia,” Brown said. + +“Yeah, it’s a country in the Middle East,” Doyon said. “What about it?” + +“We’re gonna take down its dictator,” Brown said. + +“Oh, they have a dictator?” Doyon said. + +A couple of days later, Operation Tunisia began. Doyon volunteered to spam Tunisian government e-mail addresses in an attempt to clog their servers. “I would take the text of the press release for that op and just keep sending it over and over again,” he said. “Sometimes, I was so busy that I would just put ‘fuck you’ and send it.” In one day, the Anons brought down the Web sites of the Tunisian Stock Exchange, the Ministry of Industry, the President, and the Prime Minister. They replaced the Web page of the President’s office with an image of a pirate ship and the message “Payback is a bitch, isn’t it?” + +Doyon often spoke of his online battles as if he had just crawled out of a foxhole. “Dude, I turned black from doing it,” he told me. “My face, from all the smoke—it would cling to me. I would look up and I would literally be like a raccoon.” Most nights, he camped out in Golden Gate Park. “I would look at myself in the mirror and I’d be like, O.K., it’s been four days—maybe I should eat, bathe.” + +Anonymous-affiliated operations continued to be announced on YouTube: Operation Libya, Operation Bahrain, Operation Morocco. As protesters filled Tahrir Square, Doyon participated in Operation Egypt. A Facebook page disseminated information, including links to a “care package” for protesters on the ground. The package, distributed through the file-sharing site Megaupload, contained encryption software and a primer on defending against tear gas. Later, when the Egyptian government disabled Internet and cellular networks within the country, Anonymous helped the protesters find alternative ways to get online. + +In the summer of 2011, Doyon succeeded Adama as Supreme Commander of the P.L.F. Doyon recruited roughly half a dozen new members and attempted to position the P.L.F. as an élite squad within Anonymous. Covelli became one of his technical advisers. Another hacker, Crypt0nymous, made YouTube videos; others did research or assembled electronic care packages. Unlike Anonymous, the P.L.F. had a strict command structure. “X always called the shots on everything,” Covelli said. “It was his way or no way.” A hacker who founded a blog called AnonInsiders told me over encrypted chat that Doyon was willing to act unilaterally—a rare thing within Anonymous. “When we wanted to start an op, he didn’t mind if anyone would agree or not,” he said. “He would just write the press release by himself, list all the targets, open the I.R.C. channel, tell everyone to go in there, and start the DDoSing.” + +Some Anons viewed the P.L.F. as a vanity project and Doyon as a laughingstock. “He’s known for his exaggeration,” Mustafa Al-Bassam, an Anon who went by Tflow, told me. Others, even those who disapproved of Doyon’s egotism, grudgingly acknowledged his importance to the Anonymous movement. “He walks that tough line of sometimes being effective and sometimes being in the way,” Gregg Housh said, adding that he and other prominent Anons had faced similar challenges. + +Publicly, Anonymous persists in claiming to be non-hierarchical. In “We Are Legion,” a 2012 documentary about Anonymous by Brian Knappenberger, one activist uses the metaphor of a flock of birds, with various individuals taking turns drifting toward the front. Gabriella Coleman told me that, despite such claims, something resembling an informal leadership class did emerge within Anonymous. “The organizer is really important,” she said. “There are four or five individuals who are really good at it.” She counted Doyon among them. Still, Anons tend to rebel against institutional structure. In a forthcoming book about Anonymous, “Hacker, Hoaxer, Whistleblower, Spy,” Coleman writes that, among Anons, “personal identity and the individual remain subordinate to a focus on the epic win—and, especially, the lulz.” + +Anons who seek individual attention are often dismissed as “egofags” or “namefags.” (Many Anons have yet to outgrow their penchant for offensive epithets.) “There are surprisingly few people who violate the rule” against attention-seeking, Coleman says. “Those who do, like X, are marginalized.” Last year, in an online discussion forum, a commenter wrote, “I stopped reading his BS when he started comparing himself to Batman.” + +Peter Fein, an online activist known by the nickname n0pants, was among the many Anons who were put off by Doyon’s self-aggrandizing rhetoric. Fein browsed the P.L.F. Web site, which featured a coat of arms and a manifesto about the group’s “epic battle for the very soul of humanity.” Fein was dismayed to find that Doyon had registered the site using his real name, leaving himself and possibly other Anons vulnerable to prosecution. “I’m basically okay with people DDoSing,” Fein recalls telling Doyon over private chat. “But if you’re going to do it, you’ve got to cover your ass.” + +On February 5, 2011, the Financial Times reported that Aaron Barr, the C.E.O. of a cybersecurity firm called HBGary Federal, had identified the “most senior” members of Anonymous. Barr’s research suggested that one of the top three was Commander X, a hacker based in California, who could “manage some significant firepower.” Barr contacted the F.B.I. and offered to share his work with them. + +Like Fein, Barr had seen that the P.L.F. site was registered to Christopher Doyon at an address on Haight Street. Based on Facebook and I.R.C. activity, Barr concluded that Commander X was Benjamin Spock de Vries, an online activist who had lived near the Haight Street address. Barr approached de Vries on Facebook. “Please tell the folks there that I am not out to get you guys,” Barr wrote. “Just want the ‘leadership’ to know what my intent is.” + +“ ‘Leadership’ lmao,” de Vries responded. + +Days after the Financial Times story appeared, Anonymous struck back. HBGary Federal’s Web site was defaced. Barr’s personal Twitter account was hijacked, thousands of his e-mails were leaked online, and Anons released his address and other personal information—a punishment known as doxing. Barr resigned from HBGary Federal within the month. + +---------- + +In April, 2011, Doyon left San Francisco and hitchhiked around the West, camping in parks at night and spending his days at Starbucks outlets. In his backpack he kept his laptop, his Guy Fawkes mask, and several packs of Pall Malls. + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_a18563-600.jpg) + +“This is what I learned during my summer at TED camp.” + +He followed internal Anonymous news. That spring, six élite Anons, all of whom had been instrumental in deflecting Barr’s investigation, formed a group called Lulz Security, or LulzSec. As their name indicated, they felt that Anonymous had become too self-serious; they aimed to bring the lulz back. While Anonymous continued supporting Arab Spring protesters, LulzSec hacked the Web site of PBS and posted a fake story claiming that the late rapper Tupac Shakur was alive in New Zealand. + +Anons often share text through the Web site Pastebin.com. On the site, LulzSec issued a statement that read, “It has come to our unfortunate attention that NATO and our good friend Barrack Osama-Llama 24th-century Obama have recently upped the stakes with regard to hacking. They now treat hacking as an act of war.” The loftier the target, the greater the lulz. On June 15th, LulzSec took credit for crashing the C.I.A.’s Web site, tweeting, “Tango down—cia.gov—for the lulz.” + +On June 20, 2011, Ryan Cleary, a nineteen-year-old member of LulzSec, was arrested for the DDoS attacks on the C.I.A. site. The next month, F.B.I. agents arrested fourteen other hackers for DDoS attacks on PayPal seven months earlier. Each of the PayPal Fourteen, as they became known, faced fifteen years in prison and a five-hundred-thousand-dollar fine. They were charged with conspiracy and intentional damage to protected computers under the Computer Fraud and Abuse Act. (The law allows for wide prosecutorial discretion and was widely criticized after Aaron Swartz, an Internet activist who was facing thirty-five years in prison, committed suicide last year.) + +A petition was circulated on behalf of Jake (Topiary) Davis, a member of LulzSec, who needed help paying his legal fees. Doyon entered an I.R.C. to promote Davis’s cause: + +> CommanderX: Please sign the petition and help Topiary… +> +> toad: you are an attention whore +> +> toad: so you get attention +> +> CommanderX: Toad your an asshole. +> +> katanon: sigh + +Doyon had grown increasingly brazen. He DDoS’ed the Web site of the Chamber of Commerce of Orlando, Florida, after activists there were arrested for feeding the homeless. He launched the attacks from public WiFi networks, using his personal laptop, without making much effort to cover his tracks. “That’s brave but stupid,” a senior member of the P.L.F. who asked to be called Kalli told me. “He didn’t seem to care if he was caught. He was a suicide hacker.” + +Two months later, Doyon participated in a DDoS strike against San Francisco’s Bay Area Rapid Transit, protesting an incident in which a BART police officer had killed a homeless man named Charles Hill. Doyon appeared on the “CBS Evening News” to defend the action, his voice disguised and his face obscured by a bandanna. He compared DDoS attacks to civil disobedience. “It’s no different, really, than taking up seats at the Woolworth lunch counters,” he said. Bob Schieffer, the CBS anchor, snickered and said, “It’s not quite the civil-rights movement, as I see it.” + +On September 22, 2011, in a coffee shop in Mountain View, California, Doyon was arrested and charged with causing intentional damage to a protected computer. He was detained for a week and released on bond. Two days later, against his lawyer’s advice, he called a press conference on the steps of the Santa Cruz County Courthouse. His hair in a ponytail, he wore dark sunglasses, a black pirate hat, and a camouflage bandanna around his neck. + +In characteristically melodramatic fashion, Doyon revealed his identity. “I am Commander X,” he told reporters. He raised his fist. “I am immensely proud, and humbled to the core, to be a part of the idea called Anonymous.” He told a journalist, “All you need to be a world-class hacker is a computer and a cool pair of sunglasses. And the computer is optional.” + +Kalli worried that Doyon was placing his ego above the safety of other Anons. “It’s the weakest link in the chain that ends up taking everyone down,” he told me. Josh Covelli, the Anon who had been eager to help Doyon with Operation Peace Camp, told me that his “jaw dropped” when he saw a video of Doyon’s press conference online. “The way he presented himself and the way he acted had become more unhinged,” Covelli said. + +Three months later, Doyon’s pro-bono lawyer, Jay Leiderman, was in a federal court in San Jose. Leiderman had not heard from Doyon in a couple of weeks. “I’m inquiring as to whether there’s a reason for that,” the judge said. Leiderman had no answer. Doyon was absent from another hearing two weeks later. The prosecutor stated the obvious: “It appears as though the defendant has fled.” + +---------- + +Operation Xport was the first Anonymous operation of its kind. The goal was to smuggle Doyon, now a fugitive wanted for two felonies, out of the country. The coördinators were Kalli and a veteran Anon who had met Doyon at an acid party in Cambridge during the eighties. A retired software executive, he was widely respected within Anonymous. + +Doyon’s ultimate destination was the software executive’s house, deep in rural Canada. In December, 2011, he hitchhiked to San Francisco and made his way to an Occupy encampment downtown. He found his designated contact, who helped him get to a pizzeria in Oakland. At 2 A.M., Doyon, using the pizzeria’s WiFi, received a message on encrypted chat. + +“Are you near a window?” the message read. + +“Yeah,” Doyon typed. + +“Look across the street. Do you see the green mailbox? In exactly fifteen minutes, go and stand next to that mailbox and set your backpack down, and lay your mask on top of it.” + +For a few weeks, Doyon shuttled among safe houses in the Bay Area, following instructions through encrypted chat. Eventually, he took a Greyhound bus to Seattle, where he stayed with a friend of the software executive. The friend, a wealthy retiree, spent hours using Google Earth to help Doyon plot a route to Canada. They went to a camping-supplies store, and the friend spent fifteen hundred dollars on gear for Doyon, including hiking boots and a new backpack. Then he drove Doyon two hours north and dropped him off in a remote area, several hundred miles from the border, where Doyon met up with Amber Lyon. + +Months earlier, Lyon, a broadcast journalist, had interviewed Doyon for a CNN segment about Anonymous. He liked her report, and they stayed in touch. Lyon asked to join Doyon on his escape, to shoot footage for a possible documentary. The software executive thought that it was “nuts” to take the risk, but Doyon invited her anyway. “I think he wanted to make himself a face of the movement,” Lyon told me. For four days, she filmed him as he hiked north, camping in the woods. “It wasn’t very organized,” Lyon recalls. “He was functionally homeless, so he just kind of wandered out of the country.” + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_a18506-600.jpg) + +“This is the barn where we keep our feelings. If a feeling comes to you, bring it out here and lock it up.” + +On February 11, 2012, a press release appeared on Pastebin. “The PLF is delighted to announce that Commander X, aka Christopher Mark Doyon, has fled the jurisdiction of the USA and entered the relative safety of the nation of Canada,” it read. “The PLF calls upon the government of the USA to come to its senses and cease the harassment, surveillance—and arrest of not only Anonymous, but all activists.” + +---------- + +In Canada, Doyon spent a few days with the software executive in a small house in the woods. In a chat with Barrett Brown, Doyon was effusive. + +> BarrettBrown: you have enough safe houses, etc? . . . +> +> CommanderX: Yes I am good here, money and houses a plenty in Canada. +> +> CommanderX: Amber Lyon asked me on camera about you. +> +> CommanderX: I think you will like my reply, and fuck the trolls Barrett. I have always loved you and always will. +> +> CommanderX: :-) +> +> CommanderX: I told her you were a hero. +> +> BarrettBrown: you’re a hero . . . +> +> BarrettBrown: glad you’re safe for now +> +> BarrettBrown: let me know if you need anything +> +> CommanderX: I am, and if this works we can get others out to . . . . +> +> BarrettBrown: good, we’re going to need that + +Ten days after Doyon’s escape, the Wall Street Journal reported that Keith Alexander, then the N.S.A. and U.S. Cyber Command director, had held classified meetings in the White House and elsewhere during which he expressed concern about Anonymous. Within two years, Alexander warned, the group might be capable of destabilizing national power grids. General Martin Dempsey, the chairman of the Joint Chiefs of Staff, told the Journal that an enemy of the U.S. “could give cyber malware capability to some fringe group,” adding, “We have to get after this.” + +On March 8th, a briefing on cybersecurity was held for members of Congress at a Sensitive Compartmented Information Facility near the Capitol Building. Many of the country’s top security officials attended the briefing, including Alexander, Dempsey, Robert Mueller, the head of the F.B.I., and Janet Napolitano, the Secretary of Homeland Security. Attendees were shown a computer simulation of what a cyberattack on the Eastern Seaboard’s electrical supply might look like. Anonymous was not yet capable of mounting an attack on this scale, but security officials worried that they might join forces with other, more sophisticated groups. “As we were dealing with this ever-increasing presence on the Net and ever-increasing risk, the government nuts and bolts were still being worked out,” Napolitano told me. When discussing potential cybersecurity threats, she added, “We often used Anonymous as Exhibit A.” + +Anonymous might be the most powerful nongovernmental hacking collective in the world. Even so, it has never demonstrated an ability or desire to damage any key elements of public infrastructure. To some cybersecurity experts, the dire warnings about Anonymous sounded like fearmongering. “There’s a big gap between declaring war on Orlando and pulling off a Stuxnet attack,” James Andrew Lewis, a senior fellow at the Center for Strategic and International Studies, told me, referring to the elaborate cyberstrike carried out by the U.S. and Israel against Iranian nuclear sites in 2007. Yochai Benkler, a professor at Harvard Law School, told me, “What we’ve seen is the use of drumbeating as justification for major defense spending of a form that would otherwise be hard to justify.” + +Keith Alexander, who recently retired from the government, declined to comment for this story, as did representatives from the N.S.A., the F.B.I., the C.I.A., and the D.H.S. Although Anons have never seriously compromised government computer networks, they have a record of seeking revenge against individuals who anger them. Andy Purdy, the former head of the national-cybersecurity division of the D.H.S., told me that “a fear of retaliation,” both institutional and personal, prevents government representatives from speaking out against Anonymous. “Everyone is vulnerable,” he said. + +---------- + +On March 6, 2012, Hector Xavier Monsegur, a key member of LulzSec with the screen name Sabu, was revealed to be an F.B.I. informant. In exchange for a reduced sentence, Monsegur had spent several months undercover, helping to gather evidence against other LulzSec members. The same day, five leading Anons were arrested and charged with several crimes, including computer conspiracy. An F.B.I. official told Fox News, “This is devastating to the organization. We’re chopping off the head of LulzSec.” Over the next ten months, Barrett Brown was indicted on seventeen federal charges, most of which were later dropped. (He will be sentenced in October.) + +Doyon was distraught, but he continued to hack—and to seek attention. He appeared, masked, at a Toronto screening of a documentary about Anonymous. He gave an interview to a reporter from the National Post and boasted, without substantiation, “We have access to every classified database in the U.S. government. It’s a matter of when we leak the contents of those databases, not if.” + +In January, 2013, after another Anon started an operation about the rape of a teen-age girl in Steubenville, Ohio, Doyon repurposed LocalLeaks, a site he had created two years earlier, as a clearinghouse for information about the rape. Like many Anonymous efforts, LocalLeaks was both influential and irresponsible. It was the first site to widely disseminate the twelve-minute video of a Steubenville High School graduate joking about the rape, which inflamed public outrage about the story. But the site also perpetuated several false rumors about the case and it failed to redact a court document, thus accidentally revealing the rape victim’s name. Doyon admitted to me that his strategy of releasing unexpurgated materials was controversial, but he recalled thinking, “We could either gut the Steubenville Files . . . or we could release everything we know, basically, with the caveat, Hey, you’ve got to trust us.” + +In May, 2013, the Rustle League, a group of online trolls who often provoke Anonymous, hacked Doyon’s Twitter account. Shm00p, one of the leaders of Rustle League, told me, “We’re not trying to cause harm to the guy, but, just, the shit he was saying—it was comical to me.” The Rustle League implanted racist and anti-Semitic messages into Doyon’s account, such as a link to www.jewsdid911.org. + +On August 27, 2013, Doyon posted a note announcing his retirement from Anonymous. “My entire life has been dedicated to fighting for justice and freedom,” he wrote. “ ‘Commander X’ may be invincible, but I am extremely ill from the exhaustion and stress of fighting in this epic global cyber war.” Reactions varied from compassion (“you deserve a rest”) to ridicule (“poor crazy old gnoll. Maybe he has some time for bathing now”). Covelli told me, “The persona has consumed him to the point where he can’t handle it anymore.” + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_roberts-1998-08-17-600.jpg) + +August 17, 1998 “We still have Paris? Just thought I’d check.” + +---------- + +The first Million Mask March took place on November 5, 2013. Several thousand people marched in support of Anonymous, in four hundred and fifty cities around the world. In a sign of how deeply Anonymous had penetrated popular culture, one protester in London removed his Guy Fawkes mask to reveal that he was the actor Russell Brand. + +While I attended the rally in Washington, D.C., Doyon watched a livestream in Canada. I exchanged e-mails with him on my phone. “It is so surreal to sit here, sidelined and out of the game—and watch something that you helped create turn into this,” he wrote. “At least it all made a difference.” + +We arranged a face-to-face meeting. Doyon insisted that I submit to elaborate plans made over encrypted chat. I was to fly to an airport several hours away, rent a car, drive to a remote location in Canada, and disable my phone. + +I found him in a small, run-down apartment building in a quiet residential neighborhood. He wore a green Army-style jacket and a T-shirt featuring one of Anonymous’s logos: a black-suited man with a question mark instead of a face. The apartment was sparsely furnished and smelled of cigarette smoke. He discussed U.S. politics (“I have not voted in many elections—it’s all a rigged game”), militant Islam (“I believe that people in the Nigerian government essentially colluded to create a completely phony Al Qaeda affiliate called Boko Haram”), and his tenuous position within Anonymous (“These people who call themselves trolls are really just rotten, mean, evil people”). + +Doyon had shaved his beard, and he looked gaunt. He told me that he was ill and that he rarely went outside. On his small desk were two laptops, a stack of books about Buddhism, and an overflowing ashtray. A Guy Fawkes mask hung on an otherwise bare yellow wall. He told me, “Underneath the whole X persona is a little old man who is in absolute agony at times.” + +This past Christmas, the founder of the news site AnonInsiders visited him, bearing pie and cigarettes. Doyon asked the friend to succeed him as Supreme Commander of the P.L.F., offering “the keys to the kingdom”—all his passwords, as well as secret files relating to several Anonymous operations. The friend gently declined. “I have a life,” he told me. + +---------- + +On August 9, 2014, at 5:09 P.M. local time, Kareem (Tef Poe) Jackson, a rapper and activist from Dellwood, Missouri, a suburb of St. Louis, tweeted about a crisis unfolding in a neighboring town. “Basically martial law is taking place in Ferguson all perimeters blocked coming and going,” he wrote. “National and international friends Help!!!” Five hours earlier in Ferguson, an unarmed eighteen-year-old African-American, Michael Brown, had been shot to death by a white police officer. The police claimed that Brown had reached for the officer’s gun. Brown’s friend Dorian Johnson, who was with him at the time, said that Brown’s only offense was refusing to leave the middle of the street. + +Within two hours, Jackson received a reply from a Twitter account called CommanderXanon. “You can certainly expect us,” the message read. “See if you can get us some live streams going, that would be useful.” In recent weeks, Doyon, still in Canada, had come out of retirement. In June, two months before his fiftieth birthday, he quit smoking (“#hacktheaddiction #ecigaretteswork #old,” he later tweeted). The following month, after fighting broke out in Gaza, he tweeted in support of Anonymous’s Operation Save Gaza, a series of DDoS strikes against Israeli Web sites. Doyon found the events in Ferguson even more compelling. Despite his idiosyncrasies, he had a knack for being early to a cause. + +“Start collecting URLs for cops, city government,” Doyon tweeted. Within ten minutes, he had created an I.R.C. channel. “Anonymous Operation Ferguson is engaged,” he tweeted. Only two people retweeted the message. + +The next morning, Doyon posted a link to a rudimentary Web site, which included a message to the people of Ferguson—“You are not alone, we will support you in every way possible”—and an ultimatum to the police: “If you abuse, harass or harm in any way the protesters in Ferguson, we will take every Web based asset of your departments and governments off line. That is not a threat, it is a promise.” Doyon appealed to the most visible Anonymous Twitter account, YourAnonNews, which has 1.3 million followers. “Please support Operation Ferguson,” he wrote. A minute later, YourAnonNews complied. That day, the hashtag #OpFerguson was tweeted more than six thousand times. + +The crisis became a top news story, and Anons rallied around Operation Ferguson. As with the Arab Spring operations, Anonymous sent electronic care packages to protesters on the ground, including a riot guide (“Pick up the gas emitter and lob it back at the police”) and printable Guy Fawkes masks. As Jackson and other protesters marched through Ferguson, the police attempted to subdue them with rubber bullets and tear gas. “It looked like a scene from a Bruce Willis movie,” Jackson told me. “Barack Obama hasn’t supported us to the degree Anonymous has,” he said. “It’s comforting to know that someone out there has your back.” + +One site, www.opferguson.com, turned out to be a honeypot—a trap designed to collect the Internet Protocol addresses of visitors and turn them over to law-enforcement agencies. Some suspected Commander X of being a government informant. In the #OpFerguson I.R.C., someone named Sherlock wrote, “Everyone got me scared clicking links. Unless it’s from a name I’ve seen a lot, I just avoid them.” + +Protesters in Ferguson asked the police to reveal the name of the officer who had shot Brown. Several times, Anons echoed this demand. Someone tweeted, “Ferguson police better release the shooter’s name before Anonymous does the work for them.” In a community meeting on August 12th, Jon Belmar, the Chief of the St. Louis Police Department, refused. “We do not do that until they’re charged with an offense,” he said. + +In retaliation, a hacker with the handle TheAnonMessage tweeted a link to what he claimed was a two-hour audio file of a police radio scanner, recorded around the time of Brown’s death. TheAnonMessage also doxed Belmar, tweeting what he purported to be the police chief’s home address, phone number, and photographs of his family—one of his son sleeping on a couch, another of Belmar posing with his wife. “Nice photo, Jon,” TheAnonMessage tweeted. “Your wife actually looks good for her age. Have you had enough?” An hour later, TheAnonMessage threatened to dox Belmar’s daughter. + +Richard Stallman, the first-generation hacker from M.I.T., told me that though he supports many of Anonymous’s causes, he considered these dox attacks reprehensible. Even internally, TheAnonMessage’s actions were divisive. “Why bother doxing people who weren’t involved?” one Anon asked over I.R.C., adding that threatening Belmar’s family was “beyond stupid.” But TheAnonMessage and other Anons continued to seek information that could be used in future dox attacks. The names of Ferguson Police Department employees were available online, and Anons scoured the Internet, trying to suss out which of the officers had killed Brown. + +![](http://www.newyorker.com/wp-content/uploads/2014/09/140908_steig-1999-04-12-600.jpg) + +April 12, 1999“Which thing do I press?” + +In the early morning of August 14th, a few Anons became convinced, based on Facebook photos and other disparate clues, that Brown’s shooter was a thirty-two-year-old man named Bryan Willman. According to a transcript of an I.R.C., one Anon posted a photo of Willman with a swollen face; another noted, “The shooter claimed to have been hit in the face.” Another user, Anonymous|11057, acknowledged that his suspicion of Willman involved “a leap of probably bad logic.” Still, he wrote, “i just can’t shake it. i really truly honestly and without a shred of hard evidence think it’s him.” + +TheAnonMessage seemed amused by the conversation, writing, “#RIPBryanWillman.” Other Anons urged caution. “Please be sure,” Anonymous|2252 wrote. “It’s not just about a man’s life, Anon can easily be turned on by the public if something truly unjust comes of this.” + +The debate went on for more than an hour. Several Anons pointed out that there was no way to confirm that Willman had ever been a Ferguson police officer. + +> Anonymous|3549: @gs we still don’t have a confirmation that bry is even on PD +> +> Intangir: tensions are high enough right now where there is a slim chance someone might care enough to kill him +> +> Anonymous|11057: the only real way to get a confirmation would be an eyewitness report from the scene of the crime. otherwise it’s hearsay and shillery +> +> Anonymous|11057: the fastest way to eliminate a suspect is to call him a suspect . . . we are all terrified of being unjust, but the pegs keep fitting in the holes . . . + +Many Anons remained uncomfortable with the idea of a dox. But around 7 A.M. a vote was taken. According to chat logs, of the eighty or so people in the I.R.C., fewer than ten participated. They decided to release Willman’s personal information. + +> Anonymous|2252: is this going on twitter? +> +> anondepp: lol +> +> Anonymous|2252: via @theanonmessage ? +> +> TheAnonMessage: yup +> +> TheAnonMessage: just did +> +> anondepp: its up +> +> Anonymous|2252: shit +> +> TheAnonMessage: Lord in heaven… +> +> Anonymous|3549: . . .have mercy on our souls +> +> anondepp: lol + +At 9:45 A.M., the St. Louis Police Department responded to TheAnonMessage. “Bryan Willman is not even an officer with Ferguson or St. Louis County PD,” the tweet read. “Do not release more info on this random citizen.” (The F.B.I. later opened an investigation into the hacking of police computers in Ferguson.) Twitter quickly suspended TheAnonMessage, but Willman’s name and address had been reported widely. + +Willman is the head police dispatcher in St. Ann, a suburb west of Ferguson. When the St. Louis Police Department’s Intelligence Unit called to tell him that he had been named as the killer, Willman told me, “I thought it was the weirdest joke.” Within hours, he received hundreds of death threats on his social-media accounts. He stayed in his house for nearly a week, alone, under police protection. “I just want it all to go away,” he told me. He thinks that Anonymous has irreparably harmed his reputation. “I don’t see how they can ever think they can be trusted again,” he said. + +“We are not perfect,” OpFerguson tweeted. “Anonymous makes mistakes, and we’ve made a few in the chaos of the past few days. For those, we apologize.” Though Doyon was not responsible for the errant dox attack, other Anons took the opportunity to shame him for having launched an operation that spiralled out of control. A Pastebin message, distributed by YourAnonNews, read, “You may notice contradictory tweets and information about #Ferguson and #OpFerguson from various Anonymous twitter accounts. Part of why there is dissension about this particular #op is that CommanderX is considered a ‘namefag/facefag’—a known entity who enjoys or at least doesn’t shun publicity—which is considered by most Anonymous to be bad form, for some probably fairly obvious reasons.” + +On his personal Twitter account, Doyon denied any involvement with Op Ferguson and wrote, “I hate this shit. I don’t want drama and I don’t want to fight with people I thought were friends.” Within a couple of days, he was sounding hopeful again. He recently retweeted messages reading, “You call them rioters, we call them voices of the oppressed” and “Free Tibet.” + +Doyon is still in hiding. Even Jay Leiderman, his attorney, does not know where he is. Leiderman says that, in addition to the charges in Santa Cruz, Doyon may face indictment for his role in the PayPal and Orlando attacks. If he is arrested and convicted on all counts, he could spend the rest of his life in prison. Following the example of Edward Snowden, he hopes to apply for asylum with the Russians. When we spoke, he used a lit cigarette to gesture around his apartment. “How is this better than a fucking jail cell? I never go out,” he said. “I will never speak with my family again. . . . It’s an incredibly high price to pay to do everything you can to keep people alive and free and informed.” + +-------------------------------------------------------------------------------- + +via: http://www.newyorker.com/magazine/2014/09/08/masked-avengers + +作者:[David Kushner][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.newyorker.com/contributors/david-kushner diff --git a/sources/talk/20140905 Why Is Huffington Post Running A Multi-Part Series To Promote The Lies Of A Guy Who Pretended To Invent Email.md b/sources/talk/20140905 Why Is Huffington Post Running A Multi-Part Series To Promote The Lies Of A Guy Who Pretended To Invent Email.md new file mode 100644 index 0000000000..539dd14442 --- /dev/null +++ b/sources/talk/20140905 Why Is Huffington Post Running A Multi-Part Series To Promote The Lies Of A Guy Who Pretended To Invent Email.md @@ -0,0 +1,103 @@ +Why Is Huffington Post Running A Multi-Part Series To Promote The Lies Of A Guy Who Pretended To Invent Email? +================================================================================ +**from the that's-just-wrong dept** + +I thought this story had ended a few years ago. Back in 2012, we wrote about how The Washington Post and some other big name media outlets were claiming that a guy named V.A. Shiva Ayyadurai had "invented email" in 1978. The problem was that [it wasn't even close to true][1] and relied on a number of total misconceptions about email, software and copyright law. Ayyadurai and some of his friends have continued to play up the claim that he "invented" email, but it simply was never true, and it's reaching a level that seems truly bizarre. Ayyadurai may have done some interesting things, but his continued false insistence that he invented email is reaching really questionable levels. And, now it's gone absolutely nutty, with the Huffington Post running [a multi-part series][2] (up to five separate articles so far -- all done in the past 10 days) all playing up misleading claims saying that Ayyadurai invented email, even though even a basic understanding of the history shows he did not. + +Let's take care of the basics first, and then we'll dig in on what's going on here, because it's really quite ridiculous. First off, no one denies that V.A. Shiva Ayyadurai -- an apparently very bright 14-year-old at the time -- wrote an email software program for the University of Medicine and Dentistry of New Jersey (UMDNJ) in 1978. By all accounts, it was a perfectly decent email system that allowed the UMDNJ staff to send electronic messages. Further, no one doubts that, in 1981, Ayyadurai registered the copyright on his program, which was called EMAIL. The problems are that (1) email was invented long before 1978, (2) the copyright is merely on the specific software code, not the idea of email, and (3) while Ayyadurai may have independently recreated the basics of email (and even added a nice feature), none of his work was even remotely related to what later became the standards of email. What's most sickening about this is that as part of this new PR campaign, Ayyadurai is ridiculously arguing that the reason no one believes him isn't because he's simply wrong, but because they can't stand to believe that "a dark-skinned immigrant kid, 14 years old," invented email, and that it was done in "one of the poorest cities in the US" rather than at a famous university. + +Again, that might make for a nice story line if there were some factual basis behind it, but there isn't. The history of email [is well-documented][3] from [multiple sources][4] and it began way, way before 1978. And while early versions were somewhat crude, by 1978 they had basically everything that Ayyadurai claims to have invented (it is entirely believable that Ayyadurai, as a bright kid, independently came up with the same ideas, but he was hardly the first). There was a messaging system called MAILBOX at MIT in 1965. You can read [all the details of it here][5], including source code. Ray Tomlinson is frequently credited with inventing the modern concept of email for the internet by establishing the @ symbol (in 1972) as a way of determining both the user and which computer to send the email to. By 1975, there were things like email folders (invented by Larry Roberts) and some other basic email apps. As is noted, by 1976 -- two years before Ayyadurai wrote his app -- email was *75% of all ARPANET traffic*. + +So, let's get to the Huffington Post trying to whitewash all of this factual history out of existence. + +It started on August 20th, with an article by Larry Weber, CEO of Racepoint Global, kicking off a supposed "series" called "The History of Email." Except that the series has little to do with the history of email at all. It's just about Ayyadurai writing his particular email program in 1978. Great story. Smart kid done good. Has nothing to do with the invention of email. Weber, though, calls it [The Boy Who Invented Email][6]. At this point, it should be worth questioning why Weber suddenly decided this was such an interesting story. If you don't know, Weber is one of PR's [biggest names][7], having built one of the most successful PR companies in history. It seems odd that he "just happened" to come across Ayyadurai's fake story and decided to help create a 5-part series about it. I have reached out to both Weber and the Huffington Post to ask if Weber has any financial relationship with Ayyadurai. As I publish this, neither has responded. The post will be updated if I hear from either. None of the posts in the series disclose any such relationship. Nor does the Huffington Post indicate that this is a "sponsored" post as far as I can tell. + +The [second][8] and [third][9] articles in the series are both written by Leslie Michelson, the Director of High Performance and Research Computing at Rutgers Medical School (which took over UMDNJ a while back). More importantly, in 1978 he was the Director of the Laboratory Computer Network at UMDNJ, and apparently "challenged" Ayyadurai to create an electronic interoffice mail system. The [fourth article][10] in the series is by Robert Field, a technologist at Rutgers Medical School and, in 1978, a colleague of Ayyadurai at UMDNJ. See a pattern? Huffington Post also [interviewed Ayyadurai][11] for HuffPost Live in which he mostly attacks anyone who challenges his story, comparing himself to Philo T. Farnsworth -- except in that case, Farnsworth actually invented TV before anyone else. Ayyadurai did not do that with email. Apparently there are two more in this series that are still to come. + +When you look at the collection of articles, they all repeat the same basic things: Ayyadurai did create an email system and "it was recognized by the federal government." This is misleading in the extreme. It's amusing how they all use the exact same language. Larry Weber claims: + +> On August 30, 1982, **the US government officially recognized V.A. Shiva Ayyadurai as the inventor of email** by awarding him the first US Copyright for "Email," "Computer Program for Electronic Mail System," for his 1978 invention. This was awarded at a time when Copyright was the only way to protect software inventions. + +Leslie Michaelson says: + +> On August 30,1982, V.A. Shiva Ayyadurai **received official recognition as the inventor of email from the U.S. government**, for the work he had done in 1978. + +Every article in the series includes this image of his copyright registration: + +[![](https://i.imgur.com/AscOfQh.png)][12] + +Except, if you know anything about copyright, you know that what they're claiming is not at all true. The registration of copyrights is about as close to a rubber-stamping process as is possible. It has nothing to do with "inventions" at all, but is rather a copyright for the specific software program. Ayyadurai received a copyright on his email program and that's it. It has absolutely nothing to do with him being the inventor of email. + +Microsoft holds a copyright on Windows, but no one claims it "invented" the glass things you look outside your building with. Hell, no one even claims that Microsoft invented windowing user interfaces, because it did not. The name of the program and the fact that you can copyright it does not make you the "inventor" of the concept behind it. + +Weber, Ayyadurai and his friends try to counter the "it's a copyright, not a patent" claim with an incredibly misleading response. Here's Michelson: + +> On August 30, 1982, Shiva was issued the first Copyright for "Email", "Computer Program for Electronic Mail System." At that time, Copyright was the equivalent of a patent, as there was no other way to protect software inventions. Only in 1980 was the Copyright Act of 1976 amended to protect software. Patent law had not even caught up to software in 1980 + +Copyright was not, and has never been "the equivalent of a patent." Copyright and patents are two very different things. Copyright protects specific expression. Patents protect inventions. That's why copyright protected only the specific code that Ayyadurai wrote, rather than the concept of email. While it's true that software wasn't considered patentable by many at the time, that doesn't, in any way, mean that a copyright on a particular piece of software was the equivalent in any way, to a patent at the time. + +To further their argument, both Weber and Michelson include nearly identical, but slightly different, infographics on the history of email, which (of course) start in 1978 with Ayyadurai's work. According to those charts, email was barely even a thing outside of UMDNJ until 1985 when offline email readers come about. The infographic is the work of the impressive sounding International Center for Integrative Systems. What's left out is that the "[Founder and Chairman][13]" of the International Center for Integrative Systems happens to be... a guy named V.A. Shiva Ayyadurai. The same infographic tosses in a "milestone" in email in 1995, when "Echomail" launched. Doesn't sound familiar? Echomail was a company started by... V.A. Shiva Ayyadurai. + +The rest of the articles seem to just focus on attacking those who actually were involved in the invention of email and who dared to speak out against Ayyadurai's claims. The story, which includes no actual support, is that the folks at BBN decided in the early 80s that email security was a big business opportunity and rewrote history. Whether or not BBN played up their role in the history of email is debatable, but none of that changes the fact that they (and many others) were using email, and had email software, long before Ayyadurai did anything. At no point do any of them address the long history of email systems long before Ayyadurai arrived on the scene. Instead, they just talk about this grand conspiracy theory, claiming (ridiculously) that if BBN were outed as not being the inventor of email (even though no one really claims the company was the inventor of email) it would harm its business. That makes no sense at all. First of all, BBN's history of work related to the internet is long and well-detailed (there's even a [fantastic book][14] about it). Even if it had nothing to do with email, it's other work is much more impressive. Second, the company is currently owned by defense contracting giant Raytheon. Does anyone honestly think Raytheon cares one way or the other who "invented email"? + +All of their "debunking" claims rest entirely on a RAND report written by David Crocker in 1977, where they take two sentences totally out of context. Here's what Ayyadurai, Weber and their friends claim Crocker said: + +> "At this time, no attempt is being made to emulate a full-scale, inter-organizational mail system. The fact that the system is intended for use in various organizational contexts and by users of differing expertise makes it almost impossible to build a system which responds to all users' needs." + +It's telling that Ayyadurai and his friends never actually tell you the name of the report or link to it. Because actually reading what Crocker wrote would undermine their argument. The report is called "Framework and Functions of the 'MS' Personal Message System" and you can read it here. Not only do Ayyadurai and his friends take Crocker entirely out of context, the two sentences above are not even contiguous sentences. They're not even on the same page. The first sentence is on page 18 of the paper. And it just says that this particular implementation (the program called MS) is focused on certain facets, and for MS "no attempt is being made to emulate a full-scale inter-organization mail system" even though the entire point of the paper is how various email implementations are clearly replicating inter-organizational mail systems. The second sentence comes on page 21 (with lots in between) and just focuses on the fact that lots of users have very different requests and desires, and it's impossible to satisfy everyone -- and that it, alone, is beyond the scope of this project. He's not, as Ayyadurai implies, claiming that building an interoffice email system is impossible. He's claiming that creating a full system that satisfies absolutely everyone is impossible. However, he does make it clear that other components are being worked on, and when combined could create a more functional email system. Here's that part, back in context: + +> To construct a fully-detailed and monolithic message processing environment requires a much larger effort than has been possible with MS. In addition, the fact that the system is intended for use in various organizational contexts and by users of differing expertise makes it almost impossible to build a system which responds to all users' needs. Consequently, important segments of a full message environment have received little or no attention and decisions have been made with the expectation that other Unix capabilities will be used to augment MS. For example, MS has fairly primitive data-base management filing and cataloging) facilities and message folders have been implemented in a way which allows them to be modified by programs, such as text editors, which access them directly, rather than through the message system. + +From the actual source documents (which, again, Ayyadurai and his friends fail to link to and totally misrepresent), it's clear that all Crocker is saying is that no single system will satisfy everyone's current interests. He's not saying it's impossible to create an interoffice email system. He's just saying that lots of different people have lots of different needs for an interoffice email system, and for the team building MS, it would be too difficult to satisfy everyone's exact requests, so they're focusing on certain features, knowing others will add other components later. And, given that people are still working to improve upon email today, it seems that's still basically true. + +Back to the rest of the paper, which actually does a tremendous job undermining basically all of Ayyadurai's claims (again, which suggests why no one names or links to the full paper) -- in the very first paragraph (again, this is prior to Ayyadurai doing anything) it talks about research for "computer software" for "electronic mail." Ooops. It goes on: + +> This report describes the design of one such program--the "MS" message system. Early electronic mail systems have existed on the larger computers. MS incorporates and expands upon many of the functions and concepts of such systems within an integrated package... + +In other words, the very paper that Ayyadurai and his friends insist prove that there was no email prior to 1978 talks in depth about a variety of email programs. Again, remember that this was written in 1977. This is not historical revisionism. It goes on: + +> One of the earliest and most popular applications of the ARPANET computer communications network has been the transfer of text messages between people using different computers. This "electronic mail" capability was originally grafted onto existing informal facilities; however, they proved inadequate. A large network greatly expands the base of potential communicators; when coupled with the communication convenience of a message system, there results a considerable expansion to the list of features desired by users. Systems which have responded to these increased user needs have resided on medium- and large-scaled computers. + +In other words, lots of folks are working on email systems. Ayyadurai tries to brush all those aside by saying that his actually included things like "folders." But again, Crocker's paper notes: + +> Messages reside in file "folders" and may contain any number of fields, or "components." + +It actually has a whole section on folders. It also shows some sample messages at the time, showing "to," "from," "cc," "subject," and "message" fields, showing that the very basics of interoffice mail (such as "cc" -- standing for carbon copy, which was a standard bit of interoffice mail) had already moved into email. Here's a screenshot (which you can click for a larger version): + +[![](https://i.imgur.com/KJW7BnAm.png)][15] + +Ayyadurai has built up his entire reputation around the (entirely false) claim that he "invented" email. His bio, his Twitter feed and his website all position himself as having invented email. He didn't. It looks like he wrote an implementation of an email system in 1978, long after others were working on similar things. He may have added some nice features, including the "blind carbon copy/bcc" concept (Update: Nope, bcc was in a [1977 RFC][16]). He also appears to have potentially been ahead of others in making a full address book be a part of the email system. He may, in fact, be the first person who shortened "electronic mail" to "email" which is cool enough, and he'd have an interesting claim if that's all he claimed. Unfortunately, he's claiming much, much more than that. He's set up [an entire website][17] in which he accuses lots of folks, including Techdirt, of unfairly "attacking" him. He apparently believes that some of the attacks on him are [because][18] he spoke out against corruption in India. Or because people think only rich white people can invent stuff. None of that is accurate. There's a simple fact, and it's that Ayyadurai did not invent email. + +He does not even attempt to counter any of the actual facts. The documents that are presented are misleading or out of context. He misrepresents what a copyright registration means. And his main "smoking gun," in support of his claim that people are trying to unfairly write him out of history, is presented in a misleading way, out of context, with two entirely separate sentences pushed together to pretend they say something they didn't. + +He's clearly quite proud of the email software he wrote in 1978, and that's great. He should be. It may have made some incremental improvements on what else was already out there, but it is not inventing email. It's also entirely possible that he was wholly unaware of everything else that was out there. And, again, that's great. We've talked many times in the past about multiple people coming up with the same ideas around the same time. Ayyadurai should be quite proud of what he's done. But he's simply not telling the truth when he claims to have invented email. His website is full of accolades from the past, including his Westinghouse award (which is a prestigious award for high schoolers), his copyrights and his later patents. There are local newspaper clippings. That's all great. It reminds me of the folder my mother has on all the nice things that happened to me as a kid. But none of it means he invented email. + +It's unclear why Huffington Post is publishing this ludicrous and disproven narrative. It's unclear why one of the biggest names in PR is involved in all of this, though you can take some guesses. But there are facts, and they include that "electronic mail" existed long before V.A. Shiva Ayyadurai wrote his program as a precocious teenager. Huffington Post is either not disclosing a paid-for series of posts (which would be a massive ethical breach) or they've been taken for a ride. Neither option speaks well of HuffPo and its journalistic integrity. + +-------------------------------------------------------------------------------- + +via: https://www.techdirt.com/articles/20140901/07280928386/huffpo-publishes-bizarre-misleading-factually-incorrect-multi-part-series-pretending-guy-invented-email-even-though-he-didnt.shtml + +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://www.techdirt.com/articles/20120222/11132917842/how-guy-who-didnt-invent-email-got-memorialized-press-smithsonian-as-inventor-email.shtml +[2]:http://www.huffingtonpost.com/news/the-history-of-email/ +[3]:http://www.nethistory.info/History%20of%20the%20Internet/email.html +[4]:http://www.ir.bbn.com/~craig/email.pdf +[5]:http://www.multicians.org/thvv/mail-history.html +[6]:http://www.huffingtonpost.com/larry-weber/the-history-of-email-boy-who-invented-email_b_5690783.html +[7]:http://en.wikipedia.org/wiki/Larry_Weber +[8]:http://www.huffingtonpost.com/leslie-p-michelson/the-history-of-email-invention-of-email_b_5707913.html +[9]:http://www.huffingtonpost.com/leslie-p-michelson/history-of-email-introduction_b_5726018.html +[10]:http://www.huffingtonpost.com/robert-field/history-of-email-first-email-system_b_5722000.html +[11]:http://www.huffingtonpost.com/2014/08/28/email-shiva-ayyadurai_n_5731606.html +[12]:https://imgur.com/AscOfQh +[13]:http://integrativesystems.org/board.asp +[14]:http://www.amazon.com/gp/product/0684832674/ref=as_li_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=0684832674&linkCode=as2&tag=techdirtcom-20&linkId=OSP5B7BVSLAG5XNX +[15]:https://imgur.com/KJW7BnA +[16]:http://tools.ietf.org/html/rfc733 +[17]:http://www.inventorofemail.com/index.asp +[18]:http://gizmodo.com/5888702/corruption-lies-and-death-threats-the-crazy-story-of-the-man-who-pretended-to-invent-email \ No newline at end of file diff --git a/sources/talk/20140910 Drab Desktop Try These 4 Beautiful Linux Icon Themes.md b/sources/talk/20140910 Drab Desktop Try These 4 Beautiful Linux Icon Themes.md new file mode 100644 index 0000000000..06cd6c4f82 --- /dev/null +++ b/sources/talk/20140910 Drab Desktop Try These 4 Beautiful Linux Icon Themes.md @@ -0,0 +1,89 @@ +Drab Desktop? Try These 4 Beautiful Linux Icon Themes +================================================================================ +**Ubuntu’s default icon theme [hasn’t changed much][1] in almost 5 years, save for the [odd new icon here and there][2]. If you’re tired of how it looks we’re going to show you a handful of gorgeous alternatives that will easily freshen things up.** + +Do feel free to share links to your own favourite choices in the comments below. + +### Captiva ### + +![Captiva icons, elementary folders and Moka GTK](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/moka-and-captiva.jpg) + +Captiva icons, elementary folders and Moka GTK + +Captiva is a relatively new icon theme that even the least bling-prone user can appreicate. + +Made by DeviantArt user ~[bokehlicia][3], Captiva shuns the 2D flat look of many current icon themes for a softer, rounded look. The icons themselves have an almost material or textured look, with subtle drop shadows and a rich colour palette adding to the charm. + +It doesn’t yet include a set of its own folder icons, and will fallback to using elementary (if available) or stock Ubuntu icons. + +To install Captiva icons in Ubuntu 14.04 you can add the official PPA by opening a new Terminal window and enter the following commands: + + sudo add-apt-repository ppa:captiva/ppa + + sudo apt-get update && sudo apt-get install captiva-icon-theme + +Or, if you’re not into software source cruft, by downloading the icon pack direct from the DeviantArt page. To install, extract the archive and move the resulting folder to the ‘.icons‘ directory in Home. + +However you choose to install it, you’ll need to apply this (and every other theme on this list) using a utility like [Unity Tweak Tool][4]. + +- [Captiva Icon Theme on DeviantArt][5] + +### Square Beam ### + +![Square Beam icon set with Orchis GTK](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/squarebeam.jpg) + +Square Beam icon set with Orchis GTK + +After something a bit angular? Check out Square Beam. It offers a more imposing visual statement than other sets on this list, with electric colours, harsh gradients and stark iconography. It claims to have more than 30,000 different icons (!) included (you’ll forgive me for not counting) so you should find very few gaps in its coverage. + +- [Square Beam Icon Theme on GNOME-Look.org][6] + +### Moka & Faba ### + +![Moka/Faba Mono Icons with Orchis GTK](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/moka-faba.jpg) + +Moka/Faba Mono Icons with Orchis GTK + +The Moka icon suite needs little introduction. In fact, I’d wager a good number of you are already using it + +With pastel colours, soft edges and simple icon artwork, Moka is a truly standout and comprehensive set of application icons. It’s best used with its sibling, Faba, which Moka will inherit so as to fill in all the system icons, folders, panel icons, etc. The combined result is…well, you’ve got eyes! + +For full details on how to install on Ubuntu head over to the official project website, link below. + +- [Download Moka and Faba Icon Themes][7] + +### Compass ### + +![Compass Icon Theme with Numix Blue GTK](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/compass1.jpg) + +Compass Icon Theme with Numix Blue GTK + +Last on our list, but by no means least, is Compass. This is a true adherent to the ’2D, two-tone’ UI design right now. It may not be as visually diverse as others on this list, but that’s the point. It’s consistent and uniform and all the better for it — just check out those folder icons! + +It’s available to download and install manually through GNOME-Look (link below) or through the Nitrux Artwork PPA: + + sudo add-apt-repository ppa:nitrux/nitrux-artwork + + sudo apt-get update && sudo apt-get install compass-icon-theme + +- [Compass Icon Theme on GNOME-Look.org][8] + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/09/4-gorgeous-linux-icon-themes-download + +作者:[Joey-Elijah Sneddon][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2010/02/lucid-gets-new-icons-for-rhythmbox-ubuntuone-memenu-more +[2]:http://www.omgubuntu.co.uk/2012/08/new-icon-theme-lands-in-lubuntu-12-10 +[3]:http://bokehlicia.deviantart.com/ +[4]:http://www.omgubuntu.co.uk/2014/06/unity-tweak-tool-0-7-development-download +[5]:http://bokehlicia.deviantart.com/art/Captiva-Icon-Theme-479302805 +[6]:http://gnome-look.org/content/show.php/Square-Beam?content=165094 +[7]:http://mokaproject.com/moka-icon-theme/download/ubuntu/ +[8]:http://gnome-look.org/content/show.php/Compass?content=160629 \ No newline at end of file diff --git a/sources/talk/20140910 Why Do Some Old Programming Languages Never Die.md b/sources/talk/20140910 Why Do Some Old Programming Languages Never Die.md new file mode 100644 index 0000000000..7e33b05047 --- /dev/null +++ b/sources/talk/20140910 Why Do Some Old Programming Languages Never Die.md @@ -0,0 +1,86 @@ +(translating by runningwater) +Why Do Some Old Programming Languages Never Die? +================================================================================ +> We like what we already know. + +![](http://a4.files.readwrite.com/image/upload/c_fill,h_900,q_70,w_1600/MTIzMDQ5NjY0MTUxMjU4NjM2.jpg) + +Many of today’s most well-known programming languages are old enough to vote. PHP is 20. Python is 23. HTML is 21. Ruby and JavaScript are 19. C is a whopping 42 years old. + +Nobody could have predicted this. Not even computer scientist [Brian Kernighan][1], co-author of the very first book on C, which is still being printed today. (The language itself was the work of Kernighan's [co-author Dennis Ritchie][2], who passed away in 2011.) + +“I dimly recall a conversation early on with the editors, telling them that we’d sell something like 5,000 copies of the book,” Kernighan told me in a recent interview. “We managed to do better than that. I didn’t think students would still be using a version of it as a textbook in 2014.” + +What’s especially remarkable about C's persistence is that Google developed a new language, Go, specifically to more efficiently solve the problems C solves now. Still, it’s hard for Kernighan to imagine something like Go outright killing C no matter how good it is. + +“Most languages don’t die—or at least once they get to a certain level of acceptance they don’t die," he said. "C still solves certain problems better than anything else, so it sticks around.” + +### Write What You Know ### + +Why do some computer languages become more successful than others? Because developers choose to use them. That’s logical enough, but it gets tricky when you want to figure out why developers choose to use the languages they do. + +Ari Rabkin and Leo Meyerovich are researchers from, respectively, Princeton and the University of California at Berkeley who devoted two years to answering just that question. Their resulting paper, [Empirical Analysis of Programming Language Adoption][3], describes their analysis of more than 200,000 Sourceforge projects and polling of more than 13,000 programmers. + +Their main finding? Most of the time programmers choose programming languages they know. + +“There are languages we use because we’ve always used them,” Rabkin told me. “For example, astronomers historically use IDL [Interactive Data Language] for their computer programs, not because it has special features for stars or anything, but because it has tremendous inertia. They have good programs they’ve built with it that they want to keep.” + +In other words, it’s partly thanks to name recognition that established languages retain monumental staying power. Of course, that doesn’t mean popular languages don’t change. Rabkin noted that the C we use today is nothing like the language Kernighan first wrote about, which probably wouldn’t be fully compatible with a modern C compiler. + +“There’s an old, relevant joke in which an engineer is asked which language he thinks people will be using in 30 years and he says, ‘I don’t know, but it’ll be called Fortran’,” Rabkin said. “Long-lived languages are not the same as how they were when they were designed in the '70s and '80s. People have mostly added things instead of removed because that doesn’t break backwards compatibility, but many features have been fixed.” + +This backwards compatibility means that not only can programmers continue to use languages as they update programs, they also don’t need to go back and rewrite the oldest sections. That older ‘legacy code’ keeps languages around forever, but at a cost. As long as it’s there, people’s beliefs about a language will stick around, too. + +### PHP: A Case Study Of A Long-Lived Language ### + +Legacy code refers to programs—or portions of programs—written in outdated source code. Think, for instance, of key programming functions for a business or engineering project that are written in a language that no one supports. They still carry out their original purpose and are too difficult or expensive to rewrite in modern code, so they stick around, forcing programmers to turn handsprings to ensure they keep working even as other code changes around them. + +Any language that's been around more than a few years has a legacy-code problem of some sort, and PHP is no exception. PHP is an interesting example because its legacy code is distinctly different from its modern code, in what proponents say—and critics admit—is a huge improvement. + +Andi Gutmans is a co-inventor of the Zend Engine, the compiler that became standard by the time PHP4 came around. Gutmans said he and his partner originally wanted to improve PHP3, and were so successful that the original PHP inventor, Rasmus Lerdorf, joined their project. The result was a compiler for PHP4 and its successor, PHP5. + +As a consequence, the PHP of today is quite different from its progenitor, the original PHP. Yet in Gutmans' view, the base of legacy code written in older PHP versions keeps alive old prejudices against the language—such as the notion that PHP is riddled with security holes, or that it can't "scale" to handle large computing tasks. + +"People who criticize PHP are usually criticizing where it was in 1998,” he says. “These people are not up-to-date with where it is today. PHP today is a very mature ecosystem.” + +Today, Gutmans says, the most important thing for him as a steward is to encouraging people to keep updating to the latest versions. “PHP is a big enough community now that you have big legacy code bases," he says. "But generally speaking, most of our communities are on PHP5.3 at minimum.” + +The issue is that users never fully upgrade to the latest version of any language. It’s why many Python users are still using Python 2, released in 2000, instead of Python 3, released in 2008. Even after six years major users like Google still aren’t upgrading. There are a variety of reasons for this, but it made many developers wary about taking the plunge. + +“Nothing ever dies," Rabkin says. "Any language with legacy code will last forever. Rewrites are expensive and if it’s not broke don’t fix it.” + +### Developer Brains As Scarce Resources ### + +Of course, developers aren’t choosing these languages merely to maintain pesky legacy code. Rabkin and Meyerovich found that when it comes to language preference, age is just a number. As Rabkin told me: + +> A thing that really shocked us and that I think is important is that we grouped people by age and asked them how many languages they know. Our intuition was that it would gradually rise over time; it doesn’t. Twenty-five-year-olds and 45-year-olds all know about the same number of languages. This was constant through several rewordings of the question. Your chance of knowing a given language does not vary with your age. + +In other words, it’s not just old developers who cling to the classics; young programmers are also discovering and adopting old languages for the first time. That could be because the languages have interesting libraries and features, or because the communities these developers are a part of have adopted the language as a group. + +“There’s a fixed amount of programmer attention in the world,” said Rabkin. “If a language delivers enough distinctive value, people will learn it and use it. If the people you exchange code and knowledge with you share a language, you’ll want to learn it. So for example, as long as those libraries are Python libraries and community expertise is Python experience, Python will do well.” + +Communities are a huge factor in how languages do, the researchers discovered. While there's not much difference between high level languages like Python and Ruby, for example, programmers are prone to develop strong feelings about the superiority of one over the other. + +“Rails didn’t have to be written in Ruby, but since it was, it proves there were social factors at work,” Rabkin says. “For example, the thing that resurrected Objective-C is that the Apple engineering team said, ‘Let’s use this.’ They didn’t have to pick it.” + +Through social influence and legacy code, our oldest and most popular computer languages have powerful inertia. How could Go surpass C? If the right people and companies say it ought to. + +“It comes down to who is better at evangelizing a language,” says Rabkin. + +Lead image by [Blake Patterson][4] + +-------------------------------------------------------------------------------- + +via: http://readwrite.com/2014/09/02/programming-language-coding-lifetime + +作者:[Lauren Orsini][a] +译者:[runningwater](https://github.com/runningwater) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://readwrite.com/author/lauren-orsini +[1]:http://en.wikipedia.org/wiki/Brian_Kernighan +[2]:http://en.wikipedia.org/wiki/Dennis_Ritchie +[3]:http://asrabkin.bitbucket.org/papers/oopsla13.pdf +[4]:https://www.flickr.com/photos/blakespot/2444037775/ \ No newline at end of file diff --git a/sources/talk/20140911 5 Reasons Why I Hate GNU or Linux--Do You Hate (Love) Linux.md b/sources/talk/20140911 5 Reasons Why I Hate GNU or Linux--Do You Hate (Love) Linux.md new file mode 100644 index 0000000000..29017fad07 --- /dev/null +++ b/sources/talk/20140911 5 Reasons Why I Hate GNU or Linux--Do You Hate (Love) Linux.md @@ -0,0 +1,100 @@ +5 Reasons Why I Hate GNU/Linux – Do You Hate (Love) Linux? +================================================================================ +This part of Linux, I don’t like to talk very often but sometimes I do really feel some of the aspects related to Linux is real pain. Here are the five points which I come across on a daily basis, almost. + +![5 Reasons Why I Hate Linux](http://www.tecmint.com/wp-content/uploads/2014/09/I-Hate-Linux.jpg) + +5 Reasons Why I Hate Linux + +### 1. Choose from Too Many Good Distros ### + +While reading several on-line forum (a part of my hobby), I very often come across a question like – Hi, I am new to Linux, just [switched over from Windows to Linux][1]. Which Linux Distribution, I should get my hands dirty with? Oh! forgot to mention, I am an Engineering Student. + +As soon as someone posted such question, there is a flood of comments. each distribution’s fan boy tries to make sense that the distro he is using leads all the rest, a few comments may look like: + +1. Get your hands upon Linux Mint or Ubuntu, they are easy to use specially for newbies like you. +1. Ubuntu is Sh** better go with Mint. +1. If you want something like windows, better stay there. +1. Nothing is better than Debian. It is easy to use and contains all the packages you may need. +1. Slackware, for the point, if you learn slack you learn Linux. + At this point, the student who asked question really gets confused and annoyed. +1. CentOS – Nothing like this, when comes to stability. +1. I will recommend Fedora, Bleeding edge technology implementation, you will get a lot to learn. +1. Puppy Linux, SUSE, BSD, Manjaro, Megia, Kali, RedHat Beta, etc,…… + +At the end of discussion, the discussion forum may be used as a paper for research based upon the facts and figure provided in the comments. + +Now think the same in Windows or Mac – One may say are you Insane? Still using Windows XP or Vista but no one will try to prove that windows 8 is better than XP and XP is more on a User Friendly side. You won’t get a fan boy in Mac as well, who is trying to jump into the discussion just to make his point sounds louder. + +You may frequently come across points like – Distros are like religion. These things makes the newbie puzzled. Anyone who have used Linux for a considerable time would be knowing that all the distros are same at the base. It is only the working interface and the way to perform task differs and that too rarely. You are using apt, yum, portage, emerge, spike or ABS who cares as far as the things are done and user is comfortable with it. + +Well the above scenario is not only true in forums and groups on-line, it is sometimes taken to the corporate world. + +I was recently being Interviewed by a company based in Mumbai (India). The person interviewing, asked me several questions and technologies, I have worked with. As per their requirements, I have worked with nearly half of the technologies they were looking for. A few of last conversation as mentioned below. + +**Interviewer**: Do you know kernel editing? (Then he talked to himself for a couple of seconds – no, no not kernel editing, it is a very different thing.) Do you know how to compile a kernel on a monolithic side? + +**Me**: Yes, we just need to make sure what we need to run in future. We need to select those options only that supports our need before compiling the kernel. + +**Interviewer**: How do you compile a kernel? + +**Me**: make menuconfig, fire it as………..(interrupted) + +**Interviewer**: When have you compiled the kernel lastly without any help? + +**Me**: Very recently on my Debian…..(Interrupted) + +**Interviewer**: Debian? Do you know what we does? Debian-Febian is not of our use. We use CentOS. Ok, I will tell the management the result. They will call you. + +**Not to Mention**: I didn’t get the call or job, but certainly the phrase **Debian-febian** forces me to think over and over again. He could have said we don’t use Debian, we use CentOS. The tone of him, was a bit racist, it is spread-ed all over. + +### 2. Some of the very important software has no support in Linux ### + +No! I am not talking about Photoshop. I understand Linux is not build to perform such task. But some backbone softwares required to connect your Android phone to PC for Updation – PC Suite certainly means a lot. I have been looking for a windows PC. + +I know Linux is more like a server side OS. Really? Is not it trying to make a point that, it has been used as a Desktop as well? If Yes! It should have other developed desktop features. For a desktop user security, stability, RAID, Kernel does not mean much. They should get their work done with little or no effort. + +Moreover the companies like Samsung, Sony, Micromax, etc are dealing with Android (Linux) Phones and they have no support to get their phone connected over a Linux PC. + +Don’t drag me in PC suite discussion. For Linux to be a Desktop OS, it still lacks several things, Little or no gaming support – I mean high end gaming. No professional Video and Photo Editing Tools, I Said Professional. And yeah I remember Titanic and Avatar Movies were maid using some kind of FOSS video editor, I am coming to that point. + +Agree or not, Linux still has to go a long way to be a distro for everyone. + +### 3. Linuxer have a habit of living in virtual world ### + +I am a Linux user, and I am superior than you. I can handle terminal much better than you. You know Linux is Everywhere in your wrist watch, mobile phones, remote control. You know what, Hacker’s use Linux. Are you aware as soon as you boot Linux you become hacker. You can do several things from Linux you can’t even think of using Windows and Mac. + +Let me tell you, Linux is now being used in International Space Station. The world’s most successful movies Avatar and Titanic were build using Linux. Last but not the least, world’s 90% supercomputers are using Linux. World’s Top 5 fastest computer are using Linux. Facebook, Linkedin, Google, Yahoo all have their server based on Linux. + +I don’t mean they are wrong. I only mean they keeps on talking about the thing they very little know about. + +### 4. The long hours of compilation and dependency resolution ### + +I am aware of automatic dependency resolution and the program getting smart day by day. Still think from corporate view, I was installing a program say ‘y‘, it had one dependency say ‘**x**‘ which was unable to be resolved automatically. While resolving ‘**x**‘ I came across 8 other dependency, a few of other were dependent on a few other libraries and program. Isn’t it painful? + +The rule of corporate is to have the work done efficiently with less man power and as much less time as possible. Who cares if your piece of codes are coming from Windows or Mac or Linux as far as the work is done. + +### 5. Too much manual work ### + +No matter which distro you choose, you have to manually do a lot a things time-to-time. Lets say you are installing proprietary Nvidia Driver. Now you need to kill **X** manually, may need to edit **Xorg.conf** manually and still may have a broken **X**. Furthermore, you have to make sure that the next time kernel updates, it still be in working condition. + +Think of same on Windows. You have nothing to do other than firing the executables and click** Next, Next, I Agree, Next, Forward, Finish, Reboot** and your system may very rarely have broken GUI. Though the demerit is a broken GUI is not possible to be repaired on Windows but easily on Linux. + +Hey don’t tell me its because of security implementation. If you are installing something using ‘**root**‘, and still needs a lot of things done manually that not security. Some may have a point that it gives you power to configure your system to any extent. My friend at least give him a working interface from where he can configure it to next best level. Why Installer laves him to re-invent the wheel every-time in the name of security and configurability. + +I myself is a Linux fan and have been working on this platform for nearly half a decades. I myself have used Distros of several kind and came to the above conclusion. You may have used a different distro’s and might you’ve came to a such conclusion, where you feel that Linux is not upto the mark. + +Please do share with us, why do you hate (Love) Linux? via our comment section below. + +-------------------------------------------------------------------------------- + +via: http://www.tecmint.com/why-i-hate-linux/ + +作者:[Avishek Kumar][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.tecmint.com/author/avishek/ +[1]:http://www.tecmint.com/useful-linux-commands-for-newbies/ \ No newline at end of file diff --git a/sources/talk/20140912 What' s wrong with IPv4 and Why we are moving to IPv6.md b/sources/talk/20140912 What' s wrong with IPv4 and Why we are moving to IPv6.md new file mode 100644 index 0000000000..1289613263 --- /dev/null +++ b/sources/talk/20140912 What' s wrong with IPv4 and Why we are moving to IPv6.md @@ -0,0 +1,86 @@ +What’s wrong with IPv4 and Why we are moving to IPv6 +================================================================================ +For the past 10 years or so, this has been the year that IPv6 will become wide spread. It hasn’t happened yet. Consequently, there is little widespread knowledge of what IPv6 is, how to use it, or why it is inevitable. + +![IPv4 and IPv6 Comparison](http://www.tecmint.com/wp-content/uploads/2014/09/ipv4-ipv6.gif) + +IPv4 and IPv6 Comparison + +### What’s wrong with IPv4? ### + +We’ve been using **IPv4** ever since RFC 791 was published in 1981. At the time, computers were big, expensive, and rare. IPv4 had provision for **4 billion IP** addresses, which seemed like an enormous number compared to the number of computers. Unfortunately, IP addresses are not use consequently. There are gaps in the addressing. For example, a company might have an address space of **254 (2^8-2)** addresses, and only use 25 of them. The remaining 229 are reserved for future expansion. Those addresses cannot be used by anybody else, because of the way networks route traffic. Consequently, what seemed like a large number in 1981 is actually a small number in 2014. + +The Internet Engineering Task Force (**IETF**) recognized this problem in the early 1990s and came up with two solutions: Classless Internet Domain Router (**CIDR**) and private IP addresses. Prior to the invention of CIDR, you could get one of three network sizes: **24 bits** (16,777,214 addresses), **20 bits** (1,048,574 addresses) and **16 bits** (65,534 addresses). Once CIDR was invented, it was possible to split networks into subnetworks. + +So, for example, if you needed **5 IP** addresses, your ISP would give you a network with a size of 3 bits which would give you **6 IP** addresses. So that would allow your ISP to use addresses more efficiently. Private IP addresses allow you to create a network where each machine on the network can easily connect to another machine on the internet, but where it is very difficult for a machine on the internet to connect back to your machine. Your network is private, hidden. Your network could be very large, 16,777,214 addresses, and you could subnet your private network into smaller networks, so that you could manage your own addresses easily. + +You are probably using a private address right now. Check your own IP address: if it is in the range of **10.0.0.0 – 10.255.255.255** or **172.16.0.0 – 172.31.255.255** or **192.168.0.0 – 192.168.255.255**, then you are using a private IP address. These two solutions helped forestall disaster, but they were stopgap measures and now the time of reckoning is upon us. + +Another problem with **IPv4** is that the IPv4 header was variable length. That was acceptable when routing was done by software. But now routers are built with hardware, and processing the variable length headers in hardware is hard. The large routers that allow packets to go all over the world are having problems coping with the load. Clearly, a new scheme was needed with fixed length headers. + +Still another problem with **IPv4** is that, when the addresses were allocated, the internet was an American invention. IP addresses for the rest of the world are fragmented. A scheme was needed to allow addresses to be aggregated somewhat by geography so that the routing tables could be made smaller. + +Yet another problem with IPv4, and this may sound surprising, is that it is hard to configure, and hard to change. This might not be apparent to you, because your router takes care of all of these details for you. But the problems for your ISP drives them nuts. + +All of these problems went into the consideration of the next version of the Internet. + +### About IPv6 and its Features ### + +The **IETF** unveiled the next generation of IP in December 1995. The new version was called IPv6 because the number 5 had been allocated to something else by mistake. Some of the features of IPv6 included. + +- 128 bit addresses (3.402823669×10³⁸ addresses) +- A scheme for logically aggregating addresses +- Fixed length headers +- A protocol for automatically configuring and reconfiguring your network. + +Let’s look at these features one by one: + +#### Addresses #### + +The first thing everybody notices about **IPv6** is that the number of addresses is enormous. Why so many? The answer is that the designers were concerned about the inefficient organization of addresses, so there are so many available addresses that we could allocate inefficiently in order to achieve other goals. So, if you want to build your own IPv6 network, chances are that your ISP will give you a network of **64 bits** (1.844674407×10¹⁹ addresses) and let you subnet that space to your heart’s content. + +#### Aggregation #### + +With so many addresses to use, the address space can be allocated sparsely in order to route packets efficiently. So, your ISP gets a network space of **80 bits**. Of those 80 bits, 16 of them are for the ISPs subnetworks, and 64 bits are for the customer’s networks. So, the ISP can have 65,534 networks. + +However, that address allocation isn’t cast in stone, and if the ISP wants more smaller networks, it can do that (although probably the ISP would probably simply ask for another space of 80 bits). The upper 48 bits is further divided, so that ISPs that are “**close**” to one another have similar network addresses ranges, to allow the networks to be aggregated in the routing tables. + +#### Fixed length Headers #### + +An **IPv4** header has a variable length. An **IPv6** header always has a fixed length of 40 bytes. In IPv4, extra options caused the header to increase in size. In IPv6, if additional information is needed, that additional information is stored in extension headers, which follow the IPv6 header and are generally not processed by the routers, but rather by the software at the destination. + +One of the fields in the IPv6 header is the flow. A flow is a **20 bit** number which is created pseudo-randomly, and it makes it easier for the routers to route packets. If a packet has a flow, then the router can use that flow number as an index into a table, which is fast, rather than a table lookup, which is slow. This feature makes **IPv6** very easy to route. + +#### Automatic Configuration #### + +In **IPv6**, when a machine first starts up, it checks the local network to see if any other machine is using its address. If the address is unused, then the machine next looks for an IPv6 router on the local network. If it finds the router, then it asks the router for an IPv6 address to use. Now, the machine is set and ready to communicate on the internet – it has an IP address for itself and it has a default router. + +If the router should go down, then the machines on the network will detect the problem and repeat the process of looking for an IPv6 router, to find the backup router. That’s actually hard to do in IPv4. Similarly, if the router wants to change the addressing scheme on its network, it can. The machines will query the router from time to time and change their addresses automatically. The router will support both the old and new addresses until all of the machines have switched over to the new configuration. + +IPv6 automatic configuration is not a complete solution. There are some other things that a machine needs in order to use the internet effectively: the name servers, a time server, perhaps a file server. So there is **dhcp6** which does the same thing as dhcp, only because the machine boots in a routable state, one dhcp daemon can service a large number of networks. + +#### There’s one big problem #### + +So if IPv6 is so much better than IPv4, why hasn’t adoption been more widespread (as of **May 2014**, Google estimates that its IPv6 traffic is about **4%** of its total traffic)? The basic problem is which comes first, the **chicken or the egg**? Somebody running a server wants the server to be as widely available as possible, which means it must have an **IPv4** address. + +It could also have an IPv6 address, but few people would use it and you do have to change your software a little to accommodate IPv6. Furthermore, a lot of home networking routers do not support IPv6. A lot of ISPs do not support IPv6. I asked my ISP about it, and I was told that they will provide it when customers ask for it. So I asked how many customers had asked for it. One, including me. + +By way of contrast, all of the major operating systems, Windows, OS X, and Linux support IPv6 “**out of the box**” and have for years. The operating systems even have software that will allow IPv6 packets to “**tunnel**” within IPv4 to a point where the IPv6 packets can be removed from the surrounding IPv4 packet and sent on their way. + +#### Conclusion #### + +IPv4 has served us well for a long time. IPv4 has some limitations which are going to present insurmountable problems in the near future. IPv6 will solve those problems by changing the strategy for allocating addresses, making improvements to ease the routing of packets, and making it easier to configure a machine when it first joins the network. + +However, acceptance and usage of IPv6 has been slow, because change is hard and expensive. The good news is that all operating systems support IPv6, so when you are ready to make the change, your computer will need little effort to convert to the new scheme. + +-------------------------------------------------------------------------------- + +via: http://www.tecmint.com/ipv4-and-ipv6-comparison/ + +作者:[Jeff Silverman][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.tecmint.com/author/jeffsilverm/ \ No newline at end of file diff --git a/sources/talk/The history of Android/05 - The history of Android.md b/sources/talk/The history of Android/05 - The history of Android.md deleted file mode 100644 index 572d6a3d33..0000000000 --- a/sources/talk/The history of Android/05 - The history of Android.md +++ /dev/null @@ -1,90 +0,0 @@ -alim0x translating - -The history of Android -================================================================================ -![The main alarm screen, setting an alarm, the calculator, and the calculator advanced functions screen.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/calclockonpresszx.png) -The main alarm screen, setting an alarm, the calculator, and the calculator advanced functions screen. -Photo by Ron Amadeo - -Android 0.9 gave us the first look at the Alarm and Calculator apps. The alarm app featured a plain analog clock with a scrolling list of alarms on the bottom. Rather than some kind of on/off switch, alarms were set with a checkbox. Alarms could be set to repeat at certain days of the week, and there was a whole list of selectable, unique alarm sounds. - -The calculator was an all-black app with glossy, round buttons. Through the menu, it was possible to bring up an additional panel with advanced functions. Again consistency was not Google’s strong suit. The on-press highlight on the pi key was red—in the rest of Android 0.9, the on-press highlight was usually orange. In fact, everything used in the calculator was 100 percent custom artwork limited to only the calculator. - -![Google Maps with the menu open and the new directions interface.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/mps092.png) -Google Maps with the menu open and the new directions interface. -Photo by Ron Amadeo - -Google Maps actually worked in Android 0.9—the client could connect to the Google Maps server and pull down tiles. (For our images, remember that Google Maps is cloud based. Even the oldest of clients will still pull down modern map tiles, so ignore the actual map tiles pictured.) The Maps menu got the same all-gray treatment as the browser menu, and the zoom controls were the same as the browser too. The all-important "My Location" button finally arrived, meaning this version of Maps supported GPS location. - -The directions interface was revamped. The weird speech bubbles with misaligned plus buttons were swapped out for a more communicative bookmark icon, the swap field button moved to the left, and the go button was now labeled "Route." - -![The Google Maps layers selector, search history, and the now-broken street view mode.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/maps3.png) -The Google Maps layers selector, search history, and the now-broken street view mode. -Photo by Ron Amadeo - -"Layers" was renamed "Map Mode" and switched to a radio button list. Only one map type was available at a time—you couldn't see traffic on the satellite view, for instance. Buried in the menu was a hastily thrown together search history screen. History seemed like only a proof-of-concept, with giant, blurry search icons that rammed up against search terms on a transparent background. - -Street View used to be a separate app (although it was never made available to the public), but in 0.9 it was integrated into Google Maps as a Map Mode. You could drag the little pegman around, and it would display a popup bubble showing the thumbnail for Street View. Tapping on the thumbnail would launch Street View for that area. At the time, Street View showed nothing other than a scrollable 360 degree image—there was no UI on the interface at all. - -![Our first look at the Google Maps search interface. These shots show the search bar, the results in a list, the results in a map, and a business page.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/manystarbucks.png) -Our first look at the Google Maps search interface. These shots show the search bar, the results in a list, the results in a map, and a business page. -Photo by Ron Amadeo - -Android 0.9 also gave us our first look at the texting app, called "Messaging." Like many early Android designs, Messaging wasn't sure if it should be a dark app or a light app. The first visible screen was the message list, a stark black void of nothingness that looked like it was built on top of the settings interface. After tapping on “New Message" or one of the existing conversations, though, you were taken to a white and blue scrolling list of text messages. The two connected screens couldn’t be more different. - -![The SMS app’s chat window, attachment screen, chat list, and setting.](http://cdn.arstechnica.net/wp-content/uploads/2014/03/sms09.png) -The SMS app’s chat window, attachment screen, chat list, and setting. -Photo by Ron Amadeo - -Messaging supported a range of attachments: you could tack on pictures, audio, or a slideshow to your message. Pictures and audio could be recorded on the fly or pulled from phone storage. Another odd UI choice was that Android already had an established icon for almost everything in the attach menu, but Messaging used all-custom art instead. - -Messaging was one of the first apps to have its own settings screen. Users could request read and delivery reports and set download preferences. - -![The slideshow creator. The right picture shows the menu options.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/slideshow.png) -The slideshow creator. The right picture shows the menu options. -Photo by Ron Amadeo - -The "slideshow" option in attachments would actually launch a fully featured slideshow creator. You could add pictures, choose the slide order, add music, change the duration of each slide, and add text. This was complicated enough to have its own app icon, but amazingly it was buried in the menu of the SMS app. This was one of the few Android apps that was completely unusable in portrait mode—the only way to see the picture and the controls was in landscape. Strangely, it would still rotate to portrait, but the layout just became a train wreck. - -![The Music player’s main navigation page, song list, album list, and “now playing" screen.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/music09.png) -The Music player’s main navigation page, song list, album list, and “now playing" screen. -Photo by Ron Amadeo - -Android 0.9 was the first to bring a music app to Android. The primary screen was mostly just four big, chunky navigation buttons that would take you to each music view. At the bottom of the app was a "now playing" bar that only contained the track name, artist, and a play/pause button. The song list had only a bare minimum interface, only showing the song name, artist, album and runtime. Album art was the only hope of seeing any color in this app. It was displayed as a tiny thumbnail in the album view and as a big, quarter-screen image in the Now Playing view. - -Like most parts of Android in this era, the interface may not have been much to look at, but the features were there. The Now Playing screen had a button for a playlist queue that allowed you to drag songs around, shuffle, repeat, search, and choose background audio. - -![The “Pictures" all album view, individual album view, and a single picture view.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/pictures09.png) -The “Pictures" all album view, individual album view, and a single picture view. -Photo by Ron Amadeo - -The photo gallery was simply called "Pictures." The initial view showed all your albums. The two default ones were "Camera" and a large unified album called "All pictures." The thumbnail for each album was made up of a 2x2 grid of pictures, and every picture got a thick, white frame. - -The individual album view was about what you would expect: a scrolling grid of pictures. You couldn't swipe through individual pictures—large left and right arrows flanking the individual picture had to be tapped on to move through an album. There was no pinch-zoom either; you had to zoom in and out with buttons. - -![Picture editing! These screenshots show an open menu, the “more" menu, cropping, and the settings.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/pics209.png) -Picture editing! These screenshots show an open menu, the “more" menu, cropping, and the settings. -Photo by Ron Amadeo - -"Pictures" looked simple until you hit the menu button and suddenly accessed a myriad of options. Pictures could be cropped, rotated, deleted, or set as a wallpaper or contact icon. Like the browser, all of this was accomplished through a clumsy double-menu system. But again, why do two related menus look completely different? - -Android 0.9 came out a mere two months before the first commercial release of Android. That was just enough time for app developers to make sure their apps worked—and for Google to do some testing and bug squashing before the big release. - ----------- - -![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) - -[Ron Amadeo][a] / Ron is the Reviews Editor at Ars Technica, where he specializes in Android OS and Google products. He is always on the hunt for a new gadget and loves to rip things apart to see how they work. - -[@RonAmadeo][t] - --------------------------------------------------------------------------------- - -via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/5/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://arstechnica.com/author/ronamadeo -[t]:https://twitter.com/RonAmadeo diff --git a/sources/talk/The history of Android/06 - The history of Android.md b/sources/talk/The history of Android/06 - The history of Android.md deleted file mode 100644 index 72b753a658..0000000000 --- a/sources/talk/The history of Android/06 - The history of Android.md +++ /dev/null @@ -1,73 +0,0 @@ -The history of Android -================================================================================ -![The T-Mobile G1](http://cdn.arstechnica.net/wp-content/uploads/2014/04/t-mobile_g1.jpg) -The T-Mobile G1 -Photo by T-Mobile - -### Android 1.0—introducing Google Apps and actual hardware ### - -By October 2008, Android 1.0 was ready for launch, and the OS debuted on the [T-Mobile G1][1] (AKA the HTC Dream). The G1 was released into a market dominated by the iPhone 3G and the [Nokia 1680 classic][2]. (Both of those phones went on to tie for the [best selling phone][3] of 2008, selling 35 million units each.) Hard numbers of G1 sales are tough to come by, but T-Mobile announced the device broke the one million units sold barrier in April 2009. It was way behind the competition by any measure. - -The G1 was packing a single-core 528Mhz ARM 11 processor, an Adreno 130 GPU, 192MB of RAM, and a whopping 256MB of storage for the OS and Apps. It had a 3.2-inch, 320x480 display, which was mounted to a sliding mechanism that revealed a full hardware keyboard. So while Android software has certainly come a long way, the hardware has, too. Today, we can get much better specs than this in a watch form factor: the latest [Samsung smart watch][4] has 512MB of RAM and a 1GHz dual-core processor. - -While the iPhone had a minimal amount of buttons, the G1 was the complete opposite, sporting almost every hardware control that was ever invented. It had call and end call buttons, home, back, and menu buttons, a shutter button for the camera, a volume rocker, a trackball, and, of course, about 50 keyboard buttons. Future Android devices would slowly back away from thousand-button interfaces, with nearly every new flagship lessening the number of buttons. - -But for the first time, people saw Android running on actual hardware instead of a frustratingly slow emulator. Android 1.0 didn't have the smoothness, flare, or press coverage of the iPhone. It wasn't as capable as Windows Mobile 6.5. Still, it was a good start. - -![The default app selection of Android 1.0 and 0.9.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/apps.png) -The default app selection of Android 1.0 and 0.9. -Photo by Ron Amadeo - -The core of Android 1.0 didn't look significantly different from the beta version released two months earlier, but the consumer product brought a ton more apps, including the full suite of Google apps. Calendar, Email, Gmail, IM, Market, Settings, Voice Dialer, and YouTube were all new. At the time, music was the dominant media type on smartphones, the king of which was the iTunes music store. Google didn't have an in-house music service of its own, so it tapped Amazon and bundled the Amazon MP3 store. - -The most important addition to Android 1.0 was the debut of Google's store, called "Android Market Beta." While most companies were content with calling their app catalog some variant of "app store"—meaning a store that sold apps and only apps—Google had much wider ambitions. It went with the much more general name of "Android Market." The idea was that the Android Market would not just house apps, but everything you needed for your Android device. - -![The first Android Market client. Screenshots show the main page, “my downloads," an app page, and an app permissions page.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/market.png) -The first Android Market client. Screenshots show the main page, “my downloads," an app page, and an app permissions page. -Photo by [Google][5] - -At the time, the Android Market only offered apps and games, and developers weren't even able to charge for them. Apple's App Store had a four-month head start on the Android Market, but Google's big differentiator was that Android's store was almost completely open. On the iPhone, apps were subject to review by Apple and had to meet design and technical guidelines. Potential apps also weren't allowed to duplicate the stock functionality. On the Android Market, developers were free to do whatever they wanted, including replacing the stock apps. The lack of control would turn out to be a blessing and a curse. It allowed developers to innovate on the existing functionality, but it also meant even the trashiest applications were allowed in. - -Today, this client is another app that can no longer communicate with Google's servers. Luckily, it's one of the few early Android apps [actually documented][6] on the Internet. The main screen provided links to the common areas like Apps, Games, Search, and Downloads, and the top section had horizontally scrolling icons for featured apps. Search results and the "My Downloads" page displayed apps in a scrolling list, showing the name, developers, cost (at this point, always free), and rating. Individual app pages showed a brief description, install count, comments and ratings from users, and the all-important install button. This early Android Market didn’t support pictures, and the only field for developers was a description box with a 500-character limit. This made things like maintaining a changelog very difficult, as the only spot to put it was in the description. - -Right out of the gate, the Android Market showed permissions that an app required before installing. This is something Apple wouldn't get around to implementing until 2012, after an iOS app was caught [uploading entire address books][7] to the cloud without the user's knowledge. The permissions display gave a full rundown of what permissions an app was using, although this version railroaded users into agreeing. There was an “OK" button, but no way to cancel other than the back button. - -![Gmail showing the inbox, the inbox with the menu open. ](http://cdn.arstechnica.net/wp-content/uploads/2013/12/gmail1.01.png) -Gmail showing the inbox, the inbox with the menu open. -Photo by Ron Amadeo - -The next most important app was probably Gmail. Most of the base functionality was here already. Unviewed messages showed up in bold, and labels displayed as colored tags. Individual messages in the Inbox showed the subject, author(s), and number of replies in a conversation. The trademark Gmail star was here—a quick tap would star or unstar something. As usual for early versions of Android, the Menu housed all the buttons on the main inbox view. Once inside a message, though, things got a little more modern, with "reply" and "forward" buttons as permanent fixtures at the bottom of the screen. Individual replies could be expanded and collapsed just by tapping on them. - -The rounded corners, shadows, and bubbly icons gave the whole app a "cartoonish" look, but it was a good start. Android's function-first philosophy was really coming through here: Gmail supported labels, threaded messaging, searching, and push e-mail. - -![Gmail’s label view, compose screen, and settings on Android 1.0.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/gmail3.png) -Gmail’s label view, compose screen, and settings on Android 1.0. -Photo by Ron Amadeo - -But if you thought Gmail was ugly, the Email app took it to another level. There was no separate inbox or folder view—everything was mashed into a single screen. The app presented you with a list of folders and tapping on one would expand the contents in-line. Unread messages were denoted with a green line on the left, and that was about it for the e-mail interface. The app supported IMAP and POP3 but not Exchange. - ----------- - -![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) - -[Ron Amadeo][a] / Ron is the Reviews Editor at Ars Technica, where he specializes in Android OS and Google products. He is always on the hunt for a new gadget and loves to rip things apart to see how they work. - -[@RonAmadeo][t] - --------------------------------------------------------------------------------- - -via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/6/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://arstechnica.com/gadgets/2008/10/android-g1-review/ -[2]:http://en.wikipedia.org/wiki/Nokia_1680_classic -[3]:http://en.wikipedia.org/wiki/List_of_best-selling_mobile_phones#2008 -[4]:http://arstechnica.com/gadgets/2014/04/review-we-wear-samsungs-galaxy-gear-and-galaxy-fit-so-you-dont-have-to/ -[5]:http://android-developers.blogspot.com/2008/08/android-market-user-driven-content.html -[6]:http://android-developers.blogspot.com/2008/08/android-market-user-driven-content.html -[7]:http://arstechnica.com/gadgets/2012/02/path-addresses-privacy-controversy-but-social-apps-remain-a-risk-to-users/ -[a]:http://arstechnica.com/author/ronamadeo -[t]:https://twitter.com/RonAmadeo \ No newline at end of file diff --git a/sources/tech/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md b/sources/tech/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md index 7ded06d38d..42bf8dce15 100644 --- a/sources/tech/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md +++ b/sources/tech/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md @@ -1,3 +1,4 @@ +Translating by ZTinoZ 10 Useful “Squid Proxy Server” Interview Questions and Answers in Linux ================================================================================ It’s not only to System Administrator and Network Administrator, who listens the phrase Proxy Server every now and then but we too. Proxy Server is now a corporate culture and is the need of the hour. Proxy server now a days is implemented from small schools, cafeteria to large MNCs. Squid (also known as proxy) is such an application which acts as proxy server and one of the most widely used tool of its kind. @@ -128,4 +129,4 @@ via: http://www.tecmint.com/squid-interview-questions/ 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -[a]:http://www.tecmint.com/author/avishek/ \ No newline at end of file +[a]:http://www.tecmint.com/author/avishek/ diff --git a/sources/tech/20140801 What are better alternatives to basic command line utilities.md b/sources/tech/20140801 What are better alternatives to basic command line utilities.md deleted file mode 100644 index e36d0200a9..0000000000 --- a/sources/tech/20140801 What are better alternatives to basic command line utilities.md +++ /dev/null @@ -1,106 +0,0 @@ -What are better alternatives to basic command line utilities -================================================================================ -The command line can be scary especially at the beginning. You might even experience some command-line-induced nightmare. Over time, however, we all realize that the command line is actually not that scary, but extremely useful. In fact, the lack of shell is what gives me an ulcer every time I have to use Windows. The reason for the change in perception is that the command line tools are actually smart. The basic utilities, what you are given to work with on any Linux terminal, are very powerful. But very powerful is never enough. If you want to make your command line experience even more pleasant, here are a few applications that you can download to replace the default ones, and will provide you with far more features than the originals. - -### dfc ### - -As an LVM user, I really like to keep an eye on my hard drive memory usage. I also never really understood why in Windows we have to open the file explorer to know this basic information. Hopefully on Linux, we can use the command. - - $ df -h - -![](https://farm4.staticflickr.com/3858/14768828496_c8a42620a3_z.jpg) - -which gives you the size, usage, free space, ratio, and mount point of every volume on your computer. Notice that you have to pass in the "-h" argument to get all the data in human readable format (gigabytes instead of kilobytes). But you can replace completely df with [dfc][1], which can, without any additional arguments, get you everything that df showed, and throw in a usage graph for each device, and a color code, which makes it a lot easier to read. - -![](https://farm6.staticflickr.com/5594/14791468572_a84d4b6145_z.jpg) - -As a bonus, you can sort the volumes using the argument "-q", define the units that you want to see with "-u", and even export to csv or html format with "-e" - -### dog ### - -Dog is better than cat. At least that is what this program declares. You have to give it credit for once. Everything that the cat command does, [dog][2] does it better. Beyond just outputting some text stream to the console, dog is capable of filtering that stream. You can for example find all images in a web page by using the syntax: - - $ dog --images [URL] - -![](https://farm6.staticflickr.com/5568/14811659823_ea8d22d045_z.jpg) - -Or all the links with: - - dog --links [URL] - -![](https://farm4.staticflickr.com/3902/14788690051_7472680968_z.jpg) - -Besides, dog commands can also do other smaller tasks, like convert to upper or lower case, use different encoding, display the line numbers, and deal with hexadecimal. In short, dog is a must-have to replace cat. - -### advcp ### - -One of the most basic command in Linux is the copy command: cp. It is probably as basic as cd. Yet it cruelly lacks feedback. You can enable the verbose mode to see which files are being copied in real time, but if one of the files is very big, you will be left waiting in front of your screen with no idea of what is really happening behind the scenes. An easy way to fix that is to add a progress bar: what advcp (short for advanced cp) does! Available as a [patched version][3] of the [GNU coreutils][4], advcopy provides you with the acp and amv commands, which are "advanced" versions of cp and mv. Use the syntax: - - $ acp -g [file] [copy] - -to copy a file to another location, and display a progress bar. - -![](https://farm6.staticflickr.com/5588/14605117730_fe611fc234_z.jpg) - -I also advise using an alias in your .barshrc or .zshrc - - alias cp="acp -g" - alias mv="amv -g" - -### The Silver Searcher ### - -Behind this atypical name, [the silver searcher][5] is a utility designed as a replacement for grep and [ack][6]. Intended to be faster than ack, and capable of ignoring files unlike grep, the silver searcher scrolls through your text file looking for the piece that you want. Among other features, it can spit out a colored output, follow symlink, use regular expressions, and even ignore some patterns. - -![](https://farm4.staticflickr.com/3876/14605308117_f966c77140_z.jpg) - -The developers' website provides us with some benchmark statistic on the search speed which, if they are still true, are quite impressive. And cherry on the cake: you can include the utility in Vim in order to call it with a simple shortcut. In two words, smart and fast. - -### plowshare ### - -All fans of the command line like to use wget or one of its alternatives to download things from the internet. But if you use a lot of file sharing websites, like mediafire or rapidshare, you will be glad to know that there is an equivalent to wget dedicated to those websites, which is called [plowshare][7]. Once you install it, you can download files with: - - $ plowdown [URL] - -or upload them with: - - $ plowup [website name] [file] - -given that you have an account for that file sharing website. - -Finally, it is possible to gather information, such as a list of links contained in a shared folder with: - - $ plowlist [URL] - -or the filename, size, hash, etc, with: - - $ plowprobe [URL] - -plowshare is also a good alternative to the slow and excruciating jDownloader for those of you who are familiar with these services. - -### htop ### - -If you use top command regularly, chances are you will love [htop][8] command. Both top and htop offer a real-time view of running processes, but htop boasts of a number of user-friendly features lacking in top command. For example, with htop, you can scroll process list vertically or horizontally to see full command lines of every process, and can do basic process management (e.g., kill, (re)nice) using mouse clicks and arrow keys (without entering numeric PIDs). - -![](https://farm6.staticflickr.com/5581/14819141403_6f2348590f_z.jpg) - -To conclude, these kinds of tools, which efficiently replace basic command line utilities, are like little pearl of usefulness. They are not always easy to find, but once you've got one, you always wonder how you survived for so long without it. If you know any other utility fitting this description, please share in the comments. - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/2014/07/better-alternatives-basic-command-line-utilities.html - -作者:[Adrien Brochard][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/adrien -[1]:http://projects.gw-computing.net/projects/dfc -[2]:http://archive.debian.org/debian/pool/main/d/dog/ -[3]:http://zwicke.org/web/advcopy/ -[4]:http://www.gnu.org/software/coreutils/ -[5]:https://github.com/ggreer/the_silver_searcher -[6]:http://xmodulo.com/2014/01/search-text-files-patterns-efficiently.html -[7]:https://code.google.com/p/plowshare/ -[8]:http://hisham.hm/htop/ \ No newline at end of file diff --git a/sources/tech/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md b/sources/tech/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md deleted file mode 100644 index 1d5580c350..0000000000 --- a/sources/tech/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md +++ /dev/null @@ -1,38 +0,0 @@ -Linux FAQs with Answers--How to check the last time system was rebooted on Linux -================================================================================ -> **Question**: Is there a way to quickly check how long a Linux system has been running? That is, how can I find out the last time a Linux system was rebooted? - -There are several ways to find out the last system reboot time, - -### Method One ### - -The first method is to use last command. - - $ last reboot - -![](https://farm4.staticflickr.com/3925/14881994335_041e9c2f86_z.jpg) - -This command actually shows system uptime for the last few days. Originally the last command is designed to show login history of a particular user. In Linux, a special "pseudo user" named reboot automatically logs in to the system right after the system has rebooted. Thus by checking the login history of reboot user, you can check the last reboot time. - -### Method Two ### - -Another command to check the time of last system boot is to use who command with '-b' option. - - $ who -b - -### Method Three ### - -You can also use uptime command to deduce last reboot time. The uptime command shows you the current time, as well as how long the system has been running. From this information, you can calculate the time when the system was last booted. - - $ uptime - -![](https://farm4.staticflickr.com/3915/14881660192_58f2843969_o.png) - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/check-last-time-system-rebooted-linux.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/sources/tech/20140815 How to manage a WiFi connection from the command line.md b/sources/tech/20140815 How to manage a WiFi connection from the command line.md deleted file mode 100644 index fbd13a9949..0000000000 --- a/sources/tech/20140815 How to manage a WiFi connection from the command line.md +++ /dev/null @@ -1,79 +0,0 @@ -(translating by runningwater) -How to manage a WiFi connection from the command line -================================================================================ -Whenever you install a new Linux distribution on a computer, it is in general recommended that you connect to the internet via a wired connection. There are two main reasons for this: one, your wireless adapter may not have the right driver loaded; second, if you are installing from the command line, managing WiFi is scary. I always tried to avoid dealing with WiFi over the command line. But in the Linux world, there is no place for fear. If you do not know how to do something, that is the only reason you need to go ahead and learn it. So I forced myself to learn how to manage a WiFi connection from the command line on Linux. - -There are of course multiple ways to connect to a WiFi from the command line. But for the sake of this post, and as an advice, I will try to use the most basic way: the one that uses programs and utilities included in the "default packages" of any distribution. Or at least I will try. An obvious reason for this choice is that the process can potentially be reproduced on any Linux computer. The downside is its relative complexity. - -First, I will assume that you have the correct drivers loaded for your wireless LAN card. There is no way to start anything without that. And if you don't, you should take a look at the Wiki and documentation for your distribution. - -Then you can check which interface supports wireless connections with the command - - $ iwconfig - -![](https://farm6.staticflickr.com/5578/14725621337_b174a3029c_z.jpg) - -In general, the wireless interface is called wlan0. There are of course exceptions, but for the rest of this tutorial, I will call it that way. - -Just in case, you should make sure that the interface is up with: - - $ sudo ip link set wlan0 up - -Once you know that your interface is operational, you should scan for nearby wireless networks with: - - $ sudo iw dev wlan0 scan | less - -![](https://farm4.staticflickr.com/3847/14909117931_e2f3d0feb0_z.jpg) - -From the output, you can extract the name of the network (its SSID), its signal power, and which type of security it uses (e.g., WEP, WPA/WPA2). From there, the road splits into two: the nice and easy, and the slightly more complicated case. - -If the network you want to connect to is not encrypted, you can connect straight to it with: - - $ sudo iw dev wlan0 connect [network SSID] - -If the network uses WEP encryption, it is also quite easy: - - $ sudo iw dev wlan0 connect [network SSID] key 0:[WEP key] - -But everything gets worse if the network uses WPA or WPA2 protocols. In this case, you have to use the utility called wpa_supplicant, which is not always included by default. You then have to modify the file at /etc/wpa_supplicant/wpa_supplicant.conf to add the lines: - - network={ - ssid="[network ssid]" - psk="[the passphrase]" - priority=1 - } - -I recommend that you append it at the end of the file, and make sure that the other configurations are commented out. Be careful that both the ssid and the passphrase are case sensitive. You can also technically put the name of the access point as the ssid, and wpa_supplicant will replace it with the proper ssid. - -Once the configuration file is completed, launch this command in the background: - - $ sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf - -Finally, whether you connected to an open or a secure network, you have to get an IP address. Simply use: - - $ sudo dhcpcd wlan0 - -If everything goes well, you should get a brand new local IP via DHCP, and the process will fork in the background. If you want to be sure that you are connected, you can always check again with: - - $ iwconfig - -![](https://farm4.staticflickr.com/3904/14725573368_7110407db8_z.jpg) - -To conclude, I think that getting over the first step is completely worth it. You never know when your GUI will be down, or when you cannot access a wired connection, so getting ready now seems very important. Also, as mentioned before, there are a lot of ways (e.g., NetworkManager, [wicd][1], [netcfg][2], [wifi][3]) to manage a wireless connection. If I try to stick to the most basic way, I know that in some cases, the utilities that I used may not even be available to you, and that you would have to download them prior to that. On the other side of the balance, there are some more advanced programs, which are definitely not included in the "default packages," which will greatly simplify the whole process. But as a general advice, it is good to stick to the basics at first. - -What other ways would you recommend to connect via WiFi from the command line? Please let us know in the comments. - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/2014/08/manage-wifi-connection-command-line.html - -作者:[Adrien Brochard][a] -译者:[runningwater](https://github.com/runningwater) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/adrien -[1]:http://wicd.sourceforge.net/ -[2]:https://www.archlinux.org/netcfg/ -[3]:https://github.com/rockymeza/wifi \ No newline at end of file diff --git a/sources/tech/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md b/sources/tech/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md deleted file mode 100644 index 554cbe0c74..0000000000 --- a/sources/tech/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md +++ /dev/null @@ -1,49 +0,0 @@ -Linux FAQs with Answers--How to fix “X11 forwarding request failed on channel 0″ -================================================================================ -> **Question**: When I tried to SSH to a remote host with X11 forwarding option, I got "X11 forwarding request failed on channel 0" error after logging in. Why am I getting this error, and how can I fix this problem? - -![](https://farm6.staticflickr.com/5562/14909594691_ce7ca01b2d_z.jpg) - -First of all, we assume that you already enabled [X11 forwarding over SSH][1] properly. - -If you are getting "X11 forwarding request failed on channel 0" message upon SSH login, there could be several reasons. Solutions vary as well. - -### Solution One ### - -For security reason, OpenSSH server, by default, binds X11 forwarding server to the local loopback address, and sets the hostname in DISPLAY environment variable to "localhost". Under this setup, some X11 clients cannot handle X11 forwarding properly, which causes the reported error. To fix this problem, add the following line in /etc/ssh/sshd_config file, which will let X11 forwarding server bind on the wild card address. - - $ sudo vi /etc/ssh/sshd_config - ----------- - - X11Forwarding yes - X11UseLocalhost no - -Restart SSH server to activate the change: - - $ sudo /etc/init.d/ssh restart (Debian 6, Ubuntu or Linux Mint) - $ sudo systemctl restart ssh.service (Debian 7, CentOS/RHEL 7, Fedora) - $ sudo service sshd restart (CentOS/RHEL 6) - -### Solution Two ### - -The broken X11 forwarding error may also happen if the remote host where SSH server is running has IPv6 disabled. To fix the error in this case, open /etc/ssh/sshd_config file, and uncomment "AddressFamily all" (if any). Then add the following line. This will force SSH server to use IPv4 only, but not IPv6. - - $ sudo vi /etc/ssh/sshd_config - ----------- - - AddressFamily inet - -Again, restart SSH server to finalize the change. - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/fix-broken-x11-forwarding-ssh.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://xmodulo.com/2012/11/how-to-enable-x11-forwarding-using-ssh.html \ No newline at end of file diff --git a/sources/tech/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md b/sources/tech/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md deleted file mode 100644 index a19df648f1..0000000000 --- a/sources/tech/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md +++ /dev/null @@ -1,42 +0,0 @@ -Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine -================================================================================ -> **Question**: I want to assign a static MAC address to a virtual machine (VM) on VMware ESXi. However, when I attempt to start a VM with a static MAC address, the VM fails to start and throws an error "00:0c:29:1f:4a:ab is not an allowed static Ethernet address. It conflicts with VMware reserved MACs". How can I set a static MAC address on VMware ESXi VMs? - -When you create a VM on VMware ESXi, each network interface of the VM is assigned a dynamically generated MAC address. If you want to change this default behavior and assign a static MAC address to your VM, here is how to do it. - -![](https://farm6.staticflickr.com/5592/14726591627_64c1dc67ce_z.jpg) - -As you can see above, VMware's vSphere GUI client already has a menu for setting a static MAC address for a VM. However, this GUI-based method only allows you to choose a static MAC address from **00:50:56:xx:xx:xx**, which is VMware-reserved MAC address range. If you attempt to set any arbitrary MAC address outside this MAC range, you will fail to launch the VM, and get the following error. - -![](https://farm6.staticflickr.com/5591/14890165456_a82ded21b9_z.jpg) - -Then what if I want to assign any arbitrary MAC address to a VM? - -Fortunately, there is a workaround to this limitation. The solution is, instead of using vSphere GUI client, editing .vmx file of your VM directly, after logging in to the ESXi host. - -First, turn off the VM to which you want to assign a static MAC address. - -[Enable SSH access to your ESXi host][1] if you haven't done it already. Then log in to the ESXi host via SSH. - -Move to the directory where your VM's .vmx file is located: - - # cd vmfs/volumes/datastore1/[name-of-vm] - -Open .vmx file with a text editor, and add the following fields. Replace the MAC address field with your own. - - ethernet0.addressType = "static" - ethernet0.checkMACAddress = "false" - ethernet0.address = "00:0c:29:1f:4b:ac" - -Now you should be able to launch a VM with the static MAC address you defined in .vmx file. - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/static-mac-address-vmware-esxi-virtual-machine.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://ask.xmodulo.com/enable-ssh-remote-access-vmware-esxi5.html \ No newline at end of file diff --git a/sources/tech/20140819 A Pocket Guide for Linux ssh Command with Examples.md b/sources/tech/20140819 A Pocket Guide for Linux ssh Command with Examples.md deleted file mode 100644 index ff2a301066..0000000000 --- a/sources/tech/20140819 A Pocket Guide for Linux ssh Command with Examples.md +++ /dev/null @@ -1,133 +0,0 @@ -A Pocket Guide for Linux ssh Command with Examples -================================================================================ -If you have been in the IT world for quite some time you probably have heard about SSH, how great a tool it is and all its cool security features. In this tutorial you will learn how to use SSH in a few minutes and login to your remote computers seamlessly and securely. - -If you have no clue what SSH is you can visit [Wikipedia][1] before proceeding. - -### Basic Usage ### - -The simplest usage of SSH is where you specify a user and the hostname. The hostname could be an IP address or a domain name an in the following format. - - $ ssh user@hostname - -For example to login to a Raspberry Pi on my LAN, I would simply type the command in the terminal as follows: - - $ ssh pi@10.42.0.47 - -Where pi is the user and 10.42.0.47 is the IP of the Raspberry Pi on my LAN. Change this accordingly to reflect your LAN configuration or your remote computer’s IP address. - -![basic ssh](http://linoxide.com/wp-content/uploads/2014/08/basic-ssh.png) - -If you have logged in successfully then the rest of the guide shall be a breeze for you. - -### Using A Different Port ### - -By default ssh uses port 22, but for various reasons you may want to connect to another port. - - $ ssh -p 10022 user@hostname - -This will connect to ssh via port 10022 instead of port 22. - -### Execute Commands Remotely ### - -At times its convenient to execute a command on the remote host and get the output and continue working on the local machine. Well SSH has catered for this need, - - $ ssh pi@10.42.0.47 ls -l - -This command for example will list the contents of the home directory and return the prompt to you. Cool? Try it out with other commands as well. - -![remote command](http://linoxide.com/wp-content/uploads/2014/08/remote-command.png) - -### Mounting remote filesystems ### - -Another great tool based on ssh is sshfs. With sshfs you can mount remote filesystems and have the remote files on the local machine. - - $ sshfs -o idmap=user user@hostname:/home/user ~/Remote - -For example this command can be used as: - - $ sshfs -o idmap=user pi@10.42.0.47:/home/pi ~/Pi - -This will mount pi’s home directory to a folder on the local machine called Pi. - -For more details on sshfs [look at our sshfs tutorial][2]. - -### X11 Forwarding ### - -Suppose now you want to run a GUI program on your remote computer? SSH had you in mind! Login to the remote machine with the basic SSH command but -X option. This will allow X11 forwarding. After you login you might not see any difference, but once you invoke a GUI based program you notice the difference. - - $ ssh -X pi@10.42.0.47 - - $ pistore - -Now you may want to do other stuff on the command line while running the GUI program. Simply suffix the command with &. - - $ pistore& - -![X11 forwarding](http://linoxide.com/wp-content/uploads/2014/08/X11-forwarding.png) - -### Escape Sequences ### - -There are various escape sequences provided by SSH. To view them, SSH to any remote machine then type tilde(~) followed by a question mark. You will see a couple of other supported escape sequences. In this example you can the output of **~#** and **~C**. - -![escape sequences](http://linoxide.com/wp-content/uploads/2014/08/escape-sequences.png) - -### Edit SSH Configuration ### - -If you need to change SSH configuration, open the file **/etc/ssh/sshd_config** with your favourite text editor and edit whatever you need to. For example we might need to change the banner. In your text editor find the following line: - - #Banner none - -Uncomment the line by deleting the # then add a path to the file with the message you want displayed. The line should now read as: - - Banner /etc/issue - -In this /etc/ssh/sshd_config file you will also find the options of changing the port number, idle logout timeout e.t.c . These are fairly straight forward, but refer to the ssh manual for anything that might not be familiar before attempting to make changes. - -### Generate SSH Key Pair ### - -To generate a new key pair run the command as follows: - - $ ssh-keygen -t dsa - -You will be asked for a passphrase then the key pair will be generated. This command will also give you the key’s randomart image. - -![generate key pair](http://linoxide.com/wp-content/uploads/2014/08/generate-key-pair.png) - -### Finding A Hostkey ### - -Now before you add that key pair it does no harm to see if it exists already. - - $ ssh-keygen -F 10.42.0.47 - -![find hostkey](http://linoxide.com/wp-content/uploads/2014/08/find-hostkey.png) - -### Removing A Hostkey ### - -Sometimes its necessary to remove a key pair you had generated, for example when the host has changed or perhaps when you need to remove keys that are no longer used. - - $ ssh-keygen -R 10.42.0.47 - -This is much more convenient than opening **~/.ssh/known_hosts** -and removing the keys manually. - -![remove hostkey](http://linoxide.com/wp-content/uploads/2014/08/remove-hostkey.png) - -### Conclusion ### - -With the above commands you will be able to use SSH with ease. There is more to explore and your imagination is your limitation. - - --------------------------------------------------------------------------------- - -via: http://linoxide.com/linux-command/pocket-guide-linux-ssh-command/ - -作者:[Bobbin Zachariah][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://linoxide.com/author/bobbin/ -[1]:http://en.wikipedia.org/wiki/Secure_Shell -[2]:http://linoxide.com/how-tos/sshfs-mount-remote-directories/ \ No newline at end of file diff --git a/sources/tech/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md b/sources/tech/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md deleted file mode 100644 index bad9315d07..0000000000 --- a/sources/tech/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md +++ /dev/null @@ -1,49 +0,0 @@ -Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL -================================================================================ -> **Question**: I would like to install a RPM package which is available only in Nux Dextop repository. How can I set up Nux Dextop repository on CentOS or RHEL? - -[Nux Dextop][1] is a third-party RPM repository which contains many popular desktop and multimedia related packages (e.g., Ardour, Shutter, etc) for CentOS, RHEL and ScientificLinux. Currently, Nux Dextop repository is available for CentOS/RHEL 6 and 7. - -To enable Nux Dextop repository on CentOS or RHEL, follow the instructions below. - -First of all, understand that Nux Dextop is designed to coexist with EPEL repository. So you need to [enable EPEL][2] in order to use Nux Dextop repo. - -After enabling EPEL, go ahead and install Nux Dextop repository with rpm command as follows. - -On CentOS/RHEL 6.*: - - $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm - -On CentOS/RHEL 7: - - $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm - -Now verify that Nux Dextop repository is successfully installed: - - $ yum repolist - -![](https://farm6.staticflickr.com/5574/14790031847_90b4a829d7_z.jpg) - -### For Repoforge/RPMforge Users ### - -According to the author, Nux Dextop is known to cause conflicts with other third-party RPM repos such as Repoforge and ATrpms. Therefore, if you enabled any third-party repos other than EPEL, it is highly recommend you set Nux Dextop repository to "default off" state. That is, open /etc/yum.repos.d/nux-dextop.repo with a text editor, and change "enabled=1" to "enabled=0" under nux-desktop. - -$ sudo vi /etc/yum.repos.d/nux-dextop.repo - -![](https://farm6.staticflickr.com/5560/14789955930_f8711b3581_z.jpg) - -Then whenever you want to install a package from Nux Dextop repo, explicitly enable the repo as follows. - - $ sudo yum --enablerepo=nux-dextop install - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/enable-nux-dextop-repository-centos-rhel.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://li.nux.ro/download/nux/dextop/ -[2]:http://xmodulo.com/2013/03/how-to-set-up-epel-repository-on-centos.html \ No newline at end of file diff --git a/sources/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md b/sources/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md index 04712750ab..b1a3fad83e 100644 --- a/sources/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md +++ b/sources/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md @@ -1,3 +1,4 @@ +wangjiezhe translating 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II ================================================================================ In our past following articles, we’ve shown some useful articles on some funny commands of Linux, which shows that Linux is not as complex as it seems and can be fun if we know how to use it. Linux command line can perform any complex task very easily and with perfection and can be interesting and joyful. @@ -96,11 +97,11 @@ That’s all for now. I’ll be here again with another interesting article. Til via: http://www.tecmint.com/linux-funny-commands/ 作者:[Avishek Kumar][a] -译者:[译者ID](https://github.com/译者ID) +译者:[wangjiezhe](https://github.com/wangjiezhe) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://www.tecmint.com/author/avishek/ [1]:http://www.tecmint.com/20-funny-commands-of-linux-or-linux-is-fun-in-terminal/ -[2]:http://www.tecmint.com/play-with-word-and-character-counts-in-linux/ \ No newline at end of file +[2]:http://www.tecmint.com/play-with-word-and-character-counts-in-linux/ diff --git a/sources/tech/20140901 How to install and configure ownCloud on Debian.md b/sources/tech/20140901 How to install and configure ownCloud on Debian.md new file mode 100644 index 0000000000..a0a18225b6 --- /dev/null +++ b/sources/tech/20140901 How to install and configure ownCloud on Debian.md @@ -0,0 +1,209 @@ +How to install and configure ownCloud on Debian +================================================================================ +According to its official website, ownCloud gives you universal access to your files through a web interface or WebDAV. It also provides a platform to easily view, edit and sync your contacts, calendars and bookmarks across all your devices. Even though ownCloud is very similar to the widely-used Dropbox cloud storage, the primary difference is that ownCloud is free and open-source, making it possible to set up a Dropbox-like cloud storage service on your own server. With ownCloud, only you have complete access and control over your private data, with no limits on storage space (except for hard disk capacity) or the number of connected clients. + +ownCloud is available in Community Edition (free of charge) and Enterprise Edition (business-oriented with paid support). The pre-built package of ownCloud Community Edition is available for CentOS, Debian, Fedora openSUSE, SLE and Ubuntu. This tutorial will demonstrate how to install and configure ownCloud Community Edition on Debian Wheezy. + +### Installing ownCloud on Debian ### + +Go to the official website: [http://owncloud.org][1], and click on the 'Install' button (upper right corner). + +![](https://farm4.staticflickr.com/3885/14884771598_323f2fc01c_z.jpg) + +Now choose "Packages for auto updates" for the current version (v7 in the image below). This will allow you to easily keep ownCloud up to date using Debian's package management system, with packages maintained by the ownCloud community. + +![](https://farm6.staticflickr.com/5589/15071372505_298a796ff6_z.jpg) + +Then click on Continue on the next screen: + +![](https://farm6.staticflickr.com/5589/14884818527_554d1483f9_z.jpg) + +Select Debian 7 [Wheezy] from the list of available operating systems: + +![](https://farm6.staticflickr.com/5581/14884669449_433e3334e0_z.jpg) + +Add the ownCloud's official Debian repository: + + # echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list + +Add the repository key to apt: + + # wget http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/Release.key + # apt-key add - < Release.key + +Go ahead and install ownCloud: + + # aptitude update + # aptitude install owncloud + +Open your web browser and navigate to your ownCloud instance, which can be found at http:///owncloud: + +![](https://farm4.staticflickr.com/3869/15071011092_f8f32ffe11_z.jpg) + +Note that ownCloud may be alerting about an Apache misconfiguration. Follow the steps below to solve this issue, and get rid of that error message. + +a) Edit the /etc/apache2/apache2.conf file (set the AllowOverride directive to All): + + + Options Indexes FollowSymLinks + AllowOverride All + Order allow,deny + Allow from all + + +b) Edit the /etc/apache2/conf.d/owncloud.conf file + + + Options Indexes FollowSymLinks MultiViews + AllowOverride All + Order allow,deny + Allow from all + + +c) Restart the web server: + + # service apache2 restart + +d) Refresh the web browser. Verify that the security warning has disappeared. + +![](https://farm6.staticflickr.com/5562/14884771428_fc9c063418_z.jpg) + +### Setting up a Database ### + +Now it's time to set up a database for ownCloud. + +First, log in to the local MySQL/MariaDB server: + + $ mysql -u root -h localhost -p + +Create a database and user account for ownCloud as follows. + + mysql> CREATE DATABASE owncloud_DB; + mysql> CREATE USER ‘owncloud-web’@'localhost' IDENTIFIED BY ‘whateverpasswordyouchoose’; + mysql> GRANT ALL PRIVILEGES ON owncloud_DB.* TO ‘owncloud-web’@'localhost'; + mysql> FLUSH PRIVILEGES; + +Go to ownCloud page at http:///owncloud, and choose the 'Storage & database' section. Enter the rest of the requested information (MySQL/MariaDB user, password, database and hostname), and click on Finish setup. + +![](https://farm6.staticflickr.com/5584/15071010982_b76c23c384_z.jpg) + +### Configuring ownCloud for SSL Connections ### + +Before you start using ownCloud, it is strongly recommended to enable SSL support in ownCloud. Using SSL provides important security benefits such as encrypting ownCloud traffic and providing proper authentication. In this tutorial, a self-signed certificate will be used for SSL. + +Create a new directory where we will store the server key and certificate: + + # mkdir /etc/apache2/ssl + +Create a certificate (and the key that will protect it) which will remain valid for one year. + + # openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt + +![](https://farm6.staticflickr.com/5587/15068784081_f281b54b72_z.jpg) + +Edit the /etc/apache2/conf.d/owncloud.conf file to enable HTTPS. For details on the meaning of the rewrite rules NC, R, and L, you can refer to the [Apache docs][2]: + + Alias /owncloud /var/www/owncloud + + + RewriteEngine on + ReWriteCond %{SERVER_PORT} !^443$ + RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L] + + + + SSLEngine on + SSLCertificateFile /etc/apache2/ssl/apache.crt + SSLCertificateKeyFile /etc/apache2/ssl/apache.key + DocumentRoot /var/www/owncloud/ + + Options Indexes FollowSymLinks MultiViews + AllowOverride All + Order allow,deny + Allow from all + + + +Enable the rewrite module and restart Apache: + + # a2enmod rewrite + # service apache2 restart + +Open your ownCloud instance. Notice that even if you try to use plain HTTP, you will be automatically redirected to HTTPS. + +Be advised that even having followed the above steps, the first time that you launch your ownCloud instance, an error message will be displayed stating that the certificate has not been issued by a trusted authority (that is because we created a self-signed certificate). You can safely ignore this message, but if you are considering deploying ownCloud in a production server, you may want to purchase a certificate from a trusted company. + +### Create an Account ### + +Now we are ready to create an ownCloud admin account. + +![](https://farm6.staticflickr.com/5587/15048366536_430b4fd64e.jpg) + +Welcome to your new personal cloud! Note that you can install a desktop or mobile client app to sync your files, calendars, contacts and more. + +![](https://farm4.staticflickr.com/3862/15071372425_c391d912f5_z.jpg) + +In the upper right corner, click on your user name, and a drop-down menu is displayed: + +![](https://farm4.staticflickr.com/3897/15071372355_3de08d2847.jpg) + +Click on Personal to change your settings, such as password, display name, email address, profile picture, and more. + +### ownCloud Use Case: Access Calendar ### + +Let's start by adding an event to your calendar and later downloading it. + +Click on the upper left corner drop-down menu and choose Calendar. + +![](https://farm4.staticflickr.com/3891/15048366346_7dcc388244.jpg) + +Add a new event and save it to your calendar. + +![](https://farm4.staticflickr.com/3882/14884818197_f55154fd91_z.jpg) + +Download your calendar and add it to your Thunderbird calendar by going to 'Event and Tasks' -> 'Import...' -> 'Select file': + +![](https://farm4.staticflickr.com/3840/14884818217_16a53400f0_z.jpg) + +![](https://farm4.staticflickr.com/3871/15048366356_a7f98ca63d_z.jpg) + +TIP: You also need to set your time zone in order to successfully import your calendar in another application (by default, the Calendar application uses the UTC +00:00 time zone). To change the time zone, go to the bottom left corner and click on the small gear icon. The Calendar settings menu will appear and you will be able to select your time zone: + +![](https://farm4.staticflickr.com/3858/14884669029_4e0cd3e366.jpg) + +### ownCloud Use Case: Upload a File ### + +Next, we will upload a file from the client computer. + +Go to the Files menu (upper left corner) and click on the up arrow to open a select-file dialog. + +![](https://farm4.staticflickr.com/3851/14884818067_4a4cc73b40.jpg) + +Select a file and click on Open. + +![](https://farm6.staticflickr.com/5591/14884669039_5a9dd00ca9_z.jpg) + +You can then open/edit the selected file, move it into another folder, or delete it. + +![](https://farm4.staticflickr.com/3909/14884771088_d0b8a20ae2_o.png) + +### Conclusion ### + +ownCloud is a versatile and powerful cloud storage that makes the transition from another provider quick, easy, and painless. In addition, it is FOSS, and with little time and effort you can configure it to meet all your needs. For further information, you can always refer to the [User][3], [Admin][4], or [Developer][5] manuals. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/08/install-configure-owncloud-debian.html + +作者:[Gabriel Cánepa][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.gabrielcanepa.com.ar/ +[1]:http://owncloud.org/ +[2]:http://httpd.apache.org/docs/2.2/rewrite/flags.html +[3]:http://doc.owncloud.org/server/7.0/ownCloudUserManual.pdf +[4]:http://doc.owncloud.org/server/7.0/ownCloudAdminManual.pdf +[5]:http://doc.owncloud.org/server/7.0/ownCloudDeveloperManual.pdf \ No newline at end of file diff --git a/sources/tech/20140901 How to use on-screen virtual keyboard on Linux.md b/sources/tech/20140901 How to use on-screen virtual keyboard on Linux.md new file mode 100644 index 0000000000..11bdaaf42c --- /dev/null +++ b/sources/tech/20140901 How to use on-screen virtual keyboard on Linux.md @@ -0,0 +1,128 @@ +How to use on-screen virtual keyboard on Linux +================================================================================ +On-screen virtual keyboard is an alternative input method that can replace a real hardware keyboard. Virtual keyboard may be a necessity in various cases. For example, your hardware keyboard is just broken; you do not have enough keyboards for extra machines; your hardware does not have an available port left to connect a keyboard; you are a disabled person with difficulty in typing on a real keyboard; or you are building a touchscreen-based web kiosk. + +On-screen keyboard can also be a protection mechanism against a hardware keylogger which silently records your keystrokes for sensitive information such as passwords. Some online banking sites actually force you to use a virtual keyboard for security-enhanced transactions. + +In Linux environment, there are a couple of open-source virtual keyboard software available, e.g., [GOK (GNOME Onscreen Keyboard)][1], [kvkbd][2], [onboard][3], [Florence][4]. + +In this tutorial, I am going to focus on Florence, and show you **how to set up a virtual keyboard with Florence.**. Florence comes with a number of nice features such as flexible layout, multiple input methods, auto-hide, etc. As part of the tutorial, I will also demonstrate **how to use Ubuntu desktop with a mouse only**. + +### Install Florence Virtual Keyboard on Linux ### + +Fortunately, Florence is available on base repositories of most Linux distros. + +On Debian, Ubuntu or Linux Mint: + + $ sudo apt-get install florence + +On Fedora, CentOS or RHEL ([EPEL repo][5] is required for CentOS/RHEL): + + $ sudo yum install florence + +On Mandriva or Mageia: + + $ sudo urpmi florence + +For Archlinux users, the package is available in [AUR][6]. + +Configure and Launch Virtual Keyboard + +Once you install Florence, you can launch virtual keyboard simply by typing: + + $ florence + +By default, the virtual keyboard is always on top of other windows, allowing you to type on any active window easily. + +To change default settings of Florence, click on tool key on the left side of the keyboard. + +![](https://farm4.staticflickr.com/3923/14873468448_216c794244_z.jpg) + +In "style" menu of Florence settings, you can customize keyboard style, and enable/disable sound effect. + +![](https://farm6.staticflickr.com/5563/14873470478_de81aac39b_o.png) + +In "window" menu, you can adjust keyboard background transparency and key opacity, as well as control keyboard ratio, taskbar, resizability and always-on-top features. Transparency and opacity adjustment can be useful if your screen resolution is not high enough, so the virtual keyboard is blocking other windows. In this example, I switch to transparent keyboard, and set opacity to 50%. + +![](https://farm6.staticflickr.com/5556/15060050245_1534127d1c_z.jpg) + +In "behaviour" menu, you can change an input method. Florence supports several different input methods: mouse, touch screen, timer and ramble. The default input is mouse method. The last two methods do not require button clicks. With timer method, key press is triggered by locating a pointer at the key for a certain amount of time. The ramble method works similar to **timer** input, but with dexterity and training, can type much faster than **timer** method. + +![](https://farm4.staticflickr.com/3843/14873384900_82baef4c22_o.png) + +In "layout" menu, you can change the keyboard layout. For example, you can extend the keyboard layout to include navigation keys, numeric keys, and function keys. + +![](https://farm6.staticflickr.com/5556/15057015461_e611b6ee25_z.jpg) + +### Use Ubuntu Desktop with Mouse Only ### + +I am going to demonstrate how to integrate Florence with Ubuntu desktop, so that we can access the desktop without a hardware keyboard. While this tutorial is specific to Ubuntu desktop with LightDM (Ubuntu's default display manager), a similar environment can be set up for other desktop environments. + +The initial setup requires a hardware keyboard, but once the setup is completed, you only need a mouse, but not the keyboard. + +When you boot up Ubuntu desktop, the boot procedure ends with launch of a display manager (or login manager) with Greeter interface, where you type in your login info. By default, Ubuntu desktop uses LightDM with Unity Greeter interface. Without a hardware keyboard, you cannot enter username and password at the login screen. + +To be able to launch a virtual keyboard at the login screen, install GTK+ Greeter, which comes with on-screen keyboard support. + + $ sudo apt-get install lightdm-gtk-greeter + +Then, open a Greeter configuration file (/etc/lightdm/lightdm-gtk-greeter.conf) with a text editor, and specify Florence as an on-screen keyboard to use. Instead of Florence, you could also use onboard, Ubuntu's default on-screen keyboard. + + $ sudo vi /etc/lightdm/lightdm-gtk-greeter.conf + +---------- + + [greeter] + keyboard=florence --no-gnome --focus & + +![](https://farm6.staticflickr.com/5554/15056999361_180dc724b2_z.jpg) + +Let's reboot Ubuntu desktop, and verify whether you can use virtual keyboard at the login screen. + +When you see the GTK+ Greeter's login screen after boot, click on a human symbol icon on the top right corner. You will see "On Screen Keyboard" menu option as follows. + +![](https://farm6.staticflickr.com/5554/14873314399_e48bd6eb84_z.jpg) + +Click on this option, and a virtual keyboard will pop up on the login screen. Now you should be able to log in by tapping on the on-screen keyboard. + +![](https://farm6.staticflickr.com/5572/14873460568_02480cccb7_z.jpg) + +For those GDM2/GDM3 users, the Florence official site offers [documentation][7] on using virtual keyboard at GDM2/GDM3 screen. + +The last step to make our Ubuntu desktop fully keyboard-less is to have virtual keyboard auto-start upon login, so that we can use our desktop without a hardware keyboard even after logging in. For that, create the following desktop file. + + $ mkdir -p ~/.config/autostart + $ vi ~/.config/autostart/florence.desktop + +---------- + + [Desktop Entry] + Type=Application + Name=Virtual Keyboard + Comment=Auto-start virtual keyboard + Exec=florence --no-gnome + +This will make virtual keyboard appear as soon as you log in to the desktop. + +![](https://farm4.staticflickr.com/3873/15037038376_f8359f3a65_z.jpg) + +Hope this tutorial is useful to you. As you can see, Florence is quite powerful virtual keyboard which can be used for different purposes. Let me know if you have any use case for virtual keyboard. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/08/onscreen-virtual-keyboard-linux.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:https://developer.gnome.org/gok/ +[2]:http://homepage3.nifty.com/tsato/xvkbd/ +[3]:https://launchpad.net/onboard +[4]:http://florence.sourceforge.net/ +[5]:http://xmodulo.com/2013/03/how-to-set-up-epel-repository-on-centos.html +[6]:https://aur.archlinux.org/packages/florence/ +[7]:http://florence.sourceforge.net/english/how-to.html \ No newline at end of file diff --git a/sources/tech/20140902 How to share on linux the output of your shell commands.md b/sources/tech/20140902 How to share on linux the output of your shell commands.md new file mode 100644 index 0000000000..1ef7846540 --- /dev/null +++ b/sources/tech/20140902 How to share on linux the output of your shell commands.md @@ -0,0 +1,112 @@ +How to share on linux the output of your shell commands +================================================================================ +Some time ago I posted an article about [shelr.tv][1] a website and a service that was made to allow you to share your [terminal][2] records directly from the website. + +Now the website of shelr.tv seems dead and so I’ve took a look around to see if there are similar websites and I’ve found [commands.com][3]. + +For what I can see from their homepage it’s a service similar to the other, so let’s test it. + +### Step 1 – Register on the website ### + +Just [register][4] with a new username/password or use your github account to do it quickly. + +### Step 2 – download and install the program monitor ### + +[Monitor][5] is a command-line tool that captures command-line input/output and sends it to commands.com, the program it’s open source and hosted on github. + +Monitor makes it easy to automate set-up/install of repos. With it you can easily show at people the most common errors and output from commands. + +In short with it you can easily share your commands and their output with the world. + +To install it follow these simple steps: + +1) Clone the github repository of this project, in this way you’ll get the latest source code. + +To do this you need the git command installed on your system, if you get an error with this command install it with your package manager, such as + +Debian based distributions: + + apt-get install git + +Redhat/Centos/Fedora distributions + + yum install git + +And now from a terminal clone the repository with: + + git clone https://github.com/dtannen/monitor.git + +2) Install readline and curl, these libraries are a pre-requisite for building the program from the sources: + +Debian based distributions: + + apt-get install libreadline-dev libcurl4-openssl-dev + +Redhat/Centos/Fedora distributions + + yum install readline-devel curl-devel + +3) Build the program: + +To do this you have to go to the directory we just cloned with git and compile the c program: + + cd monitor + make + sudo make install + +The default installation will put the binary in /usr/local/bin + +![](http://cdn.linuxaria.com/wp-content/uploads/2014/08/commands.png) + +### Step 3 – using the monitor command ### + +The command monitor it’s pretty easy to use: + + monitor {-d} {-h} {-u } + + -d : do not delete /tmp files + -h : help + -u : commands.com username + +To exit the monitor program you just have to use ctrl-c. + +So for me this means just opening a terminal and give these commands: + + riccio@mint-desktop ~ $ monitor -u ricciocri + Password: + + Successfully logged in... + AuthKey saved to /tmp/.riccio.commands.com. Delete file to return to Anonymous posting. + monitor$ cd /tmp + ... + +Want to see which command I’ve used after these ? +I’ve made this session public (the default it’s private) so you can simply check this url: [https://commands.com/JTNSHRLQJA][6] + +From there you can see the commands I’ve used and their output, an interesting options it’s the “fold/expand” so you could fold all commands and just expand the output of the one you like more. + +### Conclusions ### + +This is just the a basic startup guide, from the website you can make more “social” activity such as comment script/shell sessions, fork them or choose your favorites. + +Like github, you can fork any public script/command and change it directly from the website and after that you can also get a public (or private url) that you can use to run directly your script with something like this: + + curl commands.io/JTNSHRLQJA | sh + +That’s great to store on the net some scripts that you run frequently on different computers/server, as usual don’t put anything with passwords or sensible information on the net and you’ll be safe enough. + +-------------------------------------------------------------------------------- + +via: http://linuxaria.com/article/how-to-share-on-linux-the-output-of-your-shell-commands + +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://linuxaria.com/recensioni/shelr-broadcast-your-linux-shell-on-the-net +[2]:http://linuxaria.com/tag/shell +[3]:https://commands.com/ +[4]:https://commands.com/Register/Index +[5]:https://github.com/dtannen/monitor +[6]:https://commands.com/JTNSHRLQJA \ No newline at end of file diff --git a/sources/tech/20140902 Photo Editing on Linux with Krita.md b/sources/tech/20140902 Photo Editing on Linux with Krita.md new file mode 100644 index 0000000000..c3e4367556 --- /dev/null +++ b/sources/tech/20140902 Photo Editing on Linux with Krita.md @@ -0,0 +1,76 @@ +Photo Editing on Linux with Krita +================================================================================ +![Figure 1: Annabelle the pygmy goat.](http://www.linux.com/images/stories/41373/fig-1-annabelle.jpg) +Figure 1: Annabelle the pygmy goat. + +[Krita][1] is a wonderful drawing and painting program, and it's also a nice photo editor. Today we will learn how to add text to an image, and how to selectively sharpen portions of a photo. + +### Navigating Krita ### + +Like all image creation and editing programs, Krita contains hundreds of tools and options, and redundant controls for exposing and using them. It's worth taking some time to explore it and to see where everything is. + +The default theme for Krita is a dark theme. I'm not a fan of dark themes, but fortunately Krita comes with a nice batch of themes that you can change anytime in the Settings > Theme menu. + +Krita uses docking tool dialogues. Check Settings > Show Dockers to see your tool docks in the right and left panes, and Settings > Dockers to select the ones you want to see. The individual docks can drive you a little bit mad, as some of them open in a tiny squished aspect so you can't see anything. You can drag them to the top and sides of your Krita window, enlarge and shrink them, and you can drag them out of Krita to any location on your computer screen. If you drop a dock onto another dock they automatically create tabs. + +When you have arranged your perfect workspace, you can preserve it in the "Choose Workspace" picker. This is a button at the right end of the Brushes and Stuff toolbar (Settings > Toolbars Shown). This comes with a little batch of preset workspaces, and you can create your own (figure 2). + +![Figure 2: Preserve custom workspaces in the Choose Workspace dialogue.](http://www.linux.com/images/stories/41373/fig-2-workspaces.jpg) +Figure 2: Preserve custom workspaces in the Choose Workspace dialogue. + +Krita has multiple zoom controls. Ctrl+= zooms in, Ctrl+- zooms out, and Ctrl+0 resets to 100%. You can also use the View > Zoom controls, and the zoom slider at the bottom right. There is also a dropdown zoom menu to the left of the slider. + +The Tools menu sits in the left pane, and this contains your shape and selection tools. You have to hover your cursor over each tool to see its label. The Tool Options dock always displays options for the current tool you are using, and by default it sits in the right pane. + +### Crop Tool ### + +Of course there is a crop tool in the Tools dock, and it is very easy to use. Draw a rectangle that contains the area you want to keep, use the drag handles to adjust it, and press the Return key. In the Tools Options dock you can choose to apply the crop to all layers or just the current layer, adjust the dimensions by typing in the size values, or size it as a percentage. + +### Adding Text ### + +When you want to add some simple text to a photo, such as a label or a caption, Krita may leave you feeling overwhelmed because it contains so many artistic text effects. But it also supports adding simple text. Click the Text tool, and the Tool Options dock looks like figure 3. + +![Figure 3: Text options.](http://www.linux.com/images/stories/41373/fig-3-text.jpg) +Figure 3: Text options. + +Click the Multiline button. This opens the simple text tool; first draw a rectangle to contain your text, then start typing your text. The Tool Options dock has all the usual text formatting options: font selector, font size, text and background colors, alignment, and a bunch of paragraph styles. When you're finished click the Shape Handling tool, which is the white arrow next to the Text tool button, to adjust the size, shape, and position of your text box. The Tool Options for the Shape Handling tool include borders of various thicknesses, colors, and alignments. Figure 4 shows the gleeful captioned photo I send to my city-trapped relatives. + +![Figure 4: Green acres is the place to be.](http://www.linux.com/images/stories/41373/fig-4-frontdoor.jpg) +Figure 4: Green acres is the place to be. + +How to edit your existing text isn't obvious. Click the Shape Handling tool, and double-click inside the text box. This opens editing mode, which is indicated by the text cursor. Now you can select text, add new text, change formatting, and so on. + +### Sharpening Selected Areas ### + +Krita has a number of nice tools for making surgical edits. In figure 5 I want to sharpen Annabelle's face and eyes. (Annabelle lives next door, but she has a crush on my dog and spends a lot of time here. My dog is terrified of her and runs away, but she is not discouraged.) First select an area with the "Select an area by its outline" tool. Then open Filter > Enhance > Unsharp Mask. You have three settings to play with: Half-Size, Amount, and Threshold. Most image editing software has Radius, Amount, and Threshold settings. A radius is half of a diameter, so Half-Size is technically correct, but perhaps needlessly confusing. + +![Figure 5: Selecting an arbitrary area to edit.](http://www.linux.com/images/stories/41373/fig-5-annabelle.jpg) +Figure 5: Selecting an arbitrary area to edit. + +The Half-Size value controls the width of the sharpening lines. You want a large enough value to get a good affect, but not so large that it's obvious. + +The Threshold value determines how different two pixels need to be for the sharpening effect to be applied. 0 = maximum sharpening, and 99 is no sharpening. + +Amount controls the strength of the sharpening effect; higher values apply more sharpening. + +Sharpening is nearly always the last edit you want to make to a photo, because it is affected by anything else you do to your image: crop, resize, color and contrast... if you apply sharpening first and then make other changes it will mess up your sharpening. + +And what, you ask, does unsharp mask mean? The name comes from the sharpening technique: the unsharp mask filter creates a blurred mask of the original, and then layers the unsharp mask over the original. This creates an image that appears sharper and clearer without creating a lot of obvious sharpening artifacts. + +That is all for today. The documentation for Krita is abundant, but disorganized. Start at [Krita Tutorials][2], and poke around YouTube for a lot of good video how-tos. + +- [krita Official Web Site][1] + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/learn/tutorials/786040-photo-editing-on-linux-with-krita + +作者:[Carla Schroder][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.linux.com/community/forums/person/3734 +[1]:https://krita.org/ +[2]:https://krita.org/learn/tutorials/ \ No newline at end of file diff --git a/sources/tech/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md b/sources/tech/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md new file mode 100644 index 0000000000..f143e85c85 --- /dev/null +++ b/sources/tech/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md @@ -0,0 +1,46 @@ +johnhoow translating... +Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker +================================================================================ +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/09/texmaker_Ubuntu.jpeg) + +[LaTeX][1] is a document markup language and document preparation system. It is widely used as a standard in universities and academics to write professional scientific papers, thesis and other such documents. In this quick post, we shall see **how to use LaTeX in Ubuntu 14.04**. + +### Install Texmaker to use LaTeX in Ubuntu 14.04 & Linux Mint 17 ### + +[Texmaker][2] is a free and open source LaTeX editor which is available for all major desktop OS i.e. Windows, Linux and OS X. Followings are the salient features of the Texmaker: + +- Unicode editor +- Spell checker +- Code folding +- Code completion +- Fast navigation +- Integrated Pdf viewer +- Easy compilation +- 370 Mathematical symbols +- LaTeX documentation +- Export to html and odt via TeX4ht +- Regex support + +You can install Texmaker in Ubuntu 14.04 by downloading the binaries from the given link: + +- [Download Texmaker LaTeX editor][3] + +Since it is .deb packaging, same installation files can be used n any other Debian based distribution such as Linux Mint, Elementary OS, Pinguy OS etc. + +If you want a Github type markdown editor, you should check [Remarkable editor][4]. I hope Texmaker helps you with **LaTeX in Ubuntu** and Linux Mint. + +-------------------------------------------------------------------------------- + +via: http://itsfoss.com/install-latex-ubuntu-1404/ + +作者:[Abhishek][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://itsfoss.com/author/Abhishek/ +[1]:http://www.latex-project.org/ +[2]:http://www.xm1math.net/texmaker/index.html +[3]:http://www.xm1math.net/texmaker/download.html#linux +[4]:http://itsfoss.com/remarkable-markdown-editor-linux/ diff --git a/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md b/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md new file mode 100644 index 0000000000..e7353fc182 --- /dev/null +++ b/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md @@ -0,0 +1,259 @@ +>>Linchenguang is translating +Linux TCP/IP networking: net-tools vs. iproute2 +================================================================================ +Many sysadmins still manage and troubleshoot various network configurations by using a combination of ifconfig, route, arp and netstat command-line tools, collectively known as net-tools. Originally rooted in the BSD TCP/IP toolkit, the net-tools was developed to configure network functionality of older Linux kernels. Its development in the Linux community so far has ceased since 2001. Some Linux distros such as Arch Linux and CentOS/RHEL 7 have already deprecated net-tools in favor of iproute2. + +iproute2, which is another family of network configuration tools, emerged to replace the functionality of net-tools. While net-tools accesses and changes kernel network configurations via procfs (/proc) and ioctl system call, iproute2 communicates with the kernel via netlink socket interface. The /proc interface is known to be more heavyweight than netlink interface. Putting performance aside, the user interface of iproute2 is more intuitive than that of net-tools. For example, network resources (e.g., link, IP address, route, tunnel, etc.) are aptly defined with "object" abstraction, and you can manage different objects using consistant syntax. Most importantly, iproute2 has been under [active development][1] so far. + +If you are still using net-tools, it is time to switch to iproute2, especially if you want to catch up with the latest and greatest networking features of the latest Linux kernel. Chances are that there are many things you can do with iproute2, but cannot with net-tools. + +For those who want to make the switch, here is a round-up of net-tools vs. iproute2 comparison. + +### Show All Connected Network Interfaces ### + +The following commands show a list of all available network interfaces (whether or not they are active). + +With **net-tools**: + + $ ifconfig -a + +With **iproute2**: + + $ ip link show + +![](https://farm4.staticflickr.com/3852/15134851045_53a5135283_z.jpg) + +### Activate or Deactivate a Network Interface ### + +To activate/deactivate a particular network interface, use these commands. + +With **net-tools**: + + $ sudo ifconfig eth1 up + $ sudo ifconfig eth1 down + +With **iproute2**: + + $ sudo ip link set down eth1 + $ sudo ip link set up eth1 + +### Assign IPv4 address(es) to a Network Interface ### + +Use these commands to configure IPv4 addresses of a network interface. + +With **net-tools**: + + $ sudo ifconfig eth1 10.0.0.1/24 + +With **iproute2**: + + $ sudo ip addr add 10.0.0.1/24 dev eth1 + +Note that with iproute2, you can assign multiple IP addresses to an interface, which you cannot do with ifconfig. A workaround for this with ifconfig is to use [IP aliases][2]. + + $ sudo ip addr add 10.0.0.1/24 broadcast 10.0.0.255 dev eth1 + $ sudo ip addr add 10.0.0.2/24 broadcast 10.0.0.255 dev eth1 + $ sudo ip addr add 10.0.0.3/24 broadcast 10.0.0.255 dev eth1 + +### Remove an IPv4 address from a Network Interface ### + +As far as IP address removal is concerned, there is no proper way to remove an IPv4 address from a network interface with net-tools, other than assigning 0 to the interface. iproute2 can properly handle this. + +With **net-tools**: + + $ sudo ifconfig eth1 0 + +With **iproute2**: + + $ sudo ip addr del 10.0.0.1/24 dev eth1 + +### Show IPv4 Address(es) of a Network Interface ### + +Checking IPv4 addresses of a particular network interface can be done as follows. + +With **net-tools**: + + $ ifconfig eth1 + +With **iproute2**: + + $ ip addr show dev eth1 + +Again, if there are multiple IP addresses assigned to an interface, iproute2 shows all of them, while net-tools shows only one IP address. + +![](https://farm6.staticflickr.com/5552/15134470952_f478190693_z.jpg) + +### Assign an IPv6 address to a Network Interface ### + +Use these commands to add IPv6 address(es) to a network interface. Both net-tools and iproute2 allow you to add multiple IPv6 addresses to an interface. + +With **net-tools**: + + $ sudo ifconfig eth1 inet6 add 2002:0db5:0:f102::1/64 + $ sudo ifconfig eth1 inet6 add 2003:0db5:0:f102::1/64 + +With **iproute2**: + + $ sudo ip -6 addr add 2002:0db5:0:f102::1/64 dev eth1 + $ sudo ip -6 addr add 2003:0db5:0:f102::1/64 dev eth1 + +### Show IPv6 address(es) of a Network Interface ### + +Displaying IPv6 addresses of a particular network interface can be done as follows. Both net-tools and iproute2 can show all assigned IPv6 addresses. + +With **net-tools**: + + $ ifconfig eth1 + +With **iproute2**: + + $ ip -6 addr show dev eth1 + +![](https://farm4.staticflickr.com/3906/15111848536_f6cb7ddb4f_z.jpg) + +### Remove an IPv6 address from a Network Interface ### + +Use these commands to remove any unnecessary IPv6 address from an interface. + +With **net-tools**: + + $ sudo ifconfig eth1 inet6 del 2002:0db5:0:f102::1/64 + +With **iproute2**: + + $ sudo ip -6 addr del 2002:0db5:0:f102::1/64 dev eth1 + +### Change the MAC Address of a Network Interface ### + +To [spoof the MAC address][3] of a network interface, use the commands below. Note that before changing the MAC address, you need to deactivate the interface first. + +With **net-tools**: + + $ sudo ifconfig eth1 hw ether 08:00:27:75:2a:66 + +With **iproute2**: + + $ sudo ip link set dev eth1 address 08:00:27:75:2a:67 + +### View the IP Routing Table ### + +net-tools has two options for showing the kernel's IP routing table: route or netstat. With iproute2, use ip route command. + +With **net-tools**: + + $ route -n + +---------- + + $ netstat -rn + +With **iproute2**: + + $ ip route show + +![](https://farm6.staticflickr.com/5585/14948293867_c018df8efd_z.jpg) + +### Add or Modify a Default Route ### + +Here are the commands to add or modify a default route in the kernel's IP routing table. Note that with net-tools, modifying a default route can be achieved by adding a new default route, and then removing an old default route. With iproute2, use ip route replace command. + +With **net-tools**: + + $ sudo route add default gw 192.168.1.2 eth0 + $ sudo route del default gw 192.168.1.1 eth0 + +With **iproute2**: + + $ sudo ip route add default via 192.168.1.2 dev eth0 + $ sudo ip route replace default via 192.168.1.2 dev eth0 + +### Add or Remove a Static Route ### + +A static routing can be added or removed with the following commands. + +With **net-tools**: + + $ sudo route add -net 172.16.32.0/24 gw 192.168.1.1 dev eth0 + $ sudo route del -net 172.16.32.0/24 + +With **iproute2**: + + $ sudo ip route add 172.16.32.0/24 via 192.168.1.1 dev eth0 + $ sudo ip route del 172.16.32.0/24 + +### View Socket Statistics ### + +Here are the commands to check socket statistics (e.g., active/listening TCP/UDP sockets). + +With **net-tools**: + + $ netstat + $ netstat -l + +With **iproute2**: + + $ ss + $ ss -l + +![](https://farm4.staticflickr.com/3843/14948157419_564982b0e6_z.jpg) + +### View the ARP Table ### + +You can display the kernel's ARP table with these commands. + +With **net-tools**: + + $ arp -an + +With **iproute2**: + + $ ip neigh + +![](https://farm4.staticflickr.com/3908/14948193370_1c5256e8e1_z.jpg) + +### Add or Remove a Static ARP Entry ### + +Adding or removing a [static ARP entry][4] in the local ARP table is done as follows. + +With **net-tools**: + + $ sudo arp -s 192.168.1.100 00:0c:29:c0:5a:ef + $ sudo arp -d 192.168.1.100 + +With **iproute2**: + + $ sudo ip neigh add 192.168.1.100 lladdr 00:0c:29:c0:5a:ef dev eth0 + $ sudo ip neigh del 192.168.1.100 dev eth0 + +### Add, Remove or View Multicast Addresses ### + +To configure or view multicast addresses on a network interface, use the commands below. + +With **net-tools**: + + $ sudo ipmaddr add 33:44:00:00:00:01 dev eth0 + $ sudo ipmaddr del 33:44:00:00:00:01 dev eth0 + $ ipmaddr show dev eth0 + $ netstat -g + +With **iproute2**: + + $ sudo ip maddr add 33:44:00:00:00:01 dev eth0 + $ sudo ip maddr del 33:44:00:00:00:01 dev eth0 + $ ip maddr list dev eth0 + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/09/linux-tcpip-networking-net-tools-iproute2.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:https://www.kernel.org/pub/linux/utils/net/iproute2/ +[2]:http://xmodulo.com/2013/02/how-to-assign-multiple-ip-addresses-to-one-network-interface-on-centos.html +[3]:http://xmodulo.com/2014/02/spoof-mac-address-network-interface-linux.html +[4]:http://xmodulo.com/2013/02/how-to-add-or-remove-static-arp-entry-on-linux.html diff --git a/sources/tech/20140910 How to create a cloud-based encrypted file system on Linux.md b/sources/tech/20140910 How to create a cloud-based encrypted file system on Linux.md new file mode 100644 index 0000000000..1e8f3c62d1 --- /dev/null +++ b/sources/tech/20140910 How to create a cloud-based encrypted file system on Linux.md @@ -0,0 +1,156 @@ +How to create a cloud-based encrypted file system on Linux +================================================================================ +Commercial cloud storage services such as [Amazon S3][1] and [Google Cloud Storage][2] offer highly available, scalable, infinite-capacity object store at affordable costs. To accelerate wide adoption of their cloud offerings, these providers are fostering rich developer ecosystems around their products based on well-defined APIs and SDKs. Cloud-backed file systems are one popular by-product of such active developer communities, for which several open-source implementations exist. + +[S3QL][3] is one of the most popular open-source cloud-based file systems. It is a FUSE-based file system backed by several commercial or open-source cloud storages, such as Amazon S3, Google Cloud Storage, Rackspace CloudFiles, or OpenStack. As a full featured file system, S3QL boasts of a number of powerful capabilities, such as unlimited capacity, up to 2TB file sizes, compression, UNIX attributes, encryption, snapshots with copy-on-write, immutable trees, de-duplication, hardlink/symlink support, etc. Any bytes written to an S3QL file system are compressed/encrypted locally before being transmitted to cloud backend. When you attempt to read contents stored in an S3QL file system, the corresponding objects are downloaded from cloud (if not in the local cache), and decrypted/uncompressed on the fly. + +To be clear, S3QL does have limitations. For example, you cannot mount the same S3FS file system on several computers simultaneously, but only once at a time. Also, no ACL (access control list) support is available. + +In this tutorial, I am going to describe **how to set up an encrypted file system on top of Amazon S3, using S3QL**. As an example use case, I will also demonstrate how to run rsync backup tool on top of a mounted S3QL file system. + +### Preparation ### + +To use this tutorial, you will need to create an [Amazon AWS account][4] (sign up is free, but requires a valid credit card). + +If you haven't done so, first [create an AWS access key][4] (access key ID and secret access key) which is needed to authorize S3QL to access your AWS account. + +Now, go to AWS S3 via AWS management console, and create a new empty bucket for S3QL. + +![](https://farm4.staticflickr.com/3841/15170673701_7d0660e11f_c.jpg) + +For best performance, choose a region which is geographically closest to you. + +![](https://farm4.staticflickr.com/3902/15150663516_4928d757fc_b.jpg) + +### Install S3QL on Linux ### + +S3QL is available as a pre-built package on most Linux distros. + +#### On Debian, Ubuntu or Linux Mint: #### + + $ sudo apt-get install s3ql + +#### On Fedora: #### + + $ sudo yum install s3ql + +On Arch Linux, use [AUR][6]. + +### Configure S3QL for the First Time ### + +Create authinfo2 file in ~/.s3ql directory, which is a default S3QL configuration file. This file contains information about a required AWS access key, S3 bucket name and encryption passphrase. The encryption passphrase is used to encrypt the randomly-generated master encryption key. This master key is then used to encrypt actual S3QL file system data. + + $ mkdir ~/.s3ql + $ vi ~/.s3ql/authinfo2 + +---------- + + [s3] + storage-url: s3://[bucket-name] + backend-login: [your-access-key-id] + backend-password: [your-secret-access-key] + fs-passphrase: [your-encryption-passphrase] + +The AWS S3 bucket that you specify should be created via AWS management console beforehand. + +Make the authinfo2 file readable to you only for security. + + $ chmod 600 ~/.s3ql/authinfo2 + +### Create an S3QL File System ### + +You are now ready to create an S3QL file system on top of AWS S3. + +Use mkfs.s3ql command to create a new S3QL file system. The bucket name you supply with the command should be matched with the one in authinfo2 file. The "--ssl" option forces you to use SSL to connect to backend storage servers. By default, the mkfs.s3ql command will enable compression and encryption in the S3QL file system. + + $ mkfs.s3ql s3://[bucket-name] --ssl + +You will be asked to enter an encryption passphrase. Type the same passphrase as you defined in ~/.s3ql/autoinfo2 (under "fs-passphrase"). + +If a new file system was created successfully, you will see the following output. + +![](https://farm6.staticflickr.com/5582/14988587230_e182ca3abd_z.jpg) + +### Mount an S3QL File System ### + +Once you created an S3QL file system, the next step is to mount it. + +First, create a local mount point, and then use mount.s3ql command to mount an S3QL file system. + + $ mkdir ~/mnt_s3ql + $ mount.s3ql s3://[bucket-name] ~/mnt_s3ql + +You do not need privileged access to mount an S3QL file system. Just make sure that you have write access to the local mount point. + +Optionally, you can specify a compression algorithm to use (e.g., lzma, bzip2, zlib) with "--compress" option. Without it, lzma algorithm is used by default. Note that when you specify a custom compression algorithm, it will apply to newly created data objects, not existing ones. + + $ mount.s3ql --compress bzip2 s3://[bucket-name] ~/mnt_s3ql + +For performance reason, an S3QL file system maintains a local file cache, which stores recently accessed (partial or full) files. You can customize the file cache size using "--cachesize" and "--max-cache-entries" options. + +To allow other users than you to access a mounted S3QL file system, use "--allow-other" option. + +If you want to export a mounted S3QL file system to other machines over NFS, use "--nfs" option. + +After running mount.s3ql, check if the S3QL file system is successfully mounted: + + $ df ~/mnt_s3ql + $ mount | grep s3ql + +![](https://farm4.staticflickr.com/3863/15174861482_27a842da3e_z.jpg) + +### Unmount an S3QL File System ### + +To unmount an S3QL file system (with potentially uncommitted data) safely, use umount.s3ql command. It will wait until all data (including the one in local file system cache) has been successfully transferred and written to backend servers. Depending on the amount of write-pending data, this process can take some time. + + $ umount.s3ql ~/mnt_s3ql + +View S3QL File System Statistics and Repair an S3QL File System + +To view S3QL file system statistics, you can use s3qlstat command, which shows information such as total data/metadata size, de-duplication and compression ratio. + + $ s3qlstat ~/mnt_s3ql + +![](https://farm6.staticflickr.com/5559/15184926905_4815e5827a_z.jpg) + +You can check and repair an S3QL file system with fsck.s3ql command. Similar to fsck command, the file system being checked needs to be unmounted first. + + $ fsck.s3ql s3://[bucket-name] + +### S3QL Use Case: Rsync Backup ### + +Let me conclude this tutorial with one popular use case of S3QL: local file system backup. For this, I recommend using rsync incremental backup tool especially because S3QL comes with a rsync wrapper script (/usr/lib/s3ql/pcp.py). This script allows you to recursively copy a source tree to a S3QL destination using multiple rsync processes. + + $ /usr/lib/s3ql/pcp.py -h + +![](https://farm4.staticflickr.com/3873/14998096829_d3a64749d0_z.jpg) + +The following command will back up everything in ~/Documents to an S3QL file system via four concurrent rsync connections. + + $ /usr/lib/s3ql/pcp.py -a --quiet --processes=4 ~/Documents ~/mnt_s3ql + +The files will first be copied to the local file cache, and then gradually flushed to the backend servers over time in the background. + +For more information about S3QL such as automatic mounting, snapshotting, immuntable trees, I strongly recommend checking out the [official user's guide][7]. Let me know what you think of S3QL. Share your experience with any other tools. + + + + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/09/create-cloud-based-encrypted-file-system-linux.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:http://aws.amazon.com/s3 +[2]:http://code.google.com/apis/storage/ +[3]:https://bitbucket.org/nikratio/s3ql/ +[4]:http://aws.amazon.com/ +[5]:http://ask.xmodulo.com/create-amazon-aws-access-key.html +[6]:https://aur.archlinux.org/packages/s3ql/ +[7]:http://www.rath.org/s3ql-docs/ \ No newline at end of file diff --git a/sources/tech/20140910 How to download GOG games from the command line on Linux.md b/sources/tech/20140910 How to download GOG games from the command line on Linux.md new file mode 100644 index 0000000000..081e22cb0f --- /dev/null +++ b/sources/tech/20140910 How to download GOG games from the command line on Linux.md @@ -0,0 +1,75 @@ +How to download GOG games from the command line on Linux +================================================================================ +If you are a gamer and a Linux user, you probably were delighted when [GOG][1] announced a few months ago that it will start proposing games for your favorite OS. If you have never heard of GOG before, I encourage you to check out their catalog of “good old games”, reasonably priced, DRM-free, and packed with goodies. However, if the Windows client for GOG existed for quite some time now, an official Linux version is nowhere to be seen. So if waiting for the official version is uncomfortable for you, an unofficial open source program named LGOGDownloader gives you access to your library from the command line. + +![](https://farm4.staticflickr.com/3843/15121593356_b13309c70f_z.jpg) + +### Install LGOGDownloader on Linux ### + +For Ubuntu users, the [official page][2] recommends that you download the sources and do: + + $ sudo apt-get install build-essential libcurl4-openssl-dev liboauth-dev libjsoncpp-dev libhtmlcxx-dev libboost-system-dev libboost-filesystem-dev libboost-regex-dev libboost-program-options-dev libboost-date-time-dev libtinyxml-dev librhash-dev help2man + $ tar -xvzf lgogdownloader-2.17.tar.gz + $ cd lgogdownloader-2.17 + $ make release + $ sudo make install + +If you are an Archlinux user, an [AUR package][2] is waiting for you. + +### Usage of LGOGDownloader ### + +Once the program is installed, you will need to identify yourself with the command: + + $ lgogdownloader --login + +![](https://farm6.staticflickr.com/5593/15121593346_9c5d02d5ce_z.jpg) + +Notice that the configuration file if you need it is at ~/.config/lgogdownloader/config.cfg + +Once authenticated, you can list all the games in your library with: + + $ lgogdownloader --list + +![](https://farm6.staticflickr.com/5581/14958040387_8321bb71cf.jpg) + +Then download one with: + + $ lgogdownloader --download --game [game name] + +![](https://farm6.staticflickr.com/5585/14958040367_b1c584a2d1_z.jpg) + +You will notice that lgogdownloader allows you to resume previously interrupted downloads, which is nice because typical game downloads are not small. + +Like every respectable command line utility, you can add various options: + +- **--platform [number]** to select your OS where 1 is for windows and 4 for Linux. +- **--directory [destination]** to download the installer in a particular directory. +- **--language [number]** for a particular language pack (check the manual pages for the number corresponding to your language). +- **--limit-rate [speed]** to limit the downloading rate at a particular speed. + +As a side bonus, lgogdownloader also comes with the possibility to check for updates on the GOG website: + + $ lgogdownloader --update-check + +![](https://farm4.staticflickr.com/3882/14958035568_7889acaef0.jpg) + +The result will list the number of forum and private messages you have received, as well as the number of updated games. + +To conclude, lgogdownloader is pretty standard when it comes to command line utilities. I would even say that it is an epitome of clarity and coherence. It is true that we are far in term of features from the relatively recent Steam Linux client, but on the other hand, the official GOG windows client does not do much more than this unofficial Linux version. In other words lgogdownloader is a perfect replacement. I cannot wait to see more Linux compatible games on GOG, especially after their recent announcements to offer DRM free movies, with a thematic around video games. Hopefully we will see an update in the client for when movie catalog matches the game library. + +What do you think of GOG? Would you use the unofficial Linux Client? Let us know in the comments. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/09/download-gog-games-command-line-linux.html + +作者:[Adrien Brochard][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/adrien +[1]:http://www.gog.com/ +[2]:https://sites.google.com/site/gogdownloader/home +[3]:https://aur.archlinux.org/packages/lgogdownloader/ \ No newline at end of file diff --git a/sources/tech/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md b/sources/tech/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md new file mode 100644 index 0000000000..39e2270b87 --- /dev/null +++ b/sources/tech/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md @@ -0,0 +1,155 @@ +How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE) +================================================================================ +In a [previous tutorial][1]注:此篇文章在同一个更新中,如果也翻译了,发布的时候可修改相应的链接, we have seen how we can set up Nagios Remote Plugin Executor (NRPE) in an existing Nagios setup. However, the scripts and plugins needed to monitor memory usage do not come with stock Nagios. In this tutorial, we will see how we can configure NRPE to monitor RAM usage of a remote server. + +The script that we will use for monitoring RAM is available at [Nagios Exchange][2], as well as the creators' [Github repository][3]. + +Assuming that NRPE has already been set up, we start the process by downloading the script in the server that we want to monitor. + +### Preparing Remote Servers ### + +#### On Debain/Ubuntu: #### + + # cd /usr/lib/nagios/plugins/ + # wget https://raw.githubusercontent.com/justintime/nagios-plugins/master/check_mem/check_mem.pl + # mv check_mem.pl check_mem + # chmod +x check_mem + +#### On RHEL/CentOS: #### + + # cd /usr/lib64/nagios/plugins/ (or /usr/lib/nagios/plugins/ for 32-bit) + # wget https://raw.githubusercontent.com/justintime/nagios-plugins/master/check_mem/check_mem.pl + # mv check_mem.pl check_mem + # chmod +x check_mem + +You can check whether the script generates output properly by manually running the following command on localhost. When used with NRPE, this command is supposed to check free memory, warn when free memory is less than 20%, and generate critical alarm when free memory is less than 10%. + + # ./check_mem -f -w 20 -c 10 + +---------- + + OK - 34.0% (2735744 kB) free.|TOTAL=8035340KB;;;; USED=5299596KB;6428272;7231806;; FREE=2735744KB;;;; CACHES=2703504KB;;;; + +If you see something like the above as an output, that means the command is working okay. + +Now that the script is ready, we define the command to check RAM usage for NRPE. As mentioned before, the command will check free memory, warn when free memory is less than 20%, and generate critical alarm when free memory is less than 10%. + + # vim /etc/nagios/nrpe.cfg + +#### For Debian/Ubuntu: #### + + command[check_mem]=/usr/lib/nagios/plugins/check_mem -f -w 20 -c 10 + +#### For RHEL/CentOS 32 bit: #### + + command[check_mem]=/usr/lib/nagios/plugins/check_mem -f -w 20 -c 10 + +#### For RHEL/CentOS 64 bit: #### + + command[check_mem]=/usr/lib64/nagios/plugins/check_mem -f -w 20 -c 10 + +### Preparing Nagios Server ### + +In the Nagios server, we define a custom command for NRPE. The command can be stored in any directory within Nagios. To keep the tutorial simple, we will put the command definition in /etc/nagios directory. + +#### For Debian/Ubuntu: #### + + # vim /etc/nagios3/conf.d/nrpe_command.cfg + +---------- + + define command{ + command_name check_nrpe + command_line /usr/lib/nagios/plugins/check_nrpe -H '$HOSTADDRESS$' -c '$ARG1$' + } + +#### For RHEL/CentOS 32 bit: #### + + # vim /etc/nagios/objects/nrpe_command.cfg + +---------- + + define command{ + command_name check_nrpe + command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ + } + +#### For RHEL/CentOS 64 bit: #### + + # vim /etc/nagios/objects/nrpe_command.cfg + +---------- + + define command{ + command_name check_nrpe + command_line /usr/lib64/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ + } + +Now we define the service check in Nagios. + +#### On Debian/Ubuntu: #### + + # vim /etc/nagios3/conf.d/nrpe_service_check.cfg + +---------- + + define service{ + use local-service + host_name remote-server + service_description Check RAM + check_command check_nrpe!check_mem + } + +#### On RHEL/CentOS: #### + + # vim /etc/nagios/objects/nrpe_service_check.cfg + +---------- + + define service{ + use local-service + host_name remote-server + service_description Check RAM + check_command check_nrpe!check_mem + } + +Finally, we restart the Nagios service. + +#### On Debian/Ubuntu: #### + + # service nagios3 restart + +#### On RHEL/CentOS 6: #### + + # service nagios restart + +#### On RHEL/CentOS 7: #### + + # systemctl restart nagios.service + +### Troubleshooting ### + +Nagios should start checking RAM usage of a remote-server using NRPE. If you are having any problem, you could check the following. + + +- Make sure that NRPE port is allowed all the way to the remote host. Default NRPE port is TCP 5666. +- You could try manually checking NRPE operation by executing the check_nrpe command: /usr/lib/nagios/plugins/check_nrpe -H remote-server +- You could also try to run the check_mem command manually: /usr/lib/nagios/plugins/check_nrpe -H remote-server –c check_mem +- In the remote server, set debug=1 in /etc/nagios/nrpe.cfg. Restart the NRPE service and check the log file /var/log/messages (RHEL/CentOS) or /var/log/syslog (Debain/Ubuntu). The log files should contain relevant information if there is any configuration or permission errors. If there are not hits in the log, it is very likely that the requests are not reaching the remote server due to port filtering at some point. + +To sum up, this tutorial demonstrated how we can easily tune NRPE to monitor RAM usage of remote servers. The process is as simple as downloading the script, defining the commands, and restarting the services. Hope this helps. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/09/monitor-server-memory-usage-nagios-remote-plugin-executor.html + +作者:[Sarmed Rahman][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/sarmed +[1]:http://xmodulo.com/2014/03/nagios-remote-plugin-executor-nrpe-linux.html +[2]:http://exchange.nagios.org/directory/Plugins/Operating-Systems/Solaris/check_mem-2Epl/details +[3]:https://github.com/justintime/nagios-plugins/blob/master/check_mem/check_mem.pl \ No newline at end of file diff --git a/sources/tech/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md b/sources/tech/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md new file mode 100644 index 0000000000..568400420c --- /dev/null +++ b/sources/tech/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md @@ -0,0 +1,236 @@ +How to set up Nagios Remote Plugin Executor (NRPE) in Linux +================================================================================ +As far as network management is concerned, Nagios is one of the most powerful tools. Nagios can monitor the reachability of remote hosts, as well as the state of services running on them. However, what if we want to monitor something other than network services for a remote host? For example, we may want to monitor the disk utilization or [CPU processor load][1] of a remote host. Nagios Remote Plugin Executor (NRPE) is a tool that can help with doing that. NRPE allows one to execute Nagios plugins installed on remote hosts, and integrate them with an [existing Nagios server][2]. + +This tutorial will cover how to set up NRPE on an existing Nagios deployment. The tutorial is primarily divided into two parts: + +- Configure remote hosts. +- Configure a Nagios monitoring server. + +We will then finish off by defining some custom commands that can be used with NRPE. + +### Configure Remote Hosts for NRPE ### + +#### Step One: Installing NRPE Service #### + +You need to install NRPE service on every remote host that you want to monitor using NRPE. NRPE service daemon on each remote host will then communicate with a Nagios monitoring server. + +Necessary packages for NRPE service can easily be installed using apt-get or yum, subject to the platform. In case of CentOS, we will need to [add Repoforge repository][3] as NRPE is not available in CentOS repositories. + +**On Debian, Ubuntu or Linux Mint:** + + # apt-get install nagios-nrpe-server + +**On CentOS, Fedora or RHEL:** + + # yum install nagios-nrpe + +#### Step Two: Preparing Configuration File #### + +The configuration file /etc/nagios/nrpe.cfg is similar for Debian-based and RedHat-based systems. The configuration file is backed up, and then updated as follows. + + # vim /etc/nagios/nrpe.cfg + +---------- + + ## NRPE service port can be customized ## + server_port=5666 + + ## the nagios monitoring server is permitted ## + ## NOTE: There is no space after the comma ## + allowed_hosts=127.0.0.1,X.X.X.X-IP_v4_of_Nagios_server + + ## The following examples use hard-coded command arguments. + ## These parameters can be modified as needed. + + ## NOTE: For CentOS 64 bit, use /usr/lib64 instead of /usr/lib ## + + command[check_users]=/usr/lib/nagios/plugins/check_users -w 5 -c 10 + command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20 + command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1 + command[check_zombie_procs]=/usr/lib/nagios/plugins/check_procs -w 5 -c 10 -s Z + command[check_total_procs]=/usr/lib/nagios/plugins/check_procs -w 150 -c 200 + +Now that the configuration file is ready, NRPE service is ready to be fired up. + +#### Step Three: Initiating NRPE Service #### + +For RedHat-based systems, the NRPE service needs to be added as a startup service. + +**On Debian, Ubuntu, Linux Mint:** + + # service nagios-nrpe-server restart + +**On CentOS, Fedora or RHEL:** + + # service nrpe restart + # chkconfig nrpe on + +#### Step Four: Verifying NRPE Service Status #### + +Information about NRPE daemon status can be found in the system log. For a Debian-based system, the log file will be /var/log/syslog. The log file for a RedHat-based system will be /var/log/messages. A sample log is provided below for reference. + + nrpe[19723]: Starting up daemon + nrpe[19723]: Listening for connections on port 5666 + nrpe[19723]: Allowing connections from: 127.0.0.1,X.X.X.X + +In case firewall is running, TCP port 5666 should be open, which is used by NRPE daemon. + + # netstat -tpln | grep 5666 + +---------- + + tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN 19885/nrpe + +### Configure Nagios Monitoring Server for NRPE ### + +The first step in configuring an existing Nagios monitoring server for NRPE is to install NRPE plugin on the server. + +#### Step One: Installing NRPE Plugin #### + +In case the Nagios server is running on a Debian-based system (Debian, Ubuntu or Linux Mint), a necessary package can be installed using apt-get. + + # apt-get install nagios-nrpe-plugin + +After the plugin is installed, the check_nrpe command, which comes with the plugin, is modified a bit. + + # vim /etc/nagios-plugins/config/check_nrpe.cfg + +---------- + + ## the default command is overwritten ## + define command{ + command_name check_nrpe + command_line /usr/lib/nagios/plugins/check_nrpe -H '$HOSTADDRESS$' -c '$ARG1$' + } + +In case the Nagios server is running on a RedHat-based system (CentOS, Fedora or RHEL), you can install NRPE plugin using yum. On CentOS, [adding Repoforge repository][4] is necessary. + + # yum install nagios-plugins-nrpe + +Now that the NRPE plugin is installed, proceed to configure a Nagios server following the rest of the steps. + +#### Step Two: Defining Nagios Command for NRPE Plugin #### + +First, we need to define a command in Nagios for using NRPE. + + # vim /etc/nagios/objects/commands.cfg + +---------- + + ## NOTE: For CentOS 64 bit, use /usr/lib64 instead of /usr/lib ## + define command{ + command_name check_nrpe + command_line /usr/lib/nagios/plugins/check_nrpe -H '$HOSTADDRESS$' -c '$ARG1$' + } + +#### Step Three: Adding Host and Command Definition #### + +Next, define remote host(s) and commands to execute remotely on them. + +The following shows sample definitions of a remote host a command to execute on the host. Naturally, your configuration will be adjusted based on your requirements. The path to the file is slightly different for Debian-based and RedHat-based systems. But the content of the files are identical. + +**On Debian, Ubuntu or Linux Mint:** + + # vim /etc/nagios3/conf.d/nrpe.cfg + +**On CentOS, Fedora or RHEL:** + + # vim /etc/nagios/objects/nrpe.cfg + +---------- + + define host{ + use linux-server + host_name server-1 + alias server-1 + address X.X.X.X-IPv4_address_of_remote_host + } + + define service { + host_name server-1 + service_description Check Load + check_command check_nrpe!check_load + check_interval 1 + use generic-service + } + +#### Step Four: Restarting Nagios Service #### + +Before restarting Nagios, updated configuration is verified with a dry run. + +**On Ubuntu, Debian, or Linux Mint:** + + # nagios3 -v /etc/nagios3/nagios.cfg + +**On CentOS, Fedora or RHEL:** + + # nagios -v /etc/nagios/nagios.cfg + +If everything goes well, Nagios service can be restarted. + + # service nagios restart + +![](https://farm8.staticflickr.com/7024/13330387845_0bde8b6db5_z.jpg) + +### Configuring Custom Commands with NRPE ### + +#### Setup on Remote Servers #### + +The following is a list of custom commands that can be used with NRPE. These commands are defined in the file /etc/nagios/nrpe.cfg located at the remote servers. + + ## Warning status when load average exceeds 1, 2 and 1 for 1, 5, 15 minute interval, respectively. + ## Critical status when load average exceeds 3, 5 and 3 for 1, 5, 15 minute interval, respectively. + command[check_load]=/usr/lib/nagios/plugins/check_load -w 1,2,1 -c 3,5,3 + + ## Warning level 25% and critical level 10% for free space of /home. + ## Could be customized to monitor any partition (e.g. /dev/sdb1, /, /var, /home) + command[check_disk]=/usr/lib/nagios/plugins/check_disk -w 25% -c 10% -p /home + + ## Warn if number of instances for process_ABC exceeds 10. Critical for 20 ## + command[check_process_ABC]=/usr/lib/nagios/plugins/check_procs -w 1:10 -c 1:20 -C process_ABC + + ## Critical if the number of instances for process_XYZ drops below 1 ## + command[check_process_XYZ]=/usr/lib/nagios/plugins/check_procs -w 1: -c 1: -C process_XYZ + +#### Setup on Nagios Monitoring Server #### + +To apply the custom commands defined above, we modify the service definition at Nagios monitoring server as follows. The service definition could go to the file where all the services are defined (e.g., /etc/nagios/objects/nrpe.cfg or /etc/nagios3/conf.d/nrpe.cfg) + + ## example 1: check process XYZ ## + define service { + host_name server-1 + service_description Check Process XYZ + check_command check_nrpe!check_process_XYZ + check_interval 1 + use generic-service + } + + ## example 2: check disk state ## + define service { + host_name server-1 + service_description Check Process XYZ + check_command check_nrpe!check_disk + check_interval 1 + use generic-service + } + +To sum up, NRPE is a powerful add-on to Nagios as it provides provision for monitoring a remote server in a highly configurable fashion. Using NRPE, we can monitor server load, running processes, logged in users, disk states and other parameters. + +Hope this helps. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/03/nagios-remote-plugin-executor-nrpe-linux.html + +作者:[Sarmed Rahman][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/sarmed +[1]:http://xmodulo.com/2012/08/how-to-measure-average-cpu-utilization.html +[2]:http://xmodulo.com/2013/12/install-configure-nagios-linux.html +[3]:http://xmodulo.com/2013/01/how-to-set-up-rpmforge-repoforge-repository-on-centos.html +[4]:http://xmodulo.com/2013/01/how-to-set-up-rpmforge-repoforge-repository-on-centos.html diff --git a/sources/tech/20140911 20 Useful Commands of 'Sysstat' Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md b/sources/tech/20140911 20 Useful Commands of 'Sysstat' Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md new file mode 100644 index 0000000000..244ab29ddf --- /dev/null +++ b/sources/tech/20140911 20 Useful Commands of 'Sysstat' Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md @@ -0,0 +1,404 @@ +20 Useful Commands of ‘Sysstat’ Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring +================================================================================ +In our last article, we have learned about installing and upgrading the **sysstat** package and understanding briefly about the utilities which comes with the package. + +注:此文一并附上,在同一个原文更新中 +- [Sysstat – Performance and Usage Activity Monitoring Tool For Linux][1] + +![20 Sysstat Commands for Linux Monitoring](http://www.tecmint.com/wp-content/uploads/2014/09/sysstat-commands.png) + +20 Sysstat Commands for Linux Monitoring + +Today, we are going to work with some interesting practical examples of **mpstat, pidstat, iostat** and **sar** utilities, which can help us to identify the issues. We have different options to use these utilities, I mean you can fire the commands manually with different options for different kind of work or you can create your customized scripts according to your requirements. You know Sysadmins are always bit Lazy, and always tried to find out the easy way to do the things with minimum efforts. + +### mpstat – Processors Statistics ### + +1.Using mpstat command without any option, will display the Global Average Activities by All CPUs. + + tecmint@tecmint ~ $ mpstat + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:23:57 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle + 12:23:57 IST all 37.35 0.01 4.72 2.96 0.00 0.07 0.00 0.00 0.00 54.88 + +2.Using mpstat with option ‘**-P**‘ (Indicate Processor Number) and ‘ALL’, will display statistics about all CPUs one by one starting from 0. 0 will the first one. + + tecmint@tecmint ~ $ mpstat -P ALL + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:29:26 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle + 12:29:26 IST all 37.33 0.01 4.57 2.58 0.00 0.07 0.00 0.00 0.00 55.44 + 12:29:26 IST 0 37.90 0.01 4.96 2.62 0.00 0.03 0.00 0.00 0.00 54.48 + 12:29:26 IST 1 36.75 0.01 4.19 2.54 0.00 0.11 0.00 0.00 0.00 56.40 + +3.To display the statistics for **N** number of iterations after n seconds interval with average of each cpu use the following command. + + tecmint@tecmint ~ $ mpstat -P ALL 2 5 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:36:21 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle + 12:36:23 IST all 53.38 0.00 2.26 0.00 0.00 0.00 0.00 0.00 0.00 44.36 + 12:36:23 IST 0 46.23 0.00 1.51 0.00 0.00 0.00 0.00 0.00 0.00 52.26 + 12:36:23 IST 1 60.80 0.00 3.02 0.00 0.00 0.00 0.00 0.00 0.00 36.18 + + 12:36:23 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle + 12:36:25 IST all 34.18 0.00 2.30 0.00 0.00 0.00 0.00 0.00 0.00 63.52 + 12:36:25 IST 0 31.63 0.00 1.53 0.00 0.00 0.00 0.00 0.00 0.00 66.84 + 12:36:25 IST 1 36.73 0.00 2.55 0.00 0.00 0.00 0.00 0.00 0.00 60.71 + + 12:36:25 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle + 12:36:27 IST all 33.42 0.00 5.06 0.25 0.00 0.25 0.00 0.00 0.00 61.01 + 12:36:27 IST 0 34.34 0.00 4.04 0.00 0.00 0.00 0.00 0.00 0.00 61.62 + 12:36:27 IST 1 32.82 0.00 6.15 0.51 0.00 0.00 0.00 0.00 0.00 60.51 + +4.The option ‘**I**‘ will print total number of interrupt statistics about per processor. + + tecmint@tecmint ~ $ mpstat -I + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:39:56 IST CPU intr/s + 12:39:56 IST all 651.04 + + 12:39:56 IST CPU 0/s 1/s 6/s 8/s 9/s 12/s 16/s 17/s 20/s 21/s 22/s 23/s 45/s 46/s 47/s NMI/s LOC/s SPU/s PMI/s IWI/s RTR/s RES/s CAL/s TLB/s TRM/s THR/s MCE/s MCP/s ERR/s MIS/s + 12:39:56 IST 0 76.27 1.73 0.00 0.00 0.42 0.33 0.00 0.06 11.46 0.00 0.00 0.01 7.62 1.87 0.05 0.33 182.26 0.00 0.33 3.03 0.00 22.66 0.16 5.14 0.00 0.00 0.00 0.00 0.00 0.00 + 12:39:56 IST 1 70.88 1.44 0.00 0.00 0.41 0.33 0.00 27.91 10.33 0.00 0.00 0.01 7.27 1.79 0.05 0.32 184.11 0.00 0.32 5.17 0.00 22.09 0.13 4.73 0.00 0.00 0.00 0.00 0.00 0.00 + + 12:39:56 IST CPU HI/s TIMER/s NET_TX/s NET_RX/s BLOCK/s BLOCK_IOPOLL/s TASKLET/s SCHED/s HRTIMER/s RCU/s + 12:39:56 IST 0 0.00 116.49 0.05 0.27 7.33 0.00 1.22 10.44 0.13 37.47 + 12:39:56 IST 1 0.00 111.65 0.05 0.41 7.07 0.00 56.36 9.97 0.13 41.38 + +5.Get all the above information in one command i.e. equivalent to “**-u -I ALL -p ALL**“. + + tecmint@tecmint ~ $ mpstat -A + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:41:39 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle + 12:41:39 IST all 38.70 0.01 4.47 2.01 0.00 0.06 0.00 0.00 0.00 54.76 + 12:41:39 IST 0 39.15 0.01 4.82 2.05 0.00 0.02 0.00 0.00 0.00 53.95 + 12:41:39 IST 1 38.24 0.01 4.12 1.98 0.00 0.09 0.00 0.00 0.00 55.57 + + 12:41:39 IST CPU intr/s + 12:41:39 IST all 651.73 + 12:41:39 IST 0 173.16 + 12:41:39 IST 1 225.89 + + 12:41:39 IST CPU 0/s 1/s 6/s 8/s 9/s 12/s 16/s 17/s 20/s 21/s 22/s 23/s 45/s 46/s 47/s NMI/s LOC/s SPU/s PMI/s IWI/s RTR/s RES/s CAL/s TLB/s TRM/s THR/s MCE/s MCP/s ERR/s MIS/s + 12:41:39 IST 0 76.04 1.77 0.00 0.00 0.41 0.36 0.00 0.06 11.60 0.00 0.00 0.01 7.42 1.83 0.05 0.34 182.89 0.00 0.34 2.97 0.00 22.69 0.16 5.22 0.00 0.00 0.00 0.00 0.00 0.00 + 12:41:39 IST 1 70.70 1.48 0.00 0.00 0.40 0.36 0.00 27.47 10.46 0.00 0.00 0.01 7.08 1.75 0.05 0.32 184.83 0.00 0.32 5.10 0.00 22.19 0.13 4.91 0.00 0.00 0.00 0.00 0.00 0.00 + + 12:41:39 IST CPU HI/s TIMER/s NET_TX/s NET_RX/s BLOCK/s BLOCK_IOPOLL/s TASKLET/s SCHED/s HRTIMER/s RCU/s + 12:41:39 IST 0 0.00 116.96 0.05 0.26 7.12 0.00 1.24 10.42 0.12 36.99 + 12:41:39 IST 1 0.00 112.25 0.05 0.40 6.88 0.00 55.05 9.93 0.13 41.20 + +### pidstat – Process and Kernel Threads Statistics ### + +This is used for process monitoring and current threads, which are being managed by kernel. pidstat can also check the status about child processes and threads. + +#### Syntax #### + + # pidstat [INTERVAL] [COUNT] + +6.Using pidstat command without any argument, will display all active tasks. + + tecmint@tecmint ~ $ pidstat + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:47:24 IST UID PID %usr %system %guest %CPU CPU Command + 12:47:24 IST 0 1 0.01 0.12 0.00 0.13 1 init + 12:47:24 IST 0 3 0.00 0.01 0.00 0.01 0 ksoftirqd/0 + 12:47:24 IST 0 9 0.00 0.04 0.00 0.04 0 rcu_sched + 12:47:24 IST 0 10 0.00 0.00 0.00 0.00 0 watchdog/0 + 12:47:24 IST 0 11 0.00 0.00 0.00 0.00 1 watchdog/1 + 12:47:24 IST 0 12 0.00 0.00 0.00 0.00 1 migration/1 + 12:47:24 IST 0 13 0.00 0.01 0.00 0.01 1 ksoftirqd/1 + 12:47:24 IST 0 23 0.00 0.00 0.00 0.00 0 kworker/u9:0 + 12:47:24 IST 0 29 0.00 0.61 0.00 0.61 0 kworker/0:1 + 12:47:24 IST 0 30 0.00 0.06 0.00 0.06 1 kworker/1:1 + 12:47:24 IST 0 224 0.00 0.01 0.00 0.01 1 jbd2/sda1-8 + 12:47:24 IST 0 360 0.00 0.00 0.00 0.00 1 upstart-udev-br + 12:47:24 IST 0 365 0.01 0.00 0.00 0.01 0 systemd-udevd + 12:47:24 IST 0 476 0.00 0.00 0.00 0.00 0 kworker/u9:1 + +7.To print all active and non-active tasks use the option ‘**-p**‘ (processes). + + tecmint@tecmint ~ $ pidstat -p ALL + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 12:51:55 IST UID PID %usr %system %guest %CPU CPU Command + 12:51:55 IST 0 1 0.01 0.11 0.00 0.12 1 init + 12:51:55 IST 0 2 0.00 0.00 0.00 0.00 0 kthreadd + 12:51:55 IST 0 3 0.00 0.01 0.00 0.01 0 ksoftirqd/0 + 12:51:55 IST 0 5 0.00 0.00 0.00 0.00 0 kworker/0:0H + 12:51:55 IST 0 7 0.00 0.00 0.00 0.00 0 migration/0 + 12:51:55 IST 0 8 0.00 0.00 0.00 0.00 0 rcu_bh + 12:51:55 IST 0 9 0.00 0.04 0.00 0.04 1 rcu_sched + 12:51:55 IST 0 10 0.00 0.00 0.00 0.00 0 watchdog/0 + 12:51:55 IST 0 11 0.00 0.00 0.00 0.00 1 watchdog/1 + 12:51:55 IST 0 12 0.00 0.00 0.00 0.00 1 migration/1 + 12:51:55 IST 0 13 0.00 0.01 0.00 0.01 1 ksoftirqd/1 + 12:51:55 IST 0 15 0.00 0.00 0.00 0.00 1 kworker/1:0H + 12:51:55 IST 0 16 0.00 0.00 0.00 0.00 1 khelper + 12:51:55 IST 0 17 0.00 0.00 0.00 0.00 0 kdevtmpfs + 12:51:55 IST 0 18 0.00 0.00 0.00 0.00 0 netns + 12:51:55 IST 0 19 0.00 0.00 0.00 0.00 0 writeback + 12:51:55 IST 0 20 0.00 0.00 0.00 0.00 1 kintegrityd + +8.Using pidstat command with ‘**-d 2**‘ option, we can get I/O statistics and 2 is interval in seconds to get refreshed statistics. This option can be handy in situation, where your system is undergoing heavy I/O and you want to get clues about the processes consuming high resources. + + tecmint@tecmint ~ $ pidstat -d 2 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 03:26:53 EDT PID kB_rd/s kB_wr/s kB_ccwr/s Command + + 03:26:55 EDT PID kB_rd/s kB_wr/s kB_ccwr/s Command + 03:26:57 EDT 574 0.00 148.00 2.00 miniserv.pl + + 03:27:01 EDT PID kB_rd/s kB_wr/s kB_ccwr/s Command + 03:27:03 EDT 1 0.00 8.00 2.00 init + 03:27:03 EDT 450 0.00 2.00 0.00 rsyslogd + 03:27:03 EDT 534 138.00 10.00 4.00 crond + 03:27:03 EDT 25100 0.00 6.00 0.00 sendmail + 03:27:03 EDT 30829 0.00 6.00 0.00 java + +9.To know the cpu statistics along with all threads about the process id **4164** at interval of **2** sec for **3** times use the following command with option ‘-t‘ (display statistics of selected process). + + tecmint@tecmint ~ $ pidstat -t -p 4164 2 3 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 01:09:06 IST UID TGID TID %usr %system %guest %CPU CPU Command + 01:09:08 IST 1000 4164 - 22.00 1.00 0.00 23.00 1 firefox + 01:09:08 IST 1000 - 4164 20.00 0.50 0.00 20.50 1 |__firefox + 01:09:08 IST 1000 - 4171 0.00 0.00 0.00 0.00 0 |__Gecko_IOThread + 01:09:08 IST 1000 - 4172 0.00 0.00 0.00 0.00 0 |__Socket + 01:09:08 IST 1000 - 4173 0.00 0.00 0.00 0.00 0 |__JS + 01:09:08 IST 1000 - 4174 0.00 0.00 0.00 0.00 0 |__JS + 01:09:08 IST 1000 - 4175 0.00 0.00 0.00 0.00 0 |__Hang + 01:09:08 IST 1000 - 4176 0.00 0.00 0.00 0.00 1 |__gdbus + 01:09:08 IST 1000 - 4177 0.00 0.00 0.00 0.00 1 |__gmain + +10.Use the ‘**-rh**‘ option, to know the about memory utilization of processes which are frequently varying their utilization in **2** second interval. + + tecmint@tecmint ~ $ pidstat -rh 2 3 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + # Time UID PID minflt/s majflt/s VSZ RSS %MEM Command + 1409816695 1000 3958 3378.22 0.00 707420 215972 5.32 cinnamon + 1409816695 1000 4164 406.93 0.00 1252024 461404 11.36 firefox + 1409816695 1000 6676 168.81 0.00 4436 984 0.02 pidstat + + # Time UID PID minflt/s majflt/s VSZ RSS %MEM Command + 1409816697 0 1601 644.00 0.00 506728 316788 7.80 Xorg + 1409816697 1000 3958 3412.00 0.00 707420 215972 5.32 cinnamon + 1409816697 1000 4164 2667.00 0.00 1259576 471724 11.62 firefox + 1409816697 1000 6676 172.50 0.00 4436 1020 0.03 pidstat + + # Time UID PID minflt/s majflt/s VSZ RSS %MEM Command + 1409816699 0 1601 644.00 0.00 506728 316788 7.80 Xorg + 1409816699 1000 3958 4094.00 0.00 710148 218700 5.39 cinnamon + 1409816699 1000 4164 599.00 0.00 1261944 476664 11.74 firefox + 1409816699 1000 6676 168.00 0.00 4436 1020 0.03 pidstat + +11.To print all the process of containing string “**VB**“, use ‘**-t**‘ option to see threads as well. + + tecmint@tecmint ~ $ pidstat -G VB + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 01:09:06 IST UID PID %usr %system %guest %CPU CPU Command + 01:09:08 IST 1000 1492 22.00 1.00 0.00 23.00 1 VBoxService + 01:09:08 IST 1000 1902 4164 20.00 0.50 0.00 20.50 VBoxClient + 01:09:08 IST 1000 1922 4171 0.00 0.00 0.00 0.00 VBoxClient + +---------- + + tecmint@tecmint ~ $ pidstat -t -G VB + Linux 2.6.32-431.el6.i686 (tecmint) 09/04/2014 _i686_ (2 CPU) + + 03:19:52 PM UID TGID TID %usr %system %guest %CPU CPU Command + 03:19:52 PM 0 1479 - 0.01 0.12 0.00 0.13 1 VBoxService + 03:19:52 PM 0 - 1482 0.00 0.00 0.00 0.00 0 |__timesync + 03:19:52 PM 0 - 1483 0.01 0.06 0.00 0.06 0 |__vminfo + 03:19:52 PM 0 - 1485 0.00 0.01 0.00 0.01 1 |__memballoon + 03:19:52 PM 0 - 1486 0.00 0.01 0.00 0.01 1 |__vmstats + 03:19:52 PM 0 - 1487 0.00 0.05 0.00 0.05 0 |__automount + 03:19:52 PM 0 1913 - 0.00 0.00 0.00 0.00 0 VBoxClient + 03:19:52 PM 0 - 1913 0.00 0.00 0.00 0.00 0 |__VBoxClient + 03:19:52 PM 0 - 1942 0.00 0.00 0.00 0.00 0 |__SHCLIP + 03:19:52 PM 0 1933 - 0.04 0.89 0.00 0.93 0 VBoxClient + 03:19:52 PM 0 - 1936 0.04 0.89 0.00 0.93 1 |__X11-NOTIFY + +12.To get realtime priority and scheduling information use option ‘**-R**‘ . + + tecmint@tecmint ~ $ pidstat -R + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 01:09:06 IST UID PID prio policy Command + 01:09:08 IST 1000 3 99 FIFO migration/0 + 01:09:08 IST 1000 5 99 FIFO migration/0 + 01:09:08 IST 1000 6 99 FIFO watchdog/0 + +Here, I am not going to cover about Iostat utility, as we are already covered it. Please have a look on “[Linux Performance Monitoring with Vmstat and Iostat][2]注:此文也一并附上在同一个原文更新中” to get all details about iostat. + +### sar – System Activity Reporter ### + +Using “**sar**” command, we can get the reports about whole system’s performance. This can help us to locate the system bottleneck and provide the help to find out the solutions to these annoying performance issues. + +The Linux Kernel maintains some counter internally, which keeps track of all requests, their completion time and I/O block counts etc. From all these information, sar calculates rates and ratio of these request to find out about bottleneck areas. + +The main thing about the sar is that, it reports all activities over a period if time. So, make sure that sar collect data on appropriate time (not on Lunch time or on weekend.:) + +13.Following is a basic command to invoke sar. It will create one file named “**sarfile**” in your current directory. The options ‘**-u**‘ is for CPU details and will collect **5** reports at an interval of **2** seconds. + + tecmint@tecmint ~ $ sar -u -o sarfile 2 5 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 01:42:28 IST CPU %user %nice %system %iowait %steal %idle + 01:42:30 IST all 36.52 0.00 3.02 0.00 0.00 60.45 + 01:42:32 IST all 43.32 0.00 5.04 0.00 0.00 51.64 + 01:42:34 IST all 56.46 0.00 4.05 0.00 0.00 39.49 + 01:42:36 IST all 44.44 0.00 3.79 0.00 0.00 51.77 + 01:42:38 IST all 50.75 0.00 3.75 0.00 0.00 45.50 + Average: all 46.30 0.00 3.93 0.00 0.00 49.77 + +14.In the above example, we have invoked sar interactively. We also have an option to invoke it non-interactively via cron using scripts **/usr/local/lib/sa1** and **/usr/local/lib/sa2** (If you have used **/usr/local** as prefix during installation time). + +- **/usr/local/lib/sa1** is a shell script that we can use for scheduling cron which will create daily binary log file. +- **/usr/local/lib/sa2** is a shell script will change binary log file to human-readable form. + +Use the following Cron entries for making this non-interactive: + + # Run sa1 shell script every 10 minutes for collecting data + */2 * * * * /usr/local/lib/sa/sa1 2 10 + + # Generate a daily report in human readable format at 23:53 + 53 23 * * * /usr/local/lib/sa/sa2 -A + +At the back-end sa1 script will call **sadc** (System Activity Data Collector) utility for fetching the data at a particular interval. **sa2** will call sar for changing binary log file to human readable form. + +15.Check run queue length, total number of processes and load average using ‘**-q**‘ option. + + tecmint@tecmint ~ $ sar -q 2 5 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 02:00:44 IST runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked + 02:00:46 IST 1 431 1.67 1.22 0.97 0 + 02:00:48 IST 4 431 1.70 1.23 0.97 0 + 02:00:50 IST 2 431 1.70 1.23 0.97 0 + 02:00:52 IST 2 431 1.70 1.23 0.97 0 + 02:00:54 IST 0 431 1.64 1.23 0.97 0 + Average: 2 431 1.68 1.23 0.97 0 + +16.Check statistics about the mounted file systems using ‘**-F**‘. + + tecmint@tecmint ~ $ sar -F 2 4 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 02:02:31 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM + 02:02:33 IST 1001 449 30.95 1213790475088.85 18919505 364463 1.89 /dev/sda1 + + 02:02:33 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM + 02:02:35 IST 1001 449 30.95 1213790475088.85 18919505 364463 1.89 /dev/sda1 + + 02:02:35 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM + 02:02:37 IST 1001 449 30.95 1213790475088.85 18919505 364463 1.89 /dev/sda1 + + 02:02:37 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM + 02:02:39 IST 1001 449 30.95 1213790475088.86 18919505 364463 1.89 /dev/sda1 + + Summary MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM + Summary 1001 449 30.95 1213790475088.86 18919505 364463 1.89 /dev/sda1 + +17.View network statistics using ‘**-n DEV**‘. + + tecmint@tecmint ~ $ sar -n DEV 1 3 | egrep -v lo + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 02:11:59 IST IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s + 02:12:00 IST wlan0 8.00 10.00 1.23 0.92 0.00 0.00 0.00 + 02:12:00 IST vmnet8 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + 02:12:00 IST eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + 02:12:00 IST vmnet1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + +18.View block device statistics like iostat using ‘**-d**‘. + + tecmint@tecmint ~ $ sar -d 1 3 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 02:13:17 IST DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util + 02:13:18 IST dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + + 02:13:18 IST DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util + 02:13:19 IST dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + + 02:13:19 IST DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util + 02:13:20 IST dev8-0 7.00 32.00 80.00 16.00 0.11 15.43 15.43 10.80 + +19.To print memory statistics use ‘**-r**‘ option. + + tecmint@tecmint ~ $ sar -r 1 3 + + Linux 3.11.0-23-generic (tecmint.com) Thursday 04 September 2014 _i686_ (2 CPU) + + 02:14:29 IST kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty + 02:14:30 IST 1465660 2594840 63.90 133052 1549644 3710800 45.35 1133148 1359792 392 + 02:14:31 IST 1472724 2587776 63.73 133060 1549792 3715504 45.40 1125816 1360000 836 + 02:14:32 IST 1469112 2591388 63.82 133060 1550036 3705288 45.28 1130252 1360168 804 + Average: 1469165 2591335 63.82 133057 1549824 3710531 45.34 1129739 1359987 677 + +20.Using ‘**sadf -d**‘, we can extract data in format which can be processed using databases. + + tecmint@tecmint ~ $ safd -d /var/log/sa/sa20140903 -- -n DEV | grep -v lo + + # hostname;interval;timestamp;IFACE;rxpck/s;txpck/s;rxkB/s;txkB/s;rxcmp/s;txcmp/s;rxmcst/s;%ifutil + tecmint;2;2014-09-03 07:53:29 UTC;eth0;1.50;0.00;0.13;0.00;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 07:53:31 UTC;eth0;2.00;0.00;0.18;0.00;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 07:53:33 UTC;eth0;1.00;0.00;0.09;0.00;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 07:53:35 UTC;eth0;2.00;0.00;0.18;0.00;0.00;0.00;0.00;0.00 + tecmint;14778;2014-09-03 11:59:54 UTC;eth0;1.78;1.17;1.10;0.18;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 11:59:56 UTC;eth0;3.50;3.00;0.60;0.77;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 11:59:58 UTC;eth0;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:00 UTC;eth0;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:02 UTC;eth0;0.50;0.50;0.48;0.03;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:04 UTC;eth0;2.50;3.50;0.21;2.05;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:06 UTC;eth0;1.49;1.00;0.62;0.06;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:08 UTC;eth0;0.50;0.00;0.03;0.00;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:10 UTC;eth0;0.50;0.50;0.03;0.04;0.00;0.00;0.00;0.00 + tecmint;2;2014-09-03 12:00:12 UTC;eth0;1.00;0.50;0.12;0.04;0.00;0.00;0.00;0.00 + +You can also save this to a csv and then can draw chart for presentation kind of stuff as below. + +![Network Graph](http://www.tecmint.com/wp-content/uploads/2014/09/sar-graph.png) + +Network Graph + +That’s it for now, you can refer man pages for more information about each option and don’t forget to tell about article with your valuable comments. + +-------------------------------------------------------------------------------- + +via: http://www.tecmint.com/sysstat-commands-to-monitor-linux/ + +作者:[Kuldeep Sharma][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.tecmint.com/author/kuldeepsharma47/ +[1]:http://www.tecmint.com/install-sysstat-in-linux/ +[2]:http://www.tecmint.com/linux-performance-monitoring-with-vmstat-and-iostat-commands/ \ No newline at end of file diff --git a/sources/tech/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md b/sources/tech/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md new file mode 100644 index 0000000000..80dd3eff6f --- /dev/null +++ b/sources/tech/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md @@ -0,0 +1,61 @@ +johnhoow translating... +Install UberWriter Markdown Editor In Ubuntu 14.04 +================================================================================ +Quick tutorial to show you **how to install UberWriter markdown editor in Ubuntu 14.04** for free via official PPA. + +[UberWriter][1] is a [markdown][2] editor for Ubuntu with a clean interface with focus on writing only. UberWriter utilizes [pandoc][3] markdown. The UI is based on GTK3 which is not yet fully integrated with Unity. A quick list of features for UberWriter is as following: + +- Clean interface +- pandoc markdown +- Preview option +- Distraction free “focus mode” +- Spell check +- Syntax highlighting and math in html and pdf +- Option to export as PDF, HTML, ODT etc + +### Install UberWriter in Ubuntu 14.04 ### + +UberWriter is available in [Ubuntu Software Center][4] but it costs $5. I would really recommend that you buy it, if you like it and if you can afford it to support the developer. + +UberWriter is also available for free via its official PPA. You can install it using the following commands in terminal: + + sudo add-apt-repository ppa:w-vollprecht/ppa + sudo apt-get update + sudo apt-get install uberwriter + +Once installed, you can run it from Unity Dash. Write down your document in UberWriter. As you can see, it highlights the markdown syntax: + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/09/UberWriter_Ubuntu.jpeg) + +You can use the preview feature to see how your document will actually look like: + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/09/UberWriter_Ubuntu_1.jpeg) + +I tried to export it as PDF but it asked me to install texlive. + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/09/UberWriter_Ubuntu_PDF_Export.png) + +Export to HTML and ODT was fine though. + +There are several other markdown editors available for Linux. [Remarkable][5] is one of them which has the feature of real time preview, which is not in UberWriter. But overall it is a nice application. If you are looking for document writing tool, you can also use [Texmaker LaTeX editor][6]. + +I hope this tutorial helped you to **install UberWriter in Ubuntu 14.04**. I haven’t tried but I presume that it should also work in Ubuntu 12.04, Linux Mint 17, Elementary OS and other Linux distributions based on Ubuntu. + + +-------------------------------------------------------------------------------- + +via: http://itsfoss.com/install-uberwriter-markdown-editor-ubuntu-1404/ + +作者:[Abhishek][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://itsfoss.com/author/Abhishek/ +[1]:http://uberwriter.wolfvollprecht.de/ +[2]:http://en.wikipedia.org/wiki/Markdown +[3]:http://johnmacfarlane.net/pandoc/ +[4]:apt://uberwriter +[5]:http://itsfoss.com/remarkable-markdown-editor-linux/ +[6]:http://itsfoss.com/install-latex-ubuntu-1404/ diff --git a/sources/tech/20140911 Linux Performance Monitoring with Vmstat and Iostat Commands.md b/sources/tech/20140911 Linux Performance Monitoring with Vmstat and Iostat Commands.md new file mode 100644 index 0000000000..5a1183ef28 --- /dev/null +++ b/sources/tech/20140911 Linux Performance Monitoring with Vmstat and Iostat Commands.md @@ -0,0 +1,246 @@ +translating by cvsher +Linux Performance Monitoring with Vmstat and Iostat Commands +================================================================================ +This is our on-going series of commands and performance monitoring in **Linux**. **Vmstat** and **Iostat** both commands are available on all major **Unix-like (Linux/Unix/FreeBSD/Solaris)** Operating Systems. + +If **vmstat** and **iostat** commands are not available on your box, please install **sysstat** package. The **vmstat**, **sar** and **iostat** commands are the collection of package included in **sysstat** – the system monitoring tools. The iostat generates reports of **CPU** & all device statistics. You may download and install **sysstat** using source tarball from link [sysstat][1], but we recommend installing through **YUM** command. + +![Linux Performance Monitoring with Vmstat and Iostat](http://www.tecmint.com/wp-content/uploads/2012/09/Linux-VmStat-Iostat-Commands.png) + +Linux Performance Monitoring with Vmstat and Iostat + +### Install Sysstat in Linux ### + + # yum -y install sysstat + +- **vmstat** – Summary information of Memory, Processes, Paging etc. +- **iostat** – Central Processing Unit (CPU) statistics and input/output statistics for devices and partitions. + +### 6 Vmstat Command Examples in Linux ### + +#### 1. List Active and Inactive Memory #### + +In the below example, there are six columns. The significant of the columns are explained in man page of **vmstat** in details. Most important fields are **free** under memory and **si**, **so** under swap column. + + [root@tecmint ~]# vmstat -a + + procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- + r b swpd free inact active si so bi bo in cs us sy id wa st + 1 0 0 810420 97380 70628 0 0 115 4 89 79 1 6 90 3 0 + +- **Free** – Amount of free/idle memory spaces. +- **si** – Swaped in every second from disk in Kilo Bytes. +- **so** – Swaped out every second to disk in Kilo Bytes. + +**Note**: If you run **vmstat** without parameters it’ll displays summary report since system boot. + +#### 2. Execute vmstat ‘X’ seconds and (‘N’number of times) #### + +With this command, **vmstat** execute every two seconds and stop automatically after executing six intervals. + + [root@tecmint ~]# vmstat 2 6 + + procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- + r b swpd free buff cache si so bi bo in cs us sy id wa st + 0 0 0 810420 22064 101368 0 0 56 3 50 57 0 3 95 2 0 + 0 0 0 810412 22064 101368 0 0 0 0 16 35 0 0 100 0 0 + 0 0 0 810412 22064 101368 0 0 0 0 14 35 0 0 100 0 0 + 0 0 0 810412 22064 101368 0 0 0 0 17 38 0 0 100 0 0 + 0 0 0 810412 22064 101368 0 0 0 0 17 35 0 0 100 0 0 + 0 0 0 810412 22064 101368 0 0 0 0 18 36 0 1 100 0 0 + +#### 3. Vmstat with timestamps #### + +**vmstat** command with **-t** parameter shows timestamps with every line printed as shown below. + + [tecmint@tecmint ~]$ vmstat -t 1 5 + + procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp--- + r b swpd free buff cache si so bi bo in cs us sy id wa st + 0 0 0 632028 24992 192244 0 0 70 5 55 78 1 3 95 1 0 2012-09-02 14:57:18 IST + 1 0 0 632028 24992 192244 0 0 0 0 171 514 1 5 94 0 0 2012-09-02 14:57:19 IST + 1 0 0 631904 24992 192244 0 0 0 0 195 600 0 5 95 0 0 2012-09-02 14:57:20 IST + 0 0 0 631780 24992 192244 0 0 0 0 156 524 0 5 95 0 0 2012-09-02 14:57:21 IST + 1 0 0 631656 24992 192244 0 0 0 0 189 592 0 5 95 0 0 2012-09-02 14:57:22 IST + +#### 4. Statistics of Various Counter #### + +**vmstat** command and -s switch displays summary of various event counters and memory statistics. + + [tecmint@tecmint ~]$ vmstat -s + + 1030800 total memory + 524656 used memory + 277784 active memory + 185920 inactive memory + 506144 free memory + 26864 buffer memory + 310104 swap cache + 2064376 total swap + 0 used swap + 2064376 free swap + 4539 non-nice user cpu ticks + 0 nice user cpu ticks + 11569 system cpu ticks + 329608 idle cpu ticks + 5012 IO-wait cpu ticks + 79 IRQ cpu ticks + 74 softirq cpu ticks + 0 stolen cpu ticks + 336038 pages paged in + 67945 pages paged out + 0 pages swapped in + 0 pages swapped out + 258526 interrupts + 392439 CPU context switches + 1346574857 boot time + 2309 forks + +#### 5. Disks Statistics #### + +**vmstat** with **-d** option display all disks statistics. + + [tecmint@tecmint ~]$ vmstat -d + + disk- ------------reads------------ ------------writes----------- -----IO------ + total merged sectors ms total merged sectors ms cur sec + ram0 0 0 0 0 0 0 0 0 0 0 + ram1 0 0 0 0 0 0 0 0 0 0 + ram2 0 0 0 0 0 0 0 0 0 0 + ram3 0 0 0 0 0 0 0 0 0 0 + ram4 0 0 0 0 0 0 0 0 0 0 + ram5 0 0 0 0 0 0 0 0 0 0 + ram6 0 0 0 0 0 0 0 0 0 0 + ram7 0 0 0 0 0 0 0 0 0 0 + ram8 0 0 0 0 0 0 0 0 0 0 + ram9 0 0 0 0 0 0 0 0 0 0 + ram10 0 0 0 0 0 0 0 0 0 0 + ram11 0 0 0 0 0 0 0 0 0 0 + ram12 0 0 0 0 0 0 0 0 0 0 + ram13 0 0 0 0 0 0 0 0 0 0 + ram14 0 0 0 0 0 0 0 0 0 0 + ram15 0 0 0 0 0 0 0 0 0 0 + loop0 0 0 0 0 0 0 0 0 0 0 + loop1 0 0 0 0 0 0 0 0 0 0 + loop2 0 0 0 0 0 0 0 0 0 0 + loop3 0 0 0 0 0 0 0 0 0 0 + loop4 0 0 0 0 0 0 0 0 0 0 + loop5 0 0 0 0 0 0 0 0 0 0 + loop6 0 0 0 0 0 0 0 0 0 0 + loop7 0 0 0 0 0 0 0 0 0 0 + sr0 0 0 0 0 0 0 0 0 0 0 + sda 7712 5145 668732 409619 3282 28884 257402 644566 0 126 + dm-0 11578 0 659242 1113017 32163 0 257384 8460026 0 126 + dm-1 324 0 2592 3845 0 0 0 0 0 2 + +#### 6. Display Statistics in Megabytes #### + +The **vmstat** displays in **Megabytes** with parameters **-S** and **M**(Uppercase & megabytes). By default **vmstat** displays statistics in kilobytes. + + [root@tecmint ~]# vmstat -S M 1 5 + + procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- + r b swpd free buff cache si so bi bo in cs us sy id wa st + 0 0 0 346 53 476 0 0 95 8 42 55 0 2 96 2 0 + 0 0 0 346 53 476 0 0 0 0 12 15 0 0 100 0 0 + 0 0 0 346 53 476 0 0 0 0 32 62 0 0 100 0 0 + 0 0 0 346 53 476 0 0 0 0 15 13 0 0 100 0 0 + 0 0 0 346 53 476 0 0 0 0 34 61 0 1 99 0 0 + +### 6 Iostat Command Examples in Linux ### + +#### 7. Display CPU and I/O statistics #### + +**iostat** without arguments displays **CPU** and **I/O** statistics of all partitions as shown below. + + [root@tecmint ~]# iostat + + Linux 2.6.32-279.el6.i686 (tecmint.com) 09/03/2012 _i686_ (1 CPU) + + avg-cpu: %user %nice %system %iowait %steal %idle + 0.12 0.01 1.54 2.08 0.00 96.24 + + Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn + sda 3.59 161.02 13.48 1086002 90882 + dm-0 5.76 159.71 13.47 1077154 90864 + dm-1 0.05 0.38 0.00 2576 0 + +#### 8. Shows only CPU Statistics #### + +**iostat** with **-c** arguments displays only **CPU** statistics as shown below. + + [root@tecmint ~]# iostat -c + + Linux 2.6.32-279.el6.i686 (tecmint.com) 09/03/2012 _i686_ (1 CPU) + + avg-cpu: %user %nice %system %iowait %steal %idle + 0.12 0.01 1.47 1.98 0.00 96.42 + +#### 9. Shows only Disks I/O Statistics #### + +**iostat** with **-d** arguments displays only disks **I/O** statistics of all partitions as shown. + + [root@tecmint ~]# iostat -d + + Linux 2.6.32-279.el6.i686 (tecmint.com) 09/03/2012 _i686_ (1 CPU) + + Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn + sda 3.35 149.81 12.66 1086002 91746 + dm-0 5.37 148.59 12.65 1077154 91728 + dm-1 0.04 0.36 0.00 2576 0 + +#### 10. Shows I/O statistics only of a single device. #### + +By default it displays statistics of all partitions, with **-p** and device name arguments displays only disks **I/O** statistics for specific device only as shown. + + [root@tecmint ~]# iostat -p sda + + Linux 2.6.32-279.el6.i686 (tecmint.com) 09/03/2012 _i686_ (1 CPU) + + avg-cpu: %user %nice %system %iowait %steal %idle + 0.11 0.01 1.44 1.92 0.00 96.52 + + Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn + sda 3.32 148.52 12.55 1086002 91770 + sda1 0.07 0.56 0.00 4120 18 + sda2 3.22 147.79 12.55 1080650 91752 + +#### 11. Display LVM Statistics #### + +With **-N** (Uppercase) parameter displays only **LVM** statistics as shown. + + [root@tecmint ~]# iostat -N + + Linux 2.6.32-279.el6.i686 (tecmint.com) 09/03/2012 _i686_ (1 CPU) + + avg-cpu: %user %nice %system %iowait %steal %idle + 0.11 0.01 1.39 1.85 0.00 96.64 + + Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn + sda 3.20 142.84 12.16 1086002 92466 + vg_tecmint-lv_root 5.13 141.68 12.16 1077154 92448 + vg_tecmint-lv_swap 0.04 0.34 0.00 2576 0 + +#### 12. iostat version. #### + +With **-V** (Uppercase) parameter displays version of **iostat** as shown. + + [root@tecmint ~]# iostat -V + + sysstat version 9.0.4 + (C) Sebastien Godard (sysstat orange.fr) + +**Note**: **vmstat** and **iostat** contains number of columns and flags which may not possible to explain in details. If you want to know more about it you may refer man page of **vmstat** and **iostat**. Please share it if you find this article is useful through our comment box below. + +-------------------------------------------------------------------------------- + +via: http://www.tecmint.com/linux-performance-monitoring-with-vmstat-and-iostat-commands/ + +作者:[Ravi Saive][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.tecmint.com/author/admin/ +[1]:http://sebastien.godard.pagesperso-orange.fr/download.html diff --git a/sources/tech/20140911 Sysstat--All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md b/sources/tech/20140911 Sysstat--All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md new file mode 100644 index 0000000000..541999538b --- /dev/null +++ b/sources/tech/20140911 Sysstat--All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md @@ -0,0 +1,124 @@ +Sysstat – All-in-One System Performance and Usage Activity Monitoring Tool For Linux +================================================================================ +**Sysstat** is really a handy tool which comes with number of utilities to monitor system resources, their performance and usage activities. Number of utilities that we all use in our daily bases comes with sysstat package. It also provide the tool which can be scheduled using cron to collect all performance and activity data. + +![Install Sysstat in Linux](http://www.tecmint.com/wp-content/uploads/2014/08/sysstat.png) + +Install Sysstat in Linux + +Following are the list of tools included in sysstat packages. + +### Sysstat Features ### + +- [**iostat**][1]: Reports all statistics about your CPU and I/O statistics for I/O devices. +- **mpstat**: Details about CPUs (individual or combined). +- **pidstat**: Statistics about running processes/task, CPU, memory etc. +- **sar**: Save and report details about different resources (CPU, Memory, IO, Network, kernel etc..). +- **sadc**: System activity data collector, used for collecting data in backend for sar. +- **sa1**: Fetch and store binary data in sadc data file. This is used with sadc. +- **sa2**: Summaries daily report to be used with sar. +- **Sadf**: Used for displaying data generated by sar in different formats (CSV or XML). +- **Sysstat**: Man page for sysstat utility. +- **nfsiostat**-sysstat: I/O statistics for NFS. +- **cifsiostat**: Statistics for CIFS. + +Recenlty, on 17th of June 2014, **Sysstat 11.0.0** (stable version) has been released with some new interesting features as follows. + +pidstat command has been enhanced with some new options: first is “-R” which will provide information about the policy and task scheduling priority. And second one is “**-G**” which we can search processes with name and to get the list of all matching threads. + +Some new enhancement have been brought to sar, sadc and sadf with regards to the data files: Now data files can be renamed using “**saYYYYMMDD**” instead of “**saDD**” using option **–D** and can be located in directory different from “**/var/log/sa**”. We can define new directory by setting variable “SA_DIR”, which is being used by sa1 and sa2. + +### Installation of Sysstat in Linux ### + +The ‘**Sysstat**‘ package also available to install from default repository as a package in all major Linux distributions. However, the package which is available from the repo is little old and outdated version. So, that’s the reason, we here going to download and install the latest version of sysstat (i.e. version **11.0.0**) from source package. + +First download the latest version of sysstat package using the following link or you may also use **wget** command to download directly on the terminal. + +- [http://sebastien.godard.pagesperso-orange.fr/download.html][2] + + # wget http://pagesperso-orange.fr/sebastien.godard/sysstat-11.0.0.tar.gz + +![Download Sysstat Package](http://www.tecmint.com/wp-content/uploads/2014/08/Download-Sysstat.png) + +Download Sysstat Package + +Next, extract the downloaded package and go inside that directory to begin compile process. + + # tar -xvf sysstat-11.0.0.tar.gz + # cd sysstat-11.0.0/ + +Here you will have two options for compilation: + +a). Firstly, you can use **iconfig** (which will give you flexibility for choosing/entering the customized values for each parameters). + + # ./iconfig + +![Sysstat iconfig Command](http://www.tecmint.com/wp-content/uploads/2014/08/Sysstat-iconfig-Command.png) + +Sysstat iconfig Command + +b). Secondly, you can use standard **configure** command to define options in single line. You can run **./configure –help command** to get list of different supported options. + + # ./configure --help + +![Sysstat Configure Help](http://www.tecmint.com/wp-content/uploads/2014/08/Configure-Help.png) + +Sysstat Configure Help + +Here, we are moving ahead with standard option i.e. **./configure** command to compile sysstat package. + + # ./configure + # make + # make install + +![Configure Sysstat in Linux](http://www.tecmint.com/wp-content/uploads/2014/08/Configure-Sysstat.png) + +Configure Sysstat in Linux + +After compilation process completes, you will see the output similar to above. Now, verify the sysstat version by running following command. + + # mpstat -V + + sysstat version 11.0.0 + (C) Sebastien Godard (sysstat orange.fr) + +### Updating Sysstat in Linux ### + +By default sysstat use “**/usr/local**” as its prefix directory. So, all binary/utilities will get installed in “**/usr/local/bin**” directory. If you have existing sysstat package installed, then those will be there in “**/usr/bin**”. + +Due to existing sysstat package, you will not get your updated version reflected, because your “**$PATH**” variable don’t have “**/usr/local/bin set**”. So, make sure that “**/usr/local/bin**” exist there in your “$PATH” or set **–prefix** option to “**/usr**” during compilation and remove existing version before starting updating. + + # yum remove sysstat [On RedHat based System] + # apt-get remove sysstat [On Debian based System] + +---------- + + # ./configure --prefix=/usr + # make + # make install + +Now again, verify the updated version of systat using same ‘mpstat’ command with option ‘**-V**’. + + # mpstat -V + + sysstat version 11.0.0 + (C) Sebastien Godard (sysstat orange.fr) + +**Reference**: For more information please go through [Sysstat Documentation][3] + +That’s it for now, in my upcoming article, I will show some practical examples and usages of sysstat command, till then stay tuned to updates and don’t forget to add your valuable thoughts about the article at below comment section. + +-------------------------------------------------------------------------------- + +via: http://www.tecmint.com/install-sysstat-in-linux/ + +作者:[Kuldeep Sharma][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.tecmint.com/author/kuldeepsharma47/ +[1]:http://www.tecmint.com/linux-performance-monitoring-with-vmstat-and-iostat-commands/ +[2]:http://sebastien.godard.pagesperso-orange.fr/download.html +[3]:http://sebastien.godard.pagesperso-orange.fr/documentation.html \ No newline at end of file diff --git a/translated/talk/20140825 China Will Change The Way All Software Is Bought And Sold.md b/translated/talk/20140825 China Will Change The Way All Software Is Bought And Sold.md new file mode 100644 index 0000000000..c564b47f12 --- /dev/null +++ b/translated/talk/20140825 China Will Change The Way All Software Is Bought And Sold.md @@ -0,0 +1,67 @@ +中国将要改变软件购买和销售的方式 +================================================================================ +![](http://a5.files.readwrite.com/image/upload/c_fill,h_900,q_70,w_1600/MTE5NDg0MDYyMzQ4MzE0MTI3.jpg) + +> 这一切都是关于“开源”. + +**中国并不需要开源,也不需要你的软件。具体说来,中国市场并不需要你的工程师日以继夜的工作,也不需要你提供的任何东西。 + +中国每年会产生超过100000名新软件工程师们,这些工程师会写出一大批令人惊叹的奇妙软件。如果有中国市场上尚未出现的软件,中国的工程师们就会从国外“借鉴”。在2012年,这样的软件掠夺达到了77%之多。对于那些已经面对着开源和云服务的挑战的软件卖家来说,中国无疑让他们的日子更苦难了。 + +不止是更困难,简直是举步维艰。 + +中国正在挑战西方公司在中国或者其他地方赚钱的模式。对于那些已经明白如何在中国运营的公司来说,他们的未来看起来一片光明。 + +### 抵制中国模式 ### + +当然,并非每家公司都会坐以待毙。以微软为例,微软通用美国的国家司法权力来禁止中国公司做生意——除非他们像微软购买许可证。这是一种很聪明的做法,而且它可能会为微软创造数以十亿计的价值。但是最终这一做法看起来与中国市场格格不入。 + +原因很简单,中国与微软对待知识产权的态度十分不同。 + +正如 [我所提到的][2],“中国的企业更倾向于购买复杂的,面向企业的软件。因为这种软件比服务大众的公司设计出来的软件更先进,就像同在亚洲的印度。”但这种形势不会持续太久,因为中国的软件产业正在以一种惊人的速度前进,并毫无颓势。中国一定会坚持向西方国家“借鉴”代码直到有一天有足够的能力可以创造出有创新能力的软件。 + +但是即使这样,中国的软件公司与美国软件的运营模式还是有所不同,美国的软件大多都已经捆绑在设备、架构在云端或者公司只因为提供软件支持而要价。而这些运营模式中国是无法克隆的。 + +不出所料的,每一个收费模式是公司门使用“开源”进行盈利。 + +### 开源化中国 ### + +正如CCID的分析师在 [J. Aaron Farr 的关于中国开源化报告][3] 中指出的,中国的开源社区规模很小而且没什么影响力。开源社区们没有大项目、参与者稀少而且资金匮乏。 + +这真是个坏消息。 + +好消息是,像华为这样的公司就把开源作为一种战略前景。具体而言,当华为的开源项目过时或者不是很强势的时候,这种现象就证明了他们的科技步伐是错误的。在与参与了开源项目的华为公司内部顾问的谈话中,虽然华为对如何参与到开源社区还处于摸索阶段,但他们总是对华为的开源项目赞不绝口。 + +这种无人关注开源的现象不会长久地持续下去。 + +从一件事就可以看出端倪。中国最大的互联网公司们都纷纷以积极地姿态拥抱开源,这意味着中国开源时代的到来。你若是和任意一位在百度、阿里巴巴、微博的员工谈话,你会发现他们的软件项目都是彻底开源的。这些开源的软件都是运行在这些公司自己研发的硬件上而不是西方的硬件上。 + +换句话说,这样的模式已经和西方的运营模式如出一辙了。 + +抬头看看 [现金软件行业内最炙手可热的新公司][5], 你就会知道中国的互联网公司未来的主流趋势,正如发生在西方世界的一样。不出意料的,许多都是关于“开源”。 + +### 销售给中国 ### + +所有的一切都表明中国的软件行业不会像美国的软件行业发展历史一般发展。中国不会产生在柜台上卖卖软件就赚上亿美元的公司。因为西方对于知识产权的观念就是不适于中国的科技经济。 + +所以,软件卖家们需要售卖币软件更丰富的产品。云服务是一大前景。硬件设施看起来也是前途璀璨。软件支持和咨询服务(虽然有一些非主流)也很被公司门看好。总而言之,中国的软件行业会充满了开源味道,而不能靠着简单的售卖专柜软件的形式赚钱。 + +图片由 [hackNY.org][6] 提供。 + +-------------------------------------------------------------------------------- + +原文: http://readwrite.com/2014/08/12/china-opensource-software-ip-programmers-united-states + +作者:[Matt Asay][a] +译者:[chi1shi2](https://github.com/chi1shi2) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://readwrite.com/author/matt-asay +[1]:http://readwrite.com/2014/03/17/microsoft-anti-piracy-strategy-china +[2]:http://readwrite.com/2014/04/11/india-starts-paying-for-software-china-it +[3]:http://cdn.oreillystatic.com/en/assets/1/event/12/Open%20Source%20in%20China%20Presentation%201.pdf +[4]:http://huawei.com/en/about-huawei/Partner/openathuawei/index.htm +[5]:http://codingvc.com/which-technologies-do-startups-use-an-exploration-of-angellist-data +[6]:https://www.flickr.com/photos/hackny/8675057448/ \ No newline at end of file diff --git a/translated/talk/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md b/translated/talk/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md deleted file mode 100644 index f5a86c1d0a..0000000000 --- a/translated/talk/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md +++ /dev/null @@ -1,54 +0,0 @@ -“Linux之父——莱纳斯•托瓦德斯是我的英雄”说这话的是13岁的扎卡里杜邦 -================================================================================ -![](http://www.themukt.com/wp-content/uploads/2014/08/Linus_torvalds_zach_1.jpg) - -Zachary DuPon是一个6年级学生他马上满13岁。他是使用Arch liunx的用户并期待着安装Gentoo Linux - -Zachary DuPon的故事是这样的-他的学校组织了一个计划给哪里的学生,要求他们写一封信给他们的英雄,大多数孩子写给名人,而Zachary DuPon写了现代科技世界的“真”英雄-莱纳斯•托瓦德斯 - -由于莱纳斯在家工作,他没有透露工作的地点,Zach的信来到了Linux基金会,在浏览的信件之前,发送给了莱纳斯。当基金会看到了这封信,他们联系了扎克的学校然后,being as generous as they are,邀请他到LinuxCon,以便他能遇到他的英雄。 - -linux的执行董事长Jim Zemlin,引领Zach到讨论小组的人群之后。Zach遇到了莱纳斯并得到了经过linux之父签名的linux圣经;他也收到了莱纳自己书的签名 [只为了好玩:一个意外的革命][1] - -![Linus Torvalds signing a book for Zachary DuPont](http://www.themukt.com/wp-content/uploads/2014/08/Linus_torvalds_zach_1.jpg) -莱纳斯•托沃兹为扎克里杜邦签名书 - -![The DuPont family](http://www.themukt.com/wp-content/uploads/2014/08/zachary_dupont_family.jpg) -扎克里杜邦的家人 - -![Swapnil Bhartiya with Zachary DuPont](http://www.themukt.com/wp-content/uploads/2014/08/swapnil_zach.jpg) -Swapnil Bhartiya和扎克里杜邦 - -我不想失去这个机会,所以我走近了杜邦家族,他们已经和莱纳斯开始谈话,于是安排了这个采访视频。 - -我是一个两岁孩子的父亲,而作为一名父亲,我是真正的惊讶怎样的信心,在善于表达和聪明的扎克的思想里 - -相反我告诉你我们谈论什么,我提供给你这个视屏采访 - -注:Youtube 视频,发布的时候不行改成一个链接吧 - - -这是一些采访的事件: - -- 他使用Arch linux -他计划他一旦变成好的程序员做出的贡献 -他没有提交任何漏洞报告,并认为他应该。他也表示他没有出现任何漏 -(这行未翻译) -他喜欢KDE的原始桌面,但是它在他的网关机器上工作不时很好 -他是一个Debian GNU/linux用户和XFCE桌面环境 - - -莱纳斯也是扎克英雄,但是扎克是整个GNU/linux和自由软件社区的英雄,谁不断地提醒我们,我们的未来是在伟大的支持里。 - --------------------------------------------------------------------------------- - -via: http://www.themukt.com/2014/08/24/linus-torvalds-hero-says-13-years-old-zachary-dupont/ - -作者:[wapnil Bhartiya][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://www.themukt.com/author/swapnil_bhartiya/ -[1]:http://www.amazon.com/gp/product/0066620732/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=0066620732&linkCode=as2&tag=muktware-20&linkId=HBKEBIFVZQC35GGK diff --git a/translated/talk/20140910 With Apple Watch Unveiled, Could an Ubuntu Smartwatch Be Next.md b/translated/talk/20140910 With Apple Watch Unveiled, Could an Ubuntu Smartwatch Be Next.md new file mode 100644 index 0000000000..c33120677c --- /dev/null +++ b/translated/talk/20140910 With Apple Watch Unveiled, Could an Ubuntu Smartwatch Be Next.md @@ -0,0 +1,72 @@ +伴随苹果手表的揭幕,Ubuntu智能手表会成为下一个吗? +=== + +**今天,苹果借助‘苹果手表’的发布,证实了其进军穿戴式计算设备市场的长期传言** + +![Ubuntu Smartwatch – good idea?](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/ubuntu-galaxy-gear-smartwatch.png) + +Ubuntu智能手表 - 好的主意? + +拥有一系列稳定功能,硬件解决方案和应用合作伙伴关系的支持,手腕穿戴设备被许多公司预示为“人与技术关系的新篇章”。 + +它的到来,以及用户兴趣的提升,有可能意味着Ubuntu需要遵循一个为智能手表定制的Ubuntu版本。 + +### 大的方面还是成功的 ### + +苹果在正确时间加入了快速发展的智能手表部门。约束手腕穿戴电脑功能的界限并不是一成不变。失败的设计,不良的用户界面以及主流用户使用穿戴技术功能的弱参数化,这些都见证了硬件种类保持着高效的影响力 - 一个准许Cupertino把时间花费在苹果手表上的因素。 + +> ‘分析师说:超过2200万的智能手表将在今年销售’ + +去年全球范围内可穿戴设备的销售数量(包括健身追踪器)仅仅1000万。今年,分析师希望设备数量的改变可以超过2200万 - 不包括苹果手表,因为其直到2015年初才开始零售。 + +很容易就可以看出增长的来源。今年九月初柏林举办的IFA 2014展览会,展示了一系列来自主要制造商们的可穿戴设备,包括索尼和华硕。大多数搭载着Google最新发布的安卓穿戴系统。 + +一个更加成熟的表现:安卓穿戴设备打破了与形式因素保持一致的新奇争论,进而呈现出一致并令人折服的用户方案。和新的苹果手表一样,它紧密地连接在一个现存的智能手机生态系统上。 + +可能它只是一个使用案例,Ubuntu手腕穿戴系统是否能匹配它还不清楚。 + +#### 目前还没有Ubuntu智能手表的计划 #### + +Ubuntu操作系统的通用性,结合以为多装置设备和趋势性未来定制的严格版本,已经产生了典型目标智能电视,平板电脑和智能手机。Mir,公司的本土显示服务器,被用来运转所有尺寸屏幕上的接口(虽然不是公认1.5"的) + +今年年初,Canonical社区负责人Jono Bacon被询问是否有制作Ubuntu智能手表的打算。Bacon提供了他对这个问题的看法:“增加另一个形式因素到[Ubuntu触摸设备]路线只会减缓其余的东西”。 + +在Ubuntu电话发布两周年之际,我们还是挺赞同他的想法的。 + +滴答,滴答,对冲你的赌注点(实在不懂什么意思...) + +但是并不是没有希望的。在一个[几个月之后的电话采访][1]中,Ubuntu创始人Mark Shuttleworth提及到可穿戴技术和智能电视,平板电脑,智能手机一样,都在公司计划当中。 + +> “Ubuntu因其在电话中的完美设计变得独一无二,但是它同时也被设计成满足其余生态系统的样子,比如从穿戴设备到PC机。” + +然而这还没得到具体的证实,它更像一个指针,在这个方向是给我们提供一个乐观的指引。 + +### 不可能 — 这就是原因所在 ### + +Canonical并不反对利用牢固的专利进军市场。事实上,它的重要性犹如公司的DHA — 犹如服务器上的RHEL,桌面上的Windows,智能手机上的安卓... + +设备上的Ubuntu系统被制作成可以在更小的屏幕上扩展和适应性运行。甚至很有可能在和手表一样小的屏幕上运行。当普通的代码基础已经在手机,平板电脑,桌面和TV上准备就绪,我想如果我们没有看到来自社区这一方向上的努力,我会感到奇怪。 + +但是我之所以不认为它会从规范社区发生,至少目前还没有,是今年早些时候Jono Bacon个人思想的共鸣:时间和努力。 + +Tim Cook在他的主题演讲中说道:“*我们并没有追随iPhone,也没有缩水用户界面,将其强硬捆绑在你的手腕上。*”这是一个很明显的陈述。为如此小的屏幕设计UI和UX模型;通过交互原则工作;对硬件和输入模式的恭维,都不是一件容易的事。 + +可穿戴技术仍然是一个新兴的市场。在这个阶段,Canonical将会浪费发展,设计以及进行中的业务。在一些更为紧迫的地区,任何利益的重要性将要超过损失。 + +玩一局更久的游戏,等待直到看出那些努力在何地成功和失败,这是一条更难的路线。但是更适合Ubuntu的就是今天。在新产品出现之前,让Canonical把力量用在现存的产品上是更好的选择(这是一些已经来迟的理论) + +想更进一步了解什么是Ubuntu智能手表,点击下面的[视频][2]。它展示了一个互动的主体性皮肤Tizen(它已经支持Samsung Galaxy Gear智能手表)。 + +--- + +via: http://www.omgubuntu.co.uk/2014/09/ubuntu-smartwatch-apple-iwatch + +作者:[Joey-Elijah Sneddon][a] +译者:[su-kaiyao](https://github.com/su-kaiyao) +校对:[校对者ID](https://github.com/校对者ID) + +本文由[LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2014/03/ubuntu-tablets-coming-year +[2]:https://www.youtube.com/embed/8Zf5dktXzEs?feature=oembed diff --git a/translated/talk/The Open Source Witch Hunts Have Returned.md b/translated/talk/The Open Source Witch Hunts Have Returned.md deleted file mode 100644 index 9810a8e258..0000000000 --- a/translated/talk/The Open Source Witch Hunts Have Returned.md +++ /dev/null @@ -1,62 +0,0 @@ -开源女巫狩猎归来! -================================================================================ -![](http://readwrite.com/files/styles/1400_0/public/fields/shutterstock-open-gate.jpg) - -> 开源软件社区已经做出了改变,就像之前的美好时光。 - -开源软件已经变的温和了,之前我们有的那些不纯洁的想法,可是随后我们却奇怪的和别人分享自己的代码与创作。 - -幸运的是,这种务实主义要结束了。在过去的几周当中,我们团结在Mozilla身边支持DRM版权保护以及嘲笑Red Hat和OpenStack之间的竞争。社区那些年如数家珍的开源软件明星和[Open Core][1]产生了冲突而被反噬了. - -多么怀念啊。 - - -### 2003年的Red Hat ### - -Red Hat,开源软件理想主义的典范,在几周前拒绝支持它的竞争对手。Jodi Mardesich做了[非凡的工作][2]却受到了指控以及Red Hat的回击。但是真实情况是: - -Red Hat不想支持它的竞争对手OpenStack - -在另外一边这难道算是新闻吗? - - -### Mozilla变成了麻瓜 ### - -Red Hat作为开源软件理想主义的典范代表很容易成为各种带颜色攻击的目标,Mozilla其实是更大的一个目标。 - -Mozilla承诺为用户服务的罪过,它最近进行了一场自我牺牲似的行动违背CEO的策略同意加入DRM的技术,即纯Firefox浏览器源码可以使用户观看视频。 - -人们想看视频,Mozilla倾向于在它的浏览器中观看。 - -最新消息,这一次失败,开源软件组织[批评了][3] Mozilla,深切表达了自己对于Mozilla的失望,因为这种决定妥协的态度会导致浏览器份额的降低。 - -但是,Mozilla为什么要做这样的傻事呢,为了用户,你懂的。 - -说教部门不甘示弱,[电子前沿基金会感叹][4]到开放网络最后的抗争已经失败了。它对Mozilla失败的做法争论道:“接受DRM会改变这个行业”!DRM的倡导者一再妥协,一个公司又一个公司(PC行业)演变成一个行业,它通过锁定装置,监视器,接受每一个人的管理建立自己的利益关系。 - -[Mitchell Bake解释道][5],Mozilla可能并没有投降:“Firefox用户会需要使用另外的浏览器来观看他们自己想看的视频,这让人怀疑Firfox做一一个产品是否真的有用”。 - -Um, yes. - -### 回到我们的思想源头 ### - -However much we may want to force others to live by our absolutist ideals, the reality is that others may have different 我们或许很专制的意图其他的东西活着,事实上他们却有着不同的优先度。免费的软件让步给开源软件,更加严格,更加固定“正确的方式”去获得授权。 - -这种意识在目前还是有用的,但它并不总是方便和愉悦。我崇尚开源软件的实用主义,Apache软件基金会,这样有很大的好处提醒GPL组织在意识形态上的危机感。软件自由真的很重要。 - -这么多悲观的言论,我自己也感到了恐惧,希望回到一个不断会自我鞭策的免费的开软软件的组织。这使开源软件协作变少而且更难驾驭,但是会变得更有力而且关乎未来。 - - --------------------------------------------------------------------------------- - -via: http://readwrite.com/2014/05/21/open-source-witch-hunt-mozilla-openstack-redhat#feed=/hack&awesm=~oEYDhxfP0Qv5hE - -译者:[jiajia9linuxer](https://github.com/jiajia9linuxer) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://en.m.wikipedia.org/wiki/Open_core -[2]:http://readwrite.com/2014/05/16/red-hat-openstack-mirantis-rhel-support -[3]:http://www.fsf.org/news/fsf-condemns-partnership-between-mozilla-and-adobe-to-support-digital-restrictions-management -[4]:https://www.eff.org/deeplinks/2014/05/mozilla-and-drm -[5]:https://blog.mozilla.org/blog/2014/05/14/drm-and-the-challenge-of-serving-users/ diff --git a/translated/talk/The history of Android/01 - The history of Android.md b/translated/talk/The history of Android/01 - The history of Android.md index c312a38551..ab569bcb92 100644 --- a/translated/talk/The history of Android/01 - The history of Android.md +++ b/translated/talk/The history of Android/01 - The history of Android.md @@ -126,7 +126,7 @@ Ron Amadeo供图 幸运的是,因为上面的第一张截图,我们能够从安卓启动视频中拼凑出准确的界面。旧的谷歌地图看起来完全是为非触摸设备准备的,实体键快捷方式列表排列在屏幕底部。这样在看地图时,或是在如果仅仅显示该点的地址的时候就不大清楚。 -隐藏在菜单之后的是搜索选项,方向,以及卫星和交通图层。中间的截图是方向的UI之一,你可以选择一个联系人的地址作为起点或者终点。但地图缺乏任何种类的集成GPS,你在哪都找不到“我的位置”这个按钮。 +隐藏在菜单之后的是搜索选项,路线,以及卫星和交通图层。中间的截图是方向的UI之一,你可以选择一个联系人的地址作为起点或者终点。但地图缺乏任何种类的集成GPS,你在哪都找不到“我的位置”这个按钮。 尽管没有合适的相册,在右边是相册的测试界面,隐藏在“API Demos”应用里。图片可以向左向右滚动,但无法以全屏的方式打开一张照片。同样它也没有照片管理选项。它本质上就是个图片滚动界面的测试视图。 diff --git a/translated/talk/The history of Android/02 - The history of Android.md b/translated/talk/The history of Android/02 - The history of Android.md index 696de0aa22..d703d8b542 100644 --- a/translated/talk/The history of Android/02 - The history of Android.md +++ b/translated/talk/The history of Android/02 - The history of Android.md @@ -1,76 +1,75 @@ 安卓编年史 02 - ============================================================================= -![Left: the Milestone 5 home screen showing the “all" button, two dock icons, and four recent apps. Center: the home screen with the app list open. Right: the power menu.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/homescree052n.jpg) -左边:里程碑 5,主屏幕展示了“All”按钮,两个dock图标,以及最近使用的四个应用。中间:主屏幕与打开的应用程序列表。右边:电源菜单。 -图片来自@Ron Amadeo +![Left: the Milestone 5 home screen showing the “all" button, two dock icons, and four recent apps. Center: the home screen with the app list open. Right: the power menu.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/homescree052n.jpg) +左:Milestone 5,主屏幕展示了“All”按钮,两个dock图标,以及四个最近使用的应用。中:主屏幕与打开的应用程序列表。右边:电源菜单。 +Ron Amadeo供图 -###Android0.5, 里程碑 5——如今已经是报废接口的领地了 ### - +### 安卓0.5, Milestone 5——如今已经是报废接口的领地了 ### -“M5-RC14”构建后:也就是第一个仿真器发布,三个月之后Android迎来了她的首次重大革新。 2008年2月发布的“里程碑5”甩掉了发展中的黑莓界面,走向一个完全革新的设计——谷歌在手指触摸技术的第一次尝试。 +“M5-RC14”版本发布后——也就是第一个安卓模拟器发布三个月之后,安卓迎来了它的首次重大革新。 2008年2月发布的“Milestone5”甩掉了延伸自黑莓的界面,走向一个完全革新的设计——谷歌在触控友好界面上的第一次尝试。 -由于浏览器的用户代理字符串的使用,此版本仍然被识别为“Android0.5”,但里程碑 5与Android的第一个版本相比已经完全不一样了。几个核心的Android功能直接追踪他们的血统最终还是会回到这个版本。通知面板的布局和功能几乎已经整装待发,并且,除了样式变化外,菜单同样也存在于它的最终组成。安卓1.0距离该项目起航的时间仅仅只有八个月,一个操作系统的基础已经开始形成了。 +在浏览器的用户代理字符串的中,此版本仍然被识别为“Android 0.5”,但Milestone 5与安卓的第一个版本相比已经完全不一样了。几个核心的Android功能直接追踪他们的血统并最终回到这个版本。通知面板的布局和功能几乎已经整装待发,并且,除了样式变化外,菜单也最终成型。距离安卓1.0项目发布的时间仅仅只剩八个月,一个操作系统的基础已经开始成型了。 -有一件东西绝对不会存在于最后的组成,那就是是主屏幕。这是一个不可配置的,单屏壁纸的应用程序的架子和空位。【译者注:"an app drawer and dock,",度娘直接是"应用程序的抽屉和码头,",没有搜到相关专业的词汇,求指点,感激。zsky@live.com】应用程序图标是天真活泼的,三种颜色的组合,由一个方形的、有圆角的白色背景包围着。应用程序的架子由在右下角的一个“All”按钮组成,轻按它,扩展的应用程序列表显示在了左边。这个“All”按钮正上面的是两个图标空位,“联系人”和“拨号器”分别获得了专属的永久主屏幕位置。然后上边有四个板块,它们是最近应用程序的早期版式,展示了最后访问的应用程序。没有了左画面或右画面,基座和最近的应用程序占用一整列,这种布局下21个正方形的应用程序才会填充满整个屏幕。模拟器仍然只选择同等最小的应用程序,但在实际的设备中,这样的设计并产生没有很好地工作效果。 +有一件东西目前绝对不是它的最终模样,那就是是主屏幕。这是一个不可配置的,单屏壁纸的应用程序的抽屉和dock。应用程序图标是气泡状的,三种颜色的组合,由一个圆角矩形的白色背景包围着。应用程序抽屉在右下角有一个“所有”按钮,轻按它,打开的应用程序列表显示在了左边。这个“所有”按钮正上面的是两个dock图标,“联系人”和“拨号盘”分别获得了永久的专属主屏幕位置。然后上边有四个模块,它们是最近应用程序的早期版本,展示了最后访问的应用程序。没有了左侧屏幕和右侧屏幕,要是没有dock和最近的应用程序占用的一整列,这种布局下只能放下21个应用程序图标。模拟器仍然只选择同等最少的应用程序,但在实际的设备中,这样的设计看起来并不会很好的工作效果。 -按住“end call”按钮会出现一个超级早期版本的电源菜单,您可以在最右边的图片中看到的。谷歌迄今为止没有正常的智能手机命名术语:对于“Turn Off Screen”最好地形容也许是“Lock screen”(虽然当时没有锁屏)和“Turn Off Radio”在今天被叫做“Airplane Mode”。 +按住“挂断”按钮会出现一个十分早期版本的电源菜单,就像你最右侧的图片中看到的。谷歌迄今为止没有标准的智能手机命名术语:对于“Turn Off Screen”(关闭屏幕)最好的形容也许是“Lock screen”(锁定屏幕——虽然当时没有锁屏)和“Turn Off Radio”(关闭射频)在今天被叫做“Airplane Mode”(飞行模式)。 -![From left to right: the surprisingly modern notification panel, the menu open in Google Maps (Maps doesn't work anymore), and the new finger-friendly list view.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/noti2.png) -从左至右依次为:令人惊喜的现代版通知面板,谷歌地图的菜单在打开着(地图已经不可用了),和新的适合手指操作的列表视图。 -照片来自@Ron Amadeo +![From left to right: the surprisingly modern notification panel, the menu open in Google Maps (Maps doesn't work anymore), and the new finger-friendly list view.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/noti2.png) +从左至右依次为:令人惊喜的现代通知面板,谷歌地图的菜单在打开着(地图已经不可用了),和新的触控友好列表视图。 +Ron Amadeo供图 -所有的方式都会回溯到里程碑 5,谷歌在那时就毫无疑问拥有通知面板的基本知识储备。就像在任何现代的智能手机里看到的一样,它能够从屏幕顶部下拉下来。目前的通知都显示在列表中。通知面板的第一个版本是不透明的白色薄片带着棱纹的的“handle”在底部,一个橙色的圆点在中心。通知是可触的,通过触摸可以打开该通知关联的应用程序。没有人被在此列表中垂直对齐的应用程序图标所困扰,不过也没关系,随着在接下来的更新,它已经是过去式了。 +回溯到Milestone 5,谷歌在那时对通知面板有着明确的认识。就像在任何现代的智能手机里一样,通知中心从屏幕顶部下拉下来来唤出。目前的通知都以列表的形式显示。通知面板的第一个版本是不透明的白色薄片以及底部中心有个橙色圆点的,带着棱纹的的“把手”。通知是可点击的,通过点击可以打开该通知关联的应用程序。没有人为此列表中垂直对齐应用程序图标而感到困扰,不过也没关系,随着接下来的更新,它已经是过去式了。 -点一下通知,进入一个在面板顶部的“on going”部分。在这个版本,这里似乎只包含打电话。在“Latest Event”里的通知只有打开相应的应用程序后才是清楚的。用户令人惊喜的通过内置的XMPP连接成功登录到谷歌talk。不过,虽然通知面板中显示“new chat message,”,其实这里并没有没有真正的即时消息应用程序。 +置顶通知能够进入一个在面板顶部的“正在进行”的部分。在这个版本中,这里似乎只包含通话。在“最近事件”里的通知只有打开相应的应用程序后才清楚。用户惊喜地发现可以通过内置的XMPP连接成功登录到谷歌talk。不过,虽然通知面板中显示“新会话信息”,这里实际上并不是一个即时消息应用程序。 -里程碑 5里的艺术设计全部都是新的。该应用程序图标被重新绘制,并且菜单从一个无聊的黑莓风格的文本列表转变为一个大格全彩色、卡通的图标。通知面板图标也从简单的、突兀的、白色的图标切换到一个天真活泼的绿色设计。当时在信号栏指示器下边有一个奇怪的黑线,几乎没有作用。早期开发版本的微小列表视图不适合手指使用,所以里程碑 5开发了全面强大的整体布局。 +Milestone 5里是全新的艺术设计。应用程序图标被重新绘制,并且菜单从一个无聊的黑莓风格的文本列表转变为一个全彩、卡通的大图标方阵。通知面板图标也从简单的、突兀的、白色的图标切换到一个绿色的气泡设计。当时信号指示下边有一条奇怪的黑线,没有明显的作用。早期开发版本的微小列表视图不适合手指使用,所以Milestone 5带来了更加强大的整体布局。 ![The dialer, recent calls, and an incoming call.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/phonestuff.png) -拨号器,最近通话,和来电接听。 -照片来自@Ron Amadeo +拨号盘,最近通话,和来电。 +Ron Amadeo供图 -M5是第一个有一个拨号器的版本,即使她是一个相当难看的版本。数字被显示在包含一个奇怪的语音气泡风格的退格键里,看上去就像是从其他界面回收回来的。对齐问题随处可见。按钮上的数字没有正确的垂直排列,而且退格键的“X”也没有与对话框对齐。由于屏幕上没有的“dial”按钮,你甚至不能从拨号程序打个电话,一个硬件按钮也被托管了。 +M5是第一个有一个拨号盘的版本,即使她是一个相当难看的版本。数字被显示在包含一个奇怪的聊天气泡风格退格键的渐变填充条里,看上去就像是从其他界面回收回来的。对齐问题随处可见。按钮上的数字没有正确的垂直排列,而且退格键的“X”也没有与对话框对齐。由于屏幕上没有的“拨号”按钮,你甚至不能从拨号盘打个电话,它强制要求有个拨号的硬件实体按钮。 -里程碑 5 有几个选项卡式界面,所有这些都表明了一个非常奇怪的想法:标签应该如何工作。活跃的标签是白色的,而背景标签是拥有一小条白色在其边沿的黑色。后台标签应该是向下的“shrink”吗?切换标签时,是没有动画的。目前还不清楚这个设计试图想表达什么。 +Milestone 5 有几个选项卡式界面,所有这些都演示了一个关于标签应该如何工作的奇怪的想法。活跃的标签是白色的,而背景标签是底部拥有一小条白色条带的黑色标签。后台标签应该是向下下沉的吗?切换标签时,是没有动画效果的。直到目前还不清楚这个设计试图想表达什么。 -在第二张图片中显示的最近通话记录项,是从顶级的应用程序降级到拨号器选项卡的。它丢弃了早期版本的疯狂十字丝UI,多亏了大块列表视图,现在所有必要的信息都是显示在一个正常的列表。 +在第二张图片中显示的最近通话记录项,是从单独的应用程序降级到拨号盘选项卡的。它抛弃了早期版本疯狂的十字UI,多亏了大块列表视图,现在所有必要的信息都是显示在一个正常的列表中。 -不同于拨号器,来电画面只有即时屏幕上的按钮来接听和结束通话。奇怪的是,来电屏幕贴在显示器的底部,而不是顶部或中心。它可能是从旧的黑莓4:3屏幕遗留下来的。 +不同于拨号盘,来电画面有显示在屏幕上的按钮来接听和结束通话。奇怪的是,来电屏幕贴在屏幕的底部,而不是顶部或中心。它可能是从旧的黑莓4:3屏幕遗留下来的问题。 ![An active call, the disabled touchscreen error message, and the call screen with a second call on hold.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/callsstuff.png) -通话中,触摸屏不可用的显示错误信息,和暂停通话的第二个呼叫的呼叫屏幕。 -照片来自@Ron Amadeo +通话中,触摸屏不可用的显示错误信息,和显示第二通话暂停的通话界面。 +Ron Amadeo供图 -通话中界面看起来正常,但在实践中毫无意义。今天,在通话中为了阻止你的脸按到屏幕按钮,手机近距离传感器一旦检测到相关信息会快速关闭屏幕。虽然里程碑 5不支持近距离传感器。谷歌的杂乱无章的解决方案是在通话过程中禁止整个触摸屏。与此同时,通话中的屏幕显然会彻底检查触摸功能。这时候是有大的,可触摸的按钮; *就是不让你摸!!*。 +通话中界面看起来正常,但在实际中毫无意义。今天,在通话中为了阻止你的脸按到按钮,手机近距离传感器一旦检测到物体会关闭屏幕。尽管Milestone 5不支持近距离传感器。谷歌的随意的解决方案是在通话过程中禁用整个触摸屏。与此同时,通话中的屏幕显然会检测触摸。这时候是有大的,可触摸的按钮; *就是不让你摸*。 -M5在这里让旧里程碑3版本的几个回归者占据特色地位。许多旧的接口里有体面相貌的图标被替换成了文本。像“mute”按钮不再提供屏幕上的反馈,过去他们是活跃的。合并通话被完全切掉了。 +M5在这里让Milestone 3版本的几个功能回归了。许多旧的界面里体面的图标被替换成了文本。像“静音”按钮在激活的时候不再提供屏幕上的反馈。合并通话被完全去除了。 -![The browser’s primary menu, the browser’s secondary menu, the crazy zoom control, and the window interface.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/browser4.png) -浏览器的主要菜单,浏览器的二级菜单,疯狂的变焦控制和窗口界面。 -照片来自@Ron Amadeo +![The browser’s primary menu, the browser’s secondary menu, the crazy zoom control, and the window interface.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/browser4.png) +浏览器的主要菜单,浏览器的二级菜单,疯狂的变焦控制和窗口界面。 +Ron Amadeo供图 -浏览器菜单中得到了一贯的触摸功能大修理,并且“more”按钮第一次出现。它充当一个[extra menu for your menu] [1]。而不是转动3x2的网格成3x4的网格,里程碑 5(和Android的许多后续版本一样)中使用很长的、滚动的列表来引出其他选项。不支持双指缩放(据说是[concession to Apple] [2]),因此Android运行着可笑的变焦控制外表,在上边第三张图片。而不是理智的比如是一个水平的、底部对齐变焦的控制,谷歌控制它直接出现在屏幕的中间。最后一张图片显示浏览器的“window”界面,允许你打开多个网页和两者之间轻松切换。 +浏览器菜单中得到了常规的触摸功能大整修,并且“更多”按钮第一次出现。它充当一个[你菜单的额外菜单] [1]。相对于将3x2的网格变成3x4的网格,Milestone 5(以及Android的许多后续版本一样)中使用很长的、滚动的列表来引出其他选项。不支持双指缩放(据说是[向苹果让步] [2]),因此Android运行荒谬的控件,就像上边第三张图片一样。谷歌将它显示在屏幕的中间,而不是明智地设置成比如一个水平的、底部对齐的缩放控件。最后一张图片显示浏览器的“窗口”界面,允许你打开多个网页并在它们之间更轻松地切换。 ![Google Maps’ layers section screen, search interface, and directions screen.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/amps.png) -谷歌地图的层级部分的屏幕,搜索界面,并指示屏幕。 -照片来自@Ron Amadeo +谷歌地图的图层选择,搜索界面,以及路线界面。 +Ron Amadeo供图 -谷歌地图仍然不能使用,但我们访问的小小UI却有了显著更新。你可以挑选地图图层,虽然只有两种可以选择:卫星和交通。顶部对齐的搜索界面隐藏了奇怪的状态栏,而底部对齐方向没有隐藏状态栏。指示的输入按钮被标有“Go”,而且搜寻的输入按钮被标有一个奇怪的弯曲的箭头。这样的例子不胜枚举,并演示了老同学的Android在最坏时候的情况:在同一个应用程序,它的外观和工作方式类似的两个功能,但这些都实现为完全相反的方向。 +谷歌地图仍然不能使用,但我们接触的小小UI却有了显著更新。你可以选择地图图层,虽然只有两种可以选择:卫星和交通。顶部对齐的搜索界面奇怪地隐藏了状态栏,而底部对齐的路线没有隐藏状态栏。路线的输入按钮被标有“Go”,而且搜索的输入按钮被标有一个奇怪的弯曲的箭头。这样的例子不胜枚举,并演示了保守的安卓在最坏时候的情况:在同一个应用程序,外观和工作方式*应该*类似的两个功能,在实现上却完全相反。 ----------- +---------- ![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) -[Ron Amadeo][a] / Ron是Ars Technica的评论编辑,他专注于Android操作系统和谷歌的产品。他总是在寻找一个新的小工具,喜欢分解事物来看看它们是如何工作的。 +[Ron Amadeo][a] / Ron是Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。 [@RonAmadeo][t] --------------------------------------------------- ------------------------------ +-------------------------------------------------------------------------------- via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/2/ 译者:[cereuz](https://github.com/cereuz)邮箱:[cereuz](mailto:sunedo@qq.com) -校对:[校对者ID](https://github.com/校对者ID) +校对:[alim0x](https://github.com/alim0x)/[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/talk/The history of Android/05 - The history of Android.md b/translated/talk/The history of Android/05 - The history of Android.md new file mode 100644 index 0000000000..42db62c193 --- /dev/null +++ b/translated/talk/The history of Android/05 - The history of Android.md @@ -0,0 +1,89 @@ +The history of Android +================================================================================ +![闹钟主屏幕,设置一个闹钟,计算器,以及计算器高级功能。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/calclockonpresszx.png) +闹钟主屏幕,设置一个闹钟,计算器,以及计算器高级功能。 +Ron Amadeo供图 + +安卓0.9第一次给我们展现了闹钟和计算器应用程序。闹钟应用的特征是有个扁平的模拟时钟,下方是一排设置的闹钟的滚动列表。不同于其它种类的开关,闹钟使用一个复选框来设置。闹钟可以设置为每周特定几天重复,以及它还有一整个列表的可选的,独特的闹钟铃声。 + +计算器是一个全黑色的应用,带有有光泽的圆形按钮。通过菜单,可以打开带有高级功能的附加面板。再次强调,一致性不是谷歌的强项所在。按键中的Pi键按下的高亮是红色的——在安卓0.9的其它地方,按键按下的高亮通常是橙色的。实际上,计算器中用到的所有东西是仅用于计算器的百分百定制设计。 + +![打开菜单的谷歌地图和新路线界面。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/mps092.png) +打开菜单的谷歌地图和新路线界面。 +Ron Amadeo供图 + +谷歌地图在安卓0.9中真正能够运行——客户端能够连接到谷歌地图服务器并下载地图块。(给予我们地图图像——要记住谷歌地图是个基于云的应用。连最老旧的版本也会下载更为现代的地图块,所以忽略实际的地图块的样子吧。)地图的菜单获得了和浏览器菜单相同的全灰设计待遇,缩放控件也和浏览器的相同。最重要的“我的位置”按钮最终来到了安卓0.9,这意味着该版本的地图支持GPS定位。 + +路线界面得到了改进。奇怪的聊天气泡附加不对齐的按钮已经被去除,换为更具交互性的书签图标,切换地点按钮移动到了左边,“go”按钮的现在被标记为“获取路线(Route)”。 + +![谷歌地图图层选择,搜索历史,新加入的街景视图。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/maps3.png) +谷歌地图图层选择,搜索历史,新加入的街景视图。 +Ron Amadeo供图 + +“图层(Layers)”被重命名为“地图模式(Map Mode)”并且变成一个单选列表。一次只能选择一个地图类型——举个例子,你在卫星地图视图下不能查看交通状况。埋藏在菜单中的还有被匆忙放到一起的搜索记录界面。搜索历史看起来只是个概念验证,带着巨大的,模糊的搜索图标填充的搜索项被放置于半透明的背景之上。 + +街景曾经是个单独的应用(尽管它从没提供给公众),但在0.9中它被作为一个地图模式内置于谷歌地图之中。你可以拖拽小Pegman(街景小人)到地图上,它会显示一个弹出气泡来展示街景的快照。点击快照会启动那个位置的街景。这时,街景除了可滚动的360度影像之外不会显示任何东西——在显示界面上根本就没有用户界面(UI)。 + +![我们第一次见到谷歌地图搜索界面。这些截图展示了搜索栏,搜索结果列表,显示在地图上的搜索结果,以及一个商业页面。 ](http://cdn.arstechnica.net/wp-content/uploads/2013/12/manystarbucks.png) +我们第一次见到谷歌地图搜索界面。这些截图展示了搜索栏,搜索结果列表,显示在地图上的搜索结果,以及一个商业页面。 +Ron Amadeo供图 + +安卓0.9同样第一次给我们展示了信息应用,称为“信息”(Messaging)。就像一些早期的安卓设计,信息并不确定它应该是一个暗色系应用还是亮色系应用。第一眼可以看到的屏幕是信息列表,一个极力避免空白的质朴黑色界面,看起来像是建立在设置界面的设计之上。但点击“新信息”或已存在的会话后,你会被带到一个白色以及蓝色的文本信息的滚动列表这里。这两个相连的界面真是没法再更不一样一点了。 + +![信息应用的会话窗口,附件窗口,会话列表,以及设置。](http://cdn.arstechnica.net/wp-content/uploads/2014/03/sms09.png) +信息应用的会话窗口,附件窗口,会话列表,以及设置。 +Ron Amadeo供图 + +信息支持一定范围的附件:你可以附上图片,声音,或者一个幻灯片到你的信息之中。图片和声音可以实时录制或是从手机存储中拉取。另一个奇怪的UI选择是对于附件菜单中的每一项,安卓基本都已经有现成的图标可用,但信息却全部使用了另外定制的设计。 + +信息是最先带有自己设置界面的应用之一。用户可以请求已读以及送达报告以及设置下载偏好。 + +![幻灯片制作器。右边图片显示了菜单选项。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/slideshow.png) +幻灯片制作器。右边图片显示了菜单选项。 +Ron Amadeo供图 + +附件选项中的“幻灯片”选项实际上是以一个全功能的幻灯片制作器的形式到来的。你可以添加图片,选择幻灯顺序,添加音乐,修改每张幻灯片的显示时间,以及添加文字。这已经复杂到足够给它一个自己的应用图标了,但令人惊奇的是它被隐藏在信息应用的菜单之中。在纵向模式下这是为数不多的完全无用的安卓应用之一——唯一的看图片方式以及控制是在横向显示之中。奇怪的是,纵向模式它仍然能够旋转,但显示输出变得一团糟。 + +![音乐播放器的主导航页面,歌曲列表,专辑列表,以及“正在播放”界面。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/music09.png) +音乐播放器的主导航页面,歌曲列表,专辑列表,以及“正在播放”界面。 +Ron Amadeo供图 + +安卓0.9第一次将音乐应用带进了安卓。首屏基本上只是几个将你带到各个功能视图的巨大的,矮胖的导航按钮。在应用底部是一个“正在播放”栏,仅仅包含了音轨名,艺术家,以及一个播放/暂停按钮。歌曲列表仅仅有个最简的无修饰界面,仅仅显示了歌曲名,艺术家,专辑以及时长。艺术家专辑是这个应用中唯一有希望看到色彩的地方。它在专辑视图里显示为一个小快照,在正在播放界面显示为巨大的,四分之一屏的图片。 + +正如安卓在这个时期的系统绝大多数部分,音乐应用的界面可能没什么好多看几眼的,但功能已经基本齐全。正在播放界面有一个让你拖动歌曲的播放列表按钮,随机播放,重复播放,搜索,以及选择背景声音按钮。 + +![“相册”的所有相册视图,单个相册视图,以及单张图片视图。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/pictures09.png) +“相册”的所有相册视图,单个相册视图,以及单张图片视图。 +Ron Amadeo供图 + +相册被简单地称为“图片”。初始视图显示你的所有相册。两个默认的相册是“相机”和巨大的合集相册,叫做“全部图片”。每个相册的快照由2x2的图片组成,每张图片有个白色的粗边框。 + +单个相册视图的样子大概是你所希望的:一个可滚动的图片方阵。你不能在单个图片大小的范围内向左右滑动来移动图片,而是应该轻点图片来移动图片。相册同样没有双指捏合缩放,你只能使用按钮来缩放图片。 + +![图片编缉!这些截图显示了一个打开的菜单,“更多”菜单,截取,以及设置。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/pics209.png) +图片编缉!这些截图显示了一个打开的菜单,“更多”菜单,截取,以及设置。 +Ron Amadeo供图 + +“图片”看起来十分简单,直到你点击菜单按钮并突然看到无数的选项。图片可以截取,旋转,删除,或设置壁纸或联系人图标。就像浏览器一样,所有的这一切通过一个笨拙的二级菜单系统完成。但是,我们为何又将看起来完全不同的菜单练联系到一起? + +安卓0.9在安卓的第一个商业发行版本公布前仅仅两个月的时候诞生。这些时间只够应用开发者们确认他们的应用能够工作——以及让谷歌在第一个重大发布之前做一些测试和bug修复。 + +---------- + +![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) + +[Ron Amadeo][a] / Ron是Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。 + + +[@RonAmadeo][t] + +-------------------------------------------------------------------------------- + +via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/5/ + +译者:[alim0x](https://github.com/alim0x) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://arstechnica.com/author/ronamadeo +[t]:https://twitter.com/RonAmadeo diff --git a/translated/talk/The history of Android/06 - The history of Android.md b/translated/talk/The history of Android/06 - The history of Android.md new file mode 100644 index 0000000000..030bb83ca8 --- /dev/null +++ b/translated/talk/The history of Android/06 - The history of Android.md @@ -0,0 +1,73 @@ +The history of Android +================================================================================ +![T-Mobile G1](http://cdn.arstechnica.net/wp-content/uploads/2014/04/t-mobile_g1.jpg) +T-Mobile G1 +T-Mobile供图 + +### 安卓1.0——谷歌系app和实体硬件的引入 ### + +到了2008年10月,安卓1.0已经准备好发布,这个系统在[T-Mobile G1][1](又以HTC Dream为人周知)上初次登台。G1进入了被iPhone 3G和[Nokia 1680 classic][2]所主宰的市场。(这些手机并列获得了2008年[销量最佳手机][3]称号,各自卖出了350万台。)G1的销量数字已难以获得,但T-Mobile宣称截至2009年4月该设备的销量突破了100万台。无论从哪方面来说这在竞争中都处于落后地位。 + +G1拥有单核528Mhz的ARM 11处理器,一个Adreno 130的GPU,192MB内存,以及多达256MB的存储空间供给系统以及应用使用。它有一块3.2英寸,320x480分辨率的显示屏,被布置在一个含有实体全键盘的滑动结构之上。所以尽管安卓软件的确走过了很长的一段路,硬件也是的。时至今日,我们可以在厂商的一个手表中得到比这更好的参数:最新的[三星智能手表][4]拥有512MB内存以及1GHz的双核处理器。 + +当iPhone有着最少数量的按键的时候,G1确实完全相反的,按键几乎支持每个硬件控制。它有拨通和挂断按钮,home键,后退,以及菜单键,一个相机快门键,音量控制键,一个轨迹球,当然,还有50个键盘按钮。未来安卓设备将会慢慢离开按键多多的界面设计,几乎每部新旗舰都在减少按键的数量。 + +但是这是第一次,人们见到了运行在实机上的安卓,而不是跑在一个令人沮丧的慢吞吞的模拟器上。安卓1.0没有iPhone那样顺滑流畅,闪亮耀眼,或拥有那么多的新闻报道。它也不像Windows Mobile 6.5那样才华横溢。但这仍然是个好的开始。 + +![安卓1.0和0.9的默认应用列表。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/apps.png) +安卓1.0和0.9的默认应用列表。 +Ron Amadeo供图 + +安卓1.0的核心与两个月前发布的beta版本相比看起来并没有什么引人注目的不同,但消费者产品带来了不少应用,包括一套完整的谷歌系应用。日历,电子邮件,Gmail,即时通讯,市场,设置,语音拨号,以及YouTube都是全新登场。那时候,音乐是智能手机上占据主宰地位的媒体类型,其王者是iTunes音乐商店。谷歌没有自家的音乐服务,所以它选择了亚马逊并绑定了亚马逊MP3商店。 + +安卓最重要的新增是谷歌商店的首次登场,叫做“安卓市场Beta”。与此同时大部分公司满足于将它们的软件目录称作一些不同的“应用商店”——意思是一个出售应用的商店,并且只出售应用——谷歌明显有着更大的野心。它搭配了一个更为通用的名字,“安卓市场”。这个名字的想法是安卓市场不仅仅拥有应用,还拥有一切你的安卓设备所需要的东西。 + +![第一个安卓市场客户端。截图展示了主页,“我的下载”,一个应用页面,以及一个应用权限页面。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/market.png) +第一个安卓市场客户端。截图展示了主页,“我的下载”,一个应用页面,以及一个应用权限页面。 +[Google][5]供图 + +那时候,安卓市场只提供应用和游戏,开发者们甚至还不能为它们收费。苹果的App Store相对与安卓市场有4个月的先发优势,但是谷歌的主要差异化在于安卓的商店几乎是完全开放的。在iPhone上,应用受制于苹果的审查,必须遵循设计和技术指南。潜在的新应用不允许在功能上复制已有应用。在安卓市场,开发者可以自由地做任何想做的,包括开发替代已有的应用。控制的缺失会转变成祝福同时也是诅咒。它允许开发者革新已有的功能,但同时意味着甚至是毫无价值的垃圾应用也被允许进入市场。 + +现在,这个客户端是又一个不再能够和谷歌服务器通讯的应用。幸运的是,它也是在因特网上被[真正记录][6]的为数不多的早期安卓应用之一。主页提供了通向一般区域的连接,像应用,游戏,搜索,以及下载,顶部有横向滚动显示的特色应用图标。搜索结果和“我的下载”页面以滚动列表的方式显示应用,显示应用名,开发者,费用(在那时都是免费的),以及评分。单独的应用页面展示了一个简短的描述,安装数,用户评论和评分,以及最重要的安装按钮。早期的安卓市场不支持图片,开发者唯一能使用的区域是应用描述,还有着500字的限制。这使得类似维护一个更新日志变的十分困难,因为只有描述的位置可以供其使用。 + +就在安装之前,安卓市场显示了应用所需要的权限。这是苹果直至2012年之前都避免做的,那年一个iOS应用被发现在用户不知情的情况下[将完整的通讯录上传][7]到云端。权限显示给出了一个完整的应用用到的权限列表,尽管这个版本强迫用户同意应用权限。界面有个“OK”按钮,但是除了后退按钮没有办法取消。 + +![Gmail展示收件箱,打开菜单的收件箱。 ](http://cdn.arstechnica.net/wp-content/uploads/2013/12/gmail1.01.png) +Gmail展示收件箱,打开菜单的收件箱。 +Ron Amadeo供图 + +下一个重要的应用也许就是Gmail。大多数基本的功能此时已经准备好了。未读邮件以加粗显示,标签是个有颜色的标记。在收件箱中每封独立邮件显示着主题,发件人,以及一个会话中的回复数。Gmail加星标志也在这里——快速点击即可给邮件加星或取消。一如往常,对于早期版本的安卓,菜单里有收件箱视图应有的所有按钮。但是,一旦打开了一封邮件,界面看起来就更加的现代了,“回复”和“转发”按钮永久固定在了屏幕底部。各个独立回复可以点击它们来展开和收缩。 + +圆角,阴影,以及气泡图标给了整个应用“卡通”的外表,但是这是个好的开始。安卓的功能第一哲学真正从此开始:Gmail支持标签,邮件会话,搜索,以及邮件推送。 + +![Gmail在安卓1.0的标签视图,写邮件界面,以及设置。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/gmail3.png) +Gmail在安卓1.0的标签视图,写邮件界面,以及设置。 +Ron Amadeo供图 + +但是如果你认为Gmail很丑,电子邮件应用又拉低了下限。它没有分离的收件箱或文件夹视图——所有东西都糊在一个界面。应用呈现给你一个文件夹列表,点击一个文件夹会以内嵌的方式展开内容。未读邮件左侧有条绿色的线指示,这就是电子邮件应用的界面。这个应用支持IMAP和POP3,但是没有Exchange。 + +---------- + +![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) + +[Ron Amadeo][a] / Ron是Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。 + +[@RonAmadeo][t] + +-------------------------------------------------------------------------------- + +via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/6/ + +译者:[alim0x](https://github.com/alim0x) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://arstechnica.com/gadgets/2008/10/android-g1-review/ +[2]:http://en.wikipedia.org/wiki/Nokia_1680_classic +[3]:http://en.wikipedia.org/wiki/List_of_best-selling_mobile_phones#2008 +[4]:http://arstechnica.com/gadgets/2014/04/review-we-wear-samsungs-galaxy-gear-and-galaxy-fit-so-you-dont-have-to/ +[5]:http://android-developers.blogspot.com/2008/08/android-market-user-driven-content.html +[6]:http://android-developers.blogspot.com/2008/08/android-market-user-driven-content.html +[7]:http://arstechnica.com/gadgets/2012/02/path-addresses-privacy-controversy-but-social-apps-remain-a-risk-to-users/ +[a]:http://arstechnica.com/author/ronamadeo +[t]:https://twitter.com/RonAmadeo diff --git a/translated/tech/20140723 Top 10 Fun On The Command Line.md b/translated/tech/20140723 Top 10 Fun On The Command Line.md deleted file mode 100644 index 6b0fceed85..0000000000 --- a/translated/tech/20140723 Top 10 Fun On The Command Line.md +++ /dev/null @@ -1,126 +0,0 @@ -Top 10! Fun On The Command Line -================================================================================ - -排名前10!在命令行中寻找乐趣 -================================================================================ - - -**如果你喜欢做‘排名前10'类型的列表但又有点不好意思这样说,那么告诉人们你热爱数据的探索。为了进一步打动他们们,向他们解释你在命令行间的数据探索。但是不要告诉他们这其实很容易,以免你的好形象就这样被毁灭了哦!** - -在这篇文章中,我将基于GNU/Linux工具和'一列的表格'来做一些数据探索,也就是我所说的简单列表。如若想在这里通过命令行查看更多的信息,请查看'man'页,或者在“注释”部分求解。 - -### 密码 ### - -在第一个列表里探讨的是马克.伯内特2011著的关于[10000 个最常用的密码][1]汇编。这个列表是有序的、使用最频繁的,也是广为人知的阶乘“密码”的最常用来源之一,与“123456”并列排名第二。在这里,我已经把一个所谓密码的文件列出来了,并且使用head命令把排名前10的列出来了: - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/1.png) - -(伯内特解释他是如何手收集这些密码的[这里][2]。你会注意到在列表中他把所有大写字母都转换成小写的。) - -OK,所以'密码'是伯内特列表的顶部。那么个位数字呢? - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/2.png) - -非常有趣的是!数字'1'出现在密码列表中多于是第二个最常用数字'2'的两倍,以及10位数字在数值以及人气排序,除了0和9。而排名前10的字母呢? -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/3.png) - -在密码文件中出现最频繁的字母依次是EARONISTLC.这个和EAIRTONSLC差不多,也是一个频率模式图至少在 [one published table][3] 中最常适用的英语单词。这是否意味着,大部分密码其实是一些常见的英语单词呢,也许会参杂一些数字呢? - -为了找到答案,我先把密码转换成一个纯字母字符串列表,然后看看有多少字符串是可以在英语词典中找到的。 - - -首先我将通过 **sed**命令删除所有密码中的数字,然后删除所有的标点符号,再删除所有的空行。这将创建出一个纯字母的密码列表。然后我通过**sort** 和 **uniq**来修剪列表的排序,将重复项取出。(例如,'abc1234def'和'abc1!2!3!def!'都剔除剩下'abcdef'.) 。根据wc命令,我把1000个密码减至成8583个纯字母的字符串: -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/4.png) - -我经常使用一本便携式的英语字典,我通常会使用`usr/share/dict/american-english`,这个文件是来自Debian Linux的一个发行版本。它包含了99171个单词。我会先通过**tr**命令将这个词表转换为纯小写的,然后使用**sort** 和 **uniq**删除掉人和重复的条目排序(例如'A' 和 'a' 都将成为 'a')。这样就将词表的数量减至97723项了: - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/5.png) - -我现在可以用通信命令带'-23'的参数来比较两个列表和报告中纯字母文件而没有出现在字典中的单词: -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/6.png) - -总数是3137,所以至少有8583 -3137 = 5446个'核心'密码在伯纳特的纯小写字母列表中(大约63%)是简单的英语单词,或者是简单的单词附加一些数字或者标点符号。我之所以写至少是因为在3137个字符串中有很大比例是只有经过轻微修改的纯英语单词、名称、或者在/usr/share字典中未能找到的名称修改而成的。在LA项中,例如,'labtec', 'ladyboy', 'lakeside', 'lalakers', 'lalala', 'laserjet', 'lasvegas', 'lavalamp' and 'lawman'. - -### Placenames ### -### 地名 ### - -在之前的一篇[Linux Rain article][4],我描述了如何建立一张37万项澳大利亚的地名表。有了它,我现在可以回答一些类似这样的关键问题“Round Hill是澳大利亚山脉中最流行的名字吗?”和“桑迪是沙滩之最,而岩溪峡谷呢?” - -在地名表中地名字段的排名第2,所以这里有: - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/7.png) - - -哇。我当时甚至没有关闭。(但是请注意到我是如何通过**^string1^string2**命令保存打印的内容。它重复着最后一个命令,但是用第2个字符串代替了第1个字符串。这是多门经常的BASH绝招!) - - -另一个亟待解决的问题是有多少地名有'Mile'在其中,例如'Six Mile Creek',而他们的排名又是如何: -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/8.png) - -我在我的澳洲之旅发现有很多Dead Horse Creeks,因此有这些地名: - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/9.png) - - -### 种类 ### - -第三个列表是探索我今年出版的1961-2010年期间澳大利亚新种类昆虫名。从这个列表中,我去掉所有“物种的绰号”,这也是种群组合的第二部分像智人(你和我)和西方蜜蜂(欧洲蜜蜂)。 - - -(科技小贴士:这个昆虫表,可以从开发数据Zenodo库中[https://zenodo.org/record/10481][5],包括亚种。在我的‘top 10’练习中,我首先分离出所有独特的种群组合,这样避免了重复的,例如蜜蜂iberica的亚种,以避免蜜蜂的绰号intermissa,等等。最后一个物种文件有18155个绰号。) - -大多数人讲科学名称带玩笑式地用'-us'结局,如'Biggus buggus'.那么昆虫学家呢?有几个不错的,用命令行的方式获取字符串的最后2个字母,在这里我都会用到这2个: -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/10.png) - - - -耶!昆虫学家喜欢也‘-us’结尾。接下来,我不知道有多少物种是以我的家乡State of Tasmania来命名的?(下面我想看看前100行,来确保我得到的所有'tasman'组合.) - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/11.png) - -那么昆士兰呢? - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/12.png) - -一般来说,昆虫物种名单中的前10名分别是什么呢? - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/13.png) - -嗯,除了明显的'australis'和'australiensis',而地理方面的'occidentalis'(西部),另外昆虫学家创建7个在10个最流行列表中的绰号已经旅行了其它昆虫学家的意愿。(加词'commoni'是给澳大利亚蝴蝶和蛾专家Ian F.B. Common,从1917-2006.) - -### Speechifying ### -### 演变 ### - -上面使用的命令在一个简单的列表中。从一个文本块做一个简单的列表,这个命令行又再次成为你的朋友。例如,我保存了一个相当filibustery[演讲][6]在澳大利亚参议院于2014年7月16日的文本文件议事录。将议事录分割成一个单词列表: -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/14.png) - -And to look at word frequency in the speech: - -现在看看讲话中的单词使用频率: - -![](http://thelinuxrain.com/content/01-articles/67-top-10-fun-on-the-command-line/15.png) - -### Coming soon... ### -### 即将推出... ### - -从多列的表中做'top 10'等排名,需要更多些的命令行工具。我将会在未来的文章中证明他们的用处。 - - - - --------------------------------------------------------------------------------- - -via: http://thelinuxrain.com/articles/top-10-fun-on-the-command-line - -原文作者:Bob Mesibov(Bob Mesibov is Tasmanian, retired and a keen Linux tinkerer.) - -译者:[disylee](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:https://xato.net/passwords/more-top-worst-passwords/#.U8eD13AvDy0 -[2]:https://xato.net/passwords/how-i-collect-passwords/#.U8eEdnAvDy0 -[3]:http://www.rinkworks.com/words/letterfreq.shtml -[4]:http://www.thelinuxrain.com/articles/building-a-gazetteer-table-from-kml-files -[5]:https://zenodo.org/record/10481 -[6]:http://parlinfo.aph.gov.au/parlInfo/search/display/display.w3p;db=CHAMBER;id=chamber%2Fhansards%2F232fa1a8-d7e8-4b22-9018-1a99b5a96812%2F0025;query=Id%3A%22chamber%2Fhansards%2F232fa1a8-d7e8-4b22-9018-1a99b5a96812%2F0000%22 diff --git a/translated/tech/20140801 What are better alternatives to basic command line utilities.md b/translated/tech/20140801 What are better alternatives to basic command line utilities.md new file mode 100644 index 0000000000..32adf744e4 --- /dev/null +++ b/translated/tech/20140801 What are better alternatives to basic command line utilities.md @@ -0,0 +1,108 @@ +基本的命令行工具有哪些更好的替代品 +================================================================================ +命令行听起来有时候会很吓人, 特别是在刚刚接触的时候. 你甚至可能做过有关命令行的噩梦. 然而渐渐地, 我们都意识到命令行实际上并不是那么吓人, 反而是非常有用. 实际上, 没有命令行正是每次我使用 Windows 时让我感到崩溃的地方. 这种感觉上的变化是因为命令行工具实际上是很智能的. 你在任何一个 Linux 终端上所使用的基本工具功能都是很强大的, 但还远说不上是足够强大. 如果你想使你的命令行生涯更加愉悦, 这里有几个程序你可以下载下来替换原来的默认程序, 它还可以给你提供比原始程序更多的功能给你提供比原始程序更多的功能. + +### dfc ### + +作为一个 LVM 使用者, 我非常喜欢随时查看我的硬盘存储器的使用情况. 我也从来没法真正理解为什么在 Windows 上我们得打开资源管理器来查看电脑的基本信息. 在 Linux 上, 我们可以使用如下命令: + + $ df -h + +![](https://farm4.staticflickr.com/3858/14768828496_c8a42620a3_z.jpg) + +该命令可显示电脑上每一分卷的大小, 已使用空间, 可用空间, 已使用空间百分比和挂载点. 注意, 我们必须使用 "-h" 选项使得所有数据以可读形式显示(使用 GiB 而不是 KiB). 但你可以使用 [dfc][1] 来完全替代 df, 它不需要任何额外的选项就可以得到 df 命令所显示的内容, 并且会为每个设备绘制彩色的使用情况图, 因此可读性会更强. + +![](https://farm6.staticflickr.com/5594/14791468572_a84d4b6145_z.jpg) + +另外, 你可以使用 "-q" 选项将各分卷排序, 使用 "-u" 选项规定你希望使用的单位, 甚至可以使用 "-e" 选项来获得 csv 或者 html 格式的输出. + +### dog ### + +Dog 比 cat 好, 至少这个程序自己是这么宣称的, 你应该相信它一次. 所有 cat 命令能做的事, [dog][2] 都做的更好. 除了仅仅能在控制台上显示一些文本流之外, dog 还可以对其进行过滤. 例如, 你可以使用如下语法来获得网页上的所有图片: + + $ dog --images [URL] + +![](https://farm6.staticflickr.com/5568/14811659823_ea8d22d045_z.jpg) + +或者是所有链接: + + dog --links [URL] + +![](https://farm4.staticflickr.com/3902/14788690051_7472680968_z.jpg) + +另外, dog 命令还可以处理一些其他的小任务, 比如全部转换为大写或小写, 使用不同的编码, 显示行号和处理十六进制文件. 总之, dog 是 cat 的必备替代品. + +### advcp ### + +一个 Linux 中最基本的命令就是复制命令: cp. 它几乎和 cd 命令地位相同. 然而, 它的输出非常少. 你可以使用 verbose 模式来实时查看正在被复制的文件, 但如果一个文件非常大的话, 你看着屏幕等待却完全不知道后台在干什么. 一个简单的解决方法是加上一个进度条: 这正是 advcp (advanced cp 的缩写) 所做的! advcp 是 [GNU coreutils][4] 的一个 [补丁版本][3], 它提供了 acp 和 amv 命令, 即"高级"的 cp 和 mv 命令. 使用语法如下: + + $ acp -g [file] [copy] + +它把文件复制到另一个位置, 并显示一个进度条. + +![](https://farm6.staticflickr.com/5588/14605117730_fe611fc234_z.jpg) + +我还建议在 .bashrc 或 .zshrc 中设置如下命令别名: + + alias cp="acp -g" + alias mv="amv -g" + +(译者注: 原文给出的链接已貌似失效, 我写了一个可用的安装脚本放在了我的 [gist](https://gist.github.com/b978fc93b62e75bfad9c) 上, 用的是 AUR 里的 [patch](https://aur.archlinux.org/packages/advcp)) + +### The Silver Searcher ### + +[the silver searcher][5] 这个名字听起来很不寻常(银搜索...), 它是一款设计用来替代 grep 和 [ack][6] 的工具. The silver searcher 在文件中搜索你想要的部分, 它比 ack 要快, 而且能够忽略一些文件而不像 grep 那样.(译者注: 原文的意思貌似是 grep 无法忽略一些文件, 但 grep 有类似选项) the silver searcher 还有一些其他的功能, 比如彩色输出, 跟随软连接, 使用正则式, 甚至是忽略某些模式. + +![](https://farm4.staticflickr.com/3876/14605308117_f966c77140_z.jpg) + +作者在开发者主页上提供了一些搜索速度的统计数字, 如果它们仍然是真的的话, 那是非常可观的. 另外, 你可以把它整合到 Vim 中, 用一个简洁的命令来调用它. 如果要用两个词来概括它, 那就是: 智能, 快速. + +### plowshare ### + +所有命令行的粉丝都喜欢使用 wget 或其他对应的替代品来从互联网上下载东西. 但如果你使用许多文件分享网站, 像 mediafire 或者 rapidshare, 你一定很乐意了解一款专门为这些网站设计的对应的程序, 叫做 [plowshare][7]. 安装成功之后, 你可以使用如下命令来下载文件: + + $ plowdown [URL] + +或者是上传文件: + + $ plowup [website name] [file] + +如果你有那个文件分享网招的账号的话. + +最后, 你可以获取分享文件夹中的一系列文件的链接: + + $ plowlist [URL] + +或者是文件名, 大小, 哈希值等等: + + $ plowprobe [URL] + +对于那些熟悉这些服务的人来说, plowshare 还是缓慢而令人难以忍受的 jDownloader 的一个很好的替代品. + +### htop ### + +如果你经常使用 top 命令, 很有可能你会喜欢 [htop][8] 命令. top 和 htop 命令都能对正在运行的进程提供了实时查看功能, 但 htop 还拥有一系列 top 命令所没有的人性化功能. 比如, 在 htop 中, 你可以水平或垂直滚动进程列表来查看每个进程的完整命令名, 还可以使用鼠标点击和方向键来进行一些基本的进程操作(比如 kill, (re)nice 等), 而不用输入进程标识符. + +![](https://farm6.staticflickr.com/5581/14819141403_6f2348590f_z.jpg) + +总的来说, 这些十分有效的基本命令行的替代工具就像那些有用的小珍珠一样, 它们并不是那么容易被发现, 但一旦你找到一个, 你就会惊讶你是如何忍受这么长没有它的时间. 如果你还知道其他的与上面描述相符的工具, 请在评论中分享给我们. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/07/better-alternatives-basic-command-line-utilities.html + +作者:[Adrien Brochard][a] +译者:[wangjiezhe](https://github.com/wangjiezhe) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/adrien +[1]:http://projects.gw-computing.net/projects/dfc +[2]:http://archive.debian.org/debian/pool/main/d/dog/ +[3]:http://zwicke.org/web/advcopy/ +[4]:http://www.gnu.org/software/coreutils/ +[5]:https://github.com/ggreer/the_silver_searcher +[6]:http://xmodulo.com/2014/01/search-text-files-patterns-efficiently.html +[7]:https://code.google.com/p/plowshare/ +[8]:http://hisham.hm/htop/ diff --git a/translated/tech/20140815 How to manage a WiFi connection from the command line.md b/translated/tech/20140815 How to manage a WiFi connection from the command line.md new file mode 100644 index 0000000000..966d9c3190 --- /dev/null +++ b/translated/tech/20140815 How to manage a WiFi connection from the command line.md @@ -0,0 +1,78 @@ +在命令行中管理 Wifi 连接 +================================================================================ +无论何时要安装一款新的 Linux 发行系统,一般的建议都是让您通过有线连接来接到互联网的。这主要的原因有两条:第一,您的无线网卡也许安装的驱动不正确而不能用;第二,如果您是从命令行中来安装系统的,管理 WiFi 就非常可怕。我总是试图避免在命令行中处理 WiFi 。但 Linux 的世界,应具有无所畏惧的精神。如果您不知道怎样操作,您需要继续往下来学习之,这就是写这篇文章的唯一原因。所以我强迫自己学习如何在命令行中管理 WiFi 连接。 + +通过命令行来设置连接到 WiFi 当然有很多种方法,但在这篇文章里,也是一个建议,我将会作用最基本的方法:那就是使用在任何发布版本中都有的包含在“默认包”里的程序和工具。或者我偏向于使用这一种方法。使用此方法显而易见的好处是这个操作过程能在任意有 Linux 系统的机器上复用。不好的一点是它相对来说比较复杂。 + +首先,我假设您们都已经正确安装了无线网卡的驱动程序。没有这前提,后续的一切都如镜花水月。如果您你机器确实没有正确安装上,您应该看看关于您的发布版本的维基和文档。 + +然后您就可以用如下命令来检查是哪一个接口来支持无线连接的 + + $ iwconfig + +![](https://farm6.staticflickr.com/5578/14725621337_b174a3029c_z.jpg) + +一般来说,无线接口都叫做 wlan0。当然也有例外的,但在这篇教程中我们将会一直用通用叫法。 + +以防万一,你得确认下以使此接口服务是启动着的: + + $ sudo ip link set wlan0 up + +一但确认了无线接口是工作着的,你就可以用如下命令来扫描附近的无线网络了: + + $ sudo iw dev wlan0 scan | less + +![](https://farm4.staticflickr.com/3847/14909117931_e2f3d0feb0_z.jpg) + +根据扫描出的结果,可以得到网络的名字(它的 SSID),它的信息强度,以及它使用的是哪个安全加密的(如:WEP、WPA/WPA2)。从此时起,将会分成两条路线:情况很好的和容易的以及情况稍微复杂的。 + +如果您想连接的网络是没有加密的,您可以用下面的命令直接连接: + + $ sudo iw dev wlan0 connect [network SSID] + +如果网络是用 WEP 加密的,也非常容易: + + $ sudo iw dev wlan0 connect [network SSID] key 0:[WEP key] + +但网络使用的是 WPA 或 WPA2 协议的话,事情就不好办了。这种情况,您就得使用叫做 wpa_supplicant 的工具,它默认是没有启用的。需要修改 /etc/wpa_supplicant/wpa_supplicant.conf 文件,增加如下行: + + network={ + ssid="[network ssid]" + psk="[the passphrase]" + priority=1 + } + +我建议你​​在文件的末尾添加它,并确保其他配置都注释掉。要注意 SSID 和密码字串都是大小写敏感的。在技术上您也可以把接入点的名称当做是 SSID,使用 wpa_supplicant 工具的话会有合适的 SSID 来替代这个名字。 + +一旦配置文件修改完成后,在后台启动此命令: + + $ sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf + +最后,无论是连到开放的网络还是加密的安全网络,您都得获取 IP 地址。简单地使用如下命令: + + $ sudo dhcpcd wlan0 + +如果一切顺利的话,您应该已经通过 DHCP 获取到了一个全新的本地 IP,这个过程是在后台自动完成的。如果想确认下是否真正连接上的话,您可以再一次输入如下命令检查: + + $ iwconfig + +![](https://farm4.staticflickr.com/3904/14725573368_7110407db8_z.jpg) + +最后,我认为多次重复第一步的检查操作是很有必要的。您永远不会知道什么时候您的图形用户界面挂了,或者是什么时候不能访问无线连接了,所以现在就准备着用命令来检测吧。还有,前面提到过的,有很多种方式(如 NetworkManager、[wicd][1]、[netcfg][2]、[wifi][3] 等等)来管理无线连接。我坚持使用最基本的方式,但在某些情况下,我使用的工具可能您还没有,所以您在之前就得先下载它们。另一方面,有很多高级的应用程序,他们确实是不包含在“默认包”里面的,使用它们会大大简化操作过程。但一般建议是开始的话最好从基本的来。 + +关于从命令行来管理连接 WiFi 您还有其他方式方法吗?请在评论中让我们知道。 + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2014/08/manage-wifi-connection-command-line.html + +作者:[Adrien Brochard][a] +译者:[runningwater](https://github.com/runningwater) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/adrien +[1]:http://wicd.sourceforge.net/ +[2]:https://www.archlinux.org/netcfg/ +[3]:https://github.com/rockymeza/wifi \ No newline at end of file diff --git a/translated/tech/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md b/translated/tech/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md new file mode 100644 index 0000000000..1b1c72d131 --- /dev/null +++ b/translated/tech/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md @@ -0,0 +1,50 @@ +Linux FAQ -- 如何修复“X11 forwarding request failed on channel 0”错误 +================================================================================ +> **问题**: 当我尝试使用SSH的X11转发选项连接到远程主机时, 我在登录时遇到了一个 "X11 forwarding request failed on channel 0" (X11 转发请求在通道0上失败)的错误。 我为什么会遇到这个错误,并且该如何修复它 + +![](https://farm6.staticflickr.com/5562/14909594691_ce7ca01b2d_z.jpg) + +首先,我们假设你已经正确启用了[SSH的X11转发][1]。 + +如果你在登录时遇到"X11 forwarding request failed on channel 0" (X11 转发请求在通道0上失败),这里可能有不同的原因,解决的方法也不同。 + +### 方案一 ### + +出于安全原因,OpenSSH服务默认将X11转发请求绑定到本地回环地址上,并且在DISPLAY环境变量中将主机名设置为“localhost”。在这样的设定下,一些 +X11客户端不能正确处理X11转发,这会导致报告中的错误。要解决这个问题,在/etc/ssh/sshd配置文件中加入下面这几行,它可以将X11转发请求绑定到外网卡地址上。 + + $ sudo vi /etc/ssh/sshd_config + +---------- + + X11Forwarding yes + X11UseLocalhost no + +重启SSH使设置生效: + + $ sudo /etc/init.d/ssh restart (Debian 6, Ubuntu or Linux Mint) + $ sudo systemctl restart ssh.service (Debian 7, CentOS/RHEL 7, Fedora) + $ sudo service sshd restart (CentOS/RHEL 6) + +### 方案而 ### + +如果远程主机的SSH服务禁止了IPv6,那么X11转发失败的错误也有可能发生。要解决这个情况下的错误。打开/etc/ssh/sshd配置文件,打开"AddressFamily all" (如果有的话)的注释。接着加入下面这行。这会强制SSH服务只使用IPv4而不是IPv6。 + + $ sudo vi /etc/ssh/sshd_config + +---------- + + AddressFamily inet + +再说一次,重启SSH服务来完成设置 + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/fix-broken-x11-forwarding-ssh.html + +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://xmodulo.com/2012/11/how-to-enable-x11-forwarding-using-ssh.html \ No newline at end of file diff --git a/translated/tech/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md b/translated/tech/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md new file mode 100644 index 0000000000..4d115bf279 --- /dev/null +++ b/translated/tech/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md @@ -0,0 +1,42 @@ +Linux FAQ -- 如何在VMware ESXi虚拟机上设置静态MAC地址。 +================================================================================ +> **问题**:我想给VMware ESXi上的一台虚拟机分配一个静态的MAC地址。然而当我开始这么做的时候,虚拟机就不能启动了不且抛出了一个这样一个错误"00:0c:29:1f:4a:ab is not an allowed static Ethernet address. It conflicts with VMware reserved MACs"(00:0c:29:1f:4a:ab不是一个合法的静态以太网地址。它与VMWare的保留MAC地址冲突)。我该如何在VMware ESXi虚拟机上设置静态MAC地址? + +当你在VMware ESXi上创建虚拟机时,虚拟机的每个网络接口就被分配了一个动态的NAC地址。如果你想要改变默认的行为并给你的虚拟机分配一个静态MAC地址时就这样做 + +![](https://farm6.staticflickr.com/5592/14726591627_64c1dc67ce_z.jpg) + +如你上图所见,VMWare的vSphere的GUI客户端已经有一个为虚拟机分配静态MAC地址的菜单。然而,基于GUI的方法只允许你在**00:50:56:xx:xx:xx**的范围里选择一个静态MAC地址,这是VMWare保留的MAC地址范围。如果你尝试设置任何超出这个范围的MAC地址,你就会无法启动VM,接着就会看到下面的错误。 + +![](https://farm6.staticflickr.com/5591/14890165456_a82ded21b9_z.jpg) + +那么如果我想要给虚拟机设置任意的MAC地址怎么办? + +幸运地,这里有一个对于这个限制的临时方案。方法就是,不使用vSphere GUI客户端编辑。在登录ESXi主机后直接编辑你虚拟机的.vmx文件。 + +首先关闭你想要分配静态MAC地址的虚拟机。 + +[对你的ESXi主机启用SSH访问][1]如果你还没这么做的话。接着通过SSH登录ESXi主机。 + +移到你虚拟机的.vmx文件所在目录。 + + # cd vmfs/volumes/datastore1/[name-of-vm] + +用文本编辑器打开.vmx文件,接着在加入下面这几行。把MAC地址替换成你自己的MAC地址。 + + ethernet0.addressType = "static" + ethernet0.checkMACAddress = "false" + ethernet0.address = "00:0c:29:1f:4b:ac" + +现在你应该可以使用你定义在.vmx文件中的静态MAC地址启动虚拟机了。 + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/static-mac-address-vmware-esxi-virtual-machine.html + +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://ask.xmodulo.com/enable-ssh-remote-access-vmware-esxi5.html \ No newline at end of file diff --git a/translated/tech/20140819 A Pocket Guide for Linux ssh Command with Examples.md b/translated/tech/20140819 A Pocket Guide for Linux ssh Command with Examples.md new file mode 100644 index 0000000000..8673d7b208 --- /dev/null +++ b/translated/tech/20140819 A Pocket Guide for Linux ssh Command with Examples.md @@ -0,0 +1,132 @@ +Linux 下 SSH 命令实例指南 +================================================================================ +如果你已经接触计算机比较长时间, 应该对 SSH 这个了不起的工具及其安全特性有所耳闻吧. 本教程可以让你在短时间内掌握通过 SSH 安全便利地连接到远程计算机的技术. + +如果你对 SSH 还没什么概念, 可以先访问 [维基百科][1] 进行了解. + +### 基本用法 ### + +最简单的 SSH 命令只需要提供用户名和主机名参数即可. 主机名可以是 IP 地址或者域名. 命令格式如下: + + $ ssh user@hostname + +比如要登录到局域网内我的一个树莓派系统, 只需要简单的在命令行输入如下命令: + + $ ssh pi@10.42.0.47 + +命令中的 pi 和 10.42.0.47 分别是我的树莓派系统的用户名和局域网 IP 地址. 实际使用时主机名需要改成你的目标主机(局域网内或者远程)的 IP 地址. + +![basic ssh](http://linoxide.com/wp-content/uploads/2014/08/basic-ssh.png) + +如果你能够成功登陆, 那么下面的内容对你来说就轻而易举了. + +### 使用其他端口 ### + +SSH 默认连接到目标主机的 22 端口上, 但是由于各种原因你可能需要连接到其他端口. + + $ ssh -p 10022 user@hostname + +如上命令就是通过添加参数 -p 指定端口号为 10022. + +### 远程执行命令 ### + +有时需要很方便地在远程主机执行一条命令并显示到本地, 然后继续本地工作. SSH 就能满足这个需求: + + $ ssh pi@10.42.0.47 ls -l + +比如上面这个命令就会枚举远程主机的主目录内容并在本地显示. 是不是很酷? 你可以尝试下其他命令看看. + +![remote command](http://linoxide.com/wp-content/uploads/2014/08/remote-command.png) + +### 挂在远程文件系统 ### + +有一个很赞的基于 SSH 的工具叫 sshfs. sshfs 可以让你在本地直接挂载远程主机的文件系统. + + $ sshfs -o idmap=user user@hostname:/home/user ~/Remote + +比如下面这条命令: + + $ sshfs -o idmap=user pi@10.42.0.47:/home/pi ~/Pi + +该命令就将远程主机 pi 用户的主目录挂载到本地主目录下的 Pi 文件夹. + +要详细了解可以参考 [sshfs 入门教程][2]. + +### X11 图形界面 ### + +假如现在你想要在远程主机运行一个图形界面的程序, SSH 已经帮你想到了! 用前面提到的 SSH 基本命令加上参数 -X 连接到远程主机即可开启 X11 转发功能. 登录后你可能觉得没什么差别, 但是当你运行一个图形界面程序后就会发现其中的不同的. + + $ ssh -X pi@10.42.0.47 + + $ pistore + +如果你想在运行图形界面程序的同时做些别的事情, 只需要简单地在命令末尾加一个 & 符号. + + $ pistore& + +![X11 forwarding](http://linoxide.com/wp-content/uploads/2014/08/X11-forwarding.png) + +### 转义字符 ### + +SSH 提供了多样的转义字符功能. 用 SSH 连接到任意一台远程主机然后输入 ~? 你就可以看到支持的转义字符和功能说明列表. 以下例子展示了 **~#** 和 **~C** 的效果. + +![escape sequences](http://linoxide.com/wp-content/uploads/2014/08/escape-sequences.png) + +### 配置 SSH ### + +如果你需要改变 SSH 的配置, 请用你喜好的文本编辑器打开 **/etc/ssh/sshd_config** 进行编辑. 比如你想改变登陆的标语, 在配置文件中找到下面这行: + + #Banner none + +删除 # 字符(取消该行的注释), 将 none 替换为包含你期望显示内容的文件地址. 修改后该行应该类似这样: + + Banner /etc/issue + +在配置文件 **/etc/ssh/sshd_config** 中你还可以找到端口号, 空闲超时时间等配置项. 配置项大都比较容易理解, 但是保险起见在你修改一些不是很确定的配置项时最好参考下 SSH 的帮助文档. + +### 构建 ssh 密钥对 ### + +运行以下命令创建密钥对: + + $ ssh-keygen -t dsa + +此命令会要求你输入密码(可以留空), 然后就会生成密钥并会显示一张该密钥对应的随机图. + +![generate key pair](http://linoxide.com/wp-content/uploads/2014/08/generate-key-pair.png) + +### 寻找主机密钥 ### + +在你准备添加密钥之前不妨先用以下命令看看是否已经添加了对应主机的密钥了. + + $ ssh-keygen -F 10.42.0.47 + +![find hostkey](http://linoxide.com/wp-content/uploads/2014/08/find-hostkey.png) + +### 删除主机密钥 ### + +某些情况下, 比如主机地址更改或者不再使用某个密钥, 你就可能需要删除某个密钥. + + $ ssh-keygen -R 10.42.0.47 + +用以上命令就可删除. 这比手动在 **~/.ssh/known_hosts** 文件中删除要方便很多. + +![remove hostkey](http://linoxide.com/wp-content/uploads/2014/08/remove-hostkey.png) + +### 总结 ### + +通过以上的内容你应该可以很轻松的使用 SSH 了. SSH 还有很多功能值得你去发掘, 这就要看你的想象力了. + + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/linux-command/pocket-guide-linux-ssh-command/ + +作者:[Bobbin Zachariah][a] +译者:[henryfour](https://github.com/henryfour) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://linoxide.com/author/bobbin/ +[1]:http://en.wikipedia.org/wiki/Secure_Shell +[2]:http://linoxide.com/how-tos/sshfs-mount-remote-directories/ diff --git a/translated/tech/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md b/translated/tech/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md new file mode 100644 index 0000000000..3a7ddec920 --- /dev/null +++ b/translated/tech/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md @@ -0,0 +1,49 @@ +Linux FAQ -- 如何在CentOS或者RHEL上启用Nux Dextop仓库 +================================================================================ +> **问题**: 我想要安装一个在Nux Dextop仓库的RPM包。我该如何在CentOS或者RHEL上设置Nux Dextop仓库? + +[Nux Dextop][1]是一个面对CentOS、RHEL、ScientificLinux的含有许多流行的桌面和多媒体相关的包的第三方RPM仓库(比如:Ardour,Shutter等等)。目前,Nux Dextop桌面对CentOS和RHEL 6/7可用。 + +要在CentOS或者RHEL上启用Nux Dextop,遵循下面的步骤。 + +首先,要理解Nux Dextop被设计与EPEL仓库共存。因此,你需要使用Nux Dexyop仓库前先[启用 EPEL][2]。 + +启用EPEL后,用下面的命令安装Nux Dextop仓库。 + +在 CentOS/RHEL 6.* 上: + + $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm + +在 CentOS/RHEL 7 上 : + + $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm + +现在验证Nux Dextop仓库是否已经成功安装: + + $ yum repolist + +![](https://farm6.staticflickr.com/5574/14790031847_90b4a829d7_z.jpg) + +### 对于 Repoforge/RPMforge 用户 ### + +据作者所说,Nux Dextop目前所知会与其他第三方库比如Repoforge和ATrpms相冲突。因此,如果你启用了除了EPEL的其他第三方库,强烈建议你将Nux Dextop仓库设置成“default off”(默认关闭)状态。就是用文本编辑器打开/etc/yum.repos.d/nux-dextop.repo,并且在nux-desktop下面将"enabled=1" 改成 "enabled=0"。 + +$ sudo vi /etc/yum.repos.d/nux-dextop.repo + +![](https://farm6.staticflickr.com/5560/14789955930_f8711b3581_z.jpg) + +当你无论何时从Nux Dextop仓库安装包时,显式地用下面的命令启用仓库。 + + $ sudo yum --enablerepo=nux-dextop install + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/enable-nux-dextop-repository-centos-rhel.html + +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://li.nux.ro/download/nux/dextop/ +[2]:http://xmodulo.com/2013/03/how-to-set-up-epel-repository-on-centos.html \ No newline at end of file diff --git a/sources/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md b/translated/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md similarity index 57% rename from sources/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md rename to translated/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md index c2735054c6..679da192a0 100644 --- a/sources/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md +++ b/translated/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md @@ -1,20 +1,18 @@ -Fun in Linux Terminal – Play with Word and Character Counts +Linux终端的乐趣之把玩Word Counts ================================================================================ -Linux command line has a lot of fun around itself and many tedious task can be performed very easily yet with perfection. Playing with words and characters, their frequency in a text file, etc is what we are going to see in this article. +Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行很多繁琐的任务。比如,我们计算一个文本文件中字和字符的出现频率,则是我们打算在这篇文章中讲到的。 -The only command that comes to our mind, for tweaking Linux command line to manipulate words and characters from a text file is [wc command][1]. +立刻来到我们脑海的命令,计算字和字符在一个文本文件中出现频率的 Linux 命令是 [wc 命令] [1]。 ![Fun with Word and Letter Counts in Shell](http://www.tecmint.com/wp-content/uploads/2014/03/Linux-Word-Count.png) -A ‘**wc**‘ command which stands for word count is capable of Printing Newline, word & byte counts from a text file. - -To work with the small scripts to analyze text file, we must have a text file. To maintain uniformity, we are creating a text file with the output of man command, as described below. +在使用的脚本来分析文本文件之前,我们必须有一个文本文件。为了保持一致性,我们将创建一个文本文件,man命令的输出如下所述。 $ man man > man.txt -The above command creates a text file ‘**man.txt**‘ with the content of ‘**manual page**‘ for ‘man‘ command. +以上命令是将man命令的使用方式导入到**man.txt**文件里。 -We want to check the most common words, in the above created ‘**Text File**‘ by running the below script. +我们希望能得到最平常的单词,对之前我们新建的文件执行如下脚本。 $ cat man.txt | tr ' ' '\012' | tr '[:upper:]' '[:lower:]' | tr -d '[:punct:]' | grep -v '[^a-z]' | sort | uniq -c | sort -rn | head @@ -31,9 +29,9 @@ We want to check the most common words, in the above created ‘**Text File**‘ 64 if 63 be -The above one liner simple script shows, ten most frequently appearing words and their frequency of appearance, in the text file. +上面的脚本,输出了最常使用的十个单词。 -How about breaking down a word into individual using following command. +如何看单个的字母呢?那就用如下的命令。 $ echo 'tecmint team' | fold -w1 @@ -51,9 +49,9 @@ How about breaking down a word into individual using following command. a m -**Note**: Here, ‘-w1′ is for width. +**Note**: `-w1`只是设定了长度 -Now we will be breaking down every single word in a text file, sort the result and get the desired output with the frequency of ten most frequent characters. +现在我们将从那个文本文件中掰下来的每一个字母,对结果进行排序,得到所需的输出频率的十个最常见的字符。 $ fold -w1 < man.txt | sort | uniq -c | sort -rn | head @@ -70,7 +68,7 @@ Now we will be breaking down every single word in a text file, sort the result a 1224 r 1021 l -How about getting most frequent characters in the text file with uppercase and lowercase differently along with their occurrence frequency. +如何区分大小写呢?之前我们都是乎略大小写的。所以,用如下命令。 $ fold -w1 < man.txt | sort | tr '[:lower:]' '[:upper:]' | uniq -c | sort -rn | head -20 @@ -97,7 +95,7 @@ How about getting most frequent characters in the text file with uppercase and l 352 Y 344 . -Check the above output, where punctuation mark is included. Lets strip out punctuation, with ‘**tr**‘ command. Here we go: +请检查上面的输出,标点符号居然包括在内。让我们干掉他,用**tr** 命令。GO: $ fold -w1 < man.txt | tr '[:lower:]' '[:upper:]' | sort | tr -d '[:punct:]' | uniq -c | sort -rn | head -20 @@ -124,7 +122,7 @@ Check the above output, where punctuation mark is included. Lets strip out punct 504 G 352 Y -Now I have three text files, lets run the above one liner script to see the output. +现在,我们有了三个文本,那就让我们用如下命令查看结果吧。 $ cat *.txt | fold -w1 | tr '[:lower:]' '[:upper:]' | sort | tr -d '[:punct:]' | uniq -c | sort -rn | head -8 @@ -139,7 +137,7 @@ Now I have three text files, lets run the above one liner script to see the outp 1632 S 1580 O -Next we will be generating those infrequent letters that are at least ten letters long. Here is the simple script. +下一步我们将会生成那些罕见的至少十个字母长的单词。以下是简单的脚本: $ cat man.txt | tr '' '\012' | tr '[:upper:]' '[:lower:]' | tr -d '[:punct:]' | tr -d '[0-9]' | sort | uniq -c | sort -n | grep -E '..................' | head @@ -156,18 +154,17 @@ Next we will be generating those infrequent letters that are at least ten letter 1 activate local mode format and display local manual files 1 acute accent -**Note**: The more and more dots in the above script till all the results are generated. We can use .{10} to get ten character matches. +**Note**: 上面的.越来越多,其实,我们可以使用.{10} 得到同样的效果。 -These simple scripts, also make us know most frequent appearing words and characters in English. - -That’s all for now. I’ll be here again with another interesting and off the beat topic worth knowing, which you people will love to read. Don’t forget to provide us with your valuable feedback in comment section, below. +这些简单的脚本,让我们知道最频繁出现的单词和英语中的字符。 +这就是现在。我会在这里再一次提到另一个有趣的话题,你应该会喜欢读。还有别忘了向我们提供您的宝贵意见的评论部分。 -------------------------------------------------------------------------------- via: http://www.tecmint.com/play-with-word-and-character-counts-in-linux/ 作者:[Avishek Kumar][a] -译者:[译者ID](https://github.com/译者ID) +译者:[MikeCoder](https://github.com/MikeCoder) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/tech/20140902 Mount Google drive in Ubuntu 14.04 LTS.md b/translated/tech/20140902 Mount Google drive in Ubuntu 14.04 LTS.md new file mode 100644 index 0000000000..899b897906 --- /dev/null +++ b/translated/tech/20140902 Mount Google drive in Ubuntu 14.04 LTS.md @@ -0,0 +1,61 @@ +Google drive和Ubuntu 14.04 LTS的胶合 +================================================================================ +Google尚未发布其**官方Linux客户端**,以用于从Ubuntu访问其drive。然开源社区却业已开发完毕非官方之软件包‘**grive-tools**’。 + +Grive乃是Google Drive(**在线存储服务**)的GNU/Linux系统客户端,允许你**同步**所选目录到云端,以及上传新文件到Google Drive。 + +### grive-tools安装步骤 ### + +步骤:1 使用下列命令添加grive-tools PPA: + + # sudo add-apt-repository ppa:thefanclub/grive-tools + +步骤:2 更新列表 + + #sudo apt-get update + +步骤:3 安装grive-tools + + # sudo apt-get install grive-tools + +### 访问Google Drive的步骤 ### + +**步骤:1** 安装完了,通过输入**Grive**在**Unity Dash**搜索应用,并打开之。 + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/access-grive-setup.png) + +**步骤:2** 登入google drive,你将被问及访问google drive的权限。 + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/gdrive.png) + +点击**下一步**时,新的浏览器中讲打开**Google登录页** + +登入你的Google帐号,并点击**接受**,如下所示: + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/thrid-party-grive.png) + +**步骤:3** 下面将提供给你一个 **google代码**,复制并粘贴到**Grive设置框**内。 + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/gdrive-code.png) + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/code-in-grive.png) + +点击下一步后,将会开始同步google drive到你**家目录**下的‘**Google Drive**’文件夹。完成后,将出现如下窗口。 + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/grive-installation-completed.png) + +Google Drive folder created under **user's home directory** + +![](http://www.linuxtechi.com/wp-content/uploads/2014/09/google-drive-folder.png) + +-------------------------------------------------------------------------------- + +via: http://www.linuxtechi.com/mount-google-drive-in-ubuntu/ + +作者:[Pradeep Kumar ][a] +译者:[GOLinux](https://github.com/GOLinux) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.linuxtechi.com/author/pradeep/ diff --git a/translated/tech/20140910 How To Recover Default Openbox Config Files On Crunchbang.md b/translated/tech/20140910 How To Recover Default Openbox Config Files On Crunchbang.md new file mode 100644 index 0000000000..942a23037d --- /dev/null +++ b/translated/tech/20140910 How To Recover Default Openbox Config Files On Crunchbang.md @@ -0,0 +1,38 @@ +如何在Crunchbang下回复Openbox的默认配置 +================================================================================ +[CrunchBang][1]是一个很好地融合了速度、风格和内容的基于Debian GNU/Linux的发行版。使用了灵活的Openbox窗口管理器,高度定制化并且提供了一个现代、全功能的GNU/Linux系统而没有牺牲性能。 + +Crunchbang是高度自定义的,用户可以尽情地地把它调整成他们想要的样子。这一切都通过文本文件(配置)。我作为一个Crunchbang用户,我最近搞乱了我的**menu.xml**配置文件,它负责下面的菜单显示。 + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/09/curnchbang_menu_xml.png) + +其中从菜单配置文件中去除了所有代码。由于我没有备份(最好备份配置文件)。我不得不搜索Crunchbang开箱即用的默认配置。这里就是我如何修复的过程,要感谢Crunchbang论坛。 + +了解所有为你预备份的默认配置是很有趣的,你可以在这里找到: + + /etc/skel/.config/ + +因此对于任何默认配置,你只需复制他们并重启适当的程序。 + +我在这里使用Openbox的**menu.xml**作为示例: + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/09/curnchbang_menu_xml_etc.png) + + cp -r /etc/skel/.config/openbox/menu.xml ~/.config/openbox/menu.xml + +接着重启openbox。 + + openbox --restart + +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/recover-default-openbox-config-files-crunchbang/ + +作者:[Enock Seth Nyamador][a] +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.unixmen.com/author/seth/ +[1]:http://crunchbang.org/ \ No newline at end of file diff --git a/translated/tech/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md b/translated/tech/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md new file mode 100644 index 0000000000..ff15cd3b9b --- /dev/null +++ b/translated/tech/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md @@ -0,0 +1,54 @@ +2q1w2007翻译中 +[小贴士] 怎么在Linux发行版下列出所有安装了的包 +================================================================================ +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/09/linux-790x536.png) + +列出所有安装了的包的方法取决于你用什么发行版以及包管理器。 + +在这个教程里,我们将提供主流发行版的命令。 + +**注意**: 你可以用管道筛选或者用重定向符(>)来把结果重定向到一个文件。例子如下。 + + example | less + +---------- + + example > installed_packages.txt + +### Red Hat/Fedora Core/CentOS Linux: ### + + rpm -qa + +### FreeBSD / OpenBSD: ### + + pkg_info + +### Arch Linux: ### + + pacman -Qq + +### Ubuntu / Debian / Linux Mint: ### + + dpkg --get-selections + +---------- + + dpkg --list + +---------- + + dpkg -l + +祝你有好的一天。 + +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/quick-tip-list-installed-packages-linux-distributions/ + +作者:[Enock Seth Nyamador][a] +译者:[2q1w2007](https://github.com/2q1w2007) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.unixmen.com/author/seth/ \ No newline at end of file diff --git a/translated/tech/20140912 QuiteRSS--RSS Reader For Desktop Linux.md b/translated/tech/20140912 QuiteRSS--RSS Reader For Desktop Linux.md new file mode 100644 index 0000000000..a69844dc1b --- /dev/null +++ b/translated/tech/20140912 QuiteRSS--RSS Reader For Desktop Linux.md @@ -0,0 +1,54 @@ +2q1w2007翻译中 +QuiteRSS: Linux桌面的RSS阅读器 +================================================================================ +[QuiteRSS][1]是一个自由而[开源][2]的RSS/Atome阅读器。它可以运行在Windows , Linux和Mac上运行。它用C++/QT编写,所以它会有更好的未来。 + +QuiteRSS的界面让我想起Lotus Notes mail,会有很多RSS信息排列在大小合适的方块上,你可以通过标签分组。需要查找东西时,只需在下面板上打开RSS信息。 + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/09/QuiteRSS_Ubuntu.jpeg) + +除了上述功能,它还有一个广告屏蔽器,一个报纸输出视图,通过URL特性导入RSS等众多功能。你可以在[这里][3]查找到完整的功能列表。 + +### 在 Ubuntu 和 Linux Mint 上安装 QuiteRSS ### + +QuiteRSS在Ubuntu 14.04 和 Linux Mint 17中可用。你可以很简单的通过以下命令行安装: + + sudo apt-get install quiterss + +如果你想安装最新的稳定版本,你可以用官方的[QuiteRSS PPA][4]: + + sudo add-apt-repository ppa:quiterss/quiterss + sudo apt-get update + sudo apt-get install quiterss + +上面的命令在所有基于Ubuntu的发行版像 Linux Mint, Elementary OS, Linux Lite, Pinguy OS 都应该好用。在其他Linux发行版和平台上,你可以从 [下载页][5]获得源码来安装. + +### 卸载 QuiteRSS ### + +用下方命令卸载 QuiteRSS: + + sudo apt-get remove quiterss + +如果你用了PPA,你还需要从源列表中把仓库删除: + + sudo add-apt-repository --remove ppa:quiterss/quiterss + +QuiteRSS是一个不错的开源RSS阅读器,尽管我更喜欢[Feedly][6]。尽管现在 Feedly 还没有Linux桌面程序,但是你依然可以在网页浏览器中使用。我希望你会认为QuiteRSS值得一试。 + +-------------------------------------------------------------------------------- + +via: http://itsfoss.com/quiterss-rss-reader-desktop-linux/ + +作者:[Abhishek][a] +译者:[2q1w2007(https://github.com/2q1w2007) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://itsfoss.com/author/Abhishek/ +[1]:http://quiterss.org/ +[2]:http://itsfoss.com/category/open-source-software/ +[3]:http://quiterss.org/en/about +[4]:https://launchpad.net/~quiterss/+archive/ubuntu/quiterss/ +[5]:http://quiterss.org/en/download +[6]:http://feedly.com/ \ No newline at end of file