This commit is contained in:
SteveArcher 2014-09-07 16:16:00 +08:00
commit 1292ccdea2
18 changed files with 801 additions and 260 deletions

View File

@ -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/) 荣誉推出

View File

@ -1,24 +1,28 @@
KDE Plasma 5 ———— 给尚未确定桌面环境的 Linux 用户指明道路
KDE Plasma 5 —— 给尚未确定桌面环境的 Linux 用户指明道路
================================================================================
> 点评 ———— 新发行版既满足了传统桌面环境的需求,也兼顾了多设备长期支持计划
> 点评 ———— 新的KDE 5版本既满足了传统桌面环境的需求,也兼顾了多设备长期支持计划
KDE 项目终于发布了备受瞩目的 KDE 桌面环境的最新主版本 ———— KDE Plasma 5。
Plasma 5 站在了一场正在进行的未来 Linux 桌面环境的争夺战中间。一方面,有着 GNOME 和 Unity 这样的新生桌面代表。二者均通过某种重要方法打破了传统桌面模式的垄断,并且都不只是满足于桌面型计算机,而将其界面延伸到了备受期待的新型平板电脑([也许不久后就会面世][1])。
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 用户对他们恨之入骨。这使得在 Linux 世界里,没有哪条关于这两个桌面环境的评论或帖子是轻松活泼的。同时两大 Linux 阵营之间的差异不仅仅关乎于你未来桌面的样子,更决定了未来计算机会如何运作。
GNOME 和 Unity 相信未来的计算机运作方式,是由多台设备同时运行着相同的软件互相合作而成的 ———— 因此这两个项目发行的新版桌面只朝着这个方向努力。这些新版桌面并不是真正意义上作为未来桌面打造的,而是同时囊括了现在意义上的桌面,以及会出现在未来设备上的桌面的混合桌面。而另一派 Linux 桌面环境似乎完全忽视了这些。
与闭源操作系统的世界不同 ———— 那里所有变化都遗传了下来,与之仿效还是以之为戒 ———— Linux 世界正在这两种对立的观点中徘徊着。
与闭源操作系统的世界不同 ———— 那里所有变化都遗传了下来,与之仿效还是以之为戒Linux 世界正在这两种对立的观点中徘徊着。
对用户群体来说,这也许很令他们沮丧。试想你正在努力完成工作,但此时你必须完成一个会彻底改变你现有桌面环境的更新,陌生的工作方式使你不得不花费时间来学习。即便最好的情况是,当你曾经最喜爱的桌面环境更新得面目全非的时候,你选择迁移到了其他桌面去。但你长久以来的使用习惯以及那种熟悉的感觉,却再也无法找回了。
@ -27,6 +31,7 @@ GNOME 和 Unity 相信未来的计算机运作方式,是由多台设备同时
如果你是第一派阵营的,并且乐于学习新的工作方式,那么 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。
@ -35,11 +40,11 @@ KDE 正在尝试做其他 Linux 桌面都没有做过的事 ———— 向平
### KDE Plasma 5 与“通用”世界 ###
经历过 KDE 3.5 升级至 KDE 4 的用户似乎仍然避免任何有关 KDE 的重要更新,但对 KDE 粉丝而言Plasma 5 还是带来了一些好消息。确实这是一个重要更新,没错,但这只是极少数情况下出现的例外(因此我得花费点时间来解释一下,因为你不太了解)。
经历过 KDE 3.5 升级至 KDE 4 的用户似乎仍然避免任何有关 KDE 的重要更新,但对 KDE 粉丝而言Plasma 5 还是带来了一些好消息。确实这是一个重要更新,没错,但这只是极少数情况下出现的例外(因此我得花费点时间来解释一下,因为你不太了解)。
事实证明,难以置信且艰难万分的 KDE 4 更新确实为一个更加美好的未来打下了坚实的基础 ———— 我们现在刚刚抵达这美好的未来。
通过这次更新KDE 核心今后出现变化的可能性大大减小。我们确实提及了正迈向平板电脑以及其他设备的一步令人难以置信但不要害怕。KDE 似乎准备去做 GNOME 和 Unity 无法做到的事 ———— 在不改变传统桌面模式的前提下,移植到其他设备上去。换言之,这一版本极力避免了所有因某些新技术的出现而随意尝试所导致的混乱结果。
通过这次更新KDE 核心今后出现变化的可能性大大减小。我们确实提及了正迈向平板电脑以及其他设备的一步,令人难以置信但不要害怕。KDE 似乎准备去做 GNOME 和 Unity 无法做到的事 ———— 在不改变传统桌面模式的前提下,移植到其他设备上去。换言之,这一版本极力避免了所有因某些新技术的出现而随意尝试所导致的混乱结果。
(说点其他的:如果你没记住也没关系,但你认同 Canonical 继续通过 Unity 的更新来实现桌面通用这件事吗?早在 Canonical 让用户测试 GNOME 2 菜单中的阴影棕色以调配出最佳效果时KDE 就开始决定实施桌面统一计划了)
@ -60,6 +65,7 @@ KDE 正在尝试做其他 Linux 桌面都没有做过的事 ———— 向平
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 LinuxMacBook 上的双重启动)。
@ -79,38 +85,43 @@ KDE Plasma 5 的桌面。
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 的信息出来。
全部界面发生了极大的变化 ———— 更大的字体,更好的对比度,以及一种全新的平面布局,其“磨砂”外观有点类似并且介于 OS X Yosemite、Android L 还有 KDE 4.x 的风格。这并不是说 KDE 抄袭了苹果或者谷歌。这不可能是抄袭,因为 Plasma 5 和 Breeze 主题发布了很长时间之后苹果核谷歌那里才透漏出些许 Yosemite 还有 Android L 的信息出来。
当然,说 KDE 抄袭了任何产品都是不对的,从 Breeze 的视觉设计和整体审美性来看,其更偏向于长时间沉淀的作品。从这种角度看,它看起来很“现代化”,只要你把现代化定义为较多尖锐元素,较少的纹理和轮廓,更多的半透感,以及单色图形。
当然,说 KDE 抄袭了任何产品都是不对的,从 Breeze 的视觉设计和整体审美性来看,其更偏向于长时间沉淀的作品。从这种角度看,它看起来很“现代化”,只要你把现代化定义为较多尖锐元素,较少的纹理和轮廓,更多的半透感,以及单色图形。
KDE 的设计者将大量的工作放在了 Breeze 主题还有其外观上。这不仅仅是外观上的变化。Breeze 主题借由清爽的菜单、更有条理的通知中心以及全新的开始菜单,使 KDE 变得更加友好。
![清爽、有条理的通知中心。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot04.png)
清爽、有条理的通知中心。
Breeze 出现了多少问题取决于你是否使用过它。KDE 更倾向于那些喜欢定制自己系统的用户,他们大概也喜欢定制主题。有件期待的事,有什么发行版会大幅修改默认 KDE 主题 ———— 显然是 OpenSUSE ———— 将会提供一个比 Breeze 所提供的更高的开始菜单栏。
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 5 在我们的测试期间从未溃过,并且从未遗失任何数据。但注意 ———— 经常会有一些图像方面的小 bug 出现。我们建议你在稳定版发布前不要尝试进行更新。
### Plasma 的垂直菜单 ###
Breeze 给 Plasma 5 带来一种新外观,同时也带来了许多细节方面的变化。例如,窗口小部件和 ALT-TAB 窗口切换均呈现垂直显示,并且默认都具有相同的启动位置 ———— 当前屏幕的左侧。
![ALT-TAB 窗口切换的默认外观。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot07.png)
ALT-TAB 窗口切换的默认外观。
共通性也许对于 KDE 的新特点是有利的,当需要帮助时所需资料会出现在屏幕的左侧,但这也许会对那些期待点其他东西的老用户感到失望。有些变化看上去不太合情理。
@ -118,9 +129,10 @@ ALT-TAB 窗口切换的默认外观。
![窗口小部件。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot08.png)
窗口小部件。
KDE 项目称在像窗口小部件和窗口切换器等菜单中,垂直菜单将取代水平菜单,“提供更好的使用体验”。但并未提及会具体如何。发行文档称挪动窗口切换器至屏幕一端“使用户的注意力更加集中于应用和文档,以完成手头上的工作”。可是你启用了窗口切换器当你,嗯,准备切换窗口时,你的注意力更可能是在不同的任务间而不是集中在某一个任务上面。
KDE 项目称在像窗口小部件和窗口切换器等菜单中,垂直菜单将取代水平菜单,“提供更好的使用体验”。但并未提及会具体如何。发行文档称挪动窗口切换器至屏幕一端“使用户的注意力更加集中于应用和文档,以完成手头上的工作”。可是你启用了窗口切换器,嗯,准备切换窗口时,你的注意力更可能是在不同的任务间而不是集中在某一个任务上面。
![KDE 依旧偏向于提供不同选择。注意右侧的暗灰色选择条,那是拖动窗口时的阴影选项。](http://cdn.arstechnica.net/wp-content/uploads/2014/08/screenshot09.png)
KDE 依旧偏向于提供不同选择。注意右侧的暗灰色选择条,那是拖动窗口时的阴影选项。
这就是 KDE当然不是 Unity高度可定制化是其一大特色而不是 bug。进入系统设置你可以调回旧版风格的窗口切换器并且在 Plasma 5 中有 10 种不同的窗口切换器效果可供选择。如果默认风格并不是你最喜欢的,那么换一个吧。
@ -129,14 +141,15 @@ KDE 依旧偏向于提供不同选择。注意右侧的暗灰色选择条,那
如果你是 KDE 重度用户,并且经历了 KDE 的顶峰和低谷,并仍抱有期待,那么你肯定已经知道了 Plasma 5 中的最大看点。没错KDE 替换了 Nepomuk 语义桌面,取而代之的是称作 Baloo 的新搜索引擎。
Nepomuk 语义桌面最初是一个由欧盟赞助的搜索项目,高调宣称其目的是创建一个“使用网络环境提供个性化服务的,基于本的知识库管理(Networked Environment for Personalized, Ontology-based Management of Unified Knowledge)”。当项目被引用到 KDE 上的时候Nepomuk 成为了一个更加通用的桌面搜索工具,在辉煌与疯狂之间徘徊着。
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 套件。
Baloo 大幅减少了搜索记录的资源并且,根据 KDE 上的测试,其准确度更高了。我们不能保证后一点,因为我们从未在旧版 KDE 中使用大量搜索参见风扇运转注释但在计算精度上Plasma 5 中的简单文件搜索达到了你使用 Ubuntu、OS X 等其他文件搜索方式的平均速度。涉及更复杂的搜索关系或复杂元数据的成功将更大程度上取决于你使用默认 KDE 应用的频率。比方说,如果你想利用基于 Baloo 的搜索引擎的优势进行涉及文件间关联的搜索时,你需要使用 Kontact 套件。
尽管这肯能会随着时间而改变,因为与 Nepomuk 相比另一个比较大的变化是新的、改进的开发者 API。搜索 API 意味着第三方应用可以配合 Plasma 5 中的语义搜索基础,并发挥默认应用所使用的相同工具的优势。
@ -147,11 +160,13 @@ Baloo 大幅减少了搜索记录的资源并且,根据 KDE 上的测试,其
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 菜单。
菜单的另一侧得到了更新,变得更加清爽。最显著的变化是通知中心,减少了弹出次数,并且通过更好、更迅速方式来显示通知。
@ -164,7 +179,7 @@ Plasma 5 完成了 KDE 至 Qt 5 和 QtQuick 的迁移,后者使用硬件加速
有趣的是,弥补 Plasma 5 图形叠加的修改过后的框架也向 KDE 切换至 Wayland 显示服务协议提供了道路。尽管 KDE 并没有急着切换到 Wayland但注意全面支持技术将在“某个未来版本”实现。
这一版本也声称改进了对 HDPI 显示的支持。然而,结合 GNOME 和 Unity 对 HDPI 的支持,实际经验是忧喜半的。特别是字体渲染远不及 OS X 所提供的渲染平滑。对我来说,即使安装 了 Infinality 并进行调整,也从来没有出现令我满意的结果。我们仍然不确定问题是否是在安装过程中出现的,并且我们也未亲眼见到 HDPI 的新功能。或许KDE 对于究竟是什么构成了 HDPI 支持有一个完全不同的定义。但愿问题是出在安装过程中。
这一版本也声称改进了对 HDPI 显示的支持。然而,结合 GNOME 和 Unity 对 HDPI 的支持,实际经验是忧喜半的。特别是字体渲染远不及 OS X 所提供的渲染平滑。对我来说,即使安装 了 Infinality 并进行调整,也从来没有出现令我满意的结果。我们仍然不确定问题是否是在安装过程中出现的,并且我们也未亲眼见到 HDPI 的新功能。或许KDE 对于究竟是什么构成了 HDPI 支持有一个完全不同的定义。但愿问题是出在安装过程中。
### 有哪些缺陷 ###
@ -188,7 +203,7 @@ via: http://arstechnica.com/information-technology/2014/08/kde-plasma-5-for-thos
作者Scott Gilbertson
译者:[SteveArcher](https://github.com/SteveArcher)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -1,46 +0,0 @@
linuhap翻译中
GIMP 2.8.12 Released — Heres 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

View File

@ -0,0 +1,26 @@
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

View File

@ -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:
<iframe width="620" height="420" frameborder="0" src="https://render.githubusercontent.com/view/geojson?url=https://gist.githubusercontent.com/anonymous/5fa29a7ccbd0101630da/raw/map.geojson"></iframe>
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

View File

@ -1,3 +1,4 @@
[Translating by SteveArcher]
The Masked Avengers
================================================================================
> How Anonymous incited online vigilantism from Tunisia to Ferguson.
@ -374,4 +375,4 @@ via: http://www.newyorker.com/magazine/2014/09/08/masked-avengers
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
[a]:http://www.newyorker.com/contributors/david-kushner
[a]:http://www.newyorker.com/contributors/david-kushner

View File

@ -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

View File

@ -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/) 荣誉推出

View File

@ -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

View File

@ -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

View File

@ -1,37 +0,0 @@
Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu
================================================================================
At times we need to search files which contain some particular text or words in them. This often happens if you are a developer or programmer. Now, one can always use [Linux commands to find all files containing specific text][1], but not everyone is command line fan. I have seen excellent programmers that rely on GUI tool than command line.
If you too prefer GUI tools, than [SearchMonkey][2] is one perfect application for you.
### SearchMonkey is your desktop search engine ###
SearchMonkey searches the directories recursively so that you can sit and relax while SearchMonkey does his work. Users can search for file names and contents using powerful regular expressions. This enables SearchMonkey to be much more precise when it returns hits.
In addition, SearchMonkey doesnt just show you a list of files that might contain what you are looking for, it helpfully displays the content with the matches highlighted.
### Install SearchMonkey in Ubuntu 14.04 ###
SearchMonkey is available in Ubuntu 14.04 (and earlier versions as well) repository. You can install it via Ubuntu Software Center or by just typing the following command in terminal:
sudo apt-get install searchmonkey
Once installed, you can launch SearchMonkey from Unity Dash. The interface is easy to understand and easy to use.
![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/SearchMonkey_Ubuntu.jpeg)
SearchMonkey finds the files you need quickly, and without building a drive map first. Each search takes place in real time, and results are displayed in context as soon as they are found! And above all its a free and open source software.
--------------------------------------------------------------------------------
via: http://itsfoss.com/searchmonkey-search-text-files-linux/
作者:[Amit Asthana][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/amit/
[1]:http://www.computerandyou.net/2011/06/how-to-find-all-files-containing-specific-text-in-linux/
[2]:http://searchmonkey.embeddediq.com/

View File

@ -0,0 +1,45 @@
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/

View File

@ -0,0 +1,258 @@
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

View File

@ -0,0 +1,46 @@
GIMP 2.8.12 Released — Heres How to Install it on Ubuntu
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 之间所有已定的文件或项目的更改日志,可以看[the GNOME Git notes][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)
校对:[校对者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

View File

@ -0,0 +1,38 @@
Linux FAQ -- 如何检查Linux系统的最后重启时间
================================================================================
> **问题**: 是否有一个命令可以快速地检查系统已经运行了多久? 也就是我怎么知道Linux最后的重启时间?
There are several ways to find out the last system reboot time,
### 方法一 ###
第一种方法是使用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)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出

View File

@ -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

View File

@ -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

View File

@ -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 )
校对:[校对者ID](https://github.com/校对者ID)
本文由 [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/