diff --git a/published/01 The Linux Kernel--Introduction.md b/published/01 The Linux Kernel--Introduction.md new file mode 100644 index 0000000000..83bd354569 --- /dev/null +++ b/published/01 The Linux Kernel--Introduction.md @@ -0,0 +1,37 @@ +戴文的Linux内核专题:01 介绍 +================================================================================ + +在1991年,一个叫林纳斯·本纳第克特·托瓦兹的芬兰学生制作了一个现在非常流行的操作系统的内核。他于1991年9月发布了Linux 0.01,并且于1992年以GPL许可证的方式授权了该内核。GNU通用许可证(GPL)允许人们使用、拥有、修改,以及合法和免费的分发源代码。这使得内核变得非常流行,因为任何人都可以免费地下载。现在任何人都可以生成他们自己的内核,这有助于人们学习如何获取、编辑、配置、编译并安装Linux内核。 + +内核是操作系统的核心。操作系统是一系列的管理硬件并允许用户在电脑上运行应用的程序。内核控制着硬件和应用。应用并不直接和硬件打交道,而是首先和内核交互。总之,软件运行在内核上,而内核操作着硬件。没有内核,电脑就是一个没用的物件。 + +用户制作他们自己的内核有各种各样的原因。许多用户也许想要一个只包含他们需要的代码的系统内核。比如说我的内核包含了火线设备驱动,但是我的电脑缺乏这些端口。当系统启动时,时间和内存就会浪费在那些我系统上并没有安装的设备上。如果我想要简化我的内核,我会制作自己不包含火线驱动的内核。至于另外一个理由,某个用户可能拥有一台有特殊硬件的设备,但是最新的Ubuntu版本中的内核缺乏所需的驱动。这个用户可以下载最新的内核(比当前Ununtu的Linux内核要新),并制作他们自己的有相应驱动的内核。不管怎样,这两个原因是用户想要制作自己的Linux内核的普遍原因。 + +在下载内核前,我们应该讨论一些重要的术语和事实。Linux内核是一个宏内核,这意味着整个操作系统都运行在内核预留的内存里。说的更清楚一些,内核是放在内存里的。内核所使用的空间是内核预留的。只有内核可以使用预留的内核空间。内核拥有这些内存空间,直到系统关闭。与内核空间相对应的还是用户空间。用户空间是内存上用户程序拥有的空间。比如浏览器、电子游戏、文字处理器、媒体播放器、壁纸、主题等都是放在内存里的用户空间。当一个程序关闭的时候,任何程序都可以使用新释放的空间。在内核空间,一旦内存被占用,则没有任何其他程序可以使用这块空间。 + +Linux内核也是一个抢占式多任务内核。这意味该内核可以暂停一些任务来保证任何应用都有机会来使用CPU。举个例子,如果一个应用正在运行但是正在等待一些数据,内核会把这个应用暂停并允许其他的程序使用新释放的CPU资源,直到数据到来。否则的话,系统就会浪费资源给那些正在等待数据或者其他程序执行的的任务。内核将会强制程序去等待或者停止使用CPU。没有内核的允许,应用程序不能脱离暂停或者使用CPU。 + +Linux内核使得设备作为文件显示在/dev文件夹下。举个例子,USB端口位于/dev/bus/usb。硬盘分区则位于/dev/disk/分区。因为这个特性,许多人说:“在Linux上,一切皆文件”。(不过这些设备文件不能被直接使用,——译者补充)举个例子,如果一个用户想要访问在存储卡上的数据,他们是不能通过设备文件访问到这些数据的。(译注:此处原文是“If a user wanted to access data on their memory card, for example, they cannot access the data through these device files.”,但根据上下文,此处语境不对,所以做了相应补充。据“食梦-”的提示,原文也有人对此提出了质疑,作者做了如下解释:http://www.linux.org/threads/%EF%BB%BFthe-linux-kernel-introduction.4203/#post-12623) + +Linux内核是可移植的。可移植性是Linux流行的一个最重要的原因。可移植性使得内核可以工作在各种处理器和系统上。一些内核支持的处理器的型号包括:Alpha、AMD、ARM、C6X、Intel、x86、Microblaze、MIPS、PowerPC、SPARC、UltraSPARC等,这还不是全部的列表。 + +在引导文件夹(/boot),用户会看到诸如“vmlinux”或者“vmlinuz”的文件。这两者都是已编译的Linux内核。以“z”结尾的是已压缩的。“vm”代表虚拟内存。在SPARC处理器的系统上,用户可以看见一个zImage文件。一小部分用户可以发现一个bzImage文件,这也是一个已压缩的Linux内核。无论用户有哪个文件,这些引导文件都是不能更改的,除非用户知道他们正在做什么。否则系统会变成无法引导,也就是说系统启动不了了。 + +内核源代码就是程序编码。有了源代码,程序员可以修改内核并能观察到内核是如何工作的。 + +### 下载内核: ### + +现在我们想更多地了解了内核,就要下载内核源代码了。进入kernel.org并点击那个巨大的下载按钮。下载完成后,解压下载的文件。 + +对于本文,我使用的源代码是Linux kernel 3.9.4.这个文章系列的所有指导对于所有的内核版本是相同的(或者非常相似的) + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/%EF%BB%BFthe-linux-kernel-introduction.4203/ + +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://www.kernel.org/ + diff --git a/published/02 The Linux Kernel--The Source Code.md b/published/02 The Linux Kernel--The Source Code.md new file mode 100755 index 0000000000..30d06b31ff --- /dev/null +++ b/published/02 The Linux Kernel--The Source Code.md @@ -0,0 +1,136 @@ +戴文的Linux内核专题:02 源代码 +================================================================================ + +在下载并解压内核源代码后,用户可以看到许多文件夹和文件。尝试去找一个特定的文件或许是一个挑战。谢天谢地,源代码以一个特定的方式组织的。这使开发者能够轻松找到任何文件或者内核的一部分。 + +内核源代码的根目录下包含了以下文件夹 + + arch + block + crypto + Documentation + drivers + firmware + fs + include + init + ipc + kernel + lib + mm + net + samples + scripts + security + sound + tools + usr + virt + +还有一些文件在源代码的根目录下。它们会在下面列出。 + +**COPYING** -许可和授权信息。Linux内核在GPLv2许可证下授权。该许可证授予任何人有权免费去使用、修改、分发和共享源代码和编译代码。然而,没有人可以出售源代码。 + +**CREDITS** - 贡献者列表 + +**Kbuild** - 这是一个设置一些内核设定的脚本。打个比方,这个脚本设定一个ARCH变量,这是开发者想要生成的内核支持的处理器类型。 + +**Kconfig** - 这个脚本会在开发人员配置内核的时候用到,这会在以后的文章中讨论。 + +**MAINTAINERS** - 这是一个目前维护者列表,他们的电子邮件地址,主页,和他们负责开发和维护的内核的特定部分或文件。当一个开发者在内核中发现一个问题,并希望能够报告给能够处理这个问题的维护者时,这是是很有用的。 + +**Makefile** - This script is the main file that is used to compile the kernel. This file passes parameters to the compiler as well as the list of files to compile and any other necessary information. +这个脚本是编译内核的主要文件。这个文件将编译参数和编译所需的文件和必要的信息传给编译器。 + +**README** - 这个文档提供给开发者想要知道的如何编译内核的信息。 + +**REPORTING-BUGS** - 这个文档提供如何报告问题的信息。 + +内核的代码是以“.c”或“.h”为扩展名的文件。 “.c”的扩展名表明内核是用众多的编程语言之一的C语言写的, “h”的文件是头文件,而他们也是用C写成。头文件包含了许多“.c”文件需要使用的代码,因为他们可以引入已有的代码而不是重新编写代码,这节省了程序员的时间。否则,一组执行相同的动作的代码,将存在许多或全部都是“c”文件。这也会消耗和浪费硬盘空间。(译注:头文件不仅仅可节省重复编码,而且代码复用也会降低代码错误的几率) + +所有上面列出的文件夹中的文件都组织得很好。文件夹名称至少可以帮助开发人员很好地猜测文件夹中的内容。下面提供了一个目录树和描述。 + +**arch** - 这个文件夹包含了一个Kconfig文件,它用于设置这个目录里的源代码编译所需的一系列设定。每个支持的处理器架构都在它相应的文件夹中。如,Alpha处理器的源代码在alpha文件夹中。请记住,随着时间的推移,一些新的处理器将被支持,有些会被放弃。对于Linux v3.9.4,arch下有以下文件夹: + + alpha + arc + arm + arm64 + avr32 + blackfin + c6x + cris + frv + h8300 + hexagon + ia64 + m32r + m68k + metag + microblaze + mips + mn10300 + openrisc + parisc + powerpc + s390 + score + sh + sparc + tile + um + unicore32 + x86 + xtensa + +**block** – 此文件夹包含块设备驱动程序的代码。块设备是以数据块方式接收和发送的数据的设备。数据块都是一块一块的数据而不是持续的数据流。 + +**crypto** - 这个文件夹包含许多加密算法的源代码。例如,“sha1_generic.c”这个文件包含了SHA1加密算法的代码。 + +**Documentation** - 此文件夹包含了内核信息和其他许多文件信息的文本文档。如果开发者需要一些信息,他们也许能在这里找到所需要的信息。 + +**drivers** - 该目录包含了驱动代码。驱动是一个控制硬件的软件。例如,要让计算机知道键盘并使其可用,键盘驱动是必要的。这个文件夹中存在许多文件夹。每个文件夹都以硬件的种类或者型号命名。例如,'bluetooth'包含了蓝牙驱动程序的代码。还有其他很明显的驱动像SCSI、USB和火线等。有些驱动程序可能会比较难找到。例如,操纵杆驱动不在'joystick'文件夹中,它们却在./drivers/input/joystick。同样键盘和鼠标驱动也在这个input文件夹中。 'Macintosh'包含了苹果的硬件代码。 'Xen'包含了Xen hypervisor代码。(hypervisor是一种允许用户在一台计算机上运行多个操作系统的软件或硬件。这意味着在Xen允许用户在一台计算机上同时运行的两个或两个以上的Linux系统。用户还可以运行Windows,Solaris,FreeBSD或其他操作系统在Linux系统上。)driver文件夹下还有许多其他的文件夹,但他们在这篇文章中无法一一列举,他们将在以后的文章中提到。 + +**firmware** - fireware中包含了让计算机读取和理解从设备发来的信号的代码。举例来说,一个摄像头管理它自己的硬件,但计算机必须了解摄像头给计算机发送的信号。Linux系统会使用vicam固件(firmware)来理解摄像头的通讯。否则,没有了固件,Linux系统将不知道如何处理摄像头发来的信息。另外,固件同样有助于将Linux系统发送消息给该设备。这样Linux系统可以告诉摄像头重新调整或关闭摄像头。 + +**fs** - 这是文件系统的文件夹。理解和使用的文件系统所需要的所有的代码就在这里。在这个文件夹里,每种文件系统都有自己的文件夹。例如,ext4文件系统的代码在ext4文件夹内。 在fs文件夹内,开发者会看到一些不在文件夹中的文件。这些文件用来控制整个文件系统。例如,mount.h中会包含挂载文件系统的代码。文件系统是以结构化的方式来存储和管理的存储设备上的文件和目录。每个文件系统都有自己的优点和缺点。这是由文件系统的设计决定的。举例来说,NTFS文件系统支持的透明压缩(当启用时,会在用户不知道的情况下自动压缩存储文件)。大多数文件系统缺乏此功能,但如果在fs文件夹里编入相应的文件,它们也有这种能力。 + +**include** - include包含了内核所需的各种头文件.这个名字来自于C语言用"include"来在编译时导入头文件。 + +**init** - init文件夹包含了内核启动的处理代码(INITiation)。main.c是内核的核心文件,这是用来衔接所有的其他文件的源代码主文件。 + +**ipc** - IPC代表进程间通讯。此文件夹中的代码是作为内核与进程之间的通信层。内核控制着硬件,因此程序只能请求内核来执行任务。假设用户有一个打开DVD托盘的程序。程序不直接打开托盘,相反,该程序通知内核托盘应该被打开。然后,内核给硬件发送一个信号去打开托盘。这些代码同样管理kill信号。举例来说,当系统管理员打开进程管理器去关闭一个已经锁死的程序,这个关闭程序的信号被称为kill信号。内核接收到信号,然后内核会要求程序停止或直接把进程从内存和CPU中移除(取决于kill的类型)。命令行中的管道同样用于进程间通信。管道会告诉内核在某个内存页上写入输出数据。程序或者命令得到的数据是来自内存页上的某个给定的指针。 + +**kernel** - 这个文件夹中的代码控制内核本身。例如,如果一个调试器需要跟踪问题,内核将使用这个文件夹中代码来将内核指令通知调试器跟踪内核进行的所有动作。这里也有跟踪时间的代码。在内核文件夹下有个"power"文件夹,这里的代码可以使计算机重新启动、关机和挂起。 + +**lib** - 这个文件夹包含了内核需要引用的一系列内核库文件代码。 + +**mm** - mm文件夹中包含了内存管理代码。内存并不是任意存储在RAM芯片上的。相反,内核小心地将数据放在RAM芯片上。内核不会覆盖任何正在使用或保存重要数据的内存区域。 + +**net** - net文件夹中包含了网络协议代码。这包括IPv6、AppleTalk、以太网、WiFi、蓝牙等的代码,此外处理网桥和DNS解析的代码也在net目录。 + +**samples** - 此文件夹包含了程序示例和正在编写中的模块代码。假设一个新的模块引入了一个想要的有用功能,但没有程序员说它已经可以正常运行在内核上。那么,这些模块就会移到这里。这给了新内核程序员一个机会通过这个文件夹来获得帮助,或者选择一个他们想要协助开发的模块。 + +**scripts** - 这个文件夹有内核编译所需的脚本。最好不要改变这个文件夹内的任何东西。否则,您可能无法配置或编译内核。 + +**security** - 这个文件夹是有关内核安全的代码。它对计算机免于受到病毒和黑客的侵害很重要。否则,Linux系统可能会遭到损坏。关于内核的安全性,将在以后的文章中讨论。 + +**sound** - 这个文件夹中包含了声卡驱动。 + +**tools** - 这个文件夹中包含了和内核交互的工具。 + +**usr** - 还记得在以前的文章中提到vmlinuz和其他类似的文件么?这个文件夹中的代码在内核编译完成后创建这些文件。 + +**virt** - 此文件夹包含了虚拟化代码,它允许用户一次运行多个操作系统。这与先前提到的Xen是不同的。通过虚拟化,客户机操作系统就像任何其他运行在Linux主机的应用程序一样运行。通过Xen这样的hypervisor(注:虚拟机管理程序),两个操作系统可以同时管理硬件。在虚拟化中,在客户机操作系统上运行在Linux内核上,而在hypervisor中,它没有客户系统并且所有的系统不互相依赖。 + +提示: 绝不在内核源代码内移动文件,除非你知道你在做什么。否则,编译会由于缺失文件失败。 + +Linux内核的文件夹结构保持相对稳定。内核开发者会做一些修改,但总体来说,这些设置对整个内核版本都是一样。驱动程序文件夹的布局也基本保持一样。 + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/the-linux-kernel-the-source-code.4204/ + +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/03 The Linux Kernel--Drivers.md b/published/03 The Linux Kernel--Drivers.md new file mode 100755 index 0000000000..10cd77d099 --- /dev/null +++ b/published/03 The Linux Kernel--Drivers.md @@ -0,0 +1,236 @@ +戴文的Linux内核专题:03 驱动程序 +=========================== + +驱动程序是使内核能够沟通和操作硬件或协议(规则和标准)的小程序。没有驱动程序,内核不知道如何与硬件沟通或者处理协议(内核实际上先发送指令给BIOS,然后BIOS传给硬件)。 Linux的内核代码在驱动程序文件夹中以源代码的形式包含了许多驱动程序。驱动文件夹中的每个文件夹会在下面说明。在配置和​​编译内核时,这样有助于你了解驱动程序。否则,用户可能会在编译时加入不必要的或者漏掉重要的驱动。驱动代码通常会包含一个单行注释来指出驱动的目的。 比如,tc的驱动代码,有一行的注释说是用于TURBOchannel总线。由于这些文档,用户应该看驱动前几行的注释来了解它们的用途。 + +有几个术语你应该已经知道,所以下面的信息应该是明白的。一个I/O设备指的是输入/输出设备。例如调制解调器和网卡,他们发送和接收数据。监视器是一个输出设备 - 只有信息出来。键盘、鼠标和游戏杆是数据输入系统。存储设备用于存储数据,例如SD卡、硬盘、光盘、存储卡等。CPU(处理器)是计算机的“大脑”或“心脏” ,如果没有它,电脑就无法运作。主板则是一块连接板上不同组件的印刷线路板。主板及各个组件是计算机的运行的基础。许多计算机用户说主板是电脑的心脏(主板上有CPU)。主板包含了用于连接外设的端口,外设包括输入、输出和存储设备。总线是主板的电路,它连接着外设。网络设备用于两台或多台计算机之间的连接。端口则是用户可以插入另外一台设备或一根电缆的设备,例如,用户可以将插入一根火线记忆棒插入一个火线端口;将以太网电缆插入一个以太网端口。光碟的读取是利用激光,从可以散射或反射的激光的反射面上读出数据,一个常见的​​光盘是DVD。许多系统说自己是32位或者64位,这指的是寄存器、地址总线或数据总线的位数。例如,在一块64位的主板上,数据总线(组件之间的银线)有64根并排到目的的线。存储器地址以位(0和1)的形式在存储器中编址,因此,一个32位存储地址包含32个0和1来表示存储器上的某处地址。 + +许多驱动程序是通用驱动程序,这意味着一个通用键盘驱动可以使内核可以处理几乎所有的键盘。然而,有些驱动是专用驱动,像苹果和Commodore就分别为苹果电脑和Amiga系统制造了专门的硬件。Linux内核中已经包含了许多诸如智能手机、苹果、Amiga系统、PS3、Android平板,和许多其他设备的驱动程序。 + +注意有些设备的驱动不在本目录中。比如,射频驱动在net和media文件夹下。 + +**accessibility** - 这些驱动提供支持一些辅助设备。在Linux 3.9.4中,这个文件夹中只有一个驱动就是盲文设备驱动。 + +**acpi** - 高级配置和电源接口(ACPI : Advanced Configuration and Power Interface)驱动用来管理电源使用。 + +**amba** - 高级微控制器总线架构(AMBA : Advanced Microcontroller Bus Architecture)是与片上系统(SoC)的管理和互连的协议。SoC是一块包含许多或所有必要的计算机组件的芯片。这里的AMBA驱动让内核能够运行在这上面。 + +**ata** - 该目录包含PATA和SATA设备的驱动程序。串行ATA(SATA)是一种连接主机总线适配器到像硬盘那样的存储器的计算机总线接口。并行ATA(PATA)用于连接存储设备,如硬盘驱动器,软盘驱动器,光盘驱动器的标准。PATA就是我们所说的IDE。 + +**atm** - 异步通信模式(ATM : Asynchronous Transfer Mode)是一种通信标准。这里有各种接到PCI桥的驱动(他们连接到PCI总线)和以太网控制器(控制以太网通信的集成电路芯片)。 + +**auxdisplay** - 这个文件夹提供了三个驱动。LCD 帧缓存(framebuffer)驱动、LCD控制器驱动和一个LCD驱动。这些驱动用于管理液晶显示器 —— 液晶显示器会在按压时显示波纹。注意:按压会损害屏幕,所以请不要用力戳LCD显示屏。 + +**base** - 这是个重要的目录包含了固件、系统总线、虚拟化能力等基本的驱动。 + +**bcma** - 这些驱动用于使用基于AMBA协议的总线。AMBA是由博通公司开发。 + +**block** - 这些驱动提供对块设备的支持,像软驱、SCSI磁带、TCP网络块设备等等。 + +**bluetooth** - 蓝牙是一种安全的无线个人区域网络标准(PANs)。蓝牙驱动就在这个文件夹,它允许系统使用各种蓝牙设备。例如,一个蓝牙鼠标不用电缆,并且计算机有一个电子狗(小型USB接收器)。Linux系统必须能够知道进入电子狗的信号,否则蓝牙设备无法工作。 + +**bus** - 这个目录包含了三个驱动。一个转换ocp接口协议到scp协议。一个是设备间的互联驱动,第三个是用于处理互联中的错误处理。 + +**cdrom** - 这个目录包含两个驱动。一个是cd-rom,包括DVD和CD的读写。第二个是gd-rom(只读GB光盘),GD光盘是1.2GB容量的光盘,这像一个更大的CD或者更小的DVD。GD通常用于世嘉游戏机中。 + +**char** - 字符设备驱动就在这里。字符设备每次传输数据传输一个字符。这个文件夹里的驱动包括打印机、PS3闪存驱动、东芝SMM驱动和随机数发生器驱动等。 + +**clk** - 这些驱动用于系统时钟。 + +**clocksource** - 这些驱动用于作为定时器的时钟。 + +**connector** - 这些驱动使内核知道当进程fork并使用proc连接器更改UID(用户ID)、GID(组ID)和SID(会话ID)。内核需要知道什么时候进程fork(CPU中运行多个任务)并执行。否则,内核可能会低效管理资源。 + +**cpufreq** - 这些驱动改变CPU的电源能耗。 + +**cpuidle** - 这些驱动用来管理空闲的CPU。一些系统使用多个CPU,其中一个驱动可以让这些CPU负载相当。 + +**crypto** - 这些驱动提供加密功能。 + +**dca** - 直接缓存访问(DCA : Direct Cache Access)驱动允许内核访问CPU缓存。CPU缓存就像CPU内置的RAM。CPU缓存的速度比RAM更快。然而,CPU缓存的容量比RAM小得多。CPU在这个缓存系统上存储了最重要的和执行的代码。 + +**devfreq** - 这个驱动程序提供了一个通用的动态电压和频率调整(DVFS : Generic Dynamic Voltage and Frequency Scaling)框架,可以根据需要改变CPU频率来节约能源。这就是所谓的CPU节能。 + +**dio** - 数字输入/输出(DIO :Digital Input/Output)总线驱动允许内核可以使用DIO总线。 + +**dma** - 直接内存访问(DMA)驱动允许设备无需CPU直接访问内存。这减少了CPU的负载。 + +**edac** - 错误检测和校正( Error Detection And Correction)驱动帮助减少和纠正错误。 + +**eisa** - 扩展工业标准结构总线(Extended Industry Standard Architecture)驱动提供内核对EISA总线的支持。 + +**extcon** - 外部连接器(EXTernal CONnectors)驱动用于检测设备插入时的变化。例如,extcon会检测用户是否插入了USB驱动器。 + +**firewire** - 这些驱动用于控制苹果制造的类似于USB的火线设备。 + +**firmware** - 这些驱动用于和像BIOS(计算机的基本输入输出系统固件)这样的设备的固件通信。BIOS用于启动操作系统和控制硬件与设备的固件。一些BIOS允许用户超频CPU。超频是使CPU运行在一个更快的速度。CPU速度以MHz(百万赫兹)或GHz衡量。一个3.7 GHz的CPU的的速度明显快于一个700Mhz的处理器。 + +**gpio** - 通用输入/输出(GPIO :General Purpose Input/Output)是可由用户控制行为的芯片的管脚。这里的驱动就是控制GPIO。 + +**gpu** - 这些驱动控制VGA、GPU和直接渲染管理(DRM :Direct Rendering Manager )。VGA是640*480的模拟计算机显示器或是简化的分辨率标准。GPU是图形处理器。DRM是一个Unix渲染系统。 + +**hid** - 这驱动用于对USB人机界面设备的支持。 + +**hsi** - 这个驱动用于内核访问像Nokia N900这样的蜂窝式调制解调器。 + +**hv** - 这个驱动用于提供Linux中的键值对(KVP :Key Value Pair)功能。 + +**hwmon** - 硬件监控驱动用于内核读取硬件传感器上的信息。比如,CPU上有个温度传感器。那么内核就可以追踪温度的变化并相应地调节风扇的速度。 + +**hwspinlock** - 硬件转锁驱动允许系统同时使用两个或者更多的处理器,或使用一个处理器上的两个或更多的核心。 + +**i2c** - I2C驱动可以使计算机用I2C协议处理主板上的低速外设。系统管理总线(SMBus :System Management Bus)驱动管理SMBus,这是一种用于轻量级通信的two-wire总线。 + +**ide** - 这些驱动用来处理像CDROM和硬盘这些PATA/IDE设备。 + +**idle** - 这个驱动用来管理Intel处理器的空闲功能。 + +**iio** - 工业I/O核心驱动程序用来处理数模转换器或模数转换器。 + +**infiniband** - Infiniband是在企业数据中心和一些超级计算机中使用的一种高性能的端口。这个目录中的驱动用来支持Infiniband硬件。 + +**input** - 这里包含了很多驱动,这些驱动都用于输入处理,包括游戏杆、鼠标、键盘、游戏端口(旧式的游戏杆接口)、遥控器、触控、耳麦按钮和许多其他的驱动。如今的操纵杆使用USB端口,但是在上世纪80、90年代,操纵杆是插在游戏端口的。 + +**iommu** - 输入/输出内存管理单元(IOMMU :Input/Output Memory Management Unit)驱动用来管理内存管理单元中的IOMMU。IOMMU连接DMA IO总线到内存上。IOMMU是设备在没有CPU帮助下直接访问内存的桥梁。这有助于减少处理器的负载。 + +**ipack** - Ipack代表的是IndustryPack。 这个驱动是一个虚拟总线,允许在载体和夹板之间操作。 + +**irqchip** - 这些驱动程序允许硬件的中断请求(IRQ)发送到处理器,暂时挂起一个正在运行的程序而去运行一个特殊的程序(称为一个中断处理程序)。 + +**isdn** - 这些驱动用于支持综合业务数字网(ISDN),这是用于同步数字传输语音、视频、数据和其他网络服务使用传统电话网络的电路的通信标准。 + +**leds** - 用于LED的驱动。 + +**lguest** - lguest用于管理客户机系统的中断。中断是CPU被重要任务打断的硬件或软件信号。CPU接着给硬件或软件一些处理资源。 + +**macintosh** - 苹果设备的驱动在这个文件夹里。 + +**mailbox** - 这个文件夹(pl320-pci)中的驱动用于管理邮箱系统的连接。 + +**md** - 多设备驱动用于支持磁盘阵列,一种多块硬盘间共享或复制数据的系统。 + +**media** - 媒体驱动提供了对收音机、调谐器、视频捕捉卡、DVB标准的数字电视等等的支持。驱动还提供了对不同通过USB或火线端口插入的多媒体设备的支持。 + +**memory** - 支持内存的重要驱动。 + +**memstick** - 这个驱动用于支持Sony记忆棒。 + +**message** - 这些驱动用于运行LSI Fusion MPT(一种消息传递技术)固件的LSI PCI芯片/适配器。LSI大规模集成,这代表每片芯片上集成了几万晶体管、 + +**mfd** - 多用途设备(MFD)驱动提供了对可以提供诸如电子邮件、传真、复印机、扫描仪、打印机功能的多用途设备的支持。这里的驱动还给MFD设备提供了一个通用多媒体通信端口(MCP)层。 + +**misc** - 这个目录包含了不适合在其他目录的各种驱动。就像光线传感器驱动。 + +**mmc** - MMC卡驱动用于处理用于MMC标准的闪存卡。 + +**mtd** - 内存技术设备(MTD :Memory technology devices)驱动程序用于Linux和闪存的交互,这就就像一层闪存转换层。其他块设备和字符设备的驱动程序不会以闪存设备的操作方式来做映射。尽管USB记忆卡和SD卡是闪存设备,但它们不使用这个驱动,因为他们隐藏在系统的块设备接口后。这个驱动用于新型闪存设备的通用闪存驱动器驱动。 + +**net** - 网络驱动提供像AppleTalk、TCP和其他的网络协议。这些驱动也提供对调制解调器、USB 2.0的网络设备、和射频设备的支持。 + +**nfc** - 这个驱动是德州仪器的共享传输层之间的接口和NCI核心。 + +**ntb** - 不透明的桥接驱动提供了在PCIe系统的不透明桥接。PCIe是一种高速扩展总线标准。 + +**nubus** - NuBus是一种32位并行计算总线。用于支持苹果设备。 + +**of** - 此驱动程序提供设备树中创建、访问和解释程序的OF助手。设备树是一种数据结构,用于描述硬件。 + +**oprofile** - 这个驱动用于从驱动到用户空间进程(运行在用户态下的应用)评测整个系统。这帮助开发人员找到性能问题 + +**parisc** - 这些驱动用于HP生产的PA-RISC架构设备。PA-RISC是一种特殊指令集的处理器。 + +**parport** - 并口驱动提供了Linux下的并口支持。 + +**pci** - 这些驱动提供了PCI总线服务。 + +**pcmcia** - 这些是笔记本的pc卡驱动 + +**pinctrl** - 这些驱动用来处理引脚控制设备。引脚控制器可以禁用或启用I/O设备。 + +**platform** -这个文件夹包含了不同的计算机平台的驱动像Acer、Dell、Toshiba、IBM、Intel、Chrombooks等等。 + +**pnp** - 即插即用驱动允许用户在插入一个像USB的设备后可以立即使用而不必手动配置设备。 + +**power** - 电源驱动使内核可以测量电池电量,检测充电器和进行电源管理。 + +**pps** - Pulse-Per-Second驱动用来控制电流脉冲速率。这用于计时。 + +**ps3** - 这是Sony的游戏控制台驱动- PlayStation3。 + +**ptp** - 图片传输协议(PTP)驱动支持一种从数码相机中传输图片的协议。 + +**pwm** - 脉宽调制(PWM)驱动用于控制设备的电流脉冲。主要用于控制像CPU风扇。 + +**rapidio** - RapidIO驱动用于管理RapidIO架构,它是一种高性能分组交换,用于电路板上交互芯片的交互技术,也用于互相使用底板的电路板。 + +**regulator** - 校准驱动用于校准电流、温度、或其他可能系统存在的校准硬件。 + +**remoteproc** - 这些驱动用来管理远程处理器。 + +**rpmsg** - 这个驱动用来控制支持大量驱动的远程处理器通讯总线(rpmsg)。这些总线提供消息传递设施,促进客户端驱动程序编写自己的连接协议消息。 + +**rtc** - 实时时钟(RTC)驱动使内核可以读取时钟。 + +**s390** - 用于31/32位的大型机架构的驱动。 + +**sbus** - 用于管理基于SPARC的总线驱动。 + +**scsi** - 允许内核使用SCSI标准外围设备。例如,Linux将在与SCSI硬件传输数据时使用SCSI驱动。 + +**sfi** -简单固件接口(SFI)驱动允许固件发送信息表给操作系统。这些表的数据称为SFI表。 + +**sh** - 该驱动用于支持SuperHway总线。 + +**sn** - 该驱动用于支持IOC3串口。 + +**spi** - 这些驱动处理串行设备接口总线(SPI),它是一个在在全双工下运行的同步串行数据链路标准,。全双工是指两个设备可以同一时间同时发送和接收信息。双工指的是双向通信。设备在主/从模式下通信(取决于设备配置)。 + +**ssb** - ssb(Sonics Silicon Backplane)驱动提供对在不同博通芯片和嵌入式设备上使用的迷你总线的支持。 + +**staging** - 该目录含有许多子目录。这里所有的驱动还需要在加入主内核前经过更多的开发工作。 + +**target** - SCSI设备驱动 + +**tc** - 这些驱动用于TURBOchannel,TURBOchannel是数字设备公司开发的32位开放总线。这主要用于DEC工作站。 + +**thermal** - thermal驱动使CPU保持较低温度。 + +**tty** - tty驱动用于管理物理终端连接。 + +**uio** - 该驱动允许用户编译运行在用户空间而不是内核空间的驱动。这使用户驱动不会导致内核崩溃。 + +**usb** - USB设备允许内核使用USB端口。闪存驱动和记忆卡已经包含了固件和控制器,所以这些驱动程序允许内核使用USB接口和与USB设备。 + +**uwb** - Ultra-WideBand驱动用来管理短距离,高带宽通信的超低功耗的射频设备 + +**vfio** - 允许设备访问用户空间的VFIO驱动。 + +**vhost** - 这是用于宿主内核中的virtio服务器驱动。用于虚拟化中。 + +**video** - 这是用来管理显卡和监视器的视频驱动。 + +**virt** - 这些驱动用来虚拟化。 + +**virtio** - 这个驱动用来在虚拟PCI设备上使用virtio设备。用于虚拟化中。 + +**vlynq** - 这个驱动控制着由德州仪器开发的专有接口。这些都是宽带产品,像WLAN和调制解调器,VOIP处理器,音频和数字媒体信号处理芯片。 + +**vme** - WMEbus最初是为摩托罗拉68000系列处理器开发的总线标准 + +**w1** - 这些驱动用来控制one-wire总线。 + +**watchdog** - 该驱动管理看门狗定时器,这是一个可以用来检测和恢复异常的定时器。 + +**xen** - 该驱动是Xen管理程序系统。这是个允许用户运行多个操作系统在一台计算机的软件或硬件。这意味着xen的代码将允许用户在同一时间的一台计算机上运行两个或更多的Linux系统。用户也可以在Linux上运行Windows、Solaris、FreeBSD、或其他操作系统。 + +**zorro** - 该驱动提供Zorro Amiga总线支持。 + + + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/the-linux-kernel-drivers.4205/ + +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/04 The Linux Kernel--Security.md b/published/04 The Linux Kernel--Security.md new file mode 100755 index 0000000000..9cd583c1b5 --- /dev/null +++ b/published/04 The Linux Kernel--Security.md @@ -0,0 +1,37 @@ +戴文的Linux内核专题:04 安全 +================================================================================ +![](http://www.linux.org/attachments/slide-jpg.278/) + +Linux内核是所有Linux系统的核心。如果有任何恶意代码控制或破害了内核的任何一部分,那么系统会严重受损,文件可能被删除或损坏,私人信息可能被盗等等。很明显,保持内核安全涉及到用户的最大利益。值得庆幸的是,由于Linux内核极其安全,Linux是一个非常安全的系统。在用户比例上,Linux病毒比Windows病毒更少,并且Linux用户比Windows用户个人更少感染病毒。(这就是为什么许多公司使用Linux来管理他们的服务器的一个原因。) 然而,我们仍然没有借口去忽视内核的安全。Linux有几个安全特性和程序,但本文只讨论Linux安全模块(LSM)及其它的内核安全特性。 + +AppArmor(应用盔甲)最初是由Immunix写的安全模块。自从2009年以来,Canonical维护着这些代码(Novell在Immunix之后,Canonical以前管理这些代码)。这个安全模块已经从2.6.36版本进入Linux主分支之中。AppArmor限制了程序的能力。AppArmor使用文件路径来跟踪程序限制。许多Linux管理员称AppArmor是最容易配置的安全模块。然而,而许多Linux用户觉得这个模块与其它的替代品相比很糟糕。 + +安全增强Linux(SELinux)是AppArmor的替代品,它最初由美国国家安全局开发(NSA)。SELinux自从2.6版本就进入内核主分支中。SELinux是限制修改内核和用户空间的工具。SELinux给可执行文件(主要是守护进程和服务端程序)最小特权去完成它们的任务。SELinux也可以用来控制用户权限。SELinux不像AppArmor那样使用文件路径,而SELinux在追踪权限时使用文件系统去标记可执行文件。因为SElinux本身使用文件系统管理可执行文件,所以SELinux不能像AppArmor那样对整个文件系统提供保护。 + +注意:守护进程是在后台运行的程序 + +注意:虽然在内核中有AppArmor、SELinux及其它安全模块,但只能有一个安全模块被激活。 + +Smack是安全模块的另一种选择。Smack从2.6.25起进入内核主分支。Smack应能比AppArmor更安全,但比SELinux更容易配置。 + +TOMOYO,是另外一个安全模块,在2.6.30进入内核主分支。TOMOYO可以提供安全防护,但是它的主要用途是分析系统安全缺陷。 + +AppArmor、SELinux、Smack和TOMYO组成了四个标准Linux安全模块。这些都通过使用强制访问控制(MAC : mandatory access control)工作,这种访问控制是通过限制程序或者用户执行一些任务来实现的。安全模块还有某些形式的列表规定了它们可以做什么不可以做什么。 + +Yama在Linux内核中一个新安全模块。Yama还没有作为标准的安全模块,但是在将来他会成为第5个标准安全模块。Yama和其他安全模块一样使用相同的机制。 + +“grsecurity”是一系列Linux内核安全补丁的集合。多数补丁用于处理远程网络连接和缓冲区溢出的安全问题(以后讨论)。grsecurity中有一个叫PaX的有趣组件。PaX补丁允许内存里的代码使用最少的所需权限。例如,存储程序的内存段被标为不可写。想想看,为什么一个可执行的程序需要在内存中是可写的?通过这个补丁,恶意代码就不能修改目前正在执行的程序。缓冲区溢出是一种当程序由于bug或者恶意代码在内存上写入数据,并让它的内存边界超出到其他程序的内存页上的安全事件。当Pax被激活时,它会帮助阻止这些缓冲区溢出,因为程序没有写到其他内存页上的权限了。 + +Linux入侵检测系统(LIDS)是一个内核安全补丁,提供了强制访问控制(MAC)的特性。这个补丁就像扮演LSM模块的角色。 + +Systrace是一个减少和控制应用程序访问系统文件和系统调用的工具。系统调用是对内核的服务请求。比如,当一个文本编辑器写入一个文件到硬盘上时,程序将会发送一个系统请求让内核写入文件到硬盘中。 + +这些是在Linux安全系统中非常重要的组件。这些安全模块和补丁使内核免于受到恶意代码的攻击。没有这些特性,Linux系统将会变成一个不安全的操作系统。 + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/the-linux-kernel-security.4223/ + +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/05 The Linux Kernel--Configuring the Kernel Part 1.md b/published/05 The Linux Kernel--Configuring the Kernel Part 1.md new file mode 100755 index 0000000000..cf9145bdd9 --- /dev/null +++ b/published/05 The Linux Kernel--Configuring the Kernel Part 1.md @@ -0,0 +1,72 @@ +戴文的Linux内核专题:05 配置内核 (1) +================================================================================ + +![](http://www.linux.org/attachments/slide-jpg.299/) + +现在我们已经了解了内核,现在我们可以进入主要工作:配置并编译内核代码。配置内核代码并不会花费太长时间。配置工具会询问许多问题并且允许开发者配置内核的每个方面。如果你有不确定的问题或者特性,你最好使用配置工具提供的默认值。本系列教程会使读者逐步了解配置内核的整个过程。 + +配置代码前需要在源文件的文件夹内打开一个终端。当终端打开后,基于你喜好的配置界面,这里有几种不同的配置方法: + +- make config - 纯文本界面 (最常用的选择)。 +- make menuconfig - 基于文本彩色菜单和单选列表。这个选项可以加快开发者开发速度。需要安装ncurses(ncurses-devel)。 +- make nconfig - 基于文本的彩色菜单。需要安装curses (libcdk5-dev)。 +- make xconfig - QT/X-windows 界面。需要安装QT。 +- make gconfig - Gtk/X-windows 界面。需要安装GTK。 +- make oldconfig - 纯文本界面,但是其默认的问题是基于已有的本地配置文件。 +- make silentoldconfig - 和oldconfig相似,但是不会显示配置文件中已有的问题的回答。 +- make olddefconfig -和silentoldconfig相似,但有些问题已经以它们的默认值选择。 +- make defconfig - 这个选项将会创建一份以当前系统架构为基础的默认设置文件。 +- make ${PLATFORM}_defconfig - 创建一份使用arch/$ARCH/configs/${PLATFORM}_defconfig中的值的配置文件。 +- make allyesconfig - 这个选项将会创建一份尽可能多的问题回答都为‘yes’的配置文件。 +- make allmodconfig - 这个选项将会创建一份将尽可能多的内核部分配置为模块的配置文件。 + +> 注意:内核代码可以放进内核自身,也可以成为一个模块。例如,用户可以将蓝牙驱动作为一个模块加入(独立于内核),或者直接放到内核栗,或者完全不加蓝牙驱动。当代码放到内核本身时,内核将会请求更多的内存并且启动会花费更长的时间。然而,内核会执行的更好。如果代码作为模块加入,代码将会一直存在于硬盘上直到被需要时加载。接着模块被加载到内存中。这可以减少内核的内存使用并减少启动的时间。然而,因为内核和模块在内存上相互独立所以会影响内核的性能。另一种选择是不添加一些代码。举例来说,内核开发人员假如知道系统永远都不会使用蓝牙设备,因此这个驱动就可以不加到内核中。这提升了内核的性能。然而,如果用户之后需要蓝牙设备,那么他么需要安装蓝牙模块或者升级内核才行。 + +- make allnoconfig - 这个选项只会生成内核所必要代码的配置文件。它对尽可能多的问题都回答no。这有时会导致内核无法工作在为编译该内核的硬件上。 +- make randconfig - 这个选项会对内核选项随机选择(译注:这是做什么用途的?!)。 +- make localmodconfig - 这个选项会根据当前已加载模块列表和系统配置来生成配置文件。 +- make localyesconfig - 将所有可装载模块(LKM)都编译进内核(译者注:这里与原文 ‘This will set all module options to yes - most (or all) of the kernel will not be in modules’的意思不同,作者也作出了解释:http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-1.4274/#post-13307)。 + +贴士:最好使用“make menuconfig”,因为用户可以保存进度。“make config”不会提供这样的便利,因为配置过程会耗费大量时间。 + +### 配置: ### + +大多数开发者选择使用“make menucongfig”或者其他图形菜单之一。当键入上述配置命令后,第一个问题,是受否将内核编译成64位。选项有“Y”、“n”和“?”。问号用来解释这个问题,“n”代表这个问题回答否(no),"Y"代表这个问题回答是(yes)。在这个教程里,我选择是。 这里我输入"Y"(这里是大小写敏感的)并输入回车。 + +注意:当内核在32位系统上编译时,编译工具会询问内核是否编译成32位。第一个问题在不同的处理器上不一样。 + +下一行显示的是"Cross-compiler tool prefix (CROSS\_COMPILE) []"(交叉编译器工具前缀)。如果你不是做交叉编译就直接按下回车。如果你正在交叉编译,对ARM系统输入像"arm-unknown-linux-gnu-",对64位PC输入像"x86_64-pc-linux-gnu-"的字样。对其他处理器而言还有许多其他可能的命令,但是这个表太大了。一旦一名开发者知道他们想要支持的处理器,很容易就可研究出处理器需要的命令。 + +注意:交叉编译是为别的处理器编译代码。比如,一台Intel系统正编译着不在Intel处理器上运行的程序,比如,这个系统可能正在编译着要在ARM或AMD处理器上运行的代码。 + +注意:每一项选择会改变接下来显示什么问题及何时显示。我会(在教程里)包含上我的选择让读者可以在他们自己的系统上跟上配置的进度。 + +接下来,用户会看到“Local version - append to kernel release (LOCALVERSION) []”(本地版本号,附加到内核版本号后面)。这使开发人员可以给定一个特殊版本号或命名他们自定义的内核。我将输入“LinuxDotOrg”,这样,内核版本会显示为“3.9.4-LinuxDotOrg”。接下来,配置工具会询问“Automatically append version information to the version string (LOCALVERSION_AUTO) [N/y/?]”(是否自动添加版本信息到版本号后)。如果本地有一个git版本库,git的修订号会被添加到版本号后面。这个例子中我们没有使用git,所以我回答"no"。不然git修订号将会追加到版本号中。还记得vmlinuz和几个类似的文件么?好了,下一个问题就是问使用哪一种格式压缩内核。开发人员可以从五个选项中选择一个。它们是 + +1. Gzip (KERNEL_GZIP) +2. Bzip2 (KERNEL_BZIP2) +3. LZMA (KERNEL_LZMA) +4. XZ (KERNEL_XZ) +5. LZO (KERNEL_LZO) + +Gzip是默认值,所以我选择"1"并按回车。每种压缩格式和其他压缩格式相比都有更高或者更低的压缩比。更好的压缩比意味着更小的体积,但是与低压缩比文件相比,它解压时需要更多的时间。 + +现在这行显示“Default hostname (DEFAULT_HOSTNAME) [(none)]”(默认主机名)。这里可以配置主机名。通常地,开发者这行留空(我这里留空),以便以后Linux用户可以自己设置他们的主机名。 + +接下来开发者可以启用或者禁用交换分区。Linux使用一个叫做"swap space"的独立分区来使用虚拟内存。这相当于Windows中的页面文件。典型地,开发者在这行“Support for paging of anonymous memory (swap) (SWAP) [Y/n/?]”(是否支持匿名内存换页)回答“Y”。 + +接下来的一行(System V IPC (SYSVIPC) [Y/n/?])询问内核是否支持IPC。进程间通信使进程间可以通信和同步。最好启用IPC不然许多程序将无法工作。这个问题回答“Y”会使配置工具接下来问“POSIX Message Queues (POSIX_MQUEUE) [Y/n/?]”(是否使用POSIX消息队列),这个问题只会在IPC启用后看见。POSIX消息队列是一种给每条消息一个优先级的消息队列(一种进程间通信形式)。默认的选择是“Y”。按回车选择默认选择(以大写选择指示默认)。 + +下一个问题“open by fhandle syscalls (FHANDLE) [Y/n/?]”(是否使用文件句柄系统调用来打开文件)是问当有需要进行文件系统操作的时候,程序是否允许使用文件句柄而不是文件名进行。默认上,这个选择是“Y”。 + +有时,开发者在做了一些选择后,某些问题会自动回答。比如,下一个问题“Auditing support (AUDIT) [Y/?]”(是否支持审计)会在没有提示的情况下自动回答,因为先前的选项需要这个特性。审计支持会记录所有文件的访问和修改。下一个关于审计的问题“Enable system-call auditing support (AUDITSYSCALL) [Y/n/?]”(是否启用系统调用审计支持)。如果启用,所有的系统调用都会记录下来。如果开发者想要更好的性能,那么最好尽可能地禁用审计特性并且不把它加入内核。而另外一些开发者可能为了安全监控而启用审计。这个问题我选择“n”。下一个审计方面的问题“Make audit loginuid immutable (AUDIT_LOGINUID_IMMUTABLE) [N/y/?]”(是否要审计进程身份ID不可变)是询问进程是否可以改变它们的loginuid(LOGIN User ID),如果启用,用户空间的进程将无法改变他们的loginuid。为了更好的性能,我们这里禁用这个特性。(译注:对于使用systemd这样的系统,其是通过中央进程来重启登录服务的,设置为“y”可以避免一些安全问题;而使用较旧的SysVinit和Upstart的系统,其需要管理员手工重启登录服务,应该设置为“N”) + +注意:当通过“make config”配置时,这些通过配置工具回答的问题会显示出来但是用户无法改变答案。当通过"make menuconfig"配置时,无论用户按任何键都无法改变选项。开发者不需要去改变这些选项,因为之前的选择决定了另外一个问题的选择。 + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-1.4274/ + +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/published/201310/10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe.md b/published/201310/10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe.md new file mode 100644 index 0000000000..923d2505e7 --- /dev/null +++ b/published/201310/10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe.md @@ -0,0 +1,63 @@ +Linus Torvalds 十句精彩语录 —— 来自 LinuxCon Europe 大会上的主旨发言 +================================================================================ +![](http://www.linux.com/images/stories/41373/Linus-and-Dirk.jpg) + +*Linus Torvalds 和 Dirk Hohndel 在 Edinburgh举行的 LinuxCon Europe 大会主席台上* + +Linux创始人 Linus Torvalds 坐在了在Edinburgh举办的[LinuxCon Europe][1]大会主席台上,陪同他的是来自Intel公司linux主管和开源技术专家 Dirk Hohndel,二人一起探讨linux的现在和未来,并且回答了来自社区的问题。讨论的话题很广泛,包括即将发布的3.12版内核, 内核维护者的理想性格,还有能让 Linus 熬夜去解决的一些问题,linux桌面游戏等等。 + +以下是linus的十句精彩语录, 来自大会上的主旨演讲, 按大会上发言时的顺序排列。 + +1、Linus 很满意当前内核版本三个月时间的发布周期,因为这样的话,开发者可以充分利用该时间段构建新的特性。即使他们错过了合并的窗口期, 等到下一次机会的到来,三个月的等待时间也不算很长, 他们也就不必急于提交代码了。 + +**“不必着急写代码,要确保代码运行正常且精心设计,不要担心期限问题。”** + +2、快速变更的步调还允许开发人员快速合并他们的代码, 然后继续下一步。 + +**“开发者在注意力持续时间问题上,有点类似于迟钝的林地动物。”** + +3、**“对于一个维护者来说,最重要的不在于你是不是一个优秀的工程师, 而在于你得负责任, 别人可以指望你, 7天的每一个24小时, 一年52个星期都是如此”。** + +年轻的开发者想成为一名维护人员是比较困难的。要经过数年时间的观察期,让社区信任你, 注意到你确实坚守在这里。那即是说,只要你能证明自己是可信赖的,想成为一名维护者还是容易的,毕竟这是一份棘手的工作,必须时刻保持关注。 + +4、Dirk:“是什么让你熬夜?” + +代码中的Bug,还有其他一些技术问题并不会让Linux太担忧。 + +**“技术上的东西,可以这么说,即使你做了蠢事,但都是可以解决的。”** + +5、真正让Linus熬夜的是与开发进度有关的社交性问题。 + +**“有时候情绪来了,可能好几天都比较有压力。 我也有脾气, 这对我来说没什么…… 但是其他人倾向于陷入到问题里边。结果浪费好几周时间,而且这些问题都挺让人纠结的。”** + +6、当提到说服大公司继续贡献内核代码并且使用开源软件, linus持进化论观点。他们要么从开源获益,要么就得承受经济上的损失。 + +**“我从事开源,因为有乐趣而且开源行得通…… 跟内核社区合作的公司会花费更少的时间并且使工作更有成效。”** + +7、**“如果你的公司认为内核的微小改动可以带来竞争优势,你恐怕将会面临经济问题。最好还是考虑一下生产廉价的高质量的硬件好了。”** + +![](http://www.linux.com/images/stories/41373/Linus-Torvalds-LinuxCon-Europe.jpg) + +*Linux 创始人 Linux Torvalds 回答现场观众的提问,2013 LinuxCon Europe大会。* + +8、有关linux桌面版的现状,linus有几点要谈。linux桌面仍然可以改善。但是各个发行版之间的内讧已然是个问题。 + +**“我开始设计 Linux 时候就是想看到它在桌面上运行。我希望大家能更好的合作,一起设计一个真正漂亮的登录界面。”** + +9、Linus认为 Valve’s Steam有助于linux桌面版的开发,这是个极好的机会。他们打算为运行游戏的Linux发行版制定一个标准。。 + +**“这是标准化的最好的模式。标准不是说人们就坐在烟雾弥漫的房间里,写啊写。能够带来市场效益才称得上成功。”** + +10、针对多样性, linus说他希望看到内核社区的发展壮大, 有来自不同地区的更多的女性和开发者参与到其中。 + +**“女性太少了。但是我并不担心。过去我们就讨论过来自日本的开发者太少的问题。这是可以解决,只是时间问题。”** + +-------------------------------------------------------------------------------- + +via: http://www.linuxfoundation.org/news-media/blogs/browse/2013/10/10-best-quotes-linus-torvalds-keynote-linuxcon-europe + +译者:[l3b2w1](https://github.com/l3b2w1) 校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://events.linuxfoundation.org/events/linuxcon-europe diff --git a/published/3 Good CD And DVD Burning Tools For Ubuntu.md b/published/201310/3 Good CD And DVD Burning Tools For Ubuntu.md similarity index 100% rename from published/3 Good CD And DVD Burning Tools For Ubuntu.md rename to published/201310/3 Good CD And DVD Burning Tools For Ubuntu.md diff --git a/published/201310/8 Things To Do After Installing Ubuntu 13.10 (Saucy Salamander).md b/published/201310/8 Things To Do After Installing Ubuntu 13.10 (Saucy Salamander).md new file mode 100644 index 0000000000..ec2c1f8dc4 --- /dev/null +++ b/published/201310/8 Things To Do After Installing Ubuntu 13.10 (Saucy Salamander).md @@ -0,0 +1,316 @@ +Ubuntu 13.10安装后你要做的8件事 +================================================================================ + +Ubuntu 13.10 已经发布了,对于那些打算安装“纯净版”的用户,安装完系统后你可以考虑下面的8件事。 + +![](http://dl.dropboxusercontent.com/u/1113424/img/ubuntu13.10-saucy-salamander.jpg) + +### 1. 安装一些绚丽的小零件 ### + +![](http://dl.dropboxusercontent.com/u/1113424/img/indicator-systemload.png) + +**系统负载** 是系统监控工具GNOME里的一个小应用。它能在面板上展示出CPU、内存、网络使用、硬盘I/O等信息。点击下面的按钮从Ubuntu软件中心安装。 + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][1] + +或者通过命令行进行安装: + + sudo apt-get install indicator-multiload + +![](http://dl.dropboxusercontent.com/u/1113424/img/indicator-cpufreq.png) + +**CPU频率**是一款等效于“GNOME-CPU调频”的应用。你可以实时的调整CPU的频率。点击下面的按钮从Ubuntu软件中心安装。 + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][2] + +或者通过命令行安装: + + sudo apt-get install indicator-cpufreq + +**我的天气**是一款显示当前天气的应用,它能显示5天内的预报并支持四大天气服务站点:OpenWeatherMap, Yahoo, Wunderground 和 World Weather Online。 + +通过命令行进行安装: + + sudo add-apt-repository ppa:atareao/atareao + sudo apt-get update + sudo apt-get install my-weather-indicator + +![](https://dl.dropboxusercontent.com/u/1113424/img/variety-wallpaper-changer.jpg) + + +[**Variety**][3]一款带有AppIndicator的应用,但是基本上你只需要配置一次就可以用指示器来使用此软件了。Variety是一款很酷的壁纸更换的应用,他能在设定的时间内自动下载并更换壁纸。用起来就有种高帅富的感觉。壁纸库每天都会有更新,你可以很快的切换到另外一个壁纸,收藏自己喜欢的壁纸,留着日后再用。 + +通过以下命令行安装: + + sudo add-apt-repository ppa:peterlevi/ppa + sudo apt-get update + sudo apt-get install variety + +![](http://dl.dropboxusercontent.com/u/1113424/img/diodon-indicator.png) + +你可能还需要一个剪切板管理器,试试**Diodon** 吧,这是款轻量型软件,支持文件、图像等。点击下面的按钮安装: + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][4] + +或者通过命令行安装: + + sudo apt-get install diodon diodon-plugins + +### 2. 设置 Unity ### + +![](http://dl.dropboxusercontent.com/u/1113424/img/unity-tweak-tool.png) + +**Unity Tweak Tool**让用户能改变一些Unity设置,比如:自动隐藏、窗口最大化、“触发角”、Dash、Unity启动器或平视显示器、改变GTK或图标主题、改变字体和大小,移动窗口控制器到右边等。 + + +点击下面的按钮从软件中心安装 + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][5] + +或者通过命令行安装 + + sudo apt-get install unity-tweak-tool + +### 3. 隐私设置 ### + +![](http://dl.dropboxusercontent.com/u/1113424/img/ubuntu13.10-privacy-security_2.png) + +你应该知道可以通过默认的Dash来查看最近访问的文件和其他的一些文件。系统设置可以通过设置**“安全和隐私”**来选择显示的文件类型。这样就不用看到那些软件、文件夹之类的了。你也可以清除最近的记录。 + +此外你在使用搜索框的时候,可以设定不显示网络搜索的结果。但是这会屏蔽掉所有的网络信息。所以当你仅仅是想**“屏蔽购物推荐”**的话,你可以输入下面的命令: + + gsettings set com.canonical.Unity.Lenses disabled-scopes "['more_suggestions-amazon.scope', 'more_suggestions-u1ms.scope', 'more_suggestions-populartracks.scope', 'music-musicstore.scope', 'more_suggestions-ebay.scope', 'more_suggestions-ubuntushop.scope', 'more_suggestions-skimlinks.scope']" + +更多插件屏蔽,点击[此处][6] + +![](http://dl.dropboxusercontent.com/u/1113424/img/indicator-privacy.png) + + +另外一种在Ubuntu 13.10中设置隐私的方法是使用**隐私指示器**,这是一款让你快捷设置启用/屏蔽Zeitgeist 或者在线搜索结果的软件,并能清除Zeitgeist日志和最近文件(显示先边栏的“最近”里面)。 + +[**下载 Privacy Indicator**][7](此网页中含有deb文件下载) + +### 4. 使用混合显卡功能### + +Ubuntu的开发人员已经在Ubuntu 13.10 (和 12.04 LTS版 )中实现了混合显卡技术,下面你会看到相关设置的说明。 + +![](http://dl.dropboxusercontent.com/u/1113424/img/nvidia-prime-nvsettings.png) + +**Nvidia Optimus**:不幸的是,Linux平台下Nvidia显卡驱动并不完全支持Optimus,[更多][8]。 + +但是Ubuntu 13.10用了“nvidia-prime”包来过渡。这个包使默认支持Intel显卡芯片的Optimus平台也支持Nvidia显卡。通过下面指令你能Nvidia显卡一直处于工作状态,就是说没有办法让它停止工作来节能了。这样笔记本就会功耗更大和过热--——**对我而言,我是不会 用这个的,除非过热的问题解决了**,如果没有解决的话,你可以取消这个设置。 + + +再次不幸的是,这不是唯一的问题。你会发现画面分割和热插拔并不工作。所以,如果你想用多个显示器的话。你需要手动的在xorg.conf进行设置。这样的好处就是,你可以玩那些不支持Intel显卡的游戏,用支持VDPAU的媒体播放器等。 + +即便如此,如果你还是想尝试一下的话,请确保你使用的是默认的显示管理器LightDM,并不是其他的,如GDN等。此外,如果你安装了Bumblebee,你需要卸载掉它: + + sudo apt-get purge bumblebee* bbswitch-dkms + +然后安装最新的Nvidia驱动和“nvidia-prime”: + + sudo apt-get install nvidia-319 nvidia-settings-319 nvidia-prime + +最后重启电脑(重启X是不够)。 + +如果你想撤销这些改变,你可以输入通过下面的指令: + + sudo apt-get remove nvidia-319 nvidia-settings-319 nvidia-prime + +然后重启 + +**AMD 混合显卡**:我并没有测试过这个,因为我没有支持AMD显卡的系统,但是根据Ubuntu wiki上的[**HybridGraphics**][9]包说明,应该是没有问题。(再次申明,我并不确定,因为我没试过) + + +要想在Ubuntu 13.10下获得合适的AMD显卡支持。你需要安装最新的 fglrx驱动和fglrx-pxpress: + + sudo apt-get install fglrx fglrx-pxpress + +并重启电脑。重启X是没有用的 + +### 5. 延长电池寿命 ### + +有两个工具可以延长电池的寿命:laptop-mode-tools 和 TLP。这两个工具都是为了延长电池寿命,[**TLP**][10] 似乎效果更好一点,但是TLP仅有PPA,如果你不想添加APPs时,就安装 laptop-mode-tools吧。 + +注意:**不要同时安装laptop-mode-tools和TLP** + +点击下面的按钮安装laptop-mode-tools。 + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][11] + +或者通过命令行安装: + + sudo apt-get install laptop-mode-tools + +输入下面命令安装TLP: + + sudo add-apt-repository ppa:linrunner/tlp + sudo apt-get update + sudo apt-get install tlp tlp-rdw + sudo tlp start + +这两个工具都不需要额外的配置。 + +另外一种节约电池的方法是**Bumblebee**(是允许在独显运行软件或游戏的工具),Bumblebee是一款支持笔记本上双显卡智能切换的软件。能停止Nvidia显卡,当你不需要使用的时候。 + +**注意:如果你想在显卡自动切换技术的第4步采用混合显卡时,请不要安装Bumblebee** + +点击下面的按钮进行安装: + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][12] + + sudo apt-get install bumblebee bumblebee-nvidia + +然后重启。 + +在Ubuntu中有个禁止"optirun"工作的[**bug**][13]。通过下面的命令解决这个问题。 + +- 32位系统 + + sudo ln -s /usr/lib/i386-linux-gnu/libturbojpeg.so.0 /usr/lib/i386-linux-gnu/libturbojpeg.so + +- 64位系统 + + sudo ln -s /usr/lib/x86_64-linux-gnu/libturbojpeg.so.0 /usr/lib/x86_64-linux-gnu/libturbojpeg.so + +当你想用Nvidia显卡时,运行: + + optirun APP-EXECUTABLE + +将"APP-EXECUTABLE"替换为你要运行的软件或者游戏的可执行文件。 + +### 6. 安装 编解码器, Java 和 加密DVD播放 ### + +如果需要播放更多类型的音频视频文件,那就安装 **Ubuntu Restricted Extras** 吧 + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][14] + +或者输入下面的命令行: + + sudo apt-get install ubuntu-restricted-extras + +我建议再安装一下“libavformat 和 libavcodec的无限制版”,这样当你使用一些编辑器或者转换器的时候就不会出现丢失编码丢失的情况。点击下面的按钮进行安装: + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][15] + +或者输入一下命令行: + + sudo apt-get install libavformat-extra-53 libavcodec-extra-53 + +你可能需要Java,但是你得明确你到底需要的是什么,不少用户仅仅使用**OpenJRE**和java游览器插件,你可以点击下面的按钮安装: + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][16] + +或者输入命令行: + + sudo apt-get install icedtea-7-plugin openjdk-7-jre + +如果用于开发,你可能需要**OpenJDK**,点击下面的按钮进行安装: + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][17] + +或者输入下面的命令行: + + sudo apt-get install openjdk-7-jdk + + +如果你因为某些原因需要安装**Oracle Java**(包含JDK,JRE,游览器插件的包)时,你可以通过下面的命令进行安装[**Oracle Java 7**][18] : + + sudo add-apt-repository ppa:webupd8team/java + sudo apt-get update + sudo apt-get install oracle-java7-installer + + +**加密DVD播放**: 由于现在很多安装包都能在官方的库中找到,或者有更好的替代物,Medibuntu也渐渐的[**被废弃**][19]了。但是在播放加密视频时仍然需要livdvdcss包。 + + 输入以下指令启动加密DVD播放功能: + + sudo apt-get install libdvdread4 + sudo /usr/share/doc/libdvdread4/install-css.sh + +### 7. 安装最新的 Rhythmbox 和 VLC ### + + +![](http://dl.dropboxusercontent.com/u/1113424/img/rhythmbox-n-vlc.png) + +在Ubuntu13.10中,Rhythmbox 和 VLC并没有升级到最新的版本,如果你想安装最新的版本,你可以使用PPAs + +请注意:升级Rhythmbox后,里面的[**第三方插件**][20]将停止工作。Rhythmbox插件可以正常的运行。 + +**Rhythmbox**(Ubuntu 13.10下的版本:2.99.1,PPA中的版本:3.0.1): + + sudo add-apt-repository ppa:jacob/media + sudo apt-get update + sudo apt-get install rhythmbox + +**VLC**(Ubuntu 13.10下的版本:2.0.8,PPA中的版本:2.1.0): + + sudo add-apt-repository ppa:videolan/stable-daily + sudo apt-get update + sudo apt-get install vlc + +### 8. Tweak Nautilus: 打开被禁用的递归搜索和文件快速预览 ### + +![](http://dl.dropboxusercontent.com/u/1113424/img/nautilus-no-recursive.png) + +在Nautilus V3.6之后,提前键入查找功能就被去除掉了。之后版本的搜索就只是在当前文件夹和其子文件下进行搜索。这用起来就很不爽了,如果你为此感到烦恼的话就安装Nautilus的补丁来启用[**被禁用的递归搜索**][21](你可以很方便的启用它)。 + +**用下面的命令将Nautilus升级到可以禁用递归搜过的版本** + + sudo add-apt-repository ppa:dr3mro/personal + sudo apt-get update + sudo apt-get upgrade + nautilus -q + +**然后使用下面的命令禁用递归搜索** + + gsettings set org.gnome.nautilus.preferences enable-recursive-search false + +如果你还想恢复递归搜索的功能,使用下面的命令行: + + gsettings set org.gnome.nautilus.preferences enable-recursive-search true + +![](http://dl.dropboxusercontent.com/u/1113424/img/gnome-sushi.png) + +**GNOME Sushi**是一款快速预览的软件。点击下面的按钮安装。(会安装gnome-sushi 和 unoconv来实现预览)。 + +[![](https://apps.ubuntu.com/assets/images/scbutton-free-200px.png)][22] + +或者输入命令行: + + sudo apt-get install gnome-sushi unoconv + +要使用这个软件,需选择一个文件(图片、文本文档、音乐文件等)然后点击SPACE按钮来预览。再次点击SPACE按钮或者关闭窗口可以关闭预览。 + +**现在!看完我们的介绍之后,你会选择哪个作为第一个安装的呢?** + +-------------------------------------------------------------------------------- + +via: http://www.webupd8.org/2013/10/8-things-to-do-after-installing-ubuntu.html + +译者:[Timeszoro](https://github.com/Timeszoro) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:apt://indicator-multiload +[2]:apt://indicator-cpufreq +[3]:http://www.webupd8.org/2013/06/variety-wallpaper-changer-0415-released.html +[4]:apt://diodon,diodon-plugins +[5]:apt://unity-tweak-tool +[6]:http://www.webupd8.org/2013/10/how-to-disable-amazon-shopping.html +[7]:http://www.florian-diesch.de/software/indicator-privacy/ +[8]:http://www.webupd8.org/2013/08/using-nvidia-graphics-drivers-with.html +[9]:https://wiki.ubuntu.com/X/Config/HybridGraphics#Known_issues +[10]:http://www.webupd8.org/2013/04/improve-power-usage-battery-life-in.html +[11]:apt://laptop-mode-tools +[12]:apt://bumblebee,bumblebee-nvidia +[13]:http://www.webupd8.org/2013/10/fix-bumblebee-libturbojpegso-issue-in.html +[14]:apt://ubuntu-restricted-extras +[15]:apt://libavformat-extra-53,libavcodec-extra-53 +[16]:apt://icedtea-7-plugin,openjdk-7-jre +[17]:apt://openjdk-7-jdk +[18]:http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html +[19]:http://gauvain.pocentek.net/node/61 +[20]:http://www.webupd8.org/2012/08/rhythmbox-third-party-plugins-ubuntu-ppa.html +[21]:http://www.webupd8.org/2013/09/how-to-disable-recursive-search-in.html +[22]:apt://gnome-sushi,unoconv \ No newline at end of file diff --git a/published/A Pentesting Release for the Raspberry Pi.md b/published/201310/A Pentesting Release for the Raspberry Pi.md similarity index 100% rename from published/A Pentesting Release for the Raspberry Pi.md rename to published/201310/A Pentesting Release for the Raspberry Pi.md diff --git a/published/Add a metallic variation to Saucy's default wall with Aqua Graphite wallpaper.md b/published/201310/Add a metallic variation to Saucy's default wall with Aqua Graphite wallpaper.md similarity index 100% rename from published/Add a metallic variation to Saucy's default wall with Aqua Graphite wallpaper.md rename to published/201310/Add a metallic variation to Saucy's default wall with Aqua Graphite wallpaper.md diff --git a/published/Add vitality to your desktop with Saucy Salamander Wallpaper pack.md b/published/201310/Add vitality to your desktop with Saucy Salamander Wallpaper pack.md similarity index 100% rename from published/Add vitality to your desktop with Saucy Salamander Wallpaper pack.md rename to published/201310/Add vitality to your desktop with Saucy Salamander Wallpaper pack.md diff --git a/published/Are We Witnessing the Decline of Ubuntu.md b/published/201310/Are We Witnessing the Decline of Ubuntu.md similarity index 100% rename from published/Are We Witnessing the Decline of Ubuntu.md rename to published/201310/Are We Witnessing the Decline of Ubuntu.md diff --git a/published/Audacious 3.4 for Linux Review.md b/published/201310/Audacious 3.4 for Linux Review.md similarity index 100% rename from published/Audacious 3.4 for Linux Review.md rename to published/201310/Audacious 3.4 for Linux Review.md diff --git a/published/Banshee Music Player Sees First Release In 12 Months.md b/published/201310/Banshee Music Player Sees First Release In 12 Months.md similarity index 100% rename from published/Banshee Music Player Sees First Release In 12 Months.md rename to published/201310/Banshee Music Player Sees First Release In 12 Months.md diff --git a/published/Calculator App updated with optimized show-hide calculation description.md b/published/201310/Calculator App updated with optimized show-hide calculation description.md similarity index 100% rename from published/Calculator App updated with optimized show-hide calculation description.md rename to published/201310/Calculator App updated with optimized show-hide calculation description.md diff --git a/published/Calibre 1.6 released with handy mark-book feature.md b/published/201310/Calibre 1.6 released with handy mark-book feature.md similarity index 100% rename from published/Calibre 1.6 released with handy mark-book feature.md rename to published/201310/Calibre 1.6 released with handy mark-book feature.md diff --git a/published/Canonical is gold sponsor at October 2013's OggCamp open-source event.md b/published/201310/Canonical is gold sponsor at October 2013's OggCamp open-source event.md similarity index 100% rename from published/Canonical is gold sponsor at October 2013's OggCamp open-source event.md rename to published/201310/Canonical is gold sponsor at October 2013's OggCamp open-source event.md diff --git a/published/Choosing a Journaling File System.md b/published/201310/Choosing a Journaling File System.md similarity index 100% rename from published/Choosing a Journaling File System.md rename to published/201310/Choosing a Journaling File System.md diff --git a/published/Contacts App updated with enhanced avatar support.md b/published/201310/Contacts App updated with enhanced avatar support.md similarity index 100% rename from published/Contacts App updated with enhanced avatar support.md rename to published/201310/Contacts App updated with enhanced avatar support.md diff --git a/published/Daily Ubuntu Tips - Restore Your Machine To A Previous State.md b/published/201310/Daily Ubuntu Tips - Restore Your Machine To A Previous State.md similarity index 100% rename from published/Daily Ubuntu Tips - Restore Your Machine To A Previous State.md rename to published/201310/Daily Ubuntu Tips - Restore Your Machine To A Previous State.md diff --git a/published/Daily Ubuntu Tips – Adding Users To Existing Groups.md b/published/201310/Daily Ubuntu Tips – Adding Users To Existing Groups.md similarity index 100% rename from published/Daily Ubuntu Tips – Adding Users To Existing Groups.md rename to published/201310/Daily Ubuntu Tips – Adding Users To Existing Groups.md diff --git a/published/Daily Ubuntu Tips – Disable Ubuntu Lock Screen.md b/published/201310/Daily Ubuntu Tips – Disable Ubuntu Lock Screen.md similarity index 100% rename from published/Daily Ubuntu Tips – Disable Ubuntu Lock Screen.md rename to published/201310/Daily Ubuntu Tips – Disable Ubuntu Lock Screen.md diff --git a/published/Daily Ubuntu Tips – Easiest Way To Access Your Files From Windows.md b/published/201310/Daily Ubuntu Tips – Easiest Way To Access Your Files From Windows.md similarity index 100% rename from published/Daily Ubuntu Tips – Easiest Way To Access Your Files From Windows.md rename to published/201310/Daily Ubuntu Tips – Easiest Way To Access Your Files From Windows.md diff --git a/published/Daily Ubuntu Tips – How To Install Google Chrome Browser.md b/published/201310/Daily Ubuntu Tips – How To Install Google Chrome Browser.md similarity index 100% rename from published/Daily Ubuntu Tips – How To Install Google Chrome Browser.md rename to published/201310/Daily Ubuntu Tips – How To Install Google Chrome Browser.md diff --git a/translated/Daily Ubuntu Tips – Protect Your Home Folders.md b/published/201310/Daily Ubuntu Tips – Protect Your Home Folders.md similarity index 55% rename from translated/Daily Ubuntu Tips – Protect Your Home Folders.md rename to published/201310/Daily Ubuntu Tips – Protect Your Home Folders.md index 934b65f775..760ed932cf 100644 --- a/translated/Daily Ubuntu Tips – Protect Your Home Folders.md +++ b/published/201310/Daily Ubuntu Tips – Protect Your Home Folders.md @@ -1,42 +1,42 @@ -Ubuntu每日贴士——保护你的Home文件夹 -================================================================================ -几天之前,我们向大家展示了如何在Ubuntu中改变您的home文件夹,以便只有授权用户才能够看到您文件夹中的内容。我们说过,“adduser”命令创建的用户目录,目录里面内容是所有人可读的。这意味着:默认情况下,您的机器上所有有帐号的用户,都能够浏览您home文件夹里面的内容。 +Ubuntu每日小技巧——保护你的Home文件夹 +================================= + +几天之前,我们向大家展示了如何在Ubuntu中改变您的home文件夹,以便只有授权用户才能够看到您文件夹中的内容。我们说过,“adduser”命令创建的用户目录,目录里面内容是所有人可读的。这意味着:默认情况下,您的机器上所有有帐号的用户,都能够浏览您home文件夹里面的内容。 + 要想阅读之前的文章,[请点击这里][2].在那篇文章中,我们还介绍了如何设置权限,可以让您的home文件夹不被任何人浏览。 -这篇博客中提到,还可以通过加密文件目录的方式来获得同样的效果。当home文件夹被加密后,未经授权的用户将既不能看到也不能访问该目录。 + +在这篇博客里,还可以看到如何通过加密文件目录的方式来获得同样的效果。当home文件夹被加密后,未经授权的用户将既不能看到也不能访问该目录。 加密home文件夹并不是在每个环境中对每个人都适用,所以在实际使用该功能之前,请确信自己真的需要它。 -要加密home目录,请登录到Ubuntu并运行以下命令。 + +要使用加密home目录的功能,请登录到Ubuntu并运行以下命令。 sudo apt-get install ecryptfs-utils -当加密当前home文件夹时,你是无法进行系统登录的,必须创建一个临时账户并登录进去。之后再运行下面这些命令,来加密你的home文件夹。 -使用你当前的账户名代替USERNAME。 +你是无法在登录后加密当前home文件夹的,必须创建一个临时账户并登录进去。之后再运行下面这些命令,来加密你的home文件夹。 + +使用你当前的账户名代替下面的USERNAME。 sudo ecryptfs-migrate-home -u USERNAME -当以临时用户的身份登录时,由于你的帐号拥有root或admin权限,就需要运行**su**+用户名,以自己的身份运行命令。系统会提示你输入密码。 +当以临时用户的身份登录后,为使你的帐号拥有root或admin权限,就需要以自己的身份运行 **su**+用户名的命令。系统会提示你输入密码。 su USERNAME -使用具有root或admin权限的帐号代替USERNAME。 +使用具有使用root或admin权限的帐号(译注:即拥有su权限的账号)代替USERNAME。 -在这之后,运行**ecryptfs-migrate-home –u USERNAME**命令加密home文件夹。 +在这之后,运行 **ecryptfs-migrate-home –u USERNAME** 命令加密home文件夹。 -要想在Ubuntu创建一个用户,运行下面的命令。 - - sudo adduser USERNAME - -要想在Ubuntu中删除的用户,运行下面的命令。 - - sudo deluser USERNAME - -登录后,你将会看到如下截图的界面,包含更多关于加密home文件夹的信息。 +使用被加密的账号第一次登录后,你将会看到如下截图的界面,包含更多关于加密home文件夹的信息。 + ![](http://www.liberiangeek.net/wp-content/uploads/2013/09/encrypthomedirectory.png) -要创建带有加密home目录的用户,运行下面的命令: +要创建带有加密home目录的用户,运行下面的命令: + adduser –encrypt-home USERNAME 试试看吧! + -------------------------------------------------------------------------------- via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tips-protect-home-folders/ diff --git a/published/201310/Daily Ubuntu Tips – Understanding The App Menus And Buttons.md b/published/201310/Daily Ubuntu Tips – Understanding The App Menus And Buttons.md new file mode 100644 index 0000000000..dcbfb3222d --- /dev/null +++ b/published/201310/Daily Ubuntu Tips – Understanding The App Menus And Buttons.md @@ -0,0 +1,38 @@ +Ubuntu每日小技巧 – 深入理解应用菜单和按钮 +================================================================================ + +Ubuntu是一款很不错的操作系统。它基本上可以做到任何现代操作系统能做的事情,甚至有时候能做的更好。如果你是一个ubuntu新手,那么你现在还有很多不知道的事情。对于那些专家级用户来说十分普通的事情可能对你来说可能就不太普通了,因此这个“ubuntu每日小技巧”系列旨在帮助你和新用户轻松设置管理ubuntu。 + +Ubuntu有一个菜单栏。这个主菜单栏是在屏幕的顶端黑色条状栏,其包含了状态菜单或指示器和时间日期,音量键,应用的菜单和窗口管理按钮。 + +窗口管理按钮在主菜单(黑色条状栏)的左上角。当年你打开一个程序的时候,主菜单左上角的按钮包括关闭、最小化、最大化、和恢复大小按钮,这些按钮叫做窗口管理按钮。 + +应用的菜单位于窗口管理按钮的右侧。当应用打开时才显示应用菜单。 + +默认情况下,ubuntu隐藏了窗口应用菜单和管理按钮,只有当你把鼠标放在左侧角里的时候才能看到。如果你打开一个程序但是找不到菜单,只需要把你的鼠标移动到屏幕左上角就可以使它显示出来。 + +如果这让你很困惑,而且你想关闭(全局的)应用菜单而使每个程序都有自己的菜单的话,继续向下看。 + +运行以下命令以安装或删除应用菜单: + + sudo apt-get autoremove indicator-appmenu + +运行上面的命令将会删除应用菜单即全局菜单。现在,为了使改变生效,先退出然后再登录回来。 + +现在,当你打开一个ubuntu里面的程序的时候,每个程序就会用显示自己的菜单代替把它隐藏在全局菜单或主菜单里。 + +![](http://www.liberiangeek.net/wp-content/uploads/2013/09/ubuntuappmenuglobalmenu.png) + +就是这样! 想返回原来的状态的话,运行下面的命令: + + sudo apt-get install indicator-appmenu + +使用愉快! + +-------------------------------------------------------------------------------- + +via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tips-understanding-app-menus-buttons/ + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +译者:[crowner](https://github.com/crowner) 校对:[wxy](https://github.com/wxy) \ No newline at end of file diff --git a/published/Daily Ubuntu Tips–Knowing About The Root Account.md b/published/201310/Daily Ubuntu Tips–Knowing About The Root Account.md similarity index 100% rename from published/Daily Ubuntu Tips–Knowing About The Root Account.md rename to published/201310/Daily Ubuntu Tips–Knowing About The Root Account.md diff --git a/published/Daily Ubuntu Tips–Things To Do After Installing Ubuntu.md b/published/201310/Daily Ubuntu Tips–Things To Do After Installing Ubuntu.md similarity index 100% rename from published/Daily Ubuntu Tips–Things To Do After Installing Ubuntu.md rename to published/201310/Daily Ubuntu Tips–Things To Do After Installing Ubuntu.md diff --git a/published/Debian 7.2 Wheez Officially Released.md b/published/201310/Debian 7.2 Wheez Officially Released.md similarity index 100% rename from published/Debian 7.2 Wheez Officially Released.md rename to published/201310/Debian 7.2 Wheez Officially Released.md diff --git a/published/E-Mail App Geary Gets New Look, New Features.md b/published/201310/E-Mail App Geary Gets New Look, New Features.md similarity index 100% rename from published/E-Mail App Geary Gets New Look, New Features.md rename to published/201310/E-Mail App Geary Gets New Look, New Features.md diff --git a/published/Embedded Terminal – A Gedit Plugin To Access The Command Line Terminal From Within The Editor Window.md b/published/201310/Embedded Terminal – A Gedit Plugin To Access The Command Line Terminal From Within The Editor Window.md similarity index 100% rename from published/Embedded Terminal – A Gedit Plugin To Access The Command Line Terminal From Within The Editor Window.md rename to published/201310/Embedded Terminal – A Gedit Plugin To Access The Command Line Terminal From Within The Editor Window.md diff --git a/published/Excellent Music Player Clementine 1.2 Released on Multiple Platforms.md b/published/201310/Excellent Music Player Clementine 1.2 Released on Multiple Platforms.md similarity index 100% rename from published/Excellent Music Player Clementine 1.2 Released on Multiple Platforms.md rename to published/201310/Excellent Music Player Clementine 1.2 Released on Multiple Platforms.md diff --git a/published/First Look at GNOME 3.10 on Arch Linux.md b/published/201310/First Look at GNOME 3.10 on Arch Linux.md similarity index 100% rename from published/First Look at GNOME 3.10 on Arch Linux.md rename to published/201310/First Look at GNOME 3.10 on Arch Linux.md diff --git a/published/First impressions of Semplice Linux 5.md b/published/201310/First impressions of Semplice Linux 5.md similarity index 100% rename from published/First impressions of Semplice Linux 5.md rename to published/201310/First impressions of Semplice Linux 5.md diff --git a/published/Flower Coil, retro challenging puzzle game (Ubuntu Software Center).md b/published/201310/Flower Coil, retro challenging puzzle game (Ubuntu Software Center).md similarity index 100% rename from published/Flower Coil, retro challenging puzzle game (Ubuntu Software Center).md rename to published/201310/Flower Coil, retro challenging puzzle game (Ubuntu Software Center).md diff --git a/published/FreeBSD 10.0 Beta 1 Available for Download and Testing.md b/published/201310/FreeBSD 10.0 Beta 1 Available for Download and Testing.md similarity index 100% rename from published/FreeBSD 10.0 Beta 1 Available for Download and Testing.md rename to published/201310/FreeBSD 10.0 Beta 1 Available for Download and Testing.md diff --git a/published/GCC 4.8.2 Compiler Brings 70+ Bug Fixes.md b/published/201310/GCC 4.8.2 Compiler Brings 70+ Bug Fixes.md similarity index 100% rename from published/GCC 4.8.2 Compiler Brings 70+ Bug Fixes.md rename to published/201310/GCC 4.8.2 Compiler Brings 70+ Bug Fixes.md diff --git a/published/GNOME 3.10 Will Have a Beautiful and Handy System.md b/published/201310/GNOME 3.10 Will Have a Beautiful and Handy System.md similarity index 100% rename from published/GNOME 3.10 Will Have a Beautiful and Handy System.md rename to published/201310/GNOME 3.10 Will Have a Beautiful and Handy System.md diff --git a/translated/GNOME Control Center 3.10.1 Released with Multiple Improvements.md b/published/201310/GNOME Control Center 3.10.1 Released with Multiple Improvements.md similarity index 95% rename from translated/GNOME Control Center 3.10.1 Released with Multiple Improvements.md rename to published/201310/GNOME Control Center 3.10.1 Released with Multiple Improvements.md index 281748c724..0176d8cc61 100644 --- a/translated/GNOME Control Center 3.10.1 Released with Multiple Improvements.md +++ b/published/201310/GNOME Control Center 3.10.1 Released with Multiple Improvements.md @@ -8,13 +8,13 @@ Gnome Control Center允许用户使用大量的工具应用程序来对他们的 **GNOME Control Center 3.10.1的功能亮点:** -- 修正了一些内存泄露; +- 修正了一些内存泄露问题; - 创建目录时使用一致的权限; - 鼠标移动速度设置不会再复位; - 没有启用远程控制功能时屏幕共享可正常使用; - 相同名字的文件夹不会再被选定为媒体共享文件夹; - 当要启用DLNA,必须使MediaExport插件启用; -- 在“标题栏”的按钮图标已经对齐。 +- 顶栏的按钮图标已经对齐。 有关变更、更新及Bug修复等情况的完整列表信息可以在官网[变更日志][1]中查看。 diff --git a/published/GParted 0.16.2 Review.md b/published/201310/GParted 0.16.2 Review.md similarity index 100% rename from published/GParted 0.16.2 Review.md rename to published/201310/GParted 0.16.2 Review.md diff --git a/published/GTK3-based Twitter App ‘Corebird’ In Development.md b/published/201310/GTK3-based Twitter App ‘Corebird’ In Development.md similarity index 100% rename from published/GTK3-based Twitter App ‘Corebird’ In Development.md rename to published/201310/GTK3-based Twitter App ‘Corebird’ In Development.md diff --git a/published/Glances – An All In One System Monitoring Tool.md b/published/201310/Glances – An All In One System Monitoring Tool.md similarity index 100% rename from published/Glances – An All In One System Monitoring Tool.md rename to published/201310/Glances – An All In One System Monitoring Tool.md diff --git a/translated/How This 75 Year-Old Piece of Paper Started Modern Computing.md b/published/201310/How This 75 Year-Old Piece of Paper Started Modern Computing.md similarity index 87% rename from translated/How This 75 Year-Old Piece of Paper Started Modern Computing.md rename to published/201310/How This 75 Year-Old Piece of Paper Started Modern Computing.md index 2af50f5949..28b48d1492 100644 --- a/translated/How This 75 Year-Old Piece of Paper Started Modern Computing.md +++ b/published/201310/How This 75 Year-Old Piece of Paper Started Modern Computing.md @@ -1,5 +1,5 @@ -一张75年前的纸,打开了现代计算机的新时代 -===== +一张在75年前开启了复印机时代的纸 +=========================== ![img](http://rack.1.mshcdn.com/media/ZgkyMDEzLzEwLzEzL2VhL1hlcm94LjM4ODIwLmpwZwpwCXRodW1iCTk1MHg1MzQjCmUJanBn/2f9f894a/5ef/Xerox.jpg) @@ -11,13 +11,13 @@ Ken Weilerstein说:“打印机改变了人们处理文档的方式,在人类的办公史上,这可是一件大事。” -###施乐的崛起 +##施乐的崛起 施乐(Xerox)称得上是最有名的打印机公司,在打印机市场持很大的占有率。就像人们谈搜索时会说“上网google一下”,谈到打印时会说“我需要xerox(复印)这份文档”,施乐公司已经渗入人们的日常生活中了。在科技领域,20世纪70年代,施乐由于在帕罗奥多研究中心(PARC)发明的用户图形界面和鼠标而声名远扬,乔帮主当年参观PARC后将很多点子用到了他的苹果机上(其中一个就是PARC研发的图形用户界面——译者注)。另外,激光打印机也借鉴了卡尔逊的发明。 刚开始,施乐并不叫施乐。位于纽约市康涅狄格州罗切斯特市的哈洛伊德(Haloid)公司看中静电打印技术,收购了卡尔逊的这项发明,之后才更名为“施乐”(在这中间,哈洛伊德还曾更名为“哈洛伊德施乐”——译者注)。 -我们继续卡尔逊的故事,这位发明家和专利代理人对手工复印法律文件感到无比厌烦,他认为世上肯定有一种复印方法能让他摆脱油墨复写纸,或者那种传统使用湿的感光纸和水的又乱又慢还昂贵的照相法。 施乐公司历史档案管理者,Ray Brewer说卡尔逊的这个涉及锌片锌粉(估计是作为感光材料——译者注)的发明即简单又容易复制。 +我们继续卡尔逊的故事,这位发明家和专利代理人对手工复印法律文件感到无比厌烦,他认为世上肯定有一种复印方法能让他摆脱油墨复写纸,或者那种传统使用湿的感光纸和水的又乱又慢还昂贵的照相法。 施乐公司的历史档案管理员Ray Brewer说卡尔逊的这个涉及锌片锌粉(估计是作为感光材料——译者注)的发明即简单又容易复制。 (Weilerstein解释说,静电复印的处理过程就是这么个回事:一张纸放在光源底下,光源会扫描整张纸,记下复印原件的信息。光线通过一组透镜照到涂有光敏材料的静电成像硒鼓上,硒鼓被曝光部分会改变其静电荷,复印原件的信息被复制到硒鼓上。之后硒像旋转,静电荷所在的地方会吸引墨粉微粒,从而在硒鼓上画出原件图像。然后硒鼓将墨粉转移到一张纸上,并加压加热,就像熨斗一样。最后,硒鼓旋转,多余的墨粉被刮下来,下一页依此循环。) @@ -29,17 +29,17 @@ Ken Weilerstein说:“打印机改变了人们处理文档的方式,在人 在20世纪50到60年代之间,施乐打印机成为办公必备用品。这项改革节省了时间和金钱。以前,复印文档的唯一方法就是使用影印机,那是相当杂乱和昂贵的操作,更糟糕的是,那种油墨纸一次最多只能复制两份。假如你想复印更多份,你必须重新打印一份出来,“并且秘书和领导希望所有的复印件都一模一样,”Brewer又出来讲话了。这就是施乐复印术的又一个好处:多份一模一样的复印件。在email和即时通信出来之前,这种复印术为部门间交流提供机会。施乐复印术催生了备忘录、办公简讯以及生日贺卡等新鲜玩意儿。 -914型复印机是施乐公司最成功的产品。在60年代到70年代初,施乐共卖掉超过20万台这个型号的复印机,《财富》杂志将它评为“美国史上最成功的产品”。Weilerstein称施乐为“你后悔没买它的股票”的公司。 +914型复印机是施乐公司最成功的产品。在60年代到70年代初,施乐共卖掉了超过20万台这个型号的复印机,《财富》杂志将它[评为][1]“美国史上最成功的产品”。Weilerstein称施乐为“你后悔没买它的股票”的公司。 这是一部大概在1960年播出的广告:http://www.youtube.com/embed/kNGdqC7QJYI -###现代计算机时代 +##现代计算机时代 直到80年代PC机开始代替打字机,施乐复印机的疯狂时代才告终结。人们依靠卡尔逊的发明创造了激光打印机,从此淘汰了功能单一的复印机。这个时候,已经没有人会把施乐的机器简单地称为复印机了,它们早已变成多功能打印机。 而这还不是施乐公司生意上所面临的唯一挑战。70年代曰本公司提供了与施乐复印机同性能但更便宜的产品。Weilerstein说:施乐失去了复印机领域的垄断地位,但凭借其在激光打印机产业的发展,施乐依然站在科技的前沿。到90年代,施乐开发Docutech系统,这种技术让你从打印机年代直接进入到印刷机年代。之后施乐又研发了iGen2000,这是种能彩印的激光打印机,能在1分钟内打印100页复印件。“然而在2000年之后的一段时间内,施乐公司再没有突出的作为,”Weilerstein说道,“并且他们还遭遇经济危机。” -施乐没有像它在罗彻斯特的邻居——伊士曼柯达一样遭遇打击。现在的柯达[处于相当阴暗的时期][1]。 +施乐没有像它在罗彻斯特的邻居——伊士曼.柯达一样遭遇打击。其时的柯达[处于相当阴暗的时期][2]。 部分原因是,与胶卷不同,文档打印依然是一个高利润的生意。还是有些部门,包括联邦政府,这些部门的员工每个月需要打印上千份文档。Weilerstein 承认随着时代发展,打印业务将继续下降:“打印业务也许是老一代的产品”,但是他又说,“但它还不会轻易消失。” @@ -49,24 +49,23 @@ Ken Weilerstein说:“打印机改变了人们处理文档的方式,在人 “我认为IT部门实行无纸办公是一个非常大的需求”,来自IDC(国际数据公司)的Boyd说,“很多公司,包括施乐,都在积极为他们提供解决方案。” - Weilerstein的观点是当所有的交流都是依赖文档时,施乐有机会成为“内容管理服务(MCS)”生意的领导者。这种服务能让企业减少使用打印机。Weilerstein在白皮书上写到:“虽然纸质文档依旧是交流的有效载体,但是当员工将不同来源的信息打印成纸质文档,并想将它们用于不同目的时,太多的文档反而无法形成有效的交流。” 在广播信息都是靠传真接收的时代,MCS应该接受广告订单;或者提供一种方式,将化工厂员工随手记下的笔记传到可供查阅的数码产品中。 ![img](http://rack.3.mshcdn.com/media/ZgkyMDEzLzEwLzExLzUwL0NoZXN0ZXJDYXJsLjAyZTI2LmpwZwpwCXRodW1iCTEyMDB4OTYwMD4/a1da164c/352/Chester-Carlson.jpg) -卡尔逊和他的静电打印机 +##卡尔逊的遗产 -在推动无纸办公的过程中,施乐不应该只是将它的生意转型,还应该帮助企业内不必要的浪费。然而,施乐还面临大量的竞争对手,最大的对手就是Adobe公司,PDF文档格式的发明者。 +在推动无纸办公的过程中,施乐不应该只是将它的生意转型,还应该帮助企业内减少不必要的浪费。然而,施乐还面临大量的竞争对手,最大的对手就是Adobe公司,PDF文档格式的发明者。 Adobe过去是做桌面打印(即通过电脑等电子手段进行文档编辑——译者注)而非纸质打印的,似乎比施乐有天然的优势。然后是苹果公司,自己赖以生存的老技术被新技术取代后,能迅速变成新技术的领导者,这在历史上是很罕见的。 -即使施乐最终失败了,卡尔逊在科技史上的贡献也是毋庸置疑的。卡尔逊的其他发明:带有流水沟的雨衣、洗鞋器等,但是他最重要的发明是一个证据,证明市场是如何回报人的坚持和开阔的视野。他的死向我们阐明了我们对公众人物的内在生活了解是如此的少。 +即使施乐最终失败了,卡尔逊在科技史上的贡献也是毋庸置疑的。卡尔逊的其他发明:带有流水沟的雨衣、洗鞋器等,但是他最重要的发明是一个证据,证明市场是如何回报人的坚持和开阔的视野。他的去世向我们阐明了我们对公众人物的内在生活了解是如此的少。 -1968年,卡尔逊和柯乃伊在阿斯托里亚的公寓内辛辛苦苦地发明静电复印技术的30年之后,卡尔逊从罗彻斯特家里回到纽约,去参加一个商业会议。他发现离开会还有一些时间,于是他走进一家电影院观看《骑虎之人(He Who Rides a Tiger)》,主演是Tom Bell和Judi Dench。当电影结束时,一个服务员看见了卡尔逊,看起来似乎正在位子上睡觉,事实并非如此。卡尔逊因心脏病去世——那是他那年第二次心脏病发作。 +1968年,卡尔逊和柯乃伊在阿斯托里亚的公寓内辛辛苦苦地发明静电复印技术的30年之后,卡尔逊从罗彻斯特家里回到纽约,去参加一个商业会议。他发现离开会还有一些时间,于是他走进一家电影院观看《骑虎人(He Who Rides a Tiger)》,主演是Tom Bell和Judi Dench。当电影结束时,一个服务员看见了卡尔逊,看起来似乎正在位子上睡觉,事实并非如此。卡尔逊因心脏病去世——那是他那年第二次心脏病发作。 -他死后,人们估计他拥有大约1.5亿美元的遗产,这笔钱使他成为1968年全美最有钱的富翁之一。然而他们估计错了,卡尔逊已将他的绝大部分财产都捐了出去。他曾对妻子说他对那种成为商业巨头的野心表示很不理解,他只想作为一个穷人死去。 +他死后,人们估计他拥有大约1.5亿美元的遗产,这笔钱使他成为1968年全美最有钱的富翁之一。然而他们发现错了,卡尔逊已将他的绝大部分财产都捐了出去。他曾对妻子说他对那种成为商业巨头的野心表示很不理解,他只想作为一个穷人死去。 图片来源:施乐公司 @@ -79,6 +78,7 @@ via: http://mashable.com/2013/10/13/xerox-history-of-copying/ 译者:[chenjintao](https://github.com/chenjintao) 校对:[jasminepeng](https://github.com/jasminepeng) -[1]:http://www.usatoday.com/story/money/business/2013/09/03/kodak-bankruptcy-ends/2759965/ - +[1]:http://money.cnn.com/2010/01/21/technology/xerox_copiers.fortune/index.htm + +[2]:http://www.usatoday.com/story/money/business/2013/09/03/kodak-bankruptcy-ends/2759965/ diff --git a/published/How To Hide Ubuntu 13.04 Unity Launcher In 5 Easy Steps.md b/published/201310/How To Hide Ubuntu 13.04 Unity Launcher In 5 Easy Steps.md similarity index 100% rename from published/How To Hide Ubuntu 13.04 Unity Launcher In 5 Easy Steps.md rename to published/201310/How To Hide Ubuntu 13.04 Unity Launcher In 5 Easy Steps.md diff --git a/published/How To Upgrade From Ubuntu 13.04 Raring To Ubuntu 13.10 Saucy Salamander.md b/published/201310/How To Upgrade From Ubuntu 13.04 Raring To Ubuntu 13.10 Saucy Salamander.md similarity index 100% rename from published/How To Upgrade From Ubuntu 13.04 Raring To Ubuntu 13.10 Saucy Salamander.md rename to published/201310/How To Upgrade From Ubuntu 13.04 Raring To Ubuntu 13.10 Saucy Salamander.md diff --git a/published/How to Install the iOS 7 Icons in Ubuntu 13.04 and Ubuntu 13.10.md b/published/201310/How to Install the iOS 7 Icons in Ubuntu 13.04 and Ubuntu 13.10.md similarity index 100% rename from published/How to Install the iOS 7 Icons in Ubuntu 13.04 and Ubuntu 13.10.md rename to published/201310/How to Install the iOS 7 Icons in Ubuntu 13.04 and Ubuntu 13.10.md diff --git a/published/How to Test Your Internet Speed with a Terminal Command.md b/published/201310/How to Test Your Internet Speed with a Terminal Command.md similarity index 100% rename from published/How to Test Your Internet Speed with a Terminal Command.md rename to published/201310/How to Test Your Internet Speed with a Terminal Command.md diff --git a/published/Install Cinnamon 1.8 in Ubuntu 13.04.md b/published/201310/Install Cinnamon 1.8 in Ubuntu 13.04.md similarity index 100% rename from published/Install Cinnamon 1.8 in Ubuntu 13.04.md rename to published/201310/Install Cinnamon 1.8 in Ubuntu 13.04.md diff --git a/published/Install Jitsi Instant Messenger in Ubuntu.md b/published/201310/Install Jitsi Instant Messenger in Ubuntu.md similarity index 100% rename from published/Install Jitsi Instant Messenger in Ubuntu.md rename to published/201310/Install Jitsi Instant Messenger in Ubuntu.md diff --git a/published/Install Rhythmbox 3.0 In Ubuntu 13.10 Or 13.04.md b/published/201310/Install Rhythmbox 3.0 In Ubuntu 13.10 Or 13.04.md similarity index 100% rename from published/Install Rhythmbox 3.0 In Ubuntu 13.10 Or 13.04.md rename to published/201310/Install Rhythmbox 3.0 In Ubuntu 13.10 Or 13.04.md diff --git a/published/Installing XScreenSaver In Ubuntu.md b/published/201310/Installing XScreenSaver In Ubuntu.md similarity index 100% rename from published/Installing XScreenSaver In Ubuntu.md rename to published/201310/Installing XScreenSaver In Ubuntu.md diff --git a/translated/Linus Torvalds Smashes the Fedora Project, Calls Them Stupid.md b/published/201310/Linus Torvalds Smashes the Fedora Project, Calls Them Stupid.md similarity index 89% rename from translated/Linus Torvalds Smashes the Fedora Project, Calls Them Stupid.md rename to published/201310/Linus Torvalds Smashes the Fedora Project, Calls Them Stupid.md index f3a39e946c..d5b45a529f 100644 --- a/translated/Linus Torvalds Smashes the Fedora Project, Calls Them Stupid.md +++ b/published/201310/Linus Torvalds Smashes the Fedora Project, Calls Them Stupid.md @@ -1,5 +1,6 @@ Linus Torvalds吐槽Fedora项目,连呼数个Stupid! -================================================================================ +========================================== + **Linus Torvalds 在Google+上发布了一个非常简单直接的关于Fedora的信息,紧接着就引发了一系列谴责和各式吐槽。** ![](http://i1-news.softpedia-static.com/images/news2/Linus-Torvalds-Smashes-the-Fedora-Project-Calls-Them-Stupid-393127-2.jpg) @@ -10,13 +11,13 @@ Linus Torvalds说:“为什么你们从来不更新安装镜像呢?难道有 问题是这样的,如果你有一台新笔记本,却配了一个老内核,你可能无法完全发挥笔记本的功能,特别是当老内核无法识别无线模块的时候。 -也许更新至新内核是个解决办法,但是为了获取新内核,你得访问互联网,但这是不可能的,因为刚不是说了你的老内核无法识别无线硬件模块吗?于是,如此反复,一个悲剧的圆圈诞生了。当然,如果刚好你的名字叫Linus Torvalds,这个问题就很好解决了,因为你知道如何不通过互联网而是靠自己来编译内核。 +也许更新至新内核是个解决办法,但是为了获取新内核,你得访问互联网,但这是不可能的,因为刚不是说了你的老内核无法识别无线硬件模块吗?于是,如此反复,一个悲剧的怪圈诞生了。当然,如果刚好你的名字叫Linus Torvalds,这个问题就很好解决了,因为你知道如何不通过互联网而是靠自己来编译内核。 消息发布没多久,一些红帽开发者开始试图解释说,他们负担不起雇人测试的开销,因此无法发布有可能无法工作的镜像。 -Torvalds说,“现在你们说‘我们没法测试镜像’,要我说你们这是[敷衍],因为现有的旧镜像本来就有问题,所以号称新的镜像有可能出问题,完全是很愚蠢(stupid)的,难道不是吗?”说完这些,Linus还不停嘴, +Torvalds说,“现在你们说‘我们没法测试镜像’,要我说你们这是[敷衍],因为现有的旧镜像本来就有问题,所以号称新的镜像有可能出问题,完全是很愚蠢(stupid)的!难道不是吗?”说完这些,Linus还不停嘴, -他继续说道:“因此,你们所有的说辞都是愚蠢(stupid)的敷衍。你们要做的就是更新Fedora19到Fedora19.x,告知人们它将‘持续更新’,然后停止为本就有问题的镜像寻找愚蠢(stupid)的借口,因为你们压根就没打算测试新镜像是否有问题。” +他继续说道:“因此,你们所有的说辞都是愚蠢(stupid)的敷衍!你们要做的就是更新Fedora19到Fedora19.x,告知人们它将‘持续更新’,然后停止为本就有问题的镜像寻找愚蠢(stupid)的借口,因为你们压根就没打算测试新镜像是否有问题。” 争论双方仍在持续发布新的消息,看起来不远的将来我们就能够看到Fedora的镜像更新了。能翻墙的小伙伴们可以到Linus Torvalds的[Google+页面][1]去围观一下凑个热闹。 @@ -24,7 +25,7 @@ Torvalds说,“现在你们说‘我们没法测试镜像’,要我说你们 via: http://news.softpedia.com/news/Linus-Torvalds-Smashes-the-Fedora-Project-Calls-Them-Stupid-393127.shtml -译者:[Mr小眼儿](https://blog.csdn.net/tinyeyeser) 校对:[校对者ID](https://github.com/校对者ID) +译者:[Mr小眼儿](https://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/Linus Torvalds Talks Linux Development at LinuxCon.md b/published/201310/Linus Torvalds Talks Linux Development at LinuxCon.md similarity index 100% rename from published/Linus Torvalds Talks Linux Development at LinuxCon.md rename to published/201310/Linus Torvalds Talks Linux Development at LinuxCon.md diff --git a/published/Linux RNG May Be Insecure After All.md b/published/201310/Linux RNG May Be Insecure After All.md similarity index 100% rename from published/Linux RNG May Be Insecure After All.md rename to published/201310/Linux RNG May Be Insecure After All.md diff --git a/published/Linux Seeks Help From More (And More Diverse) Coders.md b/published/201310/Linux Seeks Help From More (And More Diverse) Coders.md similarity index 100% rename from published/Linux Seeks Help From More (And More Diverse) Coders.md rename to published/201310/Linux Seeks Help From More (And More Diverse) Coders.md diff --git a/published/Linux Terminal--Seeing the unseen characters with cat!.md b/published/201310/Linux Terminal--Seeing the unseen characters with cat!.md similarity index 100% rename from published/Linux Terminal--Seeing the unseen characters with cat!.md rename to published/201310/Linux Terminal--Seeing the unseen characters with cat!.md diff --git a/published/Linux only needs one 'killer' game to explode, says Battlefield director.md b/published/201310/Linux only needs one 'killer' game to explode, says Battlefield director.md similarity index 100% rename from published/Linux only needs one 'killer' game to explode, says Battlefield director.md rename to published/201310/Linux only needs one 'killer' game to explode, says Battlefield director.md diff --git a/published/Lubuntu 13.10 (Saucy Salamander) Officially Released – Screenshot Tour.md b/published/201310/Lubuntu 13.10 (Saucy Salamander) Officially Released – Screenshot Tour.md similarity index 100% rename from published/Lubuntu 13.10 (Saucy Salamander) Officially Released – Screenshot Tour.md rename to published/201310/Lubuntu 13.10 (Saucy Salamander) Officially Released – Screenshot Tour.md diff --git a/published/Manage Passwords Securely in Ubuntu with KeePassX.md b/published/201310/Manage Passwords Securely in Ubuntu with KeePassX.md similarity index 100% rename from published/Manage Passwords Securely in Ubuntu with KeePassX.md rename to published/201310/Manage Passwords Securely in Ubuntu with KeePassX.md diff --git a/published/Mark Shuttleworth Thinks Apple Used the Ubuntu Edge Convergence Idea for iPhone 5S.md b/published/201310/Mark Shuttleworth Thinks Apple Used the Ubuntu Edge Convergence Idea for iPhone 5S.md similarity index 100% rename from published/Mark Shuttleworth Thinks Apple Used the Ubuntu Edge Convergence Idea for iPhone 5S.md rename to published/201310/Mark Shuttleworth Thinks Apple Used the Ubuntu Edge Convergence Idea for iPhone 5S.md diff --git a/published/201310/Mark Shuttleworth to attend and conduct keynote at OpenStack Summit in Hong Kong, November 5th - 8th 2013.md b/published/201310/Mark Shuttleworth to attend and conduct keynote at OpenStack Summit in Hong Kong, November 5th - 8th 2013.md new file mode 100644 index 0000000000..f1cd1a8ed4 --- /dev/null +++ b/published/201310/Mark Shuttleworth to attend and conduct keynote at OpenStack Summit in Hong Kong, November 5th - 8th 2013.md @@ -0,0 +1,33 @@ +Mark Shuttleworth将出席下月5~8号香港OpenStack峰会并演讲 +================================================================================ + +通过分析[Canonical][1],调查者不难发现几个改变,其中包括愿景、奋斗目标和行动准则等,都已经逐渐地将Canonical定位到业界之巅,通过在所有相关业绩和计算环境方面的成绩,它成为了领导创新发展的非常重要的部分。 + +Ubuntu桌面环境为那些追求稳定、快速、安全而优美的个人用户、公司企业和国家部门支撑了3000万台计算机的运行,这是一个巨大的成功,然而,这个桌面系统只是Canonical跨过层层困难到达IT世界之巅的蓬勃运动的一部分。 + +在云计算方面,Canonical已经深入而积极参与到OpenStack的创建上。作为最流行、可靠的、快速的开源云平台,Ubuntu正是OpenStack所基于的操作系统,这个云平台是汇集了NASA、HP和世界上的专家们,通力合作的所开发的开放云平台。 + +Ubuntu是公司和开发者所渴望使用的强大的OpenStack[原生的][2]操作系统,Ubuntu提供了众多优势和优点:Ubuntu和OpenStack发布时间是同步的,同步的发行使得OpenStack能在最新的Utuntu下运行,Canonical提供支持,包括产品、服务等,来支持最佳的OpenStack的管理和操作等。 + +**OpenStack峰会**是一个专家们的重要集会,在这里讨论、提出和分析OpenStack各个方面的内容,也包括丰富的展览、案例研究,以来自创新开发者的基调为特色,也有开发者集会和工作分享,最主要的是专家们会讨论关于目前和将来的OpenStack和云计算的格局。 + +![](http://iloveubuntu.net/pictures_me/openstack%20summit%20hong%20kong%202013.png) + +这次OpenStack峰会将会于11月5号到8号在香港举行,可以[在此注册参会][3]。 + +Canonical的**Mark Shuttleworth**已经确定会出席在香港举行的OpenStack峰会,他将做一个讲演,围绕交互性,进一步加强Ubuntu和OpenStack的结合等,并揭示关于未来的创新目标的新细节、计划和Canonical为Ubuntu所做的成就。 + +更多细节请点击 [https://www.openstack.org/summit/hk][4] + +-------------------------------------------------------------------------------- + +via: http://iloveubuntu.net/mark-shuttleworth-attend-and-conduct-keynote-openstack-summit-hong-kong-november-5th-8th-2013 + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +译者:[Vic___](http://blog.csdn.net/Vic___) 校对:[wxy](https://github.com/wxy) + +[1]:http://www.canonical.com/ +[2]:http://www.ubuntu.com/cloud/tools/openstack +[3]:https://www.eventbrite.com/event/6786581849/o21 +[4]:https://www.openstack.org/summit/hk \ No newline at end of file diff --git a/published/Mastering the “Kill” Command in Linux.md b/published/201310/Mastering the “Kill” Command in Linux.md similarity index 100% rename from published/Mastering the “Kill” Command in Linux.md rename to published/201310/Mastering the “Kill” Command in Linux.md diff --git a/published/Music App ‘Musique’ Adds Album Sorting, Gapless Playback and Playlist Tweaks.md b/published/201310/Music App ‘Musique’ Adds Album Sorting, Gapless Playback and Playlist Tweaks.md similarity index 100% rename from published/Music App ‘Musique’ Adds Album Sorting, Gapless Playback and Playlist Tweaks.md rename to published/201310/Music App ‘Musique’ Adds Album Sorting, Gapless Playback and Playlist Tweaks.md diff --git a/published/NTFS Partition Repair and Recovery In Linux.md b/published/201310/NTFS Partition Repair and Recovery In Linux.md similarity index 100% rename from published/NTFS Partition Repair and Recovery In Linux.md rename to published/201310/NTFS Partition Repair and Recovery In Linux.md diff --git a/published/Nautilus Gksu Plugin – Add ‘Open As Administrator’ Option To Your Right Click Menu.md b/published/201310/Nautilus Gksu Plugin – Add ‘Open As Administrator’ Option To Your Right Click Menu.md similarity index 100% rename from published/Nautilus Gksu Plugin – Add ‘Open As Administrator’ Option To Your Right Click Menu.md rename to published/201310/Nautilus Gksu Plugin – Add ‘Open As Administrator’ Option To Your Right Click Menu.md diff --git a/published/201310/NoSQL comparison.md b/published/201310/NoSQL comparison.md new file mode 100644 index 0000000000..6b7cd9a6f1 --- /dev/null +++ b/published/201310/NoSQL comparison.md @@ -0,0 +1,463 @@ +各种 NoSQL 的比较 +================ + +即使关系型数据库依然是非常有用的工具,但它们持续几十年的垄断地位就要走到头了。现在已经存在无数能撼动关系型数据库地位的 NoSQL,当然,这些 NoSQL 还无法完全取代它们。(也就是说,关系型数据库还是处理关系型事务的最佳方式。) + +NoSQL 与 NoSQL 之间的区别,要远大于不同的 SQL 数据库之间的区别,所以软件架构师必须要在项目一开始就选好一款合适的 NoSQL。 + +考虑到这种情况,本文为大家介绍以下几种 NoSQL 之间的区别:[Cassandra][], [Mongodb][], [CouchDB][], [Redis][], [Riak][], [Couchbase (ex-Membase)][], [Hypertable][], [ElasticSearch][], [Accumulo][], [VoltDB][], [Kyoto Tycoon][], [Scalaris][], [Neo4j][]和[HBase][]: + +##最流行的 NoSQL + +###MongoDB 2.2版 + +**开发语言:** C++ + +**主要特性:** 保留 SQL 中一些用户友好的特性(查询、索引等) + +**许可证:** AGPL (驱动: 采用Apache许可协议) + +**数据传输格式:** 自定义,二进制( BSON 文档格式) + +- 主/从备份(支持自动故障切换功能) +- 自带数据分片功能 +- 通过 javascript 表达式提供数据查询 +- 服务器端完全支持 javascript 脚本 +- 比 CouchDB 更好的升级功能 +- 数据存储使用内存映射文件技术 +- 功能丰富,性能不俗 +- 最好开启日志功能(使用 --journal 参数) +- 在 32 位系统中,内存限制在 2.5GB +- 空数据库占用 192MB 空间 +- 使用 GridFS(不是真正的文件系统)来保存大数据和元数据 +- 支持对地理数据建立索引 +- 可用于数据中心 + +**应用场景:** + +- 动态查询 +- 喜欢定义索引,而不是使用 map/reduce 功能 +- 高性能的大数据访问 +- 想使用 CouchDB 但数据变化频度太大 + +**使用案例:** + +想布署 MySQL 或 PostgreSQL,但预先定义数据字典让你望而却步。这个时候,MongoDB 是你可以考虑的选项 + +###Riak 1.2版 + +**开发语言:** Erlang、C、以及一些 JavaScript + +**主要特性:** 容错机制(当一份数据失效,服务会自动切换到备份数据,保证服务一直在线 —— 译者注) + +**许可证:** Apache + +**数据传输格式:** HTTP/REST 架构,或自定义二进制格式 + +- 可存储 BLOB(binary large object,二进制大对象,比如一张图片、一个声音文件 —— 译者注) +- 可在分布式存储和复制存储之间作协调 +- 为了保证可验证性和安全性,Riak 在 JS 和 Erlaing 中提供提交前(pre-commit)和提交后(post-commit)钩子(hook)函数(你可以在提交数据前执行一个 hook,或者在提交数据后执行一个 hook —— 译者注) +- JS 和 Erlang 提供映射和简化(map/reduce)编程模型 +- 使用 links 和 link walking ,用于图形化数据库(link 用于描述对象之间的关系,link walking 是一个用于查询对象关系的进程 —— 译者注) +- 次要标记(secondaty indeces,开发者在写数据时可用多个名称来标记一个对象 —— 译者注),一次只能用一个 +- 支持大数据对象(Luwak)(Luwak 是 Riak 中的一个服务层,为大数据量对象提供简单的、面向文档的抽象,弥补了 Riak 的 Key/Value 存储格式在处理大数据对象方面的不足 —— 译者注) +- 提供“开源”和“企业”两个版本 +- 基于Riak搜索的全文检索、建立索引和查询 +- 正在将存储后端从“Bitcask”迁移到 Google 的“LevelDB”上 +- 企业版本提供无主模式的多点复制(各点地位平等,非主从架构)和SNMP监控功能 + +**应用场景:** + +- 假如你想要类似 Dynamo 的数据库,但不想要它的庞大和复杂 +- 假如你需要良好的单点可扩展性、可用性和容错能力,但不想为多点备份买单。 + +**使用案例:** + +销售点数据收集;工厂控制系统;必须实时在线的系统;需要易于升级的网站服务器 + +###CouchDB 1.2版 + +**开发语言:** Erlang + +**主要特性:** 数据一致性;易于使用 + +**许可证:** Apache + +**数据传输格式:** HTTP/REST + +- 双向复制!(一种同步技术,每个备份点都有一份它们自己的拷贝,允许用户在存储点断线的情况下修改数据,当存储节点重新上线时,CouchDB 会对所有节点同步这些修改 —— 译者注) +- 支持持续同步或者点对点同步 +- 支持冲突检测 +- 支持主主互备!(多个数据库实时同步数据,起到备份和分摊用户并行访问量的作用 —— 译者注) +- 多版本并发控制(MVCC),写操作时不需要阻塞读操作(或者说不需要锁住数据库的读取操作) +- 向下兼容以前版本的数据 +- 可靠的 crash-only 设计(所谓 crash-only,就是程序出错时,只需重启下程序,丢弃内存的所有数据,不需要执行复杂的数据恢复操作 —— 译者注) +- 需要实时压缩数据 +- 视图(文档是 CouchDB 的核心概念,CouchDB 中的视图声明了如何从文档中提取数据,以及如何对提取出来的数据进行处理 —— 译者注):内嵌映射和简化(map/reduce)编程模型 +- 格式化的views字段:lists(包含把视图运行结果转换成非 JSON 格式的方法)和 shows(包含把文档转换成非 JSON 格式的方法)(在 CouchDB 中,一个 Web 应用是与一个设计文档相对应的。在设计文档中可以包含一些特殊的字段,views 字段包含永久的视图定义 —— 译者注) +- 能够进行服务器端文档验证 +- 能够提供身份认证功能 +- 通过 _changes 函数实时更新数据! +- 链接处理(attachment:couchDB 的每份文档都可以有一个 attachment,就像一份 email 有它的网址 —— 译者注) +- 有个 [CouchApps][1](第三方JS的应用) + +**应用场景:** + +- 用于随机数据量多、需要预定义查询的地方 +- 用于版本控制比较重要的地方 + +**使用案例:** + +可用于客户关系管理(CRM),内容管理系统(CMS);可用于主主互备甚至多机互备 + +###Redis 2.4版 + +**开发语言:** C/C++ + +**主要特性:** 快到掉渣 + +**许可证:** BSD + +**数据传输格式:** 类似 Telnet 式的交换 + +- Redis 是一个内存数据库(in-memory database,简称 IMDB,将数据放在内存进行读写,这才是“快到掉渣”的真正原因 —— 译者注),磁盘只是提供数据持久化(即将内存的数据写到磁盘)的功能(这类数据库被称为“disk backed”数据库) +- 当前不支持将磁盘作为 swap 分区,虚拟内存(VM)和 Diskstore 方式都没加到此版本(Redis 的数据持久化共有4种方式:定时快照、基于语句追加、虚拟内存、diskstore。其中 VM 方式由于性能不好以及不稳定的问题,已经被作者放弃,而 diskstore 方式还在实验阶段 —— 译者注) +- 主从备份 +- 存储结构为简单的 key/value 或 hash 表 +- 但是[操作比较复杂][2],比如:ZREVRANGEBYSCORE +- 支持 INCR(INCR key 就是将key中存储的数值加一 —— 译者注)命令(对限速和统计有帮助) +- 支持sets数据类型(以及 union/diff/inter) +- 支持 lists (以及 queue/blocking pop) +- 支持 hash sets (多级对象) +- 支持 sorted sets(高效率的表,在范围查找方面有优势) +- 支持事务处理! +- 缓存中的数据可被标记为过期 +- Pub/Sub 实现了消息订阅和推送! + +**应用场景:** + +- 适合布署快速多变的小规模数据(可以完全运行在存在中) + +**使用案例:** + +股价系统、分析系统、实时数据收集系统、实时通信系统、以及取代 memcached + +##Google Bigtable 的衍生品 + +###HBase 0.92.0 版 + +**开发语言:** Java + +**主要特性:** 支持几十亿行*几百万列的大表 + +**许可证:** Apache + +**数据传输格式:** HTTP/REST (也支持 Thrift 开发框架) + +- 仿造 Google 的 BigTable +- 使用 Hadoop 的 HDFS 文件系统作为存储 +- 使用 Hadoop 的映射和简化(map/reduce)编程模型 +- 查询条件被推送到服务器端,由服务器端执行扫描和过滤 +- 对实时查询进行优化 +- 高性能的 Thrift gateway(访问 HBase 的接口之一,特点是利用 Thrift 序列化支持多种语言,可用于异构系统在线访问 HBase 表数据 —— 译者注) +- 使用 HTTP 通信协议,支持 XML、Protobuf 以及二进制格式 +- 支持基于 Jruby(JIRB)的shell +- 当配置信息有更改时,支持 rolling restart(轮流重启数据节点) +- 随机读写性能与 MySQL 一样 +- 一个集群可由不同类型的结点组成 + +**应用场景:** + +- Hadoop 可能是在大数据上跑 Map/Reduce 业务的最佳选择 +- 如果你已经搭建了 Hadoop/HDFS 架构,HBase 也是你最佳的选择。 + +**使用案例:** + +搜索引擎;日志分析系统;扫描大型二维非关系型数据表。 + +###Cassandra 1.2版 + +**开发语言:** Java + +**主要特性:** BigTable 和 Dynamo的完美结合(Cassandra 以 Amazon 专有的完全分布式的 Dynamo 为基础,结合了Google BigTable基于 Column Family 的数据模型 —— 译者注) + +**许可证:** Apache + +**数据传输格式:** Thrift 和自定义二进制 CQL3(即 Cassandra 查询语言第3版 —— 译者注) + +- 可以灵活调整对数据的分布式或备份式存储(通过设置N,R,W之间的关系)(NRW是数据库布署模型中的概念,N是存储网络中复制数据的节点数,R是网络中读数据的节点数,W是网络中写数据的节点数。一个环境中N值是固定的,设置不同的WR值组合能在数据可用性和数据一致性之间取得不同的平衡,可参考 CAP 定理 —— 译者注) +- 按列查询,按keys值排序后存储(需要包含你想要搜索的任何信息)(Cassandra 的数据模型借鉴自 BigTable 的列式存储,列式存储可以理解成这样,将行ID、列簇号,列号以及时间戳一起,组成一个Key,然后将Value按Key的顺序进行存储 —— 译者注) +- 类似 BigTable 的特性:列、列簇 +- 支持分布式 hash 表,使用“类 SQL” 语言 —— CQL(但没有 SQL 中的 JOIN 语句) +- 可以为数据设置一个过期时间(使用 INSERT 指令) +- 写性能远高于读性能(读性能的瓶颈是磁盘 IO) +- 可使用 Hadoop 的映射和简化(map/reduce)编程模型 +- 所有节点都相似,这点与 Hadop/HBase 架构不同 +- 可靠的跨数据中心备份解决方案 + +**应用场景:** + +- 写操作多于读操作的环境(比如日志系统) +- 如果系统全部由 JAVA 组成(“没人会因为使用了 Apache 许可下的产品而被炒鱿鱼”(此句貌似是网上有人针对“Apache considered harmful”一文所作的回应 —— 译者注)) + +**使用案例:** + +银行、金融机构;写性能强于读性能,所以 Cassandra 天生就是用来作数据分析的。 + +###Hypertable 0.9.6.5版 + +**开发语言:** C++ + +**主要特性:** HBase 的精简版,但比 HBase 更快 + +**许可证:** GPL 2.0 + +**数据传输格式:** Thrift,C++库,或者 HQL shell + +- 采用与 Google BigTable 相似的设计 +- 运行在 Hadoop HDFS 之上 +- 使用自己的“类 SQL”语言 —— HQL +- 可以根据 key 值、单元(cell)进行查找,可以在列簇上查找 +- 查询数据可以指定 key 或者列的范围 +- 由百度公司赞助(百度早在2009年就成为这个项目的赞助商了 —— 好吧译者表示有点大惊小怪了:P) +- 能保留一个值的 N 个历史版本 +- 表在命名空间内定义 +- 使用 Hadoop 的 Map/reduce 模型 + +**应用场景:** + +- 假如你需要一个更好的HBase,就用Hypertable吧 + +**使用案例:** + +与HBase一样,就是搜索引擎被换了下;分析日志数据的系统;适用于浏览大规模二维非关系型数据表。 + +###Accumulo 1.4版 + +**开发语言:** Java 和 C++ + +**主要特性:** 一个有着单元级安全的 BigTable + +**许可证:** Apache + +**数据传输格式:** Thrift + +- 另一个 BigTable 的复制品,也是跑在 Hadoop 的上层 +- 单元级安全保证 +- 允许使用比内存容量更大的数据列 +- 通过 C++ 的 STL 可保持数据从 JAVA 环境的内存映射出来 +- 使用 Hadoop 的 Map/reduce 模型 +- 支持在服务器端编程 + +**应用场景:** + +- HBase的替代品 + +**使用案例:** + +与HBase一样,就是搜索引擎被换了下;分析日志数据的系统;适用于浏览大规模二维非关系型数据表。 + +##特殊用途 + +###Neo4j V1.5M02 版 + +**开发语言:** Java + +**主要特性:** 图形化数据库 + +**许可证:** GPL,AGPL(商业用途) + +**数据传输格式:** HTTP/REST(或内嵌在 Java 中) + +- 可独立存在,或内嵌在 JAVA 的应用中 +- 完全的 ACID 保证(包括正在处理的数据) +- 节点和节点的关系都可以拥有原数据 +- 集成基于“模式匹配”的查询语言(Cypher) +- 支持“Gremlin”图形转化语言 +- 可对节点与节点关系进行索引 +- 良好的自包含网页管理技术 +- 多个算法实现高级文件查找功能 +- 可对 key 与 key 的关系进行索引 +- 优化读性能 +- 在 JAVA API 中实现事务处理 +- 可运行脚本 Groovy 脚本 +- 在商用版本中提供在线备份,高级监控和高可用性功能 + +**应用场景:** + +- 适用于用图形显示复杂的交互型数据。 + +**使用案例:** + +搜寻社交关系网、公共传输链、公路路线图、或网络拓扑结构 + +###ElasticSearch 0.20.1 版 + +**开发语言:** Java + +**主要特性:** 高级搜索 + +**许可证:** Apache + +**数据传输格式:** 通过 HTTP 使用 JSON 进行数据索引(插件:Thrift, memcached) + +- 以 JSON 形式保存数据 +- 提供版本升级功能 +- 有父文档和子文档功能 +- 文档有过期时间 +- 提供复杂多样的查询指令,可使用脚本 +- 支持写操作一致性的三个级别:ONE、QUORUM、ALL +- 支持通过分数排序 +- 支持通过地理位置排序 +- 支持模糊查询(通过近似数据查询等方式实现) +- 支持异步复制 +- 自动升级,也可通过设置脚本升级 +- 可以维持自动的“统计组”(对调试很有帮助) +- 只有一个开发者(kimchy) + +**应用场景:** + +- 当你有可伸缩性很强的项目并且想拥有“高级搜索”功能。 + +**使用案例:** + +可布署一个约会服务,提供不同年龄、不同地理位置、不同品味的客户的交友需求。或者可以布署一个基于多项参数的排行榜。 + +##其他 + +(不怎么有名,但值得在这里介绍一下) + +###Couchbase (ex-Membase) 2.0 版 + +**开发语言:** Erlang 和 C + +**主要特性:** 兼容 Memcache,但数据是持久化的,并且支持集群 + +**许可证:** Apache + +**数据传输格式:** 缓存和扩展(memcached + extensions) + +- 通过 key 访问数据非常快(20万以上IOPS) +- 数据保存在磁盘(不像 Memcache 保存在内存中 —— 译者注) +- 在主主互备中,所有节点数据是一致的 +- 提供类似 Memcache 将数据保存在内存的功能 +- 支持重复数据删除功能 +- 友好的集群管理 Web 界面 +- 支持池和多丛结构的代理(利用 Moxi 项目) +- 支持 Map/reduce 模式 +- 支持跨数据中心备份 + +**应用场景:** + +- 适用于低延迟数据访问系统,高并发和高可用系统。 + +**使用案例:** + +低延迟可用于广告定投;高并发可用于在线游戏(如星佳公司)。 + +###VoltDB 2.8.4.1版 + +**开发语言:** Java + +**主要特性:** 快速的事务处理和数据变更 + +**许可证:** GPL 3 + +**数据传输格式:** 专有方式 + +- 运行在内存的关系型数据库 +- 可以将数据导入到 Hadoop +- 支持 ANSI SQL +- 在 JAVA 环境中保存操作过程 +- 支持跨数据中心备份 + +**应用场景:** + +- 适用于在大量传入数据中保证快速反应能力的场合。 + +**使用案例:** + +销售点数据分析系统;工厂控制系统。 + +###Scalaris 0.5版 + +**开发语言:** Erlang + +**主要特性:** 分布式 P2P 键值存储 + +**许可证:** Apache + +**数据传输和存储的方式:** 自有方式和 基于JSON的远程过程调用协议 + +- 数据保存在内存中(使用 Tokyo Cabinet 作为后台时,数据可以持久化到磁盘中) +- 使用 YAWS 作为 Web 服务器 +- Has transactions (an adapted Paxos commit) +- 支持事务处理(基于 Paxos 提交)(Paxos 是一种基于消息传递模型的一致性算法 —— 译者注) +- 支持分布式数据的一致性写操作 +- 根据 CAP 定理,数据一致性要求高于数据可用性(前提是在一个比较大的网络分区环境下工作)(CAP 定理:数据一致性consistency、数据可用性availability、分隔容忍partition tolerance是分布式计算系统的三个属性,一个分布式计算系统不可能同时满足全部三项) + +**应用场景:** + +- 如果你喜欢 Erlang 并且想要使用 Mnesia 或 DETS 或 ETS,但你需要一个能使用多种语言(并且可扩展性强于 ETS 和 DETS)的技术,那就选它吧。 + +**使用案例:** + +使用基于 Erlang 的系统,但是想通过 Python、Ruby 或 JAVA 访问数据库 + +###Kyoto Tycoon 0.9.56版 + +**开发语言:** C++ + +**主要特性:** 轻量级网络数据库管理系统 + +**许可证:** GPL + +**数据传输和存储的方式:** HTTP (TSV-RPC or REST) + +- 基于 Kyoto Cabinet, 是 Tokyo Cabinet 的成功案例 +- 支持多种存储后端:Hash,树、目录等等(所有概念都是从 Kyoto Cabinet 那里来的) +- Kyoto Cabinet 可以达到每秒100万次插入/查询操作(但是 Tycoon 由于瓶颈问题,性能比 Cabinet 要差点) +- 服务器端支持 Lua 脚本语言 +- 支持 C、JAVA、Python、Ruby、Perl、Lua 等语言 +- 使用访问者模式开发(visitor patten:让开发者能在不修改类层次结构的前提下,定义该类层次结构的操作 —— 不明白就算了,译者也不明白) +- 支持热备、异步备份 +- 支持内存数据库在后端执行快照 +- 自动过期处理(可用来布署一个缓存服务器) + +**应用场景:** + +- 当你想要一个很精准的后端存储算法引擎,并且速度是刚需的时候,玩玩 Kyoto Tycoon 吧。 + +**使用案例:** + +缓存服务器;股价查询系统;数据分析系统;实时数据控制系统;实时交互系统;memcached的替代品。 + +当然,上述系统的特点肯定不止列出来这么点。我只是列出了我认为很关键的信息。另外科技发展迅猛,技术改变得非常快。 + +附:现在下定论比较孰优孰劣还为时过早。上述数据库的版本号以及特性我会一个一个慢慢更新。相信我,这些数据库的特性不会变得很快。 + +--- + +via: http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis + +译者:[bazz2](https://github.com/bazz2) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[Cassandra]:http://cassandra.apache.org/ +[Mongodb]:http://www.mongodb.org/ +[CouchDB]:http://couchdb.apache.org/ +[Redis]:http://redis.io/ +[Riak]:http://basho.com/riak/ +[Couchbase (ex-Membase)]:http://www.couchbase.org/membase +[Hypertable]:http://hypertable.org/ +[ElasticSearch]:http://www.elasticsearch.org/ +[Accumulo]:http://accumulo.apache.org/ +[VoltDB]:http://voltdb.com/ +[Kyoto Tycoon]:http://fallabs.com/kyototycoon/ +[Scalaris]:https://code.google.com/p/scalaris/ +[Neo4j]:http://neo4j.org/ +[HBase]:http://hbase.apache.org/ + +[1]:http://couchapp.org/ +[2]:http://redis.io/commands diff --git a/published/Open source is brutal- an interview with Google's Chris DiBona.md b/published/201310/Open source is brutal- an interview with Google's Chris DiBona.md similarity index 100% rename from published/Open source is brutal- an interview with Google's Chris DiBona.md rename to published/201310/Open source is brutal- an interview with Google's Chris DiBona.md diff --git a/published/Powerful chess application PyChess 0.12 BETA 4 released with new improvements.md b/published/201310/Powerful chess application PyChess 0.12 BETA 4 released with new improvements.md similarity index 100% rename from published/Powerful chess application PyChess 0.12 BETA 4 released with new improvements.md rename to published/201310/Powerful chess application PyChess 0.12 BETA 4 released with new improvements.md diff --git a/published/Quick-n-easy command-line tips.md b/published/201310/Quick-n-easy command-line tips.md similarity index 100% rename from published/Quick-n-easy command-line tips.md rename to published/201310/Quick-n-easy command-line tips.md diff --git a/published/Red Hat Enterprise Linux 6.5 Beta Can Remotely Control Windows 8.md b/published/201310/Red Hat Enterprise Linux 6.5 Beta Can Remotely Control Windows 8.md similarity index 100% rename from published/Red Hat Enterprise Linux 6.5 Beta Can Remotely Control Windows 8.md rename to published/201310/Red Hat Enterprise Linux 6.5 Beta Can Remotely Control Windows 8.md diff --git a/published/Red Hat Expands Virtualization Options With Open-Source Docker.md b/published/201310/Red Hat Expands Virtualization Options With Open-Source Docker.md similarity index 100% rename from published/Red Hat Expands Virtualization Options With Open-Source Docker.md rename to published/201310/Red Hat Expands Virtualization Options With Open-Source Docker.md diff --git a/published/Red Hat--Big bucks, big Linux.md b/published/201310/Red Hat--Big bucks, big Linux.md similarity index 100% rename from published/Red Hat--Big bucks, big Linux.md rename to published/201310/Red Hat--Big bucks, big Linux.md diff --git a/published/Salvation Prophecy Military Space Epic Arrives on Steam for Linux.md b/published/201310/Salvation Prophecy Military Space Epic Arrives on Steam for Linux.md similarity index 100% rename from published/Salvation Prophecy Military Space Epic Arrives on Steam for Linux.md rename to published/201310/Salvation Prophecy Military Space Epic Arrives on Steam for Linux.md diff --git a/published/Semplice 5 review – High Hopes.md b/published/201310/Semplice 5 review – High Hopes.md similarity index 100% rename from published/Semplice 5 review – High Hopes.md rename to published/201310/Semplice 5 review – High Hopes.md diff --git a/published/Shotwell 0.15 released with new features and fixes.md b/published/201310/Shotwell 0.15 released with new features and fixes.md similarity index 100% rename from published/Shotwell 0.15 released with new features and fixes.md rename to published/201310/Shotwell 0.15 released with new features and fixes.md diff --git a/translated/System 76 Ubuntu Touchscreen Laptop Now Available to Pre-Order.md b/published/201310/System 76 Ubuntu Touchscreen Laptop Now Available to Pre-Order.md similarity index 55% rename from translated/System 76 Ubuntu Touchscreen Laptop Now Available to Pre-Order.md rename to published/201310/System 76 Ubuntu Touchscreen Laptop Now Available to Pre-Order.md index 6aa541a9c4..687ff97223 100644 --- a/translated/System 76 Ubuntu Touchscreen Laptop Now Available to Pre-Order.md +++ b/published/201310/System 76 Ubuntu Touchscreen Laptop Now Available to Pre-Order.md @@ -1,14 +1,13 @@ -现在可以预订System 76 Ubuntu触摸笔记本了!!! - -================================================================================ +现在可以预订System 76的Ubuntu触摸笔记本了!!! +=================================== ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/daru4-wallpaper-fall-homepage-750x423.jpg) **Ubuntu PC 制造商 System 76 已经公布了一款搭载Ubuntu 13.10的触摸笔记本.** -Darter Ultra Thin 14.1寸高清**搭载Ubuntu多点触摸显示**,0.9''的厚度,地盘重4.60英镑(约2kg),电池大约能支持5个小时 - 受Linux电池管理的影响,这是令人震撼的. +Darter Ultra Thin 14.1寸高清笔记本 **搭载了Ubuntu多点触摸显示**,0.9英寸的厚度,约重4.60磅(大约2公斤)。令人吃惊的是,虽然受到了Linux电池管理缺陷的影响,电池居然能支持5个小时。 -在笔记本的触摸屏附近也提供很多传统的输入设备,也就是多点的触摸板和巧克力键盘. +除了触摸屏外,也提供了传统的输入设备,如多点触摸板和巧克力式的键盘。 ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/daru4-logo-back.jpg) @@ -16,30 +15,30 @@ Darter Ultra Thin 14.1寸高清**搭载Ubuntu多点触摸显示**,0.9''的厚度 ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/daru4-ports-left.jpg) -普通版**定价在899美元左右**,它带有: +普通版 **定价在899美元左右**,它带有: + - Inel i5-4200U @ 1.5Ghz (双核) - 4GB DDR3 RAM - Intel HD 4400 显卡 - 500 GB 5400 RPM HDD - 集成WIFI和蓝牙 -- 1MP 网络摄像头 +- 一百万像素的网络摄像头 +对于所有System 76电脑来说,你可以通过提高规格和添加可选的额外设备来定制你的神机。Dater提供的可选项包括有: -对于所有System 76电脑来说,你可以通过提高规格和添加可选的额外设备来精饰你的梦幻机.Dater提供的可选项包括有: -- - Inter 酷睿i5和i7 CPU - 能扩展到16GB的DDR3 RAM - 双储存,包括SSD + HDD的联合体. +提供所有必要的端口: -提供所有必要的端口: - HDMI 输出 - 以太网 - 2个USB3.0插口 - 分开的耳机和麦克风插孔 - SD 读卡器 -更多关于Dater Thin的信息请转向System 76站点,到10月28号后,你可以预订Dater Thin,只需5美元在美国的快递费. +更多关于Dater Thin的信息请访问System 76站点,到10月28号前,你都可以预订Dater Thin。 - [System76 Darter UltraThin 笔记本][1] @@ -49,6 +48,6 @@ via: http://www.omgubuntu.co.uk/2013/10/system76-touchscreen-ubuntu-laptop-avail 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID) +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[wxy](https://github.com/wxy) [1]:https://www.system76.com/laptops/model/daru4 diff --git a/published/The Debian OpenSSL Bug- Backdoor or Security Accident.md b/published/201310/The Debian OpenSSL Bug- Backdoor or Security Accident.md similarity index 100% rename from published/The Debian OpenSSL Bug- Backdoor or Security Accident.md rename to published/201310/The Debian OpenSSL Bug- Backdoor or Security Accident.md diff --git a/published/The Linux Backdoor Attempt of 2003.md b/published/201310/The Linux Backdoor Attempt of 2003.md similarity index 100% rename from published/The Linux Backdoor Attempt of 2003.md rename to published/201310/The Linux Backdoor Attempt of 2003.md diff --git a/published/The Utilite Linux Mini PC.md b/published/201310/The Utilite Linux Mini PC.md similarity index 100% rename from published/The Utilite Linux Mini PC.md rename to published/201310/The Utilite Linux Mini PC.md diff --git a/published/Top Things To Do After Installing Ubuntu 13.10 ‘Saucy Salamander’.md b/published/201310/Top Things To Do After Installing Ubuntu 13.10 ‘Saucy Salamander’.md similarity index 100% rename from published/Top Things To Do After Installing Ubuntu 13.10 ‘Saucy Salamander’.md rename to published/201310/Top Things To Do After Installing Ubuntu 13.10 ‘Saucy Salamander’.md diff --git a/published/Torvalds--Apple's free OS is no threat to Linux.md b/published/201310/Torvalds--Apple's free OS is no threat to Linux.md similarity index 100% rename from published/Torvalds--Apple's free OS is no threat to Linux.md rename to published/201310/Torvalds--Apple's free OS is no threat to Linux.md diff --git a/published/201310/Torvalds--SteamOS will“really help”Linux on desktop.md b/published/201310/Torvalds--SteamOS will“really help”Linux on desktop.md new file mode 100644 index 0000000000..dcea80016e --- /dev/null +++ b/published/201310/Torvalds--SteamOS will“really help”Linux on desktop.md @@ -0,0 +1,41 @@ +Torvalds:SteamOS将“真正帮助”Linux桌面系统实现逆袭 +================================================================================ +Linus Torvalds非常欢迎Valve公司的SteamOS系统入驻Linux平台,表示它将大力推动Linux桌面系统的发展。 + +Linux之父大力赞扬Valve的“独到眼光”,表示这一合作将迫使其他生产商开始认真重视Linux,特别是游戏开发商们将开始摒弃Windows。 + +他在上周三爱丁堡举行的LinuxCon大会上说道,“我爱Steam —— 我认为这是一个能真正帮助Linux桌面系统的大好机会!” + +Valve上个月发布了关于SteamOS的声明,表示这将是一种把PC游戏带入起居室的新体验。用户可以在自己任意的PC电脑上安装SteamOS,而Valve将在另一端负责SteamOS匹配各个生产商的硬件系统。 + +> 我爱Steam —— 我认为这是一个能真正帮助Linux桌面系统的大好机会! + +硬件生产商们也将大力扩展对Windows以外系统的驱动程序支持,而SteamOS将以此获得更多游戏玩家和开发商的青睐。 + + +说到这一点,就涉及到了Torvalds的痛处。去年Nvidia宣布放弃支持开源系统图形芯片的驱动开发,他对此进行了[猛烈抨击][1]。如今SteamOS选择了Linux,Nvidia的大门重新对Linux社区敞开,Torvalds预言这预示着新的发展机会即将到来。 + +他说,“我并不是说它单单只是帮助我们吸引显卡厂商的注意,它还迫使Linux的各个发行版意识到Steam是一个发展趋势,他们必须抓住这个趋势,因为一旦落下被孤立,发行版们是负担不起的,他们都想让人们在自己的平台上运行这套系统玩游戏。” + +“这就是‘标准化’的最佳例证,”他说,“我认为好的标准能使人们事半功倍、信心满满,足以推动整个市场的发展。” + +###漂亮的登录窗口### + +Torvalds表示,Linux在桌面系统领域一直表现不佳的另一个原因是开发者们总是专注于毫无用处的用户体验特效(UX features)。 + +“Linux始终在各个领域表现都非常出色,但我还是对Linux桌面系统的现状多少有些失望,内耗、不干正事、一团糟。” + +他还补充道,“我真心希望Linux的各个桌面系统能携起手来,更多专注于技术,而不是总想着如何让登陆窗口看起来更漂亮。” + +Torvalds并没有提到某个具体的公司,但之前[他曾对Google的Chromebook Pixel大加赞赏][2],认为跟基于Linux的Chrome OS比起来,其他PC就是一坨“crap”(译者注,这个单词读shi,第三声)。 + +-------------------------------------------------------------------------------- + +via: http://www.pcpro.co.uk/news/384934/torvalds-steamos-will-really-help-linux-on-desktop + +译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.wired.com/wiredenterprise/2012/06/torvalds-nvidia-linux/ +[2]:https://plus.google.com/+LinusTorvalds/posts/dk1aiW4JjHd \ No newline at end of file diff --git a/published/Travel support applications to attend openSUSE Summit opened!.md b/published/201310/Travel support applications to attend openSUSE Summit opened!.md similarity index 100% rename from published/Travel support applications to attend openSUSE Summit opened!.md rename to published/201310/Travel support applications to attend openSUSE Summit opened!.md diff --git a/published/Ubuntu 13.10 (Saucy Salamander) Officially Released.md b/published/201310/Ubuntu 13.10 (Saucy Salamander) Officially Released.md similarity index 100% rename from published/Ubuntu 13.10 (Saucy Salamander) Officially Released.md rename to published/201310/Ubuntu 13.10 (Saucy Salamander) Officially Released.md diff --git a/translated/Ubuntu 13.10 Released – But Is It An Essential Upgrade.md b/published/201310/Ubuntu 13.10 Released – But Is It An Essential Upgrade.md similarity index 69% rename from translated/Ubuntu 13.10 Released – But Is It An Essential Upgrade.md rename to published/201310/Ubuntu 13.10 Released – But Is It An Essential Upgrade.md index c4bb0f6bed..7f8f968fe2 100644 --- a/translated/Ubuntu 13.10 Released – But Is It An Essential Upgrade.md +++ b/published/201310/Ubuntu 13.10 Released – But Is It An Essential Upgrade.md @@ -1,8 +1,9 @@ -Ubuntu 13.10 发布 - 升级是否是必须的 ? -================================================================================ +Ubuntu 13.10 发布 - 值得升级吗 ? +=================================== + ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Screen-Shot-2013-10-16-at-15.43.jpg) -**今天是Ubuntu 13.10 发布的日子。经过6个月紧锣密鼓地开发,‘Saucy Salamander’ 终于可供下载了。** +**经过6个月紧锣密鼓地开发,‘Saucy Salamander’ 终于发布了。** 拥有超过两千万的用户基础,Ubuntu的每次更新,无论最终变动的结果多么得琐碎、细小,都能引起关注。这次发布也不例外。 @@ -12,60 +13,61 @@ Ubuntu 13.10 发布 - 升级是否是必须的 ? **下载 Ubuntu 13.10**:[http://releases.ubuntu.com/13.10/][1] -## “Ubuntu 13.10 令人厌烦的” - 网络 ## +## “Ubuntu 13.10 令人厌烦的” - 来自互联网 -我见过许多人-科技记者,博主,还有评论家,用“令人讨厌的”字眼来形容Ubuntu 13.10。 +我见过许多人,有科技记者、博主,还有评论家,用“令人讨厌的”字眼来形容Ubuntu 13.10。 -诚然,Saucy Salamander比之先前的版本并没有为桌面版添加多少新的特色,但是新的版本确实变动了,也改善了,只不过大多数变动相较而言很小。 +诚然,Saucy Salamander比之先前的版本并没有为桌面用户添加多少新的特色,但是新的版本确实变化了,也改善了,只不过 **大多数** 变动相较而言很小。 -强调一下这里的‘most’。 +强调一下这里的‘大多数’。 **工具箱花样繁多** -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/09/as2.jpg) +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/09/as2.jpg) *这些东西究竟有多大用处呢?* -Unity的新的 搜索建议 功能是新版本中大的亮点。你的每一次搜索,都会把大范围在线资源的相关信息整合到一起,然后利用语义智能把筛选出来的东西放到工具箱。 +Unity的新的_搜索建议_功能是新版本中大的亮点。你的每一次搜索,都会把大范围的在线资源的相关信息整合到一起,然后利用语义智能把筛选出来的东西放到Dash中。 *Amazon, eBay, Etsy, Wikipedia, Weather Channel, SoundCloud* - 信息来源超过50个网站 + > ‘…莫名其妙,乱七八糟。’ 字面上貌似这个功能挺有用的:按下tab键,,你就可以绕过浏览器找到任何你想搜寻的东西,随便一些东西,然后从桌面上就可以浏览结果。 -事实上,帮助挺少,阻碍倒是不小。那么多的web服务都给一个搜索的关键字条目提供结果 - 无论看起来有多无碍 - -都导致工具箱充斥着莫名其妙、乱七八糟、不相关的东西。 +事实上,帮助挺少,阻碍倒是不小。那么多的web服务都给一个搜索的关键字条目提供结果 - 无论看起来有多无碍 - 都导致工具箱充斥着莫名其妙、乱七八糟、不相关的东西。 + > ‘以当前这种形式,该功能还超越不了浏览器体验’ 也不是没有尝试过结束这种混乱,代之以秩序井然。给查找结果分门别类,比如,购物,音乐,视频。由结果过滤器来控制泛滥的信息。 但是,坦白说,以当前这种形式,该功能还超越不了浏览器体验。谷歌就比较聪明,知道自己要找什么,把结果以一种易于浏览,易于过滤的形式呈现出来。 -Ubuntu开发者称**搜索结果会变得越来越相关的**,因为该服务可以从用户那里自主学习。让我们拭目以待。 +Ubuntu开发者称 **搜索结果会变得越来越相关的**,因为该服务可以从用户那里自主学习。让我们拭目以待。 + +**关闭搜索建议功能** -关闭范围建议功能 ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/06/Screen-Shot-2013-06-07-at-12.59.jpg) - -*每一个范围都可以单独关闭* +*每一个搜索范围都可以单独关闭* 关闭“搜索建议”功能很简单,听从我的建议,就可以单独关闭给你带来混乱结果的范围。这样你就能够继续使用该功能,同时又过滤掉不相干的东西。 ## Ubuntu 13.10 桌面 ## -**Indicator Keyboard** -**指示灯键盘** + +**键盘指示器** ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/a.jpg) -无论你需要与否,新的‘指示灯键盘’已经添加到Ubuntu中,该功能使得在多种语言之间的切换更容易。 +无论你需要与否,新的‘键盘指示器’已经添加到Ubuntu中,该功能使得在多种语言之间的切换更容易。 可以在Text Entry Settings上面找到该功能入口,关闭它,然后取消紧挨着‘Show Current Input Source in Menu Bar’勾选框。 -**Ubuntu 登陆** +**Ubuntu 登录** ![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/08/Screen-Shot-2013-08-29-at-20.56.45-750x594.png) -登陆、注册页面也加到了Ubuntu安装程序里头,安装后就不需要再配置账号了。 +登录、注册页面也加到了Ubuntu安装程序里头,安装后就不需要再配置账号了。 **性能** -Unity 7正常运行远远超出原先预定的时间(14.04 LTS默认情况下,在4月到期),其中一些急需维修了。 +Unity 7的使用已经远超原先预定的时间(14.04 LTS默认情况下,在4月到期),其中一些急需改进了。 我自己并没有切身体验一下,但是那些体验过的人们都注意到该发行版性能有显著提升。 @@ -78,10 +80,10 @@ Shotwell都已经预安装好了。 Ubuntu仓库也包含一些其他的流行的应用,比如[Geary mail client][2] 和比较受欢迎的图片编辑器 GIMP。 -Finally, [GTK3 apps now look better under Ubuntu’s default theme][3]. 最后, [使用Ubuntu默认主题,GTK3 应用看起来好多了][3]. ## 总结 ## + > 一个健壮、可靠的发行版,与其说是崭新的开始,不如说是一个脚注。 Ubuntu 13.10是一个健壮、可靠的发行版, 巩固了其作为“走出去”的Linux发行版的地位,对新用户和丰富的专业人员均适用。 @@ -94,8 +96,8 @@ via: http://www.omgubuntu.co.uk/2013/10/ubuntu-13-10-review-available-for-downlo 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -译者:[译者ID](https://github.com/l3b2w1) 校对:[校对者ID](https://github.com/校对者ID) +译者:[l3b2w1](https://github.com/l3b2w1) 校对:[wxy](https://github.com/wxy) [1]:http://releases.ubuntu.com/13.10/ [2]:http://www.omgubuntu.co.uk/2013/10/geary-0-4-released-with-new-look-new-features -[3]:http://www.omgubuntu.co.uk/2013/08/ub untu-themes-fix-coming-to-saucy \ No newline at end of file +[3]:http://www.omgubuntu.co.uk/2013/08/ubuntu-themes-fix-coming-to-saucy \ No newline at end of file diff --git a/published/Ubuntu 13.10 Review--A great Linux desktop gets better.md b/published/201310/Ubuntu 13.10 Review--A great Linux desktop gets better.md similarity index 100% rename from published/Ubuntu 13.10 Review--A great Linux desktop gets better.md rename to published/201310/Ubuntu 13.10 Review--A great Linux desktop gets better.md diff --git a/published/201310/Ubuntu 14.04 LTS Named ‘Trusty Tahr’.md b/published/201310/Ubuntu 14.04 LTS Named ‘Trusty Tahr’.md new file mode 100644 index 0000000000..d858e7a8bd --- /dev/null +++ b/published/201310/Ubuntu 14.04 LTS Named ‘Trusty Tahr’.md @@ -0,0 +1,21 @@ +Ubuntu 14.04 LTS命名为“可靠的塔尔羊(Trusty Tahr)” +================================================================================ +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Stuffed_Arabian_Tahr-750x5243.jpg) + +**妙趣横生的名称评选已经结束:Ubuntu 14.04 LTS的吉祥物最终敲定 —— “可靠的塔尔羊”(Trusty Tahr)。** + +有人可能会问,“*塔尔羊是个什么……羊?*”万能的Google说,它是一种类似山羊的哺乳动物,分布于阿曼、印度以及喜马拉雅山脉地区。 + +Ubuntu创始人[Shuttleworth说][1]:这样一种“脚踏实地”的动物恰恰反应出Ubuntu 14.04 LTS的目标,构筑稳健的桌面环境,正如Ubuntu一直以来专注的“*……性能、精益求精、易于维护以及技术至上。*” + +Ubuntu 14.04 LTS服务器版和桌面版计划于2014年4月份发布。 + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2013/10/ubuntu-14-04-lts-named-trusty-tahr + +译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.markshuttleworth.com/archives/1295 \ No newline at end of file diff --git a/published/Ubuntu Desktop Guide updated for Saucy in Ubuntu 13.10.md b/published/201310/Ubuntu Desktop Guide updated for Saucy in Ubuntu 13.10.md similarity index 100% rename from published/Ubuntu Desktop Guide updated for Saucy in Ubuntu 13.10.md rename to published/201310/Ubuntu Desktop Guide updated for Saucy in Ubuntu 13.10.md diff --git a/published/Ubuntu Touch--Ubuntu OS for Smartphone is Almost Ready.md b/published/201310/Ubuntu Touch--Ubuntu OS for Smartphone is Almost Ready.md similarity index 100% rename from published/Ubuntu Touch--Ubuntu OS for Smartphone is Almost Ready.md rename to published/201310/Ubuntu Touch--Ubuntu OS for Smartphone is Almost Ready.md diff --git a/published/Ubuntu Tweak 0.8.6 released with Ubuntu 13.10 support and improvements.md b/published/201310/Ubuntu Tweak 0.8.6 released with Ubuntu 13.10 support and improvements.md similarity index 100% rename from published/Ubuntu Tweak 0.8.6 released with Ubuntu 13.10 support and improvements.md rename to published/201310/Ubuntu Tweak 0.8.6 released with Ubuntu 13.10 support and improvements.md diff --git a/published/Ubuntu extends its Windows Azure availability with full Juju support.md b/published/201310/Ubuntu extends its Windows Azure availability with full Juju support.md similarity index 100% rename from published/Ubuntu extends its Windows Azure availability with full Juju support.md rename to published/201310/Ubuntu extends its Windows Azure availability with full Juju support.md diff --git a/published/Ubuntu-13-10-vs-Ubuntu-13-04-Reasons-to-Upgrade.md b/published/201310/Ubuntu-13-10-vs-Ubuntu-13-04-Reasons-to-Upgrade.md similarity index 100% rename from published/Ubuntu-13-10-vs-Ubuntu-13-04-Reasons-to-Upgrade.md rename to published/201310/Ubuntu-13-10-vs-Ubuntu-13-04-Reasons-to-Upgrade.md diff --git a/published/Unity 8 updated with interesting refinements.md b/published/201310/Unity 8 updated with interesting refinements.md similarity index 100% rename from published/Unity 8 updated with interesting refinements.md rename to published/201310/Unity 8 updated with interesting refinements.md diff --git a/published/Use Python To SSH To Your Machine.md b/published/201310/Use Python To SSH To Your Machine.md similarity index 100% rename from published/Use Python To SSH To Your Machine.md rename to published/201310/Use Python To SSH To Your Machine.md diff --git a/published/Valve Revealing First Part of Linux Invasion on Monday.md b/published/201310/Valve Revealing First Part of Linux Invasion on Monday.md similarity index 100% rename from published/Valve Revealing First Part of Linux Invasion on Monday.md rename to published/201310/Valve Revealing First Part of Linux Invasion on Monday.md diff --git a/published/Weather App updated with subtle color refinements.md b/published/201310/Weather App updated with subtle color refinements.md similarity index 100% rename from published/Weather App updated with subtle color refinements.md rename to published/201310/Weather App updated with subtle color refinements.md diff --git a/published/When open source invests in diversity, everyone wins.md b/published/201310/When open source invests in diversity, everyone wins.md similarity index 100% rename from published/When open source invests in diversity, everyone wins.md rename to published/201310/When open source invests in diversity, everyone wins.md diff --git a/published/201310/Why I can’t live without Linux.md b/published/201310/Why I can’t live without Linux.md new file mode 100644 index 0000000000..a54f42a725 --- /dev/null +++ b/published/201310/Why I can’t live without Linux.md @@ -0,0 +1,112 @@ +【观点】离了Linux,我就活不了! +================================================================================ + +本文是为那些想要尝试Linux的用户所写,不过如果你已经是一名Linuxer,这里也有一些你应该知道并为之自豪的事实。 + +讨厌长篇大论?直接跳到最后的部分 “**所有内容的整理**”。 + +### 为什么我离不开Linux? ### + +我坚持这样认为有我自己的原因。每隔几天或几个月,我重启机器的时候,Linux的启动过程都令我陶醉,而你也许会惊奇大多数操作系统并不是这样的。 + +### 先想象一些场景:### + +1. 你的机器经常崩溃。 +2. 它慢的令人发指。 +3. 未经你允许,文件文件夹就自动建立/删除。 +4. 机器莫名其妙的关闭。 + +什么状况?真相只有一个!你中病毒了!而在Linux上,这样的情况几乎不会发生,甚至可以说"根本没有"。:) + +### 为什么/那又如何? ### + +再想象一下,此时此刻,有成百上千个人正在为Linux编写和检查代码,因此Linux一直在不断的发展壮大,而几乎全世界任何开发者都可以看到“代码写的是什么?”,甚至指出是否哪里有缺陷。 + +**1994年3月14日,Linux 1.0.0发布,那时它只有176250行代码。** + +**到了2013年,Linux 3.10发布时,它已经拥有15803499行代码。** + +另外一件事,是Linux的设计方式。不像其它一些操作系统,在Linux上,几乎所有的复杂任务都需要root权限。例如在windows上,你进入某些系统文件夹,删除了一些东西(为什么你会这么做呢?恩,也可能是病毒干的 —— 它们确实会这么干。另外,我见过有些人为了释放内存也会这么做)。虽然当时什么都没发生,但是在你下一次启动时...(这里我不敢再往下描述了)。而在Linux上,任何时候当你试图对系统干点什么,它都会提示你需要root密码。那如果我就是root用户,而我又把系统搞砸了,怎么办?这是最坏的情况,但是仍然会有很多人指导你如何修复它。 + +**当你在街上摔倒的时候,一群热心的陌生人跑过来帮助你,你会有什么感觉?爱和支持是无价的,你会感受的到!** + +![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/linux.png) + +**稳定性** - Linux机器可以无休止地运行下去。而通过一个简单的“uptime”命令就可以让你知道机器已经运行了多久。你永远不需要关机,设备基本上都是热插拔的。当然其它有的操作系统也可以报告运行时间,但是正如之前所说,Linux机器很少崩溃、蓝屏、死机:D,除非你有意要搞砸它。 + +老话说得好 “**Linux是很坚强的,除非,面对的是熊孩子!**” + +为了使机器远离病毒、木马,你需要做很多工作。一项研究表明,(在没有任何防护措施的情况下,)连接到网络之后,windows被入侵的平均时间是40分钟,而在Linux上 - 你就像老板一样什么都不用做,也就是说,在操作系统之外不需要安装任何东西(,黑客也无法入侵)。 + +**安全性增强** - Iptables。这个命令行工具用来设置防火墙是极好的。同样,还有许多其它创新工具,比如*端口试探(port knocking),chroot监狱(译者注:chroot是在unix系统的一个操作,用于改变当前程序及其子进程真实的磁盘根目录。改变根目录后的程序无法访问或命名正常路径下的文件。这样的根目录就叫做"chroot监狱(chroot jail,chroot prison)"——来自维基百科 )。 + +**SELinux** - 如果设置执行了SELinux,即使你赋予某个文件完全访问权限,其他人也无法访问。 + +其它操作系统的源代码仅仅是开发操作系统的人才可以看到,然而,对于Linux,每个人都可以访问源代码,这意味着发生错误的可能性很小。即使有一些错误发生,也可以及时修复。假如你受到了安全攻击,开发操作系统的公司可能会用一周甚至一个月时间发布一个补丁,这就意味着你的系统在这段时间仍然是脆弱的,但是Linux有不计其数的用户贡献以及积极参与,这是非常好的,不是更好,而是最好。 + +如果,假设操作系统公司不修复bug呢?之后会怎么样?恭喜,你只能与bug为伴了。然而在linux下,有许多人修复bug,或者如果你是一个很好的程序员,也许你应该自己修复它并且将其贡献到开源社区。 **予人玫瑰,手留余香!** + +当有这样一个免费且开源的优秀操作系统(Linux),为什么你还要花钱买一个呢?当你决定投奔开源,学习的机会将会非常多。如果你是一个好的程序员,你应该拿到开源代码,用你自己的方式构建它、设计它,按你自己的想法去使用它。 + +**全世界的开发人员用宝贵的时间和天才的头脑为你带来这一款“谁与争锋”的操作系统,它,就是Linux。** + +**没有crapware**(译者注: 附赠软件,是一个贬义的俚语) - 操作系统是开源的,那其它工具呢?没错,有非常多的工具也是开源的,可以供用户使用。而在其它操作统统中,大部分软件可能会要求你订购服务、升级/购买。更糟糕的是,在用了几天之后,你可能会发现这个玩意儿竟然只是30天的试用版。在这方面,Linux永远不会让你经历这样的沮丧。 + +**Linux还自带了预装应用程序,这样,简单几步安装之后就可以开始使用啦~** + +在linux上,大部分驱动是内核自带的,因此当使用一些硬件组件时你不必到处去寻找驱动程序。 + +如果你仅仅是一个普通的桌面用户,没有多少事情要用命令行(CLI)来做 - Linux拥有各种桌面环境供你选择,比如Gnome、KDE,没错,你可以称呼它为 "**新一代桌面环境**" + +你有没有体验过你的操作系统在运行一段时间后行动迟缓,而你只能通过重新安装系统解决这个问题。恩,试试Linux吧,你会感到惊喜的。它很多年一如既往运行飞快并且反应灵敏,这样,你就能专注于工作,而不用处理反应迟缓的操作系统。 + + +**没有后门(backdoor)** - 当你不了解一个操作系统的源代码时,你怎么能确保它没有后门呢?如果制造商公司留了一个隐秘的后门,当你连接到网络的时候,这会让你的隐私无所遁形。而在Linux上,任何东西都是开放的,因此没有后门可以隐藏在操作系统里。 + +这里还要谈另一个有趣的事:大部分使用windows的用户可能会有一个沮丧的事,就是当升级一些软件或者操作系统的时候需要重启机器。Linux不需要这样的重启。Linux是一个稳定的、完美运行多年也不需要重启的系统。 + +**让老机器品味重生** - Linux甚至可以在很老的硬件上完美运行。不像其它的操作系统,需要升级硬件才能使用。 + +### 所有内容的整理..### + +有免费的,为什么还要使用非法的(盗版) + +- 赋予老机器第二春 +- 开机很快 +- 随时更新 +- 没有垃圾软件 +- 没有后门 +- 没有病毒 +- 稳定性 +- 兼容性 +- 安全性能增强 +- 运行快,反应灵敏 +- Linux不需要碎片整理 +- 额,选择Linux确实对环境有影响. (Google it) +- 自由无限的支持 - 论坛、邮件列表、IRC频道 +- 工作区特性 - 下一代桌面 +- 没有大麻烦 +- 报告bug并得到修复 +- 你不会感到孤单 +- 我贡献,我快乐,予人玫瑰,手留余香 +- 其它操作系统归公司所有,微软拥有Windows,苹果拥有Mac-OS。Linux?我们拥有! + +总之,不仅仅是阅读这篇文章,你一定要亲自试试看,品味这种感觉 - 自由无价。 + +对我来说, **linuxing 是沉思**。 你呢? :) + +**如果同意我的观点,cheers!现在是该把Linux(这杯美酒)“倾入”你的杯中慢慢“品味”了。** + +**如果不同意我的观点,再一次cheers。你可以用各种方法来证明我是错的。** + +Google 一下"linuxing urban dictionary”(译者注:urban dictionary是一个专供网友发表一些特殊单词或短语解释的平台,这上面有许多正常词典里面查不到的词条,即使是正常词典里面有的,在这里也会有新的精辟解释。网友们还可以对每一个词条进行投票)。 + +感谢阅读。来,笑一个 :D Cheers! + +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/cant-live-without-linux/ + +译者:[flsf](https://github.com/flsf) 校对:[Caroline](https://github.com/carolinewuyan) ,[Mr小眼儿](http://blog.csdn.net/tinyeyeser) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/Xubuntu 13.10 (Saucy Salamander) Officially Released.md b/published/201310/Xubuntu 13.10 (Saucy Salamander) Officially Released.md similarity index 100% rename from published/Xubuntu 13.10 (Saucy Salamander) Officially Released.md rename to published/201310/Xubuntu 13.10 (Saucy Salamander) Officially Released.md diff --git a/published/apt-fast--Improve apt-get Download Speed.md b/published/201310/apt-fast--Improve apt-get Download Speed.md similarity index 100% rename from published/apt-fast--Improve apt-get Download Speed.md rename to published/201310/apt-fast--Improve apt-get Download Speed.md diff --git a/published/201310/di – Disk Information Utility, Better Than df.md b/published/201310/di – Disk Information Utility, Better Than df.md new file mode 100644 index 0000000000..a6ec2d4c91 --- /dev/null +++ b/published/201310/di – Disk Information Utility, Better Than df.md @@ -0,0 +1,263 @@ +di - 比 df 更有用的磁盘信息工具 +=========================== + +如果你是个Linux命令行用户,你肯定会使用df命令检查文件系统的磁盘使用情况。尽管df是一个受欢迎的命令,但仍然不能提供一些高级的功能,如一个用户实际的磁盘可用空间,以及各种有用的显示格式等。还有另一个命令行实用工具可用,不仅提供了这些高级功能也提供了df的所有特性。在本文中,我们将讨论磁盘信息工具 -- **di** + +**注释** - 如果你想了解 df 更多信息, 查看 [df命令教程][1]. + +## di - 磁盘信息工具 + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/di-main.png) + +从这个di帮助手册页很明显的发现 di 提供了一些很有价值的特性,值得一试。让我们看一些这个工具实际使用的例子。 + +### 测试环境 + +- OS – Ubuntu 13.04 +- Shell – Bash 4.2.45 +- Application – di 4.30 + +## 一个简短的教程 + +下面是一些 di 工具的示例: + +###1. 默认的输出 + +默认情况下di命令生成人们易读的输出格式 + +这里有个示例: + + $ di + Filesystem Mount Size Used Avail %Used fs Type + /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 + udev /dev 1.5G 0.0G 1.5G 0% devtmpfs + tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs + +所以你能发现用千兆字节(G)和兆字节(M)做磁盘使用情况的数据单位。这绝对是比 df 默认的输出产生的效果好。(译注:df也可以输出带类似单位的显示,只是需要额外加参数 -h) + +###2. 用 -A 选项打印类似挂载点、特殊设备名称等全部字段 + +选项 -A可以用来极详细的打印挂载点,特殊设备名称等。 + +这里有个示例: + + $ di -A + Mount fs Type Filesystem + Options + Size Used Free %Used %Free + Size Used Avail %Used %Free + Size Used Avail %Used + Inodes Iused Ifree %Iused + / ext4 /dev/sda6 + rw,errors=remount-ro + 28.1G 20.2G 8.0G 72% 28% + 28.1G 21.6G 6.5G 77% 23% + 26.7G 20.2G 6.5G 75% + 1884160 389881 1494279 21% + /dev devtmpfs udev + rw,mode=0755 + 1.5G 0.0G 1.5G 0% 100% + 1.5G 0.0G 1.5G 0% 100% + 1.5G 0.0G 1.5G 0% + 381805 571 381234 0% + /run tmpfs tmpfs + rw,noexec,nosuid,size=10%,mode=0755 + 300.2M 0.9M 299.3M 0% 100% + 300.2M 0.9M 299.3M 0% 100% + 300.2M 0.9M 299.3M 0% + 384191 549 383642 0% + +所以你可以看到所有的字段,可以用于调试目的时打印输出。 + +###3. 用 -a选项打印所有挂载设备 + +这里是个示例: + + $ di -a + Filesystem Mount Size Used Avail %Used fs Type + /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 + udev /dev 1.5G 0.0G 1.5G 0% devtmpfs + devpts /dev/pts 0.0M 0.0M 0.0M 0% devpts + proc /proc 0.0M 0.0M 0.0M 0% proc + binfmt_misc /proc/sys/fs/bi 0.0M 0.0M 0.0M 0% binfmt_misc + tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs + none /run/lock 0.0M 0.0M 0.0M 0% tmpfs + none /run/shm 0.0M 0.0M 0.0M 0% tmpfs + none /run/user 0.0M 0.0M 0.0M 0% tmpfs + gvfsd-fuse /run/user/himan 0.0M 0.0M 0.0M 0% fuse.gvfsd-fuse + sysfs /sys 0.0M 0.0M 0.0M 0% sysfs + none /sys/fs/cgroup 0.0M 0.0M 0.0M 0% tmpfs + none /sys/fs/fuse/co 0.0M 0.0M 0.0M 0% fusectl + none /sys/kernel/deb 0.0M 0.0M 0.0M 0% debugfs + none /sys/kernel/sec 0.0M 0.0M 0.0M 0% securityfs + +所以你能看到与所有设备相关的所有信息,被打印出来了。 + +###4. 用 -c 选项用逗号作为值的分隔符 + +选项 -c 用命令分隔的值将附上双引号 + +这里是个示例: + + $ di -c + s,m,b,u,v,p,T + /dev/sda6,/,28.1G,20.2G,6.5G,77%,ext4 + udev,/dev,1.5G,0.0G,1.5G,0%,devtmpfs + tmpfs,/run,300.2M,0.9M,299.3M,0%,tmpfs + +如上,你可以看到打印了用逗号分隔符输出的值。(译注:这种输出便于作为其他程序的输入解析) + +###5. 用 -g 选项通过千兆字节(G)打印大小 + +下面是个示例: + + $ di -g + Filesystem Mount Gibis Used Avail %Used fs Type + /dev/sda6 / 28.1 20.2 6.5 77% ext4 + udev /dev 1.5 0.0 1.5 0% devtmpfs + tmpfs /run 0.3 0.0 0.3 0% tmpfs + +当然,你能看到所有与大小有关的值都用千兆字节(G)打印出来。 + +同样的你可以用 -k 和 -m 选项来分别的显示千字节(K)大小和兆字节(M)大小。 + +###6. 通过 -I 选项显示特定的文件系统类型的相关信息 + +假设你想显示只跟tmpfs文件系统相关的信息。下面将告诉你如何用 -I 选项完成任务。 + + $ di -I tmpfs + Filesystem Mount Size Used Avail %Used fs Type + tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs + none /run/lock 5.0M 0.0M 5.0M 0% tmpfs + none /run/shm 1.5G 0.0G 1.5G 0% tmpfs + none /run/user 100.0M 0.0M 100.0M 0% tmpfs + none /sys/fs/cgroup 0.0M 0.0M 0.0M 0% tmpfs + +Ok 你能看到只有tmpfs类型相关文件系统信息被输出并显示出来了。 + +###7. 用 -n 选项跳过标题行的输出 + +如果你正试图通过一个脚本(或程序)解析该命令的输出结果并希望 di 命令跳过显示的标题行,那么用 -n 选项是绝佳的方法。 + +下面是个示例: + + $ di -n + /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 + udev /dev 1.5G 0.0G 1.5G 0% devtmpfs + tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs + +如上,你能发现输出中并没有显示标题行。 + +###8. 通过 -t 选项在文件系统列表底下再打印一行总计行 + +如果想要显示所有相关列的总数,用 -t 选项。 + +示例: + + $ di -t + Filesystem Mount Size Used Avail %Used fs Type + /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 + udev /dev 1.5G 0.0G 1.5G 0% devtmpfs + tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs + Total 29.9G 20.2G 8.3G 72% + +观察到最后一行的值为所有文件系统的统计数据。 + +###9. 通过 -s 选项 排序输出 + +-s选项可用于排序该命令的输出结果(译注:默认按照挂载点名称排序) + +下面告诉你如何反向排序输出: + + $ di -sr + Filesystem Mount Size Used Avail %Used fs Type + tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs + udev /dev 1.5G 0.0G 1.5G 0% devtmpfs + /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 + +你也可以在-s后添加子选项'r'逆序排序输出。 + +类似的,你可以使用 -s 选项做一些其他类型的排序.以下是摘自man手册供您参考: + + -s 排序方式 + + 可以指定排序方式。默认排序方式的按照挂载点的名称进行排序。支持如下的排序方式: + m :按照挂载点名称排序(默认) + n :不排序(即按照在挂载表/etc/fstab中的顺序) + s :按照特殊设备名称 + t :按照文件系统类型 + r :逆序排序 + + 排序方式可以组合使用,如: di --stsrm :按照类型、设备、挂载点逆序排序。di --strsrm :按照类型、设备逆序、挂载点逆序排序。 + + +###10. 通过 -f 选项指定输出格式 + +你可以通过结合-f选项和其子选项指定输出格式字符串。 + +例如,用 -fm,打印挂载点的名称。 + +示例: + + $ di -fm + Mount + / + /dev + /run + +如上你可以看到只有挂载点的名字被打印出来。 + +同样的,打印文件系统的类型,用 -ft + +示例: + + $ di -ft + fsType + ext4 + devtmpf + tmpfs + +如果你想快速查找,这里有个其他可用的格式选项截图. + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/di-1.png) + +更完整的选项,参考[di命令man文档][2] + +### 下载/安装 ### + +这里有一些关于di命令的重要链接: + +- [主页][3] + +- [下载链接][4] + +命令行工具 di 也能通过apt、yum等命令在命令行下载和安装。Ubuntu用户也可以从Ubuntu 软件中心下载这个命令。 + +### 优点 ### + +- 提供了许多高级功能 +- 跨平台 + +### 缺点 ### + +- 在大多数的Linux发行版没有预装 +- 大量选项需要学习 + +### 结论 ### + +最后,di命令提供了一些非常有用的特性,比df命令更强大。如果你正在寻找一个类似df,但比df更强大的关于磁盘信息的命令行工具,那么di是最理想的选择。试试吧,包你满意!!! + +**你试过di或任何其他类似df工具?请跟我们分享你的经验!** + +-------------------------------------------------------------------------------- + +via: http://mylinuxbook.com/di-a-disk-information-utility/ + +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.expertslogin.com/linux-command/linux-df-command/ +[2]:http://www.manpagez.com/man/1/di/ +[3]:http://www.gentoo.com/di/ +[4]:http://freecode.com/projects/diskinfo diff --git a/published/iLinux Is the Largest Collection of Custom Icons on the Linux Platform.md b/published/201310/iLinux Is the Largest Collection of Custom Icons on the Linux Platform.md similarity index 100% rename from published/iLinux Is the Largest Collection of Custom Icons on the Linux Platform.md rename to published/201310/iLinux Is the Largest Collection of Custom Icons on the Linux Platform.md diff --git a/published/lmctfy - Let Me Contain That For You.md b/published/201310/lmctfy - Let Me Contain That For You.md similarity index 100% rename from published/lmctfy - Let Me Contain That For You.md rename to published/201310/lmctfy - Let Me Contain That For You.md diff --git a/published/rtorrent – A Powerful Command Line Bit Torrent Client.md b/published/201310/rtorrent – A Powerful Command Line Bit Torrent Client.md similarity index 100% rename from published/rtorrent – A Powerful Command Line Bit Torrent Client.md rename to published/201310/rtorrent – A Powerful Command Line Bit Torrent Client.md diff --git a/published/Daily Ubuntu Tips – How To Change Your Computer Name.md b/published/Daily Ubuntu Tips – How To Change Your Computer Name.md new file mode 100644 index 0000000000..1c5227fa48 --- /dev/null +++ b/published/Daily Ubuntu Tips – How To Change Your Computer Name.md @@ -0,0 +1,36 @@ +每日Ubuntu小技巧——怎样修改你的计算机名字 +================================================================================ +本文又是一篇为Ubuntu新用户和新手准备的文章,将会指导你怎样在使用Ubuntu时轻松更改你的计算机名字,许多用户从来不会考虑在Ubuntu更改计算机名字或者主机名,那是他们最不用考虑担心的事情。 + +许多用户会使用安装Ubuntu过程中创建或设定的名字,但是对于想要知道怎么更改名字的新用户,可以继续接下来的学习。本文不是为Ubuntu专家所准备,是为那些刚刚开始使用Ubuntu的初学者用户。 + +那么,为什么你又想要更改你的计算机名字?如果除了想要学习怎样操作,你没有一个好的理由,那么就不要学了,反之,如果你有一个好的理由或者想要学习怎样操作,那么请继续。 + +按下 **Ctrl - Alt - T** 组合键,打开终端。 +当终端打开,输入下列命令,使用gedit编辑hostname文件 + + sudo gedit /etc/hostname + +接下来,无论旧的计算机名字是什么,换一个新的吧。例如,如果你想要你的计算机名字为“RDOMNU”,先删除文件内容,输入 **RDOMNU**,然后保存文件。 + +然后,再输入下列命令来打开hosts文件 + + sudo gedit /etc/hosts + +更改第二行箭头标记位置的值,使它与你刚才输入的计算机名字相符,完成后保存文件。 + + +![](http://www.liberiangeek.net/wp-content/uploads/2013/10/ubuntuhostnamechange.png) + +就是这样!重启你的计算机,然后你的机器将会显示新的名字。这就是怎么改变Ubuntu机器的名字。 + +试一试吧! + + +-------------------------------------------------------------------------------- + +via: http://www.liberiangeek.net/2013/10/daily-ubuntu-tips-change-computer-name/ + +译者:[Vic___](https://blog.csdn.net/Vic___) 校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/How to Install Ubuntu Touch 13.10 on Your Phone.md b/published/How to Install Ubuntu Touch 13.10 on Your Phone.md new file mode 100644 index 0000000000..77a4cb0f9d --- /dev/null +++ b/published/How to Install Ubuntu Touch 13.10 on Your Phone.md @@ -0,0 +1,43 @@ +如何在手机上安装Ubuntu Touch 13.10 +================================================================================ +**Ubuntu Touch 13.10是Canonical公司针对手机新推出的一款操作系统,但是相对于桌面而言,它安装到手机并不是那么容易。** + +![](http://i1-news.softpedia-static.com/images/news2/How-to-Install-Ubuntu-Touch-13-10-On-Your-Phone-392828-2.jpg) + +Canonical提供了安装Ubuntu Touch 13.10所有必要的工具。这真是个好消息,因为手动安装操作系统可是相当麻烦的。 + +首先提醒,此操作系统并非任何手机都能使用。因开发原因,Canonical限制其只能使用在Nexus 4设备上(代号金枪鱼和灰鲭鲨) ,而且手机必须已被解锁。 + +要安装工具,你将需要在终端输入几个简单的命令: + + sudo add-apt-repository ppa:phablet-team/tools + sudo apt-get update + sudo apt-get install phablet-tools android-tools-adb android-tools-fastboot + +用户还必须确保他们的手机已被设置成开发使用。进入“设置项/关于手机”,点击“软件版本”7次。如果你操作正确,将会收到一条提示消息。 + +你必须从新菜单——“开发者选项”中启用USB调试,该菜单通过前面的方法已被解锁。在手机上勾选该选项时,会出现一条消息,通知用户正在配对。同意,那么你准备得差不多了。 + +在开始安装前的最后一步是备份你的Android系统。同样使用adb工具。只要打开终端,输入以下命令: + + adb backup -apk -shared -all + +如果你要重新安装原来的Android系统,打开一个终端,运行以下命令: + + adb restore backup.ab + +最后的命令至关重要,你应该使用sudo运行,以确保正确执行该命令。打开一个终端,输入以下命令: + + sudo phablet-flash ubuntu-system --no-backup + +运行过程中应该没有任何问题,设备将最终引导到Ubuntu Touch。不要停止终端也不要中断此过程。 + +以上就是你需要遵照的简单步骤,这样,在所支持的设备上运作应该没有任何问题了。 + +-------------------------------------------------------------------------------- + +来源于: http://news.softpedia.com/news/How-to-Install-Ubuntu-Touch-13-10-On-Your-Phone-392828.shtml + +译者:[coolpigs](https://github.com/coolpigs) 校对:[Caroline](https://github.com/carolinewuyan) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/sources/Install Apache With SSL in Ubuntu 13.10.md b/published/Install Apache With SSL in Ubuntu 13.10.md similarity index 66% rename from sources/Install Apache With SSL in Ubuntu 13.10.md rename to published/Install Apache With SSL in Ubuntu 13.10.md index f76bdcf143..8e715ccf5b 100644 --- a/sources/Install Apache With SSL in Ubuntu 13.10.md +++ b/published/Install Apache With SSL in Ubuntu 13.10.md @@ -1,8 +1,9 @@ -Install Apache With SSL in Ubuntu 13.10 +在Ubuntu 13.10 下安装支持SSL的Apache ================================================================================ -In this short tutorial let me show you how to install Apache with SSL support. My testbox details are given below: -### The System info ### +通过这个简短的教程,让我来指导你如何安装支持SSL的Apache。以下是我的试验机的详细说明: + +### 系统信息 ### root@ubuntu-unixmen:~# ifconfig eth0 Link encap:Ethernet HWaddr 08:00:27:b8:b4:87 @@ -13,13 +14,14 @@ In this short tutorial let me show you how to install Apache with SSL support. M TX packets:69 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:168845 (168.8 KB) TX bytes:9767 (9.7 KB) - ---------- root@ubuntu-unixmen:~# cat /etc/issue Ubuntu 13.10 \n \l -### Install apache ### +### 安装apache ### + +运行如下命令: sudo apt-get install apache2 apache2-doc apache2-utils Reading package lists... Done @@ -28,26 +30,27 @@ In this short tutorial let me show you how to install Apache with SSL support. M The following extra packages will be installed: apache2-bin apache2-data libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap ssl-cert -### Test apache page ### +### apache测试页面 ### -Open up the browser and navigate to http://ip-address/. You should see something like this. +打开浏览器,转到http://你的测试机的IP地址/。你应该会看到类似以下的信息。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/apache2-ubuntu.png) -### Create diretory ### +### 创建目录 ### -Create a directory called **ssl**. +创建一个名为**ssl**的目录 - sudo mkdir /etc/apache2/ssl + $ sudo mkdir /etc/apache2/ssl -### Create a self-signed certificate ### +### 创建一个自签名凭证 ### + + $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt - sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt Generating a 2048 bit RSA private key.......................................................................................+++....................................+++writing new private key to '/etc/apache2/ssl/apache.key'-----You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [AU]: -### Activate Apache SSL module ### +### 开启Apache SSL模块 ### -Run the following command to enable ssl mode. +运行以下命令开启ssl模块 $ a2enmod ssl Considering dependency setenvif for ssl: @@ -58,39 +61,39 @@ Run the following command to enable ssl mode. Enabling module socache_shmcb. Enabling module ssl -Edit **/etc/apache2/sites-enabled/default-ssl.conf** fie, +编辑 **/etc/apache2/sites-enabled/default-ssl.conf** 文件, - <VirtualHost 10.1.1.110:443> + ServerAdmin webmaster@localhost ServerName www.unixmen.com:443 - + SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.crt SSLCertificateKeyFile /etc/apache2/ssl/apache.key -### Activate Apache default ssl virtual host: ### +### 启用Apache缺省的SSL虚拟主机: ### - a2ensite default-ssl + $ a2ensite default-ssl Enabling site default-ssl. To activate the new configuration, you need to run: service apache2 reload -### Restart Apache: ### +### 重启Apache: ### - sudo service apache2 restart + $ sudo service apache2 restart -### Test SSL Connection ### +###测试SSL连接### -Open browser and navigate **to https://IP-address**. +打开浏览器,转到**https://你的测试机IP**。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/apache-cert.png) -You’re done. Cheers! +安装完成,尽情享用! -------------------------------------------------------------------------------- via: http://www.unixmen.com/install-apache-ssl-ubuntu-13-10/ -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[Caroline](https://github.com/carolinewuyan) -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/published/Trusty Tahr daily builds available for download.md b/published/Trusty Tahr daily builds available for download.md new file mode 100644 index 0000000000..26e5716d8a --- /dev/null +++ b/published/Trusty Tahr daily builds available for download.md @@ -0,0 +1,24 @@ +可靠的塔尔羊(Trusty Tahr)daily builds版本现已提供下载 +================================================================================ +前段时间,Canonical发布了功能强大、高质量的Ubuntu13.10,为广大用户、开发者和公司提供了快速、灵活、强劲的使用体验。 + +13.10的发布刚刚过去没多久,近日,Ubuntu社区开发者[宣布][1],**可靠的塔尔羊(Trusty Tahr)**官方**开发已经开放**,同时开始的还有LTS软件包的开发。 + +除此以外,Trusty的daily builds版已经出现,可安装的镜像内封装了Ubuntu14.04 LTS新的开发重点。 + +![](http://iloveubuntu.net/pictures_me/trusty%20tahr%20daily%20builds.jpg) + +尽管目前Trusty的daily builds版和Ubuntu13.10没有什么太大区别,但是从项目最开始,Trusty就表现出了格外的开发活性,而且Trusty是一个LTS(长期支持)版本,因此,根据传统,与标准版相比,官方提供的Trusty其实是一个更加稳定的Ubuntu版本。 + +可靠的塔尔羊(Trusty Tahr)daily builds版的下载地址:[http://cdimage.ubuntu.com/daily-live/current/][2] + +-------------------------------------------------------------------------------- + +via: http://iloveubuntu.net/trusty-tahr-daily-builds-available-download + +译者:[Mr小眼儿](http://blog.csdn.net/tinyeyeser) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://iloveubuntu.net/trusty-tahr-open-development +[2]:http://cdimage.ubuntu.com/daily-live/current/ \ No newline at end of file diff --git a/sources/10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe.md b/sources/10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe.md deleted file mode 100644 index fb61fed360..0000000000 --- a/sources/10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe.md +++ /dev/null @@ -1,64 +0,0 @@ -l3b2w1 translaing…… -10 Best Quotes from Linus Torvalds' Keynote at LinuxCon Europe -================================================================================ -![](http://www.linux.com/images/stories/41373/Linus-and-Dirk.jpg) - -*Linus Torvalds and Dirk Hohndel on stage at LinuxCon Europe in Edinburgh.* - -Linux creator Linus Torvalds took the stage today at [LinuxCon Europe][1] in Edinburgh with Intel’s Chief Linux and Open Source Technologist Dirk Hohndel to discuss the present and future of Linux and answer questions from the community. They covered a range of topics including the upcoming 3.12 kernel release, the ideal characteristics of a kernel maintainer, the issues that keep Linus up at night, gaming on the Linux desktop, and more. - -Here are 10 of Linus’s best quotes, in the order that he said them, from Wednesday morning’s keynote. - -1. Linus is happy with the current timing of releases every 3 months because it allows developers to take their time building new features. If they miss the merge window, it’s not very long until the next one comes so they don’t feel rushed to send in their code. - -**“Don't hurry your code. Make sure it works well and is well designed. Don't worry about timing.”** - -2. The rapid pace of change also allows developers to merge their code quickly and move on. - -**"Developers have the attention spans of slightly moronic woodland creatures."** - -**3. “One of the most important things for a maintainer isn't that he's a super engineer. It’s that you're responsive and people can rely on you being there 24/7, 52 weeks a year.”** - -It’s very difficult for a young developer to become a maintainer because it takes a few years for the community to trust that you’ll be around for a while. That said, once you’ve proven you’re reliable, it’s easy to become a maintainer because it’s a hard job. You have to be there all the time. - -4. Dirk: “What keeps you up at night?” - -Linus: Bugs in the code and other technical problems don’t worry him as much. - -**“The thing with technology is if you do something stupid you can fix it.”** - -5. What really keeps Linus up at night are the social issues and problems with the development process. - -**“When tempers flare it can be really stressful for a few days. I have flare-ups and that works fine for me… Other people tend to mull over things. It eats at them for weeks on end, and those issues tend to be the painful ones.”** - -6. Linus takes a Darwinistic view when it comes to convincing companies to contribute to the kernel or use open source software. They either see the benefits of open source or they suffer the economic consequences. - -**“I do open source because it's fun and it works… Companies who work with the kernel community will waste less time and they'll just work better.”** - -**7. “If you're a company that thinks your tiny change to the kernel is what gives you a competitive edge, you'll probably be facing economic problems. You'd be much better off worrying about making the best damn hardware for the lowest price.”** - -![](http://www.linux.com/images/stories/41373/Linus-Torvalds-LinuxCon-Europe.jpg) - -*Linux creator Linus Torvalds answers audience questions at LinuxCon Europe, 2013.* - -8. He had a few things to say about the state of Linux on the desktop. It’s one area that Linux could still really see some improvement. But distribution infighting has become a problem. - -**“I started Linux because I wanted to see it on the desktop... I wish people would work together better ... and make a really nice login screen.”** - -9. Valve’s Steam for Linux is the best opportunity to help the Linux desktop, he said. They’ll do this by setting a standard for Linux distributions that want to enable gaming on their platforms. - -**“It's the best model for standardization. Standards should not be people sitting in a smoky room… and writing papers. It's being successful enough to drive the market.”** - -10. On diversity, Linus said he would like to see the kernel community grow to include more women and developers from different geographies. - -**“We have very few women. But I'm not very worried. We used to have this discussion about not having enough Japanese developers. We can solve this but it will take time.”** - --------------------------------------------------------------------------------- - -via: http://www.linuxfoundation.org/news-media/blogs/browse/2013/10/10-best-quotes-linus-torvalds-keynote-linuxcon-europe - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://events.linuxfoundation.org/events/linuxcon-europe \ No newline at end of file diff --git a/sources/10 Lesser Known Linux Commands – Part 2.md b/sources/10 Lesser Known Linux Commands – Part 2.md new file mode 100644 index 0000000000..5e7a1a6caa --- /dev/null +++ b/sources/10 Lesser Known Linux Commands – Part 2.md @@ -0,0 +1,172 @@ +10 Lesser Known Linux Commands – Part 2 +================================================================================ +Continuing the last conversation from [11 Lesser Known Useful Linux Commands – Part I][1](注:此文已经被其他网站翻译,链接:[http://www.searchsv.com.cn/showcontent_77595.htm][2]或者:[http://www.oschina.net/translate/11-lesser-known-useful-linux-commands][5]) here in this article we will be focusing on other lesser known Linux commands, that will prove to be very much useful in managing Desktop and Server. + +![](http://www.tecmint.com/wp-content/uploads/2013/10/10-Lesser-Known-Commands.png) + +*10 Lesser Known Linux Commands* + +### 12. Command ### + +Every piece of command you type in terminal gets recorded in the **history** and can be retried using **history** command. + +How about cheating [history command][2]? Yeah you can do it and its very easy. Just put one or more white space before typing a command in terminal and your command wont be recorded. + +Lets give it a try, we will try five common Linux commands (say** ls, pwd, uname, echo “hi”** and **who**) in terminal after one white space and check if these commands are docked in history or not. + + avi@localhost:~$ ls + avi@localhost:~$ pwd + avi@localhost:~$ uname + avi@localhost:~$ echo “hi” + avi@localhost:~$ who + +Now run ‘**history**‘ command to see whether these above executed commands are recorded or not. + + avi@localhost:~$ history + + 40 cd /dev/ + 41 ls + 42 dd if=/dev/cdrom1 of=/home/avi/Desktop/squeeze.iso + 43 ping www.google.com + 44 su + +You see our last executed commands are not logged. we can also cheat history by using an alternate command ‘**cat | bash**‘ of-course without quotes, in the same way as above. + +### 13. stat Command ### + +The **stat** command in Linux displays the status information of a file or filesystem. The **stat** shows a whole lot of information about the file which name is passed as argument. Status Information includes file **Size, Blocks, Access Permission, Date-time** of file last access, **Modify, change**, etc. + + avi@localhost:~$ stat 34.odt + + File: `34.odt' + Size: 28822 Blocks: 64 IO Block: 4096 regular file + Device: 801h/2049d Inode: 5030293 Links: 1 + Access: (0644/-rw-r--r--) Uid: ( 1000/ avi) Gid: ( 1000/ avi) + Access: 2013-10-14 00:17:40.000000000 +0530 + Modify: 2013-10-01 15:20:17.000000000 +0530 + Change: 2013-10-01 15:20:17.000000000 +0530 + +### 14. . and . ### + +The above key combination is not actually a command but a tweak which put the last command argument at prompt, in the order of last entered command to previous entered command. Just press and hold ‘**Alt**‘ or ‘**Esc**‘ and continue pressing ‘**.**‘. + +### 15. pv command ### + +You might have seen simulating text in **Movies** specially **Hollywood Movies**, where the text appears as if it is being typed in the Real time. You can echo any kind of text and output in simulating fashion using ‘**pv**‘ command, as pipelined above. The **pv** command might not be installed in your system, and you have to **apt** or **yum** the required packages to install ‘**pv**‘ into your box. + + root@localhost:# echo "Tecmint [dot] com is the world's best website for qualitative Linux article" | pv -qL 20 + +**Sample Outpit** + + Tecmint [dot] com is the world's best website for qualitative Linux article + +### 16. mount | column -t ### + +The above command shows the list of all the mounted filesystem in a nice formatting with specification. + + avi@localhost:~$ mount | column -t + +**Sample Outpit** + + /dev/sda1on / type ext3 (rw,errors=remount-ro) + tmpfson /lib/init/rw type tmpfs(rw,nosuid,mode=0755) + proc on /proc type proc (rw,noexec,nosuid,nodev) + sysfson /sys type sysfs(rw,noexec,nosuid,nodev) + udev on /dev type tmpfs(rw,mode=0755) + tmpfson /dev/shm type tmpfs(rw,nosuid,nodev) + devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620) + fusectl on /sys/fs/fuse/connections type fusectl (rw) + binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev) + nfsd on /proc/fs/nfsd type nfsd (rw) + +### 17. Ctr+l command ### + +Before going further, let me ask you how you clear your terminal. Hmmm! You type “**clear**” at prompt. Well the above command perform the action of cleaning your terminal all at a once. Just press “**Ctr+l**” and see how it clears your terminal all at once. + +### 18. curl command ### + +How about checking your **unread mail** from the **command line**. This command is very useful for those who work on headless server. Again it asks for password at run time and you need not hard code your password in the above line, which is otherwise a security risk. + + avi@localhost:~$ curl -u avishek1210@gmail.com --silent "https://mail.google.com/mail/feed/atom" | perl -ne 'print "\t" if //; print "$2\n" if /<(title|name)>(.*)<\/\1>/;' + +**Sample Outpit** + + Enter host password for user 'avishek1210@gmail.com': + Gmail - Inbox for avishek1210@gmail.com + People offering cars in Delhi - Oct 26 + Quikr Alerts + another dependency question + Chris Bannister + Ralf Mardorf + Reco + Brian + François Patte + Curt + Siard + berenger.morel + Hi Avishek - Download your Free MBA Brochure Now... + Diya + ★Top Best Sellers Of The Week, Take Your Pick★ + Timesdeal + aptitude misconfigure? + Glenn English + Choosing Debian version or derivative to run Wine when resource poor + Chris Bannister + Zenaan Harkness + Curt + Tom H + Richard Owlett + Ralf Mardorf + Rob Owens + +### 19. screen Command ### + +The **screen** command makes it possible to detach a long running process from a session that can again be reattached, as and when required which provides flexibility in command execution. + +To run a process (long) we generally execute as + + avi@localhost:~$ ./long-unix-script.sh + +Which lacks flexibility and needs the user to continue with the current session, however if we execute the above command as. + + avi@localhost:~$ screen ./long-unix-script.sh + +It can be **de-attached** or **re-attached** in different sessions. When a command is executing press “**Ctrl + A**” and then “**d”** to **de-attach**. To attach run. + + avi@localhost:~$ screen -r 4980.pts-0.localhost + +**Note**: Here, the later part of this command is **screen id**, which you can get using ‘**screen -ls**‘ command. To know more about ‘**screen command**‘ and their usage, please read our article that shows some useful [10 screen commands with examples][4]. + +### 20. file ### + +No! the above command is not a typo. ‘**file**‘ is a command which gives you information about the type of file. + + avi@localhost:~$ file 34.odt + 34.odt: OpenDocument Text + +### 21. id ### + +The above command print real and effective **user** and **group** ids. + + avi@localhost:~$ id + +**Sample Output** + + uid=1000(avi) gid=1000(avi) + groups=1000(avi),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),109(netdev),111(bluetooth),117(scanner) + +That’s all for now. Seeing the success of last article of this series and this very article, I’ll be coming with another part of this article containing several other **Lesser Known Linux** commands very soon. Till then **Stay Tuned** and connected to **Tecmint**. Don’t Forget to provide us with your **value-able Feedback** in **Comments**. + +-------------------------------------------------------------------------------- + +via: http://www.tecmint.com/10-lesser-known-linux-commands-part-2/ + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.tecmint.com/11-lesser-known-useful-linux-commands/ +[2]:http://www.searchsv.com.cn/showcontent_77595.htm +[3]:http://www.tecmint.com/history-command-examples/ +[4]:http://www.tecmint.com/screen-command-examples-to-manage-linux-terminals/ +[5]:http://www.oschina.net/translate/11-lesser-known-useful-linux-commands \ No newline at end of file diff --git a/sources/10 Things To Do After Installing Ubuntu 13.10.md b/sources/10 Things To Do After Installing Ubuntu 13.10.md deleted file mode 100644 index 04b80286f2..0000000000 --- a/sources/10 Things To Do After Installing Ubuntu 13.10.md +++ /dev/null @@ -1,128 +0,0 @@ -刚装了个,正好看看bycrowner -10 Things To Do After Installing Ubuntu 13.10 -================================================================================ -**Ubuntu 13.10 is out, you’ve upgraded, and you’re wondering what to do now. Don’t fret – here are 10 things to do after installing Ubuntu 13.10.** - -We put together a post-install checklist for every release of Ubuntu, but as new features arrive and improvements are made, the steps we suggest change and alter. - -So what are the best things to do after upgrading to Ubuntu 13.10? - -### 1. Get Up To Speed ### - -While Ubuntu 13.10 packs in fewer user-facing features than previous releases the effect of the new Smart Scopes Service is hard to miss. - -### 2. Enable Additional Drivers ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/drivers.jpg) - -Ubuntu supports a vast array of hardware right out of the box. But while the free, open-source drivers that make this possible are increasingly capable you may find that performance less that ideal for playing games on Steam or streaming HD video. - -If so you may want to **install and enable any proprietary drivers** listed in the Software & Updates tool. - -Open the Software Sources app via the Dash (or through System Settings) then click through to the ’Additional Drivers’ tab and follow the on-screen prompts. - -### 3. Install Media Codecs in Ubuntu ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/mus.jpg) - -Due to a big tangle of legal issues Ubuntu is unable to play many popular audio and video formats ‘out of the box’. It’s an inconvenience born of necessity. - -But installing what’s needed is only a couple of clicks away. During installation you can tick the ’*Enable Restricted Formats*’ box to have the required codecs pulled in, or – if you forgot to do that – you can install everything needed to get media working from the Ubuntu Software Centre. - -- [Install Third-Party Codecs][1] - -### 4. Set Up Your Social Life ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/account-toggles.jpg) - -Facebook, Twitter, Google Talk, Gmail and a heap more social accounts can be set up in one go using the *Online Accounts* hub. - -Just add an network then **decide which applications can use it**. For example, stop Empathy firing up Google Chat by default, and filter our Facebook from the Social Lens. - -Services supported include Twitter, Google, Yahoo!, Facebook (including Facebook Chat), Flickr, and a growing number of others. - -### 5. Add Additional Apps ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/apps.jpg) - -Ubuntu offers a lot of neat apps by default but one size doesn’t fit all. If you don’t like a certain app, or find yourself missing something else, you can easily add more software. - -Fire up the Ubuntu Software Centre to browse thousands of free applications, including popular choices like: - -- **Dropbox** - Popular, cross-platform cloud storage service -- **Steam** – Game distribution platform -- **GIMP** – Advanced image editor -- **VLC** – Popular media player - -You’ll also find a wealth of additional software listed on sites like ours – check out our Apps tag for some ideas. - -- [View App Posts on OMG! Ubuntu!][2] - - -### 6. Protect Your Privacy ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/priv.jpg) - -Privacy is a hot-potato these days, so it’s great to see that the latest release of Ubuntu improves its Privacy offerings with a new look and a handful of extra options. - -Whether you want to hide a folder or app from appearing in the Dash, restrict access to your computer after waking up, or choose what data about system crashes is sent back to Canonical, the Privacy & Security pane is where you’ll find all the tools you need. - -### 7. Embrace The Web ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/gmails.jpg) - -Canonical are enticing web devs with word that websites can be easily packaged, integrated and made available for install on Ubuntu Touch. - -The genesis of this approach has been included on desktop Ubuntu for a few releases. Over 30 popular websites – including Gmail, Yahoo! & Rd.io - can seamlessly integrate with parts of the desktop. - -For example, add GMail and you get fancy Gmail options in the Launcher and Messaging Menu; enable Rd.io and you’ll be able to control playback using the Sound Menu. - -### 8. Make Unity Yours ### - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/unity_tweak_tool_310.png) - -Unity is more customisable than people think. *Unity Tweak Tool* is a third-party app that lets you adjust the Unity desktop experience to suit you. - -Options include: - -- Adjust launcher transparency -- Set launcher icon animations -- Enable workspaces -- Configure shortcuts -- Move window controls - -And no, before you wonder, it won’t let you move the launcher. - -- [Install Unity Tweak Tool from Ubuntu Software Centre][3] - -### 9. Filter The Noise ### - -Ubuntu’s new ‘Smart Scopes’ service promises to be a handy tool, but at present it’s just not as smart as it claims. - -The good news is that feature can be switched off with a click, so there’s no need to avoid using Ubuntu altogether. - -If you find yourself facing a wall of obscure music results or obtuse shopping suggestions every time you search for something unrelated you can disable each offending scope individually. - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Screen-Shot-2013-10-15-at-11.36.26-750x480.png) - -If you find yourself flooded with irrelevant music results for every search disable the music scopes. Don’t want Amazon suggestions? Switch Amazon off. - -### 10. Spread The Word about Ubuntu 13.10 ### - -This item on our to-do list is cringe-worthy, I know. But the only way people are going to try out Ubuntu 13.10 is if they know about it – so do your bit and share news of it. - -Whether you just post this post to Facebook, or make a LiveUSB for your OS X-loving partner, you’ll be helping raise awareness of Ubuntu. - -Don’t forget to enjoy using it, too. Go check your Facebook profile, listen to some music, and do a bit of surfing in Firefox. - --------------------------------------------------------------------------------- - -via: http://www.omgubuntu.co.uk/2013/10/10-things-installing-ubuntu-13-10 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:https://apps.ubuntu.com/cat/applications/ubuntu-restricted-extras/ -[2]:http://www.omgubuntu.co.uk/category/app -[3]:apt:unity-tweak-tool \ No newline at end of file diff --git a/sources/10 Years of Xen--Transforming a Dinosaur Into a Bird.md b/sources/10 Years of Xen--Transforming a Dinosaur Into a Bird.md new file mode 100644 index 0000000000..c577500ac1 --- /dev/null +++ b/sources/10 Years of Xen--Transforming a Dinosaur Into a Bird.md @@ -0,0 +1,54 @@ +10 Years of Xen: Transforming a Dinosaur Into a Bird +================================================================================ +Xen Hypervisor development started at [Cambridge University][1] as part of the [Xenoserver][2] research project in the late 90’s. The goal of Xenoserver was ambitious: + +The Xenoserver project is building a public infrastructure for wide-area distributed computing. We envisage a world in which Xenoserver execution platforms will be scattered across the globe and available for any member of the public to submit code for execution. The sponsor of the code will be billed for all the resources used or reserved during the course of execution. This will serve to encourage load balancing, limit congestion, and hopefully even make the platform self-financing. + +Today, this model of computing is called cloud computing. And the Xen Hypervisor was - and indeed is today - instrumental in enabling the biggest cloud in production. Not only are Amazon Web Services and Rackspace Public cloud based on Xen. New large deployments such as [Verizon Public Cloud][3] also chose Xen as basis for their offering. + +### Happy 10th Birthday ### + +On October 21st, 2003 at the [19th ACM Symposium on Operating Systems Principles][4] the Xen Hypervisor was first revealed as an open source project to the public. Exactly 10 years ago. Time to wish the project a Happy 10th Birthday! + +### The Burden of being First : Or what happened to the Dinosaurs? ### + +Sometimes being the first open source project in its field can become a burden. Why? Because, community problems can build up unchecked. The simple fact is that lack of competition can cause complacency. This is what happened to the Xen Project. For the first few years of its life the project operated without governance, became insular, didn’t promote itself and failed to engage its users and contributors. When its first open source competitor - KVM - gathered steam, the community was slow to respond and change. + +The effect of all this was that it was difficult to join the project and that the project did not play well with the Linux kernel, QEMU and Linux distros. In the end, the Xen community got a bad reputation. Ultimately this resulted in Canonical and RedHat dropping Xen support in favour of KVM. Add to the mix a failure to tell the world, when things did change. The bad reputation lingered and eventually the project was seen as a dinosaur by the open source community and technology press. Destined to be extinct in the near future. + +### Evolving fast : The Dinosaur becomes a Bird ### + +Not many open source projects recover from mistakes like the ones the Xen community made. The Xen Project managed to do this, through a combination of introducing good governance, active efforts to collaborate with other open source projects, rebooting marketing efforts and actively working with users and contributors to the project. In other words, the project had to +Xen Project flying Panda + +Let the Bird fly (or more correctly, give the Xen Project’s Panda wings). +transform itself from a Dinosaur to a Bird. If you want to know how we did this, why not attend my LinuxCon EU session called [Xen Project : Lessons Learned][5]? Other sessions you may want to attend are [Securing your Xen based Cloud][6] and [Xen: Open Source Hypervisor Designed for Clouds][7]. + +![](http://www.linux.com/images/stories/41373/Xen-flying-Panda.jpg) + +*Let the Bird fly (or more correctly, give the Xen Project’s Panda wings).* + +### A peek into the Future : New Frontiers in Virtualization ### + +If you look at the Xen Project now, you will find that the community is diverse and growing. On many counts, it is bigger and more diverse than it has ever been. + +One of the interesting things that is happening in the Xen Community at the moment is adoption of the Xen Project’s software for non-traditional virtualization use-cases. This is mirroring a rise in activity by embedded companies in the Linux community in general. At the [Xen Project Developer Summit][8] later this week, we will see two Android VMs running on top of Xen on a Nexus 10, we will see first experiments in using Xen for In-Vehicle-Infotainment and automotive applications in general, and we will see how Xen can provide the high performance expected of hardware-based middlebox offerings such as firewalls and NATs. + +Of course, there is also plenty innovation in server virtualization and cloud. Let the Bird fly (or more correctly, give the Xen Project’s Panda wings). + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/news/enterprise/cloud-computing/743330-10-years-of-xen-transforming-a-dinosaur-into-a-bird/ + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.cl.cam.ac.uk/research/srg/netos/xen/index.html +[2]:http://www.cl.cam.ac.uk/research/srg/netos/xeno/ +[3]:http://www.techweekeurope.co.uk/news/verizon-public-cloud-launch-128724 +[4]:http://www.cs.rochester.edu/meetings/sosp2003/papers.shtml +[5]:http://linuxconcloudopeneu2013.sched.org/event/68003c370760bcc2da7e3e8b59b6b50f +[6]:http://linuxconcloudopeneu2013.sched.org/event/37ecfe02561cf264a02061d1927da26c +[7]:http://linuxconcloudopeneu2013.sched.org/event/bdca1274d9799646cdf2934dbde94ccd +[8]:http://www.linux.com/news/software/applications/742053-a-great-line-up-of-speakers-at-xen-project-developer-summit \ No newline at end of file diff --git a/sources/3 Ways to Access And Use Cloud Storage (SkyDrive etc.) In Linux.md b/sources/3 Ways to Access And Use Cloud Storage (SkyDrive etc.) In Linux.md new file mode 100644 index 0000000000..9b1beccde1 --- /dev/null +++ b/sources/3 Ways to Access And Use Cloud Storage (SkyDrive etc.) In Linux.md @@ -0,0 +1,67 @@ +3 Ways to Access And Use Cloud Storage (SkyDrive etc.) In Linux +================================================================================ +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/10/linux-cloud-840x420.jpg) + +Personal cloud storage has become so useful as you never have to worry where your stuff is: it’s easily accessible, and it’s always up-to-date. On Linux you can access your personal cloud storage in multiple ways. This is great, because you can use whatever method works the best – even if you’re a terminal junkie! + +### Use The Official Client ### + +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/10/linux_accessing_cloud_ubuntu_one.jpg) + +Getting the obvious out of the way, you can access your various personal cloud storage via their respective official applications. Currently, services such as [SpiderOak][1], [Dropbox][2], [Ubuntu One][3], which is an [unknown but worthy cloud storage contender][4], and [Copy][5], a [Dropbox alternative with more storage][6], offer official Linux clients which can facilitate communications between your computer and their servers, as well as set up special features such as selective synchronization. + +For any regular ol’ desktop user, using the official clients is the best way to go as they offer the most functionality and the highest level of compatibility. Getting these to work is as simple as downloading the respective package for your distribution, installing it, and running it for the first time. The client should guide you through the easy setup process. + +### Dropbox: Use A Command Line Script ### + +If you’re a Dropbox user, you can also access your cloud storage via the terminal command line. This method is especially useful for power user terminal junkies, as they can their own scripts that can make use of the commands offered by the Dropbox script in order to perform automated tasks. To install it, you’ll need to run these commands (for Debian, Ubuntu, or their derivatives – other distributions should use equivalent commands instead): + + sudo apt-get install curl + curl "https://raw.github.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o /tmp/dropbox_uploader.sh + sudo install /tmp/dropbox_uploader.sh /usr/local/bin/dropbox_uploader + dropbox_uploader + +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/10/linux_accessing_cloud_terminal_dropbox.jpg) + +When you run that last command, the script will notice that it’s your first time running the script. It’ll tell you to visit a certain Dropbox website to allow the script access to your account. It’ll also give you all the information you need to put into the website, which will allow Dropbox to return an App Key, App Secret, and Access Level that you give to the script. Now the script will have the correct authorization to your Dropbox account. + +Once that is completed, you can use the script to perform various tasks such as upload, download, delete, move, copy, mkdir, list, share, info, and unlink. For full syntax explanations, you can check out this page. + +### [Storage Made Easy][7] Brings SkyDrive To Linux ### + +Microsoft, unsurprisingly, does not offer an official SkyDrive client for Linux. That doesn’t mean you can’t access that cloud service, however: the web version works fine. + +But if you want to consolidate multiple personal clouds, or you would like easy (and sane) access to your SkyDrive account from Linux, you can also try out Storage Made Easy. This third party service consolidates its own storage offerings with up to three other personal cloud services. Even better: it offers an official client for Linux, and SkyDrive is one of the supported external cloud services! + +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/10/linux_accessing_cloud_configure_skydrive.jpg) + +In order to get Storage Made Simple to work, you’ll first need to create an account with them. Once you do, you have to go into the Dashboard and choose “Add a Cloud Provider”. Here you can choose the SkyDrive API and log in with those credentials. When you’ve added the credentials, you’ll need to hit the authorize button to create the authorization necessary. Then, download the client for Linux and install it. + +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/10/linux_accessing_cloud_storagemadeeasy.jpg) + +Upon first launch, it’ll ask you to log in, as well as where you’d like to mount the cloud to. After you’ve done all this, you should be able to navigate to the folder you’ve chosen and you should be able to access your Storage Made Easy space as well as your SkyDrive space! While this method is great for getting SkyDrive to work on Linux, it’s also great for all other services to simply combine them into a single location. The downside to this method is that you won’t be able to use the special features found in the official clients for each service. + +Since it’s now possible to access SkyDrive from your Linux desktop, you may want to read my [comparison between SkyDrive and Google Drive][8] to figure out what works best for you. + +### Conclusion ### + +As you can see, there is more than one way to access your personal cloud storage. Of course, if you feel like your current setup is best for you, then there’s no reason to change. However, as an example, if you’ve always been a lover of the terminal and have wanted a way to interact with your Dropbox account using the terminal, you can do so! The beauty is that you can choose what works best for you. Also, keep your mind open – while I’ve highlighted certain tools and examples, there may be other tools for other cloud services in the future which can make you more flexible. + +What’s your favorite way of accessing your personal cloud storage? What would be your most ideal solution? Let us know in the comments! + +-------------------------------------------------------------------------------- + +via: http://www.makeuseof.com/tag/3-ways-to-access-and-use-cloud-storage-skydrive-etc-in-linux/ + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://spideroak.com/opendownload/ +[2]:https://www.dropbox.com/install?os=lnx +[3]:http://one.ubuntu.com/ +[4]:http://www.makeuseof.com/tag/ubuntu-unknown-worthy-contender-cloud-storage/ +[5]:http://www.copy.com/ +[6]:http://www.makeuseof.com/tag/copy-a-dropbox-alternative-with-more-storage-mac-linux-windows-ios-android/ +[7]:http://storagemadeeasy.com/ +[8]:http://www.makeuseof.com/tag/skydrive-vs-google-drive-which-is-best-for-office-productivity/ \ No newline at end of file diff --git a/sources/BetaPizza Hackaton Results.md b/sources/BetaPizza Hackaton Results.md deleted file mode 100644 index 6fede2ca1a..0000000000 --- a/sources/BetaPizza Hackaton Results.md +++ /dev/null @@ -1,69 +0,0 @@ -BetaPizza Hackaton Results -================================================================================ -![](https://news.opensuse.org/wp-content/uploads/2013/01/P1270681-300x225.jpg) - -Friday a week ago a [Beta Pizza Hackaton][1] took place at the SUSE offices and online. 121 people went over more than 580 bugs, screening 440 and fixing 140 of them. The contest was won by Stephan ‘coolo’ Kulow and Dominique ‘DimStar‘ Leuenberger, with top gold fixers Josef Reidinger and Michael Chang and a honorable mention for Antoine Saroufim. - -## The BetaPizza Party Concept Turned Hackaton ## - -Usually, the BetaPizza is as much about testing as about party. This time we added in the fixing of bugs as well! The SUSE engineers joined on Friday the 27th to catch and kill as many of these pesky little creatures as possible. - -We set up some facilities: - - -- a [bug list prepared][2] in bugzilla, labeled as [GOLD][3], [SILVER][4] and [BRONZE][5] as part of a contest) -- [a Google hangout][6] -- a [#openSUSE-pizza-hackaton IRC channel on Freenode][7] - -In the various offices, a local BetaPizzaMaster made sure a common room was reserved and pizza was available at the appropriate time. - -![](https://news.opensuse.org/wp-content/uploads/2013/09/pizza-David-Standout-geekoified-300x225.png) - -## Results and winners of the bug fixing contest ## - -Let’s start our results section with some great statistics: - -- **140** fixed (19 GOLD, 4 SILVER, 0 BRONZE, 117 OTHER) -- **440** screened (46 GOLD, 19 SILVER, 0 BRONZE, 375 OTHER) -- **121** participants (76 employees, 45 volunteer) - -As we said in the initial article announcing the event, we have some SUSE provided prizes for top contributors. An evaluation committee was established with Richard Brown (openSUSE Board member), Frederic Crozat (SLE department, openSUSE contributor) and Michal Hrusecky (openSUSE Team) as members. - -It was a tough decision, but in the end, the committee selected two hackers, well known to Factory contributors, as overall winners: Stephan ‘coolo’ Kulow and Dominique ‘DimStar’ Leuenberger. The committee furthermore awarded the top contributors working on the preselected golden bugs: Josef Reidinger and Michael Chang. The committee finally decided on a Honorable mention. This one goes to Antoine Saroufim, who was helping the GNOME team a lot with testing and providing feedback regarding various bugs and crashes over IRC. - -So in the end, we have three awards with following winners: - -- **Winners**: Stephan ‘coolo’ Kulow and Dominique ‘DimStar’ Leuenberger -- **Top gold fixers**: Josef Reidinger and Michael Chang -- **Honorable mention**: Antoine Saroufim - -![](https://news.opensuse.org/wp-content/uploads/2013/10/Taipei-Pizza-300x225.jpeg) - -Local experiences at the SUSE Offices - -Taipei kicked off the long day, opening the hangout and working from a single room. Beijing had the biggest showing with 40 participants and 18 pizza’s eliminated though part of the Pizza eaters were kicking off [hackweek][8] and didn’t participate in the hackaton. The Pizza Master David Liang reports that the team enjoyed the IRC bot which reported the results of their work and other teams echo-ed this. - -The Provo team noted that being in the last timezone meant being pretty lonely. Pizza Master Scott suggested we need to set up a teleportation unit and get everybody physically in one place next time. The openSUSE team is evaluating this option and suggestions for reasonably priced teleportation devices are welcome. - -More testing? - -All in all, we fixed lots of bugs, rid the world of some pizza (don’t worry, the world isn’t running out, and it’s [easy to make][9]) and had fun. But there’s more work to do – [openSUSE 13.1 RC1 is out][10] and we’re looking forward to more bug reports and fixes! - --------------------------------------------------------------------------------- - -via: https://news.opensuse.org/2013/10/15/betapizza-hackaton-results/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:https://news.opensuse.org/2013/09/25/beta-pizza-hackaton-starting-friday/ -[2]:https://bugzilla.novell.com/buglist.cgi?query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=NEEDINFO&bug_status=REOPENED&bug_status=VERIFIED&resolution=---&product=openSUSE%2012.3&product=openSUSE%20Factory -[3]:https://bugzilla.novell.com/buglist.cgi?field0-0-0=status_whiteboard&type0-0-0=substring&value0-0-0=GOLD -[4]:https://bugzilla.novell.com/buglist.cgi?field0-0-0=status_whiteboard&type0-0-0=substring&value0-0-0=SILVER -[5]:https://bugzilla.novell.com/buglist.cgi?field0-0-0=status_whiteboard&type0-0-0=substring&value0-0-0=BRONZE -[6]:https://plus.google.com/events/csnu5vk431s6b2292dbi911vumc -[7]:irc://freenode.net/#openSUSE-pizza-hackaton -[8]:http://hackweek.suse.com/ -[9]:https://news.opensuse.org/2011/09/30/opensuse-pizza-parties-the-geeko-way/ -[10]:https://news.opensuse.org/2013/10/11/opensuse-13-1-rc-1-available-time-to-test/ \ No newline at end of file diff --git a/sources/CISCO Announce New Open Source H.264 Codec.md b/sources/CISCO Announce New Open Source H.264 Codec.md new file mode 100644 index 0000000000..fd7d0fd1e6 --- /dev/null +++ b/sources/CISCO Announce New Open Source H.264 Codec.md @@ -0,0 +1,51 @@ +翻译中 by Linux-pdz +CISCO Announce New Open Source H.264 Codec +================================================================================ +![](http://www.omgubuntu.co.uk/wp-content/uploads/2012/04/youtube.jpg) + +*YouTube Is One of Many Sites Using H.264* + +**American networking company Cisco [has announced plans to offer an open-source H.264 codec][1] - a move it says will “remove barriers” to its use in WebRTC.** + +H.264 is widely used in HTML5 video streaming, though not all browsers and operating systems are able to make use of it. + +This is because use of the codec for encoding or decoding requires royalty payments to be made to the MPEG LA, an organisation who license the tangle of patents related to it (which, perhaps not so coincidentally, [includes some patents owned by Cisco][2]). + +Furthermore, the codec is prohibited from being distributed with open-source products like web browsers. + +This is why some of YouTube’s HTML5 videos don’t play in Firefox but do in Google Chrome. The latter is able to pay licensing costs on behalf of its users. + +But Cisco are aiming to reset this inequality by offering an open-source implementation of the H.264 codec – called OpenH264, developed by them – that **can be used by any project**, including open-source ones, **for free**. No license fees and no restrictions will apply to the use of its binary modules. + +The company say that by open-sourcing their H.264 codec, and offering a pre-compiled binary file for free download, it can be used to power newer technologies like WebRTC – a HTML5 API that allows for ‘real time communication’ between browsers. + +> ‘Cisco aren’t the first to create an open-source implementation of H.264…’ + +Indeed, Mozilla [has already announced][3] that it plans to support Cisco’s H.264 binary modules in Firefox. + +Cisco aren’t the first to create an open-source implementation of this code. The GNU libavcodec library includes both a decoder and an encoder, the latter based on [x264][4]. But what Cisco are offering is a legal foothold – something other open-source efforts have lacked. This makes the decoder far more useful to companies like Mozilla, who can use it without fear or legal redress. + +The nitty-gritty of how this this new offering from Cisco will be offered is a little less straightforward, however. + +Cisco will open-source their H.264 stack. This, along with pre-compiled binary modules, will be available to download, for free, from their website. Applications such as Firefox will be able to ‘load’ the binary (even auto-download it where needed) to make use of it. + +While Cisco will pay patent license costs to the MPEG LA they won’t pass this on to users of their module. It’s less clear what protection those compiling directly from its source will have, though with the code due to hit Github in the coming weeks more information will be available. + +### Summary ### + +The tl;dr is that Cisco are helping to move the web forward. High-quality video streaming based on a widely used standard will, with OpenH264, be available to more people on more platforms thanks to some goodwill and open-source effort on behalf of Cisco. + +Whether you’re a fan of H.264, or favour the adoption of truly free codecs like VP8, the ‘levelling of the playing field’ this move offers can only be seen as a good move. + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2013/10/cisco-announce-open-source-h-264-codec + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://blogs.cisco.com/collaboration/open-source-h-264-removes-barriers-webrtc/ +[2]:http://en.wikipedia.org/wiki/MPEG_LA#H.264.2FMPEG-4_AVC_Licensors +[3]:https://blog.mozilla.org/blog/2013/10/30/video-interoperability-on-the-web-gets-a-boost-from-ciscos-h-264-codec/ +[4]:http://en.wikipedia.org/wiki/X264 \ No newline at end of file diff --git a/sources/Cloud tool Juju GUI 0.11 released with new features and enhancements.md b/sources/Cloud tool Juju GUI 0.11 released with new features and enhancements.md deleted file mode 100644 index 0e69500c40..0000000000 --- a/sources/Cloud tool Juju GUI 0.11 released with new features and enhancements.md +++ /dev/null @@ -1,38 +0,0 @@ -Cloud tool Juju GUI 0.11 released with new features and enhancements -================================================================================ -Solid-as-a-rock desktops, polished phones and advanced cloud tools are the ground on which [Canonical][1] stands, company being characterized by speed in development, bold decisions and an overall innovative quality, innovation setting Canonical as a serious partner for Dell, HP and OpenStack Foundation, as well as delivering freshness and modernism in the IT world. - -[Juju][2] is an Ubuntu technology that offers reliable service orchestration in the cloud, environment where it permits fast and productive deploying, scaling and managing of services, thus allowing its utilizers to deploy Wordpress, MongoDB, Ceph, etc. - -Juju can be harnessed via both command-line and intuitive GUI, latter expressed as Juju GUI. - -[Juju GUI][3] is a fancy, user-friendly and intuitive web-based interface for Juju, allowing complex actions from within web-browsers, Juju GUI presenting itself as a hassle-free manner of using Juju's power. - -Juju GUI has been [updated][4] to version **0.11**, introducing a significant amount of new features, as well as multiple fixes and optimizations, among which: - -- support for upgrading/downgrading of service's charms -- support to display both endpoints for relations -- significantly decreased size of GUI distribution (therefore, increasing the speed of deployment) -- optimized service positioning behavior -- red-triangle marker added to recommended charms and bundles -- removed faulty behaviors (such as newly-added units overlapping previously-added units) -- accurate URLs for unit details -- several enhancements - -![](http://iloveubuntu.net/pictures_me/juju%20gui%20011.png) - -Juju GUI can be tested and grasped on [https://jujucharms.com/sidebar/][5] - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/cloud-tool-juju-gui-011-released-new-features-and-enhancements - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.canonical.com/ -[2]:https://juju.ubuntu.com/ -[3]:https://launchpad.net/juju-gui -[4]:http://jujugui.wordpress.com/2013/10/18/0-11-0-juju-gui-release/ -[5]:https://jujucharms.com/sidebar/ \ No newline at end of file diff --git a/sources/Create And Manage Encrypted Folders in Linux With encfs.md b/sources/Create And Manage Encrypted Folders in Linux With encfs.md index c652fb8997..ad92f48de8 100644 --- a/sources/Create And Manage Encrypted Folders in Linux With encfs.md +++ b/sources/Create And Manage Encrypted Folders in Linux With encfs.md @@ -1,3 +1,4 @@ +(翻译中 by runningwater) Create And Manage Encrypted Folders in Linux With encfs ================================================================================ here are times when you want certain information on your computer protected from prying eyes. One way to protect your information is to encrypt your home directory. However, that does not protect your information when you are logged on to your computer. I've shown in the past how you can [use Cryptkeeper to create an encrypted folder on your system][1]. Cryptkeeper is a graphical front end to **encfs**. encfs allows you to create an encrypted folder and then mount it as a user filesystem using [FUSE][2]. In this tutorial I'll show how to use encfs from the command line to create and manage an encrypted folder on Linux. @@ -60,7 +61,7 @@ What will you use encfs for? Let me know in the comments. via: http://tuxtweaks.com/2013/10/encrypted-folders-linux-encfs/ -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) +译者:[runningwater](https://github.com/runningwater) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/sources/Daily Ubuntu Tips – How To Change Your Computer Name.md b/sources/Daily Ubuntu Tips – How To Change Your Computer Name.md deleted file mode 100644 index bcf2a72232..0000000000 --- a/sources/Daily Ubuntu Tips – How To Change Your Computer Name.md +++ /dev/null @@ -1,35 +0,0 @@ - 翻译中啦,Vic___ - -Daily Ubuntu Tips – How To Change Your Computer Name -================================================================================ -Another blog post that is geared towards new Ubuntu users or newbies. This post shows you how to easily change your computer name when using Ubuntu. Many users will never worry about changing their computer name or hostname in Ubuntu. In most cases, that’s the least of their worries. - -Many will use the name that was created or given to the machine during Ubuntu installation. But for those new users who would like to know how to do it, continue below to learn how. This post isn’t for pros, it’s for newbies and users who are just starting out with Ubuntu. - -So, why would you want to change your computer name again? If you don’t have a good reason other than to learn how to do it, then don’t. If you want to do it for a good reason or learn how to do it, then do this. - -Press **Ctrl – Alt – T** on your keyboard to open the terminal. When it opens, run the commands below to edit the hostname file using gedit. - - sudo gedit /etc/hostname - -Next, change whatever in there to be the new computer name. For example, if you want your computer name to be RDOMNU, delete what’s currently in there and type **RDOMNU** and save the file. - -Next, run the commands below to open the hosts file. - - sudo gedit /etc/hosts - -Then change the value of the second line highlighted below to match your computer name you entered earlier. Save the file when you’re done. - -![](http://www.liberiangeek.net/wp-content/uploads/2013/10/ubuntuhostnamechange.png) - -That’s it! Restart your computer and your machine will reflect the new name. This is how one changes the name of a Ubuntu machine. - -Enjoy! - --------------------------------------------------------------------------------- - -via: http://www.liberiangeek.net/2013/10/daily-ubuntu-tips-change-computer-name/ - -译者:[译者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/Daily Ubuntu Tips – Resize Ubuntu Unity Launcher.md b/sources/Daily Ubuntu Tips – Resize Ubuntu Unity Launcher.md index a6ab1fe25d..9a59504c34 100644 --- a/sources/Daily Ubuntu Tips – Resize Ubuntu Unity Launcher.md +++ b/sources/Daily Ubuntu Tips – Resize Ubuntu Unity Launcher.md @@ -1,3 +1,5 @@ + Vic020翻译中 + Daily Ubuntu Tips – Resize Ubuntu Unity Launcher ================================================================================ Here’s another tip for users who are new to Ubuntu. This series aims to help new users to Ubuntu configure and manage their computer easily. It’s not geared towards Ubuntu power users or pros, rather users who are just starting with Ubuntu. diff --git a/sources/Daily Ubuntu Tips – Understanding The App Menus And Buttons.md b/sources/Daily Ubuntu Tips – Understanding The App Menus And Buttons.md deleted file mode 100644 index 658972dcd3..0000000000 --- a/sources/Daily Ubuntu Tips – Understanding The App Menus And Buttons.md +++ /dev/null @@ -1,37 +0,0 @@ -crowner翻译 -Daily Ubuntu Tips – Understanding The App Menus And Buttons -================================================================================ -Ubuntu is a decent operating system. It can do almost anything a modern OS can do and sometimes, even better. If you’re new to Ubuntu, there are some things you won’t know right away. Things that are common to power users may not be so common to you and this series called ‘Daily Ubuntu Tips’ is here to help you, the new users learn how to configure and manage Ubuntu easily. - -Ubuntu comes with a menu bar. The main menu bar is the dark strip at the top of your screen which contains the status menu or indicator with (Date/Time, volume button), the App menus and Windows management buttons. - -Windows management buttons are at the top left corner of the main menu (dark strip). When you open an application, the buttons on the main menu at the top left corner with close, minimize, maximize and restore is called Windows management buttons. - -The App menus is located at the right of the Windows management button. It shows application menus when they are opened. - -By default, Ubuntu hides the app menus and windows management buttons unless you move your mouse to the left corner, you wouldn’t be able to see them. If you open an application and can’t find the menu, just move your mouse to the left corner of your screen to show it. - -If this is confusing and you want to disable the app menus so that each application can have its own menu, then continue below. - -To uninstall or remove the app menus, run the commands below. - - sudo apt-get autoremove indicator-appmenu - -Running the command above will remove the app menu also known as global-menu. Now for the change to take effect, log out and log back in. - -Now when you open applications in Ubuntu, each application will show its own menus instead of hiding it on the global menu or main menu. - -![](http://www.liberiangeek.net/wp-content/uploads/2013/09/ubuntuappmenuglobalmenu.png) - -That’s it! To go back to what it was, run the commands below - - sudo apt-get install indicator-appmenu - -Enjoy! --------------------------------------------------------------------------------- - -via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tips-understanding-app-menus-buttons/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) \ No newline at end of file diff --git a/sources/Daily Ubuntu Tips–Change The Language You Use In Ubuntu.md b/sources/Daily Ubuntu Tips–Change The Language You Use In Ubuntu.md new file mode 100644 index 0000000000..92f4dd42dd --- /dev/null +++ b/sources/Daily Ubuntu Tips–Change The Language You Use In Ubuntu.md @@ -0,0 +1,33 @@ +Daily Ubuntu Tips–Change The Language You Use In Ubuntu +================================================================================ +Ubuntu, a modern and powerful operating system also allows you to use your desktop in dozens of other languages. By default, there are few language packs installed when you first setup Ubuntu. If you want Ubuntu to support more languages, you must install additional language packs. Not all languages are support, but most languages that are in used and written are supported. This brief tutorial is going to show you how to make this happen. + +After installing a language pack, you can also rename standard folders like music, pictures and documents according to your language. You must log off and log back in for the changes to apply. When you log back in, you’ll prompted and asked if you want to rename these standard folders to match the names for your selected language. + +To change which language you use in Ubuntu, click the top right **gear** of the menu bar and select **System Settings**. When the System Settings opens, select **Language Support**. + +If prompted to install additional language support, do it. If not, click Install / Remove to install new language packs, then select the language you which to install and install it. Finally, drag the language at the top of the list and save. This change will only apply to your profile. If you which to apply the language settings system-wide, click **Apply System-Wide**. + +![](http://www.liberiangeek.net/wp-content/uploads/2013/10/language-ubuntu.png) + +Drag the new language at the top of the list. When done, click Close. + +![](http://www.liberiangeek.net/wp-content/uploads/2013/10/language-ubuntu-1.png) + +Close out and log out. Then log back in and enjoy! + +Again, changing the language pack will only apply to your profile. If you want it globally, you must click Apply System-Wide. + +![](http://www.liberiangeek.net/wp-content/uploads/2013/10/language-ubuntu-2.png) + +If you choose to rename standard folders to your native language, you’ll see folders name changed after you sign on. + +Enjoy! + +-------------------------------------------------------------------------------- + +via: http://www.liberiangeek.net/2013/10/daily-ubuntu-tipschange-the-language-you-use-in-ubuntu/ + +译者:[译者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/Daily Ubuntu Tips–Change The Logon Screen Background.md b/sources/Daily Ubuntu Tips–Change The Logon Screen Background.md deleted file mode 100644 index 7975baa9b5..0000000000 --- a/sources/Daily Ubuntu Tips–Change The Logon Screen Background.md +++ /dev/null @@ -1,43 +0,0 @@ -Daily Ubuntu Tips–Change The Logon Screen Background -================================================================================ -Here’s a simple tip that shows you how to change Ubuntu logon screen background with custom images. Ubuntu logon screen is ok and maybe better than most Linux distributions, but if you want to show custom images like ones that remind you of special places and things, you may be able to change it using the steps below. - -There are many ways to do this and this post is just one of many. The method below uses dconf-editor and lightdm user to accomplish to get the same results. To do it, change to the root user and give lightdm user access to the x-server. Next using lightdm user credentials, run dconf-editor and make the change. - -After setting the custom logon image and restarting, you should see the picture everytime you start your machine. If image is one you love and brings back a log of memories, you should be delighted everytime you startup Ubuntu to logon. - -This tutorial assumes you already have dconf-editor installed on your machine. If not, run the commands below to install dconf-editor. - - sudo apt-get install dconf-editor - -Next, choose the image you wish to use as your logon image. Then take notes of the location, including the image name. Next, run the commands below to change to the root user. - - sudo –i - -Next, run the commands below to give lightdm user access to the X-Server. Lightdm is the service that manages the logon background so if you need to make changes to the logon screen, it should be done as lightdm user. - - xhost +SI:localuser:lightdm - -Next, change to lightdm user by running the commands below. - - su lightdm -s /bin/bash - -Then run the commands below to start dconf-editor. - - dconf-editor - -When the tool opens, browse to **com –> canonical –> unity-greeter**. Then change the background value to the custom image. You may also want to disable draw-grid. - -![](http://www.liberiangeek.net/wp-content/uploads/2013/09/logon-screen-background.png) - -Restart your computer and enjoy your~ - -![](http://www.liberiangeek.net/wp-content/uploads/2013/09/logon-screen-background-1.png) - --------------------------------------------------------------------------------- - -via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tipschange-logon-screen-background/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) \ No newline at end of file diff --git a/sources/Development version of GIMP presented with top-bottom-left-right configurable tabs.md b/sources/Development version of GIMP presented with top-bottom-left-right configurable tabs.md deleted file mode 100644 index 7b073ed78b..0000000000 --- a/sources/Development version of GIMP presented with top-bottom-left-right configurable tabs.md +++ /dev/null @@ -1,24 +0,0 @@ -Development version of GIMP presented with top-bottom-left-right configurable tabs -================================================================================ -[GIMP][1] is a powerful, advanced and complex image-editing application, permitting to both regular and professional skilled users to in-depth edit images via a massive amount of features, tools and functionalities. - -It seems that the unstable development-only versions of **GIMP** are targeting interesting potential additions, including a more friendly and configurable manner of enjoying tabs in **GIMP**. - -The official Google+ webpage of GIMP [shared][2] an interesting image with a **development** version of GIMP featuring adjustable tabs, essentially, allowing the user to set the tabs in GIMP on top, bottom, left and right areas, therefore, permitting an easy rearranging of tabs per-one's likeness. - -The mentioned tweakable tabs are to be housed under the `Windows` menu, where the user is to be probably able to 1-click away select desired locations for tabs. - -![](http://iloveubuntu.net/pictures_me/gimp%20development%20tabs.png) - -The exciting support has been created due to "**in some cases it's desirable to have tabs position configurable**, so Jehan Pagès did just that: the unstable branch now lets you choose where you want your tabs: top, bottom, left, or right sides". - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/development-version-gimp-presented-top-bottom-left-right-configurable-tabs - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.gimp.org/ -[2]:https://plus.google.com/116634837115748851709/posts/KuXpxUf8iVm \ No newline at end of file diff --git a/sources/Disable Amazon & Remote Content Fetching In Ubuntu 13.10.md b/sources/Disable Amazon & Remote Content Fetching In Ubuntu 13.10.md deleted file mode 100644 index 317d9becd0..0000000000 --- a/sources/Disable Amazon & Remote Content Fetching In Ubuntu 13.10.md +++ /dev/null @@ -1,33 +0,0 @@ -Disable Amazon & Remote Content Fetching In Ubuntu 13.10 -================================================================================ -Now that Ubuntu 13.10 has been released, it’s now time to sit back and configure some settings that will suit your needs. Ubuntu 13.10 comes with many things and some of those may not be what you want when you install or upgrade Ubuntu. - -For example, when you install or upgrade to Ubuntu 13.10, you’ll automatically get Amazon and other commercial shopping scopes enabled. These lenses show up when you open Unity Dash. When you perform searches from Dash, content that matches your search terms will also be delivered from remote sources like Amazon as well. - -These added features provided by Canonical may be good for some, but for few users, this may be something they don’t want. - -Because fetching content from remote sources requires bandwidth, this may have a negative impact on your Internet bill especially if you live in areas that charges based on usages. - -For other users who may have security and privacy concerns, automatically searching remote sources from your local machine maybe not be the best idea. Some just don’t want commercial companies showing their products to them when performing basic searches from their local machines. - -This brief tutorial is going to show you how to quick disable Amazon and all remote content fetching when using Ubuntu 13.10. - -To get started, press **Ctrl – Alt – T** on your keyboard to show the terminal or console. When it opens, run the commands below to disable the feature. - - gsettings set com.canonical.Unity.Lenses remote-content-search 'none' - -If you want to re-enable it, run the commands below. - - gsettings set com.canonical.Unity.Lenses remote-content-search 'all' - -You’ll have to re-logon or restart your machine for the changes to take effect. After doing that, no remote sources will be use in your searches when using Ubuntu. - -Enjoy! - --------------------------------------------------------------------------------- - -via: http://www.liberiangeek.net/2013/10/disable-amazon-remote-content-fetching-ubuntu-13-10/ - -译者:[译者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/GNOME Settings Daemon 3.10.1 Fixes Memory Leaks.md b/sources/GNOME Settings Daemon 3.10.1 Fixes Memory Leaks.md deleted file mode 100644 index 1bfcd65670..0000000000 --- a/sources/GNOME Settings Daemon 3.10.1 Fixes Memory Leaks.md +++ /dev/null @@ -1,64 +0,0 @@ -GNOME Settings Daemon 3.10.1 Fixes Memory Leaks -================================================================================ -**The GNOME developers announced a few days ago that the first maintenance release of the stable GNOME Settings Daemon 3.10 package, a daemon run by all GNOME sessions to provide live access to configuration settings and the changes done to them, is available for download. ** - -![](http://i1-news.softpedia-static.com/images/news2/GNOME-Settings-Daemon-3-10-1-Fixes-Memory-Leaks-393135-2.png) - -GNOME Settings Daemon 3.10.1 is distributed as part of the recently released GNOME 3.10.1 desktop environment, and includes several memory leak fixes and small cleanups. Below is a detailed list with all the changes implemented in this stable release of GNOME Settings Daemon: - -**Housekeeping:** - -- The cache directories are no longer scanned if not needed; - -**Keyboard:** - -- The XKB group switching option is no longer set if not needed; - -**Media-keys:** - -- A gsettings key is now used for the maximum length of a screencast; - -**Mouse:** - -- Edge scrolling is now automatically enabled if two-finger scroll is not available; - -**Power:** - -- A test case has been added as no warning was provided on startup; -- Notifications are now displayed on critical battery state; -- The "keyboard Backlight is not available" warning has been fixed; -- A mouse will no longer appear as the status icon; - -**Updates:** - -- Added a 'Not Now' button to the distribution upgrade notification; -- Multiple notifications are no longer displayed when updates are available; -- It now requires PackageKit 0.8.1 or higher in order to avoid complexity; - -**Wacom:** - -- A couple of crashes have been fixed; -- Default area ordering has been fixed; -- A failure to get area with the cursor device has been fixed; -- Resetting the tablet area to default has been implemented; -- OSD has been fixed; -- Tablet PC setting has been removed as there's no UI (User Interface) for it; - -**XRandR:** - -- The temporary configurations generated by the FN+F7 keyboard shortcut or rotate buttons are no longer saved. - -More details about this release can be found in the [official raw changelog][1]. - -- [Download GNOME Settings Daemon 3.10.1 tar.xz][2][sources] [1.60 MB] - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/GNOME-Settings-Daemon-3-10-1-Fixes-Memory-Leaks-393135.shtml - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://ftp.acc.umu.se/pub/GNOME/sources/gnome-settings-daemon/3.10/gnome-settings-daemon-3.10.1.news -[2]:http://ftp.acc.umu.se/pub/GNOME/sources/gnome-settings-daemon/3.10/gnome-settings-daemon-3.10.1.tar.xz \ No newline at end of file diff --git a/sources/GNOME Software 3.10.1 Fixes Bugs and Adds New Features.md b/sources/GNOME Software 3.10.1 Fixes Bugs and Adds New Features.md deleted file mode 100644 index 0b1cebe8f7..0000000000 --- a/sources/GNOME Software 3.10.1 Fixes Bugs and Adds New Features.md +++ /dev/null @@ -1,31 +0,0 @@ -GNOME Software 3.10.1 Fixes Bugs and Adds New Features -================================================================================ -**The GNOME Project has announced last evening, October 14, that the first maintenance release for the recently introduced GNOME Software application for the GNOME 3.10 desktop environment is available for download/upgrade.** - -![](http://i1-news.softpedia-static.com/images/news2/GNOME-Software-3-10-1-Fixes-Bugs-and-Adds-New-Features-391284-2.jpg) - -GNOME Software 3.10.1 is a maintenance release that mostly fixes bugs reported by users who had the chance to test this new application, which was originally introduced with the release of the GNOME 3.10 desktop environment. - -However, the new release of GNOME Software also introduces some new features, among which we can mention a loading icon for empty tiles, support for the new 16:9 screenshots format, support for per-repo icon directories, support the 'X-AppInstall-Package' extension in desktop files, and the IBus frameworks installed by default are marked as system apps. - -The hardcoded ratings and screenshot plugins were removed from this version of GNOME Software, with the mention that they will not be available until the release of the GNOME 3.12 desktop environment, next year. - -Among the bugs fixed in GNOME Software 3.10.1, we can mention re-implementation of the hover state to feature tile, strings in the AppData file are now translatable, memory corruption is now prevented when doing dedupe() more than once, notify::state is no longer transmitted from a thread, and the "Remove" option is now displayed for installed apps that are updatable. - -Moreover, a critical error has been fixed in gs_string_replace(), some small memory leaks were fixed, a refcounting error, which could cause a crash, has been fixed, the application widget will no longer be removed twice when it changes state, and local applications have names, icons and comments. - -Last but not least, the following translations have been updated in this release: Indonesian, Latvian, Brazilian Portuguese, Czech, Hungarian, Italian, Polish, Slovenian, Spanish, and Traditional Chinese. More details can be found in the official raw [changelog][1]. - -- [GNOME 3.10.1 tar.xz][2][sources] [1.40 MB] - - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/GNOME-Software-3-10-1-Fixes-Bugs-and-Adds-New-Features-391284.shtml - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:http://ftp.acc.umu.se/pub/GNOME/sources/gnome-software/3.10/gnome-software-3.10.1.news -[2]:http://ftp.acc.umu.se/pub/GNOME/sources/gnome-software/3.10/gnome-software-3.10.1.tar.xz \ No newline at end of file diff --git a/sources/GNOME To Work On Wayland Accessibility Support.md b/sources/GNOME To Work On Wayland Accessibility Support.md deleted file mode 100644 index b8e5537246..0000000000 --- a/sources/GNOME To Work On Wayland Accessibility Support.md +++ /dev/null @@ -1,19 +0,0 @@ -GNOME To Work On Wayland Accessibility Support -================================================================================ -Now that GNOME 3.10 has shipped and with it comes initial native Wayland support, GNOME developers are beginning to focus on the GNOME 3.12 release cycle and working on some of the open work items in Wayland enablement. - -Matthias Clasen of Red Hat has written to the Wayland developers about improving the accessibility support. In the GNOME Wayland porting, among the accessibility items that will likely need to be implemented within the GNOME Shell Mutter Wayland compositor are input tweaks (slow keys / bounce keys), zoom and color adjustments, text protocol support for on-screen keyboards and the like, and other improvements for properly handling the on-screen keyboard. - -In terms of why Clasen is bringing this GNOME work up with Wayland developers, "All of these features violate the careful separation between clients that Wayland maintains, so that probably calls for some privileged interface for ATs. I would appreciate feedback and discussion on this. Has anybody else thought about these problems already?" - -The new mailing list thread can be found on [Wayland-devel][1]. - --------------------------------------------------------------------------------- - -via: http://www.phoronix.com/scan.php?page=news_item&px=MTQ4NzI - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:http://lists.freedesktop.org/archives/wayland-devel/2013-October/011487.html \ No newline at end of file diff --git a/sources/How to Control Your Linux PC with an Android Device.md b/sources/How to Control Your Linux PC with an Android Device.md new file mode 100644 index 0000000000..dad2d9daed --- /dev/null +++ b/sources/How to Control Your Linux PC with an Android Device.md @@ -0,0 +1,65 @@ +How to Control Your Linux PC with an Android Device +================================================================================ +**The following tutorial will teach all Linux users how to install SSH on their systems, in order to access their computers remotely from an Android tablet of smartphone.** + +![](http://i1-news.softpedia-static.com/images/news2/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004-2.jpg) + +These days we all have a tablet or phablet device, and we often find ourselves later at night watching a movie or TV show, listening to music, or reading a good book. You can call this article a tutorial for the lazy, for people who are too tired at night to start some process(es) on their computer, move, delete, copy or rename some files, or even to shutdown their PC. + +Yes, there are all sorts of remote desktop solutions out there, but many costs a fortune or are badly implemented and don't work as expected, forcing you to go to the PC after all and do the stuff you want to do. + +For this tutorial we will use a simple, secure and effective protocol called SSH (Secure Shell), which can be easily installed from your default software repositories (openssh in Arch Linux, or openssh-server in Ubuntu). + +### Configuring the SSH server ### + +After installation, you will need to do basic configuration for the SSH server. For this, you need to edit the /etc/ssh/sshd_config file with a text editor. + +1. Add the following line (where yourusername will be replaced with your actual username on your Linux box) at the end of the file: + +AllowUsers yourusername + +2. Uncomment the "#PermitRootLogin yes" line and add "no" instead of "yes" making it look like this: + +PermitRootLogin no + +2. For security reasons, you need to modify the 22 port, which is used by default on SSH connections, to a higher port, such as 55441 in our example below (but don't use 55441, be original, find another five or four digit number). To do this, uncomment and edit the "#Port 22" line to look like this: + + Port 55441 + +### Starting the SSH server ### + +On Ubuntu, the SSH service can be started using the following command: + + sudo /etc/init.d/ssh start + +...and every time you make modifications to the aforementioned configuration file, you can restart it using the following command: + + sudo /etc/init.d/ssh restart + +On Arch Linux you can start the SSH service using the following command: + + sudo systemctl start sshd + +### Configuring the SSH client on your Android device ### + +One of the best SSH clients for Android appears to be JuiceSSH, which is free, but those who find it poor in functionality, can pay a small amount of money for more advanced features, such as Amazon AWS/EC2 integration, team collaboration, and much more. + +Once the software is installed, open it and you will be asked to add an encryption password, which will keep your connections safe, encrypted with AES-256 so no one can access them in case your device is stolen. + +![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_001.jpg) + +Now, add a new connection by choosing a name, the IP address of your computer, the port set above, and an identity, which needs to be created... + +![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_002.jpg) + +![](http://i1-news.softpedia-static.com/images/extra/LINUX/large/sshlinuxandroid-large_003.jpg) + +...and here's my Arch Linux box, as viewed from the JuiceSSH client on my Android tablet. Do not hesitate to comment below if you run into problems during this tutorial. + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/How-to-Control-Your-Linux-PC-with-an-Android-Device-396004.shtml + +译者:[译者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/How to Install Ubuntu Touch 13.10 on Your Phone.md b/sources/How to Install Ubuntu Touch 13.10 on Your Phone.md deleted file mode 100644 index 09f772ee59..0000000000 --- a/sources/How to Install Ubuntu Touch 13.10 on Your Phone.md +++ /dev/null @@ -1,43 +0,0 @@ -How to Install Ubuntu Touch 13.10 on Your Phone -================================================================================ -**Ubuntu Touch 13.10 is a new operating system from Canonical aimed at phones, but it's not as easy installing it on your phone as it is on the desktop.** - -![](http://i1-news.softpedia-static.com/images/news2/How-to-Install-Ubuntu-Touch-13-10-On-Your-Phone-392828-2.jpg) - -Canonical provides all the necessary tools for the installation of Ubuntu Touch 13.10. This is very good news because installing the operating system manually can be a hassle. - -First of all, the operating system can't be used on just any phone. For development reasons, Canonical limited its use to Nexus 4 devices (maguro and mako), and the phone has to be unlocked. - -To install the tools you will need to enter a few easy commands in a terminal: - - sudo add-apt-repository ppa:phablet-team/tools - sudo apt-get update - sudo apt-get install phablet-tools android-tools-adb android-tools-fastboot - -Users also have to make sure that their phone is set up for development use. Go to Settings / About Phone and tap the Build number 7 times. A short message will let you know if you've taken the right steps. - -From the new menu that has been unlocked through the previous method, Developer options, you have to enable USB debugging. When the option is ticked on the phone, a message that informs the user about a paring will appear. Accept, and now you’re almost ready. - -The last step before starting the installation is to back up your Android. The same adb tools are used. Just open a terminal and enter the following command: - - adb backup -apk -shared -all - -If you're going to reinstall Android, open a terminal and run this command: - - adb restore backup.ab - -The final command should take care of everything and you should run it with sudo, just to make sure. Open a terminal and enter this command: - - phablet-flash ubuntu-system --no-backup - -The process should run without any problems and the device will eventually boot into Ubuntu Touch. Do not stop the terminal and do not interrupt the process. - -These are the simple steps you have to follow, and they should work on the supported devices without any problems. - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/How-to-Install-Ubuntu-Touch-13-10-On-Your-Phone-392828.shtml - -译者:[译者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/How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 1.md b/sources/How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 1.md new file mode 100644 index 0000000000..e0461bb892 --- /dev/null +++ b/sources/How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 1.md @@ -0,0 +1,108 @@ +(正在翻译 by whatever1992) +How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 1 +================================================================================ +It's always been prudent to wrap a warm comfy layer of encryption over your Internet travels to foil snoops of all kinds, and with our own government slurping up every bit wholesale it's more crucial than ever. OpenVPN is the top choice for protecting networking over untrusted networks. Today we'll learn a quick way to set up OpenVPN so you can securely access your home server when you're on the road. + +A quick note on VPNs: there are many commercial VPNs that aren't worth the bits they're printed on. They're little better than SSL-protected Web sites, because they trust all clients. A true VPN (virtual private network) connects two trusted endpoints over untrusted networks. You can't just log in from whatever random PC you find, and this is good because (presumably) you understand that logging in to your private network from an infected host is a bad thing to do, no matter how secure the connection is. So you have to configure both your server and client. + +### OpenVPN Quickstart ### + +You need two computers on different subnets, like a wired and wireless PC on the same network (or a couple of Linux guests in Virtualbox), and you need to know the IP addresses of both PCs. Let's call our example computers Studio and Shop. Install OpenVPN on both of them. OpenVPN is included in most Linux distributions, so you can install it with your favorite package manager. This example is for Debian, Ubuntu, and their myriad descendants: + + $ sudo apt-get install openvpn openvpn-blacklist + +That installs the server and a little program to check the blacklist of compromised keys. You must install the blacklist checker! Because once upon a time Debian distributed a [broken version of OpenSSL][1] which had a broken random number generator, so keys created with this are assumed to be too vulnerable to trust. The random number generator was not really random, but predictable. This happened way back in 2008, and everyone who used the defective OpenSSL was supposed to hunt down and replace their weak keys. Even though it's been over five years, it's cheap insurance to use the blacklist checker. + +Now let's test it by creating an unencrypted tunnel between our two PCs. First ping each machine to make sure they're talking to each other. Then make sure that OpenVPN is not running, because we're going to start it manually: + + $ ps ax|grep openvpn + +If it is, kill it. Let's say that Studio's IP address is 192.168.1.125, and Shop's is 192.168.2.125. Open an unencrypted tunnel from Studio to Shop: + +$ sudo openvpn --remote 192.168.2.125 --dev tun0 --ifconfig 10.0.0.1 10.0.0.2 + +Then from Shop to Studio: + + $ sudo openvpn --remote 192.168.1.125 --dev tun0 --ifconfig 10.0.0.2 10.0.0.1 + +When you make a successful connection you'll see something like this: + + Wed Oct 16 2013 ******* WARNING *******: all encryption and authentication + features disabled -- all data will be tunnelled as cleartext + Wed Oct 16 2013 TUN/TAP device tun0 opened + Wed Oct 16 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0 + Wed Oct 16 2013 /sbin/ifconfig tun0 10.0.0.1 pointopoint 10.0.0.2 mtu 1500 + Wed Oct 16 2013 UDPv4 link local (bound): [undef] + Wed Oct 16 2013 UDPv4 link remote: [AF_INET]192.168.2.125:1194 + Wed Oct 16 2013 Peer Connection Initiated with [AF_INET]192.168.2.125:1194 + Wed Oct 16 2013 Initialization Sequence Completed + +"Initialization Sequence Completed" are the magic words that confirm you did it right. You should be able to ping back and forth with the tunnel addresses, ping 10.0.0.1 and ping 10.0.0.2. When you build your tunnel you may use whatever IP addresses you want that don't overlap with your existing network. To close your tunnel press Ctrl+c. + +Just for fun open an SSH session over your tunnel. Figure 1 shows a successful SSH login over a VPN tunnel, and it also demonstrates the fancy Message of the Day from [Put a Talking Cow in Your Linux Message of the Day][1]: + + $ ssh carla@10.0.0.2 + +![](http://www.linux.com/images/stories/41373/SSH-OpenVPN.jpg) + +*Figure 1: A successful SSH session over a VPN tunnel, and a fancy MOTD.* + +Hurrah, it works! + +### Encrypted VPN Tunnel ### + +This is all fun and exciting, but pointless without encryption, so we'll set up a simple static key configuration. It's not as strong as a proper public key infrastructure (PKI) with root certificates and revocations and all that good stuff, but it's a good-enough solution for the lone nerd needing to call home from the road. OpenVPN helpfully includes a command to create the static key, so create a directory to store the key in, create the key, and make it read-only for the file owner: + + $ sudo mkdir /etc/openvpn/keys/ + $ sudo openvpn --genkey --secret /etc/openvpn/keys/static.key + $ sudo chmod 0400 /etc/openvpn/keys/static.key + +This is a plain-text key that you can open in a text editor and look at if you're curious, and you can name it anything you want; you don't have to call it "static.key". Copy this key to both computers-- yes, the same key. It's not a private-public key pair, but just one single shared key. + +Now we'll create some simple barebones configuration files for each computer. (On Debuntu etc. there are no default configuration files, but rather a wealth of example files in/usr/share/doc/openvpn/.) In my little test tab Studio is the server, and Shop is the wandering laptop that will log into the server. My server configuration file is/etc/openvpn/studio.conf, and this is all it has: + + # config for Studio + dev tun + ifconfig 10.0.0.1 10.0.0.2 + secret /etc/openvpn/keys/static.key + +Make this file readable and writable only to the file owner: + + $ sudo chmod 0600 /etc/openvpn/studio.conf + +The configuration file on the client is similar, with the addition of the IP address of the server: + + # config for Shop + dev tun + ifconfig 10.0.0.2 10.0.0.1 + secret /etc/openvpn/keys/static.key + remote 192.168.1.125 + +Mind the order of your IP addresses on the ifconfig line, because they need to be in the order of local > remote. Now fire up OpenVPN on the server, specifying the server configuration file, and do the same on your client: + + $ sudo openvpn /etc/openvpn/studio.conf + $ sudo openvpn /etc/openvpn/shop.conf + +You'll see the same "Initialization Sequence Completed" message for a successful connection, and you must also look for the absence of this message, which should have appeared when you created your un-encrypted tunnel: + + ******* WARNING *******: all encryption and authentication features disabled + +Firewalls and Dynamic IP Addresses + +OpenVPN itself is simple to configure. The biggest hassles are dealing with firewalls and dynamic IP addresses. There are a skillion different firewalls in the world, so I shall leave it as your homework to figure out how to get through it safely. OpenVPN wants port 1194, and then you'll want to have a forwarding rule that points to the computer you want to access. + +Dynamic IP addresses are another hassle. [Dyn.com][3] is an inexpensive way to manage dynamic IP assignment from your ISP. Or you might be able to pay your ISP a few bucks to get a static address. + +At this point you could stop and call it good, because you can manually start OpenVPN on your server and leave it waiting for you, take your laptop out into the world, and connect to your server whenever you want. However, there are some refinements we can add such as daemonizing OpenVPN on the server, using Network Manager to make the connection automatically, and the biggest missing piece in OpenVPN howtos: how to access your remote resources. So come back next week for the rest of the story. + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/learn/tutorials/743590-secure-remote-networking-with-openvpn-on-linux + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.debian.org/security/2008/dsa-1571 +[2]:http://www.linux.com/learn/tutorials/741573-put-a-talking-cow-in-your-linux-message-of-the-day +[3]:http://dyn.com/dns/ diff --git a/sources/How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 2.md b/sources/How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 2.md new file mode 100644 index 0000000000..1e3f50b214 --- /dev/null +++ b/sources/How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 2.md @@ -0,0 +1,93 @@ +How to Set Up Secure Remote Networking with OpenVPN on Linux, Part 2 +================================================================================ +Greetings fellow Linux users, and welcome to the second part of our glorious OpenVPN series. When last we met we learned how to set up a [simple OpenVPN encrypted tunnel][1] between a home server and a remote node, such as a laptop. Today we're adding refinements such as how to daemonize OpenVPN so we don't have to start it manually, use Network Manager for easy connecting to our remote server, and access services. + +### Network Manager Integration ### + +Network Manager is a nice OpenVPN client; just make sure you have the network-manager-openvpn plugin installed. We'll use our example configurations from part 1. Open your Network Manager configuration and find the window where you set up a new VPN connection. This looks different on KDE and GNOME, but the information you'll need is the same. When you start you need to see an OpenVPN connection type, like in figure 1; if you don't see this then the plugin is missing. (The figures are from GNOME.) + +![](http://www.linux.com/images/stories/41373/figu-1-openvpn-nm.jpg) + +*Figure 1: Creating a new OpenVPN client config in Network Manager.* + +Figure 2 shows the main configuration screen. Starting from the top: + +- Whatever name you want for this connection. +- The Gateway is the IP address of your remote server. +- Select Static Key from the dropdown menu, +- Then use the filepicker to find the key you want to use. +- This is not a directional key, so select None. +- The remote and local IP addresses are your virtual OpenVPN addresses, from your /etc/openvpn/foo.conf files. +- We did not set a password. +- "Available to all users" or just you, whichever you want. + +![](http://www.linux.com/images/stories/41373/fig-2-openvpn-nm-1.jpg) + +*Figure 2: Main Network Manager configuration for OpenVN client.* + +Save, and then use Network Manager to connect. Easy peasey! Now you can connect and disconnect with the click of a button (figure 3). + +![](http://www.linux.com/images/stories/41373/fig-3-openvpn-nm-3.jpg) + +### Run OpenVPN Automatically ### + +It's simple to start up OpenVPN manually, but you might want to daemonize it on your server for convenience, and to survive accidental reboots. On Debian/Ubuntu/great-thundering-herd-of-spawn distros this is handled automatically: when you install OpenVPN it's configured to automatically start at boot. So, after installation you need to reboot, or start the daemon with one of these commands: + + $ sudo /etc/init.d/openvpn start + $ sudo service openvpn start + +The first command is the old-fashioned way, and the second command uses the service command. service first appeared in Red Hat Linux back in the olden days, and if your distro doesn't install it by default it's probably lurking in the repos if you want to use it. + +Fedora uses the systemd init system, in contrast to Ubuntu which uses Upstart, and Debian still uses good old SysV init. If you have multiple OpenVPN configurations in /etc/openvpn you can start each one selectively in systemd, like this: + + # systemctl start systemctl start openvpn@studio.service + +Where "studio.service" references our example /etc/openvpn/studio.conf file from part one. This invocation does not survive a reboot, so it's just like running openvpn /etc/openvpn/studio.conf, which is how we started OpenVPN sessions manually in part 1. You should be able to daemonize OpenVPN on systemd with chkconfig: + + # service openvpn start + # chkconfig openvpn on + +That should daemonize OpenVPN in the usual way, which is as a monolithic daemon and not individually per .conf file in /etc/openvpn/. systemd supports the chkconfig and servicecommands so it should work. However, the distros that use systemd are quite variable, so if yours is different please let us know in the comments. + +### Strengthening Your Connection ### + +OpenVPN is robust and is good at maintaining a persistent connection, even with service interruptions. You can make your connection even stronger by adding these lines to your .conf files on clients and server: + + persist-tun + persist-key + +These are helpful for laptop users who disrupt their connection a lot with power-save and being on the move. + +### Now What? ### + +Now that you have this all set up and working, what do you do with it? If you're used to using OpenSSH for remote operations you might be stuck in the SSH mindset of being able to log into specific machines and run applications. It doesn't work that way. Rather, think of OpenVPN as a virtual Ethernet cable to your server or LAN, all wrapped in a nice stout layer of encryption. You can run unencrypted and encrypted services over the same tunnel, and you only have to open a single hole in your firewall. + +So you can run SSH in the way you're used to over your OpenVPN tunnel, and do remote administration and run applications. You can access network resources such as fileshares and Web applications. You can force all networking on the client to go through your VPN tunnel, but for this series I've assumed that you want to be able to use both your native and VPN networks. + +So there you are on your trusty laptop and you can surf the Web, run SSH, do whatever you want on whatever network you're connected to. Then when you want to run something over your OpenVPN tunnel open it up and specify the IP address, like this: + + $ ssh carla@10.0.0.1 + +Web applications are easy: point your Web browser to the virtual IP address of your OpenVPN server and log in as usual. For example, I run various Web services for testing on my home server. So I access Drupal at [http://10.0.0.1/drupal][2] and OwnCloud at [http://10.0.0.1/owncloud][3]. I use the nice gFTP graphical FTP client, so all I need to connect is the virtual IP address on the Host line, username, and password. Or use the command line: + + $ ftp 10.0.0.1 21 + +You can administer your MySQL database from afar, using your own username and password: + + $ mysql -h 10.0.0.1 -u admin -p + +So the main thing you need to know is how to add the host specification to whatever command you want to run. + +Obviously, this would all be easier with name services instead of having to use IP addresses, so one of these days we'll learn how to implement name services in OpenVPN. Meanwhile, please enjoy your nice secure OpenVPN tunnel. + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/learn/tutorials/745233-how-to-set-up-secure-remote-networking-with-openvpn-on-linux-part-2 + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.linux.com/learn/tutorials/743590-secure-remote-networking-with-openvpn-on-linux +[2]:http://10.0.0.1/drupal +[3]:http://10.0.0.1/owncloud \ No newline at end of file diff --git a/sources/How to set up web-based network traffic monitoring system on Linux.md b/sources/How to set up web-based network traffic monitoring system on Linux.md new file mode 100644 index 0000000000..4ac24664ad --- /dev/null +++ b/sources/How to set up web-based network traffic monitoring system on Linux.md @@ -0,0 +1,122 @@ +How to set up web-based network traffic monitoring system on Linux +================================================================================ +When you are tasked with monitoring network traffic on the local network, you can consider many different options to do it, depending on the scale/traffic of the local network, monitoring platforms/interface, types of backend database, etc. + +[ntopng][1] is an open-source (GPLv3) network traffic analyzer which provides a web interface for real-time network traffic monitoring. It runs on multiple platforms including Linux and MacOS X. ntopng comes with a simple RMON-like agent with built-in web server capability, and uses [Redis][2]-backed key-value server to store time series statistics. You can install ntopng network traffic analyzer on any designated monitoring server connected to your network, and use a web browser to access real-time traffic reports available on the server. + +In this tutorial, I will describe **how to set up a web-based network traffic monitoring system on Linux by using ntopng.** + +### Features of ntopng ### + +- Flow-level, protocol-level real-time analysis of local network traffic. +- Domain, AS (Autonomous System), VLAN level statistics. +- Geolocation of IP addresses. +- Deep packet inspection (DPI) based service discovery (e.g., Google, Facebook). +- Historical traffic analysis (e.g., hourly, daily, weekly, monthly, yearly). +- Support for sFlow, NetFlow (v5/v9) and IPFIX through nProbe. +- Network traffic matrix (who’s talking to who?). +- IPv6 support. + +### Install ntopng on Linux ### + +The official website offers binary packages for [Ubuntu][3] and [CentOS][4]. So if you use either platform, you can install these packages. + +If you want to build the latest ntopng from [its source][5], follow the instructions below. + +To build ntopng on Debian, Ubuntu or Linux Mint: + + $ sudo apt-get install libpcap-dev libglib2.0-dev libgeoip-dev redis-server wget + $ tar xzf ntopng-1.0.tar.gz + $ cd ntopng-1.0/ + $ ./configure + $ make geoip + $ make + +In the above steps, “make geoip” will automatically download a free version of GeoIP databases with wget from maxmind.com. So make sure that your system is connected to the network. + +To build ntopng on Fedora: + + $ sudo yum install libpcap-devel glib2-devel GeoIP-devel + libxml2-devel redis wget + $ tar xzf ntopng-1.0.tar.gz + $ cd ntopng-1.0/ + $ ./configure + $ make geoip + $ make + +To install ntopng on CentOS or RHEL, first [set up EPEL repository][6], and then follow the same instructions as in [Fedora][7] above. + +### Configure ntopng on Linux ### + +After building ntopng, create a configuration directory for ntopng, and prepare default configuration files as follows. I assume that “192.168.1.0/24″ is the CIDR address prefix of your local network. + + $ sudo mkir /etc/ntopng -p + + $ sudo -e /etc/ntopng/ntopng.start + +> --local-networks "192.168.1.0/24" +> +> --interface 1 + + $ sudo -e /etc/ntopng/ntopng.conf + +> -G=/var/run/ntopng.pid + +Before running ntopng, make sure to first start redis, which is a key-value store for ntopng. + +To start ntopng on Debian, Ubuntu or Linux Mint: + + $ sudo /etc/init.d/redis-server restart + $ sudo ./ntopng + +To start ntopng on Fedora, CentOS or RHEL: + + $ sudo service redis restart + $ sudo ./ntopng + +By default, ntopng listens on TCP/3000 port. Verify this is the case using the command below. + + $ sudo netstat -nap|grep ntopng + +> tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 29566/ntopng + +### Monitor Network Traffic in Web-Based Interface ### + +Once ntopng is successfully running, go to http://:3000 on your web browser to access the web interface of ntopng. + +You will see the login screen of ntopng. Use the default username and password: “admin/admin” to log in. + +Here are a few screenshots of ntopng in action. + +Real-time visualization of top flows. + +[![](http://farm4.staticflickr.com/3830/10487165303_8bf0b25668_z.jpg)][8] + +Live statistics of top hosts, top protocols and top AS numbers. + +[![](http://farm3.staticflickr.com/2886/10486988416_7c8770e823_z.jpg)][9] + +Real time report of active flows with DPI-based automatic application/service discovery. + +Historic traffic analysis. + +[![](http://farm8.staticflickr.com/7379/10486995114_f0b58243a8_z.jpg)][10] + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/2013/10/set-web-based-network-traffic-monitoring-linux.html + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.ntop.org/products/ntop/ +[2]:http://redis.io/ +[3]:http://apt.ntop.org/ +[4]:http://rpm.ntop.org/ +[5]:http://sourceforge.net/projects/ntop/files/ntopng/ +[6]:http://xmodulo.com/2013/03/how-to-set-up-epel-repository-on-centos.html +[7]:http://xmodulo.com/go/fedora_guide +[8]:http://www.flickr.com/photos/xmodulo/10487165303/ +[9]:http://www.flickr.com/photos/xmodulo/10486988416/ +[10]:http://www.flickr.com/photos/xmodulo/10486995114/ \ No newline at end of file diff --git a/sources/Install Or Upgrade VMware Tools In Ubuntu.md b/sources/Install Or Upgrade VMware Tools In Ubuntu.md deleted file mode 100644 index 3d1df7a3a6..0000000000 --- a/sources/Install Or Upgrade VMware Tools In Ubuntu.md +++ /dev/null @@ -1,32 +0,0 @@ -Install Or Upgrade VMware Tools In Ubuntu -================================================================================ -Few days ago, VMware Workstation 10 was released. VMware Workstation is a virtualization software that lets you run multiple operating systems using a single host machine. With this software, you can run guest machines such as Windows XP, Vista 7 and 8 though 8.1. You can also run Linux operating systems, including Ubuntu. - -Because we use VMware Workstation to run some guest machines, we had to upgrade VMware tools on all of them. It is very important that you install VMware Tools in the guest operating system. That’s because the tool provides required support for shared folders, drag and drop operations, better graphic and improved performance. - -This brief tutorial is going to show you what we did to install and upgrade all our guest machines that run under VMware Workstation. Other benefits that the tool provides is synchronization of time between the guest machine and the host, grabbing and releasing of the mouse, coping and pasting between the guest and hose machines and more. - -To get started, open VMware Workstation and select the Ubuntu guest machine and start it or turn it on. Next, click **VM –> Install VMware Tools…** from the host menu. - -For you information, I am running Ubuntu 13.10 (Saucy Salamander) but this method may work with previous versions. - -![](http://www.liberiangeek.net/wp-content/uploads/2013/09/ubuntu-vmware-tools.png) - -A virtual CD/DVD Rom should be mounted with VMware Tools archive. Next, run the commands below to extract the package to the temp directory. - - tar -xvf /media/$USER/"VMware Tools"/VMwareTools*.gz -C /tmp - -Next, run the below commands to begin the installation. - - sudo /tmp/vmware-tools-distrib/vmware-install.pl - -During the installation, just press the Enter key to accept the defaults when prompted. The tool will install itself along with any required packages. - -When it’s done, restart your computer and begin enjoying your machine. --------------------------------------------------------------------------------- - -via: http://www.liberiangeek.net/2013/09/install-upgrade-vmware-tools-ubuntu/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) \ No newline at end of file diff --git a/sources/Install Ubuntu 13.10 Server Step by Step.md b/sources/Install Ubuntu 13.10 Server Step by Step.md index 60f7647e9c..05e04694e9 100644 --- a/sources/Install Ubuntu 13.10 Server Step by Step.md +++ b/sources/Install Ubuntu 13.10 Server Step by Step.md @@ -1,3 +1,5 @@ + 疯狂站坑 + Install Ubuntu 13.10 Server Step by Step ================================================================================ Yesterday was a big day for Canonical and Ubuntu fans. Yes, After 6 months long effective development, Ubuntu 13.10 Desktop & Server, Lubuntu 13.10, Kubuntu 13.10 was finally made available to download. @@ -111,4 +113,4 @@ via: http://www.unixmen.com/install-ubuntu-server-13-10-step-step/ [1]:http://www.unixmen.com/ubuntu-13-10-saucy-salamander-released-screenshots/ [2]:http://www.unixmen.com/upgrade-ubuntu-13-04-raring-ubuntu-13-10-saucy-salamander/ [3]:http://www.unixmen.com/top-things-installing-ubuntu-13-10/ -[4]:http://releases.ubuntu.com/saucy/ \ No newline at end of file +[4]:http://releases.ubuntu.com/saucy/ diff --git a/sources/Install qBittorrent 3.1.0 in Ubuntu via PPA.md b/sources/Install qBittorrent 3.1.0 in Ubuntu via PPA.md deleted file mode 100644 index 0543715f79..0000000000 --- a/sources/Install qBittorrent 3.1.0 in Ubuntu via PPA.md +++ /dev/null @@ -1,58 +0,0 @@ -Install qBittorrent 3.1.0 in Ubuntu via PPA -================================================================================ -[qBittorrent][1] is a cross platform free and open source bittorrent client designed as an alternative the popular [µtorrent][2] client written in C++ / Qt4, using the libtorrent-rasterbar library. qBittorrent is developed by volunteers. The latest version, qBittorrent 3.1.0 released on October 12th 2013.Bittorrent client. qBittorrent is fast, stable, light, it supports unicode and it provides a good integrated search engine. It also comes with UPnP port forwarding / NAT-PMP, encryption (Vuze compatible), FAST extension (mainline) and PeX support (utorrent compatible). - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/qbittorrent_about.png) - -### Features of qBittorrent v3.1.0 ### - -- Polished µTorrent-like User Interface -- Well-integrated and extensible Search Engine -- Simultaneous search in most famous BitTorrent search sites -- Per-category-specific search requests (e.g. Books, Music, Movies) -- All Bittorrent extensions -- DHT, Peer Exchange, Full encryption, Magnet/BitComet URIs, … -- Remote control through a Web user interface -- Nearly identical to the regular UI, all in Ajax -- Advanced control over trackers, peers and torrents -- Torrents queueing and prioritizing -- Torrent content selection and prioritizing -- UPnP / NAT-PMP port forwarding support -- Available in ~25 languages (Unicode support) -- Torrent creation tool -- Advanced RSS support with download filters (inc. regex) -- Bandwidth scheduler -- IP Filtering (eMule and PeerGuardian compatible) -- IPv6 compliant -- Sequential downloading (aka “Download in order”) -- Available on most platforms: Linux, Mac OS X, Windows, OS/2, FreeBSD - -### Installing qBittorrent ### - - $ sudo add-apt-repository ppa:hydr0g3n/qbittorrent-stable - $ sudo apt-get update && sudo apt-get install qbittorrent - -You can also download the [qbittorrent source code][3] and compile from source. - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/qBittorrent.png) - --------------------------------------------------------------------------------- - -via: http://www.unixmen.com/install-qbittorrent-3-1-0-ubuntu-via-ppa/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.qbittorrent.org/index.php -[2]:http://www.utorrent.com/ -[3]:http://sourceforge.net/projects/qbittorrent/files/qbittorrent/qbittorrent-3.1.0/qbittorrent-3.1.0.tar.gz/download -[4]: -[5]: -[6]: -[7]: -[8]: -[9]: -[10]: -[11]: -[12]: \ No newline at end of file diff --git a/sources/Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python.md b/sources/Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python.md deleted file mode 100644 index 1ba314daac..0000000000 --- a/sources/Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python.md +++ /dev/null @@ -1,292 +0,0 @@ -coolpigs is translating this article - -Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python -================================================================================ -In this article I want to discuss how to set up a robust, efficient and interactive development environment for algorithmic trading strategy research making use of Ubuntu Desktop Linux and the Python programming language. We will utilise this environment for nearly all subsequent algorithmic trading articles. - -To create the research environment we will install the following software tools, all of which are open-source and free to download: - -- [Oracle VirtualBox][1] - For virtualisation of the operating system -- [Ubuntu Desktop Linux][2] - As our virtual operating system -- [Python][3] - The core programming environment -- [NumPy][4]/[SciPy][5] - For fast, efficient array/matrix calculation -- [IPython][6] - For visual interactive development with Python -- [matplotlib][7] - For graphical visualisation of data -- [pandas][8] - For data "wrangling" and time series analysis -- [scikit-learn][9] - For machine learning and artificial intelligence algorithms - -These tools (coupled with a suitable [securities master database][10]) will allow us to create a rapid interactive strategy research environment. Pandas is designed for "data wrangling" and can import and cleanse time series data very efficiently. NumPy/SciPy running underneath keeps the system extremely well optimised. IPython/matplotlib (and the qtconsole described below) allow interactive visualisation of results and rapid iteration. scikit-learn allows us to apply machine learning techniques to our strategies to further enhance performance. - -Note that I've written the tutorial so that Windows or Mac OSX users who are unwilling or unable to install Ubuntu Linux directly can still follow along by using VirtualBox. VirtualBox allows us to create a "Virtual Machine" inside the host system that can emulate a guest operating system without affecting the host in any way. This allows experimentation with Ubuntu and the Python tools before committing to a full installation. For those who already have Ubuntu Desktop installed, you can skip to the section on "Installing the Python Research Environment Packages on Ubuntu". - -## Installing VirtualBox and Ubuntu Linux ## - -This section of the tutorial regarding VirtualBox installation has been written for a Mac OSX system, but will easily translate to a Windows host environment. Once VirtualBox has been installed the procedure will be the same for any underlying host operating system. - -Before we begin installing the software we need to go ahead and download both Ubuntu and VirtualBox. - -**Downloading the Ubuntu Desktop disk image** - -Open up your favourite web browser and navigate to the [Ubuntu Desktop][11] homepage then select Ubuntu 13.04: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0004.png) - -*Download Ubuntu 13.04 (64-bit if appropriate)* - -You will be asked to contribute a donation although this is optional. Once you have reached the download page make sure to select Ubuntu 13.04. You'll need to choose whether you want the 32-bit or 64-bit version. It is likely you'll have a 64-bit system, but if you're in doubt, then choose 32-bit. On a Mac OSX system the Ubuntu Desktop ISO disk image will be stored in your Downloads directory. We will make use of it later once we have installed VirtualBox. - -**Downloading and Installing VirtualBox** - -Now that we've downloaded Ubuntu we need to go and obtain the latest version of Oracle's VirtualBox software. Click [here][12] to visit the website and select the version for your particular host (for the purposes of this tutorial we need Mac OSX): - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0002.png) - -*Oracle VirtualBox download page* - -Once the file has been downloaded we need to run it and click on the package icon (this will vary somewhat in Windows but will be a similar process): - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0007.png) - -*Double-click the package icon to install VirtualBox* - -Once the package has opened, we follow the installation instructions, keeping the defaults as they are (unless you feel the need to change them!). Now that VirtualBox has been installed we can open it from the Applications folder (which can be found with Finder). It puts VirtualBox on the icon dock while running, so you may wish to keep it there permanently if you want to examine Ubuntu Linux more closely in the future before committing to a full install: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0008.png) - -*VirtualBox with no disk images yet* - -We are now going to create a new 'virtual box' (i.e. virtualised operating system) by clicking on the New icon, which looks like a cog. I've called mine "Ubuntu Desktop 13.04 Algorithmic Trading" (so you may wish to use something similarly descriptive!): - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0009.png) - -*Naming our new virtual environment* - -Choose the amount of RAM you wish to allocate to the virtual system. I've kept it at 512Mb since this is only a "test" system. A 'real' backtesting engine would likely use a native installation (and thus allocate significantly more memory) for efficiency reasons: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0010.png) - -*Choose the amount of RAM for the virtual disk* - -Create a virtual hard drive and use the recommended 8Gb, with a VirtualBox Disk Image, dynamically allocated, with the same name as the VirtualBox Image above: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0011.png) - -*Choosing the type of hard disk used by the image* - -You will now see a complete system with listed details: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0012.png) - -*The virtual image has been created* - -We now need to tell VirtualBox to include a virtual 'CD drive' for the new disk image so that we can pretend to boot our new Ubuntu disk image from this CD drive. Head to the Settings section, click on the "Storage" tab and add a Disk. You will need to navigate to the Ubuntu Disk image ISO file stored in your Downloads directly (or wherever you downloaded Ubuntu to). Select it and then save the settings: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0014.png) - -*Choosing the Ubuntu Desktop ISO on first boot* - -Now we are ready to boot up our Ubuntu image and get it installed. Click on "Start" and then on "OK" when you see the message about Host Capture of the Mouse/Keyboard. Note that on my Mac OSX, the host capture key is the Left Cmd key (i.e. Left Apple key). You will now be presented with the Ubuntu Desktop installation screen. Click on "Install Ubuntu": - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0015.png) - -*Click on Install Ubuntu to get started* - -Make sure to tick both boxes to install the proprietary MP3 and Wi-Fi drivers: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0016.png) - -*Install the proprietary drivers for MP3 and Wi-Fi* - -You will now see a screen asking how you would like to store the data created for the operating system. Don't panic about the "Erase Disk and Install Ubuntu" option. It does NOT mean that it will erase your normal hard disk! It actually refers to the virtual disk it is using to run Ubuntu in, which is safe to erase (there isn't anything on there anyway, as we've just created it). Carry on with the install and you will be presented with a screen asking for your location and subsequently, your keyboard layout: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0017.png) - -*Select your geographical location* - -Enter in your user credentials, making sure to remember your password as you'll need it later on for installing packages: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0018.png) - -*Enter your username and password (this password is the administrator password)* - -Ubuntu will now install the files. It should be relatively quick as it is just copying from the hard disk to the hard disk! Eventually it will complete and the VirtualBox will restart. If it doesn't restart on its own, you can go to the menu and force a Shutdown. You will be brought back to the Ubuntu Login Screen: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0019.png) - -*The Ubuntu Desktop login screen* - -Login with your username and password from above and you will see your shiny new Ubuntu desktop: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0020.png) - -*The Unity interface to the Ubuntu Desktop after logging in* - -The last thing to do is click on the Firefox icon to test that the internet/networking functionality is correct by visiting a website (I picked QuantStart.com, funnily enough!): - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0021.png) - -The Ubuntu Desktop login screen - -Now that the Ubuntu Desktop is installed we can begin installing the algorithmic trading research environment packages. - -## Installing the Python Research Environment Packages on Ubuntu ## - -Click on the search button at the top-left of the screen and type "Terminal" into the box to bring up the command-line interface. Double-click the terminal icon to launch the Terminal: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0022.png) - -*The Ubuntu Desktop login screen* - -All subsequent commands will need to be typed into this terminal. - -The first thing to do on any brand new Ubuntu Linux system is to update and upgrade the packages. The former tells Ubuntu about new packages that are available, while the latter actually performs the process of replacing older packages with newer versions. Run the following commands (you will be prompted for your passwords): - - sudo apt-get -y update - sudo apt-get -y upgrade - -*Note that the -y prefix tells Ubuntu that you want to accept 'yes' to all yes/no questions. "sudo" is a Ubuntu/Debian Linux command that allows other commands to be executed with administrator privileges. Since we are installing our packages sitewide, we need 'root access' to the machine and thus must make use of 'sudo'.* - -You may get an error message here: - - E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) - -To remedy it just run "sudo apt-get -y update" again or take a look at this site for additional commands to run in case the first does not work ([http://penreturns.rc.my/2012/02/could-not-get-lock-varlibaptlistslock.html][13]). - -Once both of those updating commands have been successfully executed we now need to install Python, NumPy/SciPy, matplotlib, pandas, scikit-learn and IPython. We will start by installing the Python development packages and compilers needed to compile all of the software: - - sudo apt-get install python-pip python-dev python2.7-dev build-essential liblapack-dev libblas-dev - -Once the necessary packages are installed we can go ahead and install NumPy via pip, the Python package manager. Pip will download a zip file of the package and then compile it from the source code for us. Bear in mind that it will take some time to compile, probably 10-20 minutes! - - sudo pip install numpy - -Once NumPy has been installed we need to check that it works before proceeding. If you look in the terminal you'll see your username followed by your computer name. In my case it is `mhallsmoore@algobox`, which is followed by the prompt. At the prompt type `python` and then try importing NumPy. We will test that it works by calculating the mean average of a list: - - mhallsmoore@algobox:~$ python - Python 2.7.4 (default, Sep 26 2013, 03:20:26) - [GCC 4.7.3] on linux2 - Type "help", "copyright", "credits" or "license" for more information. - >>> import numpy - >>> from numpy import mean - >>> mean([1,2,3]) - 2.0 - >>> exit() - -Now that NumPy has been successfully installed we want to install the Python Scientific library known as SciPy. However it has a few package dependencies of its own including the ATLAS library and the GNU Fortran compiler: - - sudo apt-get install libatlas-base-dev gfortran - -We are ready to install SciPy now, with pip. This will take quite a long time (approx 20 minutes, depending upon your computer) so it might be worth going and grabbing a coffee: - - sudo pip install scipy - -Phew! SciPy has now been installed. Let's test it out by calculating the standard deviation of a list of integers: - - mhallsmoore@algobox:~$ python - Python 2.7.4 (default, Sep 26 2013, 03:20:26) - [GCC 4.7.3] on linux2 - Type "help", "copyright", "credits" or "license" for more information. - >>> import scipy - >>> from scipy import std - >>> std([1,2,3]) - 0.81649658092772603 - >>> exit() - -Next we need to install the dependency packages for matplotlib, the Python graphing library. Since matplotlib is a Python package, we cannot use pip to install the underlying libraries for working with PNGs, JPEGs and freetype fonts, so we need Ubuntu to install them for us: - - sudo apt-get install libpng-dev libjpeg8-dev libfreetype6-dev - -Now we can install matplotlib: - - sudo pip install matplotlib - -We're now going to install the data analysis and machine learning libraries pandas and scikit-learn. We don't need any additional dependencies at this stage as they're covered by NumPy and SciPy: - - sudo pip install -U scikit-learn - sudo pip install pandas - -We should test scikit-learn: - - mhallsmoore@algobox:~$ python - Python 2.7.4 (default, Sep 26 2013, 03:20:26) - [GCC 4.7.3] on linux2 - Type "help", "copyright", "credits" or "license" for more information. - >>> from sklearn load datasets - >>> iris = datasets.load_iris() - >>> iris - .. - .. - 'petal width (cm)']} - >>> - -In addition, we should also test pandas: - - >>> from pandas import DataFrame - >>> pd = DataFrame() - >>> pd - Empty DataFrame - Columns: [] - Index: [] - >>> exit() - -Finally, we want to instal IPython. This is an interactive Python interpreter that provides a significantly more streamlined workflow compared to using the standard Python console. In later tutorials I will outline the full usefulness of IPython for algorithmic trading development: - - sudo pip install ipython - -While IPython is sufficiently useful on its own, it can be made even more powerful by including the qtconsole, which provides the ability to inline matplotlib visualisations. However, it takes a little bit more work to get this up and running. - -First, we need to install the the [Qt library][14]. For this you may need to update your packages again (I did!): - - sudo apt-get update - -Now we can install Qt: - - sudo apt-get install libqt4-core libqt4-gui libqt4-dev - -The qtconsole has a few additional packages, namely the ZMQ and Pygments libraries: - - sudo apt-get install libzmq-dev - sudo pip install pyzmq - sudo pip install pygments - -Finally we are ready to launch IPython with the qtconsole: - - ipython qtconsole --pylab=inline - -Then we can make a (rather simple!) plot by typing the following commands (I've included the IPython numbered input/outut which you do not need to type): - - In [1]: x=np.array([1,2,3]) - - In [2]: plot(x) - Out[2]: [] - -This produces the following inline chart: - -![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0023.png) - -*IPython with qtconsole displaying an inline chart* - -That's it for the installation procedure. We now have an extremely robust, efficient and interactive algorithmic trading research environment at our fingertips. In subsequent articles I will be detailing how IPython, matplotlib, pandas and scikit-learn can be combined to successfully research and backtest quantitative trading strategies in a straightforward manner. - --------------------------------------------------------------------------------- - -via: http://quantstart.com/articles/Installing-a-Desktop-Algorithmic-Trading-Research-Environment-using-Ubuntu-Linux-and-Python - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:https://www.virtualbox.org/ -[2]:http://www.ubuntu.com/desktop -[3]:http://python.org/ -[4]:http://www.numpy.org/ -[5]:http://www.scipy.org/ -[6]:http://ipython.org/ -[7]:http://matplotlib.org/ -[8]:http://pandas.pydata.org/ -[9]:http://scikit-learn.org/ -[10]:http://quantstart.com/articles/Securities-Master-Database-with-MySQL-and-Python -[11]:http://www.ubuntu.com/desktop -[12]:https://www.virtualbox.org/ -[13]:http://penreturns.rc.my/2012/02/could-not-get-lock-varlibaptlistslock.html -[14]:http://qt-project.org/downloads \ No newline at end of file diff --git a/sources/Linux Commands/Linux Pmap Command – Find How Much Memory Process Use.md b/sources/Linux Commands/Linux Pmap Command – Find How Much Memory Process Use.md new file mode 100644 index 0000000000..31436da454 --- /dev/null +++ b/sources/Linux Commands/Linux Pmap Command – Find How Much Memory Process Use.md @@ -0,0 +1,118 @@ +flsf +Linux Pmap Command – Find How Much Memory Process Use +================================================================================ +Pmap provide memory map of a process, The pmap command display the memory usage map of a process or multiple processes. Pmap reports information about the address space or memory usage map of a process. Pmap is actually a Sun OS command and Linux supports only very limited number of features. But it is very helpful for finding the complete address space of a process. To check [memory usage of process][1] we need PID or unique process ID of running process, we can get PID from /proc or regular commands like top or ps. + +### Syntax or usage ### + + #pmap PID + +or + + #pmap [options] PID + +In outout it display total address, kbytes, mode and mapping. + +### Options ### + + -x extended Show the extended format. + -d device Show the device format. + -q quiet Do not display some header/footer lines. + -V show version Displays version of program. + +### Memory usage map of single process ### + + [root@info ~]# pmap 1013 + + + 1013: /usr/sbin/sshd + 00110000 1480K r-x– /usr/lib/libcrypto.so.1.0.0 + 00282000 80K rw— /usr/lib/libcrypto.so.1.0.0 + 00296000 12K rw— [ anon ] + 00299000 36K r-x– /lib/libkrb5support.so.0.1 + 002a2000 4K rw— /lib/libkrb5support.so.0.1 + 002a3000 16K r-x– /lib/libplc4.so + 002a7000 4K rw— /lib/libplc4.so + 002ab000 88K r-x– /lib/libaudit.so.1.0.0 + 002c1000 4K r—- /lib/libaudit.so.1.0.0 + 002c2000 4K rw— /lib/libaudit.so.1.0.0 + 002c3000 216K r-x– /lib/libgssapi_krb5.so.2.2 + 002f9000 4K rw— /lib/libgssapi_krb5.so.2.2 + 002fa000 808K r-x– /lib/libkrb5.so.3.3 + 003c4000 24K rw— /lib/libkrb5.so.3.3 + 003ca000 152K r-x– /lib/libk5crypto.so.3.1 + 003f0000 4K rw— /lib/libk5crypto.so.3.1 + 003f1000 92K r-x– /usr/lib/libnssutil3.so + 00738000 4K r—- /lib/libresolv-2.12.so + 00739000 4K rw— /lib/libresolv-2.12.so + 0073a000 8K rw— [ anon ] + 00825000 120K r-x– /lib/ld-2.12.so + 00843000 4K r—- /lib/ld-2.12.so + 00844000 4K rw— /lib/ld-2.12.so + 0090d000 32K r-x– /lib/libwrap.so.0.7.6 + 00915000 4K rw— /lib/libwrap.so.0.7.6 + 00948000 484K r-x– /usr/sbin/sshd + 009c1000 8K rw— /usr/sbin/sshd + 009c3000 20K rw— [ anon ] + 009e0000 92K r-x– /lib/libpthread-2.12.so + 009f7000 4K r—- /lib/libpthread-2.12.so + + total 8232K + +### Memory usage map of multiple processes ### + +We can check memory map of multiple processes by inserting multiple PIDs. Add multiple PIDs with adding space. + + pmap 1013 1217 1118 + +### Extended memory map about a process ### + + [root@info ~]# pmap -x 1013 + 1013: /usr/sbin/sshd + Address Kbytes RSS Dirty Mode Mapping + 00110000 1480 92 0 r-x– libcrypto.so.1.0.0 + 00282000 80 80 80 rw— libcrypto.so.1.0.0 + 00296000 12 8 4 rw— [ anon ] + 00299000 36 0 0 r-x– libkrb5support.so.0.1 + 002a2000 4 4 4 rw— libkrb5support.so.0.1 + 002a3000 16 0 0 r-x– libplc4.so + 002a7000 4 4 4 rw— libplc4.so + 002ab000 88 4 0 r-x– libaudit.so.1.0.0 + 002c1000 4 4 4 r—- libaudit.so.1.0.0 + 002c2000 4 4 4 rw— libaudit.so.1.0.0 + 002c3000 216 4 0 r-x– libgssapi_krb5.so.2.2 + 002f9000 4 4 4 rw— libgssapi_krb5.so.2.2 + 002fa000 808 4 0 r-x– libkrb5.so.3.3 + 003c4000 24 24 24 rw— libkrb5.so.3.3 + 003ca000 152 4 0 r-x– libk5crypto.so.3.1 + 003f0000 4 4 4 rw— libk5crypto.so.3.1 + 003f1000 92 0 0 r-x– libnssutil3.so + 00408000 12 12 12 rw— libnssutil3.so + 0040b000 12 0 0 r-x– libplds4.so + 0040e000 4 4 4 rw— libplds4.so + + ——– ——- ——- ——- ——- + total kB 8232 – – - + +Here Address, Kbyte, Dirty, RSS, mode and mapping containd information as below + +### Extended and Device Format Fields ### + + Address: start address of map + Kbytes: size of map in kilobytes + RSS: resident set size in kilobytes + Dirty: dirty pages (both shared and private) in kilobytes + Mode: permissions on map: read, write, execute, shared, private (copy on write) + Mapping: file backing the map, or ‘[ anon ]‘ for allocated memory, or ‘[ stack ]‘ for the program stack + Offset: offset into the file + Device: device name (major:minor) + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/linux-command/pmap-command/ + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.linoxide.com/linux-shell-script/linux-memory-usage-program/ diff --git a/sources/Linux Commands/Options in Linux RPM Command to Query Packages.md b/sources/Linux Commands/Options in Linux RPM Command to Query Packages.md new file mode 100644 index 0000000000..5e2dce7c30 --- /dev/null +++ b/sources/Linux Commands/Options in Linux RPM Command to Query Packages.md @@ -0,0 +1,108 @@ +Options in Linux RPM Command to Query Packages +================================================================================ +RPM is RedHat Package Manager, used to install/remove/update and query the packages in Red Hat based linux. RHEL and the systems based on it uses rpm command to do that. The following example demonstrates the use of rpm query feature and shows different ways you can query rpm database and restore configuration file. + +I have included the SSH package to in the example commands. + +### Query RPM Database and Packages ### + +**1、 To query the whole RPM database, use the following command.** + + # rpm -qa + plymouth-0.8.3-27.el6.x86_64 + pciutils-libs-3.1.10-2.el6.i686 + netcf-libs-0.1.9-3.el6.x86_64 + .. + … + .. + Output Truncated + +**2、 You can identify the package from which SSH is installed by using grep on the above example.** + + # rpm -qa |grep ssh + libssh2-1.4.2-1.el6.x86_64 + openssh-askpass-5.3p1-84.1.el6.x86_64 + libssh2-1.4.2-1.el6.i686 + openssh-server-5.3p1-84.1.el6.x86_64 + openssh-clients-5.3p1-84.1.el6.x86_64 + openssh-5.3p1-84.1.el6.x86_64 + +The output shows other packages related to ssh but you have to still identify that which package is actually installing SSH. To further break it down see the next example. + +**3、 Check the installed package of SSH a) from sshd daemon b) from it’s configuration file.** + + # rpm -qf /etc/init.d/sshd + openssh-server-5.3p1-84.1.el6.x86_64 + # rpm -qf /etc/ssh/sshd_config + openssh-server-5.3p1-84.1.el6.x86_64 + +As you can see the ssh is installed from the openssh-server-5.3p1-84.1.el6.x86_64 package. You can use rpm -qf command both on daemon and a configuration file. Both will output the package it is installed from. + +**4、 Now that you have the package name, you may want to explore more on it and want to know what are the various files this package contains. For that use rpm -ql command.** + + # rpm -ql openssh-server-5.3p1-84.1.el6.x86_64 + /etc/pam.d/ssh-keycat + /etc/pam.d/sshd + /etc/rc.d/init.d/sshd + /etc/ssh/sshd_config + /etc/sysconfig/sshd + /usr/libexec/openssh/sftp-server + /usr/libexec/openssh/ssh-keycat + /usr/sbin/.sshd.hmac + /usr/sbin/sshd + /usr/share/doc/openssh-server-5.3p1 + /usr/share/doc/openssh-server-5.3p1/HOWTO.ssh-keycat + /usr/share/man/man5/moduli.5.gz + /usr/share/man/man5/sshd_config.5.gz + /usr/share/man/man8/sftp-server.8.gz + /usr/share/man/man8/sshd.8.gz + /var/empty/sshd + +he above output is showing all the files that this package installed on the system. Now let’s even break it down and we only want to see the configuration files and document files supplied with this package. + +**5、 To list only the configuration files use the rpm -qc command.** + + # rpm -qc openssh-server-5.3p1-84.1.el6.x86_64 + /etc/pam.d/ssh-keycat + /etc/pam.d/sshd + /etc/ssh/sshd_config + /etc/sysconfig/sshd + +**6、 To list only documentation files use rpm -qd command** + + # rpm -qd openssh-server-5.3p1-84.1.el6.x86_64 + /usr/share/doc/openssh-server-5.3p1/HOWTO.ssh-keycat + /usr/share/man/man5/moduli.5.gz + /usr/share/man/man5/sshd_config.5.gz + /usr/share/man/man8/sftp-server.8.gz + /usr/share/man/man8/sshd.8.gz + +Consider a situation in which you want to configure a service, but you don’t know where to find the configuration files. As an example, Consider the above example: Use **rpm -qf rpm -qf /etc/init.d/sshd** to find out from what package the **/etc/ssh/sshd_config** file originated. It should show you the **openssh-server-5.3p1-84.1.el6.x86_64** package. Use **rpm -ql openssh-server-5.3p1-84.1.el6.x86_64** to show a list of all the files in this package. As you can see, the names of many files are displayed, but the output is not very useful. + +Now use **rpm -qc openssh-server-5.3p1-84.1.el6.x86_64** to show just the configuration files used by this package. This shows a list of four files only and gives you the absolute path of [/etc/ssh/sshd_config file][1] to start configuring the service. + +**7、 Restore configuration file from RPM Package, without reinstalling a package.** + +If for some reason a file has been damaged or got deleted from system, you can start with the **rpm -qf** query option to find out from what package the file originated. Next use **rpm2cpio | cpio -idmv** to extract the files from the package. Consider the ssh example: + +Assuming that the **/etc/ssh/sshd_config** file has been deleted and you may not want to reinstall ssh, Restore the file using the steps below. + + * Use rpm -qf /etc/init.d/sshd This command shows that the file comes from the openssh-server-5.3p1-84.1.el6.x86_64 Package. + + * Download the Openssh rpm from it’s source + + * Copy openssh-server-5.3p1-84.1.el6.x86_64 package file to /tmp directory or any other directory of your choice. + + * Use rpm2cpio |cpio -idmv to extract the package. + +The command you used in the above step created a few subdirectories in /tmp. You can now copy it to its original location. + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/linux-command/rpm-command-query/ + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.linoxide.com/how-tos/disable-ssh-direct-login/ \ No newline at end of file diff --git a/sources/Linux Won't Get Aura UI Stack Until Google Chrome 33.md b/sources/Linux Won't Get Aura UI Stack Until Google Chrome 33.md deleted file mode 100644 index cd4aa71342..0000000000 --- a/sources/Linux Won't Get Aura UI Stack Until Google Chrome 33.md +++ /dev/null @@ -1,19 +0,0 @@ -Linux Won't Get Aura UI Stack Until Google Chrome 33 -================================================================================ -While Google's Chrome 32 web-browser will feature the Aura UI stack from Chrome OS, the Chrome desktop web-browser on Linux won't get the GPU-accelerated interface until one version later. - -Aura is the UI stack used by Google Chrome OS that can fully take advantage of graphics processors where supported. The only native element/widget is the top-level window while everything else is handled by Chrome and composited by the program itself. Google's goal is to use the same UI stack across Windows, Linux, and Chrome OS (albeit not on OS X or other platforms). While Aura is designed to take advantage of modern GPUs, there is a pure software fallback mode too. - -With Chrome 32, Aura will now be used as the UI stack. Windows 7 and Windows 8 systems will support the GPU acceleration code-path while Windows XP and Vista users will be limited to software-accelerated support. The Aura code-path also determines whether WebGL and Pepper-based Flash is using GPU support too. - -As shared via the [Chromium Google Group][1] last week, the Linux version of Chromium now won't see Aura with GPU acceleration until version 33. In other words, the UI stack should arrive on Linux right around the end of the calendar year. - --------------------------------------------------------------------------------- - -via: http://www.phoronix.com/scan.php?page=news_item&px=MTQ4NzE - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/UMwGGgP0P9c \ No newline at end of file diff --git a/sources/LinuxCon/CloudOpen Goose Chase Ends in Tie for Grand Prize.md b/sources/LinuxCon/CloudOpen Goose Chase Ends in Tie for Grand Prize.md new file mode 100644 index 0000000000..c76477968f --- /dev/null +++ b/sources/LinuxCon/CloudOpen Goose Chase Ends in Tie for Grand Prize.md @@ -0,0 +1,39 @@ +LinuxCon/CloudOpen Goose Chase Ends in Tie for Grand Prize +================================================================================ +Hundreds of people raced to the finish in the first-ever LinuxCon/CloudOpen Goose Chase. From showing your cowsay to the coffee cup that fuels your Linux work, you - the community - showcased your competitive nature and passion for having fun. The competiton was fierce through the end, which resulted in a tie for Grand Prize for Round Two (round one wrapped up in October, and the [winners were announced][1] at LinuxCon and CloudOpen North America). Because there are two Grand Prize winners, we will not be awarding a First Prize. + +The winners of Round Two are: + +**Grand Prize: $500 Amazon Gift Card** + +**Daniel German**, Canada + +**Joao Paulo Rechi Vita**, Brazil + +![](http://www.linux.com/images/stories/714/jprvita.jpg) + +Joao works for the Nokia Institute of Technology. His latest Linux project was adding BlueZ 5 bluetooth support to PulseAudio on the Linux desktop. He's attended LinuxCon in Japan, North America and Europe this year. + +"I participated in the Goose Chase at LinuxCon North America and found it really fun, so when I was showing the pictures to my girlfriend back home I found the {online} Goose Chase and decided to join it as well. And as I expected, {it} was a lot of fun again, specially because this time some of the missions needed quite a bit of creativity to be accomplished." + +**Second Prize, $50 Amazon Gift Card** + +**Madalina-Ioana Alexe**, Romania + +Madalina-Ioana works for Intel Romania on Tizen and attended the Gluster Community Day this week at LinuxCon Europe. + +"I found it is a fun game, which is still suitable for geeks. It was a nice and funny experience and I found out that there are even more geeks like me." + +Congratulations to all our winners and thank you so much for participating in the Goose Chase! + +![](http://www.linux.com/images/stories/714/mada.jpg) + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/news/featured-blogs/185-jennifer-cloer/745263-linuxconcloudopen-goose-chase-ends-in-tie-for-grand-prize/ + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.linux.com/news/featured-blogs/200-libby-clark/737969-announcing-goose-chase-contest-winners-more-prizes-for-linuxcon-europe \ No newline at end of file diff --git a/sources/Mikko Hypponen--Open Source Software Will Make the World More Secure.md b/sources/Mikko Hypponen--Open Source Software Will Make the World More Secure.md new file mode 100644 index 0000000000..4f9a187fc7 --- /dev/null +++ b/sources/Mikko Hypponen--Open Source Software Will Make the World More Secure.md @@ -0,0 +1,35 @@ +Mikko Hypponen: Open Source Software Will Make the World More Secure +================================================================================ +Open source software can be one answer to combating the global surveillance of innocent citizens, said security expert Mikko Hypponen in his keynote last week at [LinuxCon and CloudOpen Europe][1] in Edinburgh. + +![](http://www.linux.com/images/stories/41373/Mikko-Hypponen-3.jpg) + +*Mikko Hypponen, chief research officer at F-Secure in Finland, spoke at LinuxCon and CloudOpen Europe 2013 in Edinburgh.* + +Advances in computing and the rise of global networks have made the storage and transmission of data cheap and easy. This has created unparalleled connectivity, progress and innovation, Hypponen said. But it’s also enabled large-scale access to that data as demonstrated by the NSA’s PRISM program, made public this year in a series of top-secret document leaks by former U.S. government contractor Edward Snowden. + +“In the last few years we've realized data is cheap. We never have to delete anything anymore, ever,” said Hypponen, chief research officer at F-Secure in Finland. “This has enabled lots of great things but also global wholesale blanket surveillance.” + +Such access to our personal data, including cell phone records, geolocation, email and search engine queries, may be warranted in some cases, Hypponen said. + +“I do believe some surveillance is OK,” he said. “If there's an investigation into finding a school shooter or drug lord or member of a terrorist cell… we should have the technical means of doing that. But we must first have the suspicion.” + +But collecting the communications and personal data of “everyone” is not only a violation of privacy, but a threat to democracy, Hypponen said. + +“Even if you don't have a problem with our government today, we don't know what the government will be 20 years from now,” he said. ”If they have 20 years of your search data, they'll find something illegal or embarrassing to twist your hand.” + +Though the leaks have caused some IT professionals to question the safety of their data stored with and routed through U.S. service providers, avoiding these companies and services won’t solve the problem, Hypponen said. Neither can each country afford the time and expense of building its own alternatives. + +Working across international boundaries, developers should band together to build secure and reliable software and services that prevent back-door tampering and ensure users’ privacy, Hypponen said. + +“I suggest that open source provides a solution to this problem,” he said. “Then countries don't have to work alone. It will be secure, open and free.” + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/news/featured-blogs/200-libby-clark/745585-mikko-hypponen-open-source-software-will-make-the-world-more-secure + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://events.linuxfoundation.org/events/linuxcon-europe \ No newline at end of file diff --git a/sources/Modern terminal Final Term adds multiple-terminals per-window support.md b/sources/Modern terminal Final Term adds multiple-terminals per-window support.md deleted file mode 100644 index 8e108261fa..0000000000 --- a/sources/Modern terminal Final Term adds multiple-terminals per-window support.md +++ /dev/null @@ -1,37 +0,0 @@ -Modern terminal Final Term adds multiple-terminals per-window support -================================================================================ -[Final Term][1] is a modern terminal application that centers exciting capabilities and handy features into a beautiful interface, Final Term presenting itself as a significant advancement for the terminal metaphor. - -Smart command completion with drop-down menu and case sensitive/insensitive ability, semantic text menus recognizing web URLs, IP addresses, PIDs, option to collapse commands, 8 / 16 / 256 colors support, drop-down look, accurate and proper window resizing with precise text repositioning come to present Final Term as an advanced, versatile terminal application. - -Along with the already-existent pack of solid and exciting features, it seems that Final Term's development is targeting new features for inclusion, as in the case of the newly-announced **multiple terminals per window** support. - -Essentially, the multiple-terminals-per-window allows the user to split the Final Term's window into multiple splits, splits then having the capacity to contain numerous tabs. - -As seen in the below GIF, the modern terminal application features now a clickable menu containing *New Tab, Split Horizontally* and *Split Vertically*, clicking on *Split Horizontally*, splits the window horizontally, behavior followed by *Split Vertically*, too. - -Yet, hitting the *New Tab* entry, continues to add new and new tabs into a portion/split of the Final Term's main window, therefore, permitting an advanced usage of the terminal application suitable for both regular and complex demands. - -![](http://iloveubuntu.net/pictures_me/multiple%20terminal%20per%20window%20final%20term.gif) - -A definitely interesting aspect of the mentioned feature is its drag & drop support, dragging a tab from one split and dropping it on another split, moves the tab on the other split and, thus, moves all commands and details from one side of the terminal to another preferred area of the terminal. - -The full article, including the programming-specific manner of implementing the handy features, is available on [http://blog.finalterm.org/2013/10/multiple-terminals-final-term-style.html][2] - -Final Term's code is available on [https://github.com/p-e-w/finalterm][3] - -**Worth mentioning** - -At the moment, Final Term is work in progress. - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/modern-terminal-final-term-adds-multiple-terminals-window-support - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://finalterm.org/ -[2]:http://blog.finalterm.org/2013/10/multiple-terminals-final-term-style.html -[3]:https://github.com/p-e-w/finalterm \ No newline at end of file diff --git a/sources/NoSQL comparison.md b/sources/NoSQL comparison.md deleted file mode 100644 index 3f114372a7..0000000000 --- a/sources/NoSQL comparison.md +++ /dev/null @@ -1,403 +0,0 @@ -[这篇我领了] -NoSQL comparison -================ - -While SQL databases are insanely useful tools, their monopoly in the last decades is coming to an end. And it's just time: I can't even count the things that were forced into relational databases, but never really fitted them. (That being said, relational databases will always be the best for the stuff that has relations.) - -But, the differences between NoSQL databases are much bigger than ever was between one SQL database and another. This means that it is a bigger responsibility on software architects to choose the appropriate one for a project right at the beginning. - -In this light, here is a comparison of [Cassandra][], [Mongodb][], [CouchDB][], [Redis][], [Riak][], [Couchbase (ex-Membase)][], [Hypertable][], [ElasticSearch][], [Accumulo][], [VoltDB][], [Kyoto Tycoon][], [Scalaris][], [Neo4j][] and [HBase][]: - -##The most popular ones - -###MongoDB (2.2) - -**Written in:** C++ - -**Main point:** Retains some friendly properties of SQL. (Query, index) - -**License:** AGPL (Drivers: Apache) - -**Protocol:** Custom, binary (BSON) - -- Master/slave replication (auto failover with replica sets) -- Sharding built-in -- Queries are javascript expressions -- Run arbitrary javascript functions server-side -- Better update-in-place than CouchDB -- Uses memory mapped files for data storage -- Performance over features -- Journaling (with --journal) is best turned on -- On 32bit systems, limited to ~2.5Gb -- An empty database takes up 192Mb -- GridFS to store big data + metadata (not actually an FS) -- Has geospatial indexing -- Data center aware - -**Best used:** If you need dynamic queries. If you prefer to define indexes, not map/reduce functions. If you need good performance on a big DB. If you wanted CouchDB, but your data changes too much, filling up disks. - -**For example:** For most things that you would do with MySQL or PostgreSQL, but having predefined columns really holds you back. - - -###Riak (V1.2) - -**Written in:** Erlang & C, some JavaScript - -**Main point:** Fault tolerance - -**License:** Apache - -**Protocol:** HTTP/REST or custom binary - -- Stores blobs -- Tunable trade-offs for distribution and replication -- Pre- and post-commit hooks in JavaScript or Erlang, for validation and security. -- Map/reduce in JavaScript or Erlang -- Links & link walking: use it as a graph database -- Secondary indices: but only one at once -- Large object support (Luwak) -- Comes in "open source" and "enterprise" editions -- Full-text search, indexing, querying with Riak Search -- In the process of migrating the storing backend from "Bitcask" to Google's "LevelDB" -- Masterless multi-site replication replication and SNMP monitoring are commercially licensed - -**Best used:** If you want something Dynamo-like data storage, but no way you're gonna deal with the bloat and complexity. If you need very good single-site scalability, availability and fault-tolerance, but you're ready to pay for multi-site replication. - -**For example:** Point-of-sales data collection. Factory control systems. Places where even seconds of downtime hurt. Could be used as a well-update-able web server. - -###CouchDB (V1.2) - -**Written in:** Erlang - -**Main point:** DB consistency, ease of use - -**License:** Apache - -**Protocol:** HTTP/REST - -- Bi-directional (!) replication, -- continuous or ad-hoc, -- with conflict detection, -- thus, master-master replication. (!) -- MVCC - write operations do not block reads -- Previous versions of documents are available -- Crash-only (reliable) design -- Needs compacting from time to time -- Views: embedded map/reduce -- Formatting views: lists & shows -- Server-side document validation possible -- Authentication possible -- Real-time updates via '_changes' (!) -- Attachment handling -- thus, CouchApps (standalone js apps) - -**Best used:** For accumulating, occasionally changing data, on which pre-defined queries are to be run. Places where versioning is important. - -**For example:** CRM, CMS systems. Master-master replication is an especially interesting feature, allowing easy multi-site deployments. - -###Redis (V2.4) - -**Written in:** C/C++ - -**Main point:** Blazing fast - -**License:** BSD - -**Protocol:** Telnet-like - -- Disk-backed in-memory database, -- Currently without disk-swap (VM and Diskstore were abandoned) -- Master-slave replication -- Simple values or hash tables by keys, -- but complex operations like ZREVRANGEBYSCORE. -- INCR & co (good for rate limiting or statistics) -- Has sets (also union/diff/inter) -- Has lists (also a queue; blocking pop) -- Has hashes (objects of multiple fields) -- Sorted sets (high score table, good for range queries) -- Redis has transactions (!) -- Values can be set to expire (as in a cache) -- Pub/Sub lets one implement messaging (!) - -**Best used:** For rapidly changing data with a foreseeable database size (should fit mostly in memory). - -**For example:** Stock prices. Analytics. Real-time data collection. Real-time communication. And wherever you used memcached before. - -##Clones of Google's Bigtable - -###HBase (V0.92.0) - -**Written in:** Java - -**Main point:** Billions of rows X millions of columns - -**License:** Apache - -**Protocol:** HTTP/REST (also Thrift) - -- Modeled after Google's BigTable -- Uses Hadoop's HDFS as storage -- Map/reduce with Hadoop -- Query predicate push down via server side scan and get filters -- Optimizations for real time queries -- A high performance Thrift gateway -- HTTP supports XML, Protobuf, and binary -- Jruby-based (JIRB) shell -- Rolling restart for configuration changes and minor upgrades -- Random access performance is like MySQL -- A cluster consists of several different types of nodes - -**Best used:** Hadoop is probably still the best way to run Map/Reduce jobs on huge datasets. Best if you use the Hadoop/HDFS stack already. - -**For example:** Search engines. Analysing log data. Any place where scanning huge, two-dimensional join-less tables are a requirement. - -###Cassandra (1.2) - -**Written in:** Java - -**Main point:** Best of BigTable and Dynamo - -**License:** Apache - -**Protocol:** Thrift & custom binary CQL3 - -- Tunable trade-offs for distribution and replication (N, R, W) -- Querying by column, range of keys (Requires indices on anything that you want to search on) -- BigTable-like features: columns, column families -- Can be used as a distributed hash-table, with an "SQL-like" language, CQL (but no JOIN!) -- Data can have expiration (set on INSERT) -- Writes can be much faster than reads (when reads are disk-bound) -- Map/reduce possible with Apache Hadoop -- All nodes are similar, as opposed to Hadoop/HBase -- Very good and reliable cross-datacenter replication - -**Best used:** When you write more than you read (logging). If every component of the system must be in Java. ("No one gets fired for choosing Apache's stuff.") - -**For example:** Banking, financial industry (though not necessarily for financial transactions, but these industries are much bigger than that.) Writes are faster than reads, so one natural niche is data analysis. - -###Hypertable (0.9.6.5) - -**Written in:** C++ - -**Main point:** A faster, smaller HBase - -**License:** GPL 2.0 - -**Protocol:** Thrift, C++ library, or HQL shell - -- Implements Google's BigTable design -- Run on Hadoop's HDFS -- Uses its own, "SQL-like" language, HQL -- Can search by key, by cell, or for values in column families. -- Search can be limited to key/column ranges. -- Sponsored by Baidu -- Retains the last N historical values -- Tables are in namespaces -- Map/reduce with Hadoop - -**Best used:** If you need a better HBase. - -**For example:** Same as HBase, since it's basically a replacement: Search engines. Analysing log data. Any place where scanning huge, two-dimensional join-less tables are a requirement. - -###Accumulo (1.4) - -**Written in:** Java and C++ - -**Main point:** A BigTable with Cell-level security - -**License:** Apache - -**Protocol:** Thrift - -- Another BigTable clone, also runs of top of Hadoop -- Cell-level security -- Bigger rows than memory are allowed -- Keeps a memory map outside Java, in C++ STL -- Map/reduce using Hadoop's facitlities (ZooKeeper & co) -- Some server-side programming - -**Best used:** If you need a different HBase. - -**For example:** Same as HBase, since it's basically a replacement: Search engines. Analysing log data. Any place where scanning huge, two-dimensional join-less tables are a requirement. - -##Special-purpose - -###Neo4j (V1.5M02) - -**Written in:** Java - -**Main point:** Graph database - connected data - -**License:** GPL, some features AGPL/commercial - -**Protocol:** HTTP/REST (or embedding in Java) - -- Standalone, or embeddable into Java applications -- Full ACID conformity (including durable data) -- Both nodes and relationships can have metadata -- Integrated pattern-matching-based query language ("Cypher") -- Also the "Gremlin" graph traversal language can be used -- Indexing of nodes and relationships -- Nice self-contained web admin -- Advanced path-finding with multiple algorithms -- Indexing of keys and relationships -- Optimized for reads -- Has transactions (in the Java API) -- Scriptable in Groovy -- Online backup, advanced monitoring and High Availability is AGPL/commercial licensed - -**Best used:** For graph-style, rich or complex, interconnected data. Neo4j is quite different from the others in this sense. - -**For example:** For searching routes in social relations, public transport links, road maps, or network topologies. - -###ElasticSearch (0.20.1) - -**Written in:** Java - -**Main point:** Advanced Search - -**License:** Apache - -**Protocol:** JSON over HTTP (Plugins: Thrift, memcached) - -- Stores JSON documents -- Has versioning -- Parent and children documents -- Documents can time out -- Very versatile and sophisticated querying, scriptable -- Write consistency: one, quorum or all -- Sorting by score (!) -- Geo distance sorting -- Fuzzy searches (approximate date, etc) (!) -- Asynchronous replication -- Atomic, scripted updates (good for counters, etc) -- Can maintain automatic "stats groups" (good for debugging) -- Still depends very much on only one developer (kimchy). - -**Best used:** When you have objects with (flexible) fields, and you need "advanced search" functionality. - -**For example:** A dating service that handles age difference, geographic location, tastes and dislikes, etc. Or a leaderboard system that depends on many variables. - -##The "long tail" - -(Not widely known, but definitely worthy ones) - -###Couchbase (ex-Membase) (2.0) - -**Written in:** Erlang & C - -**Main point:** Memcache compatible, but with persistence and clustering - -**License:** Apache - -**Protocol:** memcached + extensions - -- Very fast (200k+/sec) access of data by key -- Persistence to disk -- All nodes are identical (master-master replication) -- Provides memcached-style in-memory caching buckets, too -- Write de-duplication to reduce IO -- Friendly cluster-management web GUI -- Connection proxy for connection pooling and multiplexing (Moxi) -- Incremental map/reduce -- Cross-datacenter replication - -**Best used:** Any application where low-latency data access, high concurrency support and high availability is a requirement. - -**For example:** Low-latency use-cases like ad targeting or highly-concurrent web apps like online gaming (e.g. Zynga). - -###VoltDB (2.8.4.1) - -**Written in:** Java - -**Main point:** Fast transactions and rapidly changing data - -**License:** GPL 3 - -**Protocol:** Proprietary - -- In-memory relational database. -- Can export data into Hadoop -- Supports ANSI SQL -- Stored procedures in Java -- Cross-datacenter replication - -**Best used:** Where you need to act fast on massive amounts of incoming data. - -**For example:** Point-of-sales data analysis. Factory control systems. - -###Scalaris (0.5) - -**Written in:** Erlang - -**Main point:** Distributed P2P key-value store - -**License:** Apache - -**Protocol:** Proprietary & JSON-RPC - -- In-memory (disk when using Tokyo Cabinet as a backend) -- Uses YAWS as a web server -- Has transactions (an adapted Paxos commit) -- Consistent, distributed write operations -- From CAP, values Consistency over Availability (in case of network partitioning, only the bigger partition - works) - -**Best used:** If you like Erlang and wanted to use Mnesia or DETS or ETS, but you need something that is accessible from more languages (and scales much better than ETS or DETS). - -**For example:** In an Erlang-based system when you want to give access to the DB to Python, Ruby or Java programmers. - -###Kyoto Tycoon (0.9.56) - -**Written in:** C++ - -**Main point:** A lightweight network DBM - -**License:** GPL - -**Protocol:** HTTP (TSV-RPC or REST) - -- Based on Kyoto Cabinet, Tokyo Cabinet's successor -- Multitudes of storage backends: Hash, Tree, Dir, etc (everything from Kyoto Cabinet) -- Kyoto Cabinet can do 1M+ insert/select operations per sec (but Tycoon does less because of overhead) -- Lua on the server side -- Language bindings for C, Java, Python, Ruby, Perl, Lua, etc -- Uses the "visitor" pattern -- Hot backup, asynchronous replication -- background snapshot of in-memory databases -- Auto expiration (can be used as a cache server) - -**Best used:** When you want to choose the backend storage algorithm engine very precisely. When speed is of the essence. - -**For example:** Caching server. Stock prices. Analytics. Real-time data collection. Real-time communication. And wherever you used memcached before. - -Of course, all these systems have much more features than what's listed here. I only wanted to list the key points that I base my decisions on. Also, development of all are very fast, so things are bound to change. - -P.s.: And no, there's no date on this review. There are version numbers, since I update the databases one by one, not at the same time. And believe me, the basic properties of databases don't change that much. - ---- - -via: http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis - -本文由 [LCTT][] 原创翻译,[Linux中国][] 荣誉推出 - -译者:[译者ID][] 校对:[校对者ID][] - -[LCTT]:https://github.com/LCTT/TranslateProject -[Linux中国]:http://linux.cn/portal.php -[译者ID]:http://linux.cn/space/译者ID -[校对者ID]:http://linux.cn/space/校对者ID - -[Cassandra]:http://cassandra.apache.org/ -[Mongodb]:http://www.mongodb.org/ -[CouchDB]:http://couchdb.apache.org/ -[Redis]:http://redis.io/ -[Riak]:http://basho.com/riak/ -[Couchbase (ex-Membase)]:http://www.couchbase.org/membase -[Hypertable]:http://hypertable.org/ -[ElasticSearch]:http://www.elasticsearch.org/ -[Accumulo]:http://accumulo.apache.org/ -[VoltDB]:http://voltdb.com/ -[Kyoto Tycoon]:http://fallabs.com/kyototycoon/ -[Scalaris]:https://code.google.com/p/scalaris/ -[Neo4j]:http://neo4j.org/ -[HBase]:http://hbase.apache.org/ diff --git a/sources/Rapid Photo Downloader 0.4.7 released with enhancements.md b/sources/Rapid Photo Downloader 0.4.7 released with enhancements.md deleted file mode 100644 index 87b520ae39..0000000000 --- a/sources/Rapid Photo Downloader 0.4.7 released with enhancements.md +++ /dev/null @@ -1,62 +0,0 @@ -Rapid Photo Downloader 0.4.7 released with enhancements -================================================================================ -[Rapid Photo Downloader][1] is a free open-source powerful, versatile item downloader (photo and video), permitting to the user to download/copy images and videos from photography-wise devices,--as well as using regular folders from within the desktop--, to one's computer via a hassle-free, intuitive and robust experience. - -A definitely interesting aspect of Rapid Photo Downloader is its nature, namely, being created by a photographer and, therefore, presenting itself as a photographer-centric utility with accordingly-exposed features and support. - -Essentially, Rapid Photo Downloader allows the user to copy/move items from (for example) storage media used by photography machines, in order to remove the manual confuse manner of browsing through the photography machine' media and manually picking items. - -Among its **features**, Rapid Photo Downloader comes with: - -- auto-detection of camera-specific media via the Auto Detect button and exposing of contained items -- ability to specify automatic file renaming with tweakable text (editable), date and time, filename, metadata, job code, sequences and real-time previews of to-be-generated item names -- support to simultaneously download photos and images from multiple devices -- optimized manner of rapidly downloading items -- in-depth configuration options - -Launching Rapid Photo Downloader, the user is to notice its elegant look centering clarity and user-friendliness, main window divided in three main areas: the top area housing `From` and `To`, middle area with items populating it and bottom-area featuring details and the actual `Download` button. - -![](http://iloveubuntu.net/pictures_me/rapid-photo-downloader%20main%20view.jpg) - -Copying (for example) items from a location to the `Pictures` and `Videos` folders is as simple as: - -- under `From`, select the preferred source-like location (containing the about-to-be-copied items) -- action that exposes the automatically-detected items on the dark middle-area -- retaining the `Copy` button checked and hitting the bottom-bar's Download, downloads images to the `Pictures` folder and video-clips to `Videos` - -![](http://iloveubuntu.net/pictures_me/Rapid%20Photo%20Downloader%20main%20view%202.png) - -The result: by hitting the `Download` button, Rapid Photo Downloader automatically divides the photos from videos and copies images to a specific location and video-clips to a different location. - -The about-to-be-copied items are checkable, allowing the user to uncheck certain files, files then fully ignored by the copying process. - -Similarly, the `Move` button is to be utilized for moving items from one location to another, action that removes the items from the source location and copies them to the new location (therefore, there is only one instance of the copied files). - -Rapid Photo Downloader is a solid robust application, being able to successfully manage thousands of items, items properly exposed on its view, from where the user is able to act on them. - -Rapid Photo Downloader has been updated to version **0.4.7**, introducing several fixes, including enhancements related to its usability under Ubuntu 13.10, as well as removed crashes and ability to download audio files associated with photos generated by specific cameras (such as Canon 1D series). - -How do we **install** Rapid Photo Downloader 0.4.7? - -Add the following **official** PPA (Ubuntu 12.04, Ubuntu 12.10, Ubuntu 13.04, Ubuntu 13.10, Ubuntu 14.04) - - sudo add-apt-repository ppa:dlynch3/ppa - sudo apt-get update - sudo apt-get install rapid-photo-downloader - -In-depth **step-by-step** features, abilities and support are fully presented on [http://www.damonlynch.net/rapid/documentation/][2] - -### Worth mentioning ### - -While Rapid Photo Downloader 0.4.7 removes a bug affecting Ubuntu 13.10 and Ubuntu 12.10, there still may be likely for users to encounter freezes using Rapid Photo Downloader 0.4.7 under Ubuntu 13.10, situation in which the user is advised to use Rapid Photo Downloader under Ubuntu 12.04 (version unaffected by the mentioned bug). - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/rapid-photo-downloader-047-released-enhancements - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://damonlynch.net/rapid/ -[2]:http://www.damonlynch.net/rapid/documentation/ \ No newline at end of file diff --git a/sources/Save, Access And Quickly Paste Text Snippets With This Nifty Unity Launcher Tool.md b/sources/Save, Access And Quickly Paste Text Snippets With This Nifty Unity Launcher Tool.md new file mode 100644 index 0000000000..dfaf3083fb --- /dev/null +++ b/sources/Save, Access And Quickly Paste Text Snippets With This Nifty Unity Launcher Tool.md @@ -0,0 +1,68 @@ +Save, Access And Quickly Paste Text Snippets With This Nifty Unity Launcher Tool +================================================================================ +**Repeatedly typing out certain information – like e-mail or home addresses, verbose terminal commands, and well timed quotes from cult TV shows – can be a chore.** + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Screen-Shot-2013-10-31-at-13.04.jpg) + +*Snippets – Handy Way to Access Stored Text* + +Thankfully there are tools out there to help. + +*‘Snippets’* is one such utility for Unity. It’s a simple Launcher item that lets you save and store excerpts in a text file, then, when needed, select them from a Unity Quicklist to copy them the clipboard. + +Now before anyone throws their underwear at me in disgust, I’m well aware Snippets is not unique – or the first – in offering this sort of feature. But what it is unique in doing is offering it through a Unity Launcher item. + +Features-wise, the tool is simple enough, offering: + +- Ability to add & access snippets stored in .txt file +- View stored snippets in quicklist +- Click snippets to copy them to clipboard +- Option to add current clipboard item to .txt file + +While it’s not a “live” clipboard manager – it only lists items you specifically add; it does not present a history of your most recent clipboard items – it is still a handy little tool. + +### How to Install Snippets for Unity ### + +To make use of this nifty Snippets launcher item you’ll need to first install the command-line clipboard tool xclip. Hit the button below to get it from the Software Center. + +- [Click to Install XClip in Ubuntu][1] + +Next up, download the following ‘Snippets‘ archive. This contains everything else needed to use the app. + +- [Download ‘Snippets’ Unity Launcher Script][2] + +When the archive has downloaded fully you’ll want to extract it. Enter the resulting folder and hit Ctrl+H to reveal hidden files. Move the folder ‘.snippets-launcher‘ to your Home folder. **The utility won’t work if this step isn’t followed**. + +Next step is to install the launcher item. This is taken care of by a script inside the folder you just moved, but it doesn’t have executable permissions (needed to install it) so we’ll need to first take care of that, too. + +Open a new Terminal window and enter the following commands carefully: + + cd .snippets-launcher/ && chmod +x snippets.sh + + ./snippets.sh + +That’s it; Snippets should now be ready to use. Open the Unity Dash to search for the Snippets item and drag it onto the launcher. + +- Left click on the launcher item opens the text file where you add your snippets +- Right click on the launcher item opens the quick list + +Options in the quicklist: + +- Left click on a snippet to add it to the clipboard +- Left click ‘Date’ to copy the current date +- Click ‘Add Clipboard Content’ to add current item to .txt file +- After adding items to .txt file click ‘Update Launcher’ + +For more information on the lazy-making tool, [head over to the Ubuntu Forums thread][3] where its developer, “Stinkeye”, will be happy to help. + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2013/10/unity-launcher-clipboard-snippets-item + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:apt://xclip +[2]:https://www.dropbox.com/s/ha6lngizmz78srv/snippets%20by%20stinkeye.tar.gz +[3]:http://ubuntuforums.org/showthread.php?t=2184916 \ No newline at end of file diff --git a/sources/Seven reasons why closed source is better than open source, or so it seems.md b/sources/Seven reasons why closed source is better than open source, or so it seems.md new file mode 100644 index 0000000000..0e8e09adaf --- /dev/null +++ b/sources/Seven reasons why closed source is better than open source, or so it seems.md @@ -0,0 +1,46 @@ +Translating by l3b2w1 +Seven reasons why closed source is better than open source, or so it seems +================================================================================ +![](http://opensource.com/sites/default/files/imagecache/image-full-size/images/business/BUSINESS_asusual_deadend.png) + +It might seem strange coming from the founder of OpenLogic, a company focused on helping others succeed with open source, but the fact is that closed source is better than open source in certain situations. + +With closed source… + +**1. You never have to fix components when something goes wrong.** + +With any software, things occasionally go wrong. When this happens with open source software, you, or an engineer who owes you a favor, may need to spend time debugging the problem. This entails reading through code, working with an open source community, or your open source support provider, and applying a fix. With closed source, on the other hand, once you determine that the problem lies in your vendor's code, you're all done! All you have to do is file a ticket and wait. Sure, you may have to wait a few months or years for the fix, and sometimes it never comes at all, but there's nothing you can do about that! Just kick back, relax, and hope for the best. + +**2. You don't have to worry about contributing your changes back to a community.** + +With open source, there's an expectation that if you fix a bug or make an improvement, you'll contribute your code back to the community that can help test and maintain it over time. With closed source, you never have to contribute anything to anybody. Of course, that's because you can't change the code as you don't have access to it, but you may create your own workarounds to problems you run into. Sure, you might have to keep working around the same issues version after version, but at least you never have to work with the community to make the solution better for others. + +**3. You don't have to think about open source licensing terms and compliance issues.** + +With open source, you have to comply with the license terms specified by the components you're using. It can take some time to understand the terms of an Apache Software License versus a General Public License (GPL), for example. Depending on which open source components you use and how you use them (e.g., distributing to third parties or using only for internal purposes), different license terms may apply (e.g., attributing the open source component in your documentation). Companies like OpenLogic make it easy to understand and comply with open source licensing terms, but with closed source, you don't have to worry about any of this! Your vendor's license agreement takes away all of your rights to the software and makes it nearly impossible to consider any usage not explicitly approved by your corporate attorneys, so you don't even have to think about it. Sure, you have to deal with license counting, surprise software compliance audits, terms that worsen over time, and nearly incomprehensible legalese, but at least you don't have to understand how you're using open source components. + +**4. You don't have to choose among dozens of options for every component.** + +Open source offers lots of solutions when considering a database, web server, application server, programming language, GUI framework, and the like. In practically every category, you can find robust offerings built in a variety of languages with different architectural approaches. It's also very common to find similar tools that are optimized for different use cases (e.g., performance versus scalability versus simplicity). To make sure a tool will work best for your particular use case, download it and give it a try. With closed source, you don't have to contend with so many options. You only have to explore two or three large vendors in each market. You can save time if the vendors don't offer free trials, or make it hard to get started by forcing you to pay for a trial or sign trial agreements up front. + +**5. You don't have to look around for slideshows.** + +It can take some time to find conference presentations, architectural diagrams, screenshots, and other documentation for any software, but with open source you might have to read wikis, forums, and email lists to get the information you need about a particular component. With closed source, you're never more than a phone call away from a nice PowerPoint presentation delivered right in the comfort of your office by professional salespeople in nice suits. Sure, you'll have to provide your contact information up front and the salespeople will never stop calling you, but at least you don't have to search the web for glossy slides with beautiful graphics. + +**6. You don't have to look around for technical support.** + +You can get open source support from a community, your own engineers, or professional open source support organizations. It can take some time to decide whether you want Service Level Agreement (SLA) support with guaranteed response times like you can get from OpenLogic, or if you feel comfortable posting issues to mailing lists or doing your own support. With closed source, you never have to worry about where you're going to get support. Sure, you might not ever get to speak to an actual engineer, but at least you always know who to call. + +**7. You can just throw in the towel.** + +With open source, there's always a way to get something fixed, patched, improved, enhanced, refactored, upgraded, or rewritten. There's no easy way to throw up your arms and walk away like there is with closed source. Sure, you can curse the community that developed the open source component causing you problems, but you can usually work around the issue, get help from the community or a support organization, or even fix the issue yourself. It's just not nearly as satisfying as cursing a commercial vendor and calling it a day. + +So, there you have it. Seven good reasons why closed source is better than open source. Do you have others you'd like to share? + +-------------------------------------------------------------------------------- + +via: http://opensource.com/business/13/10/seven-reasons-closed-better-than-open-source + +译者:[译者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/SmartGit 5 Preview 4 Gets Some Greta Features.md b/sources/SmartGit 5 Preview 4 Gets Some Greta Features.md deleted file mode 100644 index 39c04ec2dc..0000000000 --- a/sources/SmartGit 5 Preview 4 Gets Some Greta Features.md +++ /dev/null @@ -1,28 +0,0 @@ -SmartGit 5 Preview 4 Gets Some Greta Features -================================================================================ -**SmartGit, a graphical client for the version control systems Git and Mercurial with optimized workflows for multiple platforms, is now at version 5 Preview 4.** - -![](http://i1-news.softpedia-static.com/images/news2/SmartGit-5-Preview-4-Gets-Some-Greta-Features-393093-2.png) - -SmartGit provides some very important features such as local working tree operations, push, pull, fetch for all protocols, tag and branch management, and much more. - -According to the developers, the ability to configure multiple accounts even for the same provider has been added, the refresh toolbar button is now only enabled if a GitHub account is configured, Reveal Commit now also works on Pull Requests, notifications are a lot more obvious, and a lot more. - -Check out the complete [changelog][1] for a list of bugfixes and other important new features. - -- [Download SmartGit (4.6.5 Stable) tar.gz][2][binary] [28 MB] -- D[ownload SmartGit (5 Preview 4 Development) tar.gz][3][sources] [19 MB] - -Remember that this is a development version and it should NOT be installed on production machines. It is intended for testing purposes only. - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/SmartGit-5-Preview-4-Gets-Some-Greta-Features-393093.shtml - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.syntevo.com/smartgithg/changelog-eap.txt -[2]:http://www.syntevo.com/smartgit/download.html?all=true -[3]:http://www.syntevo.com/smartgithg/early-access?file=smartgithg/smartgithg-generic-5-preview-4.tar.gz \ No newline at end of file diff --git a/sources/The Halloween Documents--Microsoft's Anti-Linux Strategy 15 Years Later.md b/sources/The Halloween Documents--Microsoft's Anti-Linux Strategy 15 Years Later.md new file mode 100644 index 0000000000..297fc48fd0 --- /dev/null +++ b/sources/The Halloween Documents--Microsoft's Anti-Linux Strategy 15 Years Later.md @@ -0,0 +1,31 @@ +The Halloween Documents: Microsoft's Anti-Linux Strategy 15 Years Later +================================================================================ +> It's been 15 years since leaked memos revealed Microsoft's anti-Linux and open source strategy. Here's how it failed. + +![](http://thevarguy.com/site-files/thevarguy.com/files/imagecache/medium_img/uploads/2013/10/trickortreat2.jpg) + +It's almost Halloween—which marks 15 years since Eric S. Raymond published the first leaked "[Halloween Documents][1]" documenting Microsoft's (MSFT) secret strategy to compete with Linux and open source. A lot has changed since then, when terms such as "fear, uncertainty and doubt" (FUD) first exploded into the lexicon. But how much remains the same? Do Microsoft and open source play nicely today? + +The Halloween Documents, so-called because the first one leaked in October 1998, don't actually have much to do with Halloween itself—which I find sad, as an avid fan of the holiday. But for understanding the historical relationship between Microsoft and open source, the memos are vital. + +They were the first to reveal the particularly nasty "tricks" Microsoft planned in its effort to contain the open source movement, and to prevent Linux in particular from cutting too deeply into its revenue. One key strategy for the company was implementing proprietary protocols to lock customers into Microsoft software. Another was touting Microsoft software as offering lower total cost of ownership (TCO) than Linux, even though the documents showed that Microsoft itself found Linux to be the cheaper overall solution in many cases. + +History, however, has proven Microsoft's strategy largely wrong. Fifteen years after Raymond published the first of the documents (he subsequently added several more to his site, along with extensive commentary), which Microsoft later acknowleded to be authentic, Windows and Linux continue to coexist. And while Linux and open source never became an existential threat to Microsoft, as the Halloween Documents suggest executives at the company once feared, it's hard to deny that they have significantly curtailed the company's share of important markets, like servers operating systems and applications, for many years. Microsoft might be a richer enterprise today if it had achieved the goals it articulated in the Halloween Documents. + +And the story's not over. Today, the flashpoints between Microsoft and open source have shifted in many ways, and Redmond has few reasons to worry about Linux replacing its flagship software for desktop computers. But in the mobile world, Linux-based Android, alongside iOS, constitutes a major challenge for Microsoft's vision of dominating tablets and smartphones. The cloud and Big Data, too, are increasingly the domain of open source software, with solutions including Hadoop and OpenStack facing few real challenges from Microsoft or any other proprietary competitor. In different ways but for the same essential reasons, the open source ecosystem remains a thorn in Microsoft's side. + +Of course, Microsoft today is no longer the company it was in 1998. The era of its unbridled expansion ended long ago, and it's hard to imagine any disruption big enough to pose a serious challenge to its dominance within the huge market for desktop operating systems and office software. If the company ever does face decline, it is much likelier to be the result not of Linux but of a structural shift away from traditional computing altogether—and such a change will not come anytime soon. + +For today, though, the Halloween Documents are worth revisiting as a reminder of how not to respond to competition from open source code. In the long run, companies that have embraced open source technologies and developed business models that thrive on the sharing of software, such as Red Hat (RHT), will do better than those that attempt to protect their interests through FUD and vendor lock-in. Red Hat today has much smoother and potentially more lucrative options for continued growth in the areas of open source dominance mentioned above—such as the cloud and Big Data—than Microsoft or even Apple, which face expensive and riskier investment in new types of hardware if they hope to expand their business. + +The lesson: Sharing—whether of candy or software—is the way to go. Happy Halloween! + +-------------------------------------------------------------------------------- + +via: http://thevarguy.com/open-source-application-software-companies/halloween-documents-microsofts-anti-linux-strategy-15-yea + +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.catb.org/~esr/halloween/ \ No newline at end of file diff --git a/sources/The Linux Kernel/00 About the author.md b/sources/The Linux Kernel/00 About the author.md deleted file mode 100644 index 1add179002..0000000000 --- a/sources/The Linux Kernel/00 About the author.md +++ /dev/null @@ -1,68 +0,0 @@ -00 About the author -================================================================================ -[![](http://www.linux.org/data/avatars/l/4/4843.jpg)][1] - -Feel free to post or email me (DevynCJohnson@Gmail.com) suggestions for this series, both on topics for future articles in the series and on how the series can be made better and more interesting. - -I write two articles a week for Linux.org. One is the Linux kernel series and the other is any random Linux topic. Feel free to email suggestions on what you would like to read about in the "random article". I would like to write something that will draw numerous readers to the site. My goal is to write an article that has 10,000+ readers in one week. - -Soon, I will also write tutorials on how to install some of the popular Linux distros, so if there is a particular one you want to read about, email me. - -Check out my wallpapers on [http://gnome-look.org/usermanager/search.php?username=DevynCJohnson&action=contents&PHPSESSID=32424677ef4d9dffed020d06ef2522ac][2] - -My AI project: - -- [https://launchpad.net/neobot][3] - -Ubuntu 13.10 (AMD64) - -- [https://launchpad.net/~devyncjohnson-d][4] -- [DevynCJohnson@Gmail.com][5] - - - -**Gender**:Male - -**Birthday**:Aug 31, 1994 (Age: 19) - -**Home page**:https://launchpad.net/~devyncjohnson-d - -**Location**:United States - -Devyn Collier Johnson was home-schooled by his two wonderful parents and has graduated one university and is now attending another. His father, Jarret Wayne Buse, has many computer certifications, and Jarret has written and published many books on computers. He also does some programming, and he has given Devyn help and ideas for his artificial intelligence program. His mother, Cassandra Ann Johnson, is a stay-at-home mother, home-schooling his many siblings. Devyn Collier Johnson lives in Indiana with his parents and focuses his time on college and personal computer programming. - -Devyn Collier Johnson graduated high-school at age sixteen. He attends college as a commuting student maintaining the Dean's list. He majors in electrical technology engineering. Devyn Collier Johnson has learned many computer languages. Some he taught himself while others his father taught him and helped him understand. Some of the languages he knows include Xaiml, AIML, Unix Shell, Python3, VPython, PyQT, PyGTK, Coffeescript, GEL, SED, HTML4/5, CSS3, SVG, and XML. Devyn knows bits and pieces of some other languages. He earned four computer certifications in April 2012 and those four being NCLA, Linux+, LPIC-1, and DCTS. His Linux Professional ID is LPI000254694. - -In July 2012, Devyn Collier Johnson decided to make his chatterbot from scratch. He designed his own markup language (Xaiml) and AI engine (ProgramPY-SH or Pysh). On March 3, 2013, Devyn published his new chatterbot on Launchpad.net. The bot is named Neo which is from the Proto-Indo European word for "new". - -Devyn maintains a few other projects. He makes Opera and Firefox themes ([https://addons.mozilla.org/en-US/firefox/user/DevynCJohnson/][6]) ([https://my.opera.com/devyncjohnson/account/][7]); he also has many other graphic design projects. Most of his programming projects are hosted on [https://launchpad.net/~devyncjohnson-d][4], and some are mirrored on Sourceforge.net. Some other miscellaneous projects can be found in the links below. - -- [http://askubuntu.com/users/158340/devyn-collier-johnson][8] -- [http://unix.stackexchange.com/users/40770/devyn-collier-johnson][9] -- [http://stackoverflow.com/users/2354783/devyn-collier-johnson][10] -- [http://www.linux.org/members/devyncjohnson.4843/][1] -- [http://gnome-look.org/usermanager/search.php?username=DevynCJohnson][11] -- [http://www.creatity.com/?user=1449&action=detailUser][12] -- [http://openclipart.org/user-detail/DevynCJohnson][13] - --------------------------------------------------------------------------------- - -via: http://www.linux.org/members/devyncjohnson.4843/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.linux.org/members/devyncjohnson.4843/ -[2]:http://gnome-look.org/usermanager/search.php?username=DevynCJohnson&action=contents&PHPSESSID=32424677ef4d9dffed020d06ef2522ac -[3]:https://launchpad.net/neobot -[4]:https://launchpad.net/~devyncjohnson-d -[5]:DevynCJohnson@Gmail.com -[6]:https://addons.mozilla.org/en-US/firefox/user/DevynCJohnson/ -[7]:https://my.opera.com/devyncjohnson/account/ -[8]:http://askubuntu.com/users/158340/devyn-collier-johnson -[9]:http://unix.stackexchange.com/users/40770/devyn-collier-johnson -[10]:http://stackoverflow.com/users/2354783/devyn-collier-johnson -[11]:http://gnome-look.org/usermanager/search.php?username=DevynCJohnson -[12]:http://www.creatity.com/?user=1449&action=detailUser -[13]:http://openclipart.org/user-detail/DevynCJohnson \ No newline at end of file diff --git a/sources/The Linux Kernel/01 The Linux Kernel--Introduction.md b/sources/The Linux Kernel/01 The Linux Kernel--Introduction.md deleted file mode 100755 index fdd678bada..0000000000 --- a/sources/The Linux Kernel/01 The Linux Kernel--Introduction.md +++ /dev/null @@ -1,37 +0,0 @@ -Translating----------geekpi - -01 The Linux Kernel: Introduction -================================================================================ -In 1991, a Finnish student named Linus Benedict Torvalds made the kernel of a now popular operating system. He released Linux version 0.01 on September 1991, and on February 1992, he licensed the kernel under the GPL license. The GNU General Public License (GPL) allows people to use, own, modify, and distribute the source code legally and free of charge. This permits the kernel to become very popular because anyone may download it for free. Now that anyone can make their own kernel, it may be helpful to know how to obtain, edit, configure, compile, and install the Linux kernel. - -A kernel is the core of an operating system. The operating system is all of the programs that manages the hardware and allows users to run applications on a computer. The kernel controls the hardware and applications. Applications do not communicate with the hardware directly, instead they go to the kernel. In summary, software runs on the kernel and the kernel operates the hardware. Without a kernel, a computer is a useless object. - -There are many reasons for a user to want to make their own kernel. Many users may want to make a kernel that only contains the code needed to run on their system. For instance, my kernel contains drivers for FireWire devices, but my computer lacks these ports. When the system boots up, time and RAM space is wasted on drivers for devices that my system does not have installed. If I wanted to streamline my kernel, I could make my own kernel that does not have FireWire drivers. As for another reason, a user may own a device with a special piece of hardware, but the kernel that came with their latest version of Ubuntu lacks the needed driver. This user could download the latest kernel (which is a few versions ahead of Ubuntu's Linux kernels) and make their own kernel that has the needed driver. However, these are two of the most common reasons for users wanting to make their own Linux kernels. - -Before we download a kernel, we should discuss some important definitions and facts. The Linux kernel is a monolithic kernel. This means that the whole operating system is on the RAM reserved as kernel space. To clarify, the kernel is put on the RAM. The space used by the kernel is reserved for the kernel. Only the kernel may use the reserved kernel space. The kernel owns that space on the RAM until the system is shutdown. In contrast to kernel space, there is user space. User space is the space on the RAM that the user's programs own. Applications like web browsers, video games, word processors, media players, the wallpaper, themes, etc. are all on the user space of the RAM. When an application is closed, any program may use the newly freed space. With kernel space, once the RAM space is taken, nothing else can have that space. - -The Linux kernel is also a preemptive multitasking kernel. This means that the kernel will pause some tasks to ensure that every application gets a chance to use the CPU. For instance, if an application is running but is waiting for some data, the kernel will put that application on hold and allow another program to use the newly freed CPU resources until the data arrives. Otherwise, the system would be wasting resources for tasks that are waiting for data or another program to execute. The kernel will force programs to wait for the CPU or stop using the CPU. Applications cannot unpause or use the CPU without the kernel allowing them to do so. - -The Linux kernel makes devices appear as files in the folder /dev. USB ports, for instance, are located in /dev/bus/usb. The hard-drive partitions are seen in /dev/disk/by-label. It is because of this feature that many people say "On Linux, everything is a file.". If a user wanted to access data on their memory card, for example, they cannot access the data through these device files. - -The Linux kernel is portable. Portability is one of the best features that makes Linux popular. Portability is the ability for the kernel to work on a wide variety of processors and systems. Some of the processor types that the kernel supports include Alpha, AMD, ARM, C6X, Intel, x86, Microblaze, MIPS, PowerPC, SPARC, UltraSPARC, etc. This is not a complete list. - -In the boot folder (/boot), users will see a "vmlinux" or a "vmlinuz" file. Both are compiled Linux kernels. The one that ends in a "z" is compressed. The "vm" stands for virtual memory. On systems with SPARC processors, users will see a zImage file instead. A small number of users may find a bzImage file; this is also a compressed Linux kernel. No matter which one a user owns, they are all bootable files that should not be changed unless the user knows what they are doing. Otherwise, their system can be made unbootable - the system will not turn on. - -Source code is the coding of the program. With source code, programmers can make changes to the kernel and see how the kernel works. - -### Downloading the Kernel: ### - -Now, that we understand more about the kernel, it is time to download the source code. Go to [kernel.org][1] and click the large download button. Once the download is finished, uncompress the downloaded file. - -For this article, I am using the source code for Linux kernel 3.9.4. All of the instructions in this article series are the same (or nearly the same) for all versions of the kernel. - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/%EF%BB%BFthe-linux-kernel-introduction.4203/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:https://www.kernel.org/ diff --git a/sources/The Linux Kernel/02 The Linux Kernel--The Source Code.md b/sources/The Linux Kernel/02 The Linux Kernel--The Source Code.md deleted file mode 100644 index 8822bfcb1c..0000000000 --- a/sources/The Linux Kernel/02 The Linux Kernel--The Source Code.md +++ /dev/null @@ -1,134 +0,0 @@ -02 The Linux Kernel: The Source Code -================================================================================ -After the kernel source code is downloaded and uncompressed, users will see many folders and files. It may be a challenge trying to find a particular file. Thankfully, the source code is sorted in a specific way. This enables developers to find any given file or part of the kernel. - -The root of the kernel source code contains the folders listed below. - - arch - block - crypto - Documentation - drivers - firmware - fs - include - init - ipc - kernel - lib - mm - net - samples - scripts - security - sound - tools - usr - virt - -There are also some files that are located in the root of the source code. They are listed in the table below. - -**COPYING** - Information about licensing and rights. The Linux kernel is licensed under the GPLv2 license. This license grants anyone the right to use, modify, distribute, and share the source code and compiled code for free. However, no one can sell the source code. - -**CREDITS** - List of contributors - -**Kbuild** - This is a script that sets up some settings for making the kernel. For example, this script sets up a ARCH variable where ARCH is the processor type that a developer wants the kernel to support. - -**Kconfig** - This script is used when developer configure the kernel which will be discussed in a later article. - -**MAINTAINERS** - This is a list of the current maintainers, their email addresses, website, and the specific file or part of the kernel that they specialize in developing and fixing. This is useful for when a developer finds a bug in the kernel and they wish to report the bug to the maintainer that can handle the issue. - -**Makefile** - This script is the main file that is used to compile the kernel. This file passes parameters to the compiler as well as the list of files to compile and any other necessary information. - -**README** - This text file provides information to developers that want to know how to compile the kernel. - -**REPORTING-BUGS** - This text document provides information on reporting bugs. - -The coding for the kernel will be in files with the extension ".c", or ".h". The “.c” extension indicates that the kernel is written in C, one of many programming languages. The “.h” files are Header files, and they are also written in C. The header files contain code that many of the “.c” files use. This saves programmers' time because they can use the contained code instead of writing new code. Otherwise, a group of code that performs the same action would be in many or all of the “.c” files. That would also consume and waste hard drive space. - -All of the files in the above listed folders are well organized. The folder names help developers to at least have a good guess on the contents of the folders. A directory tree and descriptions are provided below. - -**arch** - This folder contains a Kconfig which sets up some settings for compiling the source code that belongs in this folder. Each supported processor architecture is in the corresponding folder. So, the source code for Alpha processors belong in the alpha folder. Keep in mind that as time goes on, some new processors will be supported, or some may be dropped. For Linux Kernel v3.9.4, these are the folders under arch: - - alpha - arc - arm - arm64 - avr32 - blackfin - c6x - cris - frv - h8300 - hexagon - ia64 - m32r - m68k - metag - microblaze - mips - mn10300 - openrisc - parisc - powerpc - s390 - score - sh - sparc - tile - um - unicore32 - x86 - xtensa - -**block** – This folder holds code for block-device drivers. Block devices are devices that accept and send data in blocks. Data blocks are chunks of data instead of a continual stream. - -**crypto** - This folder contains the source code for many encryption algorithms. For example, “sha1_generic.c” is the file that contains the code for the sha1 encryption algorithm. - -**Documentation** - This folder contains plain-text documents that provide information on the kernel and many of the files. If a developer needs information, they may be able to find the needed information in here. - -**drivers** - This directory contains the code for the drivers. A driver is software that controls a piece of hardware. For example, for a computer to understand the keyboard and make it usable, a keyboard driver is needed. Many folders exist in this folder. Each folder is named after each piece or type of hardware. For example, the bluetooth folder holds the code for bluetooth drivers. Other obvious drivers are scsi, usb, and firewire. Some drivers may be more difficult to find. For instance, joystick drivers are not in a joystick folder. Instead, they are under ./drivers/input/joystick. Keyboard and mouse drivers are also located in the input folder. The Macintosh folder contains code for hardware made by Apple. The xen folder contains code for the Xen hypervisor. A hypervisor is software or hardware that allows users to run multiple operating systems on a single computer. This means that the xen code would allow users to have two or more Linux system running on one computer at the same time. Users could also run Windows, Solaris, FreeBSD, or some other operating system on the Linux system. There are many other folders under drivers, but they are too numerous to mention in this article, but they will in a later article. - -**firmware** - The firmware folder contains code that allows the computer to read and understand signals from devices. For illustration, a webcam manages its own hardware, but the computer must understand the signals that the webcam is sending the computer. The Linux system will then use the vicam firmware to understand the webcam. Otherwise, without firmware, the Linux system does not know how to process the information that the webcam is sending. Also, the firmware helps the Linux system to send messages to the device. The Linux system could then tell the webcam to refocus or turnoff. - -**fs** - This is the FileSystem folder. All of the code needed to understand and use filesystems is here. Inside this folder, each filesystem's code is in its own folder. For instance, the ext4 filesystem's code is in the ext4 folder. Within the fs folder, developers will see some files not in folders. These files handle filesystems overall. For example, mount.h would contain code for mounting filesystems. A filesystem is a structured way to store and manage files and directories on a storage device. Each filesystem has its own advantages and disadvantages. These are due to the programming of the filesystem. For illustration, the NTFS filesystem supports transparent compression (when enabled, files are automatically compressed without the user noticing). Most filesystems lack this feature, but they could only possess this ability if it is programmed into the files in the fs folder. - -**include** - The include folder contains miscellaneous header files that the kernel uses. The name for the folder comes from the C command "include" that is used to import a header into C code upon compilation. - -**init** - The init folder has code that deals with the startup of the kernel (INITiation). The main.c file is the core of the kernel. This is the main source code file the connects all of the other files. - -**ipc** - IPC stands for Inter-Process Communication. This folder has the code that handles the communication layer between the kernel and processes. The kernel controls the hardware and programs can only ask the kernel to perform a task. Assume a user has a program that opens the DVD tray. The program does not open the tray directly. Instead, the program informs the kernel that the tray should be opened. Then, the kernel opens the tray by sending a signal to the hardware. This code also manages the kill signals. For illustration, when a system administrator opens a process manager to close a program that has locked-up, the signal to close the program is called a kill signal. The kernel receives the signal and then the kernel (depending on which type of kill signal) will ask the program to stop or the kernel will simply take the process out of the memory and CPU. Pipes used in the command-line are also used by the IPC. The pipes tell the kernel to place the output data on a physical page on in memory. The program or command receiving the data is given a pointer to the page on memory. - -**kernel** - The code in this folder controls the kernel itself. For instance, if a debugger needed to trace an issue, the kernel would use code that originated from source files in this folder to inform the debugger of all of the actions that the kernel performs. There is also code here for keeping track of time. In the kernel folder is a directory titled "power". Some code in this folder provide the abilities for the computer to restart, power-off, and suspend. - -**lib** - the library folder has the code for the kernel's library which is a set of files that that the kernel will need to reference. - -**mm** - The Memory Management folder contains the code for managing the memory. Memory is not randomly placed on the RAM. Instead, the kernel places the data on the RAM carefully. The kernel does not overwrite any memory that is being used or that holds important data. - -**net** - The network folder contains the code for network protocols. This includes code for IPv6 and Appletalk as well as protocols for Ethernet, wifi, bluetooth, etc. Also, the code for handling network bridges and DNS name resolution is in the net directory. - -**samples** - This folder contains programming examples and modules that are being started. Assume a new module with a helpful feature is wanted, but no programmer has announced that they would work on the project. Well, these modules go here. This gives new kernel programmers a chance to help by going through this folder and picking a module they would like to help develop. - -**scripts** - This folder has the scripts needed for compiling the kernel. It is best to not change anything in this folder. Otherwise, you may not be able to configure or make a kernel. - -**security** - This folder has the code for the security of the kernel. It is important to protect the kernel from computer viruses and hackers. Otherwise, the Linux system can be damaged. Kernel security will be discussed in a later article. - -**sound** - This directory has sound driver code for sound/audio cards. - -**tools** - This directory contains tools that interact with the kernel. - -**usr** - Remember the vmlinuz file and similar files mentioned in the previous article? The code in this folder creates those files after the kernel is compiled. - -**virt** - This folder contains code for virtualization which allows users to run multiple operating systems at once. This is different from Xen (mentioned previously). With virtualization, the guest operating system is acting like any other application within the Linux operating system (host system). With a hypervisor like Xen, the two operating systems are managing the hardware together and the same time. In virtualization, the guest OS runs on top of the Linux kernel while in a hypervisor, there is no guest OS and all of the operating systems do not depend on each other. - -Tip: Never move a file in the kernel source unless you know what you are doing. Otherwise, the compilation with fail due to a "missing" file. - -The Linux kernel folder structure has remained relatively constant. The kernel developers have made some modifications, but overall, this setup is the same throughout all kernel versions. The driver folder's layout also remains about the same. - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/the-linux-kernel-the-source-code.4204/ - -译者:[译者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/The Linux Kernel/03 The Linux Kernel--Drivers.md b/sources/The Linux Kernel/03 The Linux Kernel--Drivers.md deleted file mode 100644 index 1ac19ccd31..0000000000 --- a/sources/The Linux Kernel/03 The Linux Kernel--Drivers.md +++ /dev/null @@ -1,235 +0,0 @@ -03 The Linux Kernel: Drivers -================================================================================ -Drivers are small programs that enable the kernel to communicate and handle hardware or protocols (rules and standards). Without a driver, the kernel does not know how to communicate with the hardware or handle protocols (the kernel actually hands the commands to the BIOS and the BIOS passes them on the the hardware). The Linux Kernel source code contains many drivers (in the form of source code) in the drivers folder. Each folder within the drivers folder will be explained. When configuring and compiling the kernel, it helps to understand the drivers. Otherwise, a user may add drivers to the kernel that they do not need or leave out important drivers. The driver source code usually includes a commented line that states the purpose of the driver. For example, the source code for the tc driver has a single commented line that says the driver is for TURBOchannel buses. Because of the documentation, users should be able to look at the first few commented lines of future drivers to learn their purpose. - -There are different terms that should be understood so that the information below is understandable. An I/O device is an Input/Output device. A modem and network card are examples of this; they send and receive data. A monitor is an output device - information only comes out. A keyboard, mouse, and joystick are input only - data goes into the system. Storage devices store data. Examples of these include SD cards, Hard-drives, CD-roms, memory cards, etc. The CPU (also called a processor) is the "brain" or "heart" of the computer. Without this single processing chip, the computer cannot function. A motherboard (mainboard) is a small board with printed circuits that connect to the components that are on the board. The board and the components are essential to the functionality of a computer. Many computer users say that the motherboard is the heart of the computer (the motherboard holds the CPU). The motherboard contains ports for peripherals. Peripherals include the input, output, and storage devices. A bus is the circuitry of the motherboard and connection to peripherals. Network devices deal with the connection of two or more computers. Ports are devices that users can plug another device or cable into. For example, users would plug a FireWire memory stick into a FireWire port; an Ethernet cable would go into an Ethernet port. Optical discs are read using lasers that read off of reflective surfaces that will either scatter or reflect the laser light. A common optical disk is the DVD. Many systems are 32-bit or 64-bit systems; this refers to the number of bits of registers, address buses, or data buses. For instance, on a 64-bit motherboard, the data buses (the silver lines going between components) have sixty-four lines running parallel to the same destination. Memory addresses are addresses to the memory in the form of bits (ones and zeros). So, a 32-bit memory address contains thirty-two ones and zeros that give the location of a spot on the memory. - -Many of the drivers are generic driver meaning that a generic keyboard driver will allow the kernel to handle nearly every keyboard. However, some drivers are specialized. Apple and Commodore, for instance, have made specialized hardware for their Apple computer and Amiga system, respectively. The Linux kernel contains drivers for many devices like Smartphones, Apples, Amiga systems, Sony's Playstation3, Android tablets, and many others. - -Notice that some drivers overlap categories. For instance, radio drivers exist in the net folder and the media directory. - -**accessibility** - These drivers offer support for accessibility devices. In Linux kernel 3.9.4, only one driver is in this folder, and that is the braille device driver. - -**acpi** - The Advanced Configuration and Power Interface (ACPI) drivers manage power usage. - -**amba** - Advanced Microcontroller Bus Architecture (AMBA) is a protocol for the management and interconnection in a System-on-Chip (SoC). A SoC is a single chip that contains many or all essential components of a computer in one chip. The AMBA drivers in this folder allow the kernel to run on these chips. - -**ata** - This directory contains drivers for PATA and SATA devices. Serial ATA (SATA) is a computer bus interface that connects host bus adapters to storage devices like hard-drives. Parallel ATA (PATA) is a standard for connecting storage devices like hard-drives, floppy drives, and optical disc drives. PATA is commonly known as IDE. - -**atm** - Asynchronous Transfer Mode (ATM) is a standard for telecommunications. There are a variety of drivers in here from PCI bridges (they connect to PCI buses) and Ethernet controllers (integrated circuit chip that controls Ethernet communications). - -**auxdisplay** - This folder provides three drivers - LCD framebuffer driver, LCD Controller driver, and a LCD driver. These drivers manage Liquid Crystal Display monitors. LCD monitors are the screens that ripple when pressed. NOTE: The screen can be damaged when pressed, so do not poke of push on LCD screens. - -**base** - This is an important directory that contains essential base drivers for firmware, the system bus, hypervisor abilities, etc. - -**bcma** - These are drivers for buses that use a protocol that are based on the AMBA protocol. These new buses are made by Broadcom. - -**block** - These drivers provide the kernel with support for block devices like floppy-disk readers, SCSI tapes, block devices over TCP, etc. - -**bluetooth** - Bluetooth is a secure wireless standard for Personal Area Networks (PANs). The bluetooth drivers are in this folder and allow the system to use the different bluetooth devices. For example, a bluetooth mouse lacks a cable, and the computer has a dongle (small USB receiver). The Linux system must be able to understand the mouse signals that are coming in through the dongle. Otherwise, the bluetooth device would not work. - -**bus** - This directory contains three drivers. One converts the ocp interface protocol to scp protocol. The other is a driver for interconnection between devices and the third driver is error handling for interconnection. - -**cdrom** - Two drivers exist in this directory. One is for cd-roms - this includes reading and writing DVDs and CDs. The driver second is for gd-roms (Gigabyte Disc Read-Only Memory). A GD is an optical disc with a 1.2GB storage capacity. This is like a large CD or small DVD. GDs are commonly used in Dreamcast game consoles. - -**char** - Character device drivers are stored here. Character devices transmit data one character at a time. Some included drivers in the folder are printers, PS3 flash ROM storage driver, Toshiba SMM drivers, and random number generator driver. - -**clk** - These drivers are for the system clock. - -**clocksource** - These drivers use the clock as a timer. - -**connector** - These drivers supply the kernel with the ability to know when processes fork and execute as well as changing the UID (User ID), GID (Group ID), and SID (session ID) using what is called a proc connector. The kernel needs to know when process fork (run multiple tasks in the CPU) and execute. Otherwise, the kernel may have inefficiencies in managing resources. - -**cpufreq** - These drivers control the CPU by changing power consumption. - -**cpuidle** - These drivers manage the idleness of the CPU/s. If the system uses multiple CPUs, then one of the drivers will try to keep the idleness the same. - -**crypto** - These drivers provide cryptographic features like encryption. - -**dca** - Direct Cache Access drivers allow the kernel to access the CPU cache. The CPU cache is like a RAM storage built into the CPU chip. The CPU cache is faster than the RAM chip. However, the CPU cache has a much lower space capacity than the RAM. The CPU stores the most important and executed code on this cache system. - -**devfreq** - This driver provides a Generic Dynamic Voltage and Frequency Scaling (DVFS) Framework which changes the CPU frequency as needed to conserve energy. This is known as CPU throttling. - -**dio** - The Digital Input/Output bus drivers allow the kernel to use DIO buses. - -**dma** - The Direct memory access (DMA) driver allows devices to access without needing the CPU. This reduces the load on the CPU. - -**edac** - The Error Detection And Correction drives help reduce and correct errors. - -**eisa** - The Extended Industry Standard Architecture drivers provide EISA bus support to the kernel. - -**extcon** - The EXTernal CONnectors driver detects changes in the ports when a device is plugged in. For instance, extcon will detect if a user plugs in a USB drive. - -**firewire** - These drivers control FireWire devices which are USB-like devices made by Apple. - -**firmware** - These drivers communicate with the firmware of the device like the BIOS (the Basic Input Output System firmware of a computer). The BIOS is used to boot up the operating system and control the hardware and firmware of the device. Some BIOS systems allow user's to overclock the CPU. Overclocking is making the CPU operate at a faster speed. The CPU speed is measured in MHz (Mega-Hertz) or GHz. A CPU with a clock speed of 3.7GHz is significantly faster than a 700MHz processor. - -**gpio** - General Purpose Input/Output (GPIO) is a generic pin on a chip whose behavior can be controlled by the user. The drivers here control GPIO. - -**gpu** - The drivers in this folder control the Video Graphics Array (VGA), Graphics Processing Unit (GPU), and Direct Rendering Manager (DRM). VGA is the 640×480 resolution analog computer displays or simply the resolution standard. A GPU is a processor for graphics. DRM is a rendering system for Unix systems. - -**hid** - These drivers provide support for USB Human Interface Devices. - -**hsi** - This driver offers the kernel the ability to access the cellular modem on the Nokia N900. - -**hv** - These drivers provide Key Value Pair (KVP) functionality to Linux systems. - -**hwmon** - The HardWare MONitoring drivers allow the kernel to get the readings from sensors in the hardware. For example, the CPU has a thermometer. The kernel can then keep track of the temperature and change the fan speed accordingly. - -**hwspinlock** - The hardware spinlock drivers allow systems to use two or more processors that are different or a single processor with two or more different cores. - -**i2c** - I2C drivers enable the I2C protocol which handle low-speed peripherals attached to the motherboard. The System Management Bus (SMBus) driver manages SMBuses which is a single two-wire bus for lightweight communication. - -**ide** - These drivers are for PATA/IDE devices like cdroms and hard-drives. - -**idle** - This driver manages the idleness of Intel processors. - -**iio** - The Industrial I/O core drivers handle analog to digital or digital to analog converters. - -**infiniband** - Infiniband is a high-performance port used by enterprise datacenters and some supercomputers. The drivers in this directory support Infiniband hardware. - -**input** - This directory contains many drivers. All of the drivers deal with input and some include drivers for joysticks, mice, keyboards, gameport (old joystick connectors), remotes, haptic controllers, headphone buttons, and many others. Joysticks today use USB ports, but in the 1980s and 1990s, joysticks plugged into gameports. - -**iommu** - Input/Output Memory Management Unit (IOMMU) drivers manage the IOMMU which is a form of Memory Management Unit (MMU). The IOMMU connects a DMA-capable I/O bus to the RAM. The IOMMU is the bridge between devices and access to the RAM without help from the CPU. This helps to reduce the processors load. - -**ipack** - Ipack stands for IndustryPack. This driver is for a virtual bus that allows operations between carrier and mezzanine boards. - -**irqchip** - These drivers allow interrupt requests (IRQ) which are hardware signals sent to the processor that temporarily stop a running program for a special program(called an interrupt handler) to run instead. - -**isdn** - These drivers support Integrated Services Digital Network (ISDN) which is a set of communication standards for simultaneous digital transmission of voice, video, data, and other network services using traditional circuits of the telephone network. - -**leds** - These drivers support LEDS. - -**lguest** - The lguest drivers manage interrupts that are used with guest operating system. Interrupts are hardware or software signals that interrupt the CPU for important tasks. The CPU then gives the hardware or software some processing resources. - -**macintosh** - Drivers for Apple devices belong in this directory. - -**mailbox** - The driver in this folder (pl320-pci) manages connections for mail systems. - -**md** - The Multiple Devices driver supports RAID (Redundant Array of Independent Disks) - a system of many hard-drives sharing or replicating data. - -**media** - The media drivers offer support in radios, tuners, video capturers, DVB standards for digital television, etc. The drivers also support various media devices that plug in through USB or FireWire ports. - -**memory** - This important driver supports the RAM. - -**memstick** - This driver supports Sony memorysticks. - -**message** - These drivers are to be used with LSI PCI chip/adapter(s) running LSI Fusion MPT (Message Passing Technology) firmware. LSI stands for Large-Scale Integration which are integrated circuits with tens of thousands of transistors per chip. - -**mfd** - MultiFunction Device (MFD) drivers provide support for multifunction devices which are devices that provide multiple services like email, fax, copy machine, scanner, and printer. The drivers in here also add a generic MCP (Multimedia Communications Port) layer which is a protocol for MFDs. - -**misc** - This directory contains miscellaneous drivers that do not fit in any other category like light sensor drivers. - -**mmc** - MultiMediaCard (MMC) drivers handle the MMC standard that is used in flash memory cards. - -**mtd** - Memory technology devices (MTD) are drivers used in Linux for interacting with flash memory like a Flash Translation Layer. Other block and character drivers do not map the same way flash memory devices operate. Although USB memory cards and SD cards are flash drives, they do not use this driver because they are hidden from the system behind a block device interface. This driver is a generic flash drive driver for new flash devices. - -**net** - The network drivers provide network protocols like Appletalk, TCP, and others. The drivers also support modems, USB 2.0 Ethernet Devices, and radio devices. - -**nfc** - This driver is the interface between Texas Instrument's Shared Transport Layer and NCI core. - -**ntb** - The Non-Transparent Bridging driver provides non-transparent bridging in PCI express (PCIe) systems. PCIe is a high-speed expansion bus standard. - -**nubus** - NuBus is a 32-bit parallel computer bus. The driver supports this Apple device. - -**of** - This driver provides OF helpers which are procedures for creating, accessing and interpreting the device tree. The Device Tree is a data structure for describing hardware. - -**oprofile** - This driver profiles the whole system from drivers to user-space processes (applications running under the user's name). This helps developers find performance problems. - -**parisc** - These drivers are for PA-RISC devices which are made by HP. PA-RISC is a specific instruction set for processors. - -**parport** - The Parport drivers provides parallel-port support under Linux. - -**pci** - These drivers offer PCI bus services. - -**pcmcia** - These are laptop motherboard drivers. - -**pinctrl** - These drivers handle pin control devices. Pin controllers can disable and enable I/O devices. - -**platform** - This directory contains drivers for the different computer platforms like Acer, Dell, Toshiba, IBM, Intel, ChromeBooks, etc. - -**pnp** - The Plug-aNd-Play drivers allow users to plug in a device, like a USB device, and use it immediately without the need to manually configure the device. - -**power** - The power drivers allow the kernel to measure the battery power, detect chargers, and power management. - -**pps** - Pulse-Per-Second drivers control an electrical pulse rate that is used for time keeping. - -**ps3** - These are the drivers for Sony's game console - Playstation3. - -**ptp** - Picture Transfer Protocol (PTP) drivers support a protocol for transferring images from digital cameras. - -**pwm** - Pulse-width modulation (PWM) drivers control the pulse of the electricity to devices, mainly motors like the CPU fan. - -**rapidio** - RapidIO drivers manage the RapidIO architecture which is a high-performance packet-switched, interconnect technology for interconnecting chips on a circuit board, and also circuit boards to each other using a backplane. - -**regulator** - The regulator drivers regulate the electricity, temperature, and any other regulator hardware that may exist on a system. - -**remoteproc** - These drivers manage remote processors. - -**rpmsg** - These drivers control Remote Processor MeSsaginG buses which can support a number of drivers. These buses supply the messaging infrastructure, facilitating client drivers to write their own wire-protocol messages. - -**rtc** - The Real Time Clock (RTC) drivers allow the kernel to read the clock. - -**s390** - The drivers are for the 31/32-bit mainframe architecture. - -**sbus** - The SPARC-based buses are managed by these drivers. - -**scsi** - SCSI drivers allow the kernel to use the SCSI standard with peripheral devices. For instance, Linux would be using a SCSI driver when it transmits data with a SCSI hard-drive. - -**sfi** -The Simple Firmware Interface (SFI) drivers allow firmware to send tables of information to the operating system. These tables of data are called SFI tables. - -**sh** - These drivers are for SuperHyway buses. - -**sn** - These drivers add support for IOC3 serial ports. - -**spi** - These drivers handle the Serial Peripheral Interface Bus (SPI bus) which is a synchronous serial data link standard that operates in full duplex mode. Full duplex mode is seen when two devices can both send and receive information at the same time. Duplex refers to two-way communication. Devices communicate in master/slave mode (device configuration). - -**ssb** - Sonics Silicon Backplane drivers provide support for a mini-bus used on various Broadcom chips and embedded devices. - -**staging** - This directory contains numerous subdirectories with many drivers. All of the contained drivers are drivers that need more development before being added to the mainstream kernel. - -**target** - These are drivers for SCSI targets. - -**tc** - These are drivers for TURBOchannel. TURBOchannel is a 32-bit open bus developed by the Digital Equipment Corporation. These buses are commonly used in DECstations. - -**thermal** - The thermal drivers make sure that the CPU stays cool. - -**tty** - The tty drivers manage the connection to a physical terminal. - -**uio** - This driver allows the user to make drivers that run in the user space instead of the kernel space. This keeps the user's driver from causing the kernel to crash. - -**usb** - The USB drivers allow the kernel to use USB ports. Flash drivers and memory cards already contain firmware and a controller, so these drivers allow the kernel to use the USB ports and talk to the USB device. - -**uwb** - The Ultra-WideBand driver manages very low energy level radio devices for short-range, high-bandwidth communications. - -**vfio** - The VFIO driver allows devices to access the userspace. - -**vhost** - This driver is for a virtio server in the host kernel. This is used for virtualization. - -**video** - Video drivers are needed to manage the graphics card and monitor. - -**virt** - These drivers are for virtualization. - -**virtio** - This driver allows virtio devices to be used over a virtual PCI device. This is used for virtualization. - -**vlynq** - This driver controls a proprietary interface developed by Texas Instruments. These are broadband products, like WLAN and modems, VOIP processors, and audio and digital media processor chips. - -**vme** - VMEbus is a bus standard originally developed for the Motorola 68000 line of processors. - -**w1** - These drivers control one-wire buses. - -**watchdog** - This driver manages the watchdog timer which is a timer that is used to detect and recover from malfunctions. - -**xen** - This driver is for the Xen hypervisor system. A hypervisor is software or hardware that allows users to run multiple operating systems on a single computer. This means that the xen code would allow users to have two or more Linux system running on one computer at the same time. Users could also run Windows, Solaris, FreeBSD, or some other operating system on the Linux system. - -**zorro** - This driver offers support for the Zorro Amiga buses. - - - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/the-linux-kernel-drivers.4205/ - -译者:[译者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/The Linux Kernel/04 The Linux Kernel--Security.md b/sources/The Linux Kernel/04 The Linux Kernel--Security.md deleted file mode 100644 index 69245f07c0..0000000000 --- a/sources/The Linux Kernel/04 The Linux Kernel--Security.md +++ /dev/null @@ -1,37 +0,0 @@ -04 The Linux Kernel: Security -================================================================================ -![](http://www.linux.org/attachments/slide-jpg.278/) - -The Linux kernel is the core of all Linux systems. If any malicious code controls or damages any part of the kernel, then the system can get severely damaged, files can be deleted or corrupted, private information can be stolen, etc. Clearly, it is in the user's best interest to keep the kernel secure. Thankfully, Linux is a very secure system because of the kernel and its security. There are less Linux viruses than Windows viruses even in proportion to the number of users, and Linux users get less viruses than Windows users. (This is one reason why many companies use Linux to manage their servers.) However, this is no excuse to neglect the kernel's security. Linux has may security features and programs, but only the Linux Security Modules (LSM) and other kernel security will be discussed in this article. - -AppArmor (Application Armor) is a security module originally made by Immunix. Since 2009, Canonical maintains the code (Novell handled the code after Immunix and before Canonical). This security module has been in the mainstream Linux kernel since version 2.6.36. AppArmor restricts the abilities of programs. AppArmor uses file paths to keep track of program restrictions. Many Linux administrators claim that AppArmor is the easiest security module to configure. However, many Linux users feel that this module provides the worst security compared to alternatives. - -Security-Enhanced Linux (SELinux) is an alternative to AppArmor originally made by the United States National Security Agency (NSA). SELinux has been in the mainstream kernel since version 2.6. SELinux makes modifications to the kernel and user-space tools. SELinux gives executables (mainly daemons and server applications) the minimum privileges required to complete their tasks. SELinux could also be used to control user privileges. SELinux does not use file paths like AppArmor, instead SELinux uses the filesystem to mark executables when keeping track of permissions. Because SELinux uses the filesystem itself for managing executables, SELinux cannot offer protection on all filesystems while AppArmor can provide protection. - -NOTE: A daemon (pronounced DAY-mon) is a program that runs in the background. - -NOTE: Although AppArmor, SELinux, and others are in the kernel, only one security module can be active. - -Smack is another choice for a security module. Smack has been in the mainstream Linux kernel since version 2.6.25. Smack is supposed to offer more security than AppArmor and easier configuration than SELinux. - -TOMOYO, another security module, has been in the Linux kernel since version 2.6.30. TOMOYO offers security, but its main use is analyzing the system for security flaws. - -AppArmor, SELinux, Smack, and TOMOYO make up the four standard LSM modules. All for work by using mandatory access control (MAC) which is a type of access control that restricts a program or user from executing some task. The LSMs have some form of a list of entities and what they are permitted and not permitted to do. - -Yama is a new security module that comes with the Linux kernel. Yama is not yet considered a standard LSM module, but in the future, it may be the fifth standard LSM module. Yama uses the same principals as the other security modules. - -"grsecurity" is a collection of security patches for enhancing the Linux kernel's security. The majority of the patches apply to remote network connections and buffer overflows (discussed a little later). One interesting component of grsecurity is PaX. PaX patches allow code on memory to use the least amount of needed privileges. For example, memory containing programs is marked as non-writable. Think about it, why would an executed program need to be written while in memory? Now, malicious code cannot change currently executed applications. A buffer overrun is the event where a program (bug or malicious code) write data on memory and goes past its space boundary into the memory pages for other applications. When PaX is active, it helps to prevent these buffer overruns because the program will not have permission to write on other memory pages. - -The Linux Intrusion Detection System (LIDS) is a kernel security patch that adds Mandatory Access Control (MAC) features. This patch acts like a LSM module. - -Systrace is a utility that reduces and controls application's access to system files and use of system calls. System calls are service requests to the kernel. For instance, when a text editor writes a file to the hard-drive, the applications makes a system call requesting that the kernel write the file to the hard-drive. - -These are very important components in the Linux security system. These security modules and patches keep malicious code from attacking the kernel. Without these features, Linux systems would be unsecure computer operating systems. - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/the-linux-kernel-security.4223/ - -译者:[译者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/The Linux Kernel/05 The Linux Kernel--Configuring the Kernel Part 1.md b/sources/The Linux Kernel/05 The Linux Kernel--Configuring the Kernel Part 1.md deleted file mode 100644 index 3883b9066f..0000000000 --- a/sources/The Linux Kernel/05 The Linux Kernel--Configuring the Kernel Part 1.md +++ /dev/null @@ -1,72 +0,0 @@ -05 The Linux Kernel: Configuring the Kernel Part 1 -================================================================================ -![](http://www.linux.org/attachments/slide-jpg.299/) - -Now that we understand the Linux kernel, we can move on to the main event - configuring and compiling the code. Configuring code for the kernel does take a lot of time. The configuration tool asks many questions and allows developers to configure every aspect of the kernel. If unsure about any question or feature, it is best to pick the default value provided by the configuration tool. This tutorial series will walk readers through the whole process of configuring the kernel. - -To configure the code, open a terminal in the main source code folder. Once a terminal is up, there are a few ways to configure the code based on the preferred configuration interface. - -make config - Plain text interface (most commonly used choice) -make menuconfig - Text-based with colored menus and radiolists. This options allows developers to save their progress. - ncurses (ncurses-devel) must be installed -make nconfig - Text-based colored menus - curses (libcdk5-dev) must be installed -make xconfig - QT/X-windows interface – QT is required -make gconfig - Gtk/X-windows interface – GTK is required -make oldconfig - Plain text interface that defaults questions based on the local config file -make silentoldconfig - This is the same as oldconfig except the questions answered by the config file will not be shown -make olddefconfig - This is like silentoldconfig except some questions are answered by their defaults -make defconfig - This option creates a config file that uses default settings based on the current system's architecture. -make ${PLATFORM}_defconfig - Creates a config file using values from arch/$ARCH/configs/${PLATFORM}_defconfig. -make allyesconfig - This option creates a config file that will answer yes to as many questions as possible. -make allmodconfig - This option creates a config file that will make as many parts of the kernel a module as possible - -NOTE: Code in the Linux kernel can be put in the kernel itself or made as a module. For instance, users can add Bluetooth drivers as a module (separate from the kernel), add to the kernel itself, or not add at all. When code is added to the kernel itself, the kernel requires more RAM space and boot-up time may take longer. However, the kernel will perform better. If code is added as modules, the code will remain on the hard-drive until the code is needed. Then, the module is loaded to RAM. This will reduce the kernel's RAM usage and decrease boot time. However, the kernel's performance may suffer because the kernel and the modules will be spread throughout the RAM. The other choice is to not add some code. For illustration, a kernel developer may know that a system will never use Bluetooth devices. As a result, the drivers are not added to the kernel. This improves the kernel's performance. However, if users later need Bluetooth devices, they will need to install Bluetooth modules or update the whole kernel. - -make allnoconfig - This option creates a config file that will only add essential code to the kernel; this answers no to as many questions as possible. This can sometimes make a kernel that does not work on the hardware it was compiled on. -make randconfig - This option makes random choices for the kernel -make localmodconfig - This option creates a config file based on the current list of loaded modules and system configuration. -make localyesconfig - This will set all module options to yes - most (or all) of the kernel will not be in modules - -TIP: It is best to use “make menuconfig” because users can save their progress. “make config” does not offer this luxury. Because the configuration process takes a lot of time, - -### Configuration: ### - -Most developers choose "make menuconfig" or one of the other graphical menus. After typing the desired command, the first question asks whether the kernel to be built is going to be a 64-bit kernel or not. The choices are "Y", "n", and "?". The question mark explains the question, "n" answers no to the question, and "Y" answers yes to the question. For this tutorial, I will choose yes. To do this I type "Y" (this is case-insensitive) and hit enter. - - -NOTE: If the kernel is compiled on a 32-bit system, then the configuration tool would ask if the kernel should be 32-bit. The first question is different on other processors. - -The next line shows "Cross-compiler tool prefix (CROSS_COMPILE) []". If you are not cross-compiling, hit enter. If you are cross-compiling, type something like "arm-unknown-linux-gnu-" for ARM systems or "x86_64-pc-linux-gnu-" for 64-bit PC systems. There are many other possible commands for other processor types, but the list can be quite large. Once a developer knows what processor they want to support, it is easy to research the command needed for that processor. - -NOTE: Cross-compiling is compiling code to be used on other processors. For illustration, an Intel system that is cross-compiling code is making applications for processors other than Intel. So, this system may be compiling code for ARM or AMD processors. - -NOTE: Each choice will change which questions come up and when they are displayed. I will include my choices so readers can follow the configuration process on their own system. - -Next, users will see "Local version - append to kernel release (LOCALVERSION) []". This is where developers can give a special version number or name to their customized kernel. I will type "LinuxDotOrg". The kernel version is now “3.9.4-LinuxDotOrg”. Next, the configuration tool asks "Automatically append version information to the version string (LOCALVERSION_AUTO) [N/y/?]". If a git tree is found, the revision number will be appended. This example is not using git, so I will answer no. Other wise the git revision number will be appended to the version. Remember vmlinuz and similar files? Well, the next question asks which compression format should be used. The developer can choose one through five. The choices are - -1. Gzip (KERNEL_GZIP) -2. Bzip2 (KERNEL_BZIP2) -3. LZMA (KERNEL_LZMA) -4. XZ (KERNEL_XZ) -5. LZO (KERNEL_LZO) - -Gzip is the default, so I will press “1” and hit enter. Each compression format has greater or less compression ratios compared to the other formats. A better compression ratio means a smaller file, but more time is needed to uncompress the file while the opposite applies to lower compression ratios. - -Now, this line is displayed - “Default hostname (DEFAULT_HOSTNAME) [(none)]”. The default hostname can be configured. Usually, developers leave this blank (I left it blank) so that Linux users can set up their own hostname. - -Next, developers can enable or disable the use of swap space. Linux uses a separate partition called “swap space” to use as virtual memory. This is equivalent to Windows' paging file. Typically, developers answer yes for the line “Support for paging of anonymous memory (swap) (SWAP) [Y/n/?]”. - -The next line (System V IPC (SYSVIPC) [Y/n/?]) asks if the kernel should support IPC. Inter Process Communication allows processes to communicate and sync. It is best to enable IPC, otherwise, many applications will not work. Answering yes to this question will cause the configuration tool to ask “POSIX Message Queues (POSIX_MQUEUE) [Y/n/?]”. This question will only be seen if IPC is enabled. POSIX message queues is a messaging queue (a form of interprocess communication) where each message is given a priority. The default choice is yes. Hit enter to choose the default choice (indicated by the capitalized choice). - -The next question (open by fhandle syscalls (FHANDLE) [Y/n/?]) is asking if programs will be permitted to use file handles instead of filenames when performing filesystem operations if needed. By default, the answer is yes. - -Sometimes, when a developer has made certain choices, some questions will automatically be answered. For instance, the next question (Auditing support (AUDIT) [Y/?]) is answered yes without prompting because previous choices require this feature. Auditing-support logs the accesses and modifications of all files. The next question relates to auditing (Enable system-call auditing support (AUDITSYSCALL) [Y/n/?]). If enabled, all system calls are logged. If the developer wants performance, then as much auditing features as possible should be disabled and not added to the kernel. Some developers may enable auditing for security monitoring. I will select “no” for this question. The next audit question (Make audit loginuid immutable (AUDIT_LOGINUID_IMMUTABLE) [N/y/?]) is asking if processes can change their loginuid (LOGIN User ID). If enabled, processes in userspace will not be able to change their own loginuids. For better performance, we will disable this feature. - -NOTE: When configuring via “make config”, the questions that are answered by the configuration tool are displayed, but the user does not have a way to change the answer. When configuring via “make menuconfig”, the user cannot change the option no matter what button is pressed. Developers should not want to change options like that anyway because a previous choice requires another question to be answered a certain way. - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-1.4274/ - -译者:[译者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/The Linux Kernel/06 The Linux Kernel--Configuring the Kernel Part 2.md b/sources/The Linux Kernel/06 The Linux Kernel--Configuring the Kernel Part 2.md deleted file mode 100644 index 4a6f74ea49..0000000000 --- a/sources/The Linux Kernel/06 The Linux Kernel--Configuring the Kernel Part 2.md +++ /dev/null @@ -1,136 +0,0 @@ -06 The Linux Kernel: Configuring the Kernel Part 2 -================================================================================ -![](http://www.linux.org/attachments/slide-jpg.351/) - -The next portion of the kernel that is configured is the IRQ subsystem. An Interrupt ReQuest (or IRQ) is a signal from the hardware to the processor to temporarily stop a running program and allow a special program to execute in its place. - -The first question belonging to this category of kernel features (Expose hardware/virtual IRQ mapping via debugfs (IRQ_DOMAIN_DEBUG)) asks if the IRQ numbers of the hardware and the respective can be mapped using a virtual debugging filesystem. This is for debugging purposes. Most users will not need this, so I will select “no”. - -The next heading displays “Timers subsystem”. The first question pertaining to the timers subsystem is “Tickless System (Dynamic Ticks) (NO_HZ)”. Selecting “yes” (which I did) will enable a tickless system. This means that the timer interrupts will be used as needed. Timer interrupts allow tasks to be executed at particular timed intervals. The next question (High Resolution Timer Support (HIGH_RES_TIMERS)) asks if high resolution timer support can be enabled. Not all hardware supports this. Generally, if the hardware is slow or old, then select “no”, else select “yes” as I did. - -The next heading - “CPU/Task time and stats accounting” - pertains to keeping track of processes. The first question looks like this - -Cputime accounting -1. Simple tick based cputime accounting (TICK_CPU_ACCOUNTING) -2. Full dynticks CPU time accounting (VIRT_CPU_ACCOUNTING_GEN) (NEW) -3. Fine granularity task level IRQ time accounting (IRQ_TIME_ACCOUNTING) - -TICK_CPU_ACCOUNTING checks /proc/stat on every CPU tick. This is the default choice. This accounting method is very simple. - -NOTE: A CPU tick is an abstract way of measuring time by the CPU. Every processor, operating system, and installation is different. For example, a more powerful processor will have more CPU ticks than an old processor. If you install a Linux system and then reinstall from the same disk, you may have a faster or slower CPU tick time (at least that is what some computer techs say). Generally, a larger clock speed means more CPU ticks. - -If VIRT_CPU_ACCOUNTING_GEN is enabled, task and CPU time accounting will be implemented by watching kernel-user boundaries. This choice comes with a price – extra overhead. - -The IRQ_TIME_ACCOUNTING accounting method works by checking a time-stamp between IRQ states. The performance cost is small. - -I chose “1” and was then asked about BSD Accounting “BSD Process Accounting (BSD_PROCESS_ACCT)”. This kernel feature logs a variety of information for each process that closes. For a smaller and faster kernel, I will choose “no”. - -The next set of questions looks like the following. - -Export task/process statistics through netlink (TASKSTATS) -Enable per-task delay accounting (TASK_DELAY_ACCT) -Enable extended accounting over taskstats (TASK_XACCT) - -TASKSTATS gives the kernel the ability to export process statistics through a netlink socket. Netlink sockets are a form of IPC between the kernel and user space processes. TASK_DELAY_ACCT watches the processes and the delays concerning the access of resources. For example, TASK_DELAY_ACCT would see that process-X is waiting for some CPU time. The process is then given some CPU time if TASK_DELAY_ACCT notices that the process waits too long. TASK_XACCT collects extra accounting data. I will disable this for less kernel overhead. - -Now, the next category is displayed – RCU Subsystem. The Read-Copy-Update subsystem is a low-overhead syncing mechanism that allows programs to view files that are in the process of being modified/updated. The configuration tool answered the first question. - -RCU Implementation -> 1. Tree-based hierarchical RCU (TREE_RCU) -choice[1]: 1 - -This is to select the type of RCU. Besides TREE_RCU, there is classic RCU (the older implementation). The next question (Consider userspace as in RCU extended quiescent state (RCU_USER_QS) [N/y/?]) asks if RCU can be put in a special state when the CPU runs in userspace. This feature is usually disabled because this adds too much overhead. After this question is another RCU question (Tree-based hierarchical RCU fanout value (RCU_FANOUT) [64]) asking for a fanout value. The next question (Tree-based hierarchical RCU leaf-level fanout value (RCU_FANOUT_LEAF) [16]) is another fanout value question except this one deals with the leaf-level. Yet again, another RCU question (Disable tree-based hierarchical RCU auto-balancing (RCU_FANOUT_EXACT) [N/y/?]) asking if the RCU auto-balancing can be disabled. - -Next, the configuration script asks this question “Accelerate last non-dyntick-idle CPU's grace periods (RCU_FAST_NO_HZ)”. After that, “Offload RCU callback processing from boot-selected CPUs (RCU_NOCB_CPU)” is displayed. - -This next question is very important (Kernel .config support (IKCONFIG)). The developer has the choice of saving the settings made in this configuration tool into a file. This file can be placed in the kernel, in a module, or not saved at all. This file can be used by other developers that want to compile a kernel exactly as someone else. This file can also help developers recompile a kernel using a newer compiler. For illustration, a developer configures and compiles a kernel. The compiler has some bugs, but the developer still needs a kernel with these settings. Thankfully, the developer can upgrade their compiler and use the settings file to save them time from configuring the kernel again. The developer could also save the source code and config file and compile the kernel on another computer. As for another purpose, the developer can load this file and tweak the settings as needed. I chose to save the config file in a module. “Enable access to .config through /proc/config.gz (IKCONFIG_PROC)” asks if this file is accessible. I chose yes. - -The next question asks how large to make the kernel log buffers (Kernel log buffer size (16 => 64KB, 17 => 128KB) (LOG_BUF_SHIFT) [17]). Smaller buffers indicate logs are not kept as long as logs set to higher buffers. This choice depends on how long the developer wishes the logs to last. I chose “12”. - -Again, another question appears. This one asks about enabling NUMA (Non-Uniform Memory Access) aware memory/task placement (Automatically enable NUMA aware memory/task placement (NUMA_BALANCING_DEFAULT_ENABLED)). If set and if the computer is a NUMA machine, then NUMA balancing will be enabled. Under NUMA, a processor can access its own local memory faster than non-local memory (memory local to another processor or memory shared between processors). If the above is enabled (I enabled it), then it would be best to answer yes to “Memory placement aware NUMA scheduler (NUMA_BALANCING)”. This is the NUMA scheduler. - -Under the new heading “Control Group support”, the choice “Control Group support (CGROUPS)” is automatically answered “yes” due to previous choices. - -The following setting (Example debug cgroup subsystem (CGROUP_DEBUG)) is for enabling a simple cgroup subsystem for debugging the cgroups framework. The next choice (Freezer cgroup subsystem (CGROUP_FREEZER)) allows programmers to allow the ability to freeze and unfreeze tasks in a cgroup. - -NOTE: A cgroup is a group of processes. - -Next, we are asked “Device controller for cgroups (CGROUP_DEVICE)”. Cgroups (Control Groups) is a feature used to control resource usage. Answering “yes” will allow cgroup whitelists for the devices cgroups can open or mknod (system call for creating a file system node). - -The next question (Cpuset support (CPUSETS)) asks if it can allow the creation and management of CPUSETS. This would allow administrators to dynamically partition sets of Memory Nodes and CPUs on a system and assign tasks to run on those sets. This is usually used on SMP and NUMA systems. I answered “no” on this question. - -NOTE: Remember, if I do not specify what I chose, then I chose the default. - -Enabling a cgroup accounting subsystem (Simple CPU accounting cgroup subsystem (CGROUP_CPUACCT)) makes a resource controller for monitoring the CPU usage of individual tasks in a cgroup. I chose “no”. - -Resource counters (Resource counters (RESOURCE_COUNTERS)) enables controller independent resource accounting infrastructure that works with cgroups. I chose “no”. - -The next question (Enable perf_event per-cpu per-container group (cgroup) monitoring (CGROUP_PERF)) allows developers to extend the per-cpu mode to make it only monitor threads of a particular cgroup on a specific CPU. I chose “no”. - -The next section is “Group CPU Scheduler”. The first two pre-answered questions include - -Group CPU scheduler (CGROUP_SCHED) -Group scheduling for SCHED_OTHER (FAIR_GROUP_SCHED) - -The first answerable question (CPU bandwidth provisioning for FAIR_GROUP_SCHED (CFS_BANDWIDTH)) asks if the kernel should allow users to set CPU bandwidth limits for tasks executing in the fair group scheduler. Groups with no limit set are considered to be unconstrained and will run with no restriction. - -NOTE: Not all of the kernel options are in groups. I mention groups only for the ease of reading and to indicate a new, large topic. It is not important to know the groups. This grouping system is helpful when configuring the kernel using the graphical tools. Then, developers can look through the menus that are grouped when searching for a particular setting. - -Developers can enable users to allocate CPU bandwidth to task groups by answering yes to “Group scheduling for SCHED_RR/FIFO (RT_GROUP_SCHED)”. - -The next question is “Block IO controller (BLK_CGROUP)”. Task groups are recognized and their disk bandwidth is allocated by the CFQ IO scheduler which uses the block IO controller to do so. The BIO throttling logic in the block layer uses a block IO controller to provide upper limit in IO rates on a device. - -Here is a debugging question (Enable Block IO controller debugging (DEBUG_BLK_CGROUP) [N/y/?]) that is asking to enable debugging for block IO controllers. To make a streamlined kernel, it is best to disable this feature. - -To enable checkpoint and restore features in the kernel answer yes to “Checkpoint/restore support (CHECKPOINT_RESTORE)”. I chose no for less overhead. Enabling this feature would add auxiliary prctl codes to setup process text, data and heap segment sizes, and a few additional proc entries. - -Next, we will configure namespace support. A namespace is a container for a group of identifiers. For illustration, /usr/lib/python3/dist-packages/re.py is an identifier, /usr/lib/python3/dist-packages/ is the namespace, and re.py is the localname in the namespace. - -The first namespace question (Namespaces support (NAMESPACES)) asks if namespaces can be enabled. This will allow the same PIDs (Process ID) to be used but indifferent namespaces. Otherwise, PIDs can never be duplicated. - -The next question (UTS namespace (UTS_NS)) asks to enable the ability for tasks in the UTS namespace to see different information in the uname() system call. The uname() system call provides information about the machine and operating system. - -Enabling the IPC namespace (IPC namespace (IPC_NS)) will allow tasks in this namespace to work with IPC IDs which correspond to different IPC objects in different namespaces. - -PID Namespaces (PID Namespaces (PID_NS)) are process ID namespaces. This allows multiple processes, each in different PID namespaces, to use the same PID. This is a building block of containers. - -Next, enabling network namespaces (Network namespace (NET_NS)) will allow users to make a network stack appear to have multiple instances. - -When enabled, Automatic process group scheduling (SCHED_AUTOGROUP) populates and creates task groups to optimize the scheduler for desktop workloads. This will put applications that take up a lot of resources in their own task group. This helps performance. - -Here is a debugging feature that should be disabled unless it is specifically needed. This question (Enable deprecated sysfs features to support old userspace tools (SYSFS_DEPRECATED)) asks if sysfs should be enabled. This is a virtual filesystem for debugging the kernel. - -Next, the question “Kernel->user space relay support (formerly relayfs) (RELAY)” is answered “yes” because it is needed with the current configuration. It is best to allow initrd support (Initial RAM filesystem and RAM disk (initramfs/initrd) support (BLK_DEV_INITRD)). - -The user is asked where to put the initramfs source files. If none are needed, then leave this blank. - -Next, the developer is asked about the supported compression format for the initial ramdisks (Linux image files for the kernel). It is fine to enable support for all of the compression formats. - -Support initial ramdisks compressed using gzip (RD_GZIP) -Support initial ramdisks compressed using bzip2 (RD_BZIP2) -Support initial ramdisks compressed using LZMA (RD_LZMA) -Support initial ramdisks compressed using XZ (RD_XZ) -Support initial ramdisks compressed using LZO (RD_LZO) - -Here, the compiling options for the kernel are set (Optimize for size (CC_OPTIMIZE_FOR_SIZE)). The developer can have the compiler optimize the code when compiling. I chose “yes”. - -For users wanting to configure more kernel features, then they can answer “yes” for this next question (Configure standard kernel features (expert users) (EXPERT)). - - -To enable legacy 16-bit UID syscall wrappers, answer yes to this question (Enable 16-bit UID system calls (UID16)). These system calls use 16-bit user IDs. - -It is recommended to enable sysctl syscall support (Sysctl syscall support (SYSCTL_SYSCALL)). This allows /proc/sys to be the interface for binary paths. - -The next two questions about debugging have been pre-answered “yes” - “Load all symbols for debugging/ksymoops (KALLSYMS)” and “Include all symbols in kallsyms (KALLSYMS_ALL)”. These enable debugging symbols. - -Next, developers should enable printk support (Enable support for printk (PRINTK)). This prints kernel messages to the kernel log. This is important if something goes wrong with the kernel. Having a mute kernel is not a good idea. However, some developer saw a purpose for it if we have a choice. Otherwise, we would not have a choice. - -Unless needed, developers can disable bug support (BUG() support (BUG)). Disabling this will remove support for WARN and BUG messages. This reduces the kernel's size. - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-2.4318/ - -译者:[译者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/The Linux Kernel/07 The Linux Kernel--Configuring the Kernel Part 3.md b/sources/The Linux Kernel/07 The Linux Kernel--Configuring the Kernel Part 3.md deleted file mode 100644 index fb66c73002..0000000000 --- a/sources/The Linux Kernel/07 The Linux Kernel--Configuring the Kernel Part 3.md +++ /dev/null @@ -1,130 +0,0 @@ -07 The Linux Kernel: Configuring the Kernel Part 3 -================================================================================ -![](http://www.linux.org/attachments/slide-jpg.388/) - -Here, we are still configuring the kernel. There are many more features to configure. - -The next question (Enable ELF core dumps (ELF_CORE)) asks about enabling the ability for the kernel to generate core dumps. This feature makes the kernel four kilobytes larger. I chose “no”. - -NOTE: A core dump (memory or system dump) is the recorded state of an application before it crashed. Core dumps are used for debugging issues. This core dump file is in the Executable and Linkable Format (ELF) format. - -Next, PC-Speakers can be enabled (Enable PC-Speaker support (PCSPKR_PLATFORM)). Most computers users have and use speakers, so this is enabled. - -Although this next feature increases the kernel size (Enable full-sized data structures for core (BASE_FULL)), performance is increased. I chose “yes”. - -For the kernel to run glibc-based programs, FUTEX must be enabled (Enable futex support (FUTEX)). This feature enables Fast Userspace muTEXes. - -NOTE: glibc (GNU C Library) is the GNU's implementation of the standard C library. - -NOTE: FUTEX (fast userspace mutex) is used for preventing two threads from accessing a shared resource that should not be used by more than one thread at once. - -The epoll system calls can be disabled by answering “no” to this next question (Enable eventpoll support (EPOLL)). However, it helps to have epoll system calls, so I chose “yes”. Epoll is an I/O event notification system. - -To receive signals on file descriptors, enable signalfd system calls (Enable signalfd() system call (SIGNALFD)). - -This feature allows applications to get file descriptors to use with timer events if enabled (Enable timerfd() system call (TIMERFD)). - -The eventfd system call must be enabled with our current configuration (Enable eventfd() system call (EVENTFD)). The ability to use a shmem filesystem is enabled by default (Use full shmem filesystem (SHMEM)). A shmem filesystem is a virtual RAM filesystem. - -The next question that can be answered is “Enable AIO support (AIO)”. This feature enables POSIX asynchronous I/O that threaded application use. This features takes up seven kilobytes of space. I disabled this feature. - -NOTE: Asynchronous I/O is input/output processing that allows other threads to get processed before transmission is complete. - -If embedding a kernel for embedded systems, select “yes” for the question “Embedded system (EMBEDDED)”. Otherwise, choose no as I have done. - -NOTE: Embedded systems are real-time computers that run in a larger electronic system. - -Now, we can configure kernel performance events and counters. The configuration tool enables events and counters without giving the developer a choice (Kernel performance events and counters (PERF_EVENTS)). This is an important feature. - -Next, we can disable another debugging feature (Debug: use vmalloc to back perf mmap() buffers (DEBUG_PERF_USE_VMALLOC)). - -If VM event counters are enabled, then event counts will be shown in the /proc/vmstat (Enable VM event counters for /proc/vmstat (VM_EVENT_COUNTERS)). If disabled, event counts will not be shown and /proc/vmstat will only display page counts. - -For better support for PCI chipsets, answer yes (Enable PCI quirk workarounds (PCI_QUIRKS)). This will enable workarounds for PCI quirks and bugs. - -Next is another debugging feature that can be disabled as I did (Enable SLUB debugging support (SLUB_DEBUG)). This feature takes up a lot of space and disables SLB sysfs which is used for debugging the kernel. If this feature is disabled, then /sys/slab will not exist and cache validation support will not exist on the system. - -Heap randomization is a feature that makes heap exploits more difficult (Disable heap randomization (COMPAT_BRK)). However, this should not be enabled because any libc5-based software will not work on the system. Only enable this feature if you have a specific reason for doing so or if you will not use libc5-based software. I disabled this feature. When making a general kernel, developers will want to disable this feature. - - -Next, a SLAB allocator must be chosen. A SLAB allocator is a memory management system for placing kernel objects in memory in am efficient way without fragmentation. The default is choice “2”. - -Choose SLAB allocator -1. SLAB (SLAB) -> 2. SLUB (Unqueued Allocator) (SLUB) -3. SLOB (Simple Allocator) (SLOB) -choice[1-3?]: 2 - -To enable extended profiling support, answer “yes” (Profiling support (PROFILING)). - -The next question gives developers the choice of enabling the OProfile system. It can be disabled, enabled, or added as a module to be loaded when needed. I chose to disable this feature. - -Kprobes allows users to trap nearly any kernel address to start a callback function. This is a debugging tool that can be disabled as I did (Kprobes (KPROBES)). - -This optimization feature should be enabled (Optimize very unlikely/likely branches (JUMP_LABEL)). This makes branch prediction easier and reduces overhead. - -The configuration tool enabled an experimental feature (Transparent user-space probes (EXPERIMENTAL) (UPROBES)). Do not worry, the system will be fine. Not all experimental features are unstable or bad. - -Next, we are asked about gcov-based kernel profiling (Enable gcov-based kernel profiling (GCOV_KERNEL)). This can be disabled. - -To allow the kernel to load modules, enable loadable module support (Enable loadable module support (MODULES)). - -The Linux kernel will only load modules with version numbers. To allow the kernel to load modules with missing version numbers, enable this feature (Forced module loading (MODULE_FORCE_LOAD)). It is generally a bad idea to do this, so disable this feature as I have done, unless you have a specific need to such a feature. - -The Linux kernel can also unload modules if that feature is enabled which is best to do (Module unloading (MODULE_UNLOAD)). If the kernel feels that unloading a modules is a bad idea, then the user cannot unload the module. Enabling force-unload is possible, but is a bad idea (Forced module unloading (MODULE_FORCE_UNLOAD)). - -To use modules that did not come with your kernel or are not meant for your kernel version, enable versioning support (Module versioning support (MODVERSIONS)). It is best not to mix versions, so I will disable this feature. - -Modules can have a field in their modinfo (Module Information) section titled “srcversion”. This field allows developers to see what source was used to make the module. Enabling this option will add this field when the modules are compiled. This is not necessary, so I will disable it (Source checksum for all modules (MODULE_SRCVERSION_ALL)). If the previous option was enabled, developers could have the checksums added to the modules (Source checksum for all modules (MODULE_SRCVERSION_ALL)). - -To enable module signature verification (Module signature verification (MODULE_SIG)), answer “yes” for this option. Because it is not needed, I will answer “no”. Otherwise, the kernel will check and verify the signature before loading a module. - -To enable block layer support (Enable the block layer (BLOCK)), choose “yes” as I have done. Disabling this will make block devices unusable and certain file systems will not be enabled - -Next, SG support is enabled by default (Block layer SG support v4 (BLK_DEV_BSG)), and the helper library is also enabled (Block layer SG support v4 helper lib (BLK_DEV_BSGLIB)). - -The next answerable question is about data integration support for block devices (Block layer data integrity support (BLK_DEV_INTEGRITY)). This allows better data integrity to help protect data on devices that support such a feature. Many devices do not support this feature, so I will disable it. - -IO device rates can be limited if block layer bio throttling is enabled (Block layer bio throttling support (BLK_DEV_THROTTLING)). - -To enable support for foreign partitioning schemes, answer “yes” to the next question (Advanced partition selection (PARTITION_ADVANCED)). I will disable this feature. - -To enable the CSCAN service and FIFO expiration of requests, enable the deadline IO scheduler (Deadline I/O scheduler (IOSCHED_DEADLINE)). - -The CFQ IO scheduler distributes bandwidth evenly between the processes. It is a good idea to enable this feature (CFQ I/O scheduler (IOSCHED_CFQ)). - -Next, developers can enable or disable CFQ group support (CFQ Group Scheduling support (CFQ_GROUP_IOSCHED)). Then, developers can choose the default IO scheduler. It is best to pick DEFAULT_DEADLINE. - -For devices with less than 32-bit addressing, this next feature allocated the first 16 megabytes of address space (DMA memory allocation support (ZONE_DMA)). If the kernel is not meant for such devices, this can be disabled, so I disabled this feature. - -For systems with more than one CPU, it is best to enable SMP (Symmetric multi-processing support (SMP)). For single processor devices, the kernel will execute faster with this feature disabled. I enabled this feature. - -For CPUs that offer x2apic, enable x2apic support (Support x2apic (X86_X2APIC)). If your system lacks this feature, then disable it as I have done. - -Next, we can enable a MPS table which is for old SMP systems that lack appropriate ACPI support (Enable MPS table (X86_MPPARSE)). Newer systems that have ACPI support, DSDT, and MADT do not need this feature. I disabled the feature. - -The following question allows us to enable support for extended x86 platforms (Support for extended (non-PC) x86 platforms (X86_EXTENDED_PLATFORM)). Only enable this if you need a general kernel or a kernel that will run on certain processors that need extended support. I disabled extended support. - -To support an Intel Low Power Subsystem, enable this feature (Intel Low Power Subsystem Support (X86_INTEL_LPSS)). - -Single-depth WCHAN output (Single-depth WCHAN output (SCHED_OMIT_FRAME_POINTER)) is used to calculate batter /proc//wchan values. However, this will cause more overhead. - -Next, we can enable virtual guest system support (Paravirtualized guest support (PARAVIRT_GUEST)). This will allow a guest operating system to run with the main OS. I will disable this feature. - -Memtest is software that checks the RAM when the system starts. Memtest can be configured to run every time the system starts or sometimes. Memtest is not required, so I will disable it. - -Here, we can select the processor family that the kernel should support. I will pick 5 – Generic-x86-64. This is a 64-bit system, a x86 is a 32-bit system, - -Next, we can choose to support x86 processors (32-bit) (Supported processor vendors (PROCESSOR_SELECT)). - -To find the machine's quirks, we can enable DMI scanning (Enable DMI scanning (DMI)). This will detect quirks. - -To enable DMA access of 32bit memory devices with systems with more than 3GB of RAM, answer “yes” to this next question (GART IOMMU support (GART_IOMMU)). - --------------------------------------------------------------------------------- - -via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-3.4369/ - -译者:[译者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/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md b/sources/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md old mode 100644 new mode 100755 index a3f6fc592a..00e0e6cea6 --- a/sources/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md +++ b/sources/The Linux Kernel/08 The Linux Kernel--Configuring the Kernel Part 4.md @@ -1,3 +1,5 @@ +Translating-------geekpi + 08 The Linux Kernel: Configuring the Kernel Part 4 ================================================================================ ![](http://www.linux.org/attachments/slide-jpg.392/) diff --git a/sources/The future of Linux--Evolving everywhere.md b/sources/The future of Linux--Evolving everywhere.md index 7665ab4877..77da4979fb 100644 --- a/sources/The future of Linux--Evolving everywhere.md +++ b/sources/The future of Linux--Evolving everywhere.md @@ -1,3 +1,4 @@ +翻译中 by小眼儿 The future of Linux: Evolving everywhere ================================================================================ *InfoWorld* - Mark Shuttleworth's recent closure of [Ubuntu Linux bug No. 1][1] ("Microsoft has a majority market share") placed a meaningful, if somewhat controversial, exclamation point on how far Linux has come since Linus Torvalds rolled out the first version of the OS in 1991 as a pet project. @@ -128,4 +129,4 @@ via: http://www.networkworld.com/news/2013/101513-the-future-of-linux-evolving-2 [1]:https://bugs.launchpad.net/ubuntu/+bug/1 [2]:http://training.linuxfoundation.org/ -[3]:http://www.opencompute.org/2013/05/08/up-next-for-the-open-compute-project-the-network/ \ No newline at end of file +[3]:http://www.opencompute.org/2013/05/08/up-next-for-the-open-compute-project-the-network/ diff --git a/sources/Torvalds--SteamOS will“really help”Linux on desktop.md b/sources/Torvalds--SteamOS will“really help”Linux on desktop.md deleted file mode 100644 index 89d190ee8f..0000000000 --- a/sources/Torvalds--SteamOS will“really help”Linux on desktop.md +++ /dev/null @@ -1,42 +0,0 @@ -翻译中 by小眼儿 - -Torvalds: SteamOS will "really help" Linux on desktop -================================================================================ -Linus Torvalds has welcomed the arrival of Valve’s Linux-based platform, SteamOS, and said it could boost Linux on desktops. - -The Linux creator praised Valve's "vision" and suggested its momentum would force other manufacturers to take Linux seriously - especially if game developers start to ditch Windows. - -"I love the Steam announcements – I think that's an opportunity to really help the desktop," he said, speaking at LinuxCon in Edinburgh. - -Valve announced SteamOS last month as a way to bring PC gaming to the living room. Users will be able to install the system on PCs they build themselves, and Valve will make the system available to manufacturers to use on their own hardware. - -> I love the Steam announcements – I think that's an opportunity to really help the desktop - -Should SteamOS gain traction among gamers and developers, that could force more hardware manufacturers to extend driver support beyond Windows. - -That's a sore point for Torvalds, who [slammed Nvidia last][1] year for failing to support open-source driver development for its graphics chips. Now that SteamOS is on the way, Nvidia has opened up to the Linux community, something Torvalds predicts is a sign of things to come. - -"I’m not just saying it’ll help us get traction with the graphics guys," he said. "It’ll also force different distributors to realise if this is how Steam is going, they need to do the same thing because they can’t afford to be different in this respect. They want people to play games on their platform too." - -"It’s the best model for standardisation," he added. "I think good standards are people doing things, saying 'this is how we do it' and being successful enough to drive the market." - -### Pretty login screens ### - -Another reason Linux hasn't done well on desktop, according to Torvalds, is because developers focus on useless UX features. - -"Linux is doing wonderfully well in so many different areas, but I still am somewhat disappointed about the fact that Linux desktop is this morass of in-fighting and people who do bad things," he said. - -"I do hope the desktop people will try to work together, and work more on the technology than trying to make the login screen look really nice," he added. - -Torvalds wouldn't mention specific companies, but has [previously championed Google’s Chromebook Pixel][2], which runs on the Linux-based Chrome OS - describing other PCs as "crap" by comparison. - --------------------------------------------------------------------------------- - -via: http://www.pcpro.co.uk/news/384934/torvalds-steamos-will-really-help-linux-on-desktop - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.wired.com/wiredenterprise/2012/06/torvalds-nvidia-linux/ -[2]:https://plus.google.com/+LinusTorvalds/posts/dk1aiW4JjHd diff --git a/sources/Trusty Tahr daily builds available for download.md b/sources/Trusty Tahr daily builds available for download.md deleted file mode 100644 index 6a7c87bd76..0000000000 --- a/sources/Trusty Tahr daily builds available for download.md +++ /dev/null @@ -1,24 +0,0 @@ -Trusty Tahr daily builds available for download -================================================================================ -Four days ago, Canonical released Ubuntu 13.10, introducing a more strengthened high-quality Ubuntu version capable of properly meeting the needs of users, developers, companies with a fast, agile and powerful computing experience. - -Today, the developers [announced][1] that **Trusty Tahr** is officially **open for development**, immersing the upcoming LTS into new packages after only-days since the 13.10's release. - -Moreover, Trusty daily builds have been generated, installable images encapsulating the new development focus of the developers on delivering Ubuntu 14.04 LTS. - -![](http://iloveubuntu.net/pictures_me/trusty%20tahr%20daily%20builds.jpg) - -Although there are minor differences between the Trusty daily builds and Ubuntu 13.10, their availability set Trusty in a vigorous development since its very start, Trusty being an LTS (long term support) and, therefore, traditionally offering a more stable Ubuntu version as compared to standard between-LTSes releases. - -Trusty Tahr's daily builds are available for download on [http://cdimage.ubuntu.com/daily-live/current/][2] - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/trusty-tahr-daily-builds-available-download - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://iloveubuntu.net/trusty-tahr-open-development -[2]:http://cdimage.ubuntu.com/daily-live/current/ \ No newline at end of file diff --git a/sources/Ubuntu 13.10 ‘Saucy Salamander’ Final has been released ~ Installation Instructions With Screenshots.md b/sources/Ubuntu 13.10 ‘Saucy Salamander’ Final has been released ~ Installation Instructions With Screenshots.md deleted file mode 100644 index 26623e38d7..0000000000 --- a/sources/Ubuntu 13.10 ‘Saucy Salamander’ Final has been released ~ Installation Instructions With Screenshots.md +++ /dev/null @@ -1,101 +0,0 @@ -Ubuntu 13.10 ‘Saucy Salamander’ Final has been released! | Installation Instructions With Screenshots -================================================================================ -Finally, the most expected distribution in Linux World, **Ubuntu 13.10 ‘Saucy Salamander’** final has been released, there is **no official release announcement yet**, but the [download page of Saucy has been updated][1] with the final packages. Just like most of you, We also expected it very long. This awesome distribution has come with plenty of new features and improvements. - -**Download** - -- **[Download Ubuntu 13.10 ‘Saucy Salamander’][1]** - -If you have already a previous release of Ubuntu, and want to upgrade to the latest 13.10 version, then please follow our [step by step guide upgrade to Ubuntu 13.10 Saucy Salamander][2]. - -You can also Download the Getting Started Manual from the following link. - -- **[Getting Started With Ubuntu 13.10][3]** - -**What’s New in Ubuntu 13.10?** - -- Kernel 3.11 -- Unity 7 -- Search hundreds of different online sources directly from the Dash. -- Filter Dash results in several different ways. -- [Smart Scopes][5] -- Add or remove scopes from the Dash to customize your experience. -- Browse messages from your social networks with the new Friends scope. -- Comes with the latest OpenStack cloud platform (Code name: Havana). -- Enhanced support for Linux Containers ([LXC][6]). -- Get work done in style with LibreOffice 4.0, now with new, modern presentation templates and built-in support for Ubuntu’s integrated menu bar. - -**Install steps of Ubuntu 13.10 for Newbies** - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_55_47.png) - -Press Continue: - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_56_16.png) - -Choose the first option and continue: - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_56_45.png) - -Here we have 3 options: - -1- Install Ubuntu alongside them, this mean if you have windows installed on your hard drive, ubuntu will be installed alongside windows. - -2- Erase Disk and install Ubuntu : **Be careful** because choosing this option will erase all the data on your hard disk. Only use it if you are testing in an old computer or if you have an empty hard drive - -3- Something else: You can use this option if you have many partitions on your hard drive, use the empty one then to install Ubuntu - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_57_53.png) - -If you choosed “something else” in the previous screen, You will got this screen, as you see in my case i chooses the free space on my hard disk : - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_58_49.png) - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_59_27.png) - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-10_59_49.png) - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-11_04_03.png) - -Choose your language: - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-13_04_45.png) - -Enter your name, username, password …etc. - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-13_05_30.png) - -If you don`t have an Ubuntu One account, choose “Login Later”. - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-13_05_48.png) - -Installation will start now. - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-13_06_08.png) - -Now installation is done. Press reboot and enjoy the new release of Ubuntu 13.10 Saucy Salamander. - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/Screenshot-from-2013-10-13-13_09_44.png) - -Ok, you have successfully installed Ubuntu 13.10, What’s now? Well, We have made a comprehensive guide about [Top things to do after installing Ubuntu 13.10 Saucy Salamander][6]. This guide will help you to enhance Ubuntu 13.10 further for day to day activities and it contains lot of interesting insight and ideas about what you can and should do after a successful installation. - -Still having some issues? well, don’t hesitate to contact us via [our brand new forum][7] or [IRC chat channel][8]. - -Cheers!! - --------------------------------------------------------------------------------- - -via: http://www.unixmen.com/ubuntu-13-10-saucy-salamander-released-screenshots/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:http://releases.ubuntu.com/saucy/ -[2]:http://www.unixmen.com/upgrade-ubuntu-13-04-raring-ubuntu-13-10-saucy-salamander/ -[3]:http://ubuntu-manual.org/ -[4]:https://wiki.ubuntu.com/SmartScopes1304Spec -[5]:http://lxc.sourceforge.net/ -[6]:http://www.unixmen.com/top-things-installing-ubuntu-13-10/ -[7]:http://ask.unixmen.com/BB/ -[8]:http://ask.unixmen.com/BB/chat.php \ No newline at end of file diff --git a/sources/Ubuntu 13.10--It just works.md b/sources/Ubuntu 13.10--It just works.md deleted file mode 100644 index 6e4f65f26c..0000000000 --- a/sources/Ubuntu 13.10--It just works.md +++ /dev/null @@ -1,65 +0,0 @@ -Ubuntu 13.10: It just works -================================================================================ -**Find out why Jack Wallen thinks that Ubuntu 13.10 is a solid, reliable platform that just works. Do you agree? ** - -![](http://tr1.cbsistatic.com/hub/i/r/2013/10/15/c0a67c0e-828d-4efb-80b2-0490dc61e325/resize/620x485/ubuntu-13-10-saucy-salamander.jpg) - -I've been using Ubuntu for a very long time. I was one of the few in the media who adopted Unity as my primary desktop interface. In fact, I've grown so used to Unity that I have trouble finding any form of efficiency in other desktops. So, naturally, when a new Ubuntu release is about to be unleashed upon the world, I grab a beta and install it. - -The hype surrounding the upcoming 13.10 (Saucy Salamander) was fairly significant. Leading this charge was the much-anticipated switch to Xmir. Well, thanks to a few show-stopping issues (such as dual-monitor support), Xmir has been pushed back to 14.04. Is this a big deal? Yes and no. Yes, because Xmir will be a major change to the sub-systems of Ubuntu. No, because Xmir must be faultless when released -- otherwise, the backlash will knock Canonical back so far in the past that they'll have a hard time recovering in the eyes of the Linux community. - -Beyond Xmir, the biggest change from .04 to .10 is the much-maligned inclusion of Smart Scopes. What are Smart Scopes? Let me explain it in the simplest terms as possible. - -When you open your browser and begin typing a string of characters, you know how that browser will make suggestions for you based on search terms, location, and history? Smart Scopes brings that same functionality to the desktop. I've run some tests on it, and it's pretty incredible. Search for nearly anything, and it will return results based on a number of criteria. Want to know the location of a restaurant in your area? I conducted a search for my favorite Mexican restaurant, Bazos, and an entry appeared in Smart Scopes (**Figure A**). Click the entry to get the address or open that entry in a web browser to get more information (and even reviews). - -**Figure A** - -![](http://tr2.cbsistatic.com/hub/i/r/2013/10/15/2973959a-1e3e-454d-af1f-b8ed01236a87/resize/620x485/smart_scopes_1.101513.png) - -**My favorite place to eat listed in Smart Scopes.** - -I get it, there are people out there suffering from apoplectic fits of terror because Smart Scopes is an invasion of privacy. This is no different than what your web browser is doing. So, unless you constantly run your web browser in Incognito mode, all those search strings are saved and compared anyway. And the truth is, why wouldn't you want your search results based on your preferences and behavior instead of some generic algorithm? Personally, I don't mind my search results being quantified and qualified, so long as it constantly refines the search results based on my needs. - -Smart Scopes isn't limited to seeking out search results from the network. You'll be happily searching for anything and everything on your local (or locally attached) drives as well. With this inclusion, Smart Scopes becomes one of the single most powerful search tools available. - -Of course, if you don't like Smart Scopes, you can turn them off. Here's how: - -1. Click the Settings launcher -1. Select Security & Privacy -1. In the Search tab, turn Include online search results to Off (**Figure B**) - -**Figure B** - -![](http://tr2.cbsistatic.com/hub/i/r/2013/10/15/5059f807-0498-460c-a5d8-7ad3f0ccbae3/resize/620x485/smart_scopes_2.101513.png) - -**It's easy to turn off the Smart Scopes feature.** - -With all of that said, let's step away from the arguments for or against search privacy and let me explain exactly why Ubuntu 13.10 is the perfect desktop for nearly any user. - -The install was fresh from the latest daily build. During the installation, I included third-party software, updates, and was even able to authenticated to my UbuntuOne account. The install was incredibly simple (as most modern Linux distributions are), and at first login, everything was smooth. - -What initially struck me about Ubuntu 13.10 is how everything worked out of the box. There was no need to install codecs to listen or view various multi-media files, flash worked, and everything was ready for average, daily computer use. You could work on office documents, set up your email account... you name it. But that has become the standard operating procedure for Ubuntu. - -So, what's different? Honestly, not much. However, what little difference there is should go a long way with the average user. Probably the single most important thing I've found is that a lot of the little quirks and oddities are gone. There are no longer any strange errors that randomly pop up to cause confusion and disdain among new users. Windows don't artifact or stall, the Dash is very responsive (as is Smart Scopes), and the compositing is smooth and effortless against your CPU. Also, the bug is resolved that plagued the Dash when trying to use the arrow keys to navigate through search results. - -## Ubuntu 13.10 just works ## - -I would go as far to say that Ubuntu has done to the desktop what Apple did with hardware/software -- it developed a clean, solid convergence of pieces to create a cohesive whole. Although that whole has ruffled some feathers, Ubuntu 13.10 should go a long way to smooth them out. How is that possible, considering how many users have turned their back (thanks to [the Wayland kerfuffle][1])? - -Outside of Smart Scopes, there are no major changes. There's little excitement on the desktop -- it's still the same old look and feel. Oh sure, there are tiny tweaks here and there, but overall, 13.10 and 13.04 look the same at first blush. Under the hood? Same thing. You'll find a new kernel (3.11) and a few other tweaks, but nothing to cause the cheerleaders of the world to frustratingly toss their pompoms in the air. - -Instead, Ubuntu 13.10 is a refinement of something that was already there and polished. There are no show stopping or curtain call worthy new features -- just countless tweaks here and there that make the whole system run smooth and fast. - -The final release of Saucy Salamander is set for October 17, 2013. You can get a copy of the [daily build][2] or wait for the release date. Either way, you're going to get a solid, reliable platform that just works. -What are your thoughts about Saucy Salamander? Share your opinion in the discussion thread below. - --------------------------------------------------------------------------------- - -via: http://www.techrepublic.com/blog/linux-and-open-source/ubuntu-1310-it-just-works/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:http://www.techrepublic.com/blog/linux-and-open-source/the-canonical-conundrum-why-the-ubuntu-hate/ -[2]:http://cdimage.ubuntu.com/daily-live/current/ \ No newline at end of file diff --git a/sources/Ubuntu 14.04 LTS Named ‘Trusty Tahr’.md b/sources/Ubuntu 14.04 LTS Named ‘Trusty Tahr’.md deleted file mode 100644 index 531c1cc7b4..0000000000 --- a/sources/Ubuntu 14.04 LTS Named ‘Trusty Tahr’.md +++ /dev/null @@ -1,21 +0,0 @@ -Ubuntu 14.04 LTS Named ‘Trusty Tahr’ -================================================================================ -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Stuffed_Arabian_Tahr-750x5243.jpg) - -**The tantalising trials of taxonomy are complete: the mascot for Ubuntu 14.04 LTS has been chosen – get used to typing out the name ‘Trusty Tahr’.** - -“*What’s a…tahr?*”, you ask? Google tells me it’s a goat-like mammal found in mountainous areas in Oman, India and the Himalayas. - -The sure-footed animal reflects the goals for Ubuntu 14.04 LTS, which [Shuttleworth says][1], will see conservative choices made on the desktop as it focuses on delivering “*…performance, refinement, maintainability [and] technical debt.*” - -Ubuntu 14.04 LTS for servers and desktops is pencilled in for release in April 2014. - --------------------------------------------------------------------------------- - -via: http://www.omgubuntu.co.uk/2013/10/ubuntu-14-04-lts-named-trusty-tahr - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.markshuttleworth.com/archives/1295 \ No newline at end of file diff --git a/sources/Ubuntu Mobile icon theme sees new icons.md b/sources/Ubuntu Mobile icon theme sees new icons.md deleted file mode 100644 index e94e68441e..0000000000 --- a/sources/Ubuntu Mobile icon theme sees new icons.md +++ /dev/null @@ -1,23 +0,0 @@ -Ubuntu Mobile icon theme sees new icons -================================================================================ -Unity 8, Web Browser App, Friends App, Ubuntu SDK are pieces of the upcoming Ubuntu converged, pieces that are gradually forming the whole,--the convergence-enabled Ubuntu--, with a constantly-maintained vigorous development covering all the pieces via a consistent uniform development energy. - -**Ubuntu Mobile** is a fancy icon theme used by Ubuntu Touch, icon theme presently containing relevant icons for used actions and applications, progressively being expanded to cover the Ubuntu Touch's needs. - -Ubuntu Mobile has been updated to another release, adding new icons, among which icons located under the actions category. - -`Add-to-call`, `browser-timeline`, `calendar`, `calendar-today`, `dropdown-menu`, `external-link`, `media-playlist-repeat`, `media-playlist-shuffle`, `navigation-menu`, `new-event`, `remove-from-call` are among the newly-introduced icons`, new icons increasing the available actions and buttons of the growing and growing Ubuntu Mobile theme. - -![](http://iloveubuntu.net/pictures_me/ubuntu%20mobile%20saucy%20new%20icons.png) - -Ubuntu Mobile (while being used in Ubuntu Touch by default) is [available][1] for installation via Ubuntu 13.10's Ubuntu Software Center. - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/ubuntu-mobile-icon-theme-sees-new-icons - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:apt://ubuntu-mobile-icons \ No newline at end of file diff --git a/sources/Upgrade To Linux Kernel 3.11.6 In Ubuntu.md b/sources/Upgrade To Linux Kernel 3.11.6 In Ubuntu.md deleted file mode 100644 index 51e3cbd848..0000000000 --- a/sources/Upgrade To Linux Kernel 3.11.6 In Ubuntu.md +++ /dev/null @@ -1,51 +0,0 @@ -Upgrade To Linux Kernel 3.11.6 In Ubuntu -================================================================================ -Ubuntu 13.10 may have been released yesterday but chances are you’re still running Linux Kernel 3.11.0. Sticking with the current kernel in Ubuntu 13.10 isn’t a bad thing. In fact, it’s not always recommended to upgrade Linux Kernel outside of your Linux distribution’s official repositories tested for a particular version. - -On the other hand, you should upgrade to the latest Linux Kernel in Ubuntu if it becomes available and if you’re not afraid breaking breaking something in Ubuntu. You see, the latest kernel always comes with enhancements, bug fixes and some additional features. - -So, if something isn’t working quite right on your computer, upgrading the Linux Kernel might just fix it. But keep in mind that you may also break something when you upgrade. - -If you’re not afraid and want to jump right in with me, let’s get started with upgrading to Linux Kernel 3.11.6 in Ubuntu. - -First, before you start upgrading, backup your machine because you may never recover if something goes wrong. Better safe than sorry. - -Fore more about this kernel version, [read this changelog][1]. - -When you’re ready, run the commands below to upgrade your machine and remove any obsolete packages, including older kernels - - sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove - -ext, change into the /tmp directory. - - cd /tmp - -Then copy and paste the line below and press enter to download the 32-bit version of the Linux Kernel. - - wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106-generic_3.11.6-031106.201310181453_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106_3.11.6-031106.201310181453_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-image-3.11.6-031106-generic_3.11.6-031106.201310181453_i386.deb - -To download the 64-bit version of the Linux Kernel, copy and paste the line below. - - wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106-generic_3.11.6-031106.201310181453_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106_3.11.6-031106.201310181453_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-image-3.11.6-031106-generic_3.11.6-031106.201310181453_amd64.deb - -After downloading the correct version, run the commands below to begin installing it. - - sudo dpkg -i *.deb - -Finally, run the commands below to upgrade Grub. - - sudo update-grub2 - -That’s it! Restart your computer and your machine should have the latest version. - -Enjoy! - --------------------------------------------------------------------------------- - -via: http://www.liberiangeek.net/2013/10/upgrade-linux-kernel-3-11-6-ubuntu/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.6 \ No newline at end of file diff --git a/sources/Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now.md b/sources/Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now.md deleted file mode 100644 index 3329933e7b..0000000000 --- a/sources/Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now.md +++ /dev/null @@ -1,49 +0,0 @@ -Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now -================================================================================ -![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2012/12/steamforlinux.png) - -In the last couple of months, Steam has been getting a lot of attention. Not necessarily because of the games that it’s been carrying, but because of its expanding support of different operating systems. If you haven’t heard already, Steam has made official plans to support Linux, and has already made substantial progress with their beta Linux client. It really won’t be too long before the Steam client is stable, so all that would be left to do is port games over to Linux. - -Now that such a major service is available for our favorite penguin, here’s a couple of reasons why you should at least consider making the switch. - -### Performance ### - -I’ll start with the obvious with a surprising twist – performance via Steam is a lot better. Of course, when compared to games played via Wine, it’s going to be faster because the games are played natively rather than through a compatibility layer. Performance is one of the most important aspects of gaming, so people shouldn’t take this significance lightly. - -Also, did I mention that Linux games played via Steam ran faster than those run on Windows? The exact same hardware produced better results on Linux for identical games. I’m sure no one expected that because I know I didn’t. - -### Compatibility ### - -![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/01/switch_steam_wine.jpg) - -Whenever you buy a game, you can’t be guaranteed that the game will even run with Wine. There is a database for Wine where the compatibility applications and games are listed, but that’ll only save you some money by telling you that it probably won’t work out as you might hope. With Steam, however, all games available for Linux are guaranteed to work, no questions asked. - -With this argument, the only temporary downside is that the amount of available games for Linux is relatively small. I expect this number to grow dramatically over time. - -### Steam Benefits ### - -![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/01/switch_steam_window.jpg) - -Of course, by switching to Steam you gain all of its great benefits. This includes occasionally cheaper prices (especially during sales), a completely online experience so that no physical media is ever necessary, updates to both the client and games whenever they’re released, and more. - -For example, if you reinstall the operating system on a machine, you can simply open up Steam and it’ll automatically download and install all of your old games, letting you sit back and relax. On Windows and Mac OS X, people have been very pleased with how Steam operates, so it is a reputable place to buy your games. - -### Let Your Voice Be Heard ### - -Finally, by switching over to Steam, you’re making a statement. I’d be surprised if Steam’s effort towards Linux doesn’t interest your gaming soul, and as a community we need to show support for projects that we appreciate. Switching to Steam will not only make Steam’s ventures into Linux worthwhile, but it also shows others that Linux is a competent gaming platform – people historically just haven’t put in enough time to get to some breakthroughs. - -If we can show to others that Linux people love to play games, and that they could make a profit by supporting Linux, they may be more willing to do so. And we all like more games, right? - -### Conclusion ### - -I absolutely understand if you’re a bit skeptical about switching over to Steam when the chance is high that your games haven’t been added yet. However, just give it some time and check regularly. Eventually a few of your games, as well as some new ones you might enjoy, should be part of those which run just fine on Linux. - -What do you think about Steam’s work in Linux? Have you thought about switching? Let us know in the comments! - --------------------------------------------------------------------------------- - -via: http://www.makeuseof.com/tag/using-wine-to-play-games-on-linux-heres-why-you-should-switch-to-steam-right-now/ - -译者:[译者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/VirtualBox 4.3 comes with New Multi-Touch Support, virtual cam and more.md b/sources/VirtualBox 4.3 comes with New Multi-Touch Support, virtual cam and more.md deleted file mode 100644 index 43e7631d6a..0000000000 --- a/sources/VirtualBox 4.3 comes with New Multi-Touch Support, virtual cam and more.md +++ /dev/null @@ -1,46 +0,0 @@ -VirtualBox 4.3 comes with New Multi-Touch Support, virtual cam and more -================================================================================ -Oracle announced [the release of VirtualBox 4.3][1], this is a major release that comes with important new features, devices support and improvements. According to the announcement, “*Oracle VM VirtualBox 4.3 adds a unique virtual multi-touch interface to support touch-based operating systems, and other new virtual devices and utilities, including webcam devices and a session recording facility. This release also builds on previous releases with support for the latest Microsoft, Apple, Linux and Oracle Solaris operating systems, new virtual devices, and improved networking functionality.* “ - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/06/VirtualBox.png) - -What`s new in VirtualBox 4.3: - -- **New operating system platform support**: Oracle VM VirtualBox 4.3 supports the input device features, of the latest platforms such as Windows 8.1, Windows Server 2012 R2 and Mac OS X 10.9 in a virtual environment. For Windows 8.1, the new release can also simulate a 10 point multi-touch device. Additionally, improved 3D acceleration accommodates the translucent effects in the latest Linux distributions from Ubuntu and Fedora, and enhanced multi-monitor support allows users with multiple screens to use them from within the virtual environment. -- **New devices and management utilities**: A new virtual USB webcam device enables video conferencing applications such as Skype or Google Hangouts to run in virtual machines. New recording session capabilities allow users to record part, or all, of a virtual machine session using a new video-capture facility. For easy playback, movies are created in WebM format by a range of movie-players. -- **Networking improvements**: A new Network Address Translation (NAT) option allows virtual machines to talk to each other on the same host, and communicate with the outside world. IPv6 is now offered across Bridged, Host-only, Internal and the new NAT networking modes. In addition, the remote display server built-in to Oracle VM VirtualBox can accommodate RDP connections over IPv4 and IPv6 networks. - -## Installation: ## - -For Ubuntu, Fedora, LinuxMint, Debian, Open Suse and Mandriva, You can download the new release and the Guest additions pack from [this Link][2] . (You need to download the package related to your distro version) - -For Ubuntu via repository: - -To start the installation, first open a terminal. - -Copy and paste the following in to your command-line. Press Enter to download and install key from Oracle. Type user password and press Enter to continue: - - $ wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add - - -After Oracle’s Public Key has been downloaded and installed successfully you will see an OK message in the terminal. - -Now run this command to add VirtualBox to your repository: - - $ sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian raring contrib" >> /etc/apt/sources.list.d/virtualbox.list' - -When prompted, input password and press Enter. - -Lastly, run the combined command below to update your system and install VirtualBox. - - $ sudo apt-get update && sudo apt-get install virtualbox-4.3 - --------------------------------------------------------------------------------- - -via: http://www.unixmen.com/virtualbox-4-3-released/ - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:http://www.oracle.com/us/corporate/press/2033376?rssid=rss_ocom_pr -[2]:http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html?ssSourceSiteId=ocomen#vboxhttp:// \ No newline at end of file diff --git a/sources/di – Disk Information Utility, Better Than df.md b/sources/di – Disk Information Utility, Better Than df.md deleted file mode 100644 index f6453a64e9..0000000000 --- a/sources/di – Disk Information Utility, Better Than df.md +++ /dev/null @@ -1,264 +0,0 @@ -di – Disk Information Utility, Better Than df -================================================================================ -If you are a Linux command line user, you would have definitely used the df command to check disk usage for file systems. Though df is a popular command but still it does not provide some advanced features like actual disk space that is available to a user, various useful display formats etc. There is another command line utility available that not only provides these advanced features but also all the features that df provides. In this article, we will discuss the disk information utility — **di**. - -**NOTE** – If you want to more about df, check out [the df command tutorial][1]. - -### di – The Disk Information Utility ### - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/di-main.png) - -It is evident from this snapshot of di’s manual page that this utility provides some valuable features and hence makes it worth using. Lets try out some practical examples of this utility. - -### Testing Environment ### - -- OS – Ubuntu 13.04 -- Shell – Bash 4.2.45 -- Application – di 4.30 - -### A Brief Tutorial ### - -Here are some of the examples of di utility : - -**1. The Default Output** - -By default di command produces output in human readable format. - -Here is an example : - - $ di - Filesystem Mount Size Used Avail %Used fs Type - /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 - udev /dev 1.5G 0.0G 1.5G 0% devtmpfs - tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs - -So you can see that the disk usage figures are displayed in gigabytes (G) and Megabytes(M). This is definitely better than the default output that df produces. - -**2. Print All Fields Like Mount Points, Special Device Names etc Using – A Option** - -The option -A can be used to print mount points, special device names etc at full length. - -Here is an example : - - $ di -A - Mount fs Type Filesystem - Options - Size Used Free %Used %Free - Size Used Avail %Used %Free - Size Used Avail %Used - Inodes Iused Ifree %Iused - / ext4 /dev/sda6 - rw,errors=remount-ro - 28.1G 20.2G 8.0G 72% 28% - 28.1G 21.6G 6.5G 77% 23% - 26.7G 20.2G 6.5G 75% - 1884160 389881 1494279 21% - /dev devtmpfs udev - rw,mode=0755 - 1.5G 0.0G 1.5G 0% 100% - 1.5G 0.0G 1.5G 0% 100% - 1.5G 0.0G 1.5G 0% - 381805 571 381234 0% - /run tmpfs tmpfs - rw,noexec,nosuid,size=10%,mode=0755 - 300.2M 0.9M 299.3M 0% 100% - 300.2M 0.9M 299.3M 0% 100% - 300.2M 0.9M 299.3M 0% - 384191 549 383642 0% - -So you can see that all the fields — that can also be used for debugging purposes — are printed in the output. - -**3. Print All Mounted Devices Using -a Option** - -Here is an example : - - $ di -a - Filesystem Mount Size Used Avail %Used fs Type - /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 - udev /dev 1.5G 0.0G 1.5G 0% devtmpfs - devpts /dev/pts 0.0M 0.0M 0.0M 0% devpts - proc /proc 0.0M 0.0M 0.0M 0% proc - binfmt_misc /proc/sys/fs/bi 0.0M 0.0M 0.0M 0% binfmt_misc - tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs - none /run/lock 0.0M 0.0M 0.0M 0% tmpfs - none /run/shm 0.0M 0.0M 0.0M 0% tmpfs - none /run/user 0.0M 0.0M 0.0M 0% tmpfs - gvfsd-fuse /run/user/himan 0.0M 0.0M 0.0M 0% fuse.gvfsd-fuse - sysfs /sys 0.0M 0.0M 0.0M 0% sysfs - none /sys/fs/cgroup 0.0M 0.0M 0.0M 0% tmpfs - none /sys/fs/fuse/co 0.0M 0.0M 0.0M 0% fusectl - none /sys/kernel/deb 0.0M 0.0M 0.0M 0% debugfs - none /sys/kernel/sec 0.0M 0.0M 0.0M 0% securityfs - -So you can see that all the information related to all the mounted devices was printed. - -**4. Print Comma Separated Values Through -c Option** - -The option -c can be used to print command separated values enclosed with double quotes. - -Here is an example : - - $ di -c - s,m,b,u,v,p,T - /dev/sda6,/,"28.1G","20.2G","6.5G",77%,ext4 - udev,/dev,"1.5G","0.0G","1.5G",0%,devtmpfs - tmpfs,/run,"300.2M","0.9M","299.3M",0%,tmpfs - -So you can see that the comma separated values were printed in the output. - -**5. Print Size In Gigabytes Through -g Option** - -Here is an example : - - $ di -g - Filesystem Mount Gibis Used Avail %Used fs Type - /dev/sda6 / 28.1 20.2 6.5 77% ext4 - udev /dev 1.5 0.0 1.5 0% devtmpfs - tmpfs /run 0.3 0.0 0.3 0% tmpfs - -So you can see that all the size related values were printed in gigabytes. - -Similarly you can use -k and -m options to display the size in kilobytes and megabytes respectively. - -**6. Display Information Related To Specific File-system Type Through -I Option** - -Suppose you want to display disk information related to only tmpfs filesystems. Here is how you can do it through -I option : - - $ di -I tmpfs - Filesystem Mount Size Used Avail %Used fs Type - tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs - none /run/lock 5.0M 0.0M 5.0M 0% tmpfs - none /run/shm 1.5G 0.0G 1.5G 0% tmpfs - none /run/user 100.0M 0.0M 100.0M 0% tmpfs - none /sys/fs/cgroup 0.0M 0.0M 0.0M 0% tmpfs - -So you can see that information related to only tmpfs type file systems was displayed in the output. - -**7. Skip The Header Line In Output Through -n Option** - -If you are trying to parse the output of this command through a script (or a program) and want the di command to skip the display of header line then it can be made possible through -n option. - -Here is an example : - - $ di -n - /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 - udev /dev 1.5G 0.0G 1.5G 0% devtmpfs - tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs - -So you can see that the header line was not displayed in the output. - -**8. Print A Totals Line Below The List Of Filesystems Through -t Option** - -If it is desired to display the totals of all the relevant columns, use -t option. - -Here is an example : - - $ di -t - Filesystem Mount Size Used Avail %Used fs Type - /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 - udev /dev 1.5G 0.0G 1.5G 0% devtmpfs - tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs - Total 29.9G 20.2G 8.3G 72% - -Observe that the last row consists of the totals of values for all file systems. - -**9. Sort The Output Through -s Option** - -The option -s can be used to sort the output of this command. - -Here is how you can reverse sort the output : - - $ di -sr - Filesystem Mount Size Used Avail %Used fs Type - tmpfs /run 300.2M 0.9M 299.3M 0% tmpfs - udev /dev 1.5G 0.0G 1.5G 0% devtmpfs - /dev/sda6 / 28.1G 20.2G 6.5G 77% ext4 - -So you can use the sub-option ‘r’ along with -s to reverse sort the output. - -Similarly, you can do several other types of sorts using -s option. Here is an excerpt from the man page for your reference: - - -s sort-type - Use sort-type to sort the output. The out‐ - put of di is normally sorted by mount - point. The following sort flags may be - used to change the sort order: m – by mount - point (default); n – leave unsorted (as it - appears in the mount table); s – by special - device name; t – by filesystem type; r - - reverse the sort order. - - These sort options may be combined in any - order. e.g.: di -stsrm – by type, special, - reversed mount; di -strsrm – by type, - reversed special, mount. - -**10. Specify Output Format Strings Through -f Option** - -You can specify the output format string through a combination of -f option and a sub-option. - -For instance, to print the name of the mount point, use -fm. - -Here is an example : - - $ di -fm - Mount - / - /dev - /run - -So you can see that only mount names were printed in the output. - -Similarly, to print file system type, use -ft. - -Here is an example : - - $ di -ft - fsType - ext4 - devtmpf - tmpfs - -If you want to have a quick look then here is a snapshot of other formatting options available : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/di-1.png) - -For complete set of options, refer to the [man page of di command][2]. - -### Download/Install ### - -Here are some of the important links related to di command : - -- [Home Page][3] -- [Download Link][4] - -The command line utility di can also be downloaded and installed through command line by using apt, yum etc. Ubuntu users can download this command from Ubuntu Software Centre too. - -### Pros ### - -- Provides many advanced features -- OS independent - -### Cons ### - -- Does not come pre-installed on most of the Linux distributions -- Lots of option to learn - -### Conclusion ### - -To conclude, di command provides some very useful features over and above what df command provides. If you are looking for a df-like but advanced disk information related command line utility then di is the ideal choice. Try it out, it does what it promises. - -**Have you ever tried di or any other df-like utility? Share your experience with us.** - --------------------------------------------------------------------------------- - -via: http://mylinuxbook.com/di-a-disk-information-utility/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.expertslogin.com/linux-command/linux-df-command/ -[2]:http://www.manpagez.com/man/1/di/ -[3]:http://www.gentoo.com/di/ -[4]:http://freecode.com/projects/diskinfo \ No newline at end of file diff --git a/sources/gcp – Advanced Command Line File Copier Inspired By cp.md b/sources/gcp – Advanced Command Line File Copier Inspired By cp.md deleted file mode 100644 index c393c45bed..0000000000 --- a/sources/gcp – Advanced Command Line File Copier Inspired By cp.md +++ /dev/null @@ -1,134 +0,0 @@ -(翻译中......) -gcp – Advanced Command Line File Copier Inspired By cp -================================================================================ -A few weeks back, we discussed [advanced copy][1] (modified cp command that shows progress bar). A reader dropped in a comment pointing out another utility that also provides basic cp command functionality but along with some advanced features. So, in this article, lets discuss the very same command line utility — **gcp**. - -### gcp – Advanced Command Line File Copier ### - -gcp — as the manual suggests — is an advanced command line file copier that is inspired by the standard [cp command][2] but provides various advanced features like progress bar indicator, source lists, continuous copying even if there is a problematic file etc. - -Here is a complete list of options : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-main.png) - -### Testing Environment ### - -- OS – Ubuntu 13.04 -- Shell – Bash 4.2.45 -- Application – gcp 0.1.3 - -### A Brief Tutorial ### - -Here are some of the examples of gcp command : - -**1. Transfer Progress Indicator** - -The gcp command provides transfer progress indicator so that the user is aware of the current status of the copying process. - -Here is an example : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-1.png) - -So you can see that the gcp command provides details like complete file size, percentage of copy complete, transfer rate and time left for the copy operation to complete. - -**2. Copy Directories Recursively Through -r Option** - -To copy complete directories recursively, use -r option. - -Here is an example : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-2.png) - -So you can see that the gcp command shows the transfer indicator taking in account the complete size of the folder. - -**3. Elaborate Error Descriptions** - -In case of any error, the gcp command displays descriptive error messages pinning down the individual culprit file. - -Here is an example : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-3.png) - -So you can see that the gcp command provided a detailed error message related to the file **August Rush.avi** that was already present inside the destination folder. But an error did not disrupt the copy of other file(s). - -**4. Get Detailed Output Through -v Option** - -The verbose option -v can be used to keep track of all the details that the gcp command is up to. - -Here is an example : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-4.png) - -So you can see that extended details were provided in output when -v option was used. - -**5. Create And Use Sources List** - -One of the shining features of the gcp command is that it lets you create a list of source files that you can use later. - -For example, I saved the list of source file in the following copy operation using the option **–sources-save**. - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-1.png) - -The list name in this case is **SOURCES_SAVE**. You can confirm the saved list through **–sources-list** option. - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-3.png) - -So you can see that a list named **SOURCES_SAVE** is saved. - -Now, I deleted the files that I copied in the first step : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-2.png) - -and repeated the first step again but without mentioning the source file names. The option **–sources-load** was use to load the source file names from the list **SOURCES_SAVE**. - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-4.png) - -So you can see that the gcp command picked up the source file names from the list **SOURCES_SAVE** and the copy process started normally. - -Here are other options related to source file lists : - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-5.png) - -The gcp command provides various other useful options. For complete list of options, read the [man page of gcp][3]. - -### Download/Installation/Configuration ### - -Here are some of the important links related to the gcp command : - -- [Home Page][4] -- [Download Link][5] -- [Another useful gcp Tutorial][6] - -You can alternatively download and install the gcp command through command line package managers like yum, apt-get etc. Ubuntu users can also use Ubuntu software centre to download and install this utility. - -### Pros ### - -- Status bar and source lists are the USP of this utility. -- Skips the problematic file(s) but the copy operation is not hampered. -- Usage is similar to that of the standard cp command. - -### Cons ### - -- While copying folders, it could be better if copy status of each file is displayed. -- Doesn’t come pre-installed in most of the Linux distributions. - -### Conclusion ### - -If you are fed up of waiting blindly while copying large files through standard cp command the gcp is a good alternative. System administrators will love the source list feature. It’s a must have utility. - -**Have you ever used gcp or any other advanced cp-like command line utility? Share your experience with us.** - --------------------------------------------------------------------------------- - -via: http://mylinuxbook.com/gcp-advanced-command-line-file-copier-inspired-by-cp/ - -译者:[runningwater](https://github.com/runningwater) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://mylinuxbook.com/advanced-copy-cp-command/ -[2]:http://www.cyberciti.biz/faq/cp-copy-command-in-unix-examples/ -[3]:http://manpages.ubuntu.com/manpages/precise/en/man1/gcp.1.html -[4]:http://wiki.goffi.org/wiki/Gcp/en -[5]:http://wiki.goffi.org/wiki/Gcp/en -[6]:http://www.hecticgeek.com/2012/03/gcp-command-line-file-copy-ubuntu-linux/ \ No newline at end of file diff --git a/sources/ttyrec & ttyplay – Record And Play Terminal Sessions In Linux.md b/sources/ttyrec & ttyplay – Record And Play Terminal Sessions In Linux.md deleted file mode 100644 index 06161e17c2..0000000000 --- a/sources/ttyrec & ttyplay – Record And Play Terminal Sessions In Linux.md +++ /dev/null @@ -1,118 +0,0 @@ -ttyrec & ttyplay – Record And Play Terminal Sessions In Linux -================================================================================ -Sometimes you might want to record a terminal session in order to save a complex command line operation for your future reference or for knowledge sharing purpose. Then you might also want the recorded file size to be as small as possible and finally a player that would play the recorded file at a playback speed of your desire. In this article we will discuss two command line utilities (**ttyrec and ttyplay**) that let you record, save and play terminal sessions. - -### ttyrec & ttyplay ### - -As the names suggest, the ttyrec command is used for recording terminal sessions while the ttyplay command is used for playing the sessions recorded by ttyrec. - -Here are the snapshots of the man pages of these utilities : - -**> ttyrec** - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyrec-main.png) - -** > ttyplay ** - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyplay-main.png) - -### Testing Environment ### - -- OS – Ubuntu 13.04 -- Shell – Bash 4.2.45 -- Application – ttyrec 1.0.8-5 & ttyplay 1.0.8-5 - -### A Brief Tutorial ### - -Here is how you can use these commands to record and play terminal sessions. - -**Step-1** - -To start recording the terminal session, just run the following command : - - $ ttyrec [File-name] - -The argument [**File-name**] (in the command shown above) is optional but if used, should be replaced by the a name of your choice. The recorded file will be saved with this name. If you do not specify any file name, ttyrec will use **ttyrecord** as the default file name. - -**Step-2** - -The session is now being recorded, yo can run the commands that you want to be recorded. The ttyrec command can even record sessions related to command line utilities like vi, nano, emacs, lynx etc. - -**Step-3** - -Once you are done with the terminal session, just execute the **exit** command and the recording session will end. The recorded file will be saved in the current directory. - -You can play this file by running the following command : - - $ ttyplay [File-name] - -The argument [**File-name**] is the name of the recorded file which is the same name that was passed as argument to **ttyrec** command. If no file name was used with ttyrec command then the default file name is **ttyrecord**. - -Once you run ttyplay command, the playback of recorded session will start. Here are some of the hot-keys that you can use while the playback session is ON : - -- Press ‘+’ or ‘f’ key to speed up the playback session to twice the normal playback speed. -- Press ‘-’ or ‘s’ key to slow down the playback session to half the normal playback speed. -- Press ’0′ to pause the playback. -- Press ’1′ to bring back the playback to normal speed. - -Here are some of the other options supported by the ttyrec and ttyplay commands : - -**> ttyrec** - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyrec-1.png) - -> ttyplay - -![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyplay-1.png) - -There is another small utility **ttytime** that can be used to display the time of the session recorded by the ttyrec utility. It’s easy to use and requires only the recorded file name as the command line argument. - -Here is an example : - - $ ttytime record_file - 29 record_file - -So you can see that the ttytime command displayed the time of session recorded in the file record_file. - -Here is a useful video that describes the usage of ttyrec and ttyplay commands : - -- [youtube video][1] - -### Download/Install/Configure ### - -Here are some of the important links related to these utilities : - -- [Home Page][2] -- [Download Link][3] - -You can download ttyrec, ttyplay and ttytime in one go by just installing ttyrec with any command line download manager like apt-get or yum. Ubuntu users can download and install these utilities through Ubuntu Software Centre also. - -### Pros ### - -- Lightweight and easy to use -- Can record sessions of various popular command line utilities like vi, nano, lynx etc. -- Almost no learning curve. - -### Cons ### - -- Doesn’t work on IRIX 6.4 -- Depends on terminal size -- Doesn’t come pre-installed in most of the Linux distributions. - -### Conclusion ### - -If you are looking for some lightweight command line tools for recording and playing terminal sessions on Linux then ttyrec and ttyplay are ideal tools to get started. I really liked the ease with which they can be used. Try these utilities, you’ll not be disappointed. - -**Have you ever used ttyrec, ttyplay or any other terminal recording/playing utility? Share your experience with us.** - --------------------------------------------------------------------------------- - -via: http://mylinuxbook.com/ttyrec-ttyplay-record-and-play-terminal-sessions-in-linux/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.youtube.com/embed/7znzFsc0P8M?version=3&rel=1&fs=1&showsearch=0&showinfo=1&iv_load_policy=1&wmode=transparent -[2]:http://0xcc.net/ttyrec/ -[3]:http://0xcc.net/ttyrec/ \ No newline at end of file diff --git a/sources/‘Polari’ – An Awesome New IRC App for GNOME.md b/sources/‘Polari’ – An Awesome New IRC App for GNOME.md deleted file mode 100644 index d36b89d98b..0000000000 --- a/sources/‘Polari’ – An Awesome New IRC App for GNOME.md +++ /dev/null @@ -1,50 +0,0 @@ -‘Polari’ – An Awesome New IRC App for GNOME -================================================================================ -You have to hand it to the GNOME designers and developers: their work in creating a coherent, integrated set of apps for the desktop is showing true promise. - -![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/gnome3_polari.jpg) - -*The latest build of Polari in action.* - -In fact, they’ve barely sat still over the last couple of years, creating app after app. - -There are now dedicated apps for Music, Video and Photos; a virtual machine manager in the shape of Boxes; the Maps, Weather & Notes tools are all looking fantastic. And the new GNOME Software Store? Design wise it knocks Ubuntu’s aged offering out of the park! - -But it seems that the GNOME app gurus aren’t done yet. Work has recently begun on a new GNOME 3 IRC app called ‘Polari’. - -(As an aside, it’s a testament to the focus within the GNOME development community on putting users first that the one tool they likely use most often to communicate is one of the last to get the GNOME app treatment.) - -## Polari – Planned Features ## - -It’s not fixed in a dusty coding tome that all IRC clients have to resemble something from an 80s sci-fi movie, or be intimidating to the general user. Even in today’s world of instant communications via social networks, IRC remains a great way for people to chat. - -To this end, if [Polari][1] (expect a name change further down the line) had a slogan it would be “*An IRC client for dummies*.” - -On the features n’ functionality front Polari aims to offer: - -- Easy connection to IRC servers & rooms -- Clearly see mentions & notifications -- Support GNOME 3 notifications -- Integration with Contacts, the GNOME contacts app -- History & transcript features -- Link previews -- File transfers - -Developer-orientated features have also been mooted, including integrated support for Pastebin & Bugzilla. - -So when can you try it? Not quite yet. Development of Polari is still in its early stages, but, if you’re willing to build it from Git (requires GNOME 3.10) you’ll find that it’s already capable of handling the basics, including delivering notifications for mentions. - -For code-compiling-phobes Polari is expected to feature (most likely as an app preview) in GNOME 3.12, due next year. - -- [More about Polari][2] - --------------------------------------------------------------------------------- - -via: http://www.omgubuntu.co.uk/2013/10/gnome-irc-app-polari-in-development - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:https://git.gnome.org/browse/polari -[2]:https://wiki.gnome.org/Apps/Polari \ No newline at end of file diff --git a/sources/“Performance, refinement, maintainability, technical debt, improving quality” and “we’re going to keep racing forward” to characterize Ubuntu 14.04's development cycle.md b/sources/“Performance, refinement, maintainability, technical debt, improving quality” and “we’re going to keep racing forward” to characterize Ubuntu 14.04's development cycle.md deleted file mode 100644 index 90253365bc..0000000000 --- a/sources/“Performance, refinement, maintainability, technical debt, improving quality” and “we’re going to keep racing forward” to characterize Ubuntu 14.04's development cycle.md +++ /dev/null @@ -1,34 +0,0 @@ -"Performance, refinement, maintainability, technical debt, improving quality" and "we’re going to keep racing forward" to characterize Ubuntu 14.04's development cycle -================================================================================ -Ubuntu 13.10 was released yesterday, Ubuntu 13.10 allowing users to utilize an up-to-date optimized Ubuntu release with gains in agility, fluidity and an overall solid look & feel. - -Starting of today, the natural flow of the developers is Ubuntu 14.04-centric, version being an LTS and, therefore, receiving a special treatment following Ubuntu's values and strategies. - -**Mark Shuttleworth** [announced][1] hours ago the new name of Ubuntu 14.04 LTS, Trusty Tahr, interesting article presenting the focus on the 14.04 LTS version, too. - -Among the to-be-followed directions, Mark Shuttleworth talked about and listed performance, refinement, maintainability and technical debt, while adopting a more conservative approach in creating, shaping and delivering Trusty, "it would be entirely appropriate for us to make **conservative choices**". - -The conservative nature of Ubuntu 14.04's development is natural, the next LTS will feature five years of support, while pleasing both users and companies interested in the most stable Ubuntu experience. - -Moreover, Ubuntu 14.04 LTS is to witness: - -- "we will be providing OpenStack I, J and K on 14.04 for LTS deployments" -- "on the desktop, 13.10 has benefited greatly from the fact that it has a team just focused on improving quality. We’ll do the same again and more for 14.04" -- "on the mobile front, we’re going to keep racing forward, the platform is too new for an LTS" - -![](http://iloveubuntu.net/pictures_me/trusty%20tahr%20development%20goals.jpg) - -The in-depth decisions about what, where, how, when related to Ubuntu 14.04 LTS are to be planned, discussed and refined in the upcoming [virtual Ubuntu Developer][2] Summit, video-session based event happening during **November 19th - November 21st **2013, event fully open for participation and completely open to interested users, third-party developers and teams seeking to learn about all Ubuntu layers and areas directly as presented by Ubuntu developers, designers, leaders, etc. - -Ubuntu 14.04 LTS will not feature convergence capabilities, yet, the work continues with vigorous plans and according features in the 14.04 cycle, too, "we won’t get there in one cycle but given the pace of improvement of the phone and tablet in the last month I think **it’s going to be a fantastic cycle there"**. - --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/performance-refinement-maintainability-technical-debt-improving-quality-and-we%E2%80%99re-going-keep-racing - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://www.markshuttleworth.com/archives/1295 -[2]:http://uds.ubuntu.com/ \ No newline at end of file diff --git a/translated/10 Things To Do After Installing Ubuntu 13.10.md b/translated/10 Things To Do After Installing Ubuntu 13.10.md new file mode 100644 index 0000000000..049aab0f30 --- /dev/null +++ b/translated/10 Things To Do After Installing Ubuntu 13.10.md @@ -0,0 +1,126 @@ +安装Ubuntu13.10后必做的10件事 +================================================================================ +**Ubuntu 13.10发布了,而且你已经升级了,然后你想知道现在做些什么。不要着急,这里有10件安装完Ubuntu 13.10后必做的事。** + +我们为以前的ubuntu版本整理了一个安装列表,但是因为新的特性浮现和不断地进步,我们的建议在不断地改变和转换。 + +因此,升级到ubuntu 13.10后最好做哪些事情呢? + +### 1. 加快速度 ### + +尽管Ubuntu 13.10相较于之前的发布版包含了较少的面向用户的特征,但是新的Smart scopes服务还是不可错过的。 +### 2. 使用第三方驱动 ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/drivers.jpg) + +Ubuntu本身已经支持了大量的硬件。随着免费而又开源的的驱动的发展,在Steam上玩儿游戏或者玩儿高清游戏性能已经差强人意。 + +如果想使用所有驱动就请软件和更新里的 **安装并使用所有驱动** 。 + +在启动器里打开软件应用(或者通过系统设置)然后点击进入“其他程序”选项卡,然后按照屏幕上的提示操作。 + +### 3. 安装Ubuntu的影音解码器 ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/mus.jpg) + +由于一个很大的法律问题的纠缠,Ubuntu不能即刻支持很多流行的音频视频格式。这是一项很大的先天缺陷。 + +但是安装这些支持所需要的仅仅只是几下点击。在安装过程中只需勾选’*使用限制格式*’ 框来导入需要的解码器,或者,如果你忘了的话,也可以在Ubuntu软件中心安装所有的多媒体相关工具。 + +- [安装第三方解码器][1] + +### 4.建立你的社会生活### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/account-toggles.jpg) + +Facebook, Twitter, Google Talk, Gmail以及其他的一打社交账号可以在*在线账号* 里一起设置。 + +只需要添加一个网络然后**决定哪些程序可以使用它**。例如,关掉Empathy默认的自动启动Google Chat,和从Social Lens里过滤FaceBook。 + +支持的服务包括Twitter, Google, Yahoo!, Facebook (including Facebook Chat), Flickr 和正在增长的大量其他的应用。 + +### 5. 添加第三方应用Add Additional Apps ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/apps.jpg) + +Ubuntu默认提供了一整套的应用,但是一个尺寸不适合所有人穿,如果你不喜欢一个默认的应用,或者发现自己错过了一些什么,你可以很轻松的找到和添加更多的软件。 + +打开Ubuntu软件中心就可以浏览成千上万的程序,包括下面这些很流行的选择: + +- **Dropbox** - 流行,快平台的云存储服务 +- **Steam** – 游戏发布平台 +- **GIMP** – 强大的图像处理软件 +- **VLC** – 流行的影音软件 + +您还可以找到像我们这样列出了丰富的附加软件的网站 - 看看我们的应用程序标签的你会有一些想法。 + +- [在OMG上查看Ubuntu程序列表! !][2] + + +### 6.保护你的隐私 ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/priv.jpg) + +最近隐私问题是一个烫手山芋,因此很高兴看到最新版的Ubuntu改进了它的隐私设置,提供了一个新的界面和大量的新选择。 + +不论你是想在启动器上隐藏一个文件还是一个应用,从睡眠状态重新进入电脑时使用严格策略,或者选择什么样的系统崩溃向Canonical发送信息,隐私和安全面板总是可以提供你想要的工具。 + +### 7.拥抱互联网 Embrace The Web ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/04/gmails.jpg) + +Canonical are enticing web devs with word that websites can be easily packaged, integrated and made available for install on Ubuntu Touch. + +The genesis of this approach has been included on desktop Ubuntu for a few releases. Over 30 popular websites – including Gmail, Yahoo! & Rd.io - can seamlessly integrate with parts of the desktop. + +For example, add GMail and you get fancy Gmail options in the Launcher and Messaging Menu; enable Rd.io and you’ll be able to control playback using the Sound Menu. + +### 8. 设置自己的Unity Yours ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/unity_tweak_tool_310.png) + +Unity比人们想的定制性更好。 *Unity Tweak Tool* 是一个第三方应用,可以让你调整桌面Unity以打造一个合适的环境。 + +选择包括: + +- 调整启动器透明度 +- 设置启动器图标动画 +- 启动工作台 +- 设置快捷键 +- 移动窗口的控制 + +但是,不要期望太大,它不会让你移动启动器的。 + +- [从Ubuntu软件中心安装Unity Tweak Tool][3] + +### 9. Filter The Noise ### + +Ubuntu’s新的‘Smart Scopes’服务承诺做成一个有帮助的工具,但是现在还不像声称的那样智能。 + +好消息是这个特性只需一击就可以关闭,所以没有必要因噎废食顺带着排斥Ubuntu。 + +当你发现自己就像被隔了一道烦人的墙一样总是搜索音乐的时候或者购物的时候收到大量毫不相关的建议,你可以单独禁用某一个问题的服务。 + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2013/10/Screen-Shot-2013-10-15-at-11.36.26-750x480.png) + +如果你发现自己每一个搜索结果无关的音乐充斥着,禁用的音乐的服务。不想要亚马逊的建议?关掉它。 + +### 10. 传播关于Ubuntu13.10的一句话 ### + +我知道,在我们的“应当去做”列表上这是比较尴尬的一项。但是只有人们知道Ubuntu 13.10才会去尝试它,因此做好你的份然后共享关于它的新闻。 + +无论你刚刚把这篇文章贴到Facebook上,还是为你的OS X粉搭档制作了一个LiveUSB,对于Ubuntu的认知度的提高都是很有W帮助的。 + +别忘了享受使用它。去检查下Facebook上的简介,听一些音乐,享受一下用Firefox上网。 + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2013/10/10-things-installing-ubuntu-13-10 + +译者:[crowner](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://apps.ubuntu.com/cat/applications/ubuntu-restricted-extras/ +[2]:http://www.omgubuntu.co.uk/category/app +[3]:apt:unity-tweak-tool \ No newline at end of file diff --git a/translated/Cloud tool Juju GUI 0.11 released with new features and enhancements.md b/translated/Cloud tool Juju GUI 0.11 released with new features and enhancements.md new file mode 100644 index 0000000000..23d5bf7022 --- /dev/null +++ b/translated/Cloud tool Juju GUI 0.11 released with new features and enhancements.md @@ -0,0 +1,38 @@ +云端服务管理工具 Juju GUI 0.11版发布 +================================================================================ +坚如磐石的桌面、光鲜靓丽的手机、高端大气上档次的云管理工具,这三样东西一直是 Canonical 公司的立足之本,高速发展、大气的决策、热衷创新 —— 这些来自市场的认可使得这家公司与戴尔、惠普以及 OpenStack 基金会等组织成为高级合作伙伴,同时它在 IT 世界中扮演着传播新鲜事物和现代主义思想的角色。 + +[Juju][2] 是 Ubuntu 旗下的一款工具,可以对云端的服务进行快速可靠的布署,包括可以扩展云端业务,因此管理员可以很容易地布署 Wordpress 博客系统、MongoDB 大系统管理系统、Ceph 分布式文件系统等。 + +用户可以通过命令行和图形界面使用 Juju,图形界面被称为“Juju GUI”。 + +[Juju GUI][3]界面基于网页,精美、对用户友好、直观,用户可以通过网页简单的操作完成复杂的功能。 + +Juju GUI 已经[升级到][4] **0.11版**,下面介绍一下新版本涉及的功能、修复、优化: + +- 支持 charms 的升级、降级 +- 可以显示两个节点的关联 +- 大量减少 GUI 的大小,加快布署的进度 +- 优化服务定位功能 +- 增加红三角标记,用于标记 charms 和 bundles +- 删除有缺陷的操作(如添加己存在的单元) +- 为单元提供精确的链接地址 +- 其他一些改进这里就不说了 + +![](http://iloveubuntu.net/pictures_me/juju%20gui%20011.png) + +Juju GUI 长什么样?试试[https://jujucharms.com/sidebar/][5] + +-------------------------------------------------------------------------------- + +via: http://iloveubuntu.net/cloud-tool-juju-gui-011-released-new-features-and-enhancements + +译者:[bazz2](https://github.com/bazz2) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.canonical.com/ +[2]:https://juju.ubuntu.com/ +[3]:https://launchpad.net/juju-gui +[4]:http://jujugui.wordpress.com/2013/10/18/0-11-0-juju-gui-release/ +[5]:https://jujucharms.com/sidebar/ diff --git a/translated/Daily Ubuntu Tips–Change The Logon Screen Background.md b/translated/Daily Ubuntu Tips–Change The Logon Screen Background.md new file mode 100644 index 0000000000..d3fd46010c --- /dev/null +++ b/translated/Daily Ubuntu Tips–Change The Logon Screen Background.md @@ -0,0 +1,43 @@ +Ubuntu每日小技巧-改变登陆窗口背景 +================================================================================ +这儿给你提供了一下简单的小技巧,告诉你如何用你自己图片来替换登陆窗口的背景。Ubuntu的登陆窗口挺不错的,可能比大多数发行版的都要好,但是假如你要用一张你自己的图片,比如一张可以让你回忆起某个特定的地方或事情的图片,你就可以按照下面的步骤来更换上它。 + +有许多方法可以做到这一点,这篇博文介绍的只是其中一种。下面介绍的方法使用dconf-editor和lightdm用户来达到同样的效果。跟着我做,切换到root用户,给予lightdm用户访问x-server的权限。下一步使用lightdm用户组权限,运行dconf-editor,然后做出更改。 + +在设置完自定义图片并且重启后,你应该就能在你每次启动你的电脑时看到你设置的图片。若设置的图片是一张你非常喜欢的并且能给你带给你很多回忆的图片,那么你每次启动电脑登陆到Ubuntu时一定非常开心。 + +这个手册假设你已经在你的电脑上安装了dconf-editor。若没有,你可以运行以下命令来安装dconf-editor + + sudo apt-get install dconf-editor + +下一步,选择你要作为登陆背景的图片。然后,记下图片的位置以及图片的名字,运行以下命令切换到root用户。 + + sudo –i + +下一步,运行以下命令给予lightdm用户访问X-server的权限。Lightdm是一个管理登陆窗口背景的服务程序,因此假如你要更换登陆窗口的背景图片,你就要改动lightdm用户。 + + xhost +SI:localuser:lightdm + +下一步,运行以下命令切换到lightdm用户 + + su lightdm -s /bin/bash + +然后,运行以下命令开启dconf-editor + + dconf-editor + +当工具打开后,浏览到**com->canonical->unity-greeter**。然后改变背景值为自定义的图盘。你可能需要勾掉draw-grid。 + +![](http://www.liberiangeek.net/wp-content/uploads/2013/09/logon-screen-background.png) + + +重启你的电脑。玩的开心~ +![](http://www.liberiangeek.net/wp-content/uploads/2013/09/logon-screen-background-1.png) + +-------------------------------------------------------------------------------- + +via: http://www.liberiangeek.net/2013/09/daily-ubuntu-tipschange-logon-screen-background/ + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID) \ No newline at end of file diff --git a/translated/Disable Amazon & Remote Content Fetching In Ubuntu 13.10.md b/translated/Disable Amazon & Remote Content Fetching In Ubuntu 13.10.md new file mode 100644 index 0000000000..c944eb672d --- /dev/null +++ b/translated/Disable Amazon & Remote Content Fetching In Ubuntu 13.10.md @@ -0,0 +1,34 @@ +禁用Ubuntu 13.10的Amazon和远程内容获取 +================================================================================ + +Ubuntu 13.10已经发布一段时间了,是时候坐下来配置一下系统来满足你的要求。Ubuntu 13.10配备了很多东西,当你安装或者升级时其实有些并不是你所需要的。 + +举个例子,当你安装或者升级到Ubuntu 13.10时,会自动启用Amazon和一些其他商业购物。当你打开Unity Dash时这些Lens就会显示。当你在Dash处执行搜索时,类似Amazon的远程数据源中符合你搜索内容的选项也会发送过来。 + +这些由Canonical公司提供的新增特性可能对某些人有用,但是对另一些用户,这些特性可能是他们不需要的。 + +因为从远程数据源获取内容需要带宽,这就可能会对你的上网账单有负面影响,特别是当你住在一个根据流量计费的地域。 + +对于另一些对安全和隐私有担忧的用户来说,本地自动搜索远程源可能不是一个好主意。还有一些用户只是不想当他们在本地搜索时会有商业公司展示他们的产品。 + +这篇简单的教程就是教你当使用Ubuntu 13.10时如何快速禁用Amazon和所有远程内容获取。 + +在你的键盘上按组合键 **Ctrl – Alt – T** 会显示终端或控制台。当它打开后运行下面的命令去禁用该功能。 + + gsettings set com.canonical.Unity.Lenses remote-content-search 'none' + +如果你想要重新启用它,运行以下命令。 + + gsettings set com.canonical.Unity.Lenses remote-content-search 'all' + +你需要重新登陆或者重启你的电脑使更改生效。在完成这些操作后,当你使用Ubuntu搜索时就没有远程源会被使用。 + +Enjoy! + +-------------------------------------------------------------------------------- + +via: http://www.liberiangeek.net/2013/10/disable-amazon-remote-content-fetching-ubuntu-13-10/ + +译者:[whatever1992](https://github.com/whatever1992) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/How To Install Sublime Text 3 in Ubuntu 13.04, 13.10.md b/translated/How To Install Sublime Text 3 in Ubuntu 13.04, 13.10.md new file mode 100644 index 0000000000..16430f2c38 --- /dev/null +++ b/translated/How To Install Sublime Text 3 in Ubuntu 13.04, 13.10.md @@ -0,0 +1,29 @@ +如何在Ubuntu 13.04, 13.10上安装Sublime Text 3 + +================================================================================ + +[Sublime Text][1]是一款很流行的源代码文本编辑器.幸亏有[Webupd8][2]团队的PPA仓库,我们现在能通过PPA安装Sublime Text 3,适用于注册用户也包括未注册用户. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/sublime_text.png) + +### 安装Sublime Text 3 ### + +打开终端(Ctrl + Alt +T), 键入并运行下列命令: + + $ sudo add-apt-repository ppa:webupd8team/sublime-text-3 + $ sudo apt-get update + $ sudo apt-get install sublime-text-installer + + +玩的开心 ;-) + +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/install-sublime-text-3-ubuntu-13-04-13-10/ + +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.sublimetext.com/ +[2]:https://launchpad.net/~webupd8team diff --git a/translated/Install qBittorrent 3.1.0 in Ubuntu via PPA.md b/translated/Install qBittorrent 3.1.0 in Ubuntu via PPA.md new file mode 100644 index 0000000000..19dd37f720 --- /dev/null +++ b/translated/Install qBittorrent 3.1.0 in Ubuntu via PPA.md @@ -0,0 +1,45 @@ +通过PPA在Ubuntu中安装qBittorrent 3.1.0 +================================================================================ +[qBittorrent][1]是一个由志愿者开发的自由开源的跨平台BT客户端软件,利用libtorrent-rasterbar库由C++/Qt写成,是现在流行的BT客户端软件[µtorrent][2]的一个替代选择。最新的版本,qBittorrent 3.1.0 已经在2013年10月份放出。qBittorrent轻巧快速,支持unicode编码,而且提供一个完美整合的搜索引擎。它也支持UPnP/NAT-PMP端口转发,支持扩展和PeX(兼容utorrent)。 + +![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/qbittorrent_about.png) + +### qBittorrent v3.1.0 的特性### +- 精心打磨的类µTorrent界面 +- 完美整合,可扩展的搜索引擎 +- 同时在众多著名BT网站中进行搜索 +- 对搜索请求进行预分类(例如,书籍,音乐,电影) +- 支持各种BT扩展 +- 可通过web页面进行远程操作 +- 可对trackers, peers 和 torrents进行高级控制 +- 连接排队和优选 +- Torrent内容选择和优选 +- 支持UPnP / NAT-PMP端口转发 +- 支持大约25中语言(支持Unicode) +- 种子创建工具 +- 支持RSS过滤下载(例如正则表达式) +- IP过滤(兼容eMule和PeerGuardian) +- 兼容IPv6 +- 顺序下载(也可以叫做按序下载) +- 支持各种平台: Linux,Mac OS X, Windows, OS/2, FreeBSD + +### 安装qBittorrent ### + + $ sudo add-apt-repository ppa:hydr0g3n/qbittorrent-stable + $ sudo apt-get update && sudo apt-get install qbittorrent + +你也可以下载[qbittorrent的源代码][3],然后编译后安装。 + +![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/qBittorrent.png) + +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/install-qbittorrent-3-1-0-ubuntu-via-ppa/ + +译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.qbittorrent.org/index.php +[2]:http://www.utorrent.com/ +[3]:http://sourceforge.net/projects/qbittorrent/files/qbittorrent/qbittorrent-3.1.0/qbittorrent-3.1.0.tar.gz/download diff --git a/translated/Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python.md b/translated/Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python.md new file mode 100644 index 0000000000..d440ffe4f7 --- /dev/null +++ b/translated/Installing a Desktop Algorithmic Trading Research Environment using Ubuntu Linux and Python.md @@ -0,0 +1,301 @@ +在Ubuntu下用Python搭建桌面算法交易研究环境 +================================================================================ +这篇文章将讨论在ubuntu下,使用Python编程语言,来搭建一个强大,高效和易交互的算法交易策略研究环境.几乎所有的后续的算法交易文章都将利用此环境. + +搭建此环境需要安装以下软件,它们都是开源的或免费下载的: + +- [Oracle VirtualBox][1] - 虚拟机 +- [Ubuntu Desktop Linux][2] - 作为我们的虚拟操作系统 +- [Python][3] - 核心编程环境 +- [NumPy][4]/[SciPy][5] - 快速、高效的数组和矩阵运算 +- [IPython][6] - Python的可视化交互环境 +- [matplotlib][7] - 图形化的虚拟数据 +- [pandas][8] - 数据“冲突”和时间序列分析 +- [scikit-learn][9] - 机器学习和人工智能算法 + +这些工具(配合合适的 [证券master数据库][10]),将使我们能够创建一个快速可交互的策略研究环境。Pandas是专为数据“冲突”设计的,它可以高效地导入和清洗时间序列数据。NumPy/SciPy在底层运行,使得系统被很好的优化。IPython/matplotlib (和qtconsole,详见下文)使结果可视化可交互并快速迭代。scikit-learn可让我们将机器学习技术应用到我们的策略中,以进一步提高性能。 + +请注意,我写这篇教程是为了那些无法或不愿意直接安装ubuntu系统的windows或Mac OSX用户,通过VirtualBox来搭建此环境。VirtualBox使我们可在host操作系统中创建一个虚拟机,可模拟guest操作系统,而丝毫不影响host操作系统。由此我们可以在完整安装Ubuntu前练习Ubuntu和Python工具。如果已经安装Ubuntu桌面系统,可跳过“在Ubuntu下安装Python研究环境包”这一节。 + +##安装VirtualBoX和Ubuntu## + +Mac OSX操作系统上关于VirtualBox安装的部分已经写过了,这里将简单的移到Windows环境中。一旦各种host操作系统下的VirtualBox安装完毕,其它过程就都一样了。 + +开始安装前,我们需要先下载Ubuntu和VirtualBox。 + +**下载Ubuntu桌面磁盘镜像** + +打开收藏夹,导航到[Ubuntu 桌面][11]主页,然后选择Ubuntu 13.04: + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0004.png) + +*下载Ubuntu13.04(64位(如适用))* + +你会被问及是否愿意捐赠一些money,不过这个是可选的。进入下载页面后选择Ubuntu 13.04。你需要选择是否要下载32位或64位版本。很可能你是64位系统,但如果你有疑问,那么选择32位。在Mac OSX系统上,Ubuntu桌面ISO磁盘镜像将保存到下载目录下。安装VirtualBox后我们就要用到它了。 + + +**下载和安装VirtualBox** + +现在,我们已经下载了Ubuntu ,接下来需要去获取最新版本的Oracle的VirtualBox软件。点击[这里][12]访问该网站,选择你的特定主机的版本(本教程要求Mac OSX版本) + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0002.png) + +*Oracle VirtualBox下载页面* + +一旦文件下载完毕,我们点击安装包图标运行(Windows上会有些不同,但是类似): + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0007.png) + +*双击安装包图标,安装VirtualBox* + +打开后,按照安装说明操作,保持默认(除非你觉得有必要修改他们!)。VirtualBox安装完毕后,可从Applications文件夹中打开(可通过Finder搜索到)。VirtualBox运行过程中它的图标将出现在Dock栏里,如果你以后想经常以虚拟机方式使用Ubuntu,你可以将VirtualBox图标永久保存在Dock栏中: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0008.png) + +*还没有磁盘镜像的VirtualBox* + +点击类似齿轮的图标,创建一个新的虚拟盒子(也就是虚拟机),命名为"Ubuntu Desktop 13.04 Algorithmic Trading"(你可以使用别的类似的描述): + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0009.png) + +*命名我们的新虚拟环境* + +分配虚拟机内存.因为是测试系统,所以我只分配了512Mb.一个实际的回溯引擎因为效率原因需要一个本地安装(这样才能明显分配到更多内存): + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0010.png) + +*选择虚拟磁盘的RAM量* + +创建虚拟硬盘,大小为推荐的8Gb,动态生成VirtualBox磁盘镜像,名字同上: + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0011.png) + +*选择镜像所使用的硬盘类型* + +You will now see a complete system with listed details: +完整系统的详细信息如下: + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0012.png) + +*已经创建的虚拟镜像* + +现在我们需要在VirtualBox中为新的磁盘镜像包含一个虚拟的'CD驱动器',这样就可以假装从这张光盘驱动器引导我们的Ubuntu磁盘镜像。在Settings里点击“Storage”选项卡,并添加一个磁盘。选择Downloads目录下的Ubuntu磁盘镜像ISO文件(或者其他你下载Ubuntu的目录),选择Ubuntu ISO镜像,并保存设置。 + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0014.png) + +*在第一次启动时选择Ubuntu桌面ISO* + +一切就绪,准备启动Ubuntu镜像并安装。点击“Start”,当出现主机捕获鼠标或键盘消息时点击“Ok”。在我的Mac OSX系统中,主机捕获键是左边的Cmd键(即左Apple键)。现在出现在你眼前的就是Ubuntu桌面安装界面,点击“Install Ubuntu”: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0015.png) + +*点击 "Install Ubuntu "开始安装* + +确保勾选两个框,安装专有的MP3和Wi-Fi驱动程序: + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0016.png) + +*安装MP3和Wi-Fi的专用驱动程序* + +现在,您将看到一个界面,询问你想如何保存操作系统创建过程中的的数据。不要惊慌于“Erase Disk and Install Ubuntu”的选项。这并不意味着它会删除你的普通硬盘!它实际上指的是运行Ubuntu的虚拟磁盘,这是安全擦除(反正里面没有什么内容,因为是我们刚刚创建的)。继续进行安装,将出现询问位置的界面,随后,又将出现选择键盘布局的界面: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0017.png) + +*选择您所在的地理位置* + +输入您的用户凭据,请务必记住您的密码,以后安装软件包的时候需要它: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0018.png) + +*输入您的用户名和密码(此密码是管理员密码)* + +现在, Ubuntu将安装文件。它应该是比较快的,因为它是从硬盘复制到硬盘!完成后VirtualBox将重启。如果不自行重启,你可以去菜单强制关机。接下来将回到Ubuntu的登录界面: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0019.png) + +*Ubuntu桌面登录界面* + +用您的用户名和密码登录,你将看到闪亮的新的Ubuntu桌面: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0020.png) + +*Ubuntu桌面登录后的整体界面* + +最后需要做的事是点击火狐图标,通过访问一个网站(我选择QuantStart.com,有意思吧!),来测试互联网/网络功能是正确的: + + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0021.png) + +*Ubuntu中的火狐浏览器(注:原文此处为"The Ubuntu Desktop login screen")* + +现在Ubuntu桌面已经安装完毕,接下来,我们就可以开始安装的算法交易研究环境软件包。 + +## Installing the Python Research Environment Packages on Ubuntu ## 在Ubuntu上安装Python研究环境软件包 + +点击左上角的搜索按钮,在输入框里输入“Terminal”,弹出命令行界面。双击终端图标启动终端: + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0022.png) + +**Ubuntu中的终端界面(注:原文此处为"Ubuntu Desktop login screen")* + +所有后续的命令都在此终端输入。 + +任何崭新的Ubuntu Linux系统上做的第一件事就是更新和升级软件包。前者告诉Ubuntu可用的新软件包有哪些,后者用新版的软件包替换旧版的。运行下列命令(你将被提示输入您的密码) : + + + sudo apt-get -y update + sudo apt-get -y upgrade + +*-y前缀告诉Ubuntu接受所有回答“是/否”的问题为'是'。 “sudo”是一个Ubuntu/Debian Linux的命令,允许以管理员权限执行其他命令。由于我们将在站点范围安装软件包,我们需要机器的root权限,因此必须使用'sudo'* + +你可能会在这里得到一个错误消息: + + E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) + +为了解决这个问题,你只需再次运行"sudo apt-get -y update"或者万一第一种方式不起作用,你可以在该站点([http://penreturns.rc.my/2012/02/could-not-get-lock-varlibaptlistslock.html][13])上查看是否有其他的命令。 + +一旦这些更新命令成功执行,接下来我们需要安装Python,NumPy/SciPy,matplotlib,pandas,scikit-learn和IPython。我们将开始安装Python开发包和编译器,编译器将在编译所有软件的时候用到: + + sudo apt-get install python-pip python-dev python2.7-dev build-essential liblapack-dev libblas-dev + +一旦安装必要的软件包,我们就可以通过pip,即Python包管理器,安装NumPy的。pip将下载NumPy的zip包,然后从源代码编译。请记住,编译需要花费一些时间,大概10-20分钟! + + sudo pip install numpy + +NumPy安装完了后,我们需要在继续之前检查它是否可用。如果你仔细看终端,你会发现计算机名后面跟了你的用户名。比如我的是`mhallsmoore@algobox`,随后是提示符。在提示符下键入`python`,然后试着导入NumPy。我们将计算一个列表的平均值,以测试NumPy是否可用: + + mhallsmoore@algobox:~$ python + Python 2.7.4 (default, Sep 26 2013, 03:20:26) + [GCC 4.7.3] on linux2 + Type "help", "copyright", "credits" or "license" for more information. + >>> import numpy + >>> from numpy import mean + >>> mean([1,2,3]) + 2.0 + >>> exit() + +现在,我们已成功安装NumPy,接下来要安装Python的科学库,即SciPy。然而,它有一些依赖的软件包,包括ATLAS库和GNU Fortran编译器: + + sudo apt-get install libatlas-base-dev gfortran + +现在,我们将通过pip安装SciPy.这将需要相当长的时间(约20分钟,这取决于你的电脑),所以也许你可以去喝杯咖啡先: + + sudo pip install scipy + +唷!现在已安装SciPy。让我们通过计算一个整数列表的标准差来测试SciPy是否可以正常使用: + + mhallsmoore@algobox:~$ python + Python 2.7.4 (default, Sep 26 2013, 03:20:26) + [GCC 4.7.3] on linux2 + Type "help", "copyright", "credits" or "license" for more information. + >>> import scipy + >>> from scipy import std + >>> std([1,2,3]) + 0.81649658092772603 + >>> exit() + +接下来我们需要安装matplotlib的依赖包,Python的图形库。 由于matplotlib是一个Python包,无法使用pip去安装以下PNG,JPEG文件和FreeType字体库相关的库,所以我们需要Ubuntu为我们安装: + + sudo apt-get install libpng-dev libjpeg8-dev libfreetype6-dev + +现在我们可以安装matplotlib了: + + sudo pip install matplotlib + +我们将安装数据分析和机器学习库,pandas和scikit-learn.这步不需要安装额外的依赖库, 因为NumPy和SciPy已经将依赖都覆盖了. + + sudo pip install -U scikit-learn + sudo pip install pandas + +我需要测试scikit-learn: + + mhallsmoore@algobox:~$ python + Python 2.7.4 (default, Sep 26 2013, 03:20:26) + [GCC 4.7.3] on linux2 + Type "help", "copyright", "credits" or "license" for more information. + >>> from sklearn load datasets + >>> iris = datasets.load_iris() + >>> iris + .. + .. + 'petal width (cm)']} + >>> + +另外,我们需要测试pandas: + + >>> from pandas import DataFrame + >>> pd = DataFrame() + >>> pd + Empty DataFrame + Columns: [] + Index: [] + >>> exit() + +最后, 我们需要安装IPython.这是一个交互式的Python解释器,它提供了一个更精简的工作流相比标准的Python控制台。在以后的教程中,我将讲述IPython在算法交易开发中的充分的用处: + + sudo pip install ipython + +虽然IPython本身已经相当有用,但它通过包含qtconsole可以有更强大的能力,qtconsole提供了内联matplotlib可视化的能力。尽管如此,它需要多一点点的工作以使它启动和运行。 + +首先,我们需要安装[Qt库][14]。对于这一点,你可能需要更新你的软件包(我做了!): + + sudo apt-get update + +现在我们可以安装Qt了: + + sudo apt-get install libqt4-core libqt4-gui libqt4-dev + +qtconsole有一些附加的包,即ZMQ和Pygments库: + + sudo apt-get install libzmq-dev + sudo pip install pyzmq + sudo pip install pygments + +最后我们准备启动带有qtconsole的IPython: + + ipython qtconsole --pylab=inline + +然后我们可以做一个图(非常简单的!), 键入下列命令(我已经包含了IPython编号的输入/输出,你不需要再输入): + + In [1]: x=np.array([1,2,3]) + + In [2]: plot(x) + Out[2]: [] + +这将产生以下内嵌图表: + +![](https://s3.amazonaws.com/quantstart/media/images/qs-python-ubuntu-install-0023.png) + +*带有qtconsole的IPython显示一幅内嵌的图表* + +这就是它的安装过程。现在,我们手头就有一个非常强大的,高效和互动的算法交易的科研环境。我会在后续的文章中详细介绍如何结合IPython,matplotlib,pandas和scikit-learn,以一种直观的方式, 成功地研究和回溯测试量化交易策略。 + +-------------------------------------------------------------------------------- + +来源于: http://quantstart.com/articles/Installing-a-Desktop-Algorithmic-Trading-Research-Environment-using-Ubuntu-Linux-and-Python + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +译者:[coolpigs](https://github.com/coolpigs) 校对:[校对者ID](https://github.com/校对者ID) + +[1]:https://www.virtualbox.org/ +[2]:http://www.ubuntu.com/desktop +[3]:http://python.org/ +[4]:http://www.numpy.org/ +[5]:http://www.scipy.org/ +[6]:http://ipython.org/ +[7]:http://matplotlib.org/ +[8]:http://pandas.pydata.org/ +[9]:http://scikit-learn.org/ +[10]:http://quantstart.com/articles/Securities-Master-Database-with-MySQL-and-Python +[11]:http://www.ubuntu.com/desktop +[12]:https://www.virtualbox.org/ +[13]:http://penreturns.rc.my/2012/02/could-not-get-lock-varlibaptlistslock.html +[14]:http://qt-project.org/downloads \ No newline at end of file diff --git a/translated/Linux's First Space Opera Game“The Mandate”Gets a Fabulous Trailer.md b/translated/Linux's First Space Opera Game“The Mandate”Gets a Fabulous Trailer.md new file mode 100644 index 0000000000..e73c2d4db5 --- /dev/null +++ b/translated/Linux's First Space Opera Game“The Mandate”Gets a Fabulous Trailer.md @@ -0,0 +1,36 @@ +Linux 首款太空剧场的游戏 'The Mandate' 发布令人震撼的预告片!! + +================================================================================ + +Perihelion Interactive 已经宣告发布,一个在Kickstater倍受瞩目的太空类游戏 'The Mandate' 的首个游戏预告片. + +根据开发者的简述,The Mandate 由六玩家协作,在开发的世界控制一辆载着数百人巨船的科幻RPG游戏. + +游戏会根据不同的情境变化.在太空里,这类似于<银河创世纪:木星事件>,但 The Mandate 提供了更完整的RPG体验. + +举例来说,玩家能在太空船上等角透视的操作和战斗,当其他的党派正在雇佣船只时.更好的是,他们不得不同样的保护它们拥有的战船. + +![](http://i1-news.softped在ia-static.com/images/news2/Linux-s-First-Space-Opera-Game-quot-The-Mandate-quot-Gets-a-Fabulous-Trailer-394858-2.jpg) + +'游戏预告开头部分是中立的Zukov星际飞船遭到海盗的袭击后发出了遇难信号.信号被由效忠Mandate女王阿济莫夫指挥战斗中队的一个队员截获.队员与海盗交涉,给了他们投降和撤回的机会,但是战争随之来到.绝对的统治,'摘自官方[宣告][1] + +游戏由Unity 3D引擎开发!!!,但是目前游戏仍处于开发初级阶段与最终产品可能看起来很不同. + +工作室内都是行业的资深人士,曾开发过佷多有影响力的游戏,像刺客信条,刺客信条II,黑手党II,孤岛惊魂2,科南时代:西伯莱人大冒险,使命召唤3,和神秘世界.更重要的是,他们都是痴迷CRPG的玩家,喜爱星际争霸,星际迷航,巴比伦5号和萤火虫. + +来自Perihelion Interactive 公司的开发者已经成功募集三分之一的资金,但他们还有34天的时间. + +游戏预计将在2015年3月发行.如果你对这个项目有兴趣,你可以看看Kickstarter官方网站. + +youtube video:[http://www.youtube.com/embed/lf-lB51wlNo][2] + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Linux-s-First-Space-Opera-Game-quot-The-Mandate-quot-Gets-a-Fabulous-Trailer-394858.shtml + +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.kickstarter.com/projects/1964463742/the-mandate/posts +[2]:http://www.youtube.com/embed/lf-lB51wlNo diff --git a/translated/Mark Shuttleworth to attend and conduct keynote at OpenStack Summit in Hong Kong, November 5th - 8th 2013.md b/translated/Mark Shuttleworth to attend and conduct keynote at OpenStack Summit in Hong Kong, November 5th - 8th 2013.md deleted file mode 100644 index 8b8e2214dd..0000000000 --- a/translated/Mark Shuttleworth to attend and conduct keynote at OpenStack Summit in Hong Kong, November 5th - 8th 2013.md +++ /dev/null @@ -1,34 +0,0 @@ -Mark Shuttleworth 将出席今年香港的OpenStack最高峰会并发表主题演讲 -================================================================================ -Mark Shuttleworth将出席今年11月5日到8日在香港的OpenStack最高峰会并发表主题演讲 - -通过分析[Canonical.com][1],调查者不难发现几个改变,其中包括眼界,奋斗目标和行动准则等,都已经逐渐地规范定位为计算机世界之巅,通过所有相关的因素和计算环境,它成为了领导创新发展非常重要的部分。 - -Ubuntu,--桌面操作系统--,通电了3000万为了追求稳定、快速、安全还漂亮的个人用户、公司企业和国家部门,是一个巨大的成功,然而,这个桌面系统只是Canonical跨过层层困难到达IT世界之巅的蓬勃运动的一部分。 - -在云计算方面,Canonical已经深度并积极参与到OpenStack,作为最流行、可靠的、快速的开源云平台,Ubuntu正是OpenStack的使用操作系统,云平台云集了NASA,HP和世界上专家们,通力合作的发开开放云平台。 - -Ubuntu是给公司和开发者渴望利用的给力的OpenStack[默认的][2]操作系统,Ubuntu提供了众多优势和好处:Ubuntu和OpenStack发布时间是同步的,同步的发行使得OpenStack能在最新的Utuntu下运行,Canonical提供支持,--产品,服务,等等--,为最佳的OpenStack的管理和操作等。 - - -**OpenStack峰会**是一个有趣的专家们集会的事件,为了讨论,提出和分析各个方面的OpenStack,以有趣的展会,个案研究,来自创新开发者的基调为特色,也有开发者集会和工作分享,本质上,专家们会讨论关于现在和明天的OpenStack和云计算的格局。 - -![](http://iloveubuntu.net/pictures_me/openstack%20summit%20hong%20kong%202013.png) - -下一次的OpenStack峰会将会于11月5号到8号在香港举行,参加注册[registrations][3]。 - -Canonical的**Mark Shuttleworth**将会坚定地出席在香港举行的OpenStack峰会,他将展开一个主题,围绕交互性,进一步加强Ubuntu和OpenStack的效应等,并揭示新的细节关于未来的创新目标,计划和Canonical为Ubuntu所做的成就。 - -更多细节和优惠(有效日期:10月26前)请点击 [https://www.openstack.org/summit/hk][4] --------------------------------------------------------------------------------- - -via: http://iloveubuntu.net/mark-shuttleworth-attend-and-conduct-keynote-openstack-summit-hong-kong-november-5th-8th-2013 - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -译者:[Vic___](http://blog.csdn.net/Vic___) 校对:[校对者ID](https://github.com/校对者ID) - -[1]:http://www.canonical.com/ -[2]:http://www.ubuntu.com/cloud/tools/openstack -[3]:https://www.eventbrite.com/event/6786581849/o21 -[4]:https://www.openstack.org/summit/hk \ No newline at end of file diff --git a/sources/Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13.md b/translated/Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13.md similarity index 59% rename from sources/Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13.md rename to translated/Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13.md index a63346f010..2eb28d6c7c 100644 --- a/sources/Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13.md +++ b/translated/Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13.md @@ -1,18 +1,20 @@ -Metal Backup and Recovery Is Now Possible with Debian-Based Clonezilla Live 2.2.0-13 +现在可以通过基于Debian的Clonezilla(再生龙) Live 2.2.0-13 备份和恢复设备 + ================================================================================ -Clonezilla Live 2.2.0-13, a Linux distribution based on DRBL, Partclone, and udpcast that allows users to do bare metal backup and recovery, is now available for testing. + +Clonezilla Live 2.2.0-13,一个基于DRBL,Partclone,和udpcast的Linux发行版,允许用户完成一些裸金属的备份和还原,目前还只是测试版. ![](http://i1-news.softpedia-static.com/images/news2/Metal-Backup-and-Recovery-Is-Now-Possible-with-Debian-Based-Clonezilla-Live-2-2-0-13-391374-2.jpg) -[Clonezilla Live 2.2.0-13][1] is a new development version for this distribution and the developers have chosen to move a little faster with the numbering systems. There are no major differences, but some packages have been updated. +[Clonezilla Live 2.2.0-13][1] 是这个放行版的最新开发版本,开发人员已经选择添加了一些快一点的编号系统,没有太大的差异,但是一些包已经更新了. -“The underlying GNU/Linux operating system was upgraded. This release is based on the Debian Sid repository (as of 2013/Oct/14). Package drbl has been updated to 2.5.12-drbl1, and clonezilla has been updated to 3.7.15-drbl1,” reads the announcement. +“底层的GNU/Linux操作系统已经升级,这次放行版基于Debian Sid库(2013-10-14).DRBL包已经更新到2.5.12-drbl1,clonezilla更新到了3.7.15-drbl1,” 从公告中摘取. -The developers also integrated Samba 4.0.10, which isn't exactly the last stable one released, but it's still recently new. +开发者还集成了Samba 4.0.10,这不是最后的稳定释放版本,但它仍然是最新的. -Remember that this is a development version and it should NOT be installed on production machines. It is intended for testing purposes only. +请注意这是个开发版本,请不要安装在生产机上.这只用于测试的目的. -**Download Clonezilla Live 2.2.0-13** +**下载 Clonezilla Live 2.2.0-13** - [Clonezilla LiveCD 2.1.2-53 (ISO) i486 Stable][2][iso] [120 MB] - [Clonezilla LiveCD 2.1.2-53 (ISO) i686 PAE Stable][3][iso] [121 MB] @@ -27,7 +29,7 @@ via: http://news.softpedia.com/news/Metal-Backup-and-Recovery-Is-Now-Possible-wi 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID) [1]:http://free.nchc.org.tw/clonezilla-live/testing/ChangeLog-Clonezilla-live.txt [2]:http://downloads.sourceforge.net/clonezilla/clonezilla-live-2.1.2-53-i486.iso @@ -35,4 +37,4 @@ via: http://news.softpedia.com/news/Metal-Backup-and-Recovery-Is-Now-Possible-wi [4]:http://downloads.sourceforge.net/clonezilla/clonezilla-live-2.1.2-53-amd64.iso [5]:http://sourceforge.net/projects/clonezilla/files/clonezilla_live_testing/2.2.0-8/clonezilla-live-2.2.0-13-i486.iso/download [6]:http://sourceforge.net/projects/clonezilla/files/clonezilla_live_testing/2.2.0-8/clonezilla-live-2.2.0-13-i686-pae.iso/download -[7]:http://sourceforge.net/projects/clonezilla/files/clonezilla_live_testing/2.2.0-8/clonezilla-live-2.2.0-13-amd64.iso/download \ No newline at end of file +[7]:http://sourceforge.net/projects/clonezilla/files/clonezilla_live_testing/2.2.0-8/clonezilla-live-2.2.0-13-amd64.iso/download diff --git a/translated/The Linux Kernel/00 About the author.md b/translated/The Linux Kernel/00 About the author.md new file mode 100644 index 0000000000..e564d85571 --- /dev/null +++ b/translated/The Linux Kernel/00 About the author.md @@ -0,0 +1,62 @@ +00 关于作者 +================================================================================ +[![](http://www.linux.org/data/avatars/l/4/4843.jpg)][1] + +随时可以给我写信或者发邮件(DevynCJohnson@Gmail.com)提出对本系列的建议,无论是本系列后续的文章还是如何使这个系列更好和有趣 + +我每周为Linux.org写两篇文章。一篇是Linux内核系列而另一篇是任何随机的Linux话题。随时可以发邮件建议你想看到的“随机文章”。我乐意在站上写一些能够吸引大量读者的东西。我的目标是每周写一篇拥有1万以上读者的文章。 + +很快我会写一些关于如何安装流行Linux发行版的文章,因此,如果你想要阅读某个特定发行版文章,请给我发邮件。 + +看看我的壁纸: [http://gnome-look.org/usermanager/search.php?username=DevynCJohnson&action=contents&PHPSESSID=32424677ef4d9dffed020d06ef2522ac][2] + +我的人工智能项目: [https://launchpad.net/neobot][3] + + +个人信息: + +**性别**:男 + +**生日**: Aug 31, 1994 (年龄: 19) + +**主页**:https://launchpad.net/~devyncjohnson-d + +**位置**:United States + +戴文.科利尔.约翰逊(Devyn Collier Johnson)在家接受了他伟大的父母的家庭式培养,现在已从一所大学毕业,正在读另外一所大学。他的父亲,杰瑞特.韦恩.布斯(Jarret Wayne Buse)拥有很多的计算机认证,并且他已经撰写并出版了许多关于计算机的书籍。他也做一些编程,并给了戴文的人工智能程序提供过一些帮助和点子。他的妈妈,卡桑德拉.安.约翰逊(Cassandra Ann Johnson),是一名家庭主妇,在家培养了他的许多兄弟姐妹。戴文.科利尔.约翰逊和他的父母住在印第安纳,他的时间主要用在大学和个人的电脑编程上。 + +戴文.科利尔.约翰逊十六岁毕业于一所高中。他作为一名走读生进入大学并一直保持在优秀学生名单上。他的专业是电气技术工程。他已经学习了很多计算机语言。一些是他自学的而有的则是他父亲教导并且帮助他学会的。一些他了解的语言包括Xaiml、AIML、Unix Shell、Python3、VPython、PyQT、PyGTK、Coffeescript、GEL、SED、HTML4/5、CSS3、SVG和XML。此外还了解一点其他的语言。他在2012年4月获取了4项计算机证书他们是NCLA、Linux+、LPIC-1、和DCTS。 他的Linux专家认证ID是LPI000254694。 + +在2012年7月,戴文.科利尔.约翰逊决定从头开始做他的聊天机器人。他设计了自己的标记语言(Xaiml)和AI引擎(ProgramPY-SH 或者 Pysh)。在2013年3月,戴文在Launchpad.net上发布了他的机器人。这个机器人名为Neo,取自原始印欧语中单词的“new”。 + +戴文还维护了其他几个项目。他制作Opera和Firebox的主题 ([https://addons.mozilla.org/en-US/firefox/user/DevynCJohnson/][6]) ([https://my.opera.com/devyncjohnson/account/][7]); 他还有许多其他的图形设计项目。他的大多数编程项目托管在 [https://launchpad.net/~devyncjohnson-d][4], 另外在Sourceforge.net上也有镜像,其他的一些杂项可以通过下面的链接找到。 + +- [http://askubuntu.com/users/158340/devyn-collier-johnson][8] +- [http://unix.stackexchange.com/users/40770/devyn-collier-johnson][9] +- [http://stackoverflow.com/users/2354783/devyn-collier-johnson][10] +- [http://www.linux.org/members/devyncjohnson.4843/][1] +- [http://gnome-look.org/usermanager/search.php?username=DevynCJohnson][11] +- [http://www.creatity.com/?user=1449&action=detailUser][12] +- [http://openclipart.org/user-detail/DevynCJohnson][13] + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/members/devyncjohnson.4843/ + +译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.linux.org/members/devyncjohnson.4843/ +[2]:http://gnome-look.org/usermanager/search.php?username=DevynCJohnson&action=contents&PHPSESSID=32424677ef4d9dffed020d06ef2522ac +[3]:https://launchpad.net/neobot +[4]:https://launchpad.net/~devyncjohnson-d +[5]:DevynCJohnson@Gmail.com +[6]:https://addons.mozilla.org/en-US/firefox/user/DevynCJohnson/ +[7]:https://my.opera.com/devyncjohnson/account/ +[8]:http://askubuntu.com/users/158340/devyn-collier-johnson +[9]:http://unix.stackexchange.com/users/40770/devyn-collier-johnson +[10]:http://stackoverflow.com/users/2354783/devyn-collier-johnson +[11]:http://gnome-look.org/usermanager/search.php?username=DevynCJohnson +[12]:http://www.creatity.com/?user=1449&action=detailUser +[13]:http://openclipart.org/user-detail/DevynCJohnson diff --git a/translated/The Linux Kernel/06 The Linux Kernel--Configuring the Kernel Part 2.md b/translated/The Linux Kernel/06 The Linux Kernel--Configuring the Kernel Part 2.md new file mode 100755 index 0000000000..cc5c8abcf6 --- /dev/null +++ b/translated/The Linux Kernel/06 The Linux Kernel--Configuring the Kernel Part 2.md @@ -0,0 +1,136 @@ +06 Linux 内核: 内核配置(Part 2) +================================================================================ +![](http://www.linux.org/attachments/slide-jpg.351/) + +第二部分我们讲配置内核IRQ子系统。中断请求(IRQ)硬件发给处理器的一个信号,它暂时停止一个正在运行的程序并允许一个特殊的程序在它的位置上运行。 + +这个目录中的第一个问题属于内核特性(Expose hardware/virtual IRQ mapping via debugfs (IRQ_DOMAIN_DEBUG))询问的是硬件的IRQ数量以及相应的是否可以使用虚拟调式文件系统映射。这个用作调试目的。大多数用户不需要用到,所以我选择了"no". + +下一个标题显示"Timers subsystem". 第一个有关定时器子系统的问题是"“Tickless System (Dynamic Ticks) (NO_HZ)". 我选择了"yes",这会启用一个无滴答系统。这意味着定时器中断将会按需使用。定时器中断允许任务以特定的时间间隔执行。下一个问题(High Resolution Timer Support (HIGH_RES_TIMERS))问的是是否支持高分辨率定时器。并不是所有的硬件支持这个。通常地说,如果硬件很慢或很旧,那么选择"no",否则像我一样选择"yes". + +下一个标题"CPU/Task time and stats accounting",这个是关于进程的追踪。第一个问题看上去像这样 + +Cputime accounting +1. Simple tick based cputime accounting (TICK_CPU_ACCOUNTING) +2. Full dynticks CPU time accounting (VIRT_CPU_ACCOUNTING_GEN) (NEW) +3. Fine granularity task level IRQ time accounting (IRQ_TIME_ACCOUNTING) + +TICK_CPU_ACCOUNTING会在每个CPU滴答检测/proc/stat。这是默认的选项,这个统计方法非常简单 + +注意:CPU滴答是抽象测量CPU时间的方式。每个处理器,操作系统和安装方式都不同,比如说,一个更强大的处理器会比老的处理器拥有更多的CPU滴答。如果你安装了一个Linux系统接着在同一块磁盘上重新安装了它。你可能会得到一个更快或更慢的CPU滴答时间(至少一些计算机技术书上这么说)。通常来讲,一个更快的时钟速度意味着更多的时间滴答。 + +如果启用了VIRT_CPU_ACCOUNTING_GEN,任务和CPU时间统计将由监视内核-用户边界实现。这个选择的代价是会增加额外的开销。 + +IRQ_TIME_ACCOUNTING统计方式通过检测IRQ状态间的时间戳工作,这个性能开销很小。 + +我选择了"1"并被询问有关BSD统计"BSD Process Accounting (BSD_PROCESS_ACCT)"的问题.这个内核特性会记录每个进程不同的关闭信息。为了得到一个更小和更快的内核,我选择了"no". + +下一组问题看上去就像下面这样。 + +Export task/process statistics through netlink (TASKSTATS) +Enable per-task delay accounting (TASK_DELAY_ACCT) +Enable extended accounting over taskstats (TASK_XACCT) + +TASKSTATS使内核可以通过网络套接字导出进程统计。网络套接字是内核和用户空间进程间IPC通信的一种形式。TASK_DELAY_ACCT监视进程并延迟关心资源的访问。比如,TASK_DELAY_ACCT可以看到X进程正在为了CPU时间而等待。这个进程接着就会被给予一些CPU时间如果TASK_DELAY_ACCT观察到进程已经等待了太长时间。TASK_XACCT收集额外的统计数据。为了更小的内核负载我会禁用这个。 + +现在接下来的目录就会显示出来-RCU子系统。读-拷贝修改子系统是一种低负载的同步机制,它允许程序查看到正在被修改/更新的文件。配置工具已经回答了第一个问题。 + +RCU Implementation +> 1. Tree-based hierarchical RCU (TREE_RCU) +choice[1]: 1 + +这是RCU类型的选择。除了TREE_RCU,还有classic RCU(更老的实现)。下一个问题(Consider userspace as in RCU extended quiescent state (RCU_USER_QS) [N/y/?])问的是RCU是否可以在CPU运行在用户空间时设置一个特殊的状态。这个选项通常被禁用因为这回增加太多消耗。下面是另一个RCU问题(Tree-based hierarchical RCU fanout value (RCU_FANOUT) [64]),问的是关于换出值。下一个问题(ree-based hierarchical RCU leaf-level fanout value (RCU_FANOUT_LEAF) [16]),是另外一个关于转出值的问题但它只处理叶级。还有另外一个RCU问题(Disable tree-based hierarchical RCU auto-balancing (RCU_FANOUT_EXACT) [N/y/?]),询问是否禁用RCU自动平衡。 + +接下来,配置脚本将会询问"Accelerate last non-dyntick-idle CPU's grace periods (RCU_FAST_NO_HZ)"。在这之后会显示"Offload RCU callback processing from boot-selected CPUs (RCU_NOCB_CPU)"; + +下一个问题非常重要(Kernel .config support (IKCONFIG))。开发人员可以选择保存由该配置工具生成的设置到一个文件中。这个文件可以放在内核中,也可在一个模块中,或者完全不保存。这个文件安可以被想要编译一个完全跟某人相同内核的开发者使用。这个文件还可以帮助开发人员使用一个更新的编译器重新编译一个内核。举例来说,开发人员配置并编译了一个内核。然而编译器有一些bug,但开发人员仍然需要使用这些设置的内核。值得庆幸的是,开发人员可以升级他们的编译器并使用设置文件来节省他们重新配置内核的时间。开发人员也可以在另一台计算机上保存源代码和配置文件并编译内核。至于另一个目的,开发人员可以加载该文件,并根据需要调整设置。我选择保存配置文件在一个模块中。这个问题 "Enable access to .config through /proc/config.gz (IKCONFIG_PROC)"询问这个文件是否是可以访问的。我选择了"yes"。 + +下一个问题是内核使用多大的log缓冲区(Kernel log buffer size (16 => 64KB, 17 => 128KB) (LOG_BUF_SHIFT) [17])。更小的缓冲区意味着它无法像更大的缓冲区那样保持日志更长的时间。这个选择取决于开发者想要日志保持的时间。我选择的是"12"。 + +接着,出现了另外一个问题。该问题询问关于是否启用NUMA(非一致性内存访问)知道内存/任务的布置的设置(Automatically enable NUMA aware memory/task placement (NUMA_BALANCING_DEFAULT_ENABLED))。如果设置了并且是NUMA的机器,那么NUMA自动平衡就会启用。在NUMA下,处理器可以比非本地内存(在另一台处理器上的内存或者处理器之间的共享内存)更快地访问它的本地内存。如果上面启用了(我启用了),那么最好对这个问题"Memory placement aware NUMA scheduler (NUMA_BALANCING)"回答"yes"。这是一个NUMA调度器。 + +在新的标题"Control Group support"下,因为先前的选择,"Control Group support (CGROUPS)"被自动地回答了"yes"。 + +以下设定(Example debug cgroup subsystem (CGROUP_DEBUG))是启动用于调式cgroup框架的一个简单的cgroup子系统。下一个选项(Freezer cgroup subsystem (CGROUP_FREEZER))可以让程序员可以冻结或者解冻cgroup内的任务。 + +注意:cgroup是一个进程组。 + +Next, we are asked “Device controller for cgroups (CGROUP_DEVICE)”. Cgroups (Control Groups) is a feature used to control resource usage. Answering “yes” will allow cgroup whitelists for the devices cgroups can open or mknod (system call for creating a file system node). +下面我们要求回答"Device controller for cgroups (CGROUP_DEVICE)"。cgroup(控制组)是一种用来控制资源使用的特性。回答"yes"可以允许设备cgroup的白名单可以使用open和mknod系统调用(用来创建文件系统节点的系统调用)。 + +下一个问题(Cpuset support (CPUSETS))询问的是内核是否可以创建和管理CPUSETS。这允许管理员可以在一个系统上动态分配各组内存节点并分配任务在这些内存上运行。这通常用于SMP和NUMA系统中。我这个问题回答的是"no"。 + +注意:请记住,如果我没有指定我选的是什么,那么我选的就是默认选项。 + +启用cgroup统计子系统(Simple CPU accounting cgroup subsystem (CGROUP_CPUACCT))会生成一个资源控制器来监控在一个cgroup组内的独立任务的CPU使用情况。我选择了"no"。 + +资源计数器(Resource counters (RESOURCE_COUNTERS))使控制器独立资源能够统计工作在cgroup上的设备。我选择了"no"。 + +下一个问题(Enable perf_event per-cpu per-container group (cgroup) monitoring (CGROUP_PERF))允许开发者扩展扩展每个CPU的模式,使它可以只监控运行在特定CPU上的一个特别的cgroup组的线程。 + +下一章节是"Group CPU Scheduler"。前两个已经回答的问题包括: + +Group CPU scheduler (CGROUP_SCHED) +Group scheduling for SCHED_OTHER (FAIR_GROUP_SCHED) + +第一个已回答的问题(CPU bandwidth provisioning for FAIR_GROUP_SCHED (CFS_BANDWIDTH))询问的是内核是否允许用户设置在公平组调度器内执行的任务的CPU带宽限制。没有限制的组会被认为不受约束并会没有限制地运行。 + +注意:并不是所有内核选项都在这个组里。我这里提到的组只是为了阅读舒适并指出这是一个新的,大的主题。了解所有组并不重要。当使用图形工具配置内核时,分组系统是有帮助的。那么开发者可以在搜索特定的设置时直接浏览分组后的菜单就可以了 + +开发者可以通过回答"Group scheduling for SCHED_RR/FIFO (RT_GROUP_SCHED)"这个问题为"是"使用户可以分配CPU带宽到任务组中。 + +下一个问题是"Block IO controller (BLK_CGROUP)"。这样任务组就可以被识别并且它们的磁盘带宽是由使用块IO控制器实现的CFQ IO调度器分配的。BIO在块层的限制逻辑使用块IO控制器来提供设备上的IO速率上限。 + +这里有一个调试问题(Enable Block IO controller debugging (DEBUG_BLK_CGROUP) [N/y/?])询问的是是否启用块IO控制器的调试。为了制作一个精简的内核,做好禁用这个特性。 + +为了启用内核中的检查点和还原特性。这个问题“Checkpoint/restore support (CHECKPOINT_RESTORE)”我们回答是。为了更低的负载这里我选择了否。启用这个特性会正经啊辅助的进程控制代码来设置进程的代码段,数据段和堆的大小。并增加了一些额外的程序入口。 + +下面我们就要配置命名空间的支持了。命名空间是一组标识符的容器。比如,/usr/lib/python3/dist-packages/re.py就是一个标识符,/usr/lib/python3/dist-packages/就是一个命名空间。而re.py是这个命名空间下的本地名称。 + +第一个命名空间问题(Namespaces support (NAMESPACES))询问的是是否启用命名空间。这允许可以使用相同的PID但在不同的命名空间内(译注:原文为" This will allow the same PIDs (Process ID) to be used but indifferent namespaces",这里indiffernt根据上下文应该是少了空格)。否则PID永远不会重复。 + +下一个问题(UTS namespace (UTS_NS))询问是否可以让UTS命名空间内的任务可以在uname()系统调用中看到不同的信息。uname()系统调用提供查看机器和操作系统的信息。 + +启用IPC命名空间(IPC namespace (IPC_NS))将允许在这个命名空间内的任务与其他IPC ID相对应的不同命名空间内的对象共同工作。 + +PID命名空间(PID Namespaces (PID_NS))就是进程ID命名空间。这可以使不同的进程在使用相同的PID时使用不同的PID命名空间。这是一个构建块的容器。 + +接下来,启用网络命名空间(Network namespace (NET_NS))可以使用户创建一个拥有多个实例的网络栈。 + +当启用后,自动进程分组调度(SCHED_AUTOGROUP)会填充并创建任务组来优化桌面程序的调度。它将把占用大量资源的应用程序放在它们自己的任务组。这有助于性能提升。 + +这里是一个调试特性,除非你有特别的需求否则应该禁用它。这个问题(Enable deprecated sysfs features to support old userspace tools (SYSFS_DEPRECATED))询问是否启用sysfs。这是调式内核时用的虚拟文件系统。 + +接下来,因为当前的配置需要它,所以"Kernel->user space relay support (formerly relayfs) (RELAY)"已经被设成"yes"了。最好启用initrd(初始化内存文件系统和内存盘(initramfs/initrd))支持(BLK_DEV_INITRD))。 + +用户会被问及哪里放置initramfs源文件。如果没有需要,请留空。 + +接下来,开发人员会被询问关于初始虚拟磁盘(Linux的内核映像文件)所支持的压缩格式。你可以启用所有支持的压缩格式。 + +Support initial ramdisks compressed using gzip (RD_GZIP) +Support initial ramdisks compressed using bzip2 (RD_BZIP2) +Support initial ramdisks compressed using LZMA (RD_LZMA) +Support initial ramdisks compressed using XZ (RD_XZ) +Support initial ramdisks compressed using LZO (RD_LZO) + +这里设置了内核的编译内核编译选项(Optimize for size (CC_OPTIMIZE_FOR_SIZE))。开发者可以让编译器在编译时优化代码。我选择了"yes"。 + +用户想要配置更多的内核特性,那么下个问题就回答"yes"(Configure standard kernel features (expert users) (EXPERT))。 + +要启用遗留的16位UID系统调用封装器,这个问题设成"yes"(Enable 16-bit UID system calls (UID16))。系统调用就会使用16位UID。 + +我们建议启用"sysctl syscall"(Sysctl syscall support (SYSCTL_SYSCALL))支持。这使/proc/sys成为二进制路径的接口。 + +接下来的两个问题已经被预先回答了"yes",它们是"Load all symbols for debugging/ksymoops (KALLSYMS)"和"“Include all symbols in kallsyms (KALLSYMS_ALL)"。这些都是启用调试标志。 + +下一步,开发者应该启用printk支持( (Enable support for printk (PRINTK)))。这会打印内核消息到内核日志中。这在内核出错时是很重要的。编译一个"哑巴"内核并不是一个好主意。然而,如果我们有做了选择,一些开发者就会看到它的目的。否则,我们没有选择的余地。 + +除非有必要,开发者可以禁用bug支持(BUG() support (BUG))。禁用这项将会一处WARN和BUG信息的支持。这会减小内核的体积。 + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-2.4318/ + +译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/translated/The Linux Kernel/07 The Linux Kernel--Configuring the Kernel Part 3.md b/translated/The Linux Kernel/07 The Linux Kernel--Configuring the Kernel Part 3.md new file mode 100755 index 0000000000..5c2501347f --- /dev/null +++ b/translated/The Linux Kernel/07 The Linux Kernel--Configuring the Kernel Part 3.md @@ -0,0 +1,130 @@ +07 Linux内核: 配置内核(Part 3) +================================================================================ +![](http://www.linux.org/attachments/slide-jpg.388/) + +好了,我们还在继续配置内核。还有更多功能等待着去配置。 + +下一个问题(Enable ELF core dumps (ELF_CORE))询问的是内核是否可以生成内核转储文件。这会使内核变大4KB。所以我选择了"no"。 + +注意:内核转储文件(内存或者系统的转储)是程序崩溃前已记录的状态。内核转储是用来调试问题的。这个转储文件的格式是ELF(Executable and Linkable Format )。 + +下面可以启用PC扬声器(Enable PC-Speaker support (PCSPKR_PLATFORM))。大多数计算机用户拥有并使用扬声器,所以这个启用它。 + +虽然下面的特性会增加内核的大小(Enable full-sized data structures for core (BASE_FULL)),但性能也随之增加。所以我选择"yes"。 + +为了是内核运行基于glibc的程序,必须启用FUTEX(Enable futex support (FUTEX))。这个特性启用了快速用户空间互斥锁(Fast Userspace muTEXes)。 + +注意:glibc(GNU C Library)是由GNU实现的标准C库。 + +注意:FUTEX (fast userspace mutex)是用来防止两个线程访问同一个每次不应该被多个线程使用的资源。 + +下一个问题(Enable eventpoll support (EPOLL))可以通过回答"no"来禁用epoll系统调用。然而,为了含有epoll系统调用,我选择了"yes"。epoll是一种I/O事件通知系统。 + +为了收到来自文件描述符的信号,我们启用signalfd系统调用(Enable signalfd() system call (SIGNALFD)。 + +如果启用这个特性(Enable timerfd() system call (TIMERFD)),它允许程序使用定时器事件获取文件描述符。 + +我们现在的配置必须启用eventfd系统调用(Enable eventfd() system call (EVENTFD))。它默认启用访问共享内存文件系统(Use full shmem filesystem (SHMEM)。共享内存文件系统是一种虚拟内存文件系统。 + +下一个问题是"Enable AIO support (AIO)"。这个特性启用了线程化程序使用的POSIX异步I/O。 + +注意:异步I/O用来处理输入/输出,它允许线程在传输完成前就完成处理。 + +如果你正在给一个嵌入式系统嵌入一个内核,那么问题“Embedded system (EMBEDDED)”可以选择"yes"。否则就像我一样选择"no"。 + +注意:嵌入式系统是运行在一个更大电子系统的实时计算机。 + +现在,我们可以配置内核性能事件和计时器了。配置工具没有给开发者选择直接启用了事件和计数器(Kernel performance events and counters (PERF_EVENTS))。这是一个重要特性。 + +接下来,我们可以禁用另外一个调试特性(ebug: use vmalloc to back perf mmap() buffers (DEBUG_PERF_USE_VMALLOC))。 + +如果启用了VM事件计数器,那么事件计数就会显示在/proc/vmstat(Enable VM event counters for /proc/vmstat (VM_EVENT_COUNTERS))。如果禁用了事件计数就不会显示,/proc/vmstat只会显示页计数。 + +为了更好地支持PCI芯片,(Enable PCI quirk workarounds (PCI_QUIRKS))回答yes。这会启用对PCI芯片的怪异行为和bug的临时解决方案。 + +下面一个调试特性可以像我一样禁用掉(Enable SLUB debugging support (SLUB_DEBUG))。这个特性会耗费很多空间并且会禁用用于调试内核的SLB sysfs。如果这个特性被禁用,那么/sys/slab就不会存在并且系统上也不再支持缓冲验证。 + +堆随机化是一个使利用堆漏洞更加困难的特性(Disable heap randomization (COMPAT_BRK))。然而我们不应该去启用它,因为任何基于libc5的软件都无法工作在这个系统上。只有我们有特别的理由这么做或者如果你不会使用基于libc5的软件时才去启用它。我禁用了这个特性。当编译一个通用的内核时,开发这会希望禁用这个特性。 + +接下来必须选择一个SLAB分配器。SLAB分配器是一个没有碎片且有效率地放置内核对象在内存中的内存管理系统。默认选择是"2"。 + +Choose SLAB allocator +1. SLAB (SLAB) +> 2. SLUB (Unqueued Allocator) (SLUB) +3. SLOB (Simple Allocator) (SLOB) +choice[1-3?]: 2 + +为了支持扩展性能支持,(Profiling support (PROFILING))回答"yes"。 + +下一个问题让开发者选择是否启用OProfile系统。它可以禁用、启用或者添加为一个模块在需要时载入。我选择禁用这个特性。 + +Kprobes允许用户捕捉几乎所有的内核地址去开始一个回调函数。这是一个可以像我一样禁用的调试工具(Kprobes (KPROBES))。 + +这个优化特性可以启用(Optimize very unlikely/likely branches (JUMP_LABEL))。这使分支预判更加简单并可以减小开销。 + +配置工具启用了一个实验性特性"透明用户空间探针"(Transparent user-space probes (EXPERIMENTAL) (UPROBES))。不要担心,系统可以很好工作。并不是所有的实验性特性是不稳定或者坏的。 + +接下来,我们会被询问基于gcov的内核分析(Enable gcov-based kernel profiling (GCOV_KERNEL))。这可以被禁用。 + +为了允许内核加载模块,需要启用可加载模块支持(Enable loadable module support (MODULES))。 + +内核接下来只能加载有版本号的模块。为了允许内核加载没有版本号的模块,就启用这个特性(Forced module loading (MODULE_FORCE_LOAD))。这么做是一个很糟糕的注意,所以我已经禁用了它,除非你有特定的需求需要这个特性。 + +Linux内核也能卸载模块如果启用了这个最好启用的特性(Module unloading (MODULE_UNLOAD))。如果内核感到卸载模块是一个坏主意那么用户则无法卸载模块。启用强制卸载是有可能的,但是这是一个坏主意(Forced module unloading (MODULE_FORCE_UNLOAD)。 + +为了使用不为你的内核开发或者并不适用你的版本号的模块,可以启用版本支持support (Module versioning support (MODVERSIONS))。最好不要混合版本号,所以我禁用了这个特性。 + +模块在它们的modeinfo(Module Information)里有一个字段名为"srcverion"。这个字段允许开发者看见使用什么源码版本来编译模块。启用这个选项可以在编译模块的时候加入这个字段。这个并不必要,所以我禁用了它(Source checksum for all modules (MODULE_SRCVERSION_ALL))。如果启用了先前的选项,开发者可以将校验和加入到模块中(Source checksum for all modules (MODULE_SRCVERSION_ALL))。 + +为了启用模块签名验证(Module signature verification (MODULE_SIG)),这个选项回答"yes"。因为这个并不必要,我选择了"no",不然内核在加载模块前会检查并验证签名。 + +为了启用块层支持(Enable the block layer (BLOCK)),像我一样选择"yes"。禁用这个将会使块设备无法使用并且无法启用某些文件系统。 + +下面,SG支持已经默认启用(Block layer SG support v4 (BLK_DEV_BSG)),并且辅助库也启用了enabled (Block layer SG support v4 helper lib (BLK_DEV_BSGLIB))。 + +下面可回答的问题是关于对块设备的数据整合(Block layer data integrity support (BLK_DEV_INTEGRITY))。这个特性允许拥有根号的数据完整性来支持像设备数据保护这样的特性。许多设备不再支持这个特性,所以我禁用了它。 + +如果启用了块层bio带宽限制(Block layer bio throttling support (BLK_DEV_THROTTLING))那就可以限制设备的IO速率。 + +为了启用外部分区方案的支持,这个问题就回答"yes"(Advanced partition selection (PARTITION_ADVANCED))。我禁用了这个特性。 + +为了启用CSCAN(译注:循环扫描)和FIFO过期请求,那就启用最后期限IO调度器(Deadline I/O scheduler (IOSCHED_DEADLINE))。 + +CFQ IO调度器在处理器之间平均地分配带宽。因此启用这个特性feature (CFQ I/O scheduler (IOSCHED_CFQ))是个好主意。 + +下面,开发者可以启用或禁用CFQ组支持(CFQ Group Scheduling support (CFQ_GROUP_IOSCHED))。接下来,开发者可以选择默认的IO调度器。最好选择DEFAULT_DEADLINE + +对于小于32位寻址的设备,下面的特性会分配16MB的寻址空间(DMA memory allocation support (ZONE_DMA))。如果内核不在意这些设备,那么这个是可以禁用的,所以我禁用了它。 + +对于有多个CPU的系统,最好启用SMP(Symmetric multi-processing support (SMP))。对于只有单个处理器的设备,内核会在禁用这个特性后执行得更快。我启用了这个特性。 + +对于支持x2apic的CPU,启用x2apic支持support (Support x2apic (X86_X2APIC))。如果你的系统缺乏这个特性就像我一样禁用它。 + +接下来我们可以启用对那些缺乏合适的ACPI支持的旧式SMP系统的MPS表(Enable MPS table (X86_MPPARSE))。一些拥有ACPI、DSDT、MADT支持的更新的系统不需要这个特性。我禁用了它。 + +下面的问题允许我们启用扩展x86平台的支持(Support for extended (non-PC) x86 platforms (X86_EXTENDED_PLATFORM))。只有在你需要一个通用内核或者内核运行在某个特定的需要扩展支持的处理器上时才启用它。我竟用了这个特性。 + +为了支持Intel低功耗子系统,就启用这个特性(Intel Low Power Subsystem Support (X86_INTEL_LPSS))。 + +单一深度WCHAN输出(Single-depth WCHAN output (SCHED_OMIT_FRAME_POINTER))是用来计算电量(/proc//wchan)。然而这会导致更多的功耗。 + +下面,我们启用虚拟客户系统支持(Paravirtualized guest support (PARAVIRT_GUEST))。这允许一个客户操作系统与主操作系统一起运行。我会禁用这个特性。 + +Memtest是一个在系统启动时检测内存的软件。Memtest可以配置为每次或者有时开机运行。Memtest并不必要,所以我禁用了它。 + +这里我们可以选择一个内核应该支持的处理器家族。我选择了5 – Generic-x86-64。这是一个64位的系统,x86是32系统。 + +下面我们选择支持x86(32位)处理器 (Supported processor vendors (PROCESSOR_SELECT))。 + +为了发现机器异常,我们可以启用DMI扫描(Enable DMI scanning (DMI))。这可以检测异常。 + +要启用DMA访问系统上32位内存设备3GB以上的内存,下一个问题(GART IOMMU support (GART_IOMMU))我们回答"yes"。 + + +-------------------------------------------------------------------------------- + +via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-3.4369/ + +译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/translated/Upgrade To Linux Kernel 3.11.6 In Ubuntu.md b/translated/Upgrade To Linux Kernel 3.11.6 In Ubuntu.md new file mode 100644 index 0000000000..4cefa8b9ab --- /dev/null +++ b/translated/Upgrade To Linux Kernel 3.11.6 In Ubuntu.md @@ -0,0 +1,54 @@ +Ubuntu 升级到Linux内核3.11.6 + +================================================================================ + +昨天已经发布了Ubuntu 13.10但是你可能仍然运行着Linux 3.11.0 内核.当然坚持Ubuntu 13.10 当前内核不是一件坏事.事实上,不建议升级超出你的Linux发行版的官方仓库测试的特定版本. + +另一方面,如果你不害怕折腾再折腾Ubuntu那么你应该升级到最新Ubuntu支持的 Linux 内核.你会发觉,最新的内核总是有改善,漏洞修补和添加特性的. + +所以,如果你的电脑有些运行不正常,那么更新Linux内核可能会被修复.但记住,当你升级时你也有可能导致崩溃. + +如果你不再惧怕,和我一起永往直前吧,让我们开始升级Ubuntu Linux 内核到 3.11.6!! + +首先,在你开始升级之前,请先备份你的数据,以防升级时出错无法恢复.小心不出大错!!! + +更多关于这个内核版本信息,[阅读更改日志][1] + +当你一切就绪,运行下列命令来升级你的机器并删除旧包,包括旧内核. + + sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove + +另外,进到/tmp目录. + + cd /tmp + +接着,复制粘贴下列命令,按回车下载32位的Linux内核 + + wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106-generic_3.11.6-031106.201310181453_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106_3.11.6-031106.201310181453_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-image-3.11.6-031106-generic_3.11.6-031106.201310181453_i386.deb + +下载64位Linux 内核版本,复制粘贴下行. + + wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106-generic_3.11.6-031106.201310181453_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-headers-3.11.6-031106_3.11.6-031106.201310181453_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.6-saucy/linux-image-3.11.6-031106-generic_3.11.6-031106.201310181453_amd64.deb + +下载适合的版本,运行下列命令,开始安装. + + sudo dpkg -i *.deb + +最后,运行下列命令升级Grub. + + sudo update-grub2 + +就这样!重启你的电脑,完成升级!! + +玩的开心! + + +-------------------------------------------------------------------------------- + +via: http://www.liberiangeek.net/2013/10/upgrade-linux-kernel-3-11-6-ubuntu/ + +译者:[Luoxcat](https://github.com/Luoxcat) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.6 diff --git a/translated/Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now.markdown b/translated/Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now.markdown new file mode 100644 index 0000000000..53e7e937ab --- /dev/null +++ b/translated/Using Wine to Play Games On Linux? Here’s Why You Should Switch To Steam Right Now.markdown @@ -0,0 +1,44 @@ +#使用Wine在Linux上玩游戏?这儿是一些你为什么应该立即转到Steam平台的理由# + ![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2012/12/steamforlinux.png) + +在过去的几个月中,Steam平台受到了众人的关注。并不是因为它带来的游戏,而是由于它拓展支持了不同的操作系统。假如你好没有听说,那么我告诉你,官方宣布Steam计划支持Linux,而且已经持续改进他们的beta版Linux客户端。花不了多长时间,就可以让Steam的Linux客户端平稳下来,所以现在需要做的事情就只是把游戏移植到Linux上了。 + +现在这项非常重要的服务已经可以在我们可爱的企鹅上使用,这儿还有好多理由指出你为什么应该至少考虑一下转换到Linux平台。 + +###性能### + +我将以这个明显的优点作为开始 - 使用Steam玩游戏时,性能表现会好很多。当然,同使用Wine玩游戏相比,那就更加显得更加快速咯,因为游戏是原生运行的,无需兼容层。性能是玩游戏时最重要的因素之一,所以人们怎么可以错过这么一个显著的优点呢。 + +另外,我还注意到使用Steam玩游戏比在Windows上玩游戏还更加快速?同样的硬件同一款游戏,在linux上的表现比Windows上的表现还好。这一点别说比人,连我自己都没想到。 + +###兼容性### + +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/01/switch_steam_wine.jpg) + +无论何时你购买一个游戏,你均无法保证你购买的游戏可以在Wine上良好运行。虽然有一个Wine兼容性数据库,上面列出了Wine兼容的应用和游戏,但是这只是通过告诉你那些你想购买但是有可能不兼容的应用或游戏从而节省你的金钱 。然而,使用Steam,那些支持Linux的所有游戏都可以保证兼容,不需要去询问任何兼容性问题。 + +###Steam的优点### + +![](http://main.makeuseoflimited.netdna-cdn.com/wp-content/uploads/2013/01/switch_steam_window.jpg) + +当然,转到Steam平台你就可以获得它所有的好处。这包括:偶尔的价格优惠(尤其是那些在售的游戏),完全在在线体验不在需要物理媒介,游戏和客户端 更新时你可以保持同步更新等。 + +例如,若你在你的电脑上重装了系统,你只需打开Steam,坐在一旁休息,它就可以自动下载并安装所有你安装过的游戏。在Windows和Mac OS X上,人们非常喜欢Steam的这种运作方式,所以这是一个你购买游戏的好去处。 + +###让你的声音被听到### + +最后,转到Steam平台,你是在表明你的态度。若Steam对于Linux平台的努力无法引起你游戏的兴趣,那么我会感到非常惊讶。作为社区的一份子,我们需要对那些我们喜欢的项目 表示支持。转到Steam平台,不仅可以让Steam公司对于在Linux平台上的冒险值得,而且也告诉了其它人Linux完全可以作为游戏平台——只是由于历史的缘故,人们只是没有在这方面投入足够的时间和经历使其取得突破而已。 + +假如我们向人们展示使用Linux的人们也是喜欢玩游戏的,而且通过支持Linux是可以获得利润的,那么人们就可能更加乐意开发支持Linux的游戏。另外,我们都希望有更多的Linux原生游戏,难道不是吗? + +###结论### + +若你玩的游戏Linux还不支持,那么我完全能够理解你对转到Steam平台的怀疑。然而,你应当给它些时间,定期检查一下更新。最终会有一些你玩的游戏,还有一些你挺喜欢的新游戏会成为那些支持Linux并在其上运行良好的游戏的一部分。 + +你对Steam公司在Linux上的努力有什么想法?你会考虑转到Steam平台吗?请在评论里留言,让我们知道你的想法! + +via: http://www.makeuseof.com/tag/using-wine-to-play-games-on-linux-heres-why-you-should-switch-to-steam-right-now/ + +译者:[Linux-pdz](https://github.com/Linux-pdz) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/Why I can’t live without Linux.md b/translated/Why I can’t live without Linux.md deleted file mode 100644 index cfc7203b0a..0000000000 --- a/translated/Why I can’t live without Linux.md +++ /dev/null @@ -1,110 +0,0 @@ -没有Linux我活不了 -================================================================================ -这是对那些想要试一试Linux的人写的.并且这些对身为Linux的用户应该感到荣幸. - -觉得长文无聊?那直接到最后一部分 "**所有内容的整理**". - -### 为什么没有Linux我活不了? ### - -我存在偏见是有我自己的原因的.当我打开我的Linux机器几天/几个月后,它的启动实在太美妙了.你将会惊讶的知道大多数操作系统没有这样的启动方式. - - -### 考虑几个情况: ### - -1. 你的机器经常崩溃. -1. 它令人发指的慢. -1. 文件/文件夹的建立/删除没有你的干预. -1. 机器莫名其妙的关闭. - -有什么收获?你的机器感染了病毒.现在,它几乎不会发生在Linux上.在这里可以说"根本没有" :) - -### 为什么/怎么做? ### - -感受一下100个人正在在编写/检查甚至是1000个人正在干.Linux是如此的引人关注,几乎在全世界上的任何开发者都可以看到"代码写的是什么?"并且指出哪里有缺陷. - -** 1994年3月14日,Linux 1.0.0发布,拥有176.250行代码. -到2013年,Linux 3.10发布时,已经有了15,803,499行代码.** - -另外一件事,Linux的设计方式.不像一些其它的操作系统,在Linux上,几乎所有的复杂任务都需要root权限.在windows上,你随机进入一些系统文件夹并且删除一些东西之后(为什么你会这么做呢?恩,一些病毒会这么做.并且它能够这么做.我看到过一些人为了获得更多的内存也会这么做).什么都没有发生,但是在你下一次启动时...(我不敢说太多了).而在Linux上,当你试图做一些关于系统的事情它会提示你需要root密码.如果我是root并且我又搞砸了系统怎么办?这是最坏的情况,但是这里还是会有很多人指导你如何解决问题. - -**当你摔倒的时候,一群不认识的人在街上跑过来帮助你,你会有什么感觉?爱和支持是无价的.你会感受到的.** - -![](http://180016988.r.cdn77.net/wp-content/uploads/2013/10/linux.png) - -**稳定性** - 永远运行的Linux机器. 一个简单的"uptime"命令可以让你知道机器已经运行了多久.你永远不需要关机.机智的热插拔.当然这在其它操作系统的机器报告了同样长的运行时间,但同样,Linux机器很少崩溃,蓝屏死机(:D),除非是你搞死了它. - -老话说得好 "**Linux是用户友好,不是白痴友好**"(译者注:貌似在拉仇横?) - -有许多必要的事情你应该做以保护你的机器免于病毒/木马.一项研究说,windows连接到网络之后平均40分钟的时间就会受到影响,然而Linux - 像一个老板.那就是,你除了基本操作系统本身不需要安装任何东西. - -**安全性增强** - Iptables, 一个极好的命令行工具用来设置firewall.同样,还有许多其它创新,比如*端口试探(port knocking),chroot监狱(译者注:维基百科:chroot是在unix系统的一个操作,用于对当前的程序和它的子进程改变真实的磁盘根目录.一个被改变根目录的程序不可以访问和命名在被改变根目录外的文件,那个根目录叫做"chroot监狱(chroot jail,chroot prison)"). - -**SELinux** - 你给一个文件所有的访问权限,其他人仍然不能访问它,如果SELinux设置执行. - -其它操作系统的源代码仅仅是在上面工作的人才可以看到,然而,对于Linux,每个人都可以看到源代码,这意味着错误的可能性很小,即使有一些错误发生,也可以及时修复.假如你受到了安全攻击,相应操作系统的公司可能会用一个月发或者一周时间布一个补丁,这就意味着你的系统在这段时间人然是脆弱的.但是Linux有无数人的贡献&积极参与,这是非常好的,不求更好,只求最好. - -所以说,如果操作系统公司不修复bug,之后会怎么样?好,你只能和bug生活在一起了.然而在linux,有许多人修复bug,或者如果逆是一个更好的程序员,或许你应该修复它并且贡献到开源社区. **分享快乐!** - -为什么你还要购买一个操作系统,当有更好的操作系统(Linux),它是免费并且开源的.当你决定使用开源的,你将有机会会学习到很多.如果你是一个好的程序员,你应该拿到开源到吗,构建它/设计它&使用它用你自己的方式. - -**世界各地的人们付出他们的是键和头脑带给你一个操作系统,它与其它操作系统竞争,并且在市场上存在,它就是Linux.** - -**没有crapware**(译者注:附赠软件,是一个贬义的俚语) - 这个操作系统是开源的.关于其它工具?恩,有许多开源工具可以在上面使用,而在其它操作统统中,大部分软件可能会问你是否订购服务,升级/购买.更差的是,在用了几天之后,你可能会发现这个玩意儿竟然只有30天的试用期.在这方面,Linux上永远不会让你经历这样的失意. - -**Linux自带预装应用,因此你可以在安装之后很好的开始使用.** -在linux上,大部分驱动是内核自带的,因此当你使用一些硬件组件时不用去到处寻找驱动程序. - -如果你仅仅是一个正常的桌面用户,没有多少事情要用命令行(CLI)来做 - Linux带有各种桌面,比如Gnome,KDE,没错你可以称呼它为 "**下一代桌面环境**" - -你有没有体验过你的操作系统在一段时间行动迟缓,而你通过重新安装解决了这个问题.恩,试试Linux吧,你会有一个惊喜的.它从第一天开始到很多年都会运行飞快并且反映灵敏,因此允许你专注于工作,而不用处理操作系统的反映迟缓. - - -**没有后门(backdoor)** - 当你不了解一个操作系统开源代码时,你怎么能确保它没有后门呢.如果制造商公司留了一个和谐的后门,当你连接到网络的时候,这会让你的隐私无所遁形.在Linux上任何东西都是开放的.因此没有后门可以引入到操作系统里. - -这里要谈另一个有趣的事: 大部分使用windows的用户可能会有一个沮丧的事就是当升级一些软件或者操作系统的时候需要重启机器.Linux不需要这样的重启.Linux是一个稳定的,完美运行多年也不需要重启的系统. - -**让老机器品味新生** - Linux甚至可以在很老的硬件上完美运行,不像其它的操作系统,需要新的硬件,仅仅是为了使用它. - -### 所有内容的整理..### -当你得到免费的东西,为什么还要非法使用(盗版) - -- 让老机器新生 -- 开机很快 -- 随时更新 -- 没有crapware(垃圾软件) -- 没有后门 -- 没有病毒 -- 稳定性 -- 兼容性 -- 安全增强 -- 快速响应 -- Linux不需要碎片整理 -- 那么,选择Linux有影响力在这个环境. (Google it) -- 自由和无限的支持 -论坛,邮件列表,IRC频道 -- 工作区的功能 - 下一代桌面 -- 没有大麻烦 -- 报告bug和得到修复 -- 你不会感到孤单. -- 贡献东西回来,感觉争辩.给予快乐。 -- 其它操作系统是一个公司的,微软拥有的Windows,苹果拥有Mac OS. -- Linux?恩,我们拥有它. - -总之,你可以品味自由的感觉 - 这是无价的. 你要体验一下它,不仅仅是阅读文章. - -对我来说, **linuxing 是沉思**. 对你呢? :) - -**如果你同意我,cheers!把linux倒入你的硬件并享受它.** - -**如果你不同意我,再一次,cheers.来证明我错了,你需要试试它.** - -Google "linuxing urban dictionary"(译者注:urban dictionary是一个专供网友来发表对一些特殊的单词或短语的解释,这上面有许多正常词典里面查不到的词条,即使是正常词典里面有的在这里也会有新的精辟的解释.里面对于每一个词条会有提供很多网友的解释,而你可以投票),来,笑一个 :D - -谢谢阅读.Cheers! - --------------------------------------------------------------------------------- - -via: http://www.unixmen.com/cant-live-without-linux/ - -译者:[flsf](https://github.com/flsf) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/gcp – Advanced Command Line File Copier Inspired By cp.md b/translated/gcp – Advanced Command Line File Copier Inspired By cp.md new file mode 100644 index 0000000000..d426189ca4 --- /dev/null +++ b/translated/gcp – Advanced Command Line File Copier Inspired By cp.md @@ -0,0 +1,134 @@ +gcp – 源于CP的高级命令行文件拷贝工具 +================================================================================ +几周前,我们讨论了[高级拷贝][1](修改于cp命令,让其可以显示复制进度条)。一位读者在注释中指出其他实用工具不仅也提供了基本的cp命令功能,而且还提供cp不具有的高级功能。所以,这篇文章里,我们将会讨论非常相似的命令行工具-**gcp**。 + +### gcp – 高级命令行文件拷贝器 ### + +gcp — 根据操作手册介绍 — 是一款高级命令行文件拷贝工具软件,其灵感来自于标准的 [cp命令工具][2], 但它提供了像进度条显示、源文件列表、拷贝过程中出现错误文件不中断继续拷贝等cp所不具有的各项高级功能。 + +下面是完整的选项列表: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-main.png) + +### 测试环境### + +- 操作系统 – Ubuntu 13.04 +- Shell工具 – Bash 4.2.45 +- 应用程序 – gcp 0.1.3 + +### 简短的教程 ### + +下面是一些gcp命令的例子: + +**1. 复制进度显示** + +gcp命令提供了进度显示功能,以便用户能监控到复制操作的时时状态。 + +下面是例子: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-1.png) + +所以,你可以看到,gcp命令显示了如文件大小、复制完成的百分比、传输速率和复制操作完成的剩余时间等的所有细节。 + +**2. 使用-r选项递归的拷贝目录** + +要递归拷贝完整的目录,可以使用-r选项。 + +下面是例子: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-2.png) + +所以,你可以看到,gcp命令显示了用来统计所有文件夹大小的复制情况的进度条。 + +**3. 精心设计的错误描述显示** + +任何情况的错误,gcp命令都会把拷贝失败的文件的信息显示出来。 + +下面是例子: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-3.png) + +所以,你可以看到,gcp命令列出了详细的错误消息,即关于**August Rush.avi**文件已经在目标目录中存在,拷贝失败。但这个错误并不会影响其它文件的正常拷贝操作。 + +**4. 使用-v选项输出详细信息** + +详细选项-v参数可以用来跟踪gcp命令执行时的所有详细消息。 + +下面是例子: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-4.png) + +所以,你可以看到,使用-v选项可以输出很多细节信息。 + +**5. 创建和使用源列表** + +gcp命令的一个很炫的功能就是可以创建源文件列表,以供后期使用。 + +例如,在下面的拷贝操作中,我使用**-sources-save**选项来保存一个源文件列表。 + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-1.png) + +这例子的列表名叫做**SOURCES_SAVE**。你可以用**–sources-list**选项参数来确认及查看保存的列表。 + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-3.png) + +那么你可以看到列表名**SOURCES_SAVE**已经保存上了。 + +现在,删除我们在第一步中拷贝的文件: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-2.png) + +重复第一步的操作,但不要加上源文件路径名,使用**–sources-load**选项参数来从**SOURCES_SAVE**列表文件中加载源文件路径名。 + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-4.png) + +所以,你可以看到gcp命令从**SOURCES_SAVE**列表文件中读取源文件路径名,并且正常的执行拷贝操作。 + +下面是关于源文件列表的其它选项参数: + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/gcp-5-5.png) + +gcp命令还提供了各式名样的其它有用选项。要查看完整的选项,请阅读[gcp帮助主页][3]。 + +### Download/Installation/Configuration ### + +下面是关于gcp命令的一些主要链接站点: + +- [主页][4] +- [下载链接][5] +- [另一篇很有用的gcp使用教程][6] + +你可以通过使用像yum、apt-get等的命令行包管理工具来下载和安装gcp命令。Ubuntu用户也可以使用Ubuntu软件中心来下载和安装这个工具。 + +### 优点 ### + +- 状态条显示和源文件列表是这个工具的核心。 +- 出现有问题的文件会直接跳过,不会影响正常文件的复制操作。 +- 跟标准的cp命令的用法很相似。 + +### 不足 ### + +- 在复制文件夹的时候,要是能显示每个文件的复制状态,那就更好了。 +- 在大多数Linux发行版本中没有预先安装。 + +### 结论 ### + +如果你厌倦了通过标准cp命令拷贝大量文件而无休止的等待的话,gcp命令是个不错的选择。系统管理员会喜欢上源文件列表的功能的。它是必备工具。 + +**你曾经使用过gcp或者类cp的命令行工具吗?可以把你的使用心得跟我们分享。** + +-------------------------------------------------------------------------------- + +via: http://mylinuxbook.com/gcp-advanced-command-line-file-copier-inspired-by-cp/ + +译者:[runningwater](https://github.com/runningwater) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://mylinuxbook.com/advanced-copy-cp-command/ +[2]:http://www.cyberciti.biz/faq/cp-copy-command-in-unix-examples/ +[3]:http://manpages.ubuntu.com/manpages/precise/en/man1/gcp.1.html +[4]:http://wiki.goffi.org/wiki/Gcp/en +[5]:http://wiki.goffi.org/wiki/Gcp/en +[6]:http://www.hecticgeek.com/2012/03/gcp-command-line-file-copy-ubuntu-linux/ + diff --git a/translated/ttyrec & ttyplay – Record And Play Terminal Sessions In Linux.md b/translated/ttyrec & ttyplay – Record And Play Terminal Sessions In Linux.md new file mode 100644 index 0000000000..deb41309a6 --- /dev/null +++ b/translated/ttyrec & ttyplay – Record And Play Terminal Sessions In Linux.md @@ -0,0 +1,117 @@ +ttyrec & ttyplay - Linux记录播放终端会话 +================================================================================ +有些时候你可能想要记录一个终端会话为了保存一个复杂的命令行操作为将来使用的参考或者是为了知识分享。你可能也想记录的文件尺寸尽可能的小一点并且希望当播放记录文件时可以做一个快速回放。在这个文章中我们将讨论两个命令行工具( **ttyrec 和 ttyplay** )来供你记录,保存和播放终端会话。 + +### ttyrec & ttyplay ### + +看名字就知道ttyrec命令是用来记录终端会话的,ttyplay是用来播放ttyrec记录的会话的。 + +这里是这些工具的man截图: + +**> ttyrec** + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyrec-main.png) + +**> ttyplay** + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyplay-main.png) + +### 测试环境 ### + +- 系统 – Ubuntu 13.04 +- Shell – Bash 4.2.45 +- 应用 – ttyrec 1.0.8-5 & ttyplay 1.0.8-5 + +### 简明教程 ### + +下面告诉你怎么用这些命令来记录和播放一个终端会话。 + +**步骤-1** + +开始记录一个终端会话,只需要运行下面的命令: + + $ ttyrec [文件名] + +参数 **[文件名]** (上面显示的命令)是一个选项如果要使用,就要用一个你想要用的名字。这个记录文件将会用这个名字保存下来。如果你没有指定一个文件名,ttyrec就会用 **ttyrecord** 作为缺省文件名。 + +**步骤-2** + +现在就开始记录会话了,当你想要记录的时候你就可以运行这个命令。ttyrec命令甚至可以记录命令行类似vi,nano,emacs,lynx等这些命令行工具的会话。 + +**步骤-3** + +到你想要结束终端会话的时候,只需要运行 **exit** 命令,这个会话记录就会结束。记录文件将会保存在当前文件夹下。 + +你可以运行下面的命令播放这个文件: + + $ ttyplay [文件名] + +参数 **[文件名]** 就是记录文件名,也就是通过 **ttyrec** 命令给定参数一样的那个名字。如果没有指定文件名,那么缺省文件名就是 **ttyrecord** 。 + +当你运行ttyplay,回放会话记录就会开始。这里给出一些当你回放会话的时候你可以用的快捷键。 + +- ‘+’或‘f’键可以加速到两倍正常播放速度。 +- ‘-’或‘s’键可以减慢到一般正常播放速度。 +- ‘0’可以暂停。 +- ‘1’可以回到正常播放速度。 + +这有一些其它ttyrec和ttyplay命令支持的选项: + +**> ttyrec** + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyrec-1.png) + +> ttyplay + +![](http://mylinuxbook.com/wp-content/uploads/2013/10/ttyplay-1.png) + +还有另一个小工具 **ttytime** 可以用来显示用ttyrec工具会话记录的时间。很容易使用并且只需要记录文件名作为命令行参数。 + +举一个例子: + $ ttytime record_file + 29 record_file + +这样你就可以看到ttytime命令显示的会话记录文件record_file的时间。 + +这有一个ttyrec和ttyplay命令的很有用的视频: + +- [youtube video][1] + +### 下载/安装/配置 ### + +这有一些关于这些工具的重要的链接: + +- [主页][2] +- [下载链接][3] + +你可以使用任何命令行下载管理器比如apt-get或者yum来下载ttyrec,ttyplay和ttytime。Ubuntu用户也可以通过Ubuntu软件中心下载安装这些工具。 + +### 赞同 ### + +- 轻量级并且易用 +- 可以记录多种流行的命令行工具比如vi,nano,lynx等 +- 没有学习曲线。 + +### 反对 ### + +- 不能在IRIX6.4下工作 +- 依赖终端尺寸 +- 大多数Linux发行版没有预案装。 + +### 结论 ### + +如果你正在找一些Linux轻量级命令行工具用来记录播放终端会话,那么ttyrec和ttyplay是理想的工具。我真的喜欢使用它们带来的轻松。试一下这些工具,你不会失望的。 + +**你使用过ttyrec,ttyplay或者其它的终端 记录/播放 工具?分享你的经历给我们吧。** + +-------------------------------------------------------------------------------- + +via: http://mylinuxbook.com/ttyrec-ttyplay-record-and-play-terminal-sessions-in-linux/ + +译者:[flsf](https://github.com/flsf) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.youtube.com/embed/7znzFsc0P8M?version=3&rel=1&fs=1&showsearch=0&showinfo=1&iv_load_policy=1&wmode=transparent +[2]:http://0xcc.net/ttyrec/ +[3]:http://0xcc.net/ttyrec/